plc用戶程序通過(guò)編程器順序輸入到用戶存儲(chǔ)器,cpu對(duì)用戶程序循環(huán)掃描并順序執(zhí)行,這是plc的基本工作過(guò)程。
當(dāng)plc運(yùn)行時(shí),用戶程序中有眾多的操作需要去執(zhí)行,但是cpu是不能同時(shí)去執(zhí)行多個(gè)操作的,它只能按分時(shí)操作原理,每一時(shí)刻執(zhí)行一個(gè)操作。但由于cpu運(yùn)算處理速度很高,使得外部出現(xiàn)的結(jié)果從宏觀來(lái)看似乎是同時(shí)完成的。這種分時(shí)操作的過(guò)程,稱為cpu對(duì)程序的掃描(cpu處理執(zhí)行每條指令的平均時(shí)間:小型plc如omron-p系列為10μs、中型plc如fanuc-plc-b為7μs)。
plc接通電源并開(kāi)始運(yùn)行后,立即開(kāi)始進(jìn)行自診斷,自診斷時(shí)間的長(zhǎng)短隨用戶程序的長(zhǎng)短而變化。自診斷通過(guò)后,cpu就對(duì)用戶程序進(jìn)行掃描。掃描從0000h地址所存的第一條用戶程序開(kāi)始,順序進(jìn)行,直到用戶程序占有的最后一個(gè)地址為止,形成一個(gè)掃描循環(huán),周而復(fù)始。順序掃描的工作方式簡(jiǎn)單直觀,它簡(jiǎn)化了程序的設(shè)計(jì),并為plc的可靠運(yùn)行提供了保證。一方面所掃描到的指令被執(zhí)行后,其結(jié)果馬上就可以被將要掃描到的指令所利用。另一方面還可以通過(guò)cpu設(shè)置掃描時(shí)間監(jiān)視定時(shí)器來(lái)監(jiān)視每次掃描是否超過(guò)規(guī)定的時(shí)間,從而避免由于cpu內(nèi)部故障使程序執(zhí)行進(jìn)入死循環(huán)而造成的故障。