Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

加速度制御の実装が必要最低限すぎてちゃんと加速度を制御できていない #7

Open
ChikuwaRobo opened this issue May 24, 2024 · 2 comments
Labels
bug Something isn't working

Comments

@ChikuwaRobo
Copy link
Contributor

今の実装では、加速度の大部分がFF項で決定されている。これがよくない(とりあえず動いてはいるけど)

具体的な実装

(実装上)加速度は2つ要素で決定される。1つめは、ロボット内で計算される目標速度の変化率。2つめは、モーターの出力トルク。
出力トルクについては、モーターの電圧比例した回転数にP追従するという特性を見込んだ実装になっている。
したがって、現在速度+一定電圧を加えると、その一定電圧ぶんのトルク(加速度)で目標速度に追従する、という動きになる。
しかし、その一定電圧ぶんが速度にPの比例項として扱われており(まずここが良くない)、目標速度の変化率とは別定義になっていたため、加速度パラメーターを変更しても、適切に反映されていなかった。

センサーの性能による加速度制御の制約

エンコーダーの性能があまり良くないため、速度を正確に制御するのはちょっと難しい。具体的には、内部の目標速度と、実際の速度の差分をとってフィードバックをできるほどの精度が出せない。
(但し、実用上、モーターの各加速度はたかが知れているので、エンコーダーのフィルタの時定数をもう少し大きくできるはずで、もう少し改善の余地はあるはず)

また、機体によって200kVモーターと300kVモーターの2種が混在しているため、後述の疑似電流制御モードの実装で問題になるかもしれない

どうするのか?

バグ修正:加速度の設定値によって、適切なトルク出力が可能になるようにする
制御全体の改善:疑似電流制御モードとかあってもいいかもしれない

@ChikuwaRobo ChikuwaRobo added the bug Something isn't working label May 24, 2024
@ChikuwaRobo
Copy link
Contributor Author

いろいろいじっていて感じたが、加速度制御をもう少しまともにするのもよいが、その前にいくつかやるべきことがある

  1. モーター単体でちゃんと回るようにする(モーターベンチを作ってちゃんと計測できる環境を作る)
  2. 速度フィードバックをちゃんとできるようにする
  3. データのグラフ化等を容易にする(CM4とマイコンの間の通信を安定させる)

@ChikuwaRobo
Copy link
Contributor Author

ChikuwaRobo commented May 28, 2024

位置ベースの速度制御とFF項目を組み合わせて、応答性を犠牲にしない範囲で、速度の精度をいくらかマシにした
1baf7dc
加速時のFF項の変動の影響もあり、不安定になりがち。モーター単位の制御改善も含めて、全体的に調整は必要だがこの方向でとりあえずは良いと思う。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant