點擊上方並關注☝☝:工控PLC(分享朋友圈支持一下)
目前各種型號的plc普遍具備較強的運算功能。和其他PLC不同,S7—200 PLC對算術運算指令來說,在使用要注意存儲單元的分配。建議大家在使用算術指令和數學指令時,最好用LAD形式編程。運算指令包括加法、減法、乘法、除法、數學函數指令、增減和邏輯運算指令。
一、加法
1、整數加法
+I,整數加法指令。使能輸入有效時,將兩個單字長(16位)的符號整數IN1和IN2相加,產生一個16位整數結果OUT。
圖1 整數加法
2、雙整數加法
+D,雙整數加法指令。使能輸入有效時,將兩個雙字長(32位)的符號雙整數IN1和IN2相加,產生一個32位雙整數結果OUT。
在LAD和FBD中,以指令盒形式編程,執行結果:IN1+IN2=OUT。
在STL中,執行結果:IN1+OUT=OUT。
OUT的尋址範圍:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD。
指令格式:+D IN1, OUT
3、+R,實數加法指令
使能輸入有效時,將兩個雙字長(32位)的實數IN1和IN2相加,產生一個32位實數結果OUT。
在LAD和FBD中,以指令盒形式編程,執行結果:IN1+IN2=OUT。
OUT的尋址範圍:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD。
本指令影響的特殊存儲器位:SM1.0(零);SM1.1(溢出);SM1.2(負)。
二、減法
減法指令是對有符號數進行相減操作。包括:整數減法、雙整數減法和實數減法。這三種減法指令與所對應的加法指令除運算法則不同之外,其他方面基本相同。
在LAD和FBD中,以指令盒形式編程,執行結果:IN1-IN2=OUT。
在STL中,執行結果: OUT- IN2=OUT。
指令格式: -I IN2, OUT (整數減法);-D IN2, OUT (雙整數減法);-R IN2, OUT (實數減法)
例: -I AC0, VW4
圖3 減法運算
三、乘法
1、整數乘法
*I,整數乘法指令。使能輸入有效時,將兩個單字長(16位)的符號整數IN1和IN2相乘,產生一個16位整數結果OUT。
指令格式:*I IN1,OUT
例:*I VW0,AC0
圖4 乘法
圖5 乘法
2、完全整數乘法
MUL,完全整數乘法指令。使能輸入有效時,將兩個單字長(16位)的符號整數IN1和IN2相乘,產生一個32位雙整數結果OUT。
在LAD和FBD中,以指令盒形式編程,執行結果:IN1*IN2=OUT。
OUT的尋址範圍:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD。
本指令影響的特殊存儲器位:SM1.0(零);SM1.1(溢出);SM1.2(負);SM1.3(被0除)。
指令格式: MUL IN1,OUT
例: MUL AC0,VD10
3、雙整數乘法
*D,雙整數乘法指令。使能輸入有效時,將兩個雙字長(32位)的符號整數IN1和IN2相乘,產生一個32位雙整數結果OUT。
在STL中,執行結果:IN1*OUT=OUT。
N1和IN2的尋址範圍:VD、ID、QD、MD、SD、SMD、LD、HC、AC、*VD、*AC、*LD和常數。
OUT的尋址範圍:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD。
本指令影響的特殊存儲器位:SM1.0(零);SM1.1(溢出);SM1.2(負);SM1.3(被0除)。
指令格式:*D IN1,OUT
例:*D VD0,AC0
4、實數乘法
*R,實數乘法指令。使能輸入有效時,將兩個雙字長(32位)的實數IN1和IN2相乘,產生一個32位實數結果OUT。
在LAD和FBD中,以指令盒形式編程,執行結果:IN1*IN2=OUT。
在STL中,執行結果:IN1*OUT=OUT。
IN1和IN2的尋址範圍:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD和常數。
OUT的尋址範圍:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD。
本指令影響的特殊存儲器位:SM1.0(零);SM1.1(溢出);SM1.2(負);SM1.3(被0除)。
指令格式:*R IN1,OUT
例:*R VD0,AC0
四、除法
在LAD和FBD中,以指令盒形式編程,執行結果: IN1/IN2=OUT。
在STL中,執行結果: OUT/ IN2=OUT。
指令格式: /I IN2, OUT(整數除法)
DIV IN2, OUT(整數完全除法)
/D IN2, OUT(雙整數除法)
/R IN2, OUT(實數除法)
未完,點擊下方閱讀原文,詳細學習
長按下方二維碼並關注,學習更多工控知識
(你的關注就是我的動力)
☟☟☟