【三菱FXシリーズ】排他的論理和(WXOR)命令の指令方法とラダープログラム例

00_【三菱FXシリーズ】排他的論理和(WXOR)命令の指令方法とラダープログラム例

三菱電機製シーケンサFXシリーズにおける「排他的論理和」命令とは、2ヶのデバイスのデータの排他的論理和を求めるラダープログラム命令です。

排他的論理和とは入力条件のどちらか片方だけがONすると出力条件がONする論理演算です。言い換えると、2ヶの入力条件の状態が不一致の場合に出力条件がONする論理演算です。(入力条件が2ヶの場合)

排他的論理和はXORと表現することがよくあります。

この記事では、三菱電機製シーケンサFXシリーズにおける排他的論理和命令の指令方法ラダープログラム例について解説します。

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

三菱電機製シーケンサFXシリーズにおいて、排他的論理和命令は以下のシーケンサ・バージョンで使用することが可能です。

FX3S:Ver1.00以降
FX3G:Ver1.00以降
FX3GC:Ver1.40以降
FX3U:Ver2.20以降
FX3UC:Ver1.00以降

よく似た論理演算で論理和論理積というものが存在します。三菱電機製シーケンサFXシリーズではこれらの命令が別に用意されています。各々の命令は以下のページで解説しておりますので、宜しければご覧ください。

00_【三菱FXシリーズ】論理和(WOR)命令の指令方法とラダープログラム例【三菱FXシリーズ】論理和(WOR)命令の指令方法とラダープログラム例 00_【三菱FXシリーズ】論理積(WAND)命令の指令方法とラダープログラム例【三菱FXシリーズ】論理積(WAND)命令の指令方法とラダープログラム例

1. 排他的論理和命令の指令方法

排他的論理和命令には、4種類の指令方法があります。

WXOR:16ビット連続実行形
WXORP:16ビットパルス実行形
DXOR:32ビット連続実行形
DXORP:32ビットパルス実行形

WXORは排他的論理和の略称であるXORからきています。

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

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

16ビット連続実行形の排他的論理和命令は”WXOR”と指令します。

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

10_WXOR命令

このラダープログラムは、入力条件であるX0がONしている間、データレジスタD0とD1の排他的論理和をD2に格納するものです。

仮にD0が”0111 0000 0100 0101”、D1が”0001 1111 1010 0100”の場合、D2は
”0110 1111 1110 0001”になります。

その時のデバイス一括モニタは以下のようになります。

10_WXOR命令_デバイスモニタ

D0とD1の各ビットのうち、どちらか片方だけが”1”のビットのみD2のビットが”1”になります。言い換えると、D0とD1のうち不一致のビットのみD2のビットが”1”になります。

WXOR命令は連続実行形であるため、X0がON中にD0またはD1の値が変わるとD2の値も追従して変わります。


先ほどのラダープログラムはGX Works2の回路上で WXOR D0 D1 D2 と入力してEnterキーを押すと命令が挿入されます。(小文字でもOKです。)

10_命令挿入

WXORP:16ビットパルス実行形

16ビットパルス実行形の排他的論理和命令は”WXORP”と指令します。

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

11_WXORP命令

連続実行形(WXOR命令)との違いは、入力条件X0がON中にD0またはD1の値が変わってもD2の値は追従して変化しないことです。

X0がONした瞬間のD0とD1の排他的論理和をD2に格納します。

メモ
入力条件がOFF→ONしたときに排他的論理和命令が1スキャンだけ実行します。

DXOR・DXORP:32ビット実行形

32ビット連続実行形の排他的論理和命令は”DXOR”と指令します。

32ビットパルス実行形の排他的論理和命令は”DXORP”と指令します。

こちらがDXOR・DXORP命令のラダープログラム例です。

12_DXOR命令
13_DXORP命令

32ビット実行形の場合、2ワード(32ビット)長の排他的論理和を求めます。

↑のラダープログラムでは、データレジスタD0・D1D2・D3の各2ワード長の排他的論理和をD4・D5に格納します。この時、D0・D2・D4が下位側のデバイスになります。

2.【例題①】1ワード長の排他的論理和を求める

下記仕様のラダープログラムを排他的論理和命令を用いて解説します。

仕様
スイッチ(X0)を押している間、データレジスタD0とD1の排他的論理和をD2に格納する。

排他的論理和を求めるデータレジスタは1ワード(16ビット)長であるため、16ビット実行形の排他的論理和命令を使用します。

GOTの動作イメージ

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

例題①_GOT動作イメージ

スイッチ(X0)が押されている間、データレジスタD0とD1の排他的論理和をD2に格納します。(D0とD1の不一致のビットのみD2がONします。)

スイッチ(X0)が押されている間にD0またはD1の値が変化するとD2の値も追従して変化します。

ラダープログラム

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

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

排他的論理和を求めるため、入力条件をX0とする16ビット連続実行形のWXOR命令を使用します。

X0がONしている間、D0とD1の排他的論理和演算の結果をD2に格納します。

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

3.【例題②】2ワード長の排他的論理和を求める

下記仕様のラダープログラムを排他的論理和命令を用いて解説します。

仕様
スイッチ(X0)を押している間、データレジスタD0・D1とD2・D3の排他的論理和をD4・D5に格納する。
各データレジスタはD0・D2・D4を下位とする2ワード長として扱う。

【例題①】では扱うデータレジスタが1ワード(16ビット)長のため16ビット実行形であるWXOR命令を使用しました。今回は扱うデータレジスタが2ワード(32ビット)長であるため32ビット実行形であるDXOR命令を使用します。

GOTの動作イメージ

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

例題②_GOT動作イメージ

スイッチ(X0)が押されている間、データレジスタD0・D1とD2・D3の排他的論理和をD4・D5に格納します。

【例題①】と同様、スイッチ(X0)が押されている間に演算元(D0~D3)の値が変化すると演算先(D4,D5)の値も追従して変化します。

ラダープログラム

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

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

2ワード(32ビット)長の排他的論理和を求める場合、32ビット連続実行形のDXOR命令を使用します。 (パルス実行形の場合はDXOR命令)

X0がONしている間、D0・D1とD2・D3の排他的論理和演算の結果をD4・D5に格納します。 DXOR命令は、指令したデバイスを下位とする2ワード長として扱われます。

4. おわりに

三菱電機製シーケンサFXシリーズにおける排他的論理和命令について解説しました。

排他的論理和命令はワードデバイスに対して各ビットの排他的論理和を求めるラダープログラム命令のため、ビットデバイスの排他的論理和を求める場合は用いることが出来ません。

ビットデバイスの排他的論理和については以下のページで解説しておりますので、宜しければご覧ください。

00_【ラダープログラム回路】XOR(排他的論理和)回路のラダープログラム例【三菱FX】【ラダープログラム回路】XOR(排他的論理和)回路のラダープログラム例【三菱FX】

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

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

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

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

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

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

コメントを残す

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