ラダーの基本的な書き方

初心者向け

基本ルール

ラダーの基本ルールが分かれば読み書きがなんとかなります。
ルール自体はそれほど難しくはないのでサクッと説明します。

  • 左から右、上から下の順に処理される
  • AND条件は横に、OR条件は縦に並べる
  • コイル出力または命令は右端に記述する

はい、基本ルールはこれだけです。

、、
、、、。
これだけで分かったら誰も苦労しないのでもう少し説明します。
A接点とB接点とコイル(出力)と命令を組み合わせて記述しますが文章だけでは何のことか分からないので参考のラダー(三菱)を交えて説明します。

M100~M104は内部リレー(ビットデバイス)で、D100はデータレジスタ(ワードデバイス)です。

  1. M100とM101はA接点で使用→リレーがONで条件成立
  2. M102とM103はB接点で使用→リレーがOFFで条件成立
  3. M100とM101を横に並べる→AND条件=M100がON かつ M101がONで条件成立
  4. M102とM103を横に並べる→AND条件=M102がOFF かつ M103がOFFで条件成立
  5. M100/M101とM102/M103を縦に並べる→OR条件=3. または 4.のどちらかで条件成立
  6. M104はコイルで使用→直前まで(=5.)の条件が成立していれば出力ON、不成立でOFF
  7. “MOV K100 D100″は命令→直前まで(=5.)の条件が成立してる場合のみ命令を実行(ちなみにコレはD100に100(10進数表記)を転送する命令)

ラダーをモニタすることでONしているかOFFしているか?値はいくなのか?が分かります。
上の図がコイルOFF、下の図がコイルONの状態です。青で表示されている部分が現在の値を示しています。ちなみにA接点が青=リレーがON=条件成立、B接点が青=リレーがOFF=条件成立の意味となります。リレーのON/OFF状態ではなく条件が成立しているかどうかで表示されます。

またラダー回路の判定順ですが上記回路の場合はM100、M101、M102、M103、M104、命令の順に判断されます。(左から右、上から下の原則)
命令には値の転送や四則演算、論理演算などいろいろありますが最初から全部を覚える必要はありませんので必要なときに調べれば十分です。(というより命令がありすぎて一般人は覚えてられません。)

タイマとカウンタ

通常のリレー(ビットデバイス)はコイル出力を使ってON/OFFを制御しますがタイマとカウンタは少し異なります。

タイマは条件成立が一定時間継続するとONとなるデバイスです。
上図の場合はX20が10秒間ONするとT0がONする回路になります。コイル出力となっているT0の部分に”K100″という数値がありますが、これが設定時間を示します。通常は0.1秒単位の値を設定しますのでK100=10.0秒の意味となります。(0.01秒単位で設定する高速タイマもありますがここでは割愛)
また一定時間ずっとONしないとタイマの時間計測はリセットされてしまいます。たとえばX20が5秒毎にON/OFFを繰り返すような入力信号だった場合はT0がONすることはありません。
タイマはビットとワードが複合したデバイスなので実際の動作としては以下のようになります。
・X20がONすると時間計測が開始
・0.1秒毎にタイマ現在値(ワード)が1ずつ増加
・タイマ現在値が設定値と同じ値になるとタイマリレー(ビット)がON(現在値の増加は停止)
・タイマリレーONの前にX20がOFFした場合はタイマ現在値(ワード)が0にリセット

カウンタは条件成立の回数が一定に到達するとONとなるデバイスです。
上図の場合はSM412が20回ONするとC0がONする回路になります。タイマと同様、コイル部分にある数値は設定回数を示します。カウンタもビットとワードが複合したデバイスなのでカウンタ現在値と設定値到達によるリレーがあります。
タイマと似ていますが大きな違いはリセット入力が必要になることです。上図の場合はX21がONしたときにリセット命令で値をクリアしています。
※X21の-|↑|-は接点の立ち上がりを意味し、入力信号がOFF→ONになった1スキャンのみONとなる接点を示します(逆に接点の立下りもあります)

天の声
天の声

三菱の場合はタイマ/カウンタはコイル記述だけど
OMRONでは命令で記述になるよ(TIMとかCNT命令)
KEYENCEは(基本的に)命令記述だよ

三菱はアップカウント方式(0→設定値へ増加)だけど
OMRONやKEYENCEはダウンカウント方式(設定値→0へ)なんだよ

心の声
心の声

いらねー差別化しやがって。。

特殊リレー

ここまで説明したなかでいくつか内部リレーやタイマとは異なる特殊リレーを使っています。
SM400=常時ON、SM412=1秒クロック(0.5秒毎にON/OFF)です。
他にSM401=常時OFF、SM402=RUN後1スキャンON、SM410=0.1秒クロックなどがありますが、これらはある意味最初に覚えることが必須になります。(イヤでも覚えますけど)

特殊リレー三菱OMRONKEYENCE
常時ONSM400P_OnCR2002
常時OFFSM401P_OffCR2003
RUN後1スキャンONSM402P_First_CycleCR2008
1秒クロックSM412P_1sCR2006

他にもいくつかありますが上表のリレーはどのメーカーにもあって頻繁に使うものです。

自己保持回路

セット条件が成立したらリセット条件が成立するまで保持する回路です。
まずは下図を見てください。

どちらもX0がONしてから(セット条件)、X1がONするまで(リセット条件)Yを保持する回路となります。
Y0がOFF状態から開始するものとして考えると以下のようになります。
・X0がONしたスキャンでY0がON(コイル出力)
・次のスキャンからはY0の接点がON
・Y0がONした状態でX1がOFFのあいだはY0がON=保持・継続
Y0(上側の回路)の自己保持もY1(下側の回路)の自己保持も基本的には同じ条件でON/OFFしますが、上図2つの例には明確な違いがありますので注意してください。
X0とX1の両方がONした場合Y0はOFFとなりY1はONとなります。
Y0(上側)の自己保持はリセット優先、Y1(下側)の自己保持はセット優先となり目的・意図に合わせて使い分ける必要があります。

フリップ・フロップ回路

入力されるたびに状態を反転させる回路です。単に反転回路と呼ぶこともあります。

PLSは条件がOFF→ONになったスキャンだけ指定されたリレーをONさせる命令です。
上図ではX10がOFF→ONになった1スキャンだけM10がONします。
これをふまえてY10がOFFしている状態から動作を考えると以下のようになります。
・M10がON かつ Y10がOFF なので Y10がON(コイル出力)
・次のスキャンはY10がON かつ M10がOFF なのでY10の自己保持でON
・次回のM10がONするとY10がONなので上側条件は不成立、Y10がONでM10もONなので下側条件不成立→よってY10がOFF

制御対象がUp/DownやOpen/Closeのように2値で動作させたいものがあった場合、1つの入力(≒コマンド)で動作を反転させたい場合に使われる回路です。

心の声
心の声

個人的にこの回路は好きくない。

慣れもあるがパッと見で”ん?”と感じる回路はイヤ。

コメント

  1. 北田信昭 より:

    お世話になります。

    PLC初心者です。
    既存の設備で、下記の様なラダーを見つけたのですが、この意味を教えてください。

    |————————-[MOV H0 K4L200]-|

    |-||———————-[MOV H8 K4L200]-|

    L200
    |-||———————————( )-|

    L201
    |-||———————————( )-|

    歩進制御だと思うのですが、上から順番に進むと考えると、この回路でL200やL201は、ONすることはあるのですか?

    • さきちゃん さきちゃん より:

      はじめまして。
      歩進制御とか”ステップラダー”などと呼ばれる回路、、と思ったら違うヤツですね。
      “MOV H0 K4L200″命令を実行した瞬間はL200~L215がすべてOFFします。
      次の”MOV H8 K4L200″命令を実行するとL204がON、L200~L203とL205~L215がOFFします。
      MOVは数値を転送する命令なのでコンピュータ上で扱われる数値が2進数であることを考えればON/OFFするビットが分かります。
      ちなみに”K4L200″というのは三菱特有の記述です。ビットデバイスの直前にK1~K8をつけることができK1なら4ビット、K2=8ビット、K4=16ビット、K8=32ビットを連続して扱うことを意味します。
      質問にある回路だけであればL200/L201がONすることはありませんが、実際の設備には2行目のような条件が複数あると推測されますのでその条件次第でONすることもあり得ます。