淺析S7-1200PLC的四則運算指令功能及使用方法

大家好,歡迎關注電氣技術微課堂!這裡會每天更新關於電氣自動化、PLC、工業機器人、電子技術的原創文章和微課,如果你感興趣請關注我

淺析S7-1200PLC的四則運算指令功能及使用方法

今天我們要談一談西門子S7-1200PLC中常用的四則運算指令

什麼是四則運算指令呢?

四則運算指令包括加法指令ADD、減法指令SUB、乘法指令MUL、除法指令DIV四種。

淺析S7-1200PLC的四則運算指令功能及使用方法

一、加法指令ADD

執行加法指令ADD將輸入IN1的值與輸入IN2的值相加,並將加得結果存儲在OUT設定的寄存器中。

淺析S7-1200PLC的四則運算指令功能及使用方法

加法指令功能框各端口的定義如下

EN:使能輸入端,EN為1時執行加法指令,EN為0時不執行。

ENO:使能輸出端,當指令正確執行期間使能輸出端ENO為1,指令結果超出輸出 OUT指定數據類型的允許範圍或浮點數為無效值時ENO為0。

IN1/IN2:要相加的數值,可以是寄存器的地址或常數,單擊ADD指令下的星標可以擴展輸入的數目。

OUT:加法計算結果輸出,IN1+IN2=OUT,OUT端一般填寫寄存器地址。

加法指令小提示:可以從指令框的“??>”下拉列表中選擇該指令的數據類型,當地址長度與數據類型不匹配時,會將輸入數值隱式轉換為指定的數據類型,編譯不會報錯,但運行過程中可能會出錯。

淺析S7-1200PLC的四則運算指令功能及使用方法

二、減法指令SUB

執行減法指令SUB,將由被減數IN1的值減去減數IN2的值,並將結果存入OUT設定的寄存器地址中。

淺析S7-1200PLC的四則運算指令功能及使用方法

減法指令功能框各端口的定義如下

EN: 使能輸入端,EN為1時執行加法指令,EN為0時不執行。

ENO: 使能輸出端,當指令正確執行期間使能輸出端ENO為1,指令結果超出輸出 OUT 指定數據類型的允許範圍或浮點數為無效值時ENO為0。

IN1:被減數,可以是寄存器地址或常數。

IN2:減數,可以是寄存器地址或常數。

OUT: 減法計算結果輸出,IN1-IN2=OUT,OUT端一般填寫寄存器地址。

三、乘法指令MUL

乘法指令MUL將輸入 IN1 的值與輸入 IN2 的值相乘,並將乘積保存在輸出 OUT指定的寄存器中。

淺析S7-1200PLC的四則運算指令功能及使用方法

乘法指令功能框各端口的定義如下

EN:使能輸入端,EN為1時執行加法指令,EN為0時不執行。

ENO:使能輸出端,指令正確執行期間ENO輸出為1,

IN1:乘數,可以是寄存器地址或常數。

IN2:乘數,可以是寄存器地址或常數。

Inn:可以添加多個相乘的數。

OUT:輸出乘積存入指定的寄存器中。

四、除法指令DIV

除法指令DIV將輸入 IN1 的值除以輸入 IN2 的值,並將除得的商保存在輸出 OUT指定的寄存器中。DIV指令支持各種整型和實數型數據。

淺析S7-1200PLC的四則運算指令功能及使用方法

除法指令功能框各端口的定義如下

EN:使能輸入,EN為1時執行加法指令,EN為0時不執行。

ENO:使能輸出 ,指令正確執行期間ENO狀態為1。

IN1:被除數,可以是寄存器地址、整數或浮點數,需要與所選數據類型匹配。

IN2:除數,可以是寄存器地址、整數或浮點數,需要與所選數據類型匹配。

OUT:商值,輸出OUT為執行除法指令得到的商,數據類型為無符號整數,餘數被省略不計。

除法指令小提示

在使用除法指令DIV時,OUT輸出端為除得的商值,數據類型為無符號整型,餘數被省略不顯示,如果需要求餘數需使用MOD指令。

淺析S7-1200PLC的四則運算指令功能及使用方法

四則運算指令的實際應用舉例

例題:溫度傳感器將採集到的溫度值轉換為電壓信號輸入給PLC,測量範圍是0~100Co,數值經過被CPU集成的模擬量通道0(地址為IW64)轉換為0~27648的數字,假設轉換後的數字為T,試求以為Co單位的溫度值。

解:0~100Co的溫度值經A/D轉換後的數字為0~27648,設轉換後得到的數字為T,轉換公式為

淺析S7-1200PLC的四則運算指令功能及使用方法

在編輯指令時,為了保證運算精度,應先乘後除。

因為公式中IW64乘以100的運算結果可能會大於16位整數的最大值32767(IW64為16位存儲器,模擬值為二進制的補碼,最高位為符號位,0為負,1為正),因此應將IW64中的數值數據類型轉換為實數再進行乘除運算。

淺析S7-1200PLC的四則運算指令功能及使用方法


分享到:


相關文章: