在PLC中一般的定時(shí)器時(shí)間都是以100ms,10ms或者1ms為計(jì)時(shí)單位,也就是定時(shí)器計(jì)數(shù)值與計(jì)時(shí)單位的乘積就是定時(shí)器的當(dāng)前時(shí)間。以100ms計(jì)時(shí)單位為例,當(dāng)某個(gè)定時(shí)器Txx的當(dāng)前值為300時(shí),說(shuō)明定時(shí)器的計(jì)時(shí)時(shí)間為300*100ms=30秒。而在PLC中,定時(shí)器當(dāng)前值的一般都是以16位有符號(hào)整型數(shù)據(jù)存儲(chǔ)在寄存器中,如在S7-200SMART系列PLC中,定時(shí)器的當(dāng)前值就是這樣存儲(chǔ)的,且支持對(duì)定時(shí)器進(jìn)行字尋址。(有關(guān)定時(shí)器指令可以參考:6.實(shí)物演示不同的定時(shí)器指令在200SMART定時(shí)器設(shè)置與使用)因此,以100ms為計(jì)時(shí)單位的定時(shí)器的計(jì)時(shí)范圍為0到3276.7秒,也就最大計(jì)時(shí)值只能是3276.7秒,不到一個(gè)小時(shí),而10ms與1ms的計(jì)時(shí)器的最大計(jì)時(shí)范圍就更小了。
但是,在實(shí)際應(yīng)用中,我們通常需要對(duì)設(shè)備的運(yùn)行時(shí)間進(jìn)行統(tǒng)計(jì),這個(gè)時(shí)間是很長(zhǎng)很長(zhǎng)的,單位更是以小時(shí)計(jì)甚至以天計(jì),那么我們?nèi)绾螌?shí)現(xiàn)呢。現(xiàn)在以S7-200SMART為例,舉例說(shuō)明。
基本思路就是:當(dāng)設(shè)備啟動(dòng)運(yùn)行的同時(shí)(比如電機(jī)M1啟動(dòng)代表設(shè)備運(yùn)行),啟動(dòng)定時(shí)器,每隔半小時(shí)也就是1800秒,在運(yùn)行時(shí)間上加上0.5小時(shí),運(yùn)行時(shí)間可以保存在V存儲(chǔ)區(qū)的保持寄存器中。定時(shí)器就選用保持型定時(shí)器,設(shè)備停止運(yùn)行,定時(shí)器不計(jì)時(shí),運(yùn)行時(shí)在原來(lái)的計(jì)時(shí)值上繼續(xù)開始計(jì)時(shí)。梯形圖實(shí)例如下:如何用PLC的保持型定時(shí)器指令進(jìn)行設(shè)備運(yùn)行時(shí)間統(tǒng)計(jì)
計(jì)時(shí)器T5與VD1000應(yīng)組態(tài)為可保持寄存器,在系統(tǒng)塊中打開組態(tài)窗口進(jìn)行組態(tài)。
當(dāng)然這個(gè)程序統(tǒng)計(jì)的時(shí)間只能以半小時(shí)為一個(gè)計(jì)時(shí)單位,每半小時(shí)才能更新一次,如果想要1分鐘更新一次統(tǒng)計(jì)時(shí)間應(yīng)該怎么辦,感興趣的可以自己動(dòng)手去試一試。