【三菱Qシリーズ】ブロック加算(BK+)命令の指令方法とラダープログラム例

00_【三菱Qシリーズ】ブロック加算(BK+)命令の指令方法とラダープログラム例

三菱電機製シーケンサQシリーズにおける「ブロック加算」命令とは、指定した複数の連続したデバイス値をまとめて加算するラダープログラム命令です。

ブロック加算命令を用いることにより、複数の加算命令を1ヶにまとめることができ、ラダープログラムを短縮することが可能です。

この記事では、三菱電機製シーケンサQシリーズにおけるブロック加算命令の指令方法とラダープログラム例について解説します。

注意
この記事中のラダープログラムはGX Works2で作成しており、PCタイプはQ03UDEに設定してあります。

三菱電機製シーケンサQシリーズにおいて、ブロック加算命令は以下のCPUで使用することが可能です。

Basic:ベーシックモデルQCPU
High performance:ハイパフォーマンスモデルQCPU
Process:プロセスCPU
Redundant:二重化CPU
Universal:ユニバーサルモデルQCPU
LCPU:LCPU

※MELSEC-Lシリーズも含まれていますがご了承ください。

三菱電機製シーケンサQシリーズにおける加算命令は以下のページで解説しております。

00_【三菱Qシリーズ】加算(+)命令の指令方法とラダープログラム例【三菱Qシリーズ】加算(+)命令の指令方法とラダープログラム例

1. ブロック加算命令の指令方法

ブロック加算命令には、4種類の指令方法があります。

BK+:16ビット連続実行形
BK+P:16ビットパルス実行形
DBK+:32ビット連続実行形
DBK+P:32ビットパルス実行形

BK+は、block + の略です。

メモ
連続実行形は、入力条件がONしている間、毎スキャン実行される命令です。
パルス実行形は、入力条件がONしたときの1スキャンのみ実行される命令です。

32ビット実行形である「DBK+」「DBK+P」命令は三菱電機製シーケンサQシリーズ内でも以下のように使用できないものがあります。

Basic:使えない
High performance:使えない
Process:使えない
Redundant:使えない
Universal:条件付きで使える
LCPU:使える
  • UniversalはシリアルNo.の上5桁が”10102”以降のQnU(D)(H)CPUおよびQnUDE(H)CPUで使用可能
  • Q00UJCPU・Q00UCPU・Q01UCPU・QnUDVCPU・QnUDPVCPUで使用可能

BK+:16ビット連続実行形(基本の形)

16ビット連続実行形のブロック加算命令は”BK+”と指令します。

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

10_BK+命令

このラダープログラムは、入力条件であるX0がONしている間、D0~D9とD10~D19の各デバイスの加算結果をD20~D29に格納するものです。

X0がONしている間に実行される演算は以下のようになります。

10_演算内容

仮に、D0~D19のデバイス値に0~19が格納されていると、加算結果であるD20~D29は以下のようになります。

10_デバイスモニタ

例えば、D25のデバイス値は20ですが、D25にはD5とD15の加算結果が格納されます。「D5には5」「D15には15」が格納されているので、その加算値である20がD25に格納されます。

注意
↑のラダープログラムでは、ブロック加算命令で「加算元となるD0~D19」と「加算結果を格納する先であるD20~D29」を占有しますので、他の用途で使用できなくなります。

先ほどのラダープログラムはGX Works2の回路上で BK+ D0 D10 D20 K10 と入力してEnterキーを押すと挿入されます。(小文字でもOKです。)

10_命令挿入

BK+P:16ビットパルス実行形

16ビットパルス実行形のブロック加算命令は”BK+P”と指令します。

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

11_BK+P命令

連続実行形(BK+命令)との違いは、入力条件X0がONした瞬間のみ命令が実行されることです。つまりX0がONした瞬間にD0~D9とD10~D19のブロック加算結果をD20~D29に転送します。

メモ
入力条件がOFF→ONしたときにブロック加算命令が1スキャンだけ実行します。

DBK+・DBK+P:32ビット実行形

32ビット連続実行形のブロック加算命令は”DBK+”と指令します。

32ビットパルス実行形のブロック加算命令は”DBK+P”と指令します。

こちらがDBK+・DBK+P命令のラダープログラム例です。

12_DBK+命令
13_DBK+P命令

32ビット実行形の場合、2ワード(32ビット)長のデータを対象とします。

↑のラダープログラムの場合、対象デバイス点数は10点(K10)を指定していますが、32ビット実行形の場合は1点が2ワードとして扱うため、以下のような加算が実行されます。

12_演算内容

各デバイスはデバイス番号が若い側を下位とする2ワード長として扱われます。32ビット実行形は16ビット実行形の倍のデバイス点数を占有するので、デバイスの重複にはご注意ください。

2.【例題①】データレジスタのブロック加算結果を求める(連続実行形)

下記仕様のラダープログラムをブロック加算命令を用いて解説します。

仕様
スイッチ(X0)を押している間、以下データレジスタの加算演算を行う。
D0 + D5 = D10
D1 + D6 = D11
D2 + D7 = D12
D3 + D8 = D13
D4 + D9 = D14
スイッチ(X0)が押されている間にD0~D9のデバイス値が変化すると、加算結果であるD10~D14も追従して変化する。

加算命令を5ヶ用いることでも作成することができますが、今回はブロック加算命令を用いて作成します。

GOTの動作イメージ

GOTの動作イメージは以下のようになります。

例題①_GOT

スイッチ(X0)が押されている間、D0~D4とD5~D9の加算結果をD10~D14に格納します。

スイッチ(X0)が押されている間にD0~D9の値が変化するとD10~D14の値も追従して変化します。

ラダープログラム

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

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

D0~D4とD5~D9の加算結果を求めてD10~D14に転送するためのブロック加算(BK+)命令を使用します。

連続実行形を用いることにより、スイッチ(X0)が押されている間にD0~D9の値が変化するとD10~D14の値も追従して変化します。

3.【例題②】データレジスタのブロック加算結果を求める(パルス実行形

下記仕様のラダープログラムをブロック加算命令を用いて解説します。

仕様
スイッチ(X0)を押したとき、以下データレジスタの加算演算を行う。
D0 + D5 = D10
D1 + D6 = D11
D2 + D7 = D12
D3 + D8 = D13
D4 + D9 = D14
スイッチ(X0)が押されている間にD0~D9のデバイス値が変化しても、加算結果であるD10~D14は追従しない。

【例題①】との違いは、スイッチ(X0)が押されている間にD0~D9のデバイス値が変化しても、D10~D14は追従しないことです。

GOTの動作イメージ

GOTの動作イメージは以下のようになります。

例題②_GOT

スイッチ(X0)が押されている間にD0~D9のデバイス値が変化しても、D10~D14は追従しません。

スイッチ(X0)が押されている間に変化した内容は、再度スイッチ(X0)を押されたタイミングで加算処理が行われます。

ラダープログラム

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

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

入力条件がONした瞬間のみ実行する「パルス実行形」のBK+P命令を使用することにより、スイッチ(X0)が押された時のみブロック加算が実行されます。

4. おわりに

三菱電機製シーケンサQシリーズにおけるブロック加算命令について解説しました。

Qシリーズでは、対になるブロック減算(BK-)命令が用意されています。以下のページで解説しておりますので、宜しければご覧ください。

00_【三菱Qシリーズ】ブロック減算(BK-)命令の指令方法とラダープログラム例【三菱Qシリーズ】ブロック減算(BK-)命令の指令方法とラダープログラム例

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

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

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

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

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

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

コメントを残す

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