36 #include <visp3/core/vpConfig.h>
38 #include <visp3/robot/vpRobotException.h>
45 #include <visp3/core/vpHomogeneousMatrix.h>
46 #include <visp3/robot/vpRobotTemplate.h>
91 std::cout <<
"Not implemented ! " << std::endl;
102 std::cout <<
"Not implemented ! " << std::endl;
126 "Cannot send a velocity twist vector in tool frame that is not 6-dim (%d)", v.
size()));
172 std::cout <<
"Not implemented ! " << std::endl;
173 std::cout <<
"To implement me you need : " << std::endl;
174 std::cout <<
"\t to known the robot jacobian expressed in ";
175 std::cout <<
"the end-effector frame (eJe) " << std::endl;
176 std::cout <<
"\t the frame transformation between tool or camera frame ";
177 std::cout <<
"and end-effector frame (cMe)" << std::endl;
190 std::cout <<
"Not implemented ! " << std::endl;
206 "Cannot send a velocity to the robot. "
207 "Call setRobotState(vpRobot::STATE_VELOCITY_CONTROL) once before "
208 "entering your control loop.");
220 if (vel.
size() != 6) {
222 "Cannot apply a Cartesian velocity that is not a 6-dim vector (%d)", vel.
size()));
226 for (
unsigned int i = 0; i < 3; i++)
228 for (
unsigned int i = 3; i < 6; i++)
238 if (vel.
size() !=
static_cast<size_t>(
nDof)) {
268 std::cout <<
"Not implemented ! " << std::endl;
283 std::cout <<
"Not implemented ! " << std::endl;
297 std::cout <<
"Not implemented ! " << std::endl;
310 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