CartesianPositionController Class Reference

#include <RobotAPI/libraries/core/CartesianPositionController.h>

Public Member Functions

Eigen::VectorXf calculate (const Eigen::Matrix4f &targetPose, VirtualRobot::IKSolver::CartesianSelection mode) const
 
Eigen::VectorXf calculatePos (const Eigen::Vector3f &targetPos) const
 
 CartesianPositionController (CartesianPositionController &&)=default
 
 CartesianPositionController (const VirtualRobot::RobotNodePtr &tcp, const VirtualRobot::RobotNodePtr &referenceFrame=nullptr)
 
Eigen::Vector3f getOrientationDiff (const Eigen::Matrix4f &targetPose) const
 
float getOrientationError (const Eigen::Matrix4f &targetPose) const
 
Eigen::Vector3f getPositionDiff (const Eigen::Matrix4f &targetPose) const
 
Eigen::Vector3f getPositionDiffVec3 (const Eigen::Vector3f &targetPosition) const
 
float getPositionError (const Eigen::Matrix4f &targetPose) const
 
VirtualRobot::RobotNodePtr getTcp () const
 
CartesianPositionController & operator= (CartesianPositionController &&)=default
 
bool reached (const Eigen::Matrix4f &targetPose, VirtualRobot::IKSolver::CartesianSelection mode, float thresholdPosReached, float thresholdOriReached)
 

Static Public Member Functions

static float GetOrientationError (const Eigen::Matrix4f &targetPose, const VirtualRobot::RobotNodePtr &tcp, const VirtualRobot::RobotNodePtr &referenceFrame=nullptr)
 
static float GetPositionError (const Eigen::Matrix4f &targetPose, const VirtualRobot::RobotNodePtr &tcp, const VirtualRobot::RobotNodePtr &referenceFrame=nullptr)
 
static bool Reached (const Eigen::Matrix4f &targetPose, const VirtualRobot::RobotNodePtr &tcp, bool checkOri, float thresholdPosReached, float thresholdOriReached, const VirtualRobot::RobotNodePtr &referenceFrame=nullptr)
 

Public Attributes

float KpOri = 1
 
float KpPos = 1
 
float maxOriVel = -1
 
float maxPosVel = -1
 

Constructor & Destructor Documentation

◆ CartesianPositionController() [1/2]

CartesianPositionController ( const VirtualRobot::RobotNodePtr & tcp,
const VirtualRobot::RobotNodePtr & referenceFrame = nullptr )

◆ CartesianPositionController() [2/2]

Member Function Documentation

◆ calculate()

Eigen::VectorXf calculate ( const Eigen::Matrix4f & targetPose,
VirtualRobot::IKSolver::CartesianSelection mode ) const

◆ calculatePos()

Eigen::VectorXf calculatePos ( const Eigen::Vector3f & targetPos) const

◆ getOrientationDiff()

Eigen::Vector3f getOrientationDiff ( const Eigen::Matrix4f & targetPose) const

◆ GetOrientationError()

float GetOrientationError ( const Eigen::Matrix4f & targetPose,
const VirtualRobot::RobotNodePtr & tcp,
const VirtualRobot::RobotNodePtr & referenceFrame = nullptr )
static

◆ getOrientationError()

float getOrientationError ( const Eigen::Matrix4f & targetPose) const

◆ getPositionDiff()

Eigen::Vector3f getPositionDiff ( const Eigen::Matrix4f & targetPose) const

◆ getPositionDiffVec3()

Eigen::Vector3f getPositionDiffVec3 ( const Eigen::Vector3f & targetPosition) const

◆ GetPositionError()

float GetPositionError ( const Eigen::Matrix4f & targetPose,
const VirtualRobot::RobotNodePtr & tcp,
const VirtualRobot::RobotNodePtr & referenceFrame = nullptr )
static

◆ getPositionError()

float getPositionError ( const Eigen::Matrix4f & targetPose) const

◆ getTcp()

VirtualRobot::RobotNodePtr getTcp ( ) const

◆ operator=()

◆ Reached()

bool Reached ( const Eigen::Matrix4f & targetPose,
const VirtualRobot::RobotNodePtr & tcp,
bool checkOri,
float thresholdPosReached,
float thresholdOriReached,
const VirtualRobot::RobotNodePtr & referenceFrame = nullptr )
static

◆ reached()

bool reached ( const Eigen::Matrix4f & targetPose,
VirtualRobot::IKSolver::CartesianSelection mode,
float thresholdPosReached,
float thresholdOriReached )

Member Data Documentation

◆ KpOri

float KpOri = 1

◆ KpPos

float KpPos = 1

◆ maxOriVel

float maxOriVel = -1

◆ maxPosVel

float maxPosVel = -1

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