[Device proxies]

Collaboration diagram for position3d:

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).


struct  playerc_position3d_t
 Position3d device data. More...


playerc_position3d_tplayerc_position3d_create (playerc_client_t *client, int index)
 Create a position3d device proxy.
void playerc_position3d_destroy (playerc_position3d_t *device)
 Destroy a position3d device proxy.
int playerc_position3d_subscribe (playerc_position3d_t *device, int access)
 Subscribe to the position3d device.
int playerc_position3d_unsubscribe (playerc_position3d_t *device)
 Un-subscribe from the position3d device.
int playerc_position3d_enable (playerc_position3d_t *device, int enable)
 Enable/disable the motors.
int playerc_position3d_get_geom (playerc_position3d_t *device)
 Get the position3d geometry.
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.
int playerc_position3d_set_speed (playerc_position3d_t *device, double vx, double vy, double vz, int state)
 For compatibility with old position3d interface.
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.
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.
int playerc_position3d_set_cmd_pose (playerc_position3d_t *device, double gx, double gy, double gz)
 For compatibility with old position3d interface.
int playerc_position3d_set_vel_mode (playerc_position3d_t *device, int mode)
 Set the velocity mode.
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.
int playerc_position3d_reset_odom (playerc_position3d_t *device)
 Reset the odometry offset.

Function Documentation

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.

int playerc_position3d_set_vel_mode ( playerc_position3d_t device,
int  mode 

Set the velocity mode.

This is driver dependent.

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.

Last updated 12 September 2005 21:38:45