2004/A6/ロボコン/運ぶロボット/プログラム

初号機のプログラム

 #define RUN_TIME 2000
 int move_time;
 task main()
 {
  SetSensor(SENSOR_1,SENSOR_TOUCH);
  SetSensor(SENSER_2,SENSOR_TOUCH);
  SstSensor(SENSER_3,SENSOR_LIGHT);

  ClearTimer(0);

  while(Timer(0)<=RUN_TIME)//2分間以下を繰り返す
  {
     ClearTimer(1);
     OnFwd(OUT_A);
     until(SENSOR_1==1);//センサーが働くまで前進
     Off(OUT_A); Wait(50);//止まる
   
        if(SENSOR_3>=40)//緑、白の場合
        {
           move_time=Timer(1);
           OnFwd(OUT_C); Wait(50);//紙パックを掴む
           while(SENSOR_2==1)//センサー2が押されている間
           {
              OnFwd(OUT_C);
              OnRev(OUT_A); Wait(50);//回転
              OnFwd(OUT_A); Wait(move_time);//来た分だけ戻る
              Off(OUT_A+OUT_C);//止まって箱を離す
           }
        }
  }
 }

一番最初に出来たものでモーター一つで箱を掴み、上げるロボットとの連結はまだプログラム化されていない。実際やってみるとタッチセンサーがうまく働かなかった...。


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