【三菱FXシリーズ】条件ジャンプ(CJ)命令の指令方法とラダープログラム例

00_【三菱FXシリーズ】条件ジャンプ(CJ)命令の指令方法とラダープログラム例

「条件ジャンプ」命令とは、三菱電機製シーケンサFXシリーズにおける命令で指定したポインタ(P)までジャンプさせ、その間のラダープログラムを実行しないようにするラダープログラム命令です。

条件ジャンプ命令を用いることにより『不要なラダープログラムを飛ばしてスキャンタイムを短縮させる』ことや『一連の工程を一時停止』させることができます。

条件ジャンプ命令は別名”コンディショナルジャンプ命令”とも呼ばれています。

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

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

三菱電機製シーケンサFXシリーズにおいて、条件ジャンプ命令は以下のシーケンサ・バージョンで使用することが可能です。

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

1. 条件ジャンプ命令の指令方法

条件ジャンプ命令には、2種類の指令方法があります。

CJ:連続実行形
CJP:パルス実行形

CJは、コンディショナルジャンプ(Conditional jump)の略です。

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

CJ:連続実行形(基本の形)

連続実行形の条件ジャンプ命令は”CJ”と指令します。

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

10_CJ命令

このラダープログラムは、CJ命令の入力条件であるX0がONしている間、ポインタP50にラダープログラムがジャンプします。

10_CJ命令ジャンプする様子

X0がONしている間、つまりCJ命令によりP50にジャンプしている間は、CJ命令から指定されたポインタに挟まれたラダープログラムは実行されない状態になります。

↑のラダープログラムでは、X0がONしている間にX1がONしてもY1はONしません。

CJ命令で指定されたポインタの右側にあるラダープログラムはジャンプ先であるため、CJ命令の状態に関わらず必ず実行されます。↑のラダープログラムではX2の部分です。

10_CJ命令ジャンプする様子2

↑のラダープログラムをまとめると「X1がON中はY1がONする。X2がON中はY2がONする。ただしX0がON中はY1の状態は変化しない。」動作となります。

大きな注意点として、Y1がONしている状態でX0がONすると、X1がOFFしてもY1はOFFしません。(新たに”0”が書き込まれないため)


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

10_命令挿入

ジャンプ先のポインタは母線の左側にカーソルを合わせてポインタのアドレスを入力します。

10_命令挿入2

CJP:パルス実行形

パルス実行形の条件ジャンプ命令は”CJP”と指令します。

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

11_CJP命令

連続実行形(CJ命令)との違いは、入力条件である入力リレーX0がOFF→ONになった瞬間に1スキャンだけP50にジャンプします。次スキャン以降はX0していてもジャンプされません。

メモ
入力条件がOFF→ONしたときに条件ジャンプ命令を1スキャンだけ実行します。

条件ジャンプ命令の注意点

ポインタはサブルーチンコール(CALL)命令等でも使用する場合がありますが、ポインタ番号は重複して使用できません。重複した場合は文法エラーとなります。

19_注意点(ポインタの重複)

2.【例題①】条件ジャンプによる無効化

下記仕様のラダープログラムを条件ジャンプ命令を用いて解説します。

仕様
スイッチ(X1)を押すとランプ(Y0)が点灯し続ける。(自己保持)
スイッチ(X2)を押すとランプ(Y0)は消灯する。
スイッチ(X0)を押している間、スイッチ(X1)または(X2)が押されてもランプ(Y0)の状態は変わらない。

まず『X1でON』『X2でOFF』するY0の自己保持回路を作ります。X0がONしている間はこの自己保持回路をジャンプして実行しないように無効化します。

GOTの動作イメージ

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

例題①_GOT

スイッチ(X1)を押すとランプ(Y0)が点灯し、スイッチ(X2)を押すと消灯します

スイッチ(X0)を押している間、スイッチ(X1)または(X2)が押されてもランプ(Y0)の状態は変わりません。

ラダープログラム

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

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

ONする条件がX1、OFFする条件がX2のY0の自己保持回路を作ります。その自己保持回路をCJ命令とラベルP50で囲います。CJ命令の入力条件であるX0がONするとCJ命令が実行されP50にジャンプします。

X0がON中はY0の自己保持回路がジャンプされ実行しないため、X1がONしてもY0はONしません。同様にX2がONしてもY0はOFFしません。

3.【例題②】条件ジャンプによる一連動作の一時停止

下記仕様のラダープログラムを条件ジャンプ命令を用いて解説します。

仕様
セレクタスイッチ(X10)がOFFの間、以下①~④の一連動作を行う。
①スイッチ(X0)を押すとランプ(Y0)が点灯し続ける。(自己保持)
②スイッチ(X1)を押すとランプ(Y1)が点灯し続ける。(自己保持)
②スイッチ(X2)を押すとランプ(Y2)が点灯し続ける。(自己保持)
④スイッチ(X3)を押すとランプ(Y0)~(Y2)は消灯する。
この一連動作は①から順々に実行するもので、例えば①の状態でスイッチ(X3)を押してもランプは消灯せず無効となる。

セレクタスイッチ(X10)がONしている間、この一連動作は”一時停止中”としてどのスイッチが押されてもランプの状態は変わらない。

【例題①】と比べると複雑な仕様となっています。まずはX10を考えずに一連動作を作成した後に、ラダープログラム全体を『X10を入力条件とするCJ命令』で囲います。

一連動作は①~④の順でなければスイッチを押されても無効化されます。

GOTの動作イメージ

GOTの動作イメージは以下のようになります。今回は2ヶに分けて解説します。

【セレクタスイッチ(X10)がOFFのとき】

例題②_GOT1

以下①~④の一連動作を行います。

①スイッチ(X0)を押すとランプ(Y0)が点灯し続ける。(自己保持)
②スイッチ(X1)を押すとランプ(Y1)が点灯し続ける。(自己保持)
③スイッチ(X2)を押すとランプ(Y2)が点灯し続ける。(自己保持)
④スイッチ(X3)を押すとランプ(Y0)~(Y2)は消灯する。

この一連動作は①から順々に実行するものです。順番通りでないスイッチが押されても処理は無効となります。


【セレクタスイッチ(x10)をON/OFFする】

例題②_GOT2

セレクタスイッチ(X10)がONすると(右側になると)、一連動作は一時停止中となりその状態をキープします。

ラダープログラム

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

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

一連動作の組み方は作成した方の個性が出るので、↑の形が必ずしもベストな回路とは限りません。

今回は出力リレーをa接点で自己保持回路の保持する条件にしています。

一時停止させる部分をCJ命令とジャンプ先のポインタで囲うことにより『入力条件が入っても処理を無効として状態をキープする』動作になります。

4. おわりに

三菱電機製シーケンサFXシリーズにおける条件ジャンプ命令について解説しました。

似た動作で、マスタコントロール命令という命令がありますが、これは命令を実行すると一斉にON/OFFを制御する命令です。便利な反面、OFFさせたくない出力コイルもOFFしてしまう欠点があります。(OUT命令でコイルをONさせている場合)

条件ジャンプ命令は、コイルのON/OFF状態は維持されるので【例題②】のように一連動作を一時停止させる用途に効果的です。

マスタコントロール命令については別記事で紹介していますので、宜しければご覧ください。

00_【三菱FXシリーズ】マスタコントロール(MC・MCR)命令の指令方法とラダープログラム例【三菱FXシリーズ】マスタコントロール(MC・MCR)命令の指令方法とラダープログラム例

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

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

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

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

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

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

コメントを残す

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