PositionControllerHelper Class Reference

#include <RobotAPI/libraries/RobotStatechartHelpers/PositionControllerHelper.h>

Classes

struct  NullspaceOptimizationArgs
 

Public Member Functions

void addWaypoint (const Eigen::Matrix4f &waypoint)
 
void clearFeedForwardVelocity ()
 
const Eigen::Matrix4f & getCurrentTarget () const
 
const Eigen::Vector3f getCurrentTargetPosition () const
 
float getOrientationError () const
 
float getPositionError () const
 
std::string getStatusText ()
 
void immediateHardStop (bool clearTargets=true)
 
bool isCurrentTargetNear () const
 
bool isCurrentTargetReached () const
 
bool isFinalTargetNear () const
 
bool isFinalTargetReached () const
 
bool isLastWaypoint () const
 
 PositionControllerHelper (const VirtualRobot::RobotNodePtr &tcp, const VelocityControllerHelperPtr &velocityControllerHelper, const Eigen::Matrix4f &target)
 
 PositionControllerHelper (const VirtualRobot::RobotNodePtr &tcp, const VelocityControllerHelperPtr &velocityControllerHelper, const std::vector< Eigen::Matrix4f > &waypoints)
 
 PositionControllerHelper (const VirtualRobot::RobotNodePtr &tcp, const VelocityControllerHelperPtr &velocityControllerHelper, const std::vector< PosePtr > &waypoints)
 
void readConfig (const CartesianPositionControllerConfigBase &config)
 
void readConfig (const CartesianPositionControllerConfigBasePtr &config)
 
void setFeedForwardVelocity (const Eigen::Vector3f &feedForwardVelocityPos, const Eigen::Vector3f &feedForwardVelocityOri)
 
void setFeedForwardVelocity (const Eigen::Vector6f &feedForwardVelocity)
 
void setNewWaypoints (const std::vector< Eigen::Matrix4f > &waypoints)
 
void setNewWaypoints (const std::vector< PosePtr > &waypoints)
 
void setNullSpaceControl (bool enabled)
 
void setTarget (const Eigen::Matrix4f &target)
 
size_t skipToClosestWaypoint (float rad2mmFactor)
 
void update ()
 
void updateRead ()
 
void updateWrite ()
 

Static Public Member Functions

static bool OptimizeNullspace (const VirtualRobot::RobotNodePtr &tcp, const VirtualRobot::RobotNodeSetPtr &rns, const Eigen::Matrix4f &target, const NullspaceOptimizationArgs &args=NullspaceOptimizationArgs())
 OptimizeNullspace. More...
 

Public Attributes

bool autoClearFeedForward = true
 
size_t currentWaypointIndex = 0
 
Eigen::Vector6f feedForwardVelocity = Eigen::Vector6f::Zero()
 
CartesianPositionController posController
 
float thresholdOrientationNear = 0
 
float thresholdOrientationReached = 0
 
float thresholdPositionNear = 0
 
float thresholdPositionReached = 0
 
VelocityControllerHelperPtr velocityControllerHelper
 
std::vector< Eigen::Matrix4f > waypoints
 

Detailed Description

Definition at line 47 of file PositionControllerHelper.h.

Constructor & Destructor Documentation

◆ PositionControllerHelper() [1/3]

PositionControllerHelper ( const VirtualRobot::RobotNodePtr &  tcp,
const VelocityControllerHelperPtr velocityControllerHelper,
const Eigen::Matrix4f &  target 
)

Definition at line 35 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:

◆ PositionControllerHelper() [2/3]

PositionControllerHelper ( const VirtualRobot::RobotNodePtr &  tcp,
const VelocityControllerHelperPtr velocityControllerHelper,
const std::vector< Eigen::Matrix4f > &  waypoints 
)

Definition at line 41 of file PositionControllerHelper.cpp.

◆ PositionControllerHelper() [3/3]

PositionControllerHelper ( const VirtualRobot::RobotNodePtr &  tcp,
const VelocityControllerHelperPtr velocityControllerHelper,
const std::vector< PosePtr > &  waypoints 
)

Definition at line 46 of file PositionControllerHelper.cpp.

Member Function Documentation

◆ addWaypoint()

void addWaypoint ( const Eigen::Matrix4f &  waypoint)

Definition at line 113 of file PositionControllerHelper.cpp.

◆ clearFeedForwardVelocity()

void clearFeedForwardVelocity ( )

Definition at line 136 of file PositionControllerHelper.cpp.

+ Here is the caller graph for this function:

◆ getCurrentTarget()

const Eigen::Matrix4f & getCurrentTarget ( ) const

Definition at line 185 of file PositionControllerHelper.cpp.

+ Here is the caller graph for this function:

