Files | |
file | robot_central.h |
Library for robot. | |
file | robot_interface.h |
Definition of the interface of the module robot. | |
file | robot_messages.h |
Definition of the messages for this module. | |
Data Structures | |
struct | carmen_robot_sonar_message |
struct | carmen_robot_bumper_message |
struct | carmen_robot_laser_message |
struct | carmen_robot_vector_status_message |
struct | carmen_robot_velocity_message |
struct | carmen_robot_follow_trajectory_message |
struct | carmen_robot_vector_move_message |
Defines | |
#define | CARMEN_ROBOT_MAX_READINGS 5 |
#define | CARMEN_ROBOT_ESTIMATES_CONVERGE (CARMEN_ROBOT_MAX_READINGS+25) |
#define | CARMEN_ROBOT_ALL_STOP 1 |
#define | CARMEN_ROBOT_ALLOW_ROTATE 2 |
#define | CARMEN_ROBOT_MIN_ALLOWED_VELOCITY 0.03 |
#define | CARMEN_ROBOT_ODOMETRY_AVERAGE 0 |
#define | CARMEN_ROBOT_FRONT_LASER_AVERAGE 1 |
#define | CARMEN_ROBOT_REAR_LASER_AVERAGE 2 |
#define | CARMEN_ROBOT_BUMPER_AVERAGE 3 |
#define | CARMEN_ROBOT_SONAR_AVERAGE 4 |
#define | CARMEN_ROBOT_SONAR_NAME "robot_sonar" |
#define | CARMEN_ROBOT_SONAR_FMT "{int,double,<double:1>,<{double,double,double}:1>,{double,double,double},double,double,double,string}" |
#define | CARMEN_ROBOT_BUMPER_NAME "carmen_robot_bumper" |
#define | CARMEN_ROBOT_BUMPER_FMT "{int, <char:1>, {double,double,double}, double, double, double, string}" |
#define | CARMEN_ROBOT_LASER_FMT "{{int,double,double,double,double,double,int},int,<float:2>,<char:2>,int,<float:5>,{double,double,double},{double,double,double},double,double,double,double,double,double,string}" |
#define | CARMEN_ROBOT_FRONTLASER_NAME "carmen_robot_frontlaser" |
#define | CARMEN_ROBOT_FRONTLASER_FMT CARMEN_ROBOT_LASER_FMT |
#define | CARMEN_ROBOT_REARLASER_NAME "carmen_robot_rearlaser" |
#define | CARMEN_ROBOT_REARLASER_FMT CARMEN_ROBOT_LASER_FMT |
#define | CARMEN_ROBOT_VECTOR_STATUS_NAME "carmen_robot_vector_status" |
#define | CARMEN_ROBOT_VECTOR_STATUS_FMT "{double, double, double, string}" |
#define | CARMEN_ROBOT_VELOCITY_NAME "carmen_robot_vel" |
#define | CARMEN_ROBOT_VELOCITY_FMT "{double,double,double,string}" |
#define | CARMEN_ROBOT_FOLLOW_TRAJECTORY_NAME "carmen_robot_follow_trajectory" |
#define | CARMEN_ROBOT_FOLLOW_TRAJECTORY_FMT "{int,<{double,double,double,double,double}:1>,{double,double,double,double,double},double,string}" |
#define | CARMEN_ROBOT_VECTOR_MOVE_NAME "carmen_robot_vector_move" |
#define | CARMEN_ROBOT_VECTOR_MOVE_FMT "{double,double,double,string}" |
Functions | |
double | carmen_robot_get_fraction (double timestamp, double skew, int *low, int *high) |
int | carmen_robot_get_skew (int msg_count, double *skew, int data_type, char *hostname) |
void | carmen_robot_update_skew (int data_type, int *count, double time, char *hostname) |
void | carmen_robot_subscribe_frontlaser_message (carmen_robot_laser_message *laser, carmen_handler_t handler, carmen_subscribe_t subscribe_how) |
void | carmen_robot_subscribe_rearlaser_message (carmen_robot_laser_message *laser, carmen_handler_t handler, carmen_subscribe_t subscribe_how) |
void | carmen_robot_subscribe_sonar_message (carmen_robot_sonar_message *sonar, carmen_handler_t handler, carmen_subscribe_t subscribe_how) |
void | carmen_robot_subscribe_vector_status_message (carmen_robot_vector_status_message *vector, carmen_handler_t handler, carmen_subscribe_t subscribe_how) |
void | carmen_robot_subscribe_base_binary_data_message (carmen_base_binary_data_message *base_data, carmen_handler_t handler, carmen_subscribe_t subscribe_how) |
void | carmen_robot_velocity_command (double tv, double rv) |
void | carmen_robot_move_along_vector (double distance, double theta) |
void | carmen_robot_follow_trajectory (carmen_traj_point_t *trajectory, int trajectory_length, carmen_traj_point_t *robot) |
void | carmen_robot_send_base_binary_command (unsigned char *data, int length) |
Variables | |
carmen_base_odometry_message | carmen_robot_latest_odometry |
carmen_base_odometry_message | carmen_robot_odometry [CARMEN_ROBOT_MAX_READINGS] |
int | carmen_robot_position_received |
int | carmen_robot_converge |
carmen_robot_config_t | carmen_robot_config |
char * | carmen_robot_host |
double | carmen_robot_collision_avoidance_frequency |
double | carmen_robot_sensor_time_of_last_update |
The module robot the provides an abstract view to the hardware. It combines the odometry information with the laser data...