3分SHAREツイートシェアはてブLINEPocketスポンサーリンク今回は、PLCでのラダープログラム作成前に行うプログラム構成の検討内容と手順について紹介します。PLCでラダープログラムを作成する際に、最初に『プログラム構成』を検討した方が良いです。最近のPLCはプログラムを複数作成することが可能になっており、役割ごとに分類して作成することができます。プログラムを作成する人には、どのような構成がよいのか分かりません。このページでプログラム構成の検討内容と手順を覚えてしまえば、分かりやすい構成のプログラム構成が出来るようになります。構成さえ決めてしまえば、あとはプログラムの作成に集中できるので、作業効率も品質も上がります。どのように構成を検討していくのかを覚えて、ラダープログラム上級者を目指しましょう。制御対象機器にどんなものがあるか、いくつあるかを確認し、対象機器とその制御方法を挙げていきます。例)・モーター/ポンプ1電磁開閉器でON/OFFする2インバータ制御で運転/停止と周波数制御する・電磁弁1シングルソレノイド(1出力):ONで開/OFFで閉(リミットスイッチ有)2シングルソレノイド(1出力):ONで開/OFFで閉(リミットスイッチ無)3ダブルソレノイド(2出力):A系ONで開/B系ONで閉(リミットスイッチ有)4ダブルソレノイド(2出力):A系ONで開/B系ONで閉(リミットスイッチ有)・軸制御(位置決め制御)1コントローラ付き軸制御:ポイント登録して制御2コントローラ付き軸制御:リンク等による位置データ数値を転送して制御3位置決めユニット軸制御:1ユニット1~4軸の制御(同期/補間制御なし)4位置決めユニット軸制御:1ユニット1~4軸の制御(同期/補間制御あり)5モーションコントローラ軸制御:4軸以上の制御(同期/補間制御なし)6モーションコントローラ軸制御:4軸以上の制御(同期/補間制御あり)対象機器ごとにプログラムを作成すると、同じ種類の機器に対してのプログラムは同一になります。同じであれば修正や管理がしやすくなるメリットがあります。様々な制御機器が全て合わせて10未満であれば、各機器毎にプログラムを構成してもOKです。規模が大きい装置や制御盤になると、対象機器は20や30と増えてきます。プログラムも無限に数を増やして作成できるわけではないので、種類毎にまとめて作成する方がよいでしょう。次に検討するのは制御仕様によるプログラム構成を検討していきます。その案件においてどのような制御仕様で、その中でどのような制御種類が挙げられるか検討しましょう。手動運転(手動制御/操作)手動操作があるものに関しては各機器ごとまたは機器種類ごとに作成することをおすすめします。自動運転時に各機器のプログラムへ信号を送って制御する方が簡単に作成できる上、管理しやすくなるからです。1種類しかなければ一つプログラムを作成すればよいです。マルチタスク(複数処理)する場合には、その並列する自動運転別に作成した方が管理しやすいです。レシピ管理/設定値管理レシピ管理がある場合には、レシピ管理で一つのプログラムとする方が管理が楽になります。プログラム作成時もつくりやすいというメリットがあります。複雑な制御を必要としない場合には、設定値管理のプログラムと一緒にしてもよいでしょう。設定値管理は様々な設定値(数値)の管理や有効・無効の管理をするプログラムを作成します。設定値管理において忘れがちなものとして、初期値の代入プログラムと、数値の設定範囲プログラムです。PLCを立ち上げた直後は数値データが”0′′になっています。“0”である場合に予想される初期値を代入するプログラムを作成することで、立ち上げ直後から運転可能な状態にすることが可能です。初期値代入と同時に、数値の設定範囲を制御するプログラムを作成しておくとよいでしょう。設定範囲内の数値を入力してもらえば必要のないプログラムではあります。範囲外の数値を入力されると装置が壊れるなど、意図しない動作をすることになってしまいます。プログラムで設定範囲内の下限を下回ったら下限値に書き換える、上限値を上回ったら上限値に書き換えるプログラムを各設定値ごとに作成しておきたいところです。フィードバック制御フィードバック制御(ループバック制御)は、PID制御命令などを使用してヒーターやその他機器の制御をするプログラムとなります。制御対象機器によってプログラムは様々になりますのでここでは例を挙げるのは難しいです。仕様をよく確認して制御結果が正しく出力されるように演算プログラムを作成しましょう。アラーム処理アラーム処理は生産ラインなどの装置関連では必須回路です。制御盤においても作成する場合があります。客先がPLCを見れる状況の場合に、アナンシエータリレーを使用するとCPU前面の「USER」LEDが点灯するので故障と間違われたり、無用な問い合わせがあったりすることがあります。問い合わせがあるかもしれない点も考慮して内部リレーで作成するのか、アナンシエータリレーで作成するのかを決定しましょう。アラーム処理においては、各役割ごとにフラグをまとめましょう。・発生したら停止する種類のアラームフラグ(重故障・異常)・アナウンスが目的のアラームフラグ(軽故障・警報)・音を発報するフラグまとめておくことで、例えば停止するフラグをすべての機器に入れておけば、そのフラグのON/OFFを制御するだけで機器を停止させることができるようになります。個別のアラームフラグをわざわざ多数の機器制御プログラムに記載する必要がなくなります。楽に作成できるということは、間違うリスクを減らせることにもつながりますので、考慮しながら作成しましょう。タッチパネル画面制御/上位通信インターフェースタッチパネルの画面制御プログラムや上位通信プログラムもそれぞれ別に作成しておくとよいですね。画面制御はタッチパネル側の設定も必要になりますので、先にタッチパネル側を設定し、その設定した内容に合わせてプログラムを作成しましょう。上位通信については各案件ごとに仕様があるのが通常ですので、仕様をよく確認して作成しましょう。全体やシステムに関するプログラムです。装置や制御盤全体のイニシャライズ処理などのために別でプログラムを作成しておきましょう。電源が入った直後に突然機器が動作しないように、また、アラームが発報しないようにイニシャライズ処理での動作許可フラグやアラーム監視開始フラグを作成しておくといいですね。最適なプログラム構成を検討していきます。機器毎のプログラム構成と制御仕様から考えたプログラム構成を組み合わせて、構成を適正数にするとともにプログラム間のインターフェースも考慮しながら最適化を図りましょう。私の場合は各項目説明の例を考慮した場合、以下の例の通りに構成します。目次へ戻る4.さいごに一例ではありますが、初めてPLCのラダープログラムを作成する方は、紹介した例をベースとしてご自分のベースへ作り変えることをおすすめします。最初はベースとして不十分であっても、何か参考になるものをベースとして考え、そこからバージョンアップを図ればより良いものになっていきます。あなたのプログラム構成の検討レベルを上げるためのお役に立てれば幸いです。