{
switch (FSM_EVENT) {
case EV_ENTRY:
+ // put all actuators to defined initial positions
act_belts(BELTS_OFF, BELTS_OFF);
act_chelae(CHELA_OPEN, CHELA_OPEN);
- act_holder(HOLDER_OPENED);
- act_lift(100);
- act_pusher(100);
- // TODO
- // put all actuators to defined initial positions
+ act_holder(HOLDER_LOOSE);
+ act_lift(LIFT_TRAVEL_POS);
+ act_pusher(PUSHER_INSIDE);
+ act_hokuyo(HOKUYO_PITCH_HORIZONTAL);
+ break;
+ case EV_LIFT_IN_POS:
+ case EV_PUSHER_IN_POS:
break;
case EV_LOAD_THE_PUCK:
FSM_TRANSITION(dummy_action);
break;
case EV_GRASP_THE_PUCK:
- //FSM_TRANSITION(dummy_action);
- FSM_TRANSITION(grasp_the_puck);
+ FSM_TRANSITION(dummy_action);
+ //FSM_TRANSITION(grasp_the_puck);
break;
case EV_UNLOAD_THE_PUCK:
FSM_TRANSITION(dummy_action);
break;
case EV_UNLOAD_THE_PUCK:
case EV_RETURN:
+ case EV_LIFT_IN_POS:
+ case EV_PUSHER_IN_POS:
case EV_LOAD_THE_PUCK:
case EV_GRASP_THE_PUCK:
DBG_PRINT_EVENT("unhandled event");
break;
case EV_RETURN:
case EV_LOAD_THE_PUCK:
+ case EV_LIFT_IN_POS:
+ case EV_PUSHER_IN_POS:
case EV_GRASP_THE_PUCK:
DBG_PRINT_EVENT("unhandled event");
break;
FSM_TRANSITION(wait_for_command);
break;
case EV_LOAD_THE_PUCK:
+ case EV_LIFT_IN_POS:
+ case EV_PUSHER_IN_POS:
case EV_GRASP_THE_PUCK:
case EV_UNLOAD_THE_PUCK:
DBG_PRINT_EVENT("unhandled event");
{
switch (FSM_EVENT) {
case EV_ENTRY:
+ act_hokuyo(HOKUYO_PITCH_MAX);
FSM_TIMER(2000);
break;
case EV_TIMER:
break;
case EV_RETURN:
case EV_LOAD_THE_PUCK:
+ case EV_LIFT_IN_POS:
+ case EV_PUSHER_IN_POS:
case EV_GRASP_THE_PUCK:
case EV_UNLOAD_THE_PUCK:
DBG_PRINT_EVENT("unhandled event");
break;
case EV_EXIT:
+ act_hokuyo(HOKUYO_PITCH_HORIZONTAL);
break;
}
}
case EV_UNLOAD_THE_PUCK:
case EV_TIMER:
case EV_RETURN:
+ case EV_LIFT_IN_POS:
+ case EV_PUSHER_IN_POS:
case EV_LOAD_THE_PUCK:
case EV_GRASP_THE_PUCK:
DBG_PRINT_EVENT("unhandled event");