可以通過SFC 51讀取CPU的指示燈狀態(tài),使用的SSL_ID參數(shù)為16#74(16#19)讀取全部指示燈狀態(tài) 或者16#174(16#119)讀取單個指示燈狀態(tài)
2.1 編程
首先需要創(chuàng)建一個數(shù)據(jù)塊,用來存放讀取出來的指示燈狀態(tài)結(jié)果
圖1 創(chuàng)建DB1,存放讀取結(jié)果
打開OB1,在OB1的臨時變量區(qū)創(chuàng)建一個變量length,類型設(shè)置為Struct(結(jié)構(gòu))
圖2 創(chuàng)建名為length的結(jié)構(gòu)變量
雙擊length變量,進(jìn)入結(jié)構(gòu)變量成員定義,創(chuàng)建兩個word類型的變量,本例中分別為size和number:
圖3 創(chuàng)建length的結(jié)構(gòu)變量的兩個word成員
編寫SFC51程序:
CALL "RDSYSST"
REQ :=TRUE
SZL_ID :=W#16#74 //讀取全部指示燈狀態(tài)
INDEX :=W#16#0
RET_VAL :=MW0
BUSY :=M2.0
SZL_HEADER:=#length
DR :=P#DB1.DBX0.0 BYTE 500 //結(jié)果輸出到DB1數(shù)據(jù)塊中
DB1存放的結(jié)果即為模塊的指示燈狀態(tài),每個指示燈有4個字節(jié)的長度來描述。
前兩個字節(jié)表示燈的類型(見表二),表示是SF燈還是BF燈等等。
第三個字節(jié)表示燈是亮還是滅,如果為1則燈亮,如果為0則燈的狀態(tài)是滅。
第四個字節(jié)表示燈是否閃爍,0表示不閃,1表示正常閃爍(2hz),2,表示慢閃(0.5hz)
燈的類型列表如下(不同的CPU會有不同數(shù)目的指示燈):
表2 前兩個字節(jié)的含義
16#1 | SF |
16#2 | INTF |
16#3 | EXTF |
16#4 | RUN |
16#5 | STOP |
16#6 | FORCE |
16#7 | CRST |
16#8 | BAF |
16#9 | USR |
16#A | USR1 |
16#B | BUS1F |
16#C | BUS2F |
16#D | REDF |
16#E |
MSTR |
-
cpu
+關(guān)注
關(guān)注
68文章
10854瀏覽量
211574 -
指示燈
+關(guān)注
關(guān)注
3文章
415瀏覽量
28276 -
SFC
+關(guān)注
關(guān)注
0文章
44瀏覽量
11289
原文標(biāo)題:2 讀取CPU指示燈
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論