The position3d proxy provides an interface to a mobile robot base, such as the Segway RMP series. More...
Detailed Description
The position3d proxy provides an interface to a mobile robot base, such as the Segway RMP series.
The proxy supports both differential drive robots (which are capable of forward motion and rotation) and omni-drive robots (which are capable of forward, sideways and rotational motion).
Classes | |
struct | playerc_position3d_t |
Position3d device data. More... | |
Functions | |
PLAYERC_EXPORT playerc_position3d_t * | playerc_position3d_create (playerc_client_t *client, int index) |
Create a position3d device proxy. More... | |
PLAYERC_EXPORT void | playerc_position3d_destroy (playerc_position3d_t *device) |
Destroy a position3d device proxy. More... | |
PLAYERC_EXPORT int | playerc_position3d_subscribe (playerc_position3d_t *device, int access) |
Subscribe to the position3d device. | |
PLAYERC_EXPORT int | playerc_position3d_unsubscribe (playerc_position3d_t *device) |
Un-subscribe from the position3d device. | |
PLAYERC_EXPORT int | playerc_position3d_enable (playerc_position3d_t *device, int enable) |
Enable/disable the motors. | |
PLAYERC_EXPORT int | playerc_position3d_get_geom (playerc_position3d_t *device) |
Get the position3d geometry. More... | |
PLAYERC_EXPORT int | playerc_position3d_set_velocity (playerc_position3d_t *device, double vx, double vy, double vz, double vr, double vp, double vt, int state) |
Set the target speed. More... | |
PLAYERC_EXPORT int | playerc_position3d_set_speed (playerc_position3d_t *device, double vx, double vy, double vz, int state) |
For compatibility with old position3d interface. | |
PLAYERC_EXPORT int | playerc_position3d_set_pose (playerc_position3d_t *device, double gx, double gy, double gz, double gr, double gp, double gt) |
Set the target pose (gx, gy, ga, gr, gp, gt) is the target pose in the odometric coordinate system. More... | |
PLAYERC_EXPORT int | playerc_position3d_set_pose_with_vel (playerc_position3d_t *device, player_pose3d_t pos, player_pose3d_t vel) |
Set the target pose (pos,vel) define desired position and motion speed. | |
PLAYERC_EXPORT int | playerc_position3d_set_cmd_pose (playerc_position3d_t *device, double gx, double gy, double gz) |
For compatibility with old position3d interface. | |
PLAYERC_EXPORT int | playerc_position3d_set_vel_mode (playerc_position3d_t *device, int mode) |
Set the velocity mode. More... | |
PLAYERC_EXPORT int | playerc_position3d_set_odom (playerc_position3d_t *device, double ox, double oy, double oz, double oroll, double opitch, double oyaw) |
Set the odometry offset. | |
PLAYERC_EXPORT int | playerc_position3d_reset_odom (playerc_position3d_t *device) |
Reset the odometry offset. | |
Function Documentation
◆ playerc_position3d_create()
PLAYERC_EXPORT playerc_position3d_t* playerc_position3d_create | ( | playerc_client_t * | client, |
int | index | ||
) |
Create a position3d device proxy.
◆ playerc_position3d_destroy()
PLAYERC_EXPORT void playerc_position3d_destroy | ( | playerc_position3d_t * | device | ) |
Destroy a position3d device proxy.
◆ playerc_position3d_get_geom()
PLAYERC_EXPORT int playerc_position3d_get_geom | ( | playerc_position3d_t * | device | ) |
Get the position3d geometry.
The writes the result into the proxy rather than returning it to the caller.
◆ playerc_position3d_set_pose()
PLAYERC_EXPORT int playerc_position3d_set_pose | ( | playerc_position3d_t * | device, |
double | gx, | ||
double | gy, | ||
double | gz, | ||
double | gr, | ||
double | gp, | ||
double | gt | ||
) |
Set the target pose (gx, gy, ga, gr, gp, gt) is the target pose in the odometric coordinate system.
◆ playerc_position3d_set_vel_mode()
PLAYERC_EXPORT int playerc_position3d_set_vel_mode | ( | playerc_position3d_t * | device, |
int | mode | ||
) |
Set the velocity mode.
This is driver dependent.
◆ playerc_position3d_set_velocity()
PLAYERC_EXPORT int playerc_position3d_set_velocity | ( | playerc_position3d_t * | device, |
double | vx, | ||
double | vy, | ||
double | vz, | ||
double | vr, | ||
double | vp, | ||
double | vt, | ||
int | state | ||
) |
Set the target speed.
vx : forward speed (m/s). vy : sideways speed (m/s); vz : vertical speed (m/s). vr : roll speed (rad/s) . vp : pitch speed (rad/s) . vt : theta speed (rad/s). All speeds are defined in the robot coordinate system.