課題

半径1m以内にある懐中電灯を探して、懐中電灯にピンポン玉を当てるロボットを製作。

ロボット本体

課題2のロボットとほぼ同じ。 http://yakushi.shinshu-u.ac.jp/robotics/?2015a%2FMember%2Farata%2FMission2

光センサーはRISのうえに取り付けた。

a.jpg

また、ボールがまっすぐ転がるようにするためのブロックを取り付けた。

no.jpg

アームをおろしたとき。

u.jpg

プログラミング

定義

#define short_break Off(OUT_AC);Wait(100);
#define clip_on OnRev(OUT_B);Wait(10);Off(OUT_B);

プログラム

task main()
{
  SetSensor(SENSOR_2,SENSOR_LIGHT);
  ClearTimer(0);   //0番目のタイマーをリセット
  int light_max;   //整数型の変数を宣言
  light_max = 0;  //仮の最大値
  int time_max;   //整数型の変数を宣言
  time_max = 0;   //価値の最大値を与える時間
  int run_time;   //整数型の変数を宣言
  run_time = 280;   //1周するのにかかる時間
  OnFwd(OUT_A);OnRev(OUT_C);    //反時計回りに回転
  while(FastTimer(0)<run_time)    //1回転するまで
  {
     if(SENSOR_2>light_max)     //light_maxの値を超えたら
     {
        light_max = SENSOR_2;    //light_maxを塗り替える
        FastTimer(0) = time_max;    //time_maxを塗り替える
     }
  }
  short_break;     //1周したら1秒休憩
  OnRev(OUT_A);OnFwd(OUT_C);
  Wait(run_time-time_max);      //懐中電灯の方向を向く
  short_break;
  OnFwd(OUT_AC);Wait(50);clip_on;Wait(10);     //シュート
  Off(OUT_AC);
} 

感想・考察

今回の課題は前回のをほとんどそのまま使えたのでよかった。

プログラムも難しいところもあったができたと思うので良かった。

これをロボコンに生かしていきたいと思った。


添付ファイル: fileu.jpg 202件 [詳細] fileno.jpg 197件 [詳細] filea.jpg 176件 [詳細]

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