Skip to content
This repository has been archived by the owner on Jan 16, 2023. It is now read-only.

足回りの実装 #8

Open
Tracked by #9
H1rono opened this issue Jul 15, 2022 · 4 comments
Open
Tracked by #9

足回りの実装 #8

H1rono opened this issue Jul 15, 2022 · 4 comments

Comments

@H1rono
Copy link
Member

H1rono commented Jul 15, 2022

いいクラス名が全く出てこないから仮にLowerBody(下半身)で

ssr::LowerBody lowerBody(
    ssr::MotorDriver(dir1, pwm1),
    ssr::MotorDriver(dir2, pwm2),
    ssr::MotorDriver(dir3, pwm3)
);

// v_x := 並行速度x成分, v_y := 並行速度y成分, v_theta := 角速度 * 半径 とする
lowerBody.begin(0, 0, 0); // setup()内で呼ばれる想定。引数はv_x, v_y, v_thetaの初期値を指定
lowerBody.twistMove(v_x, v_y, v_theta);
lowerBody.parallelMove(v_x, v_y);
lowerBody.rotateMove(v_theta);

これは #3 が完了している前提で実装されるので要注意。モーターへの出力値はこの記事を参考にする。ロボットの半径、オムニホイールの半径が必要になった場合はコンストラクタで渡すと良さそう。現状、手動機なのでいらないと思っている

次の点を実装しても良さそう:

This was referenced Jul 16, 2022
H1rono added a commit that referenced this issue Jul 19, 2022
@H1rono
Copy link
Member Author

H1rono commented Jul 20, 2022

そういえば暫定完成

@H1rono
Copy link
Member Author

H1rono commented Aug 24, 2022

タイヤ配置のイメージ 矢印はタイヤの正転方向

lowerbody

@H1rono
Copy link
Member Author

H1rono commented Sep 1, 2022

番号つき足回り

lowerbody

ピン配置の例

番号 DIR pin PWM pin
1 6 7
2 4 5
3 2 3

@H1rono
Copy link
Member Author

H1rono commented Sep 5, 2022

モーターの出力値v1, v2, v3に対してmax(map(abs, [v1, v2, v3]))(in Python)が255を超えている時にnormalizeするとバグが起こらなくなりそう

H1rono added a commit that referenced this issue Sep 12, 2022
- noexceptキーワードを追加
- メンバ変数を追加して計算を高効率化
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant