エヌがのロボット製作日記

どうも「エヌがの」です。主にマイクロマウスのことばかり書いているぶろぐです。とあるuniqueでexcitingな大学に在学中です。

FF制御パラメータの調整

こんにちは。エヌがのです。

 

 やっと院試が一段落しまして、とりあえず今は結果待ちです。受験はいつも緊張しすぎて前日寝れませんね。あと、6月28日(日)に理科大でプチ大会が開かれるので、現在クラシックの方を調整中です。ハーフの新機体はあと組み立てだけなのですがなかなか進んでおりません。

 

 今回はクラシックの調整でFF制御パラメータについて書こうと思います。

 FF制御は去年、機体重量から慣性モーメントを計算して逆起電圧定数を・・・・なんてやってたんですが、パラメータが割りとあるし、上手くいかないし、直線で苦戦してるのに旋回方向もなんてとてもやってられず、適当&放置だったんですが、少し先輩に聞いた方法から試行錯誤した結果、簡単に、短時間で、そこそこ精度良く調整できました。

結果がこちらになります。

f:id:megato:20150622152745p:plain

これは、直進時の結果で、上が速度、下が角速度、黄色が実値で青が目標値となっております。

さらに、スラローム時のものが下の図です。

f:id:megato:20150622152957p:plain

これらは、FF制御のみの結果です。驚くことに、角速度については、台形加減速ではないにも関わらず、そこそこ追従してます。

 

調整方法については、少し長くなりますが、説明したいと思います。

 

まず始めに、マウスとモータのモデルから説明します。

(数式等面倒なのでwordで書いて画像を貼り付けました)

f:id:megato:20150622155241p:plain

f:id:megato:20150622155303p:plain

f:id:megato:20150622160407p:plain

 このようにして、誤差が少ないと思われる解を簡単に求めることができます。同様にして、旋回方向のパラメータも調整することが可能です。

 擬似逆行列等の計算はすべてmatlabにやってもらいました。擬似逆行列自体そんなに難しいわけではないので、matlabを使わなくても実装可能です。やりたくありませんが。 

 

 やっと大学生っぽいことができて勝手に満足してますが、アイデア自体は先輩から教えてもらったもので自分は擬似逆行列使ってやってみただけですので大したことはできていない。基本的なところも含めて情報処理の勉強はもう少し進める必要があると考えています。

  数式や手法など、気になる点がありましたらご連絡ください。