看門狗選哪只好呢?
中間那只看起來不錯(cuò)。
咳咳搞錯(cuò)了,自動(dòng)化項(xiàng)目中說的看門狗是PLC的看門狗,那這個(gè)狗有什么用呢?難道真的是看大門的狗?
看門狗還就是看門的,但與我們生活中的狗不一樣,這個(gè)看門狗是看程序的。現(xiàn)實(shí)里的狗會(huì)追飛盤,PLC里的看門狗追的是跑飛的程序。
本質(zhì)上是一個(gè)計(jì)時(shí)器,用于監(jiān)控程序的運(yùn)行狀態(tài)。主程序在正常運(yùn)行時(shí),需要定期“喂狗”(即重置計(jì)時(shí)器)。一旦程序跑飛或陷入死循環(huán),導(dǎo)致無法及時(shí)喂狗,看門狗計(jì)時(shí)器就會(huì)超時(shí)。此時(shí),它會(huì)強(qiáng)制系統(tǒng)執(zhí)行預(yù)設(shè)的復(fù)位操作(例如PLC重啟),從而恢復(fù)系統(tǒng)運(yùn)行,避免設(shè)備長(zhǎng)時(shí)間死機(jī)。
什么是看門狗?
看門狗的本質(zhì)是一個(gè)用于監(jiān)控系統(tǒng)健康的計(jì)時(shí)器,主要可分為三種類型:
1.遞減型計(jì)時(shí)器:系統(tǒng)啟動(dòng)時(shí)被加載一個(gè)預(yù)設(shè)的初始值(如10,000)。該值在每個(gè)周期內(nèi)遞減,若在遞減至零前未被重置,則判定系統(tǒng)異常并觸發(fā)報(bào)警。
2.遞增型計(jì)時(shí)器:該計(jì)時(shí)器從零開始持續(xù)累加計(jì)數(shù)值。系統(tǒng)需定期讀取并清零該值。若讀取值超過預(yù)設(shè)閾值,則表明上一個(gè)周期內(nèi)系統(tǒng)處理超時(shí)。
3.混合型計(jì)時(shí)器:此類計(jì)時(shí)器結(jié)合了硬件計(jì)時(shí)器的實(shí)時(shí)高精度與軟件計(jì)時(shí)器的配置靈活性,以實(shí)現(xiàn)更優(yōu)的監(jiān)控效果。
還要喂狗飯?
是的你沒看錯(cuò),即便是看程序的狗也是需要定時(shí)喂飯的,不然它會(huì)↓
當(dāng)?shù)褂?jì)時(shí)計(jì)時(shí)器減到零時(shí),意味著監(jiān)控周期結(jié)束了。這時(shí),系統(tǒng)必須收到一個(gè)“喂狗”信號(hào)來證明自己運(yùn)行正常。這個(gè)信號(hào)可以由軟件發(fā)出,也可以由硬件產(chǎn)生。
硬件的方式,是定期向NCU發(fā)送一個(gè)脈沖信號(hào),這個(gè)脈沖就代表了一次成功的喂狗。
如果程序跑飛,導(dǎo)致計(jì)時(shí)器在周期結(jié)束后仍未被復(fù)位,就會(huì)發(fā)生“溢出”。這時(shí),硬件復(fù)位電路會(huì)介入,自動(dòng)產(chǎn)生一個(gè)復(fù)位信號(hào)。這個(gè)強(qiáng)制復(fù)位動(dòng)作,本身也相當(dāng)于一次喂狗,使系統(tǒng)從故障中恢復(fù)。
可以把它想象成一個(gè)嚴(yán)格的“監(jiān)工”,系統(tǒng)需要定期告訴監(jiān)工“我還活著,一切正常”,我們稱這個(gè)過程為喂狗飯,如果監(jiān)工在規(guī)定時(shí)間內(nèi)沒收到這個(gè)信號(hào),也就是說沒有按規(guī)定給我的狗喂飯,我的狗就認(rèn)為系統(tǒng)“死掉了”或“卡住了”,會(huì)立即報(bào)警并重啟系統(tǒng)來恢復(fù)生產(chǎn)。
200SMART PLC看門狗復(fù)位指令
看門狗復(fù)位指令(WDR)用于觸發(fā)系統(tǒng)看門狗定時(shí)器復(fù)位,并將允許的掃描完成時(shí)間(即在看門狗超時(shí)錯(cuò)誤發(fā)生前)延長(zhǎng) 500 毫秒。
在 CPU 處于 RUN 模式時(shí),主掃描的默認(rèn)持續(xù)時(shí)間限制為 500 毫秒。若主掃描實(shí)際持續(xù)時(shí)間超過該限制,CPU 將自動(dòng)切換至 STOP 模式,并報(bào)告非致命錯(cuò)誤 001AH(掃描看門狗超時(shí))。
通過執(zhí)行看門狗復(fù)位指令,可延長(zhǎng)單次主掃描的持續(xù)時(shí)間。每次執(zhí)行 WDR 指令時(shí),掃描看門狗超時(shí)計(jì)時(shí)器將重置為 500 毫秒。
然而,主掃描的絕對(duì)持續(xù)時(shí)間上限為 5 秒。一旦當(dāng)前掃描時(shí)間達(dá)到 5 秒,CPU 將無條件切換至 STOP 模式。
如下示例程序使用了嵌套的 FOR 循環(huán)結(jié)構(gòu)。若循環(huán)完全執(zhí)行完畢,VD4 中的值應(yīng)達(dá)到 100000000。盡管程序中使用了 WDR 指令以延長(zhǎng)掃描時(shí)間,但由于整個(gè)掃描周期仍超過 5 秒,遞增指令未能執(zhí)行全部次數(shù)。因此,每當(dāng) I0.7 接通一次,CPU 便會(huì)因掃描時(shí)間過長(zhǎng)而進(jìn)入 STOP 狀態(tài)。

200SMART PLC無線通訊測(cè)試
看門狗程序配置完成后,接下來需對(duì)通訊鏈路進(jìn)行測(cè)試。本方案以西門子S7-1200與S7-200SMART PLC為例,在S7專用協(xié)議下搭建無線以太網(wǎng)通信。我們選用西門子PLC專用無線通訊終端——DTD418MB作為硬件傳輸設(shè)備,該設(shè)備采用無線加密傳輸機(jī)制,在確保數(shù)據(jù)安全的同時(shí),也具備通信的可靠性。
值得一提的是,即便在整個(gè)系統(tǒng)轉(zhuǎn)為無線通訊架構(gòu)的情況下,看門狗功能依然能夠有效履行職責(zé),牢牢守好系統(tǒng)的“大門”,堪稱無線通信場(chǎng)景中的“忠誠(chéng)守衛(wèi)”。

審核編輯 黃宇
-
看門狗
+關(guān)注
關(guān)注
10文章
610瀏覽量
72932 -
plc
+關(guān)注
關(guān)注
5051文章
14592瀏覽量
486858
發(fā)布評(píng)論請(qǐng)先 登錄
【瑞薩FPB-RA6E2試用】【瑞薩FPB-RA6E2】看門狗(Watchdog Timer, WDT)個(gè)人理解及資料整理
【瑞薩RA × Zephyr評(píng)測(cè)】多線程和看門狗
深度解析 MAX6369–MAX6374 引腳可選看門狗定時(shí)器
什么是ADC模擬看門狗?
中科芯CKS32F107XX系列MCU的獨(dú)立看門狗介紹
中科芯CKS32F107XX系列MCU的窗口看門狗介紹
既然有獨(dú)立看門狗了,為啥還要窗口看門狗(WWDT),窗口看門狗的特色是什么?
看門狗定時(shí)器、復(fù)位源、異常處理機(jī)制科普
小安派BW21-CBV-Kit入門教程之看門狗簡(jiǎn)介
T113-I打造高可靠性嵌入式系統(tǒng),1.12秒極限下的看門狗喂狗之法
第二十三章 IWDG——獨(dú)立看門狗
TPS3430 具有可編程復(fù)位延遲的窗口看門狗定時(shí)器數(shù)據(jù)手冊(cè)
TPS3435 納米靜態(tài)電流精密超時(shí)看門狗定時(shí)器數(shù)據(jù)手冊(cè)
什么是看門狗?這樣的看門狗,你想領(lǐng)養(yǎng)一條嗎? #看門狗復(fù)位芯片 #WDT芯片 #單片機(jī)復(fù)位 #單片機(jī)方案
看門狗,你真的會(huì)用嗎?
“喂狗”的藝術(shù):看門狗不叫,才是系統(tǒng)好
評(píng)論