PLC程序處理過程
發(fā)布于2023-02-03 16:12
63
2
標(biāo)簽:PLC
PLC通過輸入模塊接收外來的輸入信號(hào),通過輸出模塊驅(qū)動(dòng)外部執(zhí)行機(jī)構(gòu),而各種信號(hào)之間的邏輯控制關(guān)系則是通過用戶程序來實(shí)現(xiàn)的。PLC本質(zhì)上是一臺(tái)計(jì)算機(jī),和其他的計(jì)算機(jī)一樣,它按照分時(shí)工作的原理進(jìn)行工作。也就是說,它在每一個(gè)時(shí)刻只能進(jìn)行一項(xiàng)操作,按照既定的順序一步一步地完成各種操作。ST CPU的工作過程如圖3-1所示。
圖3-1 S7 CPU的工作過程
(1) 啟動(dòng)(Start Up)。如S7-PLC CPU從STOP狀態(tài)轉(zhuǎn)入RUN狀態(tài)時(shí)執(zhí)行一次完全重啟動(dòng)(Complete Restart),包括清除I、Q和非保持性的M、T、C,調(diào)用啟動(dòng)組織塊OBIOO,然后進(jìn)入掃描循環(huán)。
(2) 掃描循環(huán)(Scan Cyele)。在掃描循環(huán)的開始,首先刷新循環(huán)監(jiān)控時(shí)間(Watch Dog Timer),如對S7-300 CPU缺省的循環(huán)監(jiān)控時(shí)間是150ms;然后按順序進(jìn)行輸入處理、程序處理和輸出處理,這三項(xiàng)處理必須在設(shè)定的循環(huán)監(jiān)控時(shí)間內(nèi)完成,也就是在上述的150ms時(shí)間內(nèi)完成;然后再回去刷新循環(huán)監(jiān)控時(shí)間,如此反復(fù)。
1) 輸入處理。輸入處理是以批處理的方式,讀人輸入模塊中各個(gè)輸入點(diǎn)的通/斷狀態(tài),以I/O的方式寫在輸入過程映像表PU。在程序執(zhí)行過程中,即使輸入點(diǎn)的狀態(tài)改變,輸入過程映像表的內(nèi)容也不會(huì)變化,直到下一個(gè)掃描周期再一次做輸入處理的時(shí)候,新的變化才得以寫入。
2) 程序處理。程序處理是以掃描方式逐一處理OBI中的程序。邏輯運(yùn)算的結(jié)果涉及輸出的,把結(jié)果寫到輸出過程映像表(Process Image Output Table)。
3) 輸出處理。輸出處理是以批處理的方式,把輸出過程映像表(PIQ)的內(nèi)容抄到輸出模塊的輸出鎖存緩沖區(qū),真正影響輸出點(diǎn)的通/斷。
完成一個(gè)循環(huán)的時(shí)間稱為掃描周期(Scan Cycle Time)。實(shí)際上,在一個(gè)掃描周期中,除了上述三項(xiàng)處理外,還要留一段時(shí)間給操作系統(tǒng)完成其他的任務(wù)。另外,西門子公司在定義掃描周期的時(shí)候,把輸出處理和輸入處理排在一起,如圖3-2所示。
這樣定義,并沒有改變CPU的工作順序,只是改變了掃描周期的起算點(diǎn):
圖3-2 CPU的掃描周期