2009a

ロボコン

詳しくはこちら

ロボコンの構想とか

概要

母艦(親機)

小型機(子機)

フィールド全体図

フィールド

構想についての話し合いの場(掲示板)



全体図

親機


子機

プログラム

親機

#define THERESHOLD 40 //闘値
#define KAI_S 100 //回転する秒数

task main () //親機の動作
{
     int kousa=0; //交差点の数を数える変数
     SetSensor(SENSOR_1,SENSOR_LIGHT); //センサー1は光学センサー
     SetSensor(SENSOR_3,SENSOR_LIGHT); //センサー3は光学センサー
     while(GO<1){
          if (SENSOR_1>THERESHOLD){
               if (SENSOR_3>THERESHOLD){
                    OnFwd(OUT_A+OUT_C);
               } else {
                    Off(OUT_C);
                    OnFwd(OUT_A);
               }
          } else {
               if (SENSOR_3>THERESHOLD){
                    OnFwd(OUT_C);
                    Off(OUT_A);
               } else { //交差点に突入
                    kousa=kousa+1;
                    if (kousa==1){
                         Off(OUT_A+OUT_C);
                         OnFwd(OUT_A+OUT_C); //前進
                         Wait(30);
                         Off(OUT_A+OUT_C);
                    }
                    if (kousa==2){
                         OnFwd(OUT_A+OUT_C); //前進
                         Wait(40);
                         Off(OUT_A+OUT_C);
                         usetsu(); //右折
                    }
                    if (kousa==3){
                         OnRev(OUT_A+OUT_C); //後退
                         Wait(30);
                         Off(OUT_A+OUT_C);
                         usetsu(); //右折
                         OnFwd(OUT_A+OUT_C); //前進
                         Wait(145);
                         Off(OUT_A+OUT_C);
                         sasetsu(); //左折
                         OnFwd(OUT_A+OUT_C); //前進
                         Wait(50);
                         Off(OUT_A+OUT_C);
                         PlaySound(SOUND_UP) ; //ここまで来たら音で知らせる
                         Wait(500);
                         OnRev(OUT_A+OUT_C); //後退し、橋を回収する
                         Wait(500);
                         Off(OUT_A+OUT_C);
                    }
               }
          }
     }
}

sub usetsu() //右折
{
     OnFwd(OUT_A);
     OnRev(OUT_C);
     Wait(95);
     Off(OUT_A+OUT_C);
}

sub sasetsu() //左折
{
     OnRev(OUT_A);
     OnFwd(OUT_C);
     Wait(KAI_S);
     Off(OUT_A+OUT_C);
}

子機

#define A OUT_A 
#define B OUT_B 
#define C OUT_C
task main()
{  
  SetSensor(SENSOR_1,SENSOR_LIGHT);
  SetSensor(SENSOR_3,SENSOR_LIGHT);
     Wait(1200);               //待機時間
     OnFwd(B);Wait(30);OnFwd(A+C);Wait(400);OnRev(B);Off(A+C); Wait(150);   //壁を越える
     OnRev(A+C);Wait(70);Off(A+C);Wait(30);OnFwd(C);OnRev(A);Wait(80);Off(A+C);OnFwd(A+C);Wait(70);Off(A+C);Wait(40);
     OnRev(A);OnFwd(C);Wait(60);;Off(A+C);OnFwd(A+C);Wait(60);Off(A+C);Wait(20);OnFwd(B);Wait(30);OnRev(A+C);Wait(40);Off(A+C);Wait(30);    /パックをつかむ
     start hanten;    //ゴールにいれる。
     
   
 }
          
  
        
    
   task hanten()
      {
       OnRev(A);OnFwd(C);Wait(150);Off(A+C);OnFwd(A+C);Wait(200);Off(A+C+B);
      }    

コメントをどうぞ



添付ファイル: filekoki13.JPG 395件 [詳細] filekoki12.JPG 354件 [詳細] filekoki11.JPG 388件 [詳細] filekoki09.JPG 371件 [詳細] filekoki10.JPG 359件 [詳細] filekoki08.JPG 394件 [詳細] filekoki07.JPG 359件 [詳細] filekoki06.JPG 404件 [詳細] filekoki05.JPG 406件 [詳細] filekoki04.JPG 351件 [詳細] filekoki03.JPG 340件 [詳細] filekoki02.JPG 341件 [詳細] filekoki01.JPG 349件 [詳細] fileoyaki07.jpg 307件 [詳細] fileoyaki06.jpg 350件 [詳細] fileoyaki05.jpg 338件 [詳細] fileoyaki04.jpg 315件 [詳細] fileoyaki03.jpg 382件 [詳細] fileoyaki02.jpg 340件 [詳細] fileoyaki01.jpg 339件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-08-09 (日) 22:23:32