Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: AQM0802A HMC6352 L6470_lib PID mbed
Fork of CatPot_Main_ver1 by
wraparound.cpp
- Committer:
- ryuna
- Date:
- 2015-01-10
- Revision:
- 7:7a0aee1477d9
- Parent:
- 6:c2c31bc971ad
File content as of revision 7:7a0aee1477d9:
//回り込みます
/**
ballの位置によりボールが正面に来るまで.を一連の処理動作とし,動作を考える.
すなわち,逐一モーターを動かし,ボールとの位置をチェックしモーターを動かすのではなく,はじめの状態から移動を考えてその処理を終えるまでモーターは拘束される.
この動作について信用を得るために超音波(後ろ,左右),irセンサ,地磁気センサの三つから現在状態およびボールとの距離を把握.計算により移動量,回転速度を決定,行動へ.
上位4ビットで一番目のボールの位置,下位4ビットで二番目のボールの位置
二つ目の8ビットで1個目のボールの値
三つ目の8ビットで2個目のボールの値
Ir1//irの一番値が大きいもの
Ir2//irの二番目に値が大きいもの
以上は割と序盤に考えたことで適当なこと言ってる。
1 フローチャートを用いる。 12/26~
露骨にオートマトンのプログラムを参考にしている。
もしかして途中までの計算まとめられる
ir分岐後の計算がほとんど同じ
動きが他のものと違う後ろと前以外を先に関数でどっかに飛ばす
if(ir == 1 || ir == 7){
(*ControlRobo[ir/7])(&CompassDef); //これで0,1に分けれるはず
continue;
}
この後ほかのやつは似たような処理をしたあと
それぞれに分岐するとか考えられる。
逆にこれによる害は何か。
*****/
/***
irは+-30度まで読めるが,距離が遠い場所ほど減衰
ボールがないときは12
*1
*0 *2
*11 *3
*10 *4
*9 *5
*8 *6
*7
**/
