「時計データ読出し」命令とは、三菱電機製シーケンサQシリーズにおけるCPUユニットの時計素子の時計データを読み出すラダープログラム命令です。
時計データ読出し命令を用いることにより、CPUユニットの時計素子から「年(西暦)・月・日・時・分・秒・曜日」のデータをラダープログラム上で使用することが可能です。
この記事では、三菱電機製シーケンサQシリーズにおける時計データ読出し命令の指令方法とラダープログラム例について解説します。
三菱電機製シーケンサQシリーズにおいて、時計データ読出し命令は以下のCPUで使用することが可能です。
Basic | :ベーシックモデルQCPU |
High performance | :ハイパフォーマンスモデルQCPU |
Process | :プロセスCPU |
Redundant | :二重化CPU |
Universal | :ユニバーサルモデルQCPU |
LCPU | :LCPU |
※MELSEC-Lシリーズも含まれていますがご了承ください。
目次
1. 時計データ読出し命令の指令方法
時計データ読出し命令には、2種類の指令方法があります。
DATERD | :連続実行形 |
DATERDP | :パルス実行形 |
DATERDは、Date readの略です。(だと思います。)
DATERD:連続実行形(基本の形)
連続実行形の時計データ読出し命令は”DATERD”と指令します。
こちらがDATERD命令を使用したラダープログラム例です。
このラダープログラムでは、入力条件であるX0がONしている間、CPUユニットの時計素子に格納されている以下の時計データをD0~D6に格納します。
D0 | :年(西暦) |
D1 | :月 |
D2 | :日 |
D3 | :時(24時間計) |
D4 | :分 |
D5 | :秒 |
D6 | :曜日 |
上のラダープログラムでは、時計データの転送先をD0にしているので、D0を先頭とするD0~D6(7ワード)が占有されます。
先ほどのラダープログラムを実行すると、D0~D6のデバイス値は以下のようになります。
入力リレーX0をONしたときの時刻は、2020年2月18日17時59分(火曜日)でした。データレジスタに各時計データが格納されています。
先ほどのラダープログラムはGX Works2の回路上で DATERD D0 と入力してEnterキーを押すと命令が挿入されます。
DATERDP:パルス実行形
パルス実行形の時計データ読出し命令は”DATERDP”と指令します。
こちらがDATERDP命令を使用したラダープログラム例です。
連続実行形(DATERD命令)との違いは、入力条件である入力リレーX0がOFF→ONになった瞬間に1回だけCPUユニットの時計データをD0~D6に格納することです。(すぐに各データレジスタの値が0に戻る訳ではありません。)
つまり、入力リレーX0がONし続けていても時計データはX0がOFF→ONになった瞬間の値が格納され続けます。
2.【例題①】現在の時刻を表示する
下記仕様のラダープログラムを時計データ読出し命令を用いて解説します。
先ほどのDATERD命令を使用すれば簡単に作成することが可能です。
GOTの動作イメージ
GOTの動作イメージは以下のようになります。
※使用していないデバイスがありますがご了承ください。
このGOTは、2020年2月18日18時42分(火曜日)に実行したものです。
各データレジスタに時計データが格納されています。
ラダープログラム
ラダープログラムは以下のようになります。
今回は、スイッチ等の入力条件がなく「常に」時計データを表示するので、特殊リレーのSM400を使用します。SM400はCPUがRUN中は常にONする特殊なリレーです。
3.【例題②】設定した時刻にランプを点灯させる
下記仕様のラダープログラムを時計データ読出し命令を用いて解説します。
このデータレジスタD15の値はGOTから入力可能とすること。
「何この仕様…」って感じですが、応用することにより所定の時間に到達したら何か処理を実行する「ウィークリタイマ」を作成することができます。
GOTの動作イメージ
GOTの動作イメージは以下のようになります。
データレジスタD15の値を「秒データ」つまりD5の値と比較して、等しいときにランプ(緑)を点灯させます。
ラダープログラム
ラダープログラムは以下のようになります。
例題①と同様に、常に時計データ読出し命令を実行します。
接点形比較命令を用いて「時計データで読み出した秒のデータD5」と「データレジスタD15」の値を比較して、両者の値が等しいときに出力リレーY0をONさせます。
4. おわりに
三菱Qシリーズにおける時計データ読出し命令について解説しました。
以下の参考書は、シーケンス制御・ラダープログラムについて詳しく解説しているものです。
本書は私が通っていた短大のシーケンス制御の講義に教科書として使用していました。
シーケンス制御で必要なスキルはリレー回路やラダープログラムを組めることだけではなく、ソレノイドバルブやインダクションモータなどの機器を理解していなければなりません。本書では、それらの機器を実際の機構を交えて解説しています。
ラダープログラムは基礎部分から、一連動作を組むまで解説していますので中級者が読んでも意味がある内容です。
D0(年)とD1(月)を結合して
一つのDアドレスで『年月』表示というのはできるのでしょうか?
表示器の表示形式にも依りますが、2ヶのデバイスを1ヶに結合する命令として、BTOW命令があります。
命令の詳細はMELSEC-Q/Lプログラミングマニュアル(共通命令編)を参照ください。