- 西門子S7-300PLC基礎與應用(第2版)
- 吳麗
- 1390字
- 2020-05-29 11:46:16
3.4 邊沿檢測指令
STEP7中有兩類、共4種邊沿檢測指令,一類是對RLO的上升沿及下降沿檢測的指令,另一類是對觸點的上升沿及下降沿直接檢測的梯形圖方塊指令。邏輯操作結果RLO的邊沿檢測指令是指當前的RLO值與前一次掃描周期的RLO值做比較,判斷是否有上升沿或者下降沿,如果有,則產生一個掃描周期的1信號。
3.4.1 RLO的上升沿檢測指令
RLO的上升沿檢測指令的格式及示例如表3-9所示。RLO邊沿檢測指令指定一個“位存儲器”,用來記錄前一周期RLO的信號狀態,以便進行比較。在OB1的每一個掃描周期,RLO位的信號狀態都將與前一周期獲得的結果進行比較,看信號狀態是否有變化。
表3-9 RLO的上升沿檢測指令的格式及示例
(續)
示例1中,當I1.0出現由0到1的變化時,Q4.0變為1并維持一個掃描周期,之后Q4.0又變為0。示例2中,當I1.1常開觸點和I1.2常閉觸點邏輯“或”的結果如果出現由0到1的變化時,則Q4.1變為1并維持一個掃描周期,之后Q4.1又變為0。
3.4.2 RLO的下降沿檢測指令
RLO的下降沿檢測指令的用法與上升沿檢測指令相同,RLO的下降沿檢測指令的格式及示例如表3-10所示。
表3-10 RLO的下降沿檢測指令的格式及示例
示例1中,當I1.0出現由1到0的變化時,Q4.2變為1并維持一個掃描周期,之后Q4.2又變為0。示例2中,在I1.3常開觸點斷開的情況下,如果I1.1常開觸點和I1.2常閉觸點邏輯“或”的結果出現由1到0的變化,則Q4.3變為1并維持一個掃描周期,之后Q4.3又變為0。如果I1.3常開觸點閉合,則Q4.3為1,不受I1.1及I1.2狀態的影響。
圖3-6所示為RLO邊沿檢測指令工作時序圖,說明了示例中邊沿指令FP和FN指令的檢測時序。對于FP指令,當A點的RLO狀態由“0”變為“1”時,當前的RLO值與M1.0的記錄值進行比較,表明有上升沿信號產生,M8.0輸出一個掃描周期的“1”信號,同時當前的RLO值存入M1.0,為下一個掃描周期的比較做準備。對于FN指令,當B點的RLO狀態由“1”變為“0”時,當前的RLO值與M1.1的記錄值進行比較,表明有下降沿信號產生,M8.1輸出一個掃描周期的“1”信號,同時當前的RLO值存入M1.1,為下一個掃描周期的比較做準備。
圖3-6 RLO邊沿檢測指令工作時序圖
a)梯形圖 b)工作時序
3.4.3 觸點信號的上升沿檢測指令
觸點信號上升沿檢測指令的格式及示例如表3-11所示。指令中的“位地址1”為被掃描的觸點信號;“位地址2”為邊沿存儲位,用來存儲觸點信號,即“位地址1”前一周期的狀態;Q為輸出,當“啟動條件”為真且“位地址1”出現上升沿信號時,Q端可輸出一個掃描周期的1信號。為了區別RLO邊沿檢測指令與觸點邊沿檢測指令,在STL語句中,FP或FN后面加一條BLD100語句。
表3-11 觸點信號上升沿檢測指令的格式及示例
示例1中,當I1.0出現上升沿時,則Q4.0變為1,并保持一個周期,之后又變為0。示例2中,當I1.1出現上升沿,且I0.0的常開觸點及I0.1的常開觸點同時閉合時,則Q4.1變為1,并保持一個周期,之后又變為0。否則,Q4.1為0。
3.4.4 觸點信號的下降沿檢測指令
觸點信號下降沿檢測指令的用法與上升沿檢測指令相同,觸點信號的下降沿檢測指令的格式及示例如表3-12所示。指令中當“啟動條件”為真且“位地址1”出現下降沿信號時,Q端可輸出一個掃描周期的1信號。
表3-12 觸點信號下降沿檢測指令的格式及示例
示例中,當I1.1出現下降沿,且I0.0的常開觸點、I0.1的常閉觸點及I0.2的常開觸點同時閉合,或M0.4的常開觸點及I0.2的常開觸點同時閉合時,則Q4.3變為1,并保持一個周期,之后又變為0。否則,Q4.3為0。
圖3-7中的信號狀態圖說明了示例中POS指令和NEG指令的檢測時序。
圖3-7 觸點信號邊沿檢測指令
a)梯形圖 b)工作時序