#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);//止まって箱を離す } } } }
一番最初に出来たものでモーター一つで箱を掴み、上げるロボットとの連結はまだプログラム化されていない。実際やってみるとタッチセンサーがうまく働かなかった...。