*課題2.1当たって反転 [#q1305cc6]
**制作者  Fuji [#gdf2f47c]
**プログラム ( 制作者  Fuji )[#gdf2f47c]

task main()
{
    SetSensor(SENSOR_1,SENSOR_TOUCH);
    SetSensor(SENSOR_1,SENSOR_LIGHT);
    SetSensor(SENSOR_1,SENSOR_LIGHT);
 task main()
 {
    SetSensor(SENSOR_1,SENSOR_TOUCH);         //センサー1はタッチセンサーであると宣言
    SetSensor(SENSOR_2,SENSOR_LIGHT);     //センサー2・3は光センサーであると宣言
    SetSensor(SENSOR_3,SENSOR_LIGHT);
    
    while(true)
  {
       OnFwd(OUT_A+OUT_C);
       
       if(SENSOR_1==1)
       if(SENSOR_1==1)              //何かに当ったら・・・
    {   
       OnRev(OUT_A+OUT_C);  Wait(50);
       OnFwd(OUT_A);  Wait(150);
       OnFwd(OUT_C);
       OnRev(OUT_A+OUT_C);  Wait(50);         //0.5秒間後退
       OnFwd(OUT_A);  Wait(150);       //180度回転する
       OnFwd(OUT_C);               
                                                             }
       
       if(SENSOR_2<40)
       if(SENSOR_2<40)            //ライントレース部分
     { OnFwd(OUT_C);Off(OUT_A);}
       else{OnFwd(OUT_A+OUT_C);}
     
       if(SENSOR_3<40)
     {  OnFwd(OUT_C);Off(OUT_A);}
     else{OnFwd(OUT_A+OUT_C); }
     
     } }
                                                          

**製作に苦労した点 [#ef550b42]
ライントレースって結構難しいんですよ。
コースは7の形をしていたのですが、急なカーブが多すぎて曲がりきれないことが判明。
**工夫した点 [#n57f9031]

*課題2.2追い越す [#n560dc94]
**制作者 Fuji [#md7bed28]
**プログラム( 制作者 Fuji ) [#md7bed28]

task main()
{

   SetSensor(SENSOR_1,SENSOR_TOUCH);
 task main()
 {
   SetSensor(SENSOR_1,SENSOR_TOUCH);    //同じようにセンサーを定義
   SetSensor(SENSOR_2,SENSOR_LIGHT);
   SetSensor(SENSOR_3,SENSOR_LIGHT);
   
   
   
   while(true){
   OnFwd(OUT_A+OUT_C);
   
   if(SENSOR_1==1){
   if(SENSOR_1==1){               //何かに当ったら・・・
      OnRev(OUT_A+OUT_C);Wait(100);
      OnFwd(OUT_A);Wait(70);
      OnFwd(OUT_A);Wait(70);           //右を向く
      OnFwd(OUT_A+OUT_C);Wait(100);Off(OUT_A);
      OnFwd(OUT_C);Wait(70);
      OnFwd(OUT_A+OUT_C);Wait(300);Off(OUT_A);
      OnFwd(OUT_A+OUT_C);Wait(300);Off(OUT_A);    //コースをはずれて、前を追い越す
      OnFwd(OUT_C);Wait(70);
      OnFwd(OUT_A+OUT_C);Wait(100);Off(OUT_C);
      OnFwd(OUT_A);Wait(70);              }
      
      else{
      else{                    //ライントレース部
        if(SENSOR_2<40)
        {OnFwd(OUT_C);Off(OUT_A);}
        if(SENSOR_3<40)
        {OnFwd(OUT_A);Off(OUT_C);}     }  }  }

**製作に苦労した点 [#y88f2f52]
**工夫した点 [#u1ff6e65]
**☆感想・反省点☆ [#m37f77bd]


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