【オムロンCJ】10msタイマ(TIMH・TIMHX)命令の指令方法とラダープログラム例

00_【オムロンCJ】10msタイマTIMH・TIMHX命令の指令方法とラダープログラム例

オムロンCJシリーズにおける「10msタイマ」命令とは、タイマと呼ばれるデバイスを用いて10ms(0.01秒)単位の指定した時間、タイマの入力条件がONし続けるとタイムアップフラグがONするラダープログラム命令です。

この命令を用いたタイマは、入力条件がONすると10ms(0.01秒)毎にタイマ現在値が減算され、タイマ現在値が”0”になるとタイムアップフラグがONします。

10msタイマ命令は別名「高速タイマ」とも呼ばれ、主に100msタイマ命令では処理が遅い・粗い場合に使用されます。

この記事では、オムロンCJシリーズにおける10msタイマ命令の指令方法ラダープログラム例について解説します。

注意
この記事のラダープログラムはCX-Programmer Ver. 9.63で作成しており、PLC機種はCJ2Mに設定してあります。
注意
オムロンCJシリーズにおいて10msタイマ命令は、CJ2H-CPU6□-EIP、CJ2H-CPU6□、CJ2M-CPU□□、CJ1□-CPU□□□-□で使用可能です。その他の機種についてはマニュアルを参照してください。

オムロンCJシリーズにおける100msタイマ命令については以下のページで解説しております。

00_【オムロンCJ】100msタイマ(TIM・TIMX)命令の指令方法とラダープログラム例【オムロンCJ】100msタイマ(TIM・TIMX)命令の指令方法とラダープログラム例

1. 10msタイマ命令の指令方法

10msタイマ命令には、2種類の指令方法があります。

命令文内容
TIMHBCDの10msタイマ命令
TIMHXBINの10msタイマ命令

TIMH(BCD)命令の場合、設定値に#0000~9999を指定することができます。(0~99.99秒)

TIMHX(BIN)命令の場合、設定値に10進&0~65535、または16進#0000~FFFFを指定することができます。(0~655.35秒)

TIMH:BCDの10msタイマ命令

BCDの10msタイマ命令は”TIMH”と指令します。

こちらがTIMH命令を使用したラダープログラム例です。

10_TIMH命令

このラダープログラムは、0.00がONするとタイマT0が10ms(0.01秒)毎に現在値が減算され、T0の現在値が”0”になるとタイムアップフラグがONします。

TIMH命令内で設定値は#50と指定されているため、0.00が0.5秒間(0.01秒×50)ONし続けると現在値が”0”になります。

現在値が”0”、つまりT0のタイムアップフラグがONするとT0のa接点がONします。

メモ
タイマ番号に”0000”を指定することで、タイマT0を使用します。

↓がTIMH命令で設定値を#50にしたラダープログラム動作です。

10_TIMH命令解説

先ほどのラダープログラムはCX-Programmerの回路上で TIMH 0 #50 と入力してEnterキーを押すと命令が挿入されます。 ※スマートインプットモードの場合

10_命令挿入

TIMHX:BINの10msタイマ命令

BINの10msタイマ命令は”TIMHX”と指令します。

こちらがTIMHX命令を使用したラダープログラム例です。

11_TIMHX命令1

このラダープログラムは、0.00がONするとタイマT0が10ms(0.01秒)毎に現在値が減算され、0.5秒後にT0のタイムアップフラグがONします。先ほどのTIMH命令で解説したラダープログラムと同じ動作です。

TIMHX命令の設定値で、頭文字に「&」を付けると10進数の0~65535を指定することができます。


11_TIMHX命令2

このラダープログラムは、0.00がONするとタイマT0が10ms(0.01秒)毎に現在値が減算され、「0.8秒後」にT0のタイムアップフラグがONします。

TIMHX命令の設定値で、頭文字に「#」を付けると設定値は16進数となり、今回の設定値である#50(16進数)は10進数に変換すると80になります。

TIMHX命令の設定値で、頭文字に「#」を付けると16進数の0000~FFFFを指定することができます。

2.【例題①】10msタイマ命令(0.9秒固定)

下記仕様のラダープログラムを10msタイマ命令を用いて解説します。

仕様
スイッチ(0.00)を0.9秒間押し続けると、ランプ(1.00)が点灯する。

0.9秒間をカウントするため、10msタイマ命令の設定値を”90”にして使用します。

メモ
0.9秒であれば、100msタイマ命令を用いて、設定値を”9”にして使用しても作成することができます。

タイムチャート

タイムチャートは以下のようになります。

例題①_タイムチャート

入力0.00が0.9秒間ONし続けると出力1.00がONして、入力0.00がOFFすると出力1.00も即座にOFFします。

入力0.00がONしている時間が0.9秒未満だと、出力1.00はONしません。

タッチパネルの動作イメージ

タッチパネルの動作イメージは以下のようになります。

例題①_タッチパネル

スイッチ(0.00)を0.9秒間押し続けると、ランプ(1.00)が点灯します。

ラダープログラム

ラダープログラムは以下のようになります。

例題①_ラダープログラム

0.00を入力条件とするTIMHX命令を用いて、タイマT0を使用します。TIMHX命令の設定値を&90にすることで、0.00が0.9秒間ONし続けるとT0がONします。

T0のa接点を1.00の入力条件とすることで、T0と同時に1.00がONします。

3.【例題②】10msタイマ命令(タッチパネル可変)

下記仕様のラダープログラムを10msタイマ命令を用いて解説します。

仕様
スイッチ(0.00)を設定時間押し続けると、ランプ(1.00)が点灯する。
設定時間は10ms単位でタッチパネル上のデータメモリ(D0)から変更可能とする。

【例題①】では、タイマの設定値に「&90」を指定しましたが、今回はタッチパネル上から可変できるようにタイマの設定値に「データメモリD0」を割り当てます。

タッチパネルの動作イメージ

タッチパネルの動作イメージは以下のようになります。

例題②_タッチパネル

スイッチ(0.00)をデータメモリ(D0)に「設定した時間」押し続けると、ランプ(1.00)が点灯します。

データメモリ(D0)の数値 × 10ms(0.01秒) の値が「設定した時間」となります。

ラダープログラム

ラダープログラムは以下のようになります。

例題②_ラダープログラム

TIMHX命令の設定値にデータメモリ(D0)を指定することにより、0.00が「D0の値×10ms」ONし続けるとT0がONします。

4. おわりに

オムロンCJシリーズにおける10msタイマ命令について解説しました。

私の場合、「センサのチャタリング防止」や「速い速度を検知するセンサ検知」といった用途で、100msタイマでは処理が遅い・追いつかない場合に10msタイマ命令を使用します。(基本は100msタイマを使用します。)

以下の参考書はラダープログラムの色々な「定石」が記載されており、実務で使用できるノウハウが多く解説されています。私がラダープログラムの参考書として自信をもってオススメできるものです。

ただし、ラダープログラムやPLCといった電気・制御設計は参考書やWebサイトのみでの学習には必ずどこかで限界が来ます。

各メーカが販売しているPLCやプログラム作成のアプリケーションを揃えるには安くても十万円以上の大きな費用が掛かり、独学は現実的ではありません。

ラダープログラムの一番現実的な学習方法は「実務で経験を積む」ことです。電気・制御設計者はこれから更に必要な人材になり続けますので、思い切って転職する選択肢もあります。

DODA』といった大手求人(転職)サイトには電気・制御設計の求人が数多く紹介されています。※登録は無料です。

「スキルこそ今後のキャリアを安定させる最も大切な材料」と考える私にとって電気・制御設計はとても良い職業だと思います。キャリアの参考になれば幸いです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です