シーケンス制御は難しくない
難しいと思う方向け現役エンジニアが簡単に理解できる方法教えます。
こんにちは、猿吉です。
今回は、シーケンス制御について取り上げていきますが、
なぜシーケンス制御が難しいと感じてしまうのか。
シーケンス制御には有接点シーケンス、無接点シーケンスとありますが、私の本業は後者の無接点シーケンスになります。
PLCと呼ばれるコントローラを使って自動制御を行っています。
有接点も無接点も基本的な考え方は同じです。
プログラミングはラダーと呼ばれる言語を使用しますが、HTMLやCなどの言語とは全然コーディングの仕方が違います。コンピュータ言語に携わってきた方にとっては、かなり意味不明な言語と思う方が多いと思います。
しかしながら、要所を押さえればそれほど難しくはありません。
それでは、簡単に理解できる方法を紹介していきたいと思います。
シーケンス制御 難しいと思う方に気にして欲しい Point1 プログラムの流れ方は一つ 難しく考えるな
基本的にプログラムは上から下に流れていきます。
PLCにもプログラムの実行順というのが決められており、パソコン上のソフトからニーモニックコードというものに変換され、PLCがニーモニックコードを取込み上から順に実行するのが大まかな流れです。プログラムが一巡すると1スキャンしたと呼びます。スキャンの考え方はプログラム設計上重要になってくるので頭に入れておいてください。
シーケンス制御 難しいと思う方に気にして欲しい Point2 順序立てて作ることが近道
順序立てて作ることが一番の近道だということです。
多くの人がやりがちなののが、順序制御になっていない。
そもそもの制御対象物の動作のフローを理解していないという事が多いです。
人間の動作で例えると、起床してから会社に出勤するまでとしましょう。
例えば、
-
- スマホのアラームが鳴る
- スマホのアラームを止める
- 立ち上がる
- 洗面所に移動
- 顔を洗う
- 朝食を食べる
- 着替える
- 歯を磨く
- 靴を履く
- 会社へ出勤
と、こんな感じで人間が行う動作の流れがあるはずです。
動作の流れを描く際はフローチャートを利用する事が必須です。
これを、そのままプログラムにしてあげる事でシーケンス制御が行う事ができるという訳です。
シーケンス制御 難しいと思う方に気にして欲しい Point3 シーケンス制御プログラムの基本は自己保持回路
シーケンス制御プログラムの基本は自己保持回路です。
図を貼りましたが、基本的に上記の二つのM1,M21が自己保持回路になります。
この際考えて欲しい事が、プログラムの読み方です。
最初にプログラムの流れでも話したと思いますが、上から下に流れていきます。
左が母線でリレー接点がONしOUT(出力)先のコイルがONします。
なので本来は上の図は全部繋がっていると考えてください。
自己保持回路
自己保持回路の説明をします。
一番上の回路を例にすると、
X1を開始条件とします。X2を解除条件とします。
開始条件:X1がONするとM1のコイルがONします。
するとM1のコイルが ONする事で接点が閉じます。
リレーはコイルがONする事で接点が開閉します。
それをプログラム上で表現しているだけです。
つまり、一度ONするとM1のa接点がONし続けます。
ここで注意して欲しいのが、M1のコイルがONしている限りと言う事です。
解除条件:b接点X2がONするとM1のコイルがOFFします。
ただし、X1がOFFしている場合だけです。X1がONしている状態で行うと、一瞬だけOFFしてまた自己保持されるはずです。
a接点,b接点とはと思った方もいるでしょう。
そんな方は以下を参照してください。
つまり、簡単に言うとスイッチみたいな役割です。
リレーのコイルがONしたらスイッチが閉じる
(道が繋がる) a接点
リレーのコイルがOFFの状態からスイッチが閉じているものでONするとスイッチが開く
(道が無くなる) b接点
こういう風にイメージすると分かりやすくなりませんか?
順序制御
順序制御の説明です。
Point2に書いていた日常生活の動作順ですが、
1 スマホのアラームが鳴る
2 スマホのアラームを止める
3 立ち上がる
4 洗面所に移動
5 顔を洗う
6 朝食を食べる
7 着替える
8 歯を磨く
9 靴を履く
10 会社へ出勤
の1,2までをこの回路に当てはめて説明すると、
- ① スマホのアラームの鳴る時刻になる
- ② スマホのアラームが鳴る
- ③ スマホへ手が伸びている
- ④ スマホのアラームを止める
となります。
スマホのアラームが鳴る→スマホのアラームを止めるという順番の回路になっていますが、
スマホのアラームを止めるためには、スマホのアラームがなっていないといけない。
つまり、前の条件が成立していないと次の動作に進めない。
これが順序制御という事です。
これを作る際にフローチャートというものがあれば、すぐ回路に起こしやすくなる理由がわかると思います。
順序制御を行うときに、何の条件で次に進んでというのは、フローチャートがしっかりできていればラダープログラミングは楽勝と言っても過言ではないでしょう。
フローチャートの書き方は以下に記載してますので参考にしてみてください。
PLC ラダープログラムの設計のコツ フローチャート は絶対書く
ちなみにそもそもMとかXとかYとかって何と言う方もいるかもしれませんが。
これはPLCが用意しているデバイスです。
基本的に
X:入力信号
Y : 出力信号
M :内部デバイス
Xには状態を表すものが入ってきます。
センサのON:OFF アクチュエータの状態(シリンダのリミットスイッチ出端・戻端)
Yにはアクチュエータを動作させる信号
簡単に言うと、「右に動け」とか「ジャンプしろ」とか動作の指示に当たるものです。
M:PLC内部で持っているデバイスです。
X,Yなどのように外部に左右されない、PLC内部で持っている独立したデバイスと考えましょう。
余談 これからシーケンス制御の世界へ進もうとする方へ
この記事を読んでいる方はこれからシーケンス制御の世界へ進もうとする方か、始めたばかりの方が多いと思います。
私自身も経験はまだまだ浅いです。
ですが、プログラムを読むことはなんとかできますし、簡単な設計はできるくらいのレベルであることは自負しております。
そんな私が、初心者の皆さんに伝えたいのは、2つあります。
- 基本・基礎を身につけ本質を理解すること
- プログラムは誰が見ても分かりやすいものを作る
この2つを意識するだけでも理解度及び設計スキルが向上すると思います。
ちなみに私がシーケンス制御の勉強について使っている教材があります。
シーケンス制御の極意という教材なのですが、シーケンス制御プログラムの基礎が全て詰まっています。これから始める方にもオススメで丁寧に解説がされている教材です。
全くわからないという方はぜひ参考にしてみてください。
まとめ
いかがでしたか。
シーケンス制御は難しいと感じる人が多いと思いますが、この記事を見ていただくことで少し理解を深める事ができたのであれば、嬉しく思います。
最後にまとめると、
-
- プログラムの流れ方は一つ 難しく考えるな
- 順序立てて作ることが近道
- シーケンス制御プログラムの基本は自己保持回路
この3つのpointを抑える事ができれば、基本概念は理解できると思います。
ぜひ参考にしてみてください。
コメント