#contents

*ロボットの名前 [#dae745a4]
      &size(30){谷さ〜〜〜ん。どんだけ〜〜〜1号};

*メンバー紹介 [#ldaa2d6d]
      小谷口 貴

      滝本 剛史

*今回の課題 [#fa1c4744]
・全方向から懐中電灯の方向を探しだし、懐中電灯に向けてブロックを投げる。懐中電灯は動かさない。~
・懐中電灯をゆっくり動かしたとき懐中電灯に向かって進む。~
・懐中電灯をゆっくり動かしたとき懐中電灯に向かって進み、懐中電灯の動きを止めればブロックを投げる。
*作ったロボ [#k84a4b05]
&ref(2007a/A5/課題3右/070705_195329.JPG,100%,たにさん);
*プログラム [#x898a7bf]

**光が動かないときのプログラム [#i46c8d3b]

 #define  THRESHOLD  50
   
   task main()
     
     {
       SetSensor(SENSOR_1, SENSOR_LIGHT);
       SetSensor(SENSOR_3,SENSOR_LIGHT); 
       
       while  (true)  {
                                 
                                 if ((SENSOR_1 > THRESHOLD) || (SENSOR_3 > THRESHOLD)) //センサー1または     
                                                                   //センサー3が反応中
                                   {
                                      Off(OUT_A);Wait(500);//モーターを止める
                                      
                                      OnRev(OUT_C);Wait(30);//投げる
                                      
                                      Off(OUT_C);//止める
                                      
                                   }
                                  
                                   
                                 else//センサーが反応していないとき
                                   
                                   {
                                     
                                     OnFwd(OUT_A);Wait(150);//
                                     
                                     Off(OUT_A);
                                     
                                     OnRev(OUT_A);Wait(300);
                                     
                                   }
       
                                   
                               }
                               
     } 

**懐中電灯をゆっくり動かしたとき懐中電灯に向かって進む [#abad5ca3]
 #define THRESHOLD 47
 task main()
   {     
         SetSensor(SENSOR_1,SENSOR_LIGHT);//センサー1を光センサーと定義
         SetSensor(SENSOR_3,SENSOR_LIGHT);//センサー3を光センサーと定義
         while(true)
         { 
              if((SENSOR_1 <THRESHOLD)&&(SENSOR_3 <THRESHOLD))//もしセンサー1、3が閾値した値より小さいなら              {
                   OnFwd(OUT_A);//右に回って光を探す
             }
            if((SENSOR_1 >=THRESHOLD))//もしセンサー1が閾値した値より大きいなら           
 {
                 OnRev(OUT_A);//左に回って光を追いかける
            }
            if((SENSOR_3 >=THRESHOLD))//もしセンサー3が閾値した値より大きいなら           
 {
                 OnFwd(OUT_A);//右に回って光を追いかける
            }
         }
    }        
      
**懐中電灯をゆっくり動かしたとき懐中電灯に向かって進み、懐中電灯の動きを止めればブロックを投げる[#j63e1689]
 #define THRESHOLD 47
 task main()
   {     
         SetSensor(SENSOR_1,SENSOR_LIGHT);//センサー1を光センサーとする
         SetSensor(SENSOR_3,SENSOR_LIGHT);//センサー3を光センサーとする
        while(true)
        { 
            if((SENSOR_1 <THRESHOLD)&&(SENSOR_3 <THRESHOLD))//センサー1、3が閾値した値より小さい//なら            
            {
                  OnFwd(OUT_A);//右に旋回
            }
                       if((SENSOR_1 >=THRESHOLD)//センサー1が閾値した値より大きいなら           
      {
                  OnRev(OUT_A);//左に回る
            }
            else//そうでなければ
            {
                  OnFwd(OUT_A);右に回る
            }
            if((SENSOR_1 >=THRESHOLD)&&(SENSOR_3 >=THRESHOLD))//せんさ−1と3が閾値 した値より大きいなら          
 {
                 Off(OUT_A);Wait(500);//Aのモーターを止める
                 OnRev(OUT_C);Wait(30);//投げる
            }
            
                    }
   }        
       
*工夫したところ [#v852c5cf]
前輪を2つにすると動きがかなりぎこちなかった。
いろいろ考えた末、前輪を一つにした。
かなり動きにキレがでて素早く動けるようになった。

&ref(2007a/A5/課題3右/070705_195043.JPG,100%,たにさん);


*感想 [#ifb2885a]
とてつもなく遠投のできるロボットを作ろうと思いかなりの時間を費やした。
だけど、なかなか思いどうりに行かなかった。
今回の課題は今までで一番苦労した。
だけど、なんか自分たちで一から作ってる感があり、よかった。

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