2- PLC的工作原理
最初研制生產(chǎn)的PLC主要用于代替傳統的由繼電器接觸器構成的控制裝置,但這兩者的運行方式是不相同的:
(1)繼電器控制裝置采用硬邏輯并行運行的方式,即如果這個(gè)繼電器的線(xiàn)圈通電或斷電,該繼電器所有的觸點(diǎn)(包括其常開(kāi)或常閉觸點(diǎn))在繼電器控制線(xiàn)路的哪個(gè)位置上都會(huì )立即同時(shí)動(dòng)作。
(2)PLC是采用“順序掃描,不斷循環(huán)”的方式進(jìn)行工作的。即在PLC運行時(shí),CPU根據用戶(hù)按控制要求編制好并存于用戶(hù)存儲器中的程序,按指令步序號(或地址號)作周期性循環(huán)掃描,從第一條指令開(kāi)始逐條順序執行用戶(hù)程序,直至程序結束。然后重新返回第一條指令,開(kāi)始下一輪新的掃描。在每次掃描過(guò)程中,還要完成對輸入信號的采樣和對輸出狀態(tài)的刷新等工作。如果一個(gè)輸出線(xiàn)圈或邏輯線(xiàn)圈被接通或斷開(kāi),該線(xiàn)圈的所有觸點(diǎn)(包括其常開(kāi)或常閉觸點(diǎn))不會(huì )立即動(dòng)作,必須等掃描到該觸點(diǎn)時(shí)才會(huì )動(dòng)作。
為了消除二者之間由于運行方式不同而造成的差異,考慮到繼電器控制裝置各類(lèi)觸點(diǎn)的動(dòng)作時(shí)間一般在100ms以上,而PLC掃描用戶(hù)程序的時(shí)間一般均小于100ms,因此,PLC采用了一種不同于一般微型計算機的運行方式---掃描技術(shù)。這樣在對于I/O響應要求不高的場(chǎng)合,PLC與繼電器控制裝置的處理結果上就沒(méi)有什么區別了。
1、掃描技術(shù)
當PLC投入運行后,其工作過(guò)程一般分為三個(gè)階段,即輸入采樣、用戶(hù)程序執行和輸出刷新三個(gè)階段。完成上述三個(gè)階段稱(chēng)作一個(gè)掃描周期。在整個(gè)運行期間,PLC的CPU以一定的掃描速度重復執行上述三個(gè)階段,如圖1-3。

(1)輸入采樣階段
CPU將全部現場(chǎng)輸入信號,如按鈕、限位開(kāi)關(guān)、速度繼電器的通斷狀態(tài)以?huà)呙璺绞揭来蔚刈x入所有輸入狀態(tài)和數據,并將它們存入I/O映象區中的相應得單元內,這一過(guò)程稱(chēng)為輸入采樣。輸入采樣結束后進(jìn)入程序執行階段后,期間即使輸入信號發(fā)生變化,輸入映像寄存器內數據不再隨之變化,直至一個(gè)掃描循環(huán)結束,下一次輸入采樣時(shí)才會(huì )更新。因此,如果輸入是脈沖信號,則該脈沖信號的寬度必須大于一個(gè)掃描周期,才能保證在任何情況下,該輸入均能被讀入。
(2)用戶(hù)程序執行階段
在用戶(hù)程序執行階段,若不出現中斷或跳轉指令,PLC總是按由上而下的順序依次地掃描用戶(hù)程序(梯形圖)。在掃描每一條梯形圖時(shí),又總是先掃描梯形圖左邊的由各觸點(diǎn)構成的控制線(xiàn)路,并按先左后右、先上后下的順序對由觸點(diǎn)構成的控制線(xiàn)路進(jìn)行邏輯運算,然后根據邏輯運算的結果,刷新該邏輯線(xiàn)圈在系統RAM存儲區中對應位的狀態(tài);或者刷新該輸出線(xiàn)圈在I/O映象區中對應位的狀態(tài);或者確定是否要執行該梯形圖所規定的特殊功能指令。
即,在用戶(hù)程序執行過(guò)程中,只有輸入點(diǎn)在I/O映象區內的狀態(tài)和數據不會(huì )發(fā)生變化,而其他輸出點(diǎn)和軟設備在I/O映象區或系統RAM存儲區內的狀態(tài)和數據都有可能發(fā)生變化,而且排在上面的梯形圖,其程序執行結果會(huì )對排在下面的凡是用到這些線(xiàn)圈或數據的梯形圖起作用;相反,排在下面的梯形圖,其被刷新的邏輯線(xiàn)圈的狀態(tài)或數據只能到下一個(gè)掃描周期才能對排在其上面的程序起作用。
在程序執行的過(guò)程中如果使用立即I/O指令則可以直接存取I/O點(diǎn)。即使用I/O指令的話(huà),輸入過(guò)程影像寄存器的值不會(huì )被更新,程序直接從I/O模塊取值,輸出過(guò)程影像寄存器會(huì )被立即更新,這跟立即輸入有些區別。
(3)輸出刷新階段
當掃描用戶(hù)程序結束后,PLC就進(jìn)入輸出刷新階段。在此期間,CPU按照I/O映象區內對應的狀態(tài)和數據刷新所有的輸出鎖存電路,再經(jīng)輸出電路驅動(dòng)相應的外設。這時(shí),才是PLC的真正輸出。