エンコーダとインバータ制御について
装置駆動で位置決め制御する場合、一般的にはサーボモータとその位置決め制御を使います。
小型PLCには、エンコーダ入力とパルス出力機能があるのでその機能を使えば簡単に位置決め制御が可能です。
例えば、後付けで位置決めしたい場合などのときは、初期費用抑えるために、インバータ駆動に変更して、位置情報をエンコーダで取り込みすることがあります。
そのようなケースでのプログラム設計について考えます。
参考
*エンコーダとは、回転または位置情報をパルス信号(例A,B相)として出力するセンサのことで、回転で制御するものはロータリエンコーダと呼びます。
画像のタイプはシャフトに後付けで取り付けできるタイプです。
*インバータとは、モータ等駆動制御する制御機器で周波数変更により速度制御します。画像は、三菱のインバータです。
制御方法:入出力
入力について
位置情報はエンコーダの入力値で判断します。
A相、B相でパルス入力があります。
正逆判断、相と逓倍の設定があります。
AB相使う場合は2相。逓倍は4倍までありますが、入力機器の特性(**KHz)とMAX回転数と1回転当たりのパルス数で適正な値で設定します。
出力について
インバータへの速度指令ですが
速度切換は、高速、中速、低速のIOで行います。
ほかにアナログ指令や通信での速度指令等もあります。
回転数ですが、通常はインバータの周波数変更となるので、60Hzまたは50Hzが標準のMAXとして考えます。
例:1800rpm 60Hzの定格モータの場合、30Hzすれば900rpmとなります。
*注意する点
加減速の速度、低速時の過電流負荷等考慮する必要があります。
位置決めプログラムについて
位置決めする場合の周波数(回転数)はグラフのようになります。
0からスタート。加速時間設定で高速(50Hz)まで加速します。
一機に停止する場合、停止精度が確保できないので、低速エリア(位置情報)に到達したら、低速に速度変更します。
低速状態で停止範囲に入ったら停止します。
これをプログラムします。
GXWorks3の変数でプログラムしてみます。
モータの目標位置をK100(定数100)とします。
低速エリアと停止エリアを設定します。
低速エリア内は低速運転でそれ以外は高速とします。
モータの正転する範囲と逆転する範囲を設定しておけば、どの位置にいても目標位置に動作して、低速減速停止をします。
このようにすれば、目標位置に正転するだけでなく、目標位置を越していれば、逆転も可能となり、サーボの位置決め制御のようになります。
まとめ
今回紹介したのは、後付けや改造案件でよく使われるのでエンコーダ+インバータとしました。
モータまで更新ができれば、モータにエンコーダつければサーボユニットも使えるようになります。
また、小型PLCで1,2軸程度であればどのメーカーのものでも位置決め制御が可能ですので、選定は状況に合わせて行うほうがいいでしょう。
コメント