西門子s7-300CPU
PLC雖具有微機(jī)的許多特點(diǎn),,但它的工作方式卻與微機(jī)有很大的不同。微機(jī)一般采用等待命令的工作方式,,如常見的鍵盤掃描方式或I/O掃描方式,,有鍵按下或I/O動(dòng)作則轉(zhuǎn)入相應(yīng)的子程序無鍵按下則繼續(xù)掃描,。PLC則采用循環(huán)掃描工作方式,在PLC中,,用戶程序按先后順序存放,,如:
1
× × × ×
2 × × × ×
3 × × × ×
10 × × × ×
11 ED
CPU從第一條指令開始執(zhí)行程序,直至遇到結(jié)束符后又返回第一條,。如此周而復(fù)始不斷循環(huán),。這種工作方式是在系統(tǒng)軟件控制下,順次掃描各輸入點(diǎn)的狀態(tài),,按用戶程序進(jìn)行運(yùn)算處理,,然后順序向輸出點(diǎn)發(fā)出相應(yīng)的控制信號(hào)。整個(gè)工作過程可分為五個(gè)階段:自診斷,,與編程器等的通信,,輸入采樣,用戶程序執(zhí)行,,輸出刷新,,其工作過程框圖如圖所示:

PLC工作過程框圖
1)每次掃描用戶程序之前,都先執(zhí)行故障自診斷程序,。自診斷內(nèi)容為I/O部分,、存儲(chǔ)器、CPU等,,發(fā)現(xiàn)異常停機(jī)顯示出錯(cuò),。若自診斷正常,繼續(xù)向下掃描,。
2)PLC檢查是否有與編程器和計(jì)算機(jī)的通信請(qǐng)求,,若有則進(jìn)行相應(yīng)處理,如接收由編程器送來的程序,、命令和各種數(shù)據(jù),,并把要顯示的狀態(tài)、數(shù)據(jù),、出錯(cuò)信息等發(fā)送給編程器進(jìn)行顯示,。如果有與計(jì)算機(jī)等的通信請(qǐng)求,也在這段時(shí)間完成數(shù)據(jù)的接受和發(fā)送任務(wù),。
3)PLC的中央處理器對(duì)各個(gè)輸入端進(jìn)行掃描,,將輸人端的狀態(tài)送到輸入狀態(tài)寄存器中,這就是輸入采樣階段,。
4)中央處理器CPU將指令逐條調(diào)出并執(zhí)行,,以對(duì)輸人和原輸出狀態(tài)(這些狀態(tài)統(tǒng)稱為數(shù)據(jù))進(jìn)行“處理",即按程序?qū)?shù)據(jù)進(jìn)行邏輯,、算術(shù)運(yùn)算,,再將正確的結(jié)果送到輸出狀態(tài)寄存器中,,這就是程序執(zhí)行階段。
5)當(dāng)所有的指令執(zhí)行完畢時(shí),,集中把輸出狀態(tài)寄存器的狀態(tài)通過輸出部件轉(zhuǎn)換成被控設(shè)備所能接受的電壓或電流信號(hào),,以驅(qū)動(dòng)被控設(shè)備,這就是輸出刷新階段,。
PLC經(jīng)過這五個(gè)階段的工作過程,,稱為一個(gè)掃描周期。完成一個(gè)周期后,,又重新執(zhí)行上述過程,,掃描周而復(fù)始地進(jìn)行。掃描周期是PLC的重要指標(biāo)之一,,在不考慮第二個(gè)因素(與編程器等通信)時(shí),,掃描周期T為:
T=(讀入一點(diǎn)時(shí)間×輸入點(diǎn)數(shù))+(運(yùn)算速度×程序步數(shù))+(輸出一點(diǎn)時(shí)間×輸出點(diǎn)數(shù))十故障診斷時(shí)間
顯然掃描時(shí)間主要取決于程序的長(zhǎng)短,一般每秒鐘可掃描數(shù)十次以上,,這對(duì)于工業(yè)設(shè)備通常沒有什么影響,。但對(duì)控制時(shí)間要求較嚴(yán)格,響應(yīng)速度要求快的系統(tǒng),,就應(yīng)該精確的計(jì)算響應(yīng)時(shí)間,,細(xì)心編排程序,合理安排指令的順序,,以盡可能減少掃描周期造成的響應(yīng)延時(shí)等不良影響,。
西門子s7-300CPU