大家在編寫STEP 7程序時,會經(jīng)常用到Timer計時器,但在使用過程中有很多疑問,感覺有時候程序執(zhí)行與自己所想要得結果有出入,邏輯上分析看不出有任何問題,那么為什么會有這樣的現(xiàn)象呢?Timer計時器的執(zhí)行與CPU的程序掃描周期有什么關系呢?我們應該如何來使用Timer呢?
我們會在以下針對此話題通過相關的程序進行討論,期間也會有西門子工程師上線與大家交流。希望通過這次討論使大家在今后能更好的理解和使用Timer計時器。
請首先讓我們來一起關注以下兩個問題:
1)下圖中,M10.2能否被置位?
2)下圖中,S_CU計數(shù)有無問題,M6.2能否被置位?
上述兩個問題其實是時間繼電器的動作問題,即時間繼電器的動作是下個cpu的掃描周期,所以1、2兩個問題的m10.2和m6.2均不能置位,如果把它們放在時間繼電器的前面就可以置位了
第一個問題M10.2不能被置位.
原因:SD為接通延時定時器線圈。CPU開始運行時,通過T3常閉T2時間繼電器進行計時,計時時間8S到,通過T2常閉T3時間繼電器進行計時,計時時間8S到時,根據(jù)程序執(zhí)行順序,T3常閉斷開,T2時間繼電器停止,則輸出為0,從而使T3時間繼電器停止,輸出也為0,因此,M10.2無法被置位,同時又開始了新一輪的計時。
注意:當計時器計時時間到時,如果輸入端仍然為1時,才輸出1。
第二個問題:
1、S_CU計數(shù)有問題,沒有指定計數(shù)器的標識號,預置值,置位輸入端,復位輸入端等.無法進行計數(shù)。
2、M6.2不能被置位!
原因:M0.7被置位后,計時器T0開始計時,當計時時間到時,T0時間繼電器起動輸入端變?yōu)?,則計時器T0輸出0,無法置位M6.2。
注意:當計時器計時時間到時,如果起動輸入端S仍然為1時,才輸出1。










