右という文字を書き順通りに書くロボットを製作しました。書き順通りというのがポイントでなかなか苦労しました。下はそのプログラムです。


        task main()
        {OnFwd(OUT_B); Wait(20); Off(OUT_B);
	OnFwd(OUT_A+OUT_C);
	Wait(56);
	Off(OUT_A+OUT_C);
	OnRev(OUT_B); Wait(20); Off(OUT_B);
	OnFwd(OUT_A+OUT_C);
	Wait(14);
	OnFwd(OUT_A); OnRev(OUT_C);
	Wait(90);
	Off(OUT_A+OUT_C);
	OnRev(OUT_A+OUT_C);
	Wait(14);
	OnFwd(OUT_B); Wait(20); Off(OUT_B);
	OnFwd(OUT_A+OUT_C);
	Wait(75);
	Off(OUT_A+OUT_C);
	OnRev(OUT_B); Wait(20); Off(OUT_B);
	OnFwd(OUT_A+OUT_C);
	Wait(32);
	Off(OUT_A+OUT_C);
	OnRev(OUT_A); OnFwd(OUT_C);
	Wait(90);
	Off(OUT_A+OUT_C);
	OnRev(OUT_A+OUT_C);
	Wait(72);	
	Off(OUT_A+OUT_C);
	OnFwd(OUT_B); Wait(20); Off(OUT_B);
	OnFwd(OUT_A+OUT_C);
	Wait(56);
	Off(OUT_A+OUT_C);
	OnRev(OUT_B); Wait(20); Off(OUT_B);
	OnFwd(OUT_A+OUT_C);
	Wait(28);
	Off(OUT_A+OUT_C);
	OnRev(OUT_A); OnFwd(OUT_C);
	Wait(90);
	Off(OUT_A+OUT_C);
	OnFwd(OUT_B); Wait(20); Off(OUT_B);
	OnRev(OUT_A+OUT_C);
	Wait(75);
	Off(OUT_A+OUT_C);
	OnRev(OUT_B); Wait(20); Off(OUT_B);}


必殺技
        task main (
{
    SetSensor(SENSOR_3,SENSOR_TOUCH);
    SetSensor(SENSOR_1,SENSOR_TOUCH);    
    OnFwd(OUT_A+OUT_C);
    while(true)
  {
     if((SENSOR_1 ==1)&&(SENSOR_3 == 1))
    {
    OnRev(OUT_A+OUT_C);  Wait(40);
    OnFwd(OUT_C);       Wait(130);
    OnFwd(OUT_A);
    }
    else{if(SENSOR_3 == 0)
    {  
       Off(OUT_C);
       OnFwd(OUT_A);
       until(SENSOR_3 == 1);
       OnFwd(OUT_A+OUT_C);
    } 
   }   
    }
    }




トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS