limb
[Interface specifications]

Collaboration diagram for limb:


Detailed Description

A multi-jointed limb.

The 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
 Idle.
#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_STATE   1
 Data subtype: state.
#define PLAYER_LIMB_CMD_HOME   1
 Command: home (PLAYER_LIMB_HOME_CMD).
#define PLAYER_LIMB_CMD_STOP   2
 Command: stop (PLAYER_LIMB_STOP_CMD).
#define PLAYER_LIMB_CMD_SETPOSE   3
 Command subtype: set pose.
#define PLAYER_LIMB_CMD_SETPOSITION   4
 Command subtype: set position.
#define PLAYER_LIMB_CMD_VECMOVE   5
 Command subtype: vector move.
#define PLAYER_LIMB_REQ_POWER   1
 Request/reply: power.
#define PLAYER_LIMB_REQ_BRAKES   2
 Request/reply: brakes.
#define PLAYER_LIMB_REQ_GEOM   3
 Request/reply: geometry.
#define PLAYER_LIMB_REQ_SPEED   4
 Request/reply: speed.
typedef player_limb_data player_limb_data_t
 Data: state (PLAYER_LIMB_DATA).
typedef player_limb_setpose_cmd player_limb_setpose_cmd_t
 Command: Set end effector pose (PLAYER_LIMB_CMD_SETPOSE).
typedef player_limb_setposition_cmd player_limb_setposition_cmd_t
 Command: Set end effector position (PLAYER_LIMB_CMD_SETPOSITION).
typedef player_limb_vecmove_cmd player_limb_vecmove_cmd_t
 Command: Vector move the end effector (PLAYER_LIMB_CMD_VECMOVE).
typedef player_limb_power_req player_limb_power_req_t
 Request/reply: Power.
typedef player_limb_brakes_req player_limb_brakes_req_t
 Request/reply: Brakes.
typedef player_limb_geom_req player_limb_geom_req_t
 Request/reply: get geometry.
typedef player_limb_speed_req player_limb_speed_req_t
 Request/reply: Speed.

Define Documentation

#define PLAYER_LIMB_CMD_HOME   1

Command: home (PLAYER_LIMB_HOME_CMD).

Tells the end effector to return to its home position.

Definition at line 4297 of file player_interfaces.h.

Referenced by P2OS::HandleLimbCommand(), and P2OS::ProcessMessage().

#define PLAYER_LIMB_CMD_STOP   2

Command: stop (PLAYER_LIMB_STOP_CMD).

Tells the limb to stop moving immediatly.

Definition at line 4302 of file player_interfaces.h.

Referenced by P2OS::HandleLimbCommand(), and P2OS::ProcessMessage().


Typedef Documentation

Request/reply: Brakes.

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

Data: state (PLAYER_LIMB_DATA).

The limb data packet.

Request/reply: get geometry.

Query geometry by sending a null PLAYER_LIMB_REQ_GEOM reqest.

Request/reply: Power.

Turn the power to the limb by sending a PLAYER_LIMB_REQ_POWER 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_CMD_SETPOSE).

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

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_REQ_SPEED request. Null response.

Command: Vector move the end effector (PLAYER_LIMB_CMD_VECMOVE).

Move the end effector along the provided vector from its current position for the provided distance.


Last updated 12 September 2005 21:38:45