Definition
Quick Access Poses helps to develop Programs faster. Define custom poses to make them easily accessible through the Control Panel.
Create Quick Access Poses¶
Quick Access Poses are defined in ~/.dnb/data/quick_access_poses
.
Each needs a separate directory (e.g. ~/.dnb/data/quick_access_poses/example
) containing a YAML file with the pose definition.
Structure¶
The following code shows the structure of a Quick Access Pose YAML file.
trajectory: # list of poses
- position?: # list entry has to contain either 1. position and/or orientation
x: float # 2. joints
y: float
z: float
orientation?:
rz: float
ry: float
rx: float
- joints?: float[]
precondition?: # has to contain either 1. a position and/or orientation
positon?: # 2. joints
x: float
y: float
z: float
position_tolerance?: float
orientation?:
rz: float
ry: float
rx: float
orientation_tolerance?: float
joints?: float[]
joints_tolerance?: float
tcp?:
translation:
x: float
y: float
z: float
rotation:
rz: float
ry: float
rx: float
tooltip?: string # tooltip shown if precondition is not fullfilled
image?: string # name of the image file contained in the same directory as the yaml file
?
are optional. The mark ?
is just informative, please don't write it in the YAML file.
Trajectory¶
trajectory: # list of poses
- position?: # list entry has to contain either 1. position and/or orientation
x: float # 2. joints
y: float
z: float
orientation?:
rz: float
ry: float
rx: float
- joints?: float[]
- position and/or orientation
- joints
If only a position is provided the orientation will stay as it is and vice versa. When using joints, the joints array should have as many entries as the robot has joints. Orientation and joints need to be set in radians.
Preconditions¶
precondition?: # has to contain either a position or an orientation
positon?:
x: float
y: float
z: float
position_tolerance?: float
orientation?:
rz: float
ry: float
rx: float
orientation_tolerance?: float
joints?: float[]
joints_tolerance?: float
- position, orientation or both or
- joints
By default the robot needs to be inside a distance of 0.005 m for position and 0.005 rad for orientation/joints from the precondition pose. These values can be changed by setting the position_tolerance, the orientation_tolerance and the joints_tolerance fields. Orientation and joints need to be set in radians.
TCP¶
tcp?:
translation:
x: float
y: float
z: float
rotation:
rz: float
ry: float
rx: float
Tool tip¶
tooltip?: string # tool tip shown if precondition is not fulfilled
Image¶
image?: string # name of the image file contained in the same directory as the YAML file