スポンサーサイト 

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
[ --/--/-- --:-- ] スポンサー広告 | トラックバック(-) | コメント(-)

加速and減速 

スピード制御が大体完成したので(まだ調整が必要)、
加速テーブルを作って加速したり減速したりできるようになりました。
ちょうど180mmで止まることができます。
速度が0になると姿勢制御に入ります。
動画はこちらへ

PWMも割り込みからPWMモードに変え、また周期も20kHzに変えたので、モータ音がまったく聞こえなくなりました。
モータ音の原因はPWMの割り込みが他の割り込みに干渉されていたから。
割り込み優先順位を変えてやると直りますが、やはり割り込みではCPUに負荷が掛かると思って、MTUのPWMモードで出力するようにしました。

今度はターンでもしてみようかな。
スポンサーサイト
[ 2006/09/08 20:31 ] マイクロマウス | TB(0) | CM(0)

速度制御完了。 

速度制御ができるようになった。
今までPWMを割り込みで出してたんですけど、
その割り込み優先順位が違う割り込み関数と同じであったために、
フィードバックしようとしたら変な挙動をしていました。
あとから優先順位を決めようとして、すべて優先順位を一緒にしていた自分がアホでした。
これが原因でモータが変な音をしていたんだろう。
PWM周期が多少小さくてもあんな音は出るはずないですもんね。
自分が勘違いしていました。
そこでPWMをSHのPWMモードで作ってフィードバックをかけてみると、
ちゃんと収束してくれました。
速度制御の場合残留偏差をなくすために積分制御が絶対に必要だと思います。
積分制御とは偏差を随時足していって、それに係数をかけたものを
制御量に加えるというものですが、今までPD制御しかしてこなかったために、
積分ゲインを決めるのに結構時間が掛かっちゃいました。
もっと効率の良い決め方とかないかな~。
[ 2006/09/08 02:41 ] マイクロマウス | TB(0) | CM(0)






上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。