"&size(40){ロボット課題3};"
#contents
*設計 [#gbe63518]
**車体 [#p3f5477d]

#ref(CIMG0938.JPG)
#ref(CIMG0939.JPG)
#ref(CIMG0940.JPG)
#ref(CIMG0941.JPG)

***問題点 [#v4df64ed]
**センサー [#z64a52ae]
***問題点 [#l4562013]
*プログラム [#qc3c2d87]
**1.懐中電灯に向かって投げる [#ee210217]
 #define TURN_TIME    400               //1周の時間を設定
 #define  throw      OnFwd(OUT_A);Wait(1);Off(OUT_A); //投げるときの定義

 task main ()
 {
 SetSensor(SENSOR_1,SENSOR_LIGHT);  // センサ−1をライトセンサーと設定
 SetPower(OUT_C,2);                 //モーターCの出力を制限
 int light_max=0;                   //光の最大値
 int t_max=0;                       //最大値のときの時間
 ClearTimer(0);                     //タイマーを0にして
 OnFwd(OUT_C);                      //探し始めます

 while(FastTimer(0)<TURN_TIME){   //回っている間
    if(SENSOR_1>light_max)        //最大値の光を見つけたら
    {
     light_max=SENSOR_1;          //最大値の光と設定
      t_max=FastTimer(0);         //タイマーを入れる
    }
                              }
 Off(OUT_C);       
 Wait(50);
 OnFwd(OUT_C);
 Wait(t_max);             //最大値の光までまわる
 Off(OUT_C);
 throw                    //投げる
 }

作成者:竹
**2.懐中電灯に近づいて投げる [#r1be70c8]
 #define TURN_TIME   400                                                 //  1周の時間を設定
 #define  throw      OnFwd(OUT_A);Wait(1);Off(OUT_A);                    // 投げるときの定義
 #define straight    Off(OUT_C);Wait(10);OnFwd(OUT_C);Wait(20);OnRev(OUT_C);Wait(20);  // 近づくときの定義

 task main ()
 {
 SetSensor(SENSOR_1,SENSOR_LIGHT);  // センサ−1をライトセンサーと設定
 SetPower(OUT_C,2);                 //モーターCの出力を制限
 int light_max=0;                   //光の最大値
 int t_max=0;                       //最大値のときの時間
 ClearTimer(0);                     //タイマーを0にして
 OnFwd(OUT_C);                      //探し始めます

 while(FastTimer(0)<TURN_TIME){       //1周しているとき
   if(SENSOR_1>light_max){           //最大値の光にあったら
    light_max=SENSOR_1;               //最大値の光と設定
    t_max=FastTimer(0);               //最大値の光のところまでの時間をはかる
                        }
                              }   
 Off(OUT_C);
 Wait(50);
 OnFwd(OUT_C);
 Wait(t_max);       //最大値の光まで回って
 Off(OUT_C);
 straight           //近づいて
 throw              //投げる
 }

作成者:
*感想 [#vf513274]
**竹 [#udfb96b2]
 前回の課題よりは難しくなかったですが、タイマーを使ったプログラムは初めてだったのでちょっと大変でした。
 また移動させるためのモーター一つというのも難しい課題でした。
** [#rc28ad64]
*コメント [#s84efe2d]
お願いします。
#comment


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