2005/A3/課題2-a

壁に沿い、かつ進行方向を機体上部に取り付けた矢印で示すロボット                                   program editer Hideshi

基本プログラム

sub Go(){OnFwd(OUT_A+OUT_C);}
sub Back(){OnRev(OUT_A+OUT_C);Wait(14);Off (OUT_A+OUT_C);}
sub Left_Turn(){OnRev(OUT_A);OnFwd(OUT_C);Wait(60);Off(OUT_A+OUT_C);}
sub Right_Turn(){OnRev(OUT_C);OnFwd(OUT_A);Wait(60);Off(OUT_A+OUT_C);}
sub arrowR(){OnFwd(OUT_B);Wait(5);Off(OUT_B);}
sub arrowL(){OnRev(OUT_B);Wait(5);Off(OUT_B);}

基本的な動きに加えて、矢印の動きを指定

実際に動かす

task main()
{SetSensor(SENSOR_2,SENSOR_TOUCH);
SetSensor(SENSOR_3,SENSOR_TOUCH);
while(true)
{Go();
if(SENSOR_2==1){Back();arrowL();Left_Turn();arrowR();Go();Off(OUT_C);Wait(30);Go();Wait(80);};
if(SENSOR_3!=1){Wait(75);arrowR();Right_Turn();arrowL();Go();Wait(50);Off(OUT_C);Wait(10);Go();Wait(80);};}
}

工夫点

・矢印は、機体が向きを変える前に進行方向を指し、しばらくすると元に戻る

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2005-11-19 (土) 13:58:37