s7-1200 plc 能夠?qū)τ性\斷能力的設(shè)備進行錯誤檢測和報告。這些錯誤稱之為診斷錯誤。系統(tǒng)能夠檢測以下診斷錯誤:
無用戶電源(信號模塊/信號模板)
超過高限位 (模擬量輸入或輸出)
超過低限位 (模擬量輸入或輸出)
斷線(電流輸出)
短路(電壓輸出)
所有診斷錯誤將會觸發(fā)diagnostic error interrupt(ob82)。diagnostic error interrupt(ob82)包含啟動信息,可幫助用戶定義錯誤發(fā)生的情況:
哪個設(shè)備與通道發(fā)生錯誤
當前事件是到來事件還是離去事件
用戶可以在 ob82 中編寫指令用于確定這些信息并可采取相應(yīng)的措施。
使用 diagnostic error interrupt組織塊(ob82)評估診斷錯誤事件
當下列條件滿足時,幾個不同診斷錯誤中的任何一個產(chǎn)生或離去都將觸發(fā)診斷錯誤事件:
ob82 已被添加到 s7-1200 plc 中。
模塊已使能診斷錯誤事件。
假如 ob82 不存在,cpu 將忽略錯誤。
假如有診斷能力的模塊發(fā)現(xiàn)錯誤時,diagnostic error interrupt ob82 將會中斷循環(huán)程序的正常執(zhí)行。
說明
當創(chuàng)建一個新的項目時將不會自動添加 diagnostic error interrupt(ob82)。
序號
使用“診斷錯誤中斷”組織塊(ob82)評估診斷錯誤事件
1
添加使用diagnostic error interrupt組織塊(ob82)評估診斷錯誤事件
瀏覽項目樹,找到“添加新塊” 。
在“添加新塊”窗口,點擊“組織塊”按鈕。
在列表中選擇“診斷錯誤中斷”。
點擊“ok”按鈕。
說明
程序中只能有一個“診斷錯誤中斷”組織塊。
圖 01
2
從diagnostic error interruptob82 中讀出啟動信息
雙擊項目樹中的“診斷錯誤中斷”ob82。
瀏覽指令面板。
拖拽“move”指令到 ob82 中的網(wǎng)絡(luò)。
將“iostate”變量中的值傳送到全局變量(例如 db1.w_iostate)。
按照此方式編寫其它要監(jiān)控的變量,如下圖所示。
圖 02
3
評估診diagnostic error interruptob82 的啟動信息
“診斷錯誤中斷”ob82 有如下錯誤信息:
iostate (word)
iostate包含帶有診斷能力的模板的 i/o 狀態(tài)。 詳細信息見表 3。
laddr (hw-any)
硬件識別號。
硬件識別號用于識別模塊或模塊的功能單元(例如輸出和高速計數(shù)器)。 硬件識別號由數(shù)字組成,在系統(tǒng)的診斷報警中會顯示此數(shù)字用于定位出錯的模塊。可在 device configuration 中的 properties 選項中找到功能單元的hw-id 。瀏覽 io addresses/hw identifier 項目的導(dǎo)航區(qū)域(如下圖)
channel (uint)
channel 包含了信號模塊/信號模板中被使用的輸出通道號。
multierror (bool)
the multierror 位指示了不止一次發(fā)生過錯誤。
圖 03
表 01
使能并理解不同的診斷錯誤事件
操作系統(tǒng)會監(jiān)視帶有診斷能力的模板是否發(fā)生上面提及的診斷錯誤。診斷錯誤事件將會被閃爍的紅色led燈指示。下面的地表格中列出了不同診斷錯誤事件的額外信息,如何使能它們,已經(jīng)led燈是如何指示的。
序號
理解不同的診斷錯誤事件
1
no encoder or load power
“無傳感器或負載電壓?!?
如下的 s7-1200 plc led 燈將會閃爍(閃爍的 led 燈顏色:紅色):
cpu的“error”燈。
所有信號模塊/信號模板的 led 燈
enable power diagnostics
“啟用電源診斷”
瀏覽項目樹中的設(shè)備組態(tài)。
點擊設(shè)備組態(tài)窗口中的信號模塊。
選擇屬性標簽,點擊“常規(guī)”目錄下的“ai4/ao2”條目。
點擊選中“啟用電源診斷”。
圖 04
2
超過上限
超過模擬量輸入/輸出的最高限制(輸出值大于 +32511)。
如下的 s7-1200 plc led 燈會閃爍(閃爍的led燈顏色:紅色):
cpu的“error”燈。
信號模塊的“diag”燈。
相關(guān)的通道指示燈。
“啟用溢出診斷”
瀏覽項目樹 ,找到設(shè)備組態(tài) 。
點擊設(shè)備組圖窗口中的信號模塊。
選擇屬性標簽,點擊“常規(guī)”目錄下的“ai4/ao2”條目。
選擇需要監(jiān)控的通道。
點擊選中啟用溢出診斷。
圖05
3
超過下限
超過模擬量輸入/輸出的下限(電流輸出值小于“0”,電壓值小于“-32512”)。
如下的 s7-1200 plc led 燈將會閃爍(閃爍的 led 燈顏色:紅色):
cpu的error燈。
信號模塊的diag燈。
相關(guān)的通道指示燈。
“啟用下溢診斷”
瀏覽項目樹 ,找到設(shè)備組態(tài) 。
點擊設(shè)備組態(tài)窗口中的信號模塊。
選擇屬性標簽,點擊“常規(guī)”目錄下的“ai4/ao2”條目。
選擇需要監(jiān)控的通道。
點擊選中啟用下溢診斷。
請查看上面的圖以獲得詳細信息。
4
wire break
模擬量電流輸出斷線。
如下的 s7-1200 plc led 燈將會閃爍(閃爍的 led 燈顏色:紅色):
cpu 的 error 燈。
信號模塊的 diag 燈。
相關(guān)的通道指示燈。
“啟用斷線診斷”
瀏覽 項目樹 ,找到 設(shè)備組態(tài)。
點擊 設(shè)備組態(tài) 窗口中的信號模塊。
選擇屬性標簽,點擊“常規(guī)”目錄下的“ai4/ao2”條目。
選擇需要監(jiān)控的通道。
選擇模擬量輸出類型為 電流。
點擊選中 啟用斷線診斷。
圖 06
5
short circuit
模擬量電壓輸出短路。
如下的 s7-1200 plc led 燈將會閃爍(閃爍的led燈顏色:紅色):
cpu 的error燈。
信號模塊的diag燈。
相關(guān)的通道指示燈。
“啟用短路診斷”
瀏覽 項目樹 ,找到 設(shè)備組態(tài)。
點擊 設(shè)備組態(tài) 窗口中的信號模塊。
選擇屬性標簽,點擊“常規(guī)”目錄下的“ai4/ao2”條目。
選擇需要監(jiān)控的通道。
選擇模擬量輸出類型為 電壓。
點擊選中 啟用短路診斷 。
圖 07
表 02
使用 step 7 basic 在線診斷。
當使用 step 7 basic 在線連接 s7-1200 plc 時,可以使用online & diagnostics功能:
在線連接 s7-1200 plc。
瀏覽項目樹找到在線和診斷。
瀏覽在線訪問 窗口的導(dǎo)航區(qū)域找到診斷緩沖區(qū)。
從 事件列表中選擇一個診斷錯誤事件。
在 事件 列表下面,顯示有所選事件的詳細信息,在這里可以看到硬件標識(hw-id),通道號和事件類型。
說明
incoming event 表明一個事件的開始。
outgoing event 表明一個事件的結(jié)束。
圖 08
iostate tag
如下的表格中顯示了 iostate 變量可能的 i/o 的狀態(tài)。
io state
描述
bit 0
組態(tài)正確:
1, 組態(tài)正確
0, 組態(tài)不再正確
bit 4
錯誤:
1, 存在一個錯誤(例如斷線)
0, 錯誤不再存在
bit 5
組態(tài)不正確:
1, 組態(tài)不正確
0, 組態(tài)再次正確
bit 6
i/o無法被訪問:
1, i/o 錯誤發(fā)生
在這種情況下, laddr變量包含了訪問錯誤 i/o 的硬件識別號
0, i/o 可以再次被訪問
表 03
創(chuàng)建環(huán)境:
該文檔中的截屏來自 step 7 basic v11 。
需求:
s7-1200 plc
以太網(wǎng)電纜
pg / pc
step 7 (tia portal)
帶診斷能力的信號模塊/信號模板