このページでは、PLCの
ステップラダー方式について
概要を説明しています。
PLCは色々なメーカーがありますが
三菱電機のFXシーケンサを
想定して書いております。
(シーケンサについては
以下のページを参考ください。
→シーケンサとは何か)
1.ラダー図とステップラダー
シーケンサはプログラムで
動作しますが、そのプログラムの
方式はいくつかあります。
最も使われている方式は
ラダー方式ですが、
ステップラダーは、ラダー図内で
使えることもあり
工程歩進制御をする機械では
使う方も多いです。
ラダー方式が最も使われる理由や
方式については以下のサイトを
参考ください。
⇒PLC,シーケンサのプログラムでラダー図が最も使われる理由とは
2.工程歩進制御とSFC図(状態遷移図)
ステップラダーは
工程歩進制御とSFC図に
関係がありますので
説明します。
工程歩進制御とは
「処理全体を構成する各工程の、
実行順序や実行時間が決められている
プログラム制御方法。」
という定義です。
機械や装置は、色々な動作をしますが
自由に動作はせず、順番が
予め決まっていますよね。
これが完了したら、これをして、
それが完了したら、、これをする
エレベーターでもそうです。
移動中にドアが開くことはありません。
目標に階についたら、
ドアが開く、一定時間経過したら
ドアが閉まる
といったように実行の順番が
決められています。
実行順番と次の工程へ
移行する条件を
フローチャートのような感覚で
作れるプログラムが
SFC図(状態遷移図)です。
下図のようなものです。
条件があり、その条件を
満たすと次の工程へ
移行する、
そして、移行した工程の
定められた動作をする
そして、次の工程への
移行条件を満たすと
移行する。
これを順番で行って
いく図です。
SFC図を作成するソフトである
GXWorks2で書いた図は
下のようになります。
操作方法やルールさえ
理解していれば
フローチャートの感覚で
プログラムすることができます。
ラダー図は、リレーシーケンスの
回路設計と同じ感覚で書くことが
できるので、回路設計に慣れた
エンジニアには分かりやすいですが、
初心者の方には、
ラダー図だと複雑な制御になると
設計(プログラミング)が困難な
ことがあります。
SFC図は
同じ内容の制御でも
初心者でも考えれるという
メリットがあるのです。
3.SFCとステップラダー
シーケンサで最も使われる
プログラム方式はラダー方式で
あると前述しました。
簡単といわれるSFCを使わない理由は
多くのエンジニアは、ラダー図風の
見方や設計に慣れていることと
SFCの場合は変更する時に
手間がかかるから
だと言われています。
私もSFCは使ったことがないですし
他社のプログラムでも過去見た記憶が
ありません。
しかし、SFCのような便利で
分かりやすい方式を
使わない手はありません。
ラダー図内で、応用命令を
使ってそれを実現したのが
ステップラダーです。
同じラダー図ですので
分別のため、
通常のラダー図部を
リレーラダーと呼ぶことにします。
多くのプログラムでは
ラダー図のように書ける
ステップラダーを使うだけを
使うのではありません。
シーケンス制御では
従来のラダーに適した部分
リレーラダー部と
ステップラダーに適した部分が
ありますので、
多くは混在させて使い分けます。
ステップラダーは
ラダー図内でラダー図風に書けるので
従来のラダーエンジニアでも
抵抗少なく使えるのです。
4.ステップラダーの基本
SFC図をラダー図のように
書けるステップラダーで使う
応用命令など基本となる
型について説明します。
下のラダー図を例に
説明します。
ステップラダー部と
リレーラダー部を混在させています。
ステートSについて
S20、S21などSの記号があります。
Sはステートと呼ばれて
各工程を表します。
ステップラダーは各工程が
順番に移行していきます。
Sとデバイス番号で
その工程を番号付します。
S20、S21、S22の工程と
いうことです。
ステートSは
ここでは20番台で書きましたが
シーケンサによりますが
1000個以上内蔵したものもあります。
SET命令とSTL命令
そのステートSですが
[SET S〇]、[STL S〇]
と何回も書かれています。
その前の工程の終了、
次のS〇工程に移行する
という命令になります。 [STL S〇]で
S〇工程のスタートになります。
ラダー図を見ると
[SET S0]でS0の工程へ
[STL S0]でS0の工程スタート
M0の接点がONすることで
[SET S20]がON
S0の工程が終わり
S20の工程へ
S20の工程は
M2とX003の接点でY002を駆動する
工程がありますね。
説明のためのラダーですので
簡単に書きましたが
もっと何行(何デバイス)も書く
ことはあります。
そして、M4がON、[SET S21]がON、
S20の工程が終わりS21の工程へ
このような感じで
S〇の工程が切り替わっていきます。
どこが工程歩進になってるの?
工程歩進制御とは
「処理全体を構成する各工程の、
実行順序や実行時間が決められている
プログラム制御方法。」
という定義です。
このステップラダーは
前の工程が終了して
次の工程が開始しない限り
次の工程の出力リレーは
動作できません。
例えば、まだS20の工程なのに
S21の工程のM10、X002の接点が
ON(導通)していても
Y002の出力リレーはONしません。
あと、次の工程に移行すれば
前の工程の出力リレーは
例え、ONの条件であっても
OFFします。
(*例外あります。後述します)
このように、
処理の順番は決められて
おり、順番抜かしはできません。
普通のラダーだと
間違えてしまうかもしれませんが
ステップラダーだと
間違えれません。
*SET命令でONした出力リレーは
次の工程に移行してもOFFしません。
SET命令については
以下のページを参考ください。
ダブルコイルもOK
Y002の出力リレーのコイルが
2つ書かれています。
ダブルコイルは禁止のはずです。
しかし、ステップラダーでは
次の工程に移行すると
前工程は強制的にOFFに
なります。
ですので、ダブルコイルでも
制御の上で問題は起こらないです。
RET命令
ラダー図の最後から2行目に
[RET]が書かれています。
このRETはステップラダーの
最後に入れます。
ステップラダーは
ラダー図の中の1部として
書かれます。
このラダー図でも[RET]
の次にステップラダーではない
プログラムが続いています。
どこからどこまでが
ステップラダーなのかを
示すためにも必要です。
あと、ステップラダーは
1つのプログラム内で
複数個作られることは
多々あります。
例えば、
原点復帰の工程、
自動運転Aの工程
自動運転Bの工程
といったようにです。
その際でも、
どこからどこまでが
そのステップラダーなのかを
示すためにもRETは必要です。
イニシャルステート
説明用のラダー図のステートは
S0とS20番台と離れた番号が
使われていて不自然ですね。
S0を使ったことには
理由はあります。
STL命令以外の接点で
駆動されるステートを
イニシャルステートといいます。
S0~S9は
イニシャルステートとして
確保されています。
各ステップラダーの
先頭のステートとして
いれ、他の接点で駆動されます。
このラダー図例では
X001としましたが
M8002などで駆動することも
多いです。
M8002については
以下のページを参考ください。
➡M8000~M8003 RUNモニタとイニシャルパルスとは
ステートは接点としても使える
ステートSはa接点、b接点といった
接点でも使えます。
例えば、S22の工程中
ステップラダー部以外で
何か動作させたい場合は
S22の接点を使えば
いいわけです。
S22の工程終われば
接点は元に戻ります。
例に使ったラダー図でも
書いていますね。
5.まとめ
シーケンサのプログラムの
多くはラダー方式で書かれます。
ですので、
ラダーを知っておくことは
必須であり
そのラダー図内で混在して
使えるステップラダーは
便利です。
それは、自動機械は
工程歩進制御が多いからです。
このぺーじでは、
まずは概要ということで
基本的なことを書きました。
他にもIST命令や
ステップラダー時に使う
特殊補助リレー、作成上のルールなど
もありますので
便利で奥が
それなりに深いです。
当方ではこのページにも関連する
初心者向のシーケンス制御の教材も
扱っていますので
興味があれば
以下の画像をクリックして
ご確認ください。
コメントを残す