limb
[Interface specifications]


Detailed Description

A multi-jointed limbThe limb interface provides access to a multi-jointed limb
Todo:
Use pre-defined types, like player_pose3d_t, wherever possible

#define PLAYER_LIMB_STATE_IDLE   1
#define PLAYER_LIMB_STATE_BRAKED   2
 Brakes are on.
#define PLAYER_LIMB_STATE_MOVING   3
 Moving to target.
#define PLAYER_LIMB_STATE_OOR   4
 Target was out of reach.
#define PLAYER_LIMB_STATE_COLL   5
 Target was blocked by collision.
#define PLAYER_LIMB_DATA   1
 Data subtype: state.
#define PLAYER_LIMB_HOME_CMD   1
 Command subtype: home.
#define PLAYER_LIMB_STOP_CMD   2
 Command subtype: stop.
#define PLAYER_LIMB_SETPOSE_CMD   3
 Command subtype: set pose.
#define PLAYER_LIMB_SETPOSITION_CMD   4
 Command subtype: set position.
#define PLAYER_LIMB_VECMOVE_CMD   5
 Command subtype: vector move.
#define PLAYER_LIMB_POWER_REQ   1
 Request/reply: power.
#define PLAYER_LIMB_BRAKES_REQ   2
 Request/reply: brakes.
#define PLAYER_LIMB_GEOM_REQ   3
 Request/reply: geometry.
#define PLAYER_LIMB_SPEED_REQ   4
 Request/reply: speed.
typedef struct
player_limb_data 
player_limb_data_t
typedef struct
player_limb_home_cmd 
player_limb_home_cmd_t
typedef struct
player_limb_stop_cmd 
player_limb_stop_cmd_t
typedef struct
player_limb_setpose_cmd 
player_limb_setpose_cmd_t
typedef struct
player_limb_setposition_cmd 
player_limb_setposition_cmd_t
typedef struct
player_limb_vecmove_cmd 
player_limb_vecmove_cmd_t
typedef struct
player_limb_power_req 
player_limb_power_req_t
typedef struct
player_limb_brakes_req 
player_limb_brakes_req_t
typedef struct
player_limb_geom_req 
player_limb_geom_req_t
typedef struct
player_limb_speed_req 
player_limb_speed_req_t

Define Documentation

#define PLAYER_LIMB_STATE_IDLE   1

Idle


Typedef Documentation

Request/reply: Brakes.

Turn the brakes of the limb on or off by sending a PLAYER_LIMB_BRAKES_REQ request. Null response

Data: state (PLAYER_LIMB_DATA) The limb data packet.

Request/reply: get geometryQuery geometry by sending a null PLAYER_LIMB_GEOM_REQ reqest.

Command: home (PLAYER_LIMB_HOME_CMD)Tells the end effector to return to its home position.

Request/reply: Power.

Turn the power to the limb by sending a PLAYER_LIMB_POWER_REQ request. Be careful when turning power on that the limb is not obstructed from its home position in case it moves to it (common behaviour). Null reponse

Command: Set end effector pose (PLAYER_LIMB_SETPOSE_CMD)Provides a fully-described pose (position, normal vector and orientation vector) for the end effector to move to.

Command: Set end effector position (PLAYER_LIMB_SETPOSITION_CMD)Set the position of the end effector without worrying about a specific orientation.

Request/reply: Speed.

Set the speed of the end effector for all subsequent movements by sending a PLAYER_LIMB_SPEED_REQ request. Null response.

Command: stop (PLAYER_LIMB_STOP_CMD)Tells the limb to stop moving immediatly.

Command: Vector move the end effector (PLAYER_LIMB_VECMOVE_CMD)Move the end effector along the provided vector from its current position for the provided distance.


Last updated 12 September 2005 21:38:45