[[戻る>2005/A6]]
*製作中のプログラム [#c4c4fb09]
 現在無し
*製作したプログラム 『これまでの流れ』 [#c0e77817]

**一番最初に作ったプログラム [#cb967754]
 // 初めてロボットを動かした時のプログラム
 
 task main()
 {
   OnFwd(OUT_A);
   OnFwd(OUT_C);
   Wait(110);
   Off(OUT_A+OUT_C);
 }                     // ただ進んで止まるだけ

#comment

**二番目に作った三角形を書くプログラム [#tc0fe390]
 //『repeat』プログラムを使えば簡単だった・・・
 
 task main()
 {
   OnFwd(OUT_A+OUT_C);
   Wait(150);
   OnFwd(OUT_A);
   OnRev(OUT_C);
   Wait(110);
   OnFwd(OUT_A+OUT_C);
   Wait(150);
   OnFwd(OUT_A);
   OnRev(OUT_C);
   Wait(110);
   OnFwd(OUT_A+OUT_C);
   Wait(150);
   OnFwd(OUT_A);
   OnRev(OUT_C);
   Wait(110);
   OnFwd(OUT_A+OUT_C);
   Wait(150);
 }                     // 正三角形の軌跡を残すだけ

#comment

 task main()                // 『repeat』を使ったプログラム
  {
   repeat(3)
    {
      OnFwd(OUT_A+OUT_C);
      Wait(150);            // 一つの辺の軌跡を書く
      OnFwd(OUT_A);
      OnRev(OUT_C);
      Wait(110);            // 一つの角の軌跡を書く
    }
 
  }

#comment

**課題1についてのプログラム [#r8c50d1d]
[[2005/A6/課題1/一班/コンドのプログラム]]

**課題2についてのプログラム [#efca2f18]
[[2005/A6/課題2左]]

**課題3についてのプログラム [#z5951019]
[[2005/A6/課題3左]]

**課題4についてのプログラム [#qf1d30ff]
 // 12月5日
 // コンド
 // 機体は課題3のモーターが二つあるタイプの機体をもとに
 // 三輪で後ろがキャスターになっている(プログラム:パート1)
 
 int light = 0;
 int turn_time = 40;
 
 task main()
 {
    SetSensor(SENSOR_2, SENSOR_LIGHT);   // 真ん中のライトセンサー
    ClearTimer(0);                       // タイマー0をリセットする
         
    while(Timer(0) <= turn_time)         // 4秒以内の動き
      {
         if(SENSOR_2 > light)            // センサー2が『light』の光量より多いとき
          {
              light = SENSOR_2;          // 『light』をセンサー2で示した値に置き換える
           }
      
         OnFwd(OUT_A);                   // 左タイヤが正転
      
      }
    
    OnFwd(OUT_A);                        // 左タイヤが正転
    until(SENSOR_2 >= light);            // センサー2の値以上になるまで
    
    while(true)
      {
         if(SENSOR_2 < light)            // センサーが懐中電灯の光から外れたとき
           {
              OnFwd(OUT_A);              // 左タイヤが正転
              OnRev(OUT_C);              // 右タイヤが後転
               until(SENSOR_2 >= light); // センサーが懐中電灯の光を見るまで
           }
   
         else                            // センサーが懐中電灯の光を見たとき
           {
              OnFwd(OUT_A + OUT_C);      // 前進する
              until(SENSOR_2 < light);   // センサーが懐中電灯から外れるまで
           }
         
     }
 
 }
[[2005/A6/課題4左/コンド]]

#comment

 // 12月9日
 // コンド
 // プログラム:パート2
 int light = 0;
 int i = 0;
 int i_max = 0;
 
 task main()
 {
    SetSensor(SENSOR_2, SENSOR_LIGHT);   // 真ん中のライトセンサー
    
    OnFwd(OUT_A);                   // 左タイヤが正転
    OnRev(OUT_C);                   // 右タイヤが後転
    
    repeat(60)
      {
         if(SENSOR_2 > light)            // センサー2が『light』の光量より多いとき
          {
              light = SENSOR_2;          // 『light』をセンサー2で示した値に置き換える
              i_max = i;                 // 
          }
         PlayTone(light*10,5);
         Wait(5);
         i++;
      }
    
    OnFwd(OUT_C);
    OnRev(OUT_A);
    Wait(i_max);
    OnFwd(OUT_A + OUT_C);
    
    while(true)
      {
         if(SENSOR_2 < light)            // センサーが懐中電灯の光から外れたとき
           {
              OnFwd(OUT_A);              // 左タイヤが正転
              OnRev(OUT_C);              // 右タイヤが後転
              until(SENSOR_2 >= light);  // センサーが懐中電灯の光を見るまで
           }
   
         else                            // センサーが懐中電灯の光を見たとき
           {
              OnFwd(OUT_A + OUT_C);      // 前進する
              until(SENSOR_2 < light);   // センサーが懐中電灯から外れるまで
           }
         
     }
 
 }

#comment


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