【上級編】PLC(シーケンサ)のFOR~NEXTを途中終了するBREAK指令

複雑な演算をするようになると、FOR~NEXT指令を途中で終了させたい場合が多く発生します。
簡単な例としては、『ある数値のデータレジスタが連続していくつあるのか』『データシフトした一番後ろのデータレジスタの数値は何なのか』

このように途中で余計な演算をしないようにするためにもBREAK指令というものを使用します。
FOR~NEXTを途中で終了することができますので、今回はBREAK指令を紹介します。

【目次】

広告


BREAK指令について

f:id:vv_6ong_3ka_cp:20180508135028j:plain
fa-faq.mitsubishielectric.co.jp

簡単に説明しますと、『FOR~NEXT指令を強制的に指定したPポイントへ抜けることができる』ということです。

ポインタ

Qシリーズでの初期設定では、ポインタを使うことができません。ですので、PCパラメータの設定を行う必要があります。

f:id:vv_6ong_3ka_cp:20180508135131j:plain

『パラメータ』を選択し、『PCパラメータ』を選択します。

共通ポインタNo.

f:id:vv_6ong_3ka_cp:20180508135042j:plain

初期設定では共通ポイントNo.が入力されていませんので、使用することができません
特に拘りがないのであれば『0』を入力しておけば良いです。

これでポインタが使えるようになります。

BREAK動作確認用ソフト

f:id:vv_6ong_3ka_cp:20180508135150j:plain

f:id:vv_6ong_3ka_cp:20180508135159j:plain

ソフトの説明としては、以前行った過去記事のものを流用致します。
www.niwakafa.com

M5000Z0の内部リレーにインデックスレジスタZ0を使用しています。FOR~NEXT指令によって、繰り返りZ0を+1しています。Z0を+1することによって、内部リレーM5000がONしている個数を検索しています

今回はその検索数が3個以上になったらBREAK指令を動作させ、D2に1を書き込みます

実行結果

f:id:vv_6ong_3ka_cp:20180508135230g:plain

実行はシミュレーションにて強制的にM5000~M5099のあるリレーをONさせます。
3個ONさせると、D2に1が書き込まれたのが確認できると思います。

D2に1が書き込まれたのでBREAK指令の動作確認が完了しました。

終わりに

FOR~NEXT指令を使う人ならば、今後使用する可能性が高い命令です。参考にしてみて下さい。

広告