PLCの初歩:ラダーの基本

こんにちは、まつりぬいです。

本日は前回の記事を踏まえて、PLCでよく使われる言語であるラダー(LD)について、解説します。

この記事の対象者:初めてPLCを触る方、PLCについて勉強を始めたい方

  1. PLCで使われる言語
  2. ラダーとは
  3. a接点とb接点
  4. ANDとORの考え方
  5. 自己保持
  6. 最後に

1.PLCで使われる言語

 PLCの国際規格として、「IEC 61131-3」というものが存在しています。その規格の中では、PLCで使われる言語として、下記の5つが記載されています。

言語概要
LD:Ladder Diagram
(ラダー)
「はしご」型、広く使われている
FBD:Function Block Diagram
(ファンクション ブロック)
ファンクションと呼ばれる「はこ」で構成される。
ラダーとの合わせ技もある
SFC:Sequential Function Chartフローチャート型
IL:Instruction Listアセンブラに近いテキスト型、ニーモニックに相当する
ST:Structured Text構造化テキスト型、VBやC,C++に近い
PLCで使われる言語

 

 私はラダーとFB、ILしか理解できていませんし、それぞれの紹介をするとなると記事が長くなりすぎますので、今回の記事はラダーに絞ります。また、このブログでも主に扱うのはラダーで、時々FBを扱う形になります。FBも、ここ数年のトレンドだった、プログラムの部品化に関わる事なので、どこかのタイミングで記事にしたいです。

2.ラダーとは

 下図を見てください。これが今回紹介するプログラムの形式です。まさに、この形が、「はしご:Ladder」のように見えませんか? 見えますよね?

 そう、このプログラム言語は見た目が「はしご」のように見えるので、「LD:Ladder Diagram」と名付けられ、日本では「ラダー」と呼ばれるようになりました。

ラダーの参考図

 このプログラムの見方は、まず最低限、次の2つのルールを覚えておく必要があります。

  1. 同じ行内では、「左から右」に処理される
  2. その行内での処理が全て終われば、次の行の処理に移る(上から下に順に処理される)

  このルールをふまえると、参考図は下図に追記した通り、青色の矢印順に処理されていく事になります。左から右に。その行が終われば下の行に移り、を繰り返し一番下の行まで処理すると、一番先頭の行に戻る、を延々と繰り返すのがPLCの処理の流れとなります。

ラダーの処理の流れ

 次はこの図内の記号について説明します。

3.a接点とb接点

 今回は最低限の知識までにとどめるので、下記の3つの接点を元に説明をしていきます。

まず覚えたい接点達

 基本的に、ラダーは各接点が成立している、していないを元に条件を組み、コイルで信号を出力するかしないかを制御するものです。条件が全部そろって入れなコイル出力、1つでも成立していなかったら、コイルは出力しない。そんな仕様です。とは言っても、ON時成立、OFF時成立と言われても、よくわかりませんよね。そんなあなたのために、簡単な参考ラダー図と、その動きがわかる動画を用意しました。

a接点とb接点の比較回路

 「X100:青ボタン」を押した時に、回路の動作にどのような違いがあるか、ご確認ください。

a,b接点の違い
  • 青ボタンを押した時:a接点出力の緑ランプが光る
  • 青ボタンを押していない時:b接点出力の緑ランプが光る

  動画と上記注釈の通り、押した時に条件が成立しコイルが出力されるものがa接点。押していない時に条件が成立しコイルが出力されるものがb接点です。まずはこのボタンを押しているor押していないの挙動の違いがイメージできたらOKです。

4.ANDとORの考え方

 続いてはANDとORの紹介です。「AND:いずれも成立している」「OR:いずれかが成立している」時に、それぞれ条件が成立していると見なすものなのですが、文章だけではわかりにくいので、同じく、参考のラダー図を用意しました。

シンプルなAND,OR回路

 今回の仕様は、下記の2通りです。

  • 青ボタンと黄色ボタン両方が押されているとAND成立の緑のランプが光る
  • 青ボタンと黄色ボタンどちらかが押されているとOR成立の緑のランプが光る

 動作は次の動画の通りです。

AND,OR回路の動作

 上記の動作の図と合わせると、ラダー図上で、接点が横並びになっているものは「AND」、縦に並列に並んでいるものを「OR」とみなす事がわかっていただけると思います。そして、回路の組み方によって、点灯のタイミングが異なることも、ご理解いただけるのではと思います。今回はシンプルに接点2個だけで条件を組んでいますが、実際の回路ではもっと複雑にANDとORを使うことになります。

5.自己保持

 最後に自己保持についても説明をします。こちらについても、仕様とラダー図、動画で例を示します。

  • 緑の自己保持無しのランプは、青色ボタンを押している時のみ光る
  • 紫の自己保持ボタンは、1度青色ボタンを押すと、次に黄色ボタンを押すまで光る
自己保持していない回路と自己保持回路

 仕様通り、緑のランプは青色ボタンを押した時だけ光っていますが、紫ランプは光り続けています。

 なぜ、このような挙動になるのでしょうか? この肝は、出力コイルがY15の回路の、ORの組み方にあります。

 「X100:青ボタン」のORに、出力コイルと同じY15の接点をORで用意しています。つまり、1度Y15が出力されると、このa接点部がONするので、Y15の出力は、「X100:青ボタン」に関係なく保持されるのです。このように、自分の出力結果を使ってコイルの出力ON状態をキープする回路を自己保持回路と言います。そしてこの自己保持回路は、条件が不成立になるまで、状態がキープされてしまいます。なので、今回は黄色ボタンのb接点を使い、黄色ボタンを押した時に回路が不成立になるようにし、自己保持を切るようにしました。

 この自己保持回路は、設備を自動で動かす際に、ありとあらゆる箇所で使います。今回のように、ランプを光らせ続けたい場合もそうですし、装置を自動で動かし続けたい場合にも活用します。工場にいった時、ロボットや装置が自動でぐるぐる動いて回っている時は、自己保持がかかっていると思っていただいて問題ないかと思います。

6.最後に

 今回はラダーの読み方の基礎を紹介しました。基礎と言いつつ、タイマーやレジスタ、転送命令には触れていませんし、「XやYって何よ?」という大事な部分にも触れていません。ただ、そのあたりはいったん置いておいて、このブログは記事のジャンルを充実させるため、PLCの特殊な機能であったり、制御のハード仕様に関する話であったり、生産技術の仕事の話を書いていこうかなと思います。

 わからない点や疑問点がありましたら、気軽にご相談ください。それでは。

コメントを残す

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