34#include <visp3/core/vpConfig.h>
36#include <visp3/robot/vpRobotException.h>
43#include <visp3/core/vpHomogeneousMatrix.h>
44#include <visp3/robot/vpRobotTemplate.h>
89 std::cout <<
"Not implemented ! " << std::endl;
100 std::cout <<
"Not implemented ! " << std::endl;
124 "Cannot send a velocity twist vector in tool frame that is not 6-dim (%d)", v.size()));
170 std::cout <<
"Not implemented ! " << std::endl;
171 std::cout <<
"To implement me you need : " << std::endl;
172 std::cout <<
"\t to known the robot jacobian expressed in ";
173 std::cout <<
"the end-effector frame (eJe) " << std::endl;
174 std::cout <<
"\t the frame transformation between tool or camera frame ";
175 std::cout <<
"and end-effector frame (cMe)" << std::endl;
188 std::cout <<
"Not implemented ! " << std::endl;
204 "Cannot send a velocity to the robot. "
205 "Call setRobotState(vpRobot::STATE_VELOCITY_CONTROL) once before "
206 "entering your control loop.");
218 if (vel.
size() != 6) {
220 "Cannot apply a Cartesian velocity that is not a 6-dim vector (%d)", vel.
size()));
224 for (
unsigned int i = 0; i < 3; i++)
226 for (
unsigned int i = 3; i < 6; i++)
236 if (vel.
size() !=
static_cast<size_t>(
nDof)) {
266 std::cout <<
"Not implemented ! " << std::endl;
281 std::cout <<
"Not implemented ! " << std::endl;
295 std::cout <<
"Not implemented ! " << std::endl;
308 std::cout <<
"Not implemented ! " << std::endl;
unsigned int size() const
Return the number of elements of the 2D array.
Implementation of column vector and the associated operations.
error that can be emitted by ViSP classes.
@ dimensionError
Bad dimension.
Implementation of a matrix and operations on matrices.
Error that can be emitted by the vpRobot class and its derivatives.
@ wrongStateError
Wrong robot state.
void setVelocity(const vpRobot::vpControlFrameType frame, const vpColVector &vel) VP_OVERRIDE
void getJointPosition(vpColVector &q)
void setPosition(const vpRobot::vpControlFrameType frame, const vpColVector &q) VP_OVERRIDE
void get_fJe(vpMatrix &fJe_) VP_OVERRIDE
void setCartVelocity(const vpRobot::vpControlFrameType frame, const vpColVector &v)
vpHomogeneousMatrix m_eMc
Constant transformation between end-effector and tool (or camera) frame.
virtual ~vpRobotTemplate() VP_OVERRIDE
void get_eJe(vpMatrix &eJe_) VP_OVERRIDE
void getDisplacement(const vpRobot::vpControlFrameType frame, vpColVector &q) VP_OVERRIDE
void setJointVelocity(const vpColVector &qdot)
void getPosition(const vpRobot::vpControlFrameType frame, vpColVector &q) VP_OVERRIDE
int nDof
number of degrees of freedom
virtual vpRobotStateType getRobotState(void) const
static vpColVector saturateVelocities(const vpColVector &v_in, const vpColVector &v_max, bool verbose=false)
static const double maxRotationVelocityDefault
@ STATE_VELOCITY_CONTROL
Initialize the velocity controller.
static const double maxTranslationVelocityDefault
double getMaxRotationVelocity(void) const
double maxTranslationVelocity
double getMaxTranslationVelocity(void) const
double maxRotationVelocity