2006b/A1/課題2左

衝突後よけて通るプログラム

task main()
{
    SetSensor(SENSOR_1,SENSOR_LIGHT);//光センサーのセット
    SetSensor(SENSOR_2,SENSOR_TOUCH);//タッチセンサーのセット
    SetSensor(SENSOR_3,SENSOR_LIGHT);//光センサーのセット
  
  while(true){
    if(SENSOR_1 >=40 && SENSOR_3 >=40){
    OnFwd(OUT_A+OUT_C);
    }//両方の光センサーが明るいと判断すると、前進。
   
    else if(SENSOR_1 <40 && SENSOR_3< 40){
    OnFwd(OUT_C+OUT_A);
    }//両方の光センサーが暗いと判断しても、前進。
    
    else if(SENSOR_3 < 40){
    OnFwd(OUT_A);
    OnRev(OUT_C);
    Wait(4);
    }//右の光センサーが暗いと判断すると右に曲がる。
    
    else{
    OnFwd(OUT_C);
    OnRev(OUT_A);
    Wait(4);
    }//左の光センサーが暗いと判断すると左に曲がる。
    
   
   
    if(SENSOR_2 == 1){                   //タッチセンサーの反応
    OnRev(OUT_A+OUT_C);
    Wait(50);                                   //少し後退
    
    OnFwd(OUT_A);
    OnRev(OUT_C);
    Wait(90);                                   //右に方向転換
    
    OnFwd(OUT_A+OUT_C);
    Wait(100);                                 //前進
    
    OnRev(OUT_A);
    Wait(90);                                   //左に方向転換
    
    OnFwd(OUT_A);
    Wait(100);                                 //前進
    
    OnRev(OUT_A);
    Wait(90);                                   //左に方向転換
    

    OnFwd(OUT_A);                        //ここで、黒い線にあたるまで前進。
    until(SENSOR_1<26 ||SENSOR_3<26);
    Wait(20);
    
    OnRev(OUT_C);
    Wait(45);                                   //ある程度回転させる
    until(SENSOR_1 < 40);            //ここの判断で、黒い線をまたがせる
    
    
    }
  }
  
}

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-01-10 (水) 16:39:36