Class CartesianPose

Inheritance Relationships

Base Type

Class Documentation

class CartesianPose : public franka::Finishable

Stores values for Cartesian pose motion generation.

Public Functions

CartesianPose(const std::array<double, 16> &cartesian_pose) noexcept

Creates a new CartesianPose instance.

Parameters:

cartesian_pose[in] Desired vectorized homogeneous transformation matrix OTEEd, column major, that transforms from the end effector frame EE to base frame O. Equivalently, it is the desired end effector pose in base frame.

CartesianPose(const std::array<double, 16> &cartesian_pose, const std::array<double, 2> &elbow) noexcept

Creates a new CartesianPose instance.

Parameters:
  • cartesian_pose[in] Desired vectorized homogeneous transformation matrix OTEEd, column major, that transforms from the end effector frame EE to base frame O. Equivalently, it is the desired end effector pose in base frame.

  • elbow[in] Elbow configuration (see elbow member for more details).

CartesianPose(std::initializer_list<double> cartesian_pose)

Creates a new CartesianPose instance.

Parameters:

cartesian_pose[in] Desired vectorized homogeneous transformation matrix OTEEd, column major, that transforms from the end effector frame EE to base frame O. Equivalently, it is the desired end effector pose in base frame.

Throws:

std::invalid_argument – if the given initializer list has an invalid number of arguments.

CartesianPose(std::initializer_list<double> cartesian_pose, std::initializer_list<double> elbow)

Creates a new CartesianPose instance.

Parameters:
  • cartesian_pose[in] Desired vectorized homogeneous transformation matrix OTEEd, column major, that transforms from the end effector frame EE to base frame O. Equivalently, it is the desired end effector pose in base frame.

  • elbow[in] Elbow configuration (see elbow member for more details).

Throws:

std::invalid_argument – if a given initializer list has an invalid number of arguments.

bool hasElbow() const noexcept

Determines whether there is a stored elbow configuration.

Returns:

True if there is a stored elbow configuration, false otherwise.

Public Members

std::array<double, 16> O_T_EE = {}

Homogeneous transformation OTEEd, column major, that transforms from the end effector frame EE to base frame O. Equivalently, it is the desired end effector pose in base frame.

std::array<double, 2> elbow = {}

Elbow configuration.

The values of the array are:

  • elbow[0]: Position of the 3rd joint in [rad].

  • elbow[1]: Flip direction of the elbow (4th joint):

    • +1 if q4>qelbowflip

    • 0 if q4==qelbowflip

    • -1 if q4<qelbowflip

with qelbowflip as specified in the robot interface specification page in the FCI Documentation.