アクチュエーター制御#1 モータオープンループ
こんにちは、前回の制御系の記事から大分時間が経ってしまいました。
本日から早速アクチュエータの制御シミュレーションをしていこうと思います。まずは順番的にはこんな感じです。
1:モータのオープンループシミュレーション
2:モータの電流制御(PI)のシミュレーション
3:モータの速度制御(PID)のシミュレーション
4:モータの位置制御(P)のシミュレーション
5:アクチュエータ状態(モータ+減速機)での位置制御シミュレーション
6:アクチュエータ状態での位置制御+適応制御シミュレーション
まずは1のオープンループシミュレーションから、オープンループはとりあえず入力を与えるだけです。ちなみにこれに対して出力を指令値に追従させたい場合は出力をセンサでコントローラに渡しますこれをフィードバック制御といいます。まずは今回扱うモータのシミュレーションモデルを作ってみましょう。
モータのパラメータは以下に設定しました。
抵抗R = 0.56
インダクタL = 0.0011
トルク定数Kt = 0.287
逆起定数Ke =0.287
イナーシャJ = 0.0006
粘性摩擦D = 0 1
モータのパラメータはモータの特性を表す値です。電流がどのくらい流れるのかとか電流が流れるのにどれだけ時間がかかるのかとか、電流に対してどのくらいの比率でトルクがかかるのかとかトルクがかかった時にどのくらい速度が上がるのかとか速度の上昇率とか、そんなものを決めてくれるのが上に示した値なわけです。そのパラメータを使ってシミュレーションのモデルを作ってみたのがこちら⬇️
左から電気モデル→機械モデルで並べています。電圧は回路モデルを通って電流が出力されその電流にトルク定数がかかりトルクになり、トルクが機械モデルを通って速度が出力されます。速度は逆起定数がかかり逆起電圧となり入力電圧をさっ引く形で戻ります。
ちなみに本シミュレーションでは入力電圧12Vを印加
上記条件でモータのオープンループシミュレーションしてみた結果です。
モータ起動時は加速するために電流が多く流れ、それに比例してトルクも上がる。トルクがかかるとモータは加速し速度が増える。速度が増えるにつれて逆起電圧が上がる。逆起電圧が入力電圧の12Vまで上昇した時に速度は定速度になる
今回の結果はただモータモデル(回路モデル+機械モデル)に電圧を与えた時に電流や速度がどうなるかをシミュレーションしただけです。これがオープンループ。次は回路モデルに対して電流制御をシミュレーションしていきたい。