28#include <VirtualRobot/IK/JacobiProvider.h>
29#include <VirtualRobot/VirtualRobot.h>
52 const Eigen::Matrix4f& target);
55 const std::vector<Eigen::Matrix4f>&
waypoints);
60 void readConfig(
const CartesianPositionControllerConfigBase& config);
61 void readConfig(
const CartesianPositionControllerConfigBasePtr& config);
74 void setTarget(
const Eigen::Matrix4f& target);
77 const Eigen::Vector3f& feedForwardVelocityOri);
113 VirtualRobot::IKSolver::All;
115 VirtualRobot::JacobiProvider::eSVD;
128 const VirtualRobot::RobotNodeSetPtr& rns,
129 const Eigen::Matrix4f& target,
float getPositionError() const
size_t currentWaypointIndex
bool autoClearFeedForward
void setNullSpaceControl(bool enabled)
CartesianPositionController posController
void readConfig(const CartesianPositionControllerConfigBase &config)
bool isLastWaypoint() const
static bool OptimizeNullspace(const VirtualRobot::RobotNodePtr &tcp, const VirtualRobot::RobotNodeSetPtr &rns, const Eigen::Matrix4f &target, const NullspaceOptimizationArgs &args=NullspaceOptimizationArgs())
OptimizeNullspace.
std::vector< Eigen::Matrix4f > waypoints
const Eigen::Matrix4f & getCurrentTarget() const
VelocityControllerHelperPtr velocityControllerHelper
float thresholdPositionNear
size_t skipToClosestWaypoint(float rad2mmFactor)
float thresholdPositionReached
void immediateHardStop(bool clearTargets=true)
Eigen::Vector6f feedForwardVelocity
void clearFeedForwardVelocity()
void setTarget(const Eigen::Matrix4f &target)
const Eigen::Vector3f getCurrentTargetPosition() const
bool isCurrentTargetNear() const
float getOrientationError() const
PositionControllerHelper(const VirtualRobot::RobotNodePtr &tcp, const VelocityControllerHelperPtr &velocityControllerHelper, const Eigen::Matrix4f &target)
bool isFinalTargetNear() const
bool isCurrentTargetReached() const
void setNewWaypoints(const std::vector< Eigen::Matrix4f > &waypoints)
std::string getStatusText()
void setFeedForwardVelocity(const Eigen::Vector6f &feedForwardVelocity)
void addWaypoint(const Eigen::Matrix4f &waypoint)
bool isFinalTargetReached() const
float thresholdOrientationReached
float thresholdOrientationNear
Matrix< float, 6, 1 > Vector6f
This file offers overloads of toIce() and fromIce() functions for STL container types.
std::shared_ptr< VelocityControllerHelper > VelocityControllerHelperPtr
std::shared_ptr< PositionControllerHelper > PositionControllerHelperPtr
VirtualRobot::IKSolver::CartesianSelection cartesianSelection
VirtualRobot::JacobiProvider::InverseJacobiMethod invJacMethod
float maxPoseErrorIncrease
float maxOriErrorIncrease
NullspaceOptimizationArgs()