-
モータ・モータドライバ発熱
いらないクソデカコンデンサを撤去して解決
-
右側エンコーダが読めない
未解決
手で回すと正しい値が取れるが直進方向に制御をかけると読み取れなくなりおおよそ値が1/4.5くらいになる
全然わからん
-
stm32に書き込めない
参照:OpenSTM32 Community Site | Connect to custom board STM32L053 - STLINK-V2 - SWD
/open-ocd/0.9.0/share/openocd/scripts/board/st_nucleo_f4.cfgの最終行の
reset_config srst_only srst_nogate を reset_config srst_nogate に書き換えたら書き込めるようになった
再出現は警戒
-
if文の挙動がおかしい
if(角度 < M_PI){
— tattaka (@tattaka_sun) May 3, 2017
target_speed=0.0;
target_omega=500.0;
target_accel=0.0;
}
else{
target_speed=0.0;
target_omega=0.0;
target_accel=0.0;
}
正しく動くなら半周回転して止まるはず
これをループで回してるけど1回目の処理で角度(ジャイロで積分されている値)にM_PI(任意の数字)が代入されてるっぽい
機体をマイナス方向に回すと初期位置に戻る力が加わる
わけわかんね
この機体の中では180°(3.14[rad])が360という数値に近いらしい
ifの条件文を(角度<360)にすると意図通りの挙動をする
おそらくターン速が決まらなかったのもこれが原因
ただしモータに制御をかけず半周機体を回すと180°は3.14[rad]という正しい値を出力する
わけわかんね
-
減速が明らかにおかしい
減速が明らかに強い
距離を読み違えている?
加速は(おそらく)問題なし
4区画加速10m/s2減速-10m/s2
— tattaka (@tattaka_sun) May 4, 2017
減速がびみょい……? pic.twitter.com/4AcoStyH62
総括
覚えてろ謎挙動……地べたを這いドロ水すすってでももどってきてやる…...
— tattaka (@tattaka_sun) May 4, 2017