Days for development

電子工作や3Dプリンターを使った工作などの記録です。正確な情報を書くよう気を付けますがこの記事で発生した損失には一切責任を負いません

モーターの速度制御〜その3〜

おはようございます。

昨日の続き

 

days-for-development.hatenablog.com

 今回は回転方向制御が発散した原因箇所の特定と対応を進めていきましょう。

 6.過去のソースコードの変更点

update_gyroの変化

はい。更新周期の変更と平滑化が入っています。

これを戻しました。

変更後です

7.変更後の動作

ひとまず大まかには発散していないので良しとしましょう。

8.変更までの経緯

 どうやら、回転方向の制御が怪しかったということで昨年からの変更点を戻しました。

しかし、サンプリング周期を戻すのは少し惜しかったので条件を少しずつ戻しました。

更新周期が3kHzで平滑化を削除した場合

発散しました。あまり変化がなくあまり関係がなかったのな?

更新周期1kHzで平滑化なし

これが上記の動画になります。

更新周期が早かったことが観測できる範囲では問題だったようです。割り込み内容が多すぎて計算しきれていなかったのでしょうか?

 

深追いはしないことにして

次は併進方向の発散の対処に移ります。では。