62138335
級(jí)別: 正式會(huì)員
精華主題: 0
發(fā)帖數(shù)量: 5 個(gè)
工控威望: 52 點(diǎn)
下載積分: 505 分
在線時(shí)間: 3(小時(shí))
注冊(cè)時(shí)間: 2016-04-22
最后登錄: 2016-11-04
查看62138335的 主題 / 回貼
樓主  發(fā)表于: 2016-10-24 15:46
西門子S7-1200PLC的IEC格式的定時(shí)器屬于功能塊。在插入定時(shí)器指令時(shí),要求創(chuàng)建一個(gè)16字節(jié)的IEC_Timer數(shù)據(jù)類型的DB結(jié)構(gòu)(即背景數(shù)據(jù)塊),來保存有關(guān)的數(shù)據(jù)。在功能塊中,可以事先創(chuàng)建一個(gè)IEC_Timer數(shù)據(jù)類型的靜態(tài)變量(多重背景),然后將它指定給定時(shí)器指令。

  CPU沒有給任何特定的定時(shí)器指令分配專門的資源。每個(gè)定時(shí)器使用DB結(jié)構(gòu)和一個(gè)連續(xù)運(yùn)行的內(nèi)部CPU定時(shí)器(我的理解是一個(gè)硬件定時(shí)器)來執(zhí)行定時(shí)。

  在定時(shí)器指令的輸入IN的上升沿啟動(dòng)定時(shí)器時(shí),連續(xù)運(yùn)行的內(nèi)部CPU定時(shí)器的值將被復(fù)制到為該定時(shí)器指令分配的DB結(jié)構(gòu)的元素START(起始值)中。

  該起始值在定時(shí)器繼續(xù)運(yùn)行期間將保持不變,以后將在每次更新定時(shí)器時(shí)使用。以下條件時(shí)將會(huì)執(zhí)行定時(shí)器更新:

  1)執(zhí)行定時(shí)器指令(TP、TON、TOF 或 TONR);

  2)定時(shí)器結(jié)構(gòu)的元素ELAPSED(經(jīng)過的時(shí)間)或位輸出Q作為其它指令的參數(shù),該指令被執(zhí)行。

  更新定時(shí)器時(shí),將從內(nèi)部CPU定時(shí)器的當(dāng)前值中減去上述起始值,得到經(jīng)過的時(shí)間ELAPSED。再將ELAPSED與預(yù)設(shè)值PT進(jìn)行比較,以確定定時(shí)器的位輸出Q的狀態(tài)。然后更新該定時(shí)器的DB結(jié)構(gòu)的元素ELAPSED和Q。達(dá)到預(yù)設(shè)值PT后,定時(shí)器不會(huì)繼續(xù)累加經(jīng)過的時(shí)間ELAPSED。

  STEP 7 Basic的V11版與V10.5版相比,增加了類似于S7-300/400的定時(shí)器線圈指令。

  從上述的定時(shí)器內(nèi)部的定時(shí)機(jī)制可知,在使用定時(shí)器時(shí),其定時(shí)精度與CPU的掃描周期有很大的關(guān)系。在CPU兩次更新定時(shí)器之間,定時(shí)器的輸入、輸出參數(shù)保持不變。

  為了驗(yàn)證上述結(jié)論,在FB1中調(diào)用定時(shí)器指令TP,在OB1中用I0.1作為調(diào)用條件,調(diào)用FB1。用監(jiān)視表格監(jiān)視定時(shí)器的輸出Q和經(jīng)過的時(shí)間ET,用輸入IN的上升沿啟動(dòng)定時(shí)器后,如果I0.1為0狀態(tài),沒有調(diào)用FB1和執(zhí)行定時(shí)器指令,定時(shí)器的輸出Q和經(jīng)過的時(shí)間ET保持不變。只有在調(diào)用FB1,執(zhí)行定時(shí)器指令時(shí),ET的值才會(huì)變化。