スポンサーリンク
このページでは、PLCのアナログ入力ユニットを選定したときに作成するパラメータの設定と、ラダープログラムの作成手順について紹介します。
PLC を使う時にアナログ入力ユニットを選定したときには、ラダープログラムを作成する場合に注意が必要。
入力された値をそのまま使うと変動値が大きかったり、スケールの調整をする場合には 面倒なことが多いです。
このページのパラメータ設定とラダープログラム作成手順を覚えれば、あなたもアナログ入力のラダープログラムを短時間で作成できるスキルを身につけることが可能です。
ラダープログラムを短時間で作成できるようになれば、他の仕事などに時間を有効に使えるようになりますね。
※三菱電機製「GX-Works2」及び「Q03UDVCPU」「Q64AD」を前提としています。
目次(概要)
スポンサーリンク
1.アナログ入力ユニットってなに?
アナログ入力では、DC0~10V、DC4~20mAなどのアナログ信号を取り込みます。
PLCでは、取り込んだアナログ入力値をデジタル値に変換して数値演算などに使います。
アナログ入力ユニットとは、アナログ入力の値をデジタル値に変換してPLC内部でプログラムの演算処理に使えるようにするものです。
2.アナログ入力ユニットのパラメータ設定(Q64ADの場合)
アナログ入力のラダープログラムを作成する前に、アナログ入力ユニットのパラメータ設定をする必要があります。
パラメータを設定して、信号種類と分解能を設定して入力された値が指定したデバイスに入ってくるようにします。
2-1.ユニット追加
まずはアナログ入力ユニットを追加しましょう。
GX-Works2の左側の「インテリジェント機能ユニット」で右クリックして「新規ユニット追加」をクリックしましょう。
クリックすると以下のようなウィンドウが出てきます。今回は『Q64AD』というアナログ入力ユニットを追加します。
『Q64AD』を選んで”OK”をクリックします。
追加すると、以下のように『インテリジェント機能ユニット』の下に『Q64AD』が追加されます。
2-2.スイッチ設定
『Q64AD』のツリーを開くと『スイッチ設定』『パラメータ』『自動リフレッシュ』の項目が出てきます。
まずは『スイッチ設定』をダブルクリックして設定していきましょう。
『スイッチ設定』のウィンドウが表示されます。
必ず設定しなければならない部分を設定していきます。
まずは入力レンジ設定をしましょう。
今回はCH1に『4~20mA』のアナログ入力信号があるものとします。
あと、分解能は必ず設定しましょう。
『Q64AD』では『4~20mA』は以下の分解能があります。
通常分解能:デジタル値で『0~4000』という値で入力される
高分解能:デジタル値で『0~12000』という値で入力される
今回は『通常分解能』として設定します。
2-3.パラメータ設定
『スイッチ設定』が終わったので、次に『パラメータ』を設定していきます。
ツリーにある『パラメータ』をダブルクリックしましょう。
『パラメータ』をダブルクリックすると以下の画面が開きます。
『AD変換許可/禁止』の項目があるので、CH1を『許可』に設定します。
次に『処理設方法』を設定します。
選択肢は『サンプリング』と『平均処理』があります。
『サンプリング』は常に入力された値がデジタル値で入ってきますが、常に数値が動くので見にくい欠点があります。
今回は『平均処理』を設定します。
次に『平均処理指定』を設定します。
選択肢は『回数平均』と『時間平均』があります。
今回は『時間平均』を設定します。
最後に『平均時間・回数』を設定します。
さきほど『時間平均』に設定したので、平均処理する時間を設定します。
今回は『200ms』を設定します。
これでパラメータ設定が終わりました。
2-4.自動リフレッシュ
次に『自動リフレッシュ』の設定をします。
『自動リフレッシュ』は、指定したデバイスにデジタル値が入ってくるように設定することができます。
まずは『自動リフレッシュ』をダブルクリックしましょう。
『自動リフレッシュ』の画面が開きますので、『デジタル出力値』のCH1に『D1000』を設定します。
これでCH1のアナログ入力が『D1000』にデジタル値に変換されて入ってくるように設定できました。
ここまでがパラメータ設定の必須項目になります。
さて、いよいよプログラムを作成していきましょう。
3.アナログ入力のラダープログラム
アナログ入力のラダープログラムを作成するにあたって、注意する点があります。
入力された値はどのような用途で使用するのかが重要になります。
アナログ入力のデジタル値は、分解能によって『0~4000』か『0~12000』のいずれかの幅で入力されます。
温度入力であれば『0~100度』が『0~4000』で入力される場合、確認する際には現在の値が『3000』であれば、3000/4000なので75%だから75度かな?などと頭で都度計算しなくてはなりません。
面倒でも後々のことを考えて、実際のスケール値に合わせて数値を変換する演算を作成しておくとよいです。
扱いやすい数値に変換することでプログラムミスを防ぐこと、デバッグ時に値が正しいかどうかの確認がわかりやすくなるというメリットがあります。
扱いやすい数値に変換されていれば、その後の用途に合わせて扱う場合においても『65度を超えたら警告を出す』という場合では、数値が『65』を超えているか否かで判定できますので簡単に判別式が作成できます。
面倒でも扱いやすい数値に変換してから数値を扱っていきましょう。
スポンサーリンク
4.私の場合のプログラム作成例
私の場合は3項で説明したように、扱いやすい数値に変換して使用するようなプログラムとしています。
以下に私の場合のアナログ入力のラダープログラム作成例を示します。
演算回路はサブルーチンで呼び出して使用しています。
これは、後から使用するチャンネルが増えても大丈夫なようにするためです。
最初の画像の D1400~1402,D1405 に任意の値を入力すれば汎用可能です。
一つ作成しておいて、使用する機会のときにコピーして使えるようにしておくと便利だと思います。
実際には、さらに勾配とオフセットの調整ができるような回路で使用しています。
D1403,D1404が空いているのはそのためです。
今回は基本的な使用方法がわかるように、勾配とオフセットの回路は省略して掲載しています。
この回路を応用すれば可能ですので、ぜひチャレンジしてみてください。
5.さいごに
アナログ入力のサンプルプログラムは、アナログ出力にも考え方を応用可能です。
基本プログラムをいくつか作成しておけば、デバイス番号の置き換えだけで簡単にプログラムが作成できます。
みなさんも基本プログラムのフォーマットを作成して時間短縮しましょう。