- 西門子S7-300 PLC基礎與應用(第3版)
- 吳麗 何瑞主編
- 1005字
- 2021-10-27 14:12:54
3.3 基本邏輯指令
基本邏輯指令包括:“與”“或”“異或”和“取反”指令。
3.3.1 邏輯“與”指令
邏輯“與”指令有兩種形式(STL和FBD),用LAD(梯形圖語言)也可以實現邏輯“與”運算,邏輯“與”指令的格式及示例如表3-4所示。STL指令中的“A”表示對原變量(常開觸點)執行邏輯“與”操作,“AN”表示對反變量(常閉觸點)執行邏輯“與”操作。
表3-4 邏輯“與”指令的格式及示例

在表3-4的示例1中,當I0.0和I0.1都為1,Q4.0和Q4.1為1(繼電器線圈得電,Q4.0和Q4.1的觸點動作);否則,Q4.0和Q4.1為0(繼電器線圈失電,Q4.0和Q4.1的觸點復位)。在表3-4的示例2中,當I0.2為1(常開觸點閉合),且M8.3為0(常閉觸點閉合)時,Q4.1為1;否則Q4.1為0。
3.3.2 邏輯“或”指令
邏輯“或”指令有兩種指令形式(STL和FBD),用LAD也可以實現邏輯“或”運算,邏輯“或”指令的格式及示例如表3-5所示。STL指令中的“O”表示對原變量(常開觸點)執行邏輯“或”操作;“ON”表示對反變量(常閉觸點)執行邏輯“或”操作。
表3-5 邏輯“或”指令的格式及示例

在表3-5的示例1中,I0.2和I0.3只要有一個為1,Q4.2即為1;I0.2和I0.3均為0時,Q4.2才為0。在表3-5的示例2中,若I0.2為1或M10.1為0時,Q4.2為1;若I0.2為0且M10.1為1時,Q4.2才為0。
3.3.3 邏輯“異或”指令
邏輯“異或”指令有兩種指令形式(STL和FBD),用LAD也可以實現邏輯“異或”運算,邏輯“異或”指令的格式及示例如表3-6所示。STL指令中的“X”表示對原變量(常開觸點)執行邏輯“異或”操作,“XN”表示對反變量(常閉觸點)執行邏輯“異或”操作。
表3-6 邏輯“異或”指令的格式及示例

在表3-6的示例1中,I0.4和I0.5為邏輯“異或”的關系。當I0.4和I0.5不同時,輸出位Q4.3為1;否則Q4.3為0。在表3-6的示例2中,I0.4和I0.5為邏輯“同或”的關系。當I0.4和I0.5相同時,輸出位Q4.3為1;否則Q4.3為0。
3.3.4 邏輯塊的操作
邏輯“與”“或”指令可以任意組合,CPU的掃描順序是先“與”后“或”,遇到括號時則先掃描括號內的指令,再掃描括號外的指令。對于STL,先“與”后“或”操作可不使用括號,先“或”后“與”操作必須使用括號來改變自然掃描順序,邏輯塊的操作格式及示例如表3-7所示。
表3-7 邏輯塊的操作格式及示例

(續)

3.3.5 信號流取反指令
信號流取反指令的作用就是對邏輯串的RLO值(邏輯操作結果)取反,RLO位的狀態能表示有關信號流的信息,RLO狀態為1,表示有信號流通,為0表示無信號流通。),信號流取反指令的格式及示例如表3-8所示。示例中,當I0.0和I0.1同時為1時,Q4.0為0;否則Q4.0為1。
表3-8 信號流取反指令的格式及示例
