2006a/A5

目次(ー。ー)v

課題2 黒い線に沿って動くロボット

制作者 ドラ ヤマヒロ 和知 サット

ロボット名 どすこい!

どすこい!

経緯

今回コースにしたデザイン→→→→→→今回のコース

今回のロボットはスピードを出さいないで、正確にライントレースするように
ギアによる4駆のマシンにしたよ♪
マシン自体の重さも軽くしてみた。若干重心が前のめりになっちゃったけど(;´口`) 
ライントレースするマークは今回W杯のデザインにした。
そうしたら、ライントレース自体はプログラミングで簡単に成功した!!
しかぁし!!タッチセンサーのプログラミングが上手く起動しなかったのである
                _
ガックシ... ○||_

ロボットの頭の中その1♪(追い抜きプログラム) 制作者:ドラ&ヤマヒロ

 	
	task main ()
{
    SetSensor(SENSOR_1,SENSOR_LIGHT);
    SetSensor(SENSOR_2,SENSOR_TOUCH);
    SetSensor(SENSOR_3,SENSOR_LIGHT);
    
    while(true)
    {
        if
           (SENSOR_1<50)    //もし光センサ−1の感度
        {           が50以下ならAが動いてC止まる
           OnFwd(OUT_A);
           Off(OUT_C);
        }else
        {
           Off(OUT_A);  
           OnFwd(OUT_C);
        }
        if
          (SENSOR_3<45)     //もし光センサー3の感度
        {               が45以下ならCが動いてA止まる
            OnFwd(OUT_C);
            Off(OUT_A);
        }else
        {
             Off(OUT_C);
             OnFwd(OUT_A);
        }
         if
           (SENSOR_2==1)    //もしタッチセンサー2が       
         {              感知したらバックして
                            右斜め方向にある程度進み、
                    その後にライントレースに戻          
                    るように左斜めに進んで
                    追い抜く             
        OnRev(OUT_A+OUT_C);
               Wait(150); 
               OnFwd(OUT_C);
               
               Wait(40);
               Off(OUT_C+OUT_A);
               OnFwd(OUT_A+OUT_C);
               Wait(150);
               Off(OUT_C);Wait(100);
               OnFwd(OUT_C);
               Wait(100);
              
               
               }
               }
               }

制作者 サット&和知

  

   task main(){SetSensor(SENSOR_1,SENSOR_LIGHT);
   SetSensor(SENSOR_2,SENSOR_TOUCH);
   SetSensor(SENSOR_3,SENSOR_LIGHT);
   
   while(true)
   {
   if
     (SENSOR_1<45)    //もし光センサ−1の感度
   {           が45以下ならAが
       OnFwd(OUT_A);
          Off(OUT_C);
       }else
   {
          Off(OUT_A);  
          OnFwd(OUT_C);
       }
       if
         (SENSOR_3<50)   //もし光センサー3の感度
       {           が50以下ならCが動いてA止まる
           OnFwd(OUT_C);
           Off(OUT_A);
       }else
       {
            Off(OUT_C);
            OnFwd(OUT_A);
       }
        if
          (SENSOR_2==1)    //もしセンサー2が反応したら
       {OnRev(OUT_A+OUT_C); 後ろに2秒後退する
       Wait(200); 
       Off(OUT_A);                        
     OnRev(OUT_C); 
     Wait(50);
              
      OnFwd(OUT_C+OUT_A);  //AとCが前進する
       Wait(200);
        Off(OUT_A);    //Aが止まり、タイヤAを中心に
         Wait(50);     0.5秒間左回転する、そして
          On(OUT_A);    2秒間前進する
           Wait(200);
           }
              }
              }

ロボットの頭の中その2♪(方向転換プログラム)制作者:ヤマヒロ&ドラ

task main ()
{
SetSensor(SENSOR_1,SENSOR_LIGHT);
SetSensor(SENSOR_2,SENSOR_TOUCH);
SetSensor(SENSOR_3,SENSOR_LIGHT);
while(true)
{
if
  (SENSOR_1<50)      //その1のプログラミングと同じでふ
{                 ↓
OnFwd(OUT_A);           ↓
Off(OUT_C);            ↓
 }else               ↓
{                                  ↓
Off(OUT_A);            ↓
OnFwd(OUT_C);           ↓
}                                  ↓
if
  (SENSOR_3<45)           ↓
{                 ↓
OnFwd(OUT_C);           ↓
Off(OUT_A);            ↓
}else               ↓
{                 ↓
Off(OUT_C);            ↓
OnFwd(OUT_A);           ↓
}
if
  (SENSOR_2==1)        //もしタッチセンサー
                              が感知したら      
{                             AとCがそれぞれ逆回転して
OnFwd(OUT_A);        方向転換する
OnRev(OUT_C);
Wait(180);
}
}
}

制作者 サット&和知

task main ()
{
SetSensor(SENSOR_1,SENSOR_LIGHT);
SetSensor(SENSOR_3,SENSOR_LIGHT);
SetSensor(SENSOR_2,SENSOR_TOUCH);
while(true)
{
if
  (SENSOR_1< 45)     //感度45以下を感知したら
{           右回転か左回転。
OnFwd(OUT_A);
Off(OUT_C);
 }else
{
Off(OUT_A);
OnFwd(OUT_C);
}
if
  (SENSOR_3< 50)
{
OnFwd(OUT_C);
Off(OUT_A);
}else
{
Off(OUT_C);
OnFwd(OUT_A);
}
if
  (SENSOR_2==1)
{
OnRev(OUT_A+OUT_C);    //1秒間後退してその後
Wait(100);          1.8秒間右回転する。
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(180);
}
}
}

問題点

初め光センサーを1つだけしか使わなかったら、カーブのたびに脱線して暴走してしまった。。。 
そこで、脱線しないように光センサーを2つ使ったら今度はタッチセンサーが
シングルバンパーになってしまった。
結果、棒状のバンパーだと正確に感知しないことがあった。
その上プログラミングがヘタレだったので
せっかく上手にライントレースしていたマシンが暴走し始めてしまった!!!

工夫した点

どすこい!どすこい!

光センサーは2つ接着するようにくっ付けて、広範囲で光を感知するようにした。
またシングルバンパーの棒を1枚の板にしてワンタッチでより正確に感知するようにした♪ 
   <(`⌒´)> エヘン!!

反省&感想

今回は早めに取り組んだことによって、思った以上に楽しんで課題に取り組むことができた。
しかし、プログラミングの内容がイマイチ上手くいかなくて苦労した。。。
本当はもっと急カーブのライントレースがしたかったが、スピードと光センサーの問題があって、
実現できなかったのが残念である。
(_´口`)ノあぁぁぁ。。。
これからもっとプログラミングのスキルをあげたい

コメントしてくんれ


おねげぇします


添付ファイル: fileP1010005.JPG 315件 [詳細] fileP10100012.JPG 316件 [詳細] fileP1010004.JPG 310件 [詳細] fileP1010003.JPG 284件 [詳細] fileP1010001.JPG 174件 [詳細] fileFB1AD085.jpg 294件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-07-06 (木) 16:28:09