avr/modules_avr/asserv/microb/trajectory/trajectory.c File Reference

Implementation of the trajectory module. More...

#include <utils/utils.h>
#include <time/scheduler/scheduler.h>
#include <asserv/microb/asserv_main/asserv_main.h>
#include <position/xy/xy.h>
#include <asserv/eirbot/vect2/vect2.h>
#include <asserv/microb/trajectory/trajectory.h>
#include <trajectory_config.h>
#include <stdio.h>

Go to the source code of this file.

Defines

#define TRAJECTORY_XY_ANGLE_END_RAD   (TRAJECTORY_XY_ANGLE_END*M_PI/180.0)
#define TRAJECTORY_XY_ANGLE_MIN_MOVE_RAD   (TRAJECTORY_XY_ANGLE_MIN_MOVE*M_PI/180.0)
#define TRAJECTORY_XY_FORWARD_BACKWARD_PREFERENCY_ANGLE_RAD   (TRAJECTORY_XY_FORWARD_BACKWARD_PREFERENCY_ANGLE*M_PI/180.0)
#define DEBUG   0
#define debug_printf(args...)   do { if(DEBUG) printf(args); } while(0)

Functions

void trajectory_gotoxy_update (void)
void trajectory_gotoa_update (void)
void trajectory_init (void)
void trajectory_del_cur_traj_event (void)
void trajectory_set_speed_alpha (u16 speed_deg_s)
void trajectory_set_speed_theta (u16 speed_cm_s)
void trajectory_straight (s16 pos_cm)
void __trajectory_gotoxy (s16 x, s16 y, u08 update)
void trajectory_gotoxy (s16 x, s16 y)
void __trajectory_gotoa (s16 a, u08 update)
void trajectory_gotoa (s16 a)
void trajectory_gotoa_fromxy (s16 x, s16 y)

Variables

asserv_config asserv


Detailed Description

Implementation of the trajectory module.

Definition in file trajectory.c.


Define Documentation

#define DEBUG   0
 

Definition at line 38 of file trajectory.c.

#define debug_printf args...   )     do { if(DEBUG) printf(args); } while(0)
 

Definition at line 42 of file trajectory.c.

Referenced by __trajectory_gotoxy(), and trajectory_straight().

#define TRAJECTORY_XY_ANGLE_END_RAD   (TRAJECTORY_XY_ANGLE_END*M_PI/180.0)
 

Definition at line 34 of file trajectory.c.

#define TRAJECTORY_XY_ANGLE_MIN_MOVE_RAD   (TRAJECTORY_XY_ANGLE_MIN_MOVE*M_PI/180.0)
 

Definition at line 35 of file trajectory.c.

#define TRAJECTORY_XY_FORWARD_BACKWARD_PREFERENCY_ANGLE_RAD   (TRAJECTORY_XY_FORWARD_BACKWARD_PREFERENCY_ANGLE*M_PI/180.0)
 

Definition at line 36 of file trajectory.c.


Function Documentation

void __trajectory_gotoa s16  a,
u08  update
 

go to an angle

Definition at line 215 of file trajectory.c.

References asserv_reset_block(), ASSERV_STATUS_BIT_END_TRAJ, asserv_config::pos, asserv_config::ramp_alpha, asserv_config::ramp_theta, scheduler_add_periodical_event_priority, SCHEDULER_UNIT, asserv_config::status, trajectory_del_cur_traj_event(), trajectory_gotoa_update(), and xy_get_a_rad_float().

Referenced by trajectory_gotoa(), and trajectory_gotoa_update().

void __trajectory_gotoxy s16  x,
s16  y,
u08  update
 

go to an x,y point

Definition at line 105 of file trajectory.c.

References asserv_reset_block(), ASSERV_STATUS_BIT_END_TRAJ, debug_printf, asserv_config::ramp_alpha, asserv_config::ramp_theta, scheduler_add_periodical_event_priority, SCHEDULER_UNIT, asserv_config::status, trajectory_del_cur_traj_event(), trajectory_gotoxy_update(), and VECT2_CARTESIEN.

Referenced by trajectory_gotoxy(), and trajectory_gotoxy_update().

void trajectory_del_cur_traj_event void   ) 
 

delete current callback

Definition at line 58 of file trajectory.c.

References scheduler_del_event().

Referenced by __trajectory_gotoa(), and __trajectory_gotoxy().

void trajectory_gotoa s16  a  )  [inline]
 

Definition at line 282 of file trajectory.c.

References __trajectory_gotoa().

Referenced by do_it_from_left(), do_it_from_right(), strat_main(), strat_match4(), test2(), test_angle(), trajectory_gotoa_fromxy(), and unstuck().

void trajectory_gotoa_fromxy s16  x,
s16  y
[inline]
 

Definition at line 294 of file trajectory.c.

References asserv_config::pos, trajectory_gotoa(), vect2_2pol(), VECT2_CARTESIEN, vect2_sub(), xy_get_x_float(), and xy_get_y_float().

Referenced by shot_angle(), and shot_angle2().

void trajectory_gotoa_update void   ) 
 

Definition at line 288 of file trajectory.c.

References __trajectory_gotoa().

Referenced by __trajectory_gotoa().

void trajectory_gotoxy s16  x,
s16  y
[inline]
 

Definition at line 208 of file trajectory.c.

References __trajectory_gotoxy().

Referenced by bypassbridge(), do_it_from_behind(), do_it_from_forward(), do_it_from_left(), do_it_from_right(), go_to_the_other_side(), go_to_the_other_side_R_to_L(), new_strat(), set_gain(), strat_main(), strat_match4(), test2(), and trajectory_straight().

void trajectory_gotoxy_update void   ) 
 

Definition at line 203 of file trajectory.c.

References __trajectory_gotoxy().

Referenced by __trajectory_gotoxy().

void trajectory_init void   ) 
 

Initialization :

Definition at line 53 of file trajectory.c.

void trajectory_set_speed_alpha u16  speed_deg_s  ) 
 

Definition at line 68 of file trajectory.c.

References asserv_config::imp_alpha_per_deg, asserv_config::period, asserv_config::ramp_alpha, ramp_generator_set_speed(), and s.

Referenced by beacon_angle(), main(), and strat_main().

void trajectory_set_speed_theta u16  speed_cm_s  ) 
 

Definition at line 76 of file trajectory.c.

References asserv_config::imp_theta_per_cm, asserv_config::period, ramp_generator_set_speed(), asserv_config::ramp_theta, and s.

Referenced by beacon_angle(), bypassbridge(), do_it_from_forward(), do_it_from_left(), do_it_from_right(), main(), new_strat(), strat_main(), and test2().

void trajectory_straight s16  pos_cm  ) 
 

Go straight forward or backward

Definition at line 84 of file trajectory.c.

References debug_printf, asserv_config::pos, trajectory_gotoxy(), xy_get_a_rad_float(), xy_get_x_float(), and xy_get_y_float().

Referenced by beacon_angle(), set_gain(), strat_main(), strat_match4(), test2(), and unstuck().


Variable Documentation

struct asserv_config asserv
 

Definition at line 67 of file asserv_mainboard.c.


Generated on Fri Nov 11 06:44:26 2005 for AVR by  doxygen 1.4.5