目次

課題について

課題2については2019a/Mission2を参照。 また、A地点から出発し、B地点へ進むコースでプログラムを考えた。

ロボットについて

ロボットはできるだけ小さく作り、トレースをしやすくした。前に取り付けたアームで、ボールの上げ下げを行う。 1563503784882.jpg

1563503776849.jpg

プログラムについて

定義したプログラム

#define BLACK 32
#define WHITE 52
#define kurohai 36
#define GLAY 42
#define sirohai 47
#define SP 20  //速度
#define turn_left OnFwd(OUT_B,SP);Off(OUT_C); //左に曲がる
#define turn_right OnFwd(OUT_C,SP);Off(OUT_B); //右に曲がる
#define st OnFwd(OUT_BC,SP); // まっすぐ進む
#define senkai_left OnFwd(OUT_B,SP);OnRev(OUT_C,SP); //左に旋回
#define senkai_right OnFwd(OUT_C,35);OnRev(OUT_B,35); //右に旋回
#define mochiageu OnRev(OUT_A,SP);Wait(500); //ボールを持ち上げる
#define sageru OnFwd(OUT_A,SP);Wait(500); //ボールを落とす

サブルーチン

   sub follow_line()
   {
     SetSensorLight(S2);
     long t0=CurrentTick();
     while(CurrentTick()-t0<700){
       if(SENSOR_2<BLACK){
       senkai_left;  
       }else if(SENSOR_2<kurohai){
       turn_left;
       t0=CurrentTick();
       }else if(SENSOR_2<GLAY){
       st;
       t0=CurrentTick();
       }else if(SENSOR_2<sirohai){
       turn_right;
       t0=CurrentTick();
       }else if(SENSOR_2<WHITE){
       senkai_right;
       t0=CurrentTick();
      }
       Wait(1);
      }
     Wait(1);
     }
   }
   task main(){
     follow_line(); //トレース
     Off(OUT_BC);  //少し左に曲がった状態で停止
     OnFwd(OUT_C,SP);Wait(1200); //ロボットを線上に戻す
     follow_line(); //トレース
     Off(OUT_BC); //少し左に曲がった状態で停止
     OnFwd(OUT_C,SP);Wait(1500); //ロボットが右回りに動くようにする
     if(SENSOR_2<BLACK){
     senkai_left;  
     }else if(SENSOR_2<kurohai){
     turn_left;
     }else if(SENSOR_2<GLAY){
     st;
     }else if(SENSOR_2<sirohai){
     turn_right;
     }else if(SENSOR_2<WHITE){
     senkai_right;
     }
     Wait(10000); //J地点までトレース
     OnFwd(OUT_C,SP);Wait(1200); //J地点を右に曲がる
     follow_line(); //トレース
   }

まとめ

J地点から先のルートへ進み、ボールの手前で止まるプログラムを作ることができなかった。また、トレースの成功率が極めて低かったのでそこをより改善できれば良かったと思う。


添付ファイル: file1563503776849.jpg 130件 [詳細] file1563503780125.jpg 58件 [詳細] file1563503773964.jpg 68件 [詳細] file1563503784882.jpg 128件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-08-14 (水) 17:29:37