2006a/B5

タッチセンサーを使ったプログラム

プログラムの流れ

  • セットセンサー
  • <繰り返しスタート>
  • 直進
  • <<センサー1がTなら>>
  • A正回転 (逆回転)
  • 90度回転(ウェイト)
  • <<センサ−1ここまで>>
  • <<センサー3がTなら>>
  • A逆回転 (正回転)
  • 90度回転(ウェイト)
  • <<センサー3ここまで>>
  • <繰り返しここまで>

プログラム

task main()
{
 SetSensor(SENSOR_1,SENSOR_TOUCH);
 SetSensor(SENSOR_3,SENSOR_TOUCH);  
 while(true)
 { 
    OnFwd(OUT_A+OUT_C);    
    if (SENSOR_1 == 1 )
     {
         OnRev(OUT_C);
         Wait(90);
      }       
      if(SENSOR_3 ==1 )
       {
         OnRev(OUT_A);
         Wait(90);
      }     
 }
}

6/14

#define THRESHOLD 40   // 閾値
task main ()
{
   SetSensor(SENSOR_1, SENSOR_LIGHT);
   while (true) {
       if (SENSOR_1 < THRESHOLD) {   // 黒線上にいるとき
           OnFwd(OUT_A);
           Off (OUT_C);
       } else {                      // 黒線から外れたとき
           Off(OUT_A);
           OnFwd(OUT_C);
       }
        if (SENSOR_3  ==1 )
        {
          OnRev(OUT_A);
          OnFwd(OUT_C);
          Wait(150);
          }        
   }
}

7/7

task main ()
{
SetSensor (SENSOR_1, SENSOR_LIGHT);
SetSensor (SENSOR_2, SENSOR_LIGHT);
while (true)
{
   if(SENSOR_1 > SENSOR_3)
   {
     OnFwd(OUT_A);
     Off(OUT_C);
       PlayTone(SENSOR_1 * 10, 3);
     }
   if(SENSOR_1 < SENSOR_3)
   {
     OnFwd(OUT_C);
     Off(OUT_A);
       PlayTone(SENSOR_3 * 10, 3);
   }
 }
}

7/7 その2

#define Do  523
#define Re  587
#define Mi  659
#define Fa  698
#define Sol 784
#define Ra 880
#define Si 988
#define Doa 1047
#define Rea 1175
#define Mia 1319
#define Faa 1397
task music()
{
    while (true)
    {
        PlayTone(Mi,15); Wait(20);
        PlayTone(Sol,15); Wait(20);
        PlayTone(Doa,15); Wait(20);
        PlayTone(Doa,35); Wait(40);
        PlayTone(Doa,55); Wait(60);
        PlayTone(Mi,15); Wait(20);
        PlayTone(Sol,15); Wait(20);
        PlayTone(Doa,15); Wait(20);
        PlayTone(Doa,35); Wait(40);
        PlayTone(Doa,55); Wait(60); 
        PlayTone(Fa,15); Wait(20);
        PlayTone(Ra,15); Wait(20);
        PlayTone(Doa,15); Wait(20);
        PlayTone(Doa,35); Wait(40);
        PlayTone(Doa,55); Wait(60);
        PlayTone(Si,15); Wait(20);
        PlayTone(Ra,15); Wait(20);
        PlayTone(Si,15); Wait(20);
        PlayTone(Si,95); Wait(100);
    }
}
task main ()
{
SetSensor (SENSOR_1, SENSOR_LIGHT);
SetSensor (SENSOR_2, SENSOR_LIGHT);
int music_flag = 0; // 0 -> off, 1 -> on
while (true)
{
  if(SENSOR_1 < 60 )
  {
  
  if (music_flag == 0) {
    start music;
  music_flag = 1;
  }
  
  }else{
  
  if (music_flag == 1) {
  
  stop music;
  music_flag = 0;
  }
  
  }
  
    if(SENSOR_3 < 60 )
  {
  
  if (music_flag == 0) {
    start music;
  music_flag = 1;
  }
  
  }else{
  
  if (music_flag == 1) {
  
  stop music;
  music_flag = 0;
  }
 }   
  
  if(SENSOR_1 > SENSOR_3)
  {
    OnFwd(OUT_A);
    Off(OUT_C);
    }
  if(SENSOR_1 < SENSOR_3)
  {
    OnFwd(OUT_C);
    Off(OUT_A);
  }
}
}

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-07-07 (金) 16:24:03 (4789d)