時間:2018-09-06 16:12:44來源:網(wǎng)絡(luò)轉(zhuǎn)載
前言
學(xué)習(xí)S7-300/400,不能僅僅局限于閱讀或編寫一段程序,更要從本質(zhì)上認(rèn)識PLC,方能更好的駕馭它。
一、PLC的循環(huán)處理過程
CPU中的程序分為操作系統(tǒng)和用戶程序。
操作系統(tǒng)用來處理PLC的起動、刷新輸入/輸出過程映像區(qū)、調(diào)用用戶程序、處理中斷和錯誤、管理存儲區(qū)和通信等任務(wù)。
用戶程序由用戶根據(jù)需求自己編寫,以完成特定的控制任務(wù)。STEP7將用戶編寫的程序和數(shù)據(jù)維護(hù)在"塊"中,如功能塊FB、功能FC和數(shù)據(jù)塊DB等。
PLC采用循環(huán)掃描的方式執(zhí)行用戶程序,即掃描工作方式。
圖1PLC的掃描工作方式
1.PLC得電或由STOP模式切換到RUN模式時,CPU起動,同時清除沒有保持功能的位存儲器、定時器、計數(shù)器,清除中斷堆棧和塊堆棧的內(nèi)容,復(fù)位保存的硬件中斷等。
2.執(zhí)行"系統(tǒng)起動組織塊"OB100,該組織塊可以自定義編程,實現(xiàn)一些初始化的工作;
3.系統(tǒng)進(jìn)入周期掃描,并起動循環(huán)時間監(jiān)控;
4.CPU將輸出過程映像區(qū)的數(shù)據(jù)寫入輸出模塊;
5.讀取輸入模塊的狀態(tài),并寫入輸入過程映像區(qū);
6.CPU調(diào)用OB1,執(zhí)行用戶程序,期間,根據(jù)需要可調(diào)用其他邏輯塊(FB、SFB、FC及SFC),來實現(xiàn)控制任務(wù);
7.在循環(huán)結(jié)束時,操作系統(tǒng)執(zhí)行所有掛起的任務(wù),例如下載和刪除塊、接收和發(fā)送全局?jǐn)?shù)據(jù)等;
8.CPU返回"第3步",重新啟動循環(huán)時間監(jiān)控。
9、在執(zhí)行用戶程序的過程中,如果有中斷事件發(fā)生,當(dāng)前執(zhí)行的塊將暫停執(zhí)行,轉(zhuǎn)而執(zhí)行相應(yīng)的組織塊,來響應(yīng)中斷。該組織塊執(zhí)行完成后,之前被暫停的塊將從中斷的地方繼續(xù)開始執(zhí)行。OB1具有很低的優(yōu)先級,除了OB90外,所有的組織塊都能中斷OB1。
二、過程映像區(qū)
PLC的存儲器中,特別設(shè)置了一片區(qū)域用來存放輸入信號和輸出信號的狀態(tài),分別稱之為輸入過程映像區(qū)和輸出過程映像區(qū)。在循環(huán)程序處理過程中,CPU不會直接訪問I/O模塊,而是訪問CPU內(nèi)部的過程映像區(qū)。
如圖1所示,在整個掃描周期內(nèi),CPU會分配一段時間集中將輸出過程映像區(qū)的狀態(tài)傳送給輸出模塊。同樣,輸入模塊的狀態(tài)/數(shù)據(jù)也是集中、統(tǒng)一讀入輸入過程映像區(qū)。在程序的執(zhí)行階段,CPU只和輸入/輸出過程映像區(qū)做數(shù)據(jù)交互,這樣做的好處是,即使外部輸入信號的狀態(tài)發(fā)生變化,輸入過程映像區(qū)的狀態(tài)也暫時不變,可防止程序執(zhí)行時發(fā)生"紊亂";而給到輸出模塊的數(shù)據(jù)是"同時"的,也可有效避免執(zhí)行機構(gòu)的動作序列的不同步。
對過程映像區(qū)的訪問可以以位、字節(jié)、字以及雙字的方式進(jìn)行。
圖2過程映像區(qū)直接尋址
如圖2所示,假設(shè)其為輸入過程映像區(qū)的一部分:
·I1.3即可訪問到粉色部分的內(nèi)容,即尋址一個位;
·IB0即可訪問綠色部分的內(nèi)容,即尋址一個字節(jié);
·IW2:即可訪問藍(lán)色部分的內(nèi)容,即尋址一個字;
·ID4即可訪問橙色部分的內(nèi)容,即尋址雙字;
三、掃描循環(huán)時間
掃描循環(huán)時間是指圖1中相鄰兩次"循環(huán)時間監(jiān)控"之間的時間,它與用戶程序的復(fù)雜程度及CPU執(zhí)行指令的速度有關(guān)。如下為315和416兩款CPU的指令執(zhí)行速度,相比315,CPU416的執(zhí)行速度快很多。
CPU315-2DP:0.3ms/1000條指令;
CPU416-2DP:0.08ms/1000條指令
掃描循環(huán)時間不是一成不變的,以下事件都會延長循環(huán)時間:
·中斷
·診斷和故障處理
·測試和調(diào)試功能
·通訊
·傳送和刪除塊
·壓縮用戶程序存儲器
·讀/寫MMC卡
圖3最大循環(huán)時間與最小循環(huán)時間
如圖3所示,在硬件組態(tài)中,可以修改最大循環(huán)時間,默認(rèn)150ms。如果實際的循環(huán)時間超出設(shè)置的最大時間,CPU會調(diào)用組織塊OB80,在其中響應(yīng)這個故障。如果OB80中未編寫程序,CPU將轉(zhuǎn)入STOP模式。
400的CPU中還可以設(shè)置最小掃描周期,當(dāng)用戶程序較為簡單,使得循環(huán)時間太短時,過程映像區(qū)會太過頻繁的刷新,設(shè)置最小掃描周期可以避免這種情況。
四、系統(tǒng)的響應(yīng)時間
PLC的外部輸入信號發(fā)生變化的時刻到它所控制的外部輸出信號發(fā)生變化的時刻之間的時間間隔,稱之為系統(tǒng)的響應(yīng)時間。它由以下三部分組成:
1、輸入電路的濾波時間
輸入模塊通過RC濾波電路來過濾輸入端引入的干擾,并消除因外接輸入觸點的動作時產(chǎn)生的抖動而引起的不良影響,濾波電路的時間常數(shù)決定了輸入濾波時間的長短,一般為10ms左右。
2、輸出電路的滯后時間
輸出模塊的滯后時間與模塊的類型有關(guān),
·繼電器型輸出電路的滯后時間一般在10ms左右;
·雙向晶閘管型輸出電路在負(fù)載通電時的滯后時間約為1ms,負(fù)載由通電到斷電時的最大滯后時間為10ms;
·晶體管型輸出電路的滯后時間一般在1ms以下。
3、CPU掃描循環(huán)工作方式帶來的滯后時間
由掃描工作方式引起的滯后時間最壞的情況下,可達(dá)2-3個掃描周期。
PLC總的響應(yīng)延遲時間一般只有幾毫秒到幾十毫秒,對于一般的系統(tǒng)是無關(guān)緊要的。在一些特殊應(yīng)用場合,要求輸入、輸出信號之間的滯后時間盡可能短的時候,可以選用掃描速度更快的PLC或采取中斷等措施。
標(biāo)簽:
中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(www.treenowplaneincome.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
產(chǎn)品新聞
更多>2024-09-13
2024-09-09
2024-09-06
英偉達(dá)Blackwell可支持10萬億參數(shù)模型AI...
2024-09-05
2024-08-23
2024-08-22
推薦專題
更多>