libfranka  0.8.0
FCI C++ API
Public Member Functions | Public Attributes | List of all members
franka::CartesianPose Class Reference

Stores values for Cartesian pose motion generation. More...

#include <control_types.h>

Inheritance diagram for franka::CartesianPose:
Inheritance graph
[legend]
Collaboration diagram for franka::CartesianPose:
Collaboration graph
[legend]

Public Member Functions

 CartesianPose (const std::array< double, 16 > &cartesian_pose) noexcept
 Creates a new CartesianPose instance. More...
 
 CartesianPose (const std::array< double, 16 > &cartesian_pose, const std::array< double, 2 > &elbow) noexcept
 Creates a new CartesianPose instance. More...
 
 CartesianPose (std::initializer_list< double > cartesian_pose)
 Creates a new CartesianPose instance. More...
 
 CartesianPose (std::initializer_list< double > cartesian_pose, std::initializer_list< double > elbow)
 Creates a new CartesianPose instance. More...
 
bool hasElbow () const noexcept
 Determines whether there is a stored elbow configuration. More...
 

Public Attributes

std::array< double, 16 > O_T_EE {}
 Homogeneous transformation \(^O{\mathbf{T}_{EE}}_{d}\), column major, that transforms from the end effector frame \(EE\) to base frame \(O\). More...
 
std::array< double, 2 > elbow {}
 Elbow configuration. More...
 
- Public Attributes inherited from franka::Finishable
bool motion_finished = false
 Determines whether to finish a currently running motion.
 

Detailed Description

Stores values for Cartesian pose motion generation.

Examples:
generate_cartesian_pose_motion.cpp, generate_elbow_motion.cpp, and joint_impedance_control.cpp.

Constructor & Destructor Documentation

◆ CartesianPose() [1/4]

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

Creates a new CartesianPose instance.

Parameters
[in]cartesian_poseDesired vectorized homogeneous transformation matrix \(^O {\mathbf{T}_{EE}}_{d}\), 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() [2/4]

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

Creates a new CartesianPose instance.

Parameters
[in]cartesian_poseDesired vectorized homogeneous transformation matrix \(^O {\mathbf{T}_{EE}}_{d}\), 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.
[in]elbowElbow configuration (see elbow member for more details).

◆ CartesianPose() [3/4]

franka::CartesianPose::CartesianPose ( std::initializer_list< double >  cartesian_pose)

Creates a new CartesianPose instance.

Parameters
[in]cartesian_poseDesired vectorized homogeneous transformation matrix \(^O {\mathbf{T}_{EE}}_{d}\), 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.
Exceptions
std::invalid_argumentif the given initializer list has an invalid number of arguments.

◆ CartesianPose() [4/4]

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

Creates a new CartesianPose instance.

Parameters
[in]cartesian_poseDesired vectorized homogeneous transformation matrix \(^O {\mathbf{T}_{EE}}_{d}\), 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.
[in]elbowElbow configuration (see elbow member for more details).
Exceptions
std::invalid_argumentif a given initializer list has an invalid number of arguments.

Member Function Documentation

◆ hasElbow()

bool franka::CartesianPose::hasElbow ( ) const
noexcept

Determines whether there is a stored elbow configuration.

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

Member Data Documentation

◆ elbow

std::array<double, 2> franka::CartesianPose::elbow {}

Elbow configuration.

The values of the array are:

  • [0] Position of the 3rd joint in [rad].
  • [1] Sign of the 4th joint. Can be +1 or -1.

◆ O_T_EE

std::array<double, 16> franka::CartesianPose::O_T_EE {}

Homogeneous transformation \(^O{\mathbf{T}_{EE}}_{d}\), 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.

Examples:
joint_impedance_control.cpp.

The documentation for this class was generated from the following file: