[[2006a/C3/課題2左]]

作成者:飯田橋

task main()
{
 task main()
 {
     SetSensor(SENSOR_3,SENSOR_LIGHT);
     SetSensor(SENSOR_1,SENSOR_LIGHT);
     SetSensor(SENSOR_2,SENSOR_TOUCH);
     OnFwd(OUT_A+OUT_C); //go straight
     OnFwd(OUT_A+OUT_C); //直進
     while(true)
     {
      {
           while(SENSOR_2==0)
           {
                        if (SENSOR_1<40)//
          	{
         		OnRev(OUT_A); //
         		OnFwd(OUT_C);   //
                OnFwd(OUT_A+OUT_C);//前進                        
                        if (SENSOR_1<40) //センサー1が黒い線の
          	{            //上に行ったら0.10秒左旋回
         		OnRev(OUT_A);   
         		OnFwd(OUT_C);   
         		Wait(10);      		
 }	
                      else if(SENSOR_3<40)//センサー3が黒い線の
        		{             //上に行ったら0.10秒右旋回                                                    
                         OnRev(OUT_C);    
         		OnFwd(OUT_A);  
         		Wait(10);
         		OnFwd(OUT_A+OUT_C);
        		}	
                        else if(SENSOR_3<40)
        		{
        			OnRev(OUT_C);  
         		OnFwd(OUT_A);
         		Wait(10);
         		OnFwd(OUT_A+OUT_C);
                  }
           }
                      if(SENSOR_2==1)
                      if(SENSOR_2==1)//接触した場合右回りで迂回
                 {
          		OnRev(OUT_A); OnFwd(OUT_C);   Wait(40);
          		OnRev(OUT_A); OnFwd(OUT_C);Wait(40);//0.40秒右旋回の後停止
          		Off(OUT_A+OUT_C);       //の0.40秒直進の後停止
          		OnFwd(OUT_A+OUT_C); Wait(40);  //0.40秒左旋回
          		Off(OUT_A+OUT_C);
          		OnFwd(OUT_A+OUT_C); Wait(40);
          		Off(OUT_A+OUT_C);
          		OnRev(OUT_C);OnFwd(OUT_A);Wait(40);
          		Off(OUT_A+OUT_C);
    		 }
     }
  }



}


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS