Training Tracerのシステム同定とコントローラの設計

Training Tracerのヨー回転運動の伝達関数を同定してコントローラーも設計してみる
①おもむろにsimulinkのブロック図を描く

直進にPWM duty50%を使い、回転の制御量にduty±40%を与える構成にしている。
今回は回転の入力にランダム信号を選択した。信号ソースはPN Sequence Generatorブロックを使用した
Bernoulli Binary Generatorブロックも試したが監視と調整で通信しようとするとXCP通信エラーがでて使いこなせなかった
PN Sequence Generatorブロックの出力を制御周期の5ms毎に切り替えると機体が全く応答しなかったので0.1s間隔で信号を切り替えるようにZero-Order Holdブロックを挿入している

②監視と調整で実機の応答波形を取得する

④MATLABのアプリからシステム同定アプリを起動して1次遅れ系と2次遅れ系の2種で伝達関数を推定した

1次遅れ系としての推定

2次遅れ系として推定

⑤シミュレーション用のsimulinkのブロック図を描く

モデルの部分はTransfer Fcnブロックではなく、LTI Systemブロックを選択してシステム同定アプリで導出したモデル名(tf1)を選択する

⑥コントローラーのゲインを調整する

今回もゲイン調整は自動ではうまく動かず。
1次遅れ系のモデルを使用すると、ちょっと無理な感じのハイゲインまで設定できたので、1次遅れ系は使用を見送り
(2次遅れ系のモデルでも結果的に実機よりもハイゲインまで動くようで、低いゲインから実機との相関をとっていく必要がありそう)

⑦シミュレーション環境でのコントローラーのゲインの合わせこみ結果

(実機と往復してゲインを下げていった最終のもの)

⑧実機制御用のsimulinkを描き、調整したコントローラーをコピペする

⑨監視と調整を行い、シミュレーションと実機の波形を比較する

青がシミュレーションの応答波形で、赤が実機の応答波形
何度かシミュレーションと実機を行き来した結果、ゲインが高すぎない場合はそこそこ一致できた

コメントする