- 追加された行はこの色です。
- 削除された行はこの色です。
[[2016b/Member]]
*課題 [#y01c07bb]
*ロボット [#ic84c96f]
*担当プログラム [#tbdddc19]
**PR間につくまで [#efb10847]
#define go_straight(t) RotateMotor(OUT_BC,50,t);
#define go_nonstop OnFwd(OUT_BC,50);
#define SASETSU OnRev(OUT_BC,50); Wait(400); Off(OUT_BC); OnFwd(OUT_C,50); Wait(1500); Off(OUT_C);
sub BEGIN()
{
Wait(1500);
turn(120);
go_straight(1300);
PlaySound(SOUND_CLICK);
go_nonstop;
until(SENSOR_3<=40);
Off(OUT_BC);
PlaySound(SOUND_CLICK);
Wait(1000);
SASETSU;
}
**五秒間ライントレース [#tcfe86a6]
課題2で書いたライントレースを少し変えて、五秒の間だけ実行し、交差点認識はしないプログラムを作った。
時間以外の制御方法がわからなかったので何回か試走させて五秒に決めた。
#define turn_right OnFwd(OUT_B,40);
#define turn_right_slow OnFwd(OUT_B,40); OnRev(OUT_C,30);
#define turn_left OnFwd(OUT_C,40);
#define turn_left_slow OnFwd(OUT_C,40); OnRev(OUT_B,30);
#define go_line OnFwd(OUT_BC,40);
#define FOLLOW_TIME 5000
sub FOLLOW_LINE()
{
long t0=CurrentTick();
while(CurrentTick()-t0<FOLLOW_TIME){
if(SENSOR_3<=38){
turn_right;
}else if(SENSOR_3<=45){
turn_right_slow;
}else if(SENSOR_3<=50){
go_line;
}else if(SENSOR_3<=59){
turn_left_slow;
}else{
turn_left;
}
}
Off(OUT_BC);
}
**安定して定位置につく [#n9c9b6f8]
sub READY()
{
go_straight(500);
OnRev(OUT_BC,50);
until(SENSOR_3<=40);
Off(OUT_BC);
PlaySound(SOUND_CLICK);
Wait(1000);
turn(20);
go_straight(400);
turn(-70);
PlaySound(SOUND_UP);
}
*実演の反省 [#gef37162]
*学んだこと [#r8a2947a]
*感想 [#aa2d84d8]