1 CPU自檢階段
CPU自檢階段包括CPU自診斷測(cè)試和復(fù)位監(jiān)視定時(shí)器。
在自診斷測(cè)試階段,CPU檢測(cè)PLC各模塊的狀態(tài),若出現(xiàn)異常立即進(jìn)行診斷和處理,同時(shí)給出故障信號(hào),點(diǎn)亮CPU面板上的LED指示燈。當(dāng)出現(xiàn)致命錯(cuò)誤時(shí),CPU被強(qiáng)制為STOP方式,停止執(zhí)行程序。CPU的自診斷測(cè)試將有助于及時(shí)發(fā)現(xiàn)或提前預(yù)報(bào)系統(tǒng)的故障,提高系統(tǒng)的可靠性。
監(jiān)視定時(shí)器又稱看門狗定時(shí)器WDT,它是CPU內(nèi)部的一個(gè)硬件時(shí)鐘,是為了監(jiān)視PLC的每次掃描時(shí)間而設(shè)置的。CPU運(yùn)行前設(shè)定好規(guī)定的掃描時(shí)間,每個(gè)掃描周期都要監(jiān)視掃描時(shí)間是否超過規(guī)定值。這樣可以避免由于PLC在執(zhí)行程序的過程中進(jìn)入死循環(huán),或者由于PLC執(zhí)行非預(yù)定的程序造成系統(tǒng)故障,從而導(dǎo)致系統(tǒng)癱瘓。如果程序運(yùn)行正常,則在每次掃描周期的內(nèi)部處理階段對(duì)WDT進(jìn)行復(fù)位(清零)。如果程序運(yùn)行失常進(jìn)入死循環(huán),則WDT得不到按時(shí)清零而觸發(fā)超時(shí)溢出,CPU將給出報(bào)警信號(hào)或停止工作。采用WDT技術(shù)也是提高系統(tǒng)可靠性的一個(gè)有效措施。
2 通信處理階段
在通信處理階段,CPU檢查有無通信任務(wù),如果有則調(diào)用相應(yīng)進(jìn)程,完成與其他設(shè)備(例如,帶微處理器的智能模塊、遠(yuǎn)程I/O接口、編程器、HMI裝置等)的通信處理,并對(duì)通信數(shù)據(jù)做相應(yīng)處理。
3 讀取輸入
在讀取輸入階段,PLC掃描所有輸入端子,并將各輸入端的通/斷狀態(tài)存入相對(duì)應(yīng)的輸入映像寄存器中,刷新輸入映像寄存器的值。此后,輸入映像寄存器與外界隔離,無論外設(shè)輸入情況如何變化,輸入映像寄存器的內(nèi)容也不會(huì)改變。輸入端狀態(tài)的變化只能在下一個(gè)循環(huán)掃描周期的讀取輸入階段才被拾取。這樣可以保證在一個(gè)循環(huán)掃描周期內(nèi)使用相同的輸入信號(hào)狀態(tài)。因此,要注意輸入信號(hào)的寬度要大于一個(gè)掃描周期,否則很可能造成信號(hào)的丟失。
4執(zhí)行程序階段
可編程控制器的用戶程序由若干條指令組成,指令在存儲(chǔ)器中按順序排列。當(dāng)PLC處于運(yùn)行模式執(zhí)行程序時(shí),CPU對(duì)用戶程序按順序進(jìn)行掃描。如果程序用梯形圖表示,則按先上后下、從左至右的順序逐條執(zhí)行程序指令。每掃描到一條指令,所需要的輸入信號(hào)的狀態(tài)均從輸入映像寄存器中讀取,而不是直接使用現(xiàn)場(chǎng)輸入端子的通/斷狀態(tài)。在執(zhí)行用戶程序過程中,根據(jù)指令做相應(yīng)的運(yùn)算或處理,每一次運(yùn)算的結(jié)果不是直接送到輸出端子立即驅(qū)動(dòng)外部負(fù)載,而是將結(jié)果先寫入輸出映像寄存器中。輸出映像寄存器中的值可以被后面的讀指令所使用。
5 刷新輸出階段
執(zhí)行完用戶程序后,進(jìn)入刷新輸出階段??删幊炭刂破鲗⑤敵鲇诚窦拇嫫髦械耐?斷狀態(tài)送到輸出鎖存器中,通過輸出端子驅(qū)動(dòng)用戶輸出設(shè)備或負(fù)載,實(shí)現(xiàn)控制功能。輸出鎖存器的值一直保持到下次刷新輸出。
在刷新輸出階段結(jié)束后,CPU進(jìn)入下一個(gè)循環(huán)掃描周期。
-
plc
+關(guān)注
關(guān)注
5007文章
13109瀏覽量
461477 -
cpu
+關(guān)注
關(guān)注
68文章
10807瀏覽量
210850
原文標(biāo)題:寫好PLC程序必須掌握的循環(huán)掃描工作過程
文章出處:【微信號(hào):GKYXT1508,微信公眾號(hào):工控云學(xué)堂】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論