「ワードデバイスのビットセット」命令とは、三菱電機製シーケンサQシリーズにおけるワードデバイスの指定したビットをセットする(1にする)ラダープログラム命令です。
対して「ワードデバイスのビットリセット」命令とは、ワードデバイスの指定したビットをリセットする(0にする)命令です。
いずれの命令もワードデバイスのビット指定をすることにより代替することが可能ですが、データ型がワードやダブルワードのラベルにはワードデバイスのビット指定をすることはできません。
「ワードデバイスのビットセット・リセット」命令を用いることによりラベルを含むワードデバイスの指定したビットをON/OFFすることができます。
この記事では、三菱電機製シーケンサQシリーズにおけるワードデバイスのビットセット・リセット命令の指令方法とラダープログラム例について解説します。
※「ワードデバイスのビット指定」と「ラベル」については後日別記事にまとめたいと思います。
三菱電機製シーケンサQシリーズにおいて、ワードデバイスのビットセット・リセット命令は以下のCPUで使用することが可能です。
Basic | :ベーシックモデルQCPU |
High performance | :ハイパフォーマンスモデルQCPU |
Process | :プロセスCPU |
Redundant | :二重化CPU |
Universal | :ユニバーサルモデルQCPU |
LCPU | :LCPU |
※MELSEC-Lシリーズも含まれていますがご了承ください。
目次
1. ワードデバイスのビットセット・リセット命令の指令方法
ワードデバイスのビットセット・リセット命令には、それぞれ2種類ずつの指令方法があります。
BSET | :連続実行形のビットセット |
BRST | :連続実行形のビットリセット |
BSETP | :パルス実行形のビットセット |
BRSTP | :パルス実行形のビットリセット |
BSETはBit set、BRSTはBit resetの略です。
BSET:連続実行形のビットセット
連続実行形の「ワードデバイスのビットセット命令」は”BSET”と指令します。
こちらがBSET命令を使用したラダープログラム例です。
このラダープログラムは、入力条件であるX0がONするとデータレジスタD0の4ビット目がONするものです。(”1”になります。)
このラダープログラムを実行したときのデバイス一括モニタは以下のようになります。
データレジスタD0の4ビット目のみONします。
この時、指定したビット以外が既にONであれば(“1″であれば)そのままの状態となります。つまり指定したビット以外の状態は変わりません。
BSET命令でONしたデバイスは、入力条件がOFFしてもONしたままになります。↑のラダープログラムではX0がOFFしてもD0の4ビット目はONしたままとなります。
指定したビットをOFFするには、後述するBRST命令やMOV命令等を使って「新たに”0”を書き込む」必要があります。
先ほどのラダープログラムはGX Works2の回路上で BSET D0 K4 と入力してEnterキーを押すと命令が挿入されます。 (小文字でもOKです。)
BRST:連続実行形のビットリセット
連続実行形のビットリセット命令は”BRST”と指令します。
こちらがBRST命令を使用したラダープログラム例です。
このラダープログラムは、入力条件であるX0がONするとデータレジスタD0の4ビット目がOFFするものです。(”0”になります。)
BSET命令と同様、指定したビット以外の状態は変わりません。
先ほどのラダープログラムはGX Works2の回路上で BRST D0 K4 と入力してEnterキーを押すと命令が挿入されます。 (小文字でもOKです。)
BSET・BRST:パルス実行形のビットセット・リセット
パルス実行形の「ワードデバイスのビットセット命令」は”BSETP”と指令します。
パルス実行形の「ワードデバイスのビットリセット命令」は”BRSTP”と指令します。
こちらがBSETP・BRSTP命令のラダープログラム例です。
連続実行形(BSET・BRST命令)との違いは、入力条件であるX0がOFF→ONになった瞬間に1回だけ命令が実行されることです。
2.【例題①】ビット指定が定数
下記仕様のラダープログラムを「ワードデバイスのビットセット・リセット」命令を用いて解説します。
スイッチ(X1)を押すと、データレジスタD0の7ビット目がOFFする。(”0”になる)
スイッチが同時に押された場合、データレジスタD0の7ビット目はOFFする。
色々な手法で実現できますが、今回はワードデバイスのビットセット・リセット命令を用いて作成します。
GOTの動作イメージ
GOTの動作イメージは以下のようになります。
※使用していないデバイスがありますがご了承ください。
スイッチ(X0)を押すとデータレジスタD0.7が”1”になり、スイッチ(X1)を押すとD0.7が”0”になります。
スイッチが同時に押された場合、D0.7は”0”になります。
ラダープログラム
ラダープログラムは以下のようになります。
D0.7を”1”にするため、入力条件をX0とするBSET命令を使用します。X0がONすることによりD0.7がONし続けます。
対してD0.7を”0”にするためには、入力条件をX1とするBRST命令を使用します。X1がONすることによりD0.7がOFFします。
X0とX1が同時にONした場合、ラダープログラム下方にあるBRST命令が優先される為、D0.7は”0”になります。
3.【例題②】 ビット指定がデータレジスタ
下記仕様のラダープログラムを「ワードデバイスのビットセット・リセット」命令を用いて解説します。
スイッチ(X1)を押すと、データレジスタD0のnビット目がOFFする。(”0”になる)
スイッチが同時に押された場合、データレジスタD0のnビット目はOFFする。
上記nとは、データレジスタD10で可変できるものとする。
【例題①】では、BSET・BRST命令内でK7と指定することにより、7ビット目をON/OFFしました。今回はデータレジスタD10に代替して可変できるものにします。
GOTの動作イメージ
GOTの動作イメージは以下のようになります。
D0の「指定したビット」が、スイッチ(X0)を押すと”1”になり、スイッチ(X1)を押すと”0”になります。 指定したビットはD10で入力値を可変することができます。
【例題①】と同様、スイッチが同時に押された場合、D0の指定したビットは”0”になります。
ラダープログラム
ラダープログラムは以下のようになります。
【例題①】と同様にBSET・BRST命令を用いていますが、K7がD10に代替してあります。D10の値を変更することにより、ON/OFFする対象のビットを変えることが可能です。
今回はGOT上からD10の値を入力しましたが、ラダープログラム上からD10の値を操作する方法でもOKです。
4. おわりに
三菱Qシリーズにおける「ワードデバイスのビットセット・リセット」命令について解説しました。
私は以前「ワードデバイスのビット指定を用いてコイルをON/OFFさせればこの命令いらなくね?」と思ったのですが、ワード長のラベルを用いる場合に必要になり使用したことがあります。
以下の参考書は、シーケンス制御・ラダープログラムについて詳しく解説しているものです。
本書は私が通っていた短大のシーケンス制御の講義に教科書として使用していました。
シーケンス制御で必要なスキルはリレー回路やラダープログラムを組めることだけではなく、ソレノイドバルブやインダクションモータなどの機器を理解していなければなりません。本書では、それらの機器を実際の機構を交えて解説しています。
ラダープログラムは基礎部分から、一連動作を組むまで解説していますので中級者が読んでも意味がある内容です。