[[2014b/Member]]
 
目次(作成途中)
目次(編集中)
#contents
 
*プログラム [#v47f2d49]
 #define THRESHOLD 45
 #define SPEED_H 50
 #define SPEED_L 25
 
 #define OnRL(speedR,speedL) OnFwd(OUT_B,speedR);OnFwd(OUT_C,speedL);
 #define go_forward OnRL(SPEED_H,SPEED_H);
 #define turn_left1 OnRL(SPEED_L,-SPEED_L);
 #define turn_left0 OnRL(SPEED_L,0);
 #define turn_right0 OnRL(0,SPEED_L);
 #define turn_right1 OnRL(-SPEED_L,SPEED_L);
 
 #define STEP 1
 
 #define nMAX 150
 
 #define short_break Off(OUT_BC);Wait(1000);
 
 #define CROSS_TIME 200
 
 #define closs_line OnRL(SPEED_L,SPEED_L);Wait(CROSS_TIME);short_break;
 
 
 
 
 task main()
 
 {
 
   SetSensorLight(S3);
 
   int nOnline=0,closs_number=1;
   int nOnline=0;
   int closs_number=1;  //交差点の番号(何回目の交差点か)
 
 
 
   while(true){
 
     while(nOnline < nMAX){
 
       if(SENSOR_3 < THRESHOLD-15){  //ほぼ黒線上
 
          turn_left1;
 
          PlaySound(SOUND_LOW_BEEP);
          PlaySound(SOUND_LOW_BEEP);  //低いビープ音を鳴らす
 
 	  nOnline++;
 
       }else{
 
 	  if(SENSOR_3 < THRESHOLD-7){  //黒に近い
 
             turn_left0;
 
       }else if(SENSOR_3 < THRESHOLD+7){  //中間
 
           go_forward;
 
       }else if(SENSOR_3 < THRESHOLD+15){  //白に近い
 
 	    turn_right0;
 
       }else{  //ほぼ白
       }else{  //ほとんど白
 
   	    turn_right1;
 
            PlaySound(SOUND_LOW_BEEP);
            PlaySound(SOUND_LOW_BEEP);  //低いビープ音を鳴らす
 
       }
 
      nOnline=0;
 
     }
 
     Wait(STEP);
 
     }
 
   /*交差点であるとき*/
 
    if(closs_number != 3){
    if(closs_number != 3){  //3回目の交差点のとき、曲がる(回数はとりあえず)
 
       short_break;
 
       turn_right1;Wait(nMAX*STEP);
 
       closs_line;
 
       nOnline=0;
       nOnline=0;  //回数を1増やす
 
       closs_number++;
       closs_number++;  //交差点の番号を1増やす
 
       PlaySound(SOUND_CLICK);
       PlaySound(SOUND_CLICK);  //クリック音を鳴らす
 
    }
 
    else
    else  //そうでないとき
 
    {
 
       nOnline=0;
       nOnline=0;  //回数をリセット
 
       closs_number++;
       closs_number++;  //交差点の番号を1増やす
  
       PlaySound(SOUND_UP);
       PlaySound(SOUND_UP);  //「テレレー↑」という音をならす
 
    }
 
   }
 
 }



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