プログラマブルロジックコントローラ
[Wikipedia|▼Menu]
.mw-parser-output .hatnote{margin:0.5em 0;padding:3px 2em;background-color:transparent;border-bottom:1px solid #a2a9b1;font-size:90%}

この項目では、PLC(制御装置)について説明しています。PLC(通信技術)については「電力線搬送通信」をご覧ください。
「シーケンサ」で知られる三菱電機製のPLC。

プログラマブルロジックコントローラ(: programmable logic controller、PLC)は、リレー回路の代替装置として開発された制御装置である。プログラマブルコントローラとも呼ばれ、一般的にシーケンサ(三菱電機の商品名であるが登録商標ではない)とも呼ばれる。
概要

プログラマブルロジックコントローラは、リレー回路の代替装置として開発された制御装置である。工場などの自動機械の制御に使われるほか、エレベーター自動ドアボイラーテーマパークの各種アトラクション(遊具)など、身近な機械の制御にも使用されている。

PLCの取り扱いは情報処理技術の分野というよりは、どちらかというと電気工事士などの電気技術者の領域である。
PLCのしくみ
PLCはステートマシン

PLCは小型のコンピュータの一種で、中枢には他のコンピュータと同じようにマイクロプロセッサが使われ、ソフトウェアで動作する点も同じであるが、PLCの動作の仕方は他のコンピュータとは異なる。通常のコンピュータがチューリングマシンを原型とするノイマン型の動作モデルを採用しているのに対して、PLCはリレー回路を原型とするステートマシンを動作モデルとしている。したがってPLCのプログラムは、リレー回路を記号化したプログラミング言語が使われる。そのプログラムはリレー回路を模した図に変換することが可能である。その図をラダー図と言う。

ラダー図は、はしごのようにみえることから由来するが、プログラム的には、すべての入出力がラッチされることで入出力の同時性がプログラム上(内部ファームウエア上)確保されているにすぎない。

一般の演算装置同様、インデックスレジスタ等の間接指定も容易にできることから、一般のアセンブリ言語を習得したものなら、ラダー回路は、その記述方法が違うだけで容易に習得可能である。

なお演算結果を内部メモリ領域に格納するにあたって、メーカによって、初期設定が電源喪失後、揮発する設定になっている場合があり、不揮発領域の再定義が必要なメーカも存在する(I/Oにたいする基本設計が異なるため)

PLCのプログラムは電気回路を記号化したものなので、電気技術者の分野となる。PLCは巨大な機械装置や人を運ぶ装置を制御することが多く、きわめて高い安全性と安定性が求められるため、特に安全性が要求される分野への使用にあたって、その仕様については、各メーカとの協議が必要である。PLCのプログラムは、最近ではバッテリーを使わないフラッシュメモリが使われることが多い。以前はバッテリーバックアップされたメモリが使用されることが多かった。バブルメモリという特殊なメモリが使われる場合もある。実際のリレー回路と異なる点としては、PLCは前回値と今回値を使用出来る事である。リレー回路は電流が流れるだけなので電源喪失後の信号開後の保持には機械的ラッチリレー等が必要になる。
豊富な入出力

PLCの特徴のひとつとして、豊富な入出力機能がある。入力側はリミットスイッチ(移動する装置や架台の位置を検出するセンサ)、センサ、温度計、複雑な位置決めシステムから得られる位置情報などを読み込む。場合によってはマシンビジョンも使用する[1]。出力側はモーター、空気シリンダー、液圧シリンダー、振動板、リレーソレノイドを駆動する。入出力機構は内蔵されており、大規模な制御をする場合はPLC同士をネットワークでつなぎ、I/Oモジュールを接続して使用する。拡張モジュールの使用に当たって、パソコンのようにドライバをインストールする必要は無い。電子ブロックのようなイメージでモジュールを増設することができる。

かっては、PLC本体とベースユニットの構成にチャンネルユニットを増設していく形だったが、最近は、ベースユニットがない形状が一般的になっている。

これは、当初のチャンネルユニットのI/O概念がパラレルI/Oが主体だったものが、多機能化によりシリアルI/Oでないと拡張性を維持できなくなったことに由来する。物理的I/Oアドレスは従来のパラレル用ベースユニットの束縛がなくなり、I/Oインターフェースのアクセス速度などの制限はあるものの、ほぼ無限大に拡張できる基本が確立された。

そのことにより、メーカにより異なるが、多機能入出力ユニットについては、ラダー用ソフトでその入出力領域について再定義しないとPLC側が認識し得ないことが多々ある。
元々はリレー回路

PLC は、従来の自動化システムで使われていた数百・数千のリレーカムタイマー(メカニカルタイマー)を置き換える安価な代替品として発明されたものである。PLCひとつで数千のリレーを置き換えるようプログラムすることができる。初めに登場した時期は主に自動車産業の工場で使われ、生産設備の制御盤の配線を変更する代わりにPLCのソフトウェアの変更でモデルチェンジに対応できるようにした。
ソフトはラダーラダー図の例(自己保持回路)

一般的なPLCはソフトウェアとしてラダー論理というものを使う。ラダー論理というものはリレー回路を記号化したもので、「ラダー図」という梯子のような図形で表す。電気技術者は回路図の問題を解くようにラダー論理を使い、PLCのプログラムを図面で扱うことができる。この方法が選ばれた理由は、リレー回路をシミュレートすることで、普及を促進させるものであった。

現在では一般のコンピュータと差の少ないPLCも使われるようになった。IEC 61131-3 標準規格によれば、PLCを構造化プログラミング言語(ST言語)でプログラムすることも可能で、論理基本操作でプログラムすることもできる。シーケンシャル・ファンクション・チャート(SFC言語)と呼ばれるグラフィカルなプログラミング表記法を用いることができるプログラマブルコントローラもある。

プログラム目的により、ラダーで記述することのできない拡張命令群が主体となることもあるが、規模の大小にかかわらず計装系(位置制御、速度制御を含む)や文字などの扱いのないリレーロジックでのみの制御では、ラダー図のみのプログラムでも十分コスト及びスペースメリットが出てくるものである。
スキャンタイム

PLCプログラムは一般に制御対象システムが動作中は反復的に実行されている。物理的な入力点の状態はプロセッサがアクセス可能なメモリ領域にコピーされ、その領域を「I/Oイメージテーブル」などと呼ぶ。プログラムはそれを入力として最初から最後まで動作する。これには若干の時間がかかり、その出力状態に従ってI/Oイメージテーブルを更新する[2]。プログラムが小さくプロセッサが高速なら、このスキャンにかかる時間は数ミリ秒で済むが、大きなプログラムではもっと時間がかかる(例えば100ミリ秒)。スキャン時間が長すぎると、工程の状況へのPLCの反応が遅くなり、使いものにならなくなる。

PLCの発展に伴い、ラダーの実行順序を変更する技法やサブルーチンの実装が行われてきた[3]。それによってプログラミングが単純化され、スキャンタイム短縮にもつながっている。例えば、制御対象の機械のセットアップにのみ使われるプログラムの部分は、通常運用時のスキャンには含まれないよう分離することができる。
デジタル信号とアナログ信号

PLCで扱う信号はデジタル信号である。

デジタル(または離散)信号とは単純に ON と OFF (1 と 0、真と偽)の信号だけである。押しボタン、リミットスイッチ、光スイッチなどがデジタル信号を発生するデバイスである。デジタル信号は電圧電流で判断され、ある閾値でONかOFFかが決定される。例えば 24VDC の入出力を持つPLCでは、22VDC以上をONと判断し、2VDC以下をOFFと判断する。電流入力の方が電圧入力よりも電気的ノイズに強い。

アナログ信号はボリューム制御のようなものであり、一般にゼロからある最大値までの値を示す。アナログ信号には電圧電流が使われる。アナログ信号はADコンバータなど呼ばれるPLCのI/Oモジュールによって整数値に変換されPLCに取り込まれる。逆にデジタル信号をアナログ信号に変換するモジュールをDAコンバータなどという。

アナログ信号は連続した無限個の数値だが、デジタル信号は有限個の数値しか使えない。そのため、アナログ信号の取込み範囲と精度は、デバイス側の精度とPLC側の信号線の割当てのバランスで決定される。例えば、0?24VDCの範囲のアナログ信号があり、PLCで8本の信号線がこの入力に割り当てられたとすると、0Vはデジタルで0、24Vはデジタルで255となるだろう。精度は24/256となり約0.1V以下の変化は無視される。25VDCの入力があった場合にどう解釈されるかはPLCに依存する(24Vのままだったり、エラーとして処理したりする)。
例:デジタルとアナログ

例としてタンクに水を入れる装置を考えてみよう。タンク内の水は別のシステムが必要に応じてくみ上げて使用する。ここで注目するシステムはタンク内の水を一定量に保つシステムである。

デジタル信号だけを使った場合、PLCは、入力としてタンクが空かどうかを示すスイッチと満タンかどうかを示すスイッチを持つ。また、出力としてはタンクに水を入れるバルブを開閉する出力信号をひとつ必要とする。

どちらのスイッチもOFFか「タンクが空」のスイッチだけがONの場合、PLCはバルブを開けて水を入れる。「タンクが満タン」のスイッチだけがONになったらバルブを閉じる。両方のスイッチがONになったら、スイッチの少なくとも一方が故障したと判断できる。満タンかどうかのスイッチだけで判断しないのは、少しずつ水を使うような状況でスイッチがひとつだけだと頻繁にバルブの開閉が行われて機械が消耗するのを避けるためである(そのような状態をフラッターと呼ぶ)。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:49 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef