Aircylinderの制御
1.エアーシリンダ制御システム全体の概要
エアーシリンダ制御システムは、シリンダに給気・排気するエアーの質量流量と圧力をセンシングすることによりシリンダピストンの停止位置を精密に制御する装置である。
この装置において単独でセンシングし、データ処理・判断し対応するだけでは使用用途に限界がある。そこで、近年急速に発展しつつある通信技術を利用して、装置間及び人との情報のやり取りをすることでより装置の有効活用が可能になると考え、本研究でも比較的取り組みやすいNode-Red や MQTT を利用して IoT の実現に取り組んだ。次その全体のイメージ図をしめす。
2.エアーシリンダ制御システムの構成
このシステムは、シリンダ制御のコントローラとしてRaspberry Pi を使用し Python 言語により構築した。また、装置の操作や表示を容易に GUI 環境で構築できるように Node Red をRaspberry Piに組み込んだ。 また、Node Red とシリンダ制御プログラム間のデーター通信としてMQTT を使用した。Node Redの画面ははネットワーク上の他のPC等でもプラウザを使用してアクセス可能である。
Raspberry Piでは次の3種類のプログラムを実行している。
3.プログラムの内容
Raspberry Piでは次の3種類のプログラムを実行している。
各プログラムの概要
① Pythonプログラム1
シリンダに流入するエアー質量流量値をセンサで計測し、シリンダピストンが指定された移動量で停止する
ためのエアー質量流量を演算し、電磁弁のON/OFF制御によりシリンダの停止位置を制御する。また、質量
流量値、変位センサでモニターしたピストン位置等のデータをMQTT通信によりNode-Redプログラムに送信
している。シンリンダの動作は、条件ファイルを読み込むことにより決定している。
② Pythonプログラム2
MQTT通信により受信したシリンダ停止位置データを動作作条件ファイルに書き込んでいる。
③ Node-Redプログラム
ダッシュボード上のスライダーでシリンダの停止位置を指定し、MQTT通信でPythonプログラム2に送信
している。MQTT通信でPythonプログラム1より受信した動作状態パラメータをダッシュボードにグラフ
等で表示している。
4.Node Red Dash Board について