/*
- * homologation.cc 12/02/28
+ * homologation.cc 12/03/15
*
* Robot's control program intended for homologation (approval phase) on Eurobot 2012.
*
FSM_STATE_DECL(wait_for_start);
/* movement states - buillon */
FSM_STATE_DECL(aproach_buillon);
-//FSM_STATE_DECL(load_buillon);
-FSM_STATE_DECL(place_buillon);
-FSM_STATE_DECL(leave_buillon);
/* Pushing the bottle */
FSM_STATE_DECL(push_bottle);
void set_initial_position()
{
// TODO define initial position
-robot_set_est_pos_trans(ROBOT_AXIS_TO_BACK_M,
+ robot_set_est_pos_trans(ROBOT_AXIS_TO_BACK_M,
PLAYGROUND_HEIGHT_M - (ROBOT_WIDTH_M/2.0),
0);
}
case EV_ENTRY:
robot_trajectory_new(&tcSlow); // new trajectory
robot_trajectory_add_point_trans(
- 0.62,
+ 0.65,
PLAYGROUND_HEIGHT_M - (ROBOT_WIDTH_M/2.0));
+ robot_trajectory_add_point_trans(
+ 0.65,
+ 1.3);
robot_trajectory_add_final_point_trans(
- 0.72,
- 1.14,
- TURN_CW(DEG2RAD(180)));
- break;
- case EV_MOTION_DONE:
- case EV_TIMER:
- FSM_TRANSITION(place_buillon);
- break;
- default:
- break;
- }
-}
-
-/*FSM_STATE(load_buillon)
-{
- switch(FSM_EVENT) {
- case EV_ENTRY:
- robot_trajectory_new(&tcSlow);
- robot_trajectory_add_final_point_trans(
- 0.6,
- 1.14,
- NO_TURN());
- break;
- case EV_MOTION_DONE:
- FSM_TIMER(2000);
- act_jaws(CATCH);
- break;
- case EV_TIMER:
- FSM_TRANSITION(place_buillon);
- break;
- default:
- break;
- }
-}*/
-
-FSM_STATE(place_buillon)
-{
- switch(FSM_EVENT) {
- case EV_ENTRY:
- robot_trajectory_new(&tcSlow);
- robot_trajectory_add_final_point_trans(
- ROBOT_AXIS_TO_FRONT_M + ROBOT_JAWS_LENGHT_M,
- 1.14,
- NO_TURN());
- break;
- case EV_MOTION_DONE:
- case EV_TIMER:
- FSM_TRANSITION(leave_buillon);
- break;
- default:
- break;
- }
-}
-
-FSM_STATE(leave_buillon)
-{
- switch(FSM_EVENT) {
- case EV_ENTRY:
- robot_trajectory_new_backward(&tcSlow); // new trajectory
- robot_trajectory_add_final_point_trans(
- 0.64,
- 1.14,
+ 0.5,
+ 1.1,
NO_TURN());
break;
case EV_MOTION_DONE:
robot_trajectory_new(&tcSlow); // new trajectory
robot_trajectory_add_point_trans(
0.64,
- 0.9);
+ 0.7);
robot_trajectory_add_final_point_trans(
- 0.64,
+ 0.64 + 0.08,
ROBOT_AXIS_TO_FRONT_M + 0.05,
ARRIVE_FROM(DEG2RAD(270), 0.10));
break;
//robot.fsm.act.debug_states = 1;
robot.fsm.main.state = &fsm_state_main_init;
+ //robot.team_color = BLUE;
//robot.fsm.main.transition_callback = trans_callback;
//robot.fsm.motion.transition_callback = move_trans_callback;