Data structure representing the customized data type "COORD" in Flexiv Elements.
More...
#include <data.hpp>
|
| Coord (const std::array< double, kCartDoF/2 > &_position, const std::array< double, kCartDoF/2 > &_orientation, const std::array< std::string, 2 > &_ref_frame, const std::array< double, kSerialJointDoF > &_ref_q={}, const std::array< double, kMaxExtAxes > &_ref_q_e={}) |
| Construct an instance of Coord. More...
|
|
std::string | str () const |
|
|
std::array< double, kCartDoF/2 > | position = {} |
|
std::array< double, kCartDoF/2 > | orientation = {} |
|
std::array< std::string, 2 > | ref_frame = {} |
|
std::array< double, kSerialJointDoF > | ref_q = {} |
|
std::array< double, kMaxExtAxes > | ref_q_e = {} |
|
Data structure representing the customized data type "COORD" in Flexiv Elements.
- Warning
- Here [m] is used as the unit of length, whereas [mm] is used in Flexiv Elements. The conversion is automatically done when exchanging "COORD" data type with the robot via functions like Robot::ExecutePrimitive(), Robot::SetGlobalVariables(), Robot::global_variables(), etc.
Definition at line 333 of file data.hpp.
◆ Coord()
flexiv::rdk::Coord::Coord |
( |
const std::array< double, kCartDoF/2 > & |
_position, |
|
|
const std::array< double, kCartDoF/2 > & |
_orientation, |
|
|
const std::array< std::string, 2 > & |
_ref_frame, |
|
|
const std::array< double, kSerialJointDoF > & |
_ref_q = {} , |
|
|
const std::array< double, kMaxExtAxes > & |
_ref_q_e = {} |
|
) |
| |
|
inline |
Construct an instance of Coord.
- Parameters
-
[in] | _position | Sets struct member [position]. |
[in] | _orientation | Sets struct member [orientation]. |
[in] | _ref_frame | Sets struct member [ref_frame]. |
[in] | _ref_q | Sets struct member [ref_q]. Leave empty to use default values. |
[in] | _ref_q_e | Sets struct member [ref_q_e]. Leave empty if there's no external axis. |
Definition at line 343 of file data.hpp.
◆ str()
std::string flexiv::rdk::Coord::str |
( |
| ) |
const |
String representation of all data in the struct, separated by space
◆ orientation
std::array<double, kCartDoF / 2> flexiv::rdk::Coord::orientation = {} |
Orientation in terms of Euler angles in [ref_frame]. Unit: [degree]
Definition at line 361 of file data.hpp.
◆ position
std::array<double, kCartDoF / 2> flexiv::rdk::Coord::position = {} |
Position in [ref_frame]. Unit: [m]
Definition at line 358 of file data.hpp.
◆ ref_frame
std::array<std::string, 2> flexiv::rdk::Coord::ref_frame = {} |
Name of the reference frame "root::branch" represented as {"root", "branch"}. Refer to Flexiv Elements for available options. Some common ones are:
- World origin: {"WORLD", "WORLD_ORIGIN"}
- Current pose: {"TRAJ", "START"}
- A work coordinate: {"WORK", "WorkCoord0"}
- A global variable: {"GVAR", "MyCoord0"}
Definition at line 370 of file data.hpp.
◆ ref_q
std::array<double, kSerialJointDoF> flexiv::rdk::Coord::ref_q = {} |
Reference joint positions of the arm. Only effective on robots with redundant degrees of freedom. Unit: [degree]
- Note
- Leave empty to use default values. However, this array cannot be empty if [ref_q_e] has values
Definition at line 376 of file data.hpp.
◆ ref_q_e
std::array<double, kMaxExtAxes> flexiv::rdk::Coord::ref_q_e = {} |
Reference joint positions (linear or angular) of the external axes. Only effective on robots with redundant degrees of freedom and external axes. Unit: [m] or [degree]
- Note
- If the number of external axes \( n_e < kMaxExtAxes \), set the first \( n_e \) elements and leave the rest 0. Leave the whole array empty if there's no external axis.
Definition at line 382 of file data.hpp.
The documentation for this struct was generated from the following file: