PLC(プログラマブルロジックコントローラー)のプログラムには、処理が行われる順番があります。このページではラダープログラムの処理順序について説明します。また、ラダープログラムが出力を行うタイミングや、内部リレーの動作についても解説しています。
ラダープログラムの処理順序
ラダープログラムの演算順序は、基本的には、左から右に向かって進み、上から下へ順次進んで行きます。
図のようなラダー図では、演算は①から順番に⑨まで行われます。その間に入出力やメモリ読み書きなどの処理も行われます。
PLCプログラムでは、ENDまで進むと、また最初の命令に戻り(①に移動)、演算を繰り返します。この一回のプログラムの進みを、1スキャンといい、一回のプログラムにかかる時間をスキャンタイムといいます。
通常、スキャンタイムは数μsですがプログラムが長くなると、スキャンタイムも長くなります。尚、入出力やメモリ読み書きなどの処理時間もスキャンタイムに含まれます。
リフレッシュ方式とダイレクト方式
リフレッシュ方式とは、PLCプログラムが、ENDまで進むと、出力端子の状態を一度に切り替える方式です。プログラムの演算途中で出力リレーの状態に変化があっても、出力端子に状態の変化は、すぐには反映されず、END命令が実行された時点で出力端子に状態の変化が反映されます。
ダイレクト方式とは、PLCプログラムの出力リレーに変化があった場合、ダイレクトに出力端子を切り替える方式です。プログラムの演算途中で出力リレーの状態に変化があれば、出力端子の状態の変化は、すぐに反映されます。
ダイレクト方式はプログラムの演算に必要な信号を読み込めば良いので、高速処理に対応しやすいですが、プログラムの書き方によって出力信号にバラツキが発生しやすく、使い方が難しいです。
PLCの機種によって、リフレッシュ方式とダイレクト方式が決められていますが、一般的にはリフレッシュ方式が採用されています。尚、高性能なPLCでは、パラメーターでリフレッシュ方式とダイレクト方式を切り替えることが出来るPLCもあります。
ラダープログラムにおけるリレーの動作
ラダープログラムはリレーが持っているa接点やb接点、コイルといったシンボルを使って、入力や出力、補助リレーやタイマーなどをラダー図として表現していきます。
入力リレーの動作について
PLCの入力リレーは、入力ユニットに接続されている外部からの入力スイッチ信号を受けて切り替わります。入力リレーは、PLCプログラム上で考えられた仮想的なリレーです。入力のリレーとしてはラダー図では表現しません。ラダー図上では、入力の信号をa接点やb接点などのシンボルを使って状態を表現します。
入力ユニットの端子番号が、その入力リレーの番号となります。ラダープログラム上では、入力接点の番号として表現します。接点の状態は、入力ユニットに接続されている外部機器の接点の状態と同じになります。
出力リレーの動作について
出力リレーはラダープログラムで制御するリレーです。ラダープログラムを実行し、出力リレーの状態がONになれば、その出力リレー番号に対応した出力端子がONします。出力端子には、ランプやマグネットスイッチ、アクチュエータなどの負荷を接続し、出力リレーで負荷をコントロールします。
補助リレーやタイマーなどの動作について
補助リレーやタイマーなどは、出力リレーと同じようにラダープログラムで制御するリレーです。ただし、出力リレーのように外部へ出力する端子を持っていません。ラダープログラム上でのみ実行できる、内部仮想リレーといった扱いです。これらのリレーは外部へ関りがないので、プログラム中で自由に使うことができます。