IEC Timerは普通のTimerとなにが違うとみんなさんも思い浮かびますよね。ここでSiemensのS7-Timerと比べると、なにを考えないとだめのなのか。
- S7-Timerは数が限られている(CPUによって違う)
- どっちのほうがプログラミング簡単
- Timerの時間設定するとき、どっちのほうが扱いやすい。S7-Timerだと時間の設定は”SIMATIC Timer Data Type”なので少々手間かかる、そしてIEC Timerの時間設定とき使用するData typeは”TIME”、例えばPT=1、それを1000倍にかけると1秒になる。
- メモリの容量問題(IEC-Timerは”DB”が必要です)
- IEC-Timerは設定時間が0だと動作しない・Timerの出力Qを使わなかったも動作しない
…など、様々なことも考えないといけません。ですが、私がIEC-Timerを使うの一番メリットはOmron、三菱などいろんなメーカーでも同じくその”IEC-Timer”があること。
今回はIEC-Timerについて紹介したいと思います。
TP: Generate pulse
TPを使うことによって、”Pulse”を生成することができます。
スタート信号(IN)をONすると、出力(Q)がONになります。そして時間設定(PT)がすぎると出力(Q)がOFFになる。
タイムチャート
Example
1秒ことににCounterをプラスするようなプログラムです。
結果
TOF: Generate off-delay
TOFを使うことによってDelay-OFFを作ります。
入力(IN)をONにすると、出力(Q)も同時にONになり、そのとき入力(IN)の信号がOFFになって、出力(Q)もON続けます。そして設定時間(PT)に過ぎたら出力(Q)がOFFになります。
タイムチャート
Example
それもすこく簡単な例で、1秒のOFF-Delayのプログラムです。
結果
TONR: Time accumulator
TONRを使うことによって、Timerの経過時間を蓄積することができます。普通のDelay-ON Timerなら入力がONするときは時間をCountし、設定時間に到達したら出力し、もし設定時間に到達するまで入力がOFFになったら、時間の蓄積またやり直しですね。
つまり、また同じの時間設定待たないとだめです。TONRなら、その分をためてくれいます。動作は入力(IN)がONになり、たとえ設定時間は10秒にしましょう。入力が7s経過したら切れてしまいます。そしてまた入力が入り、3s後は出力(Q)がONになります。
最後、リセット(R) をONにしてTimerの蓄積をクリアします。
タイムチャート
Example
単なる出力したらCounterを+1にする、簡単なプログラムです。
結果1
そちらは普通の動作です。入力が途中に切れてしまうこともあります。
結果2
リセット(R)がずっとONすると、入力(IN)がONになっても時間がCountしません。
TON: Generate on-delay |
名前通り、On-Delayです。みなさん一番よく使ってるTimerです。
入力(IN)がONになると、時間設定(PT)到達すると出力(Q)がONになります。
タイムチャート
Example
結果
RT: Reset timer
RTを使うことによって、いまTimerを”0”にリセットすることができます。
Example
結果
PT: Load time duration
PTを使うことによって現在IEC-Timerの設定値を変更するが可能になります。
Example
結果
本来10sのDelay-On timerがM1.0がOnになると、時間設定値PTが500msになり出力がONになります。