簡單講,上電時,啟動執行,然后進入plc掃描過程。從用戶觀點,plc掃描過程就是從輸入模塊讀取狀態信號放入過程映像區,然后開始調用循環。如果有事件產生中斷,則調用相應的塊(功能)進行處理。最后把過程映像輸出表送輸出模塊。plc可以被看作是在系統軟件支持下的一種掃描設備,一直在循環掃描并執行系統軟件設計好的任務。
plc整個掃描過程可以分為內部處理、通信服務、輸入采樣、用戶程序執行、輸出刷新5個階段。
(1)內部處理階段
內部處理階段也稱為系統自檢階段。內部處理過程是運行plc內部系統的管理程序,在這個階段,plc完成硬件自檢工作和將監控定時器復位等內部工作。如果通過自檢,則執行后續功能,否則發出報警信號。該程序是生產廠家在plc出廠時就已經固化的,一般比較固定,與用戶的控制程序無直接關聯,其運行時間與用戶程序運行時間相比要短的多。
(2)通信服務階段
在通信服務階段,處理鏈接服務功能。主要是plc建立、處理與遠程i/o、上位計算機、其他聯網plc、編程器以及各種智能裝置的通信鏈接。當然,只有在系統中已配置了遠程i/o和其他鏈接單元時,才進行此階段工作。
(3)輸入采樣階段
plc以掃描的方式工作,輸入電路時刻監視著輸入信號,按順序將信號讀入寄存輸入狀態的輸入映像寄存器中存儲,每一輸入點都有一個對應的存儲其信息的寄存器。輸入寄存器與計算機內存交換信息通過計算機總線,并主要由運行系統程序來實現。plc內存有專門開辟的存放輸入信息的映像區。這個區的每一個對應位( bit)稱為輸入,或稱軟接點。這些位置為1,表示接點通,為0表示接點斷。由于其狀態是由輸入刷新得到的,所以,它反映的就是輸入狀態。這個過程稱為輸入采樣。該采樣結果將在plc執行程序時被使用。
(4)用戶程序執行階段
plc的用戶程序由若干條指令組成,plc從第一條指令開始,按順序逐條對用戶程序進行掃描。用戶程序一般從輸入映像寄存器、內部寄存器和輸出映像寄存器中讀取所需的數據進行運算、處理,再將程序執行的結果寫入輸出映像寄存器中暫存。
(5)輸出刷新階段
在執行完所有用戶程序后,plc將輸出映像寄存器中的內容送到輸出寄存器中,并通過輸出電路產生相應的輸出,再去驅動用戶設備。
為了便于理解plc程序的執行過程,通常也可近似的認為plc的掃描工作過程為3個基本階段:輸入采樣、用戶程序執行、輸出刷新。plc在運行模式時,掃描工作是不斷重復的,也就是說,以上3個階段是不斷重復的,其輸入和輸出存儲器不斷被刷新。由于這個過程是永不停止地循環反復,所以,輸出總是反映輸入變化的。只是響應時間,略有滯后。當然,這個滯后不宜太大,否則,所實現的控制就不會及時,也就失去控制意義。為此,plc的工作速度要快。速度快、執行指令時間短,是plc實現控制的基礎。事實上,plc的速度是很快的,執行一條指令,長則幾微秒、幾十微秒,短則零點幾或零點零幾微秒,而且這個速度還在不斷提高。
同一個系統在各次掃描周期中,隨著條件的不同,執行程序的時間會有變化,因為程序執行過程中,變量狀態的不同,部分程序段可能不執行。
程序循環掃描一次的時間,不僅與每條指令執行的時間有關,而且與程序中所用的指令類型、指令條數有關。










