KARACRIXを使いこなして頂くために、計測制御ユニット(KCXH-IOB30RTA)を使用してシステム構築する際の基本作業を学んでゆきましょう。
計測制御システムを構築するには、センサからの入力信号をパソコンに送り届け、パソコンからの出力信号を、アクチュエータへ受け渡す機能をもつ計測制御ユニットが重要な役割を持っています。
KCXH-IOB30RTAは、アナログ入力(16bit分解能、0〜2.5V/-2.5〜2.5V入力)8点、デジタル接点入力4点、フォトMOSリレー出力4点の入出力ポイントをもつLAN接続用の汎用アナログデジタル計測制御ユニットです[写真3.1]。アナログ入力では、各種アナログセンサからの信号を電圧入力として取り込みA/Dコンバータでデジタル数値としてパソコンに入力されます。接点入力では、入力端子がスイッチなどで短絡されたときに入力を検知します。また、フォトMOSリレー出力は、半導体リレー接点をON/OFFして制御出力を構成できるものです[図3.1]。
写真3.1 KCXH-IOB30RTA |
|
この入力端子にセンサを、出力端子にアクチュエータを接続してシステムを構築してゆくことになるわけですが、ここでは、テストのためにフォトMOSリレー出力を、自分自身の入力信号に使って、デジタル接点入力端子に接続して使用します。つまり、リレー接点出力をセンサの状態信号に見立てているのです。このような、テスト接続の手法をループバックと呼んでいます[写真3.2]。
図3.2 ループバックの概念図 |
|
図3.3の様に、DOUT1をDIN1につないで、ループバック接続を行って下さい。
また、アナログ入力については、IC温度センサ(LM35D)を1個使用します。LM35Dは、0〜100℃を1℃当たり10mVの電圧出力が得られるセンサです。図3.3に示すようにセンサに電源を供給して信号出力をAIN1に接続して下さい。
次に、KCXH-IOB30RTAを10BASE-T用のネットワークケーブルでHUBなどを介してパソコンのLANカードと接続します。KCXH-IOB30RTAの入出力接続端子は、Dsub25ピンのコネクタになっていますが、端子台を使用するとセンサや配線の接続作業が簡単に行なえますのでここでは、この端子台を使用して接続しています。
写真3.3 パソコンとKCXH-IOB30Aを接続 |
|
さらに、KARACRIXではビデオキャプチャボード(bt848,bt878チップ搭載のボード(I-O DATA製GV-VCP2等))を使用することでCCDカメラなどの画像を入力することが可能です。写真3.4にビデオキャプチャボードにCCDカメラ[写真3.6]を接続したところを示します。ビデオキャプチャボードを使用するためには、OSにデバイスドライバを組込む必要がありますがこれについては、KaracrixBuilderユーザーズマニュアル「付録 参考2」あるいは弊社HPを参考にして下さい。(最近のLinuxディストリビューションパッケージにはドライバ組み込み済みが多くなっています。)
写真3.5 ビデオキャプチャボードに接続 |
|
図3.3 テストシステムの配線図
●オブジェクト登録
KARACRIXでは、センサやアクチュエータなどの情報を入出力する対象となる機器を、オブジェクトと呼んで、システム上で抽象化して扱います。
このため、「オブジェクト登録」画面で、センサ、アクチュエータとKARACRIXのシステムで扱う“オブジェクトID”との対応づけを定義しています。
デジタル入出力としては、フォトMOSリレー出力接点を“ループバック入力”として使用して行いますので、下記のように、デフォルトのオブジェクト登録をそのまま使用します。(bi01,bo01)
アナログ入力は、温度センサを使用しています。センサとオブジェクトIDの対応は、次項で述べる計測制御通信プログラムで設定することになりますので、ここでは設定を確認するだけで構いません。(aif01)
イメージ入力もデフォルトの設定を確認するだけで結構です。(img01)
|
|
|
|
ループバック入力 | bi01 | bi01 | BI(バイナリ入力) |
ループバック出力 | bo01 | bo01 | BO(バイナリ出力) |
温度センサ | aif01 | aif01 | AI.f(アナログ実数入力) |
CCDカメラ | img01 | img01 | IMG(イメージ入力) |
「オブジェクト登録」画面を選択して登録の確認を行って下さい。「オブジェクト登録」画面を終了して「メインメニュー」に戻ります。
|
|
|
|
●計測制御通信プログラムの編集
つぎに、“オブジェクトID”名とKCXH-IOB30RTAの入出力との対応を定義することが必要になりますが、この機能を担っているのが
計測制御ユニット通信プログラム(KCXH-IOB30RTA用)です(以下、“通信プログラム”と呼ぶ)。
通信プログラムでは、KCXH-IOB30RTAから入力端子の状態を受信してシステム内のオブジェクトメモリに書き込みます。また、システム内のオブジェクトメモリに書き込まれた出力命令をKCXH-IOB30RTAへ送信してフォトMOSリレー出力端子をコントロールします。
「制御プログラム登録」画面の“プログラム編集”欄を選択して、「プログラム編集」画面を表示して下さい。
図3.5 制御プログラム登録画面 |
図3.6 プログラム編集画面 |
通信プログラムでは、UDPソケットを使用してKCXH-IOB30RTAとデータの送受信を行いますので以下の設定をKCXH-IOB30RTAの設定に合わせて編集をする必要があります。KCXH-IOB30RTAの通信環境設定に関しては「アナログ・ディジタルI/O装置
KCXH-IOB30RTA取扱説明書」を参照して設定してあるものとします。
1) 計測制御ユニットのIPアドレスを指定する。
2) 計測制御ユニットのコントロールポートを指定する。
3) オブジェクトID名と計測制御ユニットの入出力チャネルの対応を確認する。
1)の設定は、計測制御ユニットに設定されているIPアドレス、または、/etc/hostsファイルあるいはDNSに記述されているホスト名を指定してください。以下のようにデファイン値(#define)を編集して下さい。
[例:IPアドレスの場合] #define IOBADDRESS "192.168.0.200" /* IOB30RTAのIPアドレス */ [例:ホスト名が使える環境の場合] #define IOBADDRESS "iob30rta" /* IOB30RTAのホスト名 */
2) 計測制御ユニットに設定されているコントロールポートの番号を指定してください。
[例] #define IOBPORT (20000) /* IOB30RTAの接続ポート */
3) 入出力定義の設定は次の様になっています。
アナログ入力 CH1〜CH8 → ID名 aif01〜aif08 デジタル入力 CH1〜CH4 → ID名 bi01〜bi04 フォトMOSリレー出力 CH1〜CH4 → ID名 bo01〜bo04
設定を確認したら、“コンパイル”ボタンを押して通信プログラムの実行モジュールを作成します。コンパイルが終了したら、“ENT”ボタンで、「制御プログラム登録」画面に戻ります。
●通信プログラムの動作テスト
ここでは、通信プログラムが正常に実行できることを確認しておきます。「制御プログラム登録」画面から、図3.7のようにプログラムを実行(YES)してみます。 “RUN” と表示されていれば正常に実行されています。正常に実行されることが確認できましたら、実行をひとまず終了(CANCEL)させておきます。
図3.7 通信プログラムの実行テスト
それでは、監視パネルで機器の状態をモニタしてみましょう。
センサ、アクチュエータと制御ユニットの配線を確認して下さい。 また、パソコンと制御ユニットのLAN接続も確認して下さい[写真3.7、3.8]。KCXH-IOB30RTA自身はネットワークステータスLEDのLK部が点灯していればLANに接続されていることが確認できます。
|
|
次に、「メインメニュー」から“制御プログラム”ボタンを選択して「制御プログラム登録」画面から“計測制御通信プログラム(KCXH-IOB30RTA用)”の“実行”欄を実行(YES)して下さい。“RUN”と表示されれば正常に動作しています。“END”ボタンでメインメニュー戻ります。
図3.8 計測制御通信プログラムの実行
メインメニューで“監視/手動操作”ボタンを選択して、「監視パネルメニュー」から“KCXH-IOB30RTAテスト”パネルを選択して下さい。図3.9の様に監視パネルが表示されます。
もし“KCXH-IOB30RTAテスト”パネルが登録されていない場合には、「2章
KARACRIXによるシステム構築手順」→「2.5監視パネルの作成」→<テスト用監視パネルのインストールについて>
を参照して登録を行って下さい。
なお、ここでビデオキャプチャカードのデバイスドライバが正しく設定されていて、かつCCDカメラが正しく接続されていれば、カメラ画像がパネルにも表示されていると思います。
“リスト表示”ボタンを押すと登録されているオブジェクトID名を確認することができます。
図3.9 テスト用パネル
監視パネルで、接点入力のCH1を選択してみましょう。
状態表示ダイアログが表示されます[図3.10]。
状態表示ダイアログには、”オブジェクト名”、”ID名”、”現在の状態”の情報が表示されてオブジェクトの動作状態を知るために使用します。[図3.11]。
|
|
リレー出力のCH1を選択してみましょう。 操作ダイアログが表示されます[図3.12]。 "現在の状態" が "OFF" になっています。"ON" ボタンを押してみます。接点入力のCH1が”ON”の表示に変化すれば成功です。
|
|
BO(bo01)のリレー接点が閉じてBI(bi01)に入力信号が検出されたことが確認でき、ループバックのテストは、完了しました。
次にアナログ入力の確認を行ないます。アナログ入力の温度センサの値が表示されているタグ(部品)を選択して下さい。状態表示ダイアログが表示されます。ダイアログには、オブジェクト情報と現在の値が表示されています。
|
|
以上で、KARACRIXで行う基本作業の説明をひと通り行いました。
ここでは、計測制御ユニット(KCXH-IOB30RTA)の使い方を中心に、基本作業の流れを理解して頂けたと思います。
Copyright(C) All Rights Reserved. by S.I.Soubou,Inc.