有了上述過程,用PLC實現(xiàn)控制顯然是可能的。因為:有了輸入刷新,可把輸入電路監(jiān)視得到的輸入信息存入PLC的輸入映射區(qū);經(jīng)運行用戶程序,輸出映射區(qū)將得到變換后的信息;再經(jīng)輸出刷新,輸出鎖存器將反映輸出映射區(qū)的狀態(tài),并通過輸出電路產(chǎn)生相應的輸出。又由于這個過程是永不停止地循環(huán)反復地進行著,所以,輸出總是反映輸入的變化。只是響應的時間上,略有滯后。但由于PLC的工作速度很快,所以,這個“略有滯后”的時間是很短的,一般也就是幾毫秒、幾十毫秒,最多也不會超過100到200毫秒。
圖2a所示的是簡化的過程,實際的PLC工作過程還要復雜些。除了I/O刷新及運行用戶程序,還要做些其它的公共處理工作。公共處理工作有:循環(huán)時間監(jiān)視、外設服務及通訊處理等。
監(jiān)視循環(huán)時間的目的是避免用戶程序“死循環(huán)”,保證PLC能正常工作。為避免用戶程序“死循環(huán)”的辦法是用“看門狗”(Watching dog),即設一個定時器,監(jiān)測用戶程序的運行時間。只要循環(huán)超時,即報警,或作相應處理。
外設服務是讓PLC可接受編程器對它的操作,或向編程器輸出數(shù)據(jù)。
通訊處理是實現(xiàn)與計算機,或與其它PLC,或與智能操作器、傳感器進行信息交換的。這也是增強PLC控制能力的需要。
也就是說,實際的PLC工作過程總是:公共處理——I/O刷新——運行用戶程序——再公共處理——⋯反復不停地重復著。圖2b所示的是實際的過程。
此外,PLC上電后,也要進行系統(tǒng)自檢及內(nèi)存的初始化工作,為PLC的正常運行做好準備。
用這種不斷地重復運行程序以實現(xiàn)控制,稱掃描方式工作。是PLC基本的工作方式。
此外,為了應對緊急任務,PLC還有中斷工作方式。在中斷方式下,需處理的任務先申請中斷,被響應后停止正運行的程序,轉(zhuǎn)而去處理中斷工作(運行有關中斷的服務程序)。待處理完中斷,又返回運行原來程序。
PLC的中斷方式的任務,或稱事件,是分等級的。同時出現(xiàn)兩個或多個中斷事件,則優(yōu)先級高的先處理,繼而處理低的。直到全部處理完中斷任務,再轉(zhuǎn)為執(zhí)行掃描程序。
PLC對大量控制都用掃描方式工作,而對個別急需的處理,則用中斷方式。這樣,既可做到所有的控制都能照顧到,而個別應急的任務也能及時進行處理。
當然,PLC的實際工作過程比這里講的還要復雜一些,分析其基本原理,也還有一些理論問題。但如果能弄清上面介紹的思路,也可知到PLC是怎么工作的了。