◆ getCurrentTargetPosition()

const Eigen::Vector3f getCurrentTargetPosition ( ) const

Definition at line 190 of file PositionControllerHelper.cpp.

◆ getOrientationError()

float getOrientationError ( ) const

Definition at line 155 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getPositionError()

float getPositionError ( ) const

Definition at line 150 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getStatusText()

std::string getStatusText ( )

Definition at line 219 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:

◆ immediateHardStop()

void immediateHardStop ( bool  clearTargets = true)

Definition at line 141 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:

◆ isCurrentTargetNear()

bool isCurrentTargetNear ( ) const

Definition at line 165 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isCurrentTargetReached()

bool isCurrentTargetReached ( ) const

Definition at line 160 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isFinalTargetNear()

bool isFinalTargetNear ( ) const

Definition at line 175 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:

◆ isFinalTargetReached()

bool isFinalTargetReached ( ) const

Definition at line 170 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:

◆ isLastWaypoint()

bool isLastWaypoint ( ) const

Definition at line 180 of file PositionControllerHelper.cpp.

+ Here is the caller graph for this function:

◆ OptimizeNullspace()

bool OptimizeNullspace ( const VirtualRobot::RobotNodePtr &  tcp,
const VirtualRobot::RobotNodeSetPtr &  rns,
const Eigen::Matrix4f &  target,
const NullspaceOptimizationArgs args = NullspaceOptimizationArgs() 
)
static

OptimizeNullspace.

Parameters
tcp
rns
targettarget pose in root frame of the robot
args
Returns

Definition at line 227 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:

◆ readConfig() [1/2]

void readConfig ( const CartesianPositionControllerConfigBase &  config)

Definition at line 55 of file PositionControllerHelper.cpp.

+ Here is the caller graph for this function:

◆ readConfig() [2/2]

void readConfig ( const CartesianPositionControllerConfigBasePtr &  config)

Definition at line 67 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:

◆ setFeedForwardVelocity() [1/2]

void setFeedForwardVelocity ( const Eigen::Vector3f &  feedForwardVelocityPos,
const Eigen::Vector3f &  feedForwardVelocityOri 
)

Definition at line 130 of file PositionControllerHelper.cpp.

◆ setFeedForwardVelocity() [2/2]

void setFeedForwardVelocity ( const Eigen::Vector6f feedForwardVelocity)

Definition at line 125 of file PositionControllerHelper.cpp.

◆ setNewWaypoints() [1/2]

void setNewWaypoints ( const std::vector< Eigen::Matrix4f > &  waypoints)

Definition at line 97 of file PositionControllerHelper.cpp.

◆ setNewWaypoints() [2/2]

void setNewWaypoints ( const std::vector< PosePtr > &  waypoints)

Definition at line 103 of file PositionControllerHelper.cpp.

◆ setNullSpaceControl()

void setNullSpaceControl ( bool  enabled)

Definition at line 214 of file PositionControllerHelper.cpp.

◆ setTarget()

void setTarget ( const Eigen::Matrix4f &  target)

Definition at line 118 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ skipToClosestWaypoint()

size_t skipToClosestWaypoint ( float  rad2mmFactor)

Definition at line 195 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:

◆ update()

void update ( )

Definition at line 72 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:

◆ updateRead()

void updateRead ( )

Definition at line 78 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateWrite()

void updateWrite ( )

Definition at line 86 of file PositionControllerHelper.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ autoClearFeedForward

bool autoClearFeedForward = true

Definition at line 127 of file PositionControllerHelper.h.

◆ currentWaypointIndex

size_t currentWaypointIndex = 0

Definition at line 120 of file PositionControllerHelper.h.

◆ feedForwardVelocity

Eigen::Vector6f feedForwardVelocity = Eigen::Vector6f::Zero()

Definition at line 126 of file PositionControllerHelper.h.

◆ posController

Definition at line 116 of file PositionControllerHelper.h.

◆ thresholdOrientationNear

float thresholdOrientationNear = 0

Definition at line 125 of file PositionControllerHelper.h.

◆ thresholdOrientationReached

float thresholdOrientationReached = 0

Definition at line 123 of file PositionControllerHelper.h.

◆ thresholdPositionNear

float thresholdPositionNear = 0

Definition at line 124 of file PositionControllerHelper.h.

◆ thresholdPositionReached

float thresholdPositionReached = 0

Definition at line 122 of file PositionControllerHelper.h.

◆ velocityControllerHelper

VelocityControllerHelperPtr velocityControllerHelper

Definition at line 117 of file PositionControllerHelper.h.

◆ waypoints

std::vector<Eigen::Matrix4f> waypoints

Definition at line 119 of file PositionControllerHelper.h.


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