本文介紹s7-300和s7-400的梯形圖(lad)編程的比較指令。
1.比較指令概述
說明:根據(jù)用戶選擇的比較類型比較in1和in2:
== in1等于in2
<> in1不等于in2
> in1大于in2
< in1小于in2
>= in1大于或等于in2
<= in1小于或等于in2
如果比較結果為“真”,則函數(shù)的rlo為“1”。如果以串聯(lián)方式使用比較單元,則使用“與”運算將其鏈接至梯級程序段的rlo;如果以并聯(lián)方式使用該框,則使用“或”運算將其鏈接至梯級程序段的rlo。
以下是可供使用的比較指令:
·cmp ?i 整數(shù)比較
·cmp ?d 比較雙精度整數(shù)
·cmp ?r 比較實數(shù)
2.cmp ?i 比較整數(shù)
符號:
參數(shù)
數(shù)據(jù)類型
內存區(qū)域
說明
輸入框
bool
i、q、m、l、d
上一邏輯運算結果
輸入框
bool
i、q、m、l、d
比較的結果,僅在輸入rlo=1時才進一步處理
in1
int
i、q、m、l、d或常數(shù)
要比較的第一個值
in2
int
i、q、m、l、d或常數(shù)
要比較的第二個值
說明:cmp ?i(整數(shù)比較)的使用方法與標準觸點類似。它可位于任何可放置標準觸點的位置。可根據(jù)用戶選擇的比較類型比較in1和in2。如果比較結果為“真”,則函數(shù)的rlo為“1”。如果以串聯(lián)方式使用該框,則使用“與”運算將其鏈接至整個梯級程序段的rlo;如果以并聯(lián)方式使用該框,則使用“或”運算將其鏈接至整個梯級程序段的rlo。
狀態(tài)字:
br
cc 1
cc 0
ov
os
or
sta
rlo
/fc
寫:
x
x
x
0
-
0
x
x
1
實例:
如果滿足下列條件,則輸出q4.0置位:
·輸入i0.0和i0.1的信號狀態(tài)為“1”
·并且mw0>=mw2
3.cmp ?d 比較雙精度整數(shù)
符號:
參數(shù)
數(shù)據(jù)類型
內存區(qū)域
說明
輸入框
bool
i、q、m、l、d
上一邏輯運算結果
輸出框
bool
i、q、m、l、d
比較的結果,僅在輸入rlo=1時才進一步處理
in1
dint
i、q、m、l、d或常數(shù)
要比較的第一個值
in2
dint
i、q、m、l、d或常數(shù)
要比較的第二個值
說明:cmp ?d(比較雙精度整數(shù))的使用方法與標準觸點類似。它可位于任何可放置標準觸點的位置??筛鶕?jù)用戶選擇的比較類型比較in1和in2。
如果比較結果為“真”,則函數(shù)的rlo為“1”。如果以串聯(lián)方式使用比較單元,則使用“與”運算將其鏈接至梯級程序段的rlo;如果以并聯(lián)方式使用該框,則使用“或”運算將其鏈接至梯級程序段的rlo。
狀態(tài)字:
br
cc 1
cc 0
ov
os
or
sta
rlo
/fc
寫:
x
x
x
0
-
0
x
x
1
實例:
如果滿足下列條件,則輸出q4.0置位:
·輸入i0.0和i0.1的信號狀態(tài)為“1”
·并且md0>=md4
·同時輸入i0.2的信號狀態(tài)為“1”
4.cmp ?r 比較實數(shù)
符號:
參數(shù)
數(shù)據(jù)類型
內存區(qū)域
說明
輸入框
bool
i、q、m、l、d
上一邏輯運算結果
輸出框
bool
i、q、m、l、d
比較的結果,僅在輸入rlo=1時才進一步處理
in1
real
i、q、m、l、d或常數(shù)
要比較的第一個值
in2
real
i、q、m、l、d或常數(shù)
要比較的第二個值
說明:cmp ?r(整數(shù)比較)的使用方法類似標準觸點。它可位于任何可放置標準觸點的位置??筛鶕?jù)用戶選擇的比較類型比較in1和in2。
如果比較結果為“真”,則函數(shù)的rlo為“1”。如果以串聯(lián)方式使用該框,則使用“與”運算將其鏈接至整個梯級程序段的rlo;如果以并聯(lián)方式使用該框,則使用“或”運算將其鏈接至整個梯級程序段的rlo。
狀態(tài)字:
br
cc 1
cc 0
ov
os
or
sta
rlo
/fc
寫:
x
x
x
x
x
0
x
x
1
實例:
如果滿足下列條件,則輸出q4.0置位:
·輸入i0.0和i0.1的信號狀態(tài)為“1”
·并且md0>=md4
·同時輸入i0.2的信號狀態(tài)為“1”