plc與普通計算機的等待工作方式不同,它是采用“順序掃描、不斷循環(huán)”的方式進行工作的。即plc運行時,主機的cpu將用戶根據(jù)控制要求編制的用戶程序,按指令存入儲存器的順序逐條取出執(zhí)行,直至程序結束,然后重新返回第一條指令,開始第二次循環(huán)掃描。
plc的掃描工作過程可分為輸入取樣、程序執(zhí)行和輸出刷新三個階段,并進行周期循環(huán),其示意如圖所示。
圖 plc的掃描工作過程圖
(1) 輸入取樣階段
plc在輸入取樣階段,首先按順序將所有輸入端子的通斷狀態(tài)或輸入數(shù)據(jù)讀入,并將其存入(寫入)各對應的輸入狀態(tài)寄存器中,即刷新輸入。隨即關閉輸入端口,進入程序執(zhí)行階段。在程序執(zhí)行階段,即使輸入狀態(tài)有變化,輸入狀態(tài)寄存器的內容也不會改變。變化了的輸入信號狀態(tài)只能在下一個掃描周期的取樣階段被讀入。
(2) 程序執(zhí)行階段
plc在程序執(zhí)行階段,按用戶程序指令存放的先后順序掃描執(zhí)行每條指令,所需的執(zhí)行條件可從輸入狀態(tài)寄存器、內部繼電器(寄存器)和當前輸出狀態(tài)寄存器中讀入,經(jīng)過相應的運算和處理后,其結果再次寫入輸出狀態(tài)寄存器中。所以,輸出狀態(tài)寄存器中所有的內容將隨著程序的執(zhí)行而改變。
(3) 輸出刷新階段
當所有指令執(zhí)行完畢,輸出狀態(tài)寄存器的通斷狀態(tài)在輸出刷新階段送至輸出端并通過一定方式(繼電器、晶體管或晶閘管等)輸出,驅動相應輸出設備工作,這就是plc的實際輸出。
經(jīng)過這三個階段,完成一個掃描周期。掃描周期的長短與用戶程序的指令條數(shù)及執(zhí)行各條指令所需的時間有關,一般不超過100ms。