皆さんに笑っていただくために、過去に作ったソフトを少しづつ紹介させていただきます。
5~6年くらい前に作ったラダーです。
オリエンタルモーターのブラシレスモーターに台形ねじを直結し、ロータリーエンコーダーで現在位置をフィードバックしています。三菱電機のシーケンサFX5の高速カウンターにロータリーエンコーダーで入力したモーターの現在値とPCから吐き出すパルスを入力します。また、FX5のアナログ出力からブラシレスモーターコントローラーに速度指令を出力します。
ラダーの説明
・0ステップ
DHCMOVP→高速カウンターの現在値をクリア
・18ステップ
DHIOEN→高速カウンター起動
DHCMOV→高速カウンター値をデータデータレジスタに転送
・41ステップ
目標値から現在値を減算し、偏差カウンター値を算出
0より大きい場合はそのままの値を、0より小さい場合は-1を乗算した値を絶対値
・71ステップ
絶対値を2乗し、定数5で割った値をブラシレスモーター速度指令のアナログ出力値
・92ステップ
アナログ出力値転送
目標値より現在値が少ない場合→モーター正転
目標値より現在値が大きい場合→モーター逆転
このようなお粗末な回路でもそこそこ動きます(笑)
これは、社内の実験用に作ったハードです。実際の生産設備には使用しておりませんのでご了承ください。