PLC程序啟動(dòng)和掃描循環(huán)
發(fā)布于2022-12-20 10:37
57
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)操作,按照既定的順序一步一步地完成各種操作。S7 CPU的工作過程如圖3-1所示。
①啟動(dòng)(Start Up)
如S7-PLCCPU從STOP狀態(tài)轉(zhuǎn)入RUN狀態(tài)時(shí)執(zhí)行一次完全重啟動(dòng)(Complete Restart),包括清除1、Q和非保持性的M、T、C,調(diào)用啟動(dòng)組織塊OB100;然后進(jìn)入掃描循環(huán)。
②掃描循環(huán)(Scan Cycle) 在掃描循環(huán)的開始,首先刷新循環(huán)監(jiān)控時(shí)間(Watch Dog Timer),如對(duì)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ù)。
a.輸入處理。輸入處理是以批處理的方式,讀入輸入模塊中各個(gè)輸入點(diǎn)的通/斷狀態(tài),以1/0的方式寫在輸入過程映像表PII。在程序執(zhí)行過程中,即使輸入點(diǎn)的狀態(tài)改變,輸入過程映像表的內(nèi)容也不會(huì)變化,直到下一個(gè)掃描周期再一次做輸入處理的時(shí)候,新的變化才得以寫入。
b.程序處理。程序處理是以掃描方式逐一處理OB1中的程序。邏輯運(yùn)算的結(jié)果涉及輸出的,把結(jié)果寫到輸出過程映像表(Process Image Output Table)。
c.輸出處理。輸出處理是以批處理的方式,把輸出過程映像表(PIQ)的內(nèi)容抄到輸出模塊的輸出鎖存緩沖區(qū),真正影響輸出點(diǎn)的通/斷。
完成一個(gè)循環(huán)的時(shí)間稱為掃描周期(Scan Cycle Time)。實(shí)際上,在一個(gè)掃描周期中,除了上述三項(xiàng)處理外,還要留一段時(shí)間給操作系統(tǒng)完成其他的任務(wù)。另外,西門子公司在定
(d)數(shù)據(jù)塊DB(Data Block);
(e)系統(tǒng)功能塊 SFB(System Function Block);(f)系統(tǒng)功能 SFC(System Function)。
義掃描周期的時(shí)候,把輸出處理和輸入處理排在一起,如圖3-2所示。
這樣定義,并沒有改變CPU的工作順序,只是改變了掃描周期的起算點(diǎn)。