![]() |
ViSP
2.6.2
|
#include <vpSimulatorAfma6.h>
Public Types | |
enum | vpDisplayRobotType { MODEL_3D, MODEL_DH } |
enum | vpRobotStateType { STATE_STOP, STATE_VELOCITY_CONTROL, STATE_POSITION_CONTROL, STATE_ACCELERATION_CONTROL } |
enum | vpControlFrameType { REFERENCE_FRAME, ARTICULAR_FRAME, CAMERA_FRAME, MIXT_FRAME } |
enum | vpAfma6ToolType { TOOL_CCMOP, TOOL_GRIPPER, TOOL_VACUUM, TOOL_GENERIC_CAMERA } |
Static Public Member Functions | |
static bool | readPosFile (const char *filename, vpColVector &q) |
static bool | savePosFile (const char *filename, const vpColVector &q) |
static vpColVector | saturateVelocities (const vpColVector &v_in, const vpColVector &v_max, bool verbose=false) |
Public Attributes | |
vpImage< vpRGBa > | I |
Static Public Attributes | |
static const double | defaultPositioningVelocity = 25.0 |
static const vpRobot::vpRobotStateType | defaultEtatRobot = vpRobot::STATE_STOP |
static const vpRobot::vpControlFrameType | defaultFrameRobot = vpRobot::CAMERA_FRAME |
static const char *const | CONST_AFMA6_FILENAME = "Z:/robot/Afma6/current/include/const_Afma6.cnf" |
static const char *const | CONST_EMC_CCMOP_WITHOUT_DISTORTION_FILENAME = "Z:/robot/Afma6/current/include/const_eMc_ccmop_without_distortion_Afma6.cnf" |
static const char *const | CONST_EMC_CCMOP_WITH_DISTORTION_FILENAME = "Z:/robot/Afma6/current/include/const_eMc_ccmop_with_distortion_Afma6.cnf" |
static const char *const | CONST_EMC_GRIPPER_WITHOUT_DISTORTION_FILENAME = "Z:/robot/Afma6/current/include/const_eMc_gripper_without_distortion_Afma6.cnf" |
static const char *const | CONST_EMC_GRIPPER_WITH_DISTORTION_FILENAME = "Z:/robot/Afma6/current/include/const_eMc_gripper_with_distortion_Afma6.cnf" |
static const char *const | CONST_EMC_VACUUM_WITHOUT_DISTORTION_FILENAME = "Z:/robot/Afma6/current/include/const_eMc_vacuum_without_distortion_Afma6.cnf" |
static const char *const | CONST_EMC_VACUUM_WITH_DISTORTION_FILENAME = "Z:/robot/Afma6/current/include/const_eMc_vacuum_with_distortion_Afma6.cnf" |
static const char *const | CONST_EMC_GENERIC_WITHOUT_DISTORTION_FILENAME = "Z:/robot/Afma6/current/include/const_eMc_generic_without_distortion_Afma6.cnf" |
static const char *const | CONST_EMC_GENERIC_WITH_DISTORTION_FILENAME = "Z:/robot/Afma6/current/include/const_eMc_generic_with_distortion_Afma6.cnf" |
static const char *const | CONST_CAMERA_AFMA6_FILENAME = "Z:/robot/Afma6/current/include/const_camera_Afma6.xml" |
static const char *const | CONST_CCMOP_CAMERA_NAME = "Dragonfly2-8mm-ccmop" |
static const char *const | CONST_GRIPPER_CAMERA_NAME = "Dragonfly2-6mm-gripper" |
static const char *const | CONST_VACUUM_CAMERA_NAME = "Dragonfly2-6mm-vacuum" |
static const char *const | CONST_GENERIC_CAMERA_NAME = "Generic-camera" |
static const vpAfma6ToolType | defaultTool = TOOL_CCMOP |
static const unsigned int | njoint = 6 |
Protected Types | |
enum | vpSceneObject { THREE_PTS, CUBE, PLATE, SMALL_PLATE, RECTANGLE, SQUARE_10CM, DIAMOND, TRAPEZOID, THREE_LINES, ROAD, TIRE, PIPE, CIRCLE, SPHERE, CYLINDER, PLAN, POINT_CLOUD } |
enum | vpSceneDesiredObject { D_STANDARD, D_CIRCLE, D_TOOL } |
enum | vpCameraTrajectoryDisplayType { CT_LINE, CT_POINT } |
Static Protected Member Functions | |
static DWORD WINAPI | launcher (LPVOID lpParam) |
Static Protected Attributes | |
static const double | maxTranslationVelocityDefault = 0.2 |
static const double | maxRotationVelocityDefault = 0.7 |
Simulator of Irisa's gantry robot named Afma6.
Implementation of the vpRobotSimulator class in order to simulate Irisa's Afma6 robot. This robot is a gantry robot with six degrees of freedom manufactured in 1992 by the french Afma-Robots company.
This class allows to control the Afma6 gantry robot in position and velocity:
All the translations are expressed in meters for positions and m/s for the velocities. Rotations are expressed in radians for the positions, and rad/s for the rotation velocities.
The direct and inverse kinematics models are implemented in the vpAfma6 class.
To control the robot in position, you may set the controller to position control and then send the position to reach in a specific frame like here in the joint space:
To control the robot in velocity, you may set the controller to velocity control and then send the velocities. To end the velocity control and stop the robot you have to set the controller to the stop state. Here is an example of a velocity control in the joint space:
It is also possible to measure the robot current position with getPosition() method and the robot current velocities with the getVelocity() method.
For convenience, there is also the ability to read/write joint positions from a position file with readPosFile() and savePosFile() methods.
Definition at line 177 of file vpSimulatorAfma6.h.
|
inherited |
|
inherited |
Enumerator | |
---|---|
CT_LINE | |
CT_POINT |
Definition at line 227 of file vpWireFrameSimulator.h.
|
inherited |
Robot control frames.
|
inherited |
Enumerator | |
---|---|
MODEL_3D | |
MODEL_DH |
Definition at line 93 of file vpRobotSimulator.h.
|
inherited |
|
inherited |
Type of scene used to display the object at the desired pose (in the internal view).
Enumerator | |
---|---|
D_STANDARD | |
D_CIRCLE | |
D_TOOL |
Definition at line 220 of file vpWireFrameSimulator.h.
|
inherited |
Type of scene used to display the object at the current position.
Enumerator | |
---|---|
THREE_PTS | |
CUBE | |
PLATE | |
SMALL_PLATE | |
RECTANGLE | |
SQUARE_10CM | |
DIAMOND | |
TRAPEZOID | |
THREE_LINES | |
ROAD | |
TIRE | |
PIPE | |
CIRCLE | |
SPHERE | |
CYLINDER | |
PLAN | |
POINT_CLOUD |
Definition at line 193 of file vpWireFrameSimulator.h.
vpSimulatorAfma6::vpSimulatorAfma6 | ( | ) |
Basic constructor
Definition at line 62 of file vpSimulatorAfma6.cpp.
References compute_fMi(), vpRobotSimulator::hThread, init(), initDisplay(), vpRobotSimulator::launcher(), vpTime::measureTimeMs(), vpRobotSimulator::mutex_artCoord, vpRobotSimulator::mutex_artVel, vpRobotSimulator::mutex_display, vpRobotSimulator::mutex_fMi, vpRobotSimulator::mutex_velocity, and vpRobotSimulator::tcur.
vpSimulatorAfma6::vpSimulatorAfma6 | ( | bool | disp | ) |
Constructor used to enable or disable the external view of the robot.
Definition at line 104 of file vpSimulatorAfma6.cpp.
References compute_fMi(), vpRobotSimulator::hThread, init(), initDisplay(), vpRobotSimulator::launcher(), vpTime::measureTimeMs(), vpRobotSimulator::mutex_artCoord, vpRobotSimulator::mutex_artVel, vpRobotSimulator::mutex_display, vpRobotSimulator::mutex_fMi, vpRobotSimulator::mutex_velocity, and vpRobotSimulator::tcur.
|
virtual |
Basic destructor
Definition at line 146 of file vpSimulatorAfma6.cpp.
References vpRobotSimulator::fMi, vpRobotSimulator::hThread, vpRobotSimulator::mutex_artCoord, vpRobotSimulator::mutex_artVel, vpRobotSimulator::mutex_display, vpRobotSimulator::mutex_fMi, vpRobotSimulator::mutex_velocity, vpRobotSimulator::robotArms, and vpRobotSimulator::robotStop.
|
protected |
Compute the pose between the robot reference frame and the frames used used to compute the Denavit-Hartenberg representation. The last element of the table corresponds to the pose between the reference frame and the camera frame.
To compute the diferent homogeneous matrices, this function needs the articular coordinates as input.
Finally the output is a table of 8 elements : ,
,
,
,
,
,
and
- where w is for wrist and e for effector-.
Definition at line 596 of file vpSimulatorAfma6.cpp.
References vpAfma6::_long_56, vpRobotSimulator::fMi, vpRobotSimulator::get_artCoord(), vpAfma6::get_fMc(), and vpRobotSimulator::mutex_fMi.
Referenced by initialiseCameraRelativeToObject(), updateArticularPosition(), and vpSimulatorAfma6().
|
protectedvirtual |
Compute the articular velocity relative to the velocity in another frame.
Implements vpRobotSimulator.
Definition at line 946 of file vpSimulatorAfma6.cpp.
References vpAfma6::_eMc, vpRobot::ARTICULAR_FRAME, vpRobot::CAMERA_FRAME, vpRobot::eJe, vpRobot::fJe, vpRobotSimulator::get_artCoord(), vpAfma6::get_eJe(), vpAfma6::get_fJe(), vpRobotSimulator::get_velocity(), vpRobot::getMaxRotationVelocity(), vpRobot::getRobotFrame(), vpRobotSimulator::jointLimit, vpRobot::MIXT_FRAME, vpMatrix::pseudoInverse(), vpRobot::REFERENCE_FRAME, vpRobotSimulator::set_artVel(), vpRobotSimulator::singularityManagement, singularityTest(), and vpERROR_TRACE.
Referenced by updateArticularPosition().
|
inlineinherited |
Delete the history of the main camera position which are displayed in the external views.
Definition at line 529 of file vpWireFrameSimulator.h.
|
protectedinherited |
Definition at line 408 of file vpWireFrameSimulator.cpp.
References vpDisplay::displayLine(), vpImage< Type >::getHeight(), and vpImage< Type >::getWidth().
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::getInternalImage(), and vpRobotSimulator::getInternalView().
|
protectedinherited |
Definition at line 458 of file vpWireFrameSimulator.cpp.
References vpDisplay::displayLine(), vpImage< Type >::getHeight(), and vpImage< Type >::getWidth().
|
inherited |
Display a trajectory thanks to a list of homogeneous matrices which give the position of the camera relative to the object and the position of the object relative to the world refrence frame. The trajectory is projected into the view of an external camera whose position is given in parameter.
The two lists must have the same size of homogeneous matrices must have the same size.
I | : The image where the trajectory is displayed. |
list_cMo | : The homogeneous matrices list containing the position of the camera relative to the object. |
list_fMo | : The homogeneous matrices list containing the position of the object relative to the world reference frame. |
cMf | : A homogeneous matrix which gives the position of the external camera (used to project the trajectory) relative to the world refrence frame. |
Definition at line 1689 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::camTrajColor, vpWireFrameSimulator::camTrajType, vpWireFrameSimulator::CT_LINE, vpWireFrameSimulator::CT_POINT, vpException::dimensionError, vpDisplay::displayLine(), vpDisplay::displayPoint(), vpWireFrameSimulator::projectCameraTrajectory(), and vpWireFrameSimulator::rotz.
|
inherited |
Display a trajectory thanks to a list of homogeneous matrices which give the position of the camera relative to the object and the position of the object relative to the world refrence frame. The trajectory is projected into the view of an external camera whose position is given in parameter.
The two lists must have the same size of homogeneous matrices must have the same size.
I | : The image where the trajectory is displayed. |
list_cMo | : The homogeneous matrices list containing the position of the camera relative to the object. |
list_fMo | : The homogeneous matrices list containing the position of the object relative to the world reference frame. |
cMf | : A homogeneous matrix which gives the position of the external camera (used to project the trajectory) relative to the world refrence frame. |
Definition at line 1729 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::camTrajColor, vpWireFrameSimulator::camTrajType, vpWireFrameSimulator::CT_LINE, vpWireFrameSimulator::CT_POINT, vpException::dimensionError, vpDisplay::displayLine(), vpDisplay::displayPoint(), vpWireFrameSimulator::projectCameraTrajectory(), and vpWireFrameSimulator::rotz.
|
inherited |
Display a trajectory thanks to a list of homogeneous matrices which give the position of the camera relative to the object and the position of the object relative to the world refrence frame. The trajectory is projected into the view of an external camera whose position is given in parameter.
The two lists must have the same size of homogeneous matrices must have the same size.
I | : The image where the trajectory is displayed. |
list_cMo | : The homogeneous matrices list containing the position of the camera relative to the object. |
list_fMo | : The homogeneous matrices list containing the position of the object relative to the world reference frame. |
cMf | : A homogeneous matrix which gives the position of the external camera (used to project the trajectory) relative to the world refrence frame. |
Definition at line 1607 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::camTrajColor, vpWireFrameSimulator::camTrajType, vpWireFrameSimulator::CT_LINE, vpWireFrameSimulator::CT_POINT, vpException::dimensionError, vpDisplay::displayLine(), vpDisplay::displayPoint(), vpList< type >::front(), vpList< type >::nbElements(), vpList< type >::next(), vpList< type >::outside(), vpWireFrameSimulator::projectCameraTrajectory(), vpWireFrameSimulator::rotz, and vpList< type >::value().
|
inherited |
Display a trajectory thanks to a list of homogeneous matrices which give the position of the camera relative to the object and the position of the object relative to the world refrence frame. The trajectory is projected into the view of an external camera whose position is given in parameter.
The two lists must have the same size of homogeneous matrices must have the same size.
I | : The image where the trajectory is displayed. |
list_cMo | : The homogeneous matrices list containing the position of the camera relative to the object. |
list_fMo | : The homogeneous matrices list containing the position of the object relative to the world reference frame. |
cMf | : A homogeneous matrix which gives the position of the external camera (used to project the trajectory) relative to the world refrence frame. |
Definition at line 1649 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::camTrajColor, vpWireFrameSimulator::camTrajType, vpWireFrameSimulator::CT_LINE, vpWireFrameSimulator::CT_POINT, vpException::dimensionError, vpDisplay::displayLine(), vpDisplay::displayPoint(), vpList< type >::front(), vpList< type >::nbElements(), vpList< type >::next(), vpList< type >::outside(), vpWireFrameSimulator::projectCameraTrajectory(), vpWireFrameSimulator::rotz, and vpList< type >::value().
|
protected |
Definition at line 1172 of file vpSimulatorAfma6.cpp.
References vpRobot::getMaxRotationVelocity(), and getPositioningVelocity().
|
inlineprotectedinherited |
Definition at line 367 of file vpRobotSimulator.h.
Referenced by compute_fMi(), vpSimulatorViper850::compute_fMi(), computeArticularVelocity(), vpSimulatorViper850::computeArticularVelocity(), get_eJe(), vpSimulatorViper850::get_eJe(), get_fJe(), vpSimulatorViper850::get_fJe(), getDisplacement(), vpSimulatorViper850::getDisplacement(), getPosition(), vpSimulatorViper850::getPosition(), getVelocity(), vpSimulatorViper850::getVelocity(), initialiseCameraRelativeToObject(), vpSimulatorViper850::initialiseCameraRelativeToObject(), isInJointLimit(), vpSimulatorViper850::isInJointLimit(), setPosition(), vpSimulatorViper850::setPosition(), updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
|
inlineprotectedinherited |
Definition at line 378 of file vpRobotSimulator.h.
Referenced by getVelocity(), vpSimulatorViper850::getVelocity(), updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
void vpSimulatorAfma6::get_cMe | ( | vpHomogeneousMatrix & | cMe | ) |
Get the geometric transformation between the camera frame and the end-effector frame. This transformation is constant and correspond to the extrinsic camera parameters estimated by calibration.
cMe | : Transformation between the camera frame and the end-effector frame. |
Definition at line 2071 of file vpSimulatorAfma6.cpp.
References vpAfma6::get_cMe().
Referenced by getExternalImage().
|
inherited |
Get the pose between the object and the robot's camera.
Definition at line 354 of file vpRobotSimulator.cpp.
References vpWireFrameSimulator::fMo, vpRobotSimulator::get_fMi(), vpHomogeneousMatrix::inverse(), and vpRobotSimulator::size_fMi.
Referenced by setPosition().
|
inlineinherited |
Get the pose between the object and the camera.
Definition at line 490 of file vpWireFrameSimulator.h.
|
inlineinherited |
Get the homogeneous matrices cMo stored to display the camera trajectory.
cMo_history | : The list of the homogeneous matrices cMo. |
Definition at line 546 of file vpWireFrameSimulator.h.
|
inlineinherited |
Get the homogeneous matrices cMo stored to display the camera trajectory.
Definition at line 612 of file vpWireFrameSimulator.h.
References vpList< type >::addRight().
void vpSimulatorAfma6::get_cVe | ( | vpVelocityTwistMatrix & | cVe | ) |
Get the twist transformation from camera frame to end-effector frame. This transformation allows to compute a velocity expressed in the end-effector frame into the camera frame.
cVe | : Twist transformation. |
Definition at line 2084 of file vpSimulatorAfma6.cpp.
References vpVelocityTwistMatrix::buildFrom(), and vpAfma6::get_cMe().
|
inlineprotectedinherited |
Definition at line 402 of file vpRobotSimulator.h.
Referenced by vpRobotSimulator::getInternalView(), init(), updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
|
inherited |
Get the robot jacobian expressed in the end-effector frame.
q | : Articular joint position of the robot. q[0], q[1], q[2] correspond to the first 3 translations expressed in meter, while q[3], q[4] and q[5] correspond to the 3 succesives rotations expressed in radians. |
eJe | : Robot jacobian expressed in the end-effector frame. |
Definition at line 883 of file vpAfma6.cpp.
References vpAfma6::_long_56, and vpMatrix::resize().
Referenced by computeArticularVelocity(), get_eJe(), vpRobotAfma6::get_eJe(), and getVelocity().
|
virtual |
Get the robot jacobian expressed in the end-effector frame.
To compute , we communicate with the low level controller to get the joint position of the robot.
eJe | : Robot jacobian ![]() |
Implements vpRobotSimulator.
Definition at line 2102 of file vpSimulatorAfma6.cpp.
References vpRobotSimulator::get_artCoord(), vpAfma6::get_eJe(), and vpERROR_TRACE.
|
inherited |
Get the robot jacobian expressed in the robot reference frame also called fix frame.
q | : Articular joint position of the robot. q[0], q[1], q[2] correspond to the first 3 translations expressed in meter, while q[3], q[4] and q[5] correspond to the 3 succesives rotations expressed in radians. |
fJe | : Robot jacobian expressed in the robot reference frame. |
Definition at line 950 of file vpAfma6.cpp.
References vpAfma6::_long_56, and vpMatrix::resize().
Referenced by computeArticularVelocity(), get_fJe(), vpRobotAfma6::get_fJe(), and getVelocity().
|
virtual |
Get the robot jacobian expressed in the robot reference frame also called fix frame.
To compute , we communicate with the low level controller to get the joint position of the robot.
fJe | : Robot jacobian ![]() |
Implements vpRobotSimulator.
Definition at line 2126 of file vpSimulatorAfma6.cpp.
References vpRobotSimulator::get_artCoord(), vpAfma6::get_fJe(), and vpERROR_TRACE.
|
inherited |
Compute the forward kinematics (direct geometric model) as an homogeneous matrix.
By forward kinematics we mean here the position and the orientation of the camera relative to the base frame given the articular positions of all the six joints.
This method is the same than getForwardKinematics(const vpColVector & q).
q | : Articular position of the six joints: q[0], q[1], q[2] correspond to the first 3 translations expressed in meter, while q[3], q[4] and q[5] correspond to the 3 succesives rotations expressed in radians. |
Definition at line 729 of file vpAfma6.cpp.
Referenced by compute_fMi(), vpRobotAfma6::getDisplacement(), vpAfma6::getForwardKinematics(), getPosition(), vpRobotAfma6::getPosition(), vpRobotAfma6::getVelocity(), setPosition(), and vpRobotAfma6::setPosition().
|
inherited |
Compute the forward kinematics (direct geometric model) as an homogeneous matrix.
By forward kinematics we mean here the position and the orientation of the camera relative to the base frame given the articular positions of all the six joints.
q | : Articular joint position of the robot. q[0], q[1], q[2] correspond to the first 3 translations expressed in meter, while q[3], q[4] and q[5] correspond to the 3 succesives rotations expressed in radians. |
fMc | The homogeneous matrix corresponding to the direct geometric model which expresses the transformation between the fix frame and the camera frame (fMc). |
Definition at line 757 of file vpAfma6.cpp.
References vpAfma6::_eMc, and vpAfma6::get_fMe().
|
inherited |
Compute the forward kinematics (direct geometric model) as an homogeneous matrix.
By forward kinematics we mean here the position and the orientation of the end effector with respect to the base frame given the articular positions of all the six joints.
q | : Articular joint position of the robot. q[0], q[1], q[2] correspond to the first 3 translations expressed in meter, while q[3], q[4] and q[5] correspond to the 3 succesives rotations expressed in radians. |
fMe | The homogeneous matrix corresponding to the direct geometric model which expresses the transformation between the fix frame and the end effector frame (fMe). |
Definition at line 791 of file vpAfma6.cpp.
References vpAfma6::_coupl_56, and vpAfma6::_long_56.
Referenced by vpAfma6::get_fMc().
|
inlineprotectedvirtual |
Get a table of poses between the reference frame and the frames you used to compute the Denavit-Hartenberg representation
Implements vpRobotSimulator.
Definition at line 266 of file vpSimulatorAfma6.h.
Referenced by getExternalImage(), initialiseObjectRelativeToCamera(), and updateArticularPosition().
|
inlineinherited |
Get the pose between the object and the fixed world frame.
Definition at line 290 of file vpRobotSimulator.h.
References vpWireFrameSimulator::fMo.
|
inlineinherited |
Get the homogeneous matrices fMo stored to display the camera trajectory.
fMo_history | : The list of the homogeneous matrices fMo. |
Definition at line 558 of file vpWireFrameSimulator.h.
|
inlineinherited |
Get the homogeneous matrices fMo stored to display the camera trajectory.
Definition at line 597 of file vpWireFrameSimulator.h.
References vpList< type >::addRight().
|
inlineprotectedinherited |
Definition at line 388 of file vpRobotSimulator.h.
Referenced by computeArticularVelocity(), and vpSimulatorViper850::computeArticularVelocity().
|
virtual |
Get the robot joint displacement since the last call of this method.
displacement | : The measured joint displacement. The dimension of displacement is 6 (the robot joint number). All the values are expressed in radians. |
Implements vpRobotSimulator.
Definition at line 1813 of file vpSimulatorAfma6.cpp.
References vpRobot::ARTICULAR_FRAME, and getDisplacement().
|
virtual |
Get the robot displacement expressed in the camera frame since the last call of this method.
displacement | : The measured displacement in the camera frame. The dimension of displacement is 6 (tx, ty, ty, rx, ry, rz). Translations are expressed in meters, rotations in radians with the Euler Rxyz representation. |
Implements vpRobotSimulator.
Definition at line 1798 of file vpSimulatorAfma6.cpp.
References vpRobot::CAMERA_FRAME, and getDisplacement().
void vpSimulatorAfma6::getCameraParameters | ( | vpCameraParameters & | cam, |
const unsigned int & | image_width, | ||
const unsigned int & | image_height | ||
) |
Get the current intrinsic camera parameters obtained by calibration.
cam | : In output, camera parameters to fill. |
image_width | : Image width used to compute camera calibration. |
image_height | : Image height used to compute camera calibration. |
Definition at line 377 of file vpSimulatorAfma6.cpp.
References vpAfma6::CONST_CCMOP_CAMERA_NAME, vpAfma6::CONST_GRIPPER_CAMERA_NAME, vpAfma6::getToolType(), vpCameraParameters::initPersProjWithoutDistortion(), vpWireFrameSimulator::px_int, vpWireFrameSimulator::py_int, vpAfma6::TOOL_CCMOP, vpAfma6::TOOL_GRIPPER, vpAfma6::TOOL_VACUUM, vpERROR_TRACE, and vpTRACE.
Referenced by getCameraParameters(), and initDisplay().
void vpSimulatorAfma6::getCameraParameters | ( | vpCameraParameters & | cam, |
const vpImage< unsigned char > & | I | ||
) |
Get the current intrinsic camera parameters obtained by calibration.
cam | : In output, camera parameters to fill. |
I | : A B&W image send by the current camera in use. |
Definition at line 432 of file vpSimulatorAfma6.cpp.
References getCameraParameters(), vpImage< Type >::getHeight(), and vpImage< Type >::getWidth().
void vpSimulatorAfma6::getCameraParameters | ( | vpCameraParameters & | cam, |
const vpImage< vpRGBa > & | I | ||
) |
Get the current intrinsic camera parameters obtained by calibration.
cam | : In output, camera parameters to fill. |
I | : A B&W image send by the current camera in use. |
Definition at line 447 of file vpSimulatorAfma6.cpp.
References getCameraParameters(), vpImage< Type >::getHeight(), and vpImage< Type >::getWidth().
|
inlineinherited |
|
inherited |
Return the coupling factor between join 5 and 6.
Definition at line 1019 of file vpAfma6.cpp.
References vpAfma6::_coupl_56.
|
virtual |
Get the robot displacement since the last call of this method.
frame | : The frame in which the measured displacement is expressed. |
displacement | : The measured displacement since the last call of this method. The dimension of displacement is always
|
In camera or reference frame, rotations are expressed with the Euler Rxyz representation.
Implements vpRobotSimulator.
Definition at line 1837 of file vpSimulatorAfma6.cpp.
References vpRobot::ARTICULAR_FRAME, vpRobot::CAMERA_FRAME, vpRobotSimulator::get_artCoord(), vpRobot::MIXT_FRAME, vpRobot::REFERENCE_FRAME, and vpColVector::resize().
Referenced by getArticularDisplacement(), and getCameraDisplacement().
|
inlineinherited |
Get the parameters of the virtual external camera.
Definition at line 265 of file vpRobotSimulator.h.
References vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpMath::maximum(), and vpMath::minimum().
|
inlineinherited |
Get the parameters of the virtual external camera.
I | : The image used to display the view of the camera. |
Definition at line 438 of file vpWireFrameSimulator.h.
References vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpMath::maximum(), and vpMath::minimum().
Referenced by vpWireFrameSimulator::projectCameraTrajectory().
|
inlineinherited |
Get the parameters of the virtual external camera.
I | : The image used to display the view of the camera. |
Definition at line 458 of file vpWireFrameSimulator.h.
References vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpMath::maximum(), and vpMath::minimum().
|
inlineinherited |
Get the external camera's position relative to the the world reference frame.
Definition at line 234 of file vpRobotSimulator.h.
References vpWireFrameSimulator::getExternalCameraPosition().
Referenced by updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
Definition at line 2247 of file vpSimulatorAfma6.cpp.
References vpWireFrameSimulator::camColor, vpWireFrameSimulator::camera, vpWireFrameSimulator::camMf, vpWireFrameSimulator::camMf2, vpWireFrameSimulator::curColor, vpWireFrameSimulator::display_scene(), vpWireFrameSimulator::displayCamera, vpWireFrameSimulator::displayObject, vpWireFrameSimulator::f2Mf, vpWireFrameSimulator::fMo, get_cMe(), get_fMi(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpHomogeneousMatrix::inverse(), vpMath::maximum(), vpMath::minimum(), vpWireFrameSimulator::navigation(), vpWireFrameSimulator::px_ext, vpWireFrameSimulator::py_ext, vpRobotSimulator::robotArms, and vpWireFrameSimulator::scene.
Referenced by updateArticularPosition().
|
inherited |
Get an external view. The point of view is set thanks to the pose between the camera camMf and the fixed world frame.
I | : The image where the external view is displayed. |
camMf | : The pose between the point of view and the fixed world frame. |
Definition at line 1255 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::camColor, vpWireFrameSimulator::camera, vpWireFrameSimulator::camMf, vpWireFrameSimulator::cMo, vpWireFrameSimulator::curColor, vpImage< Type >::display, vpDisplay::display(), vpWireFrameSimulator::display_scene(), vpWireFrameSimulator::displayCamera, vpWireFrameSimulator::displayImageSimulator, vpWireFrameSimulator::displayObject, vpWireFrameSimulator::fMo, vpImage< Type >::getHeight(), vpImageSimulator::getImage(), vpWireFrameSimulator::getInternalCameraParameters(), vpImage< Type >::getWidth(), vpHomogeneousMatrix::inverse(), vpMath::maximum(), vpMath::minimum(), vpWireFrameSimulator::objectImage, vpWireFrameSimulator::px_ext, vpWireFrameSimulator::py_ext, vpWireFrameSimulator::rotz, vpWireFrameSimulator::scene, and vpImageSimulator::setCameraPosition().
|
inherited |
Get the external view. It corresponds to the view of the scene from a reference frame you have to set.
I | : The image where the external view is displayed. |
Definition at line 1397 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::camColor, vpWireFrameSimulator::camera, vpWireFrameSimulator::cameraTrajectory, vpWireFrameSimulator::camMf, vpWireFrameSimulator::camMf2, vpWireFrameSimulator::camTrajColor, vpWireFrameSimulator::camTrajType, vpWireFrameSimulator::cMo, vpWireFrameSimulator::CT_LINE, vpWireFrameSimulator::CT_POINT, vpWireFrameSimulator::CUBE, vpWireFrameSimulator::curColor, vpImage< Type >::display, vpDisplay::display(), vpWireFrameSimulator::display_scene(), vpWireFrameSimulator::displayCamera, vpWireFrameSimulator::displayCameraTrajectory, vpWireFrameSimulator::displayImageSimulator, vpDisplay::displayLine(), vpWireFrameSimulator::displayObject, vpDisplay::displayPoint(), vpWireFrameSimulator::extCamChanged, vpWireFrameSimulator::f2Mf, vpWireFrameSimulator::fMc, vpWireFrameSimulator::fMo, vpWireFrameSimulator::fMoList, vpImage< Type >::getHeight(), vpImageSimulator::getImage(), vpWireFrameSimulator::getInternalCameraParameters(), vpImage< Type >::getWidth(), vpHomogeneousMatrix::inverse(), vpMath::maximum(), vpMath::minimum(), vpWireFrameSimulator::navigation(), vpWireFrameSimulator::nbrPtLimit, vpWireFrameSimulator::objectImage, vpWireFrameSimulator::poseList, vpWireFrameSimulator::projectCameraTrajectory(), vpWireFrameSimulator::px_ext, vpWireFrameSimulator::py_ext, vpWireFrameSimulator::rotz, vpWireFrameSimulator::scene, vpImageSimulator::setCameraPosition(), and vpWireFrameSimulator::SPHERE.
|
inherited |
Get an external view. The point of view is set thanks to the pose between the camera camMf and the fixed world frame.
I | : The image where the external view is displayed. |
camMf | : The pose between the point of view and the fixed world frame. |
Definition at line 1538 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::camColor, vpWireFrameSimulator::camera, vpWireFrameSimulator::camMf, vpWireFrameSimulator::cMo, vpWireFrameSimulator::curColor, vpImage< Type >::display, vpDisplay::display(), vpWireFrameSimulator::display_scene(), vpWireFrameSimulator::displayCamera, vpWireFrameSimulator::displayImageSimulator, vpWireFrameSimulator::displayObject, vpWireFrameSimulator::fMo, vpImage< Type >::getHeight(), vpImageSimulator::getImage(), vpWireFrameSimulator::getInternalCameraParameters(), vpImage< Type >::getWidth(), vpHomogeneousMatrix::inverse(), vpMath::maximum(), vpMath::minimum(), vpWireFrameSimulator::objectImage, vpWireFrameSimulator::px_ext, vpWireFrameSimulator::py_ext, vpWireFrameSimulator::rotz, vpWireFrameSimulator::scene, and vpImageSimulator::setCameraPosition().
|
inherited |
Compute the forward kinematics (direct geometric model) as an homogeneous matrix.
By forward kinematics we mean here the position and the orientation of the camera relative to the base frame given the articular positions of all the six joints.
This method is the same than get_fMc(const vpColVector & q).
q | : Articular position of the six joints: q[0], q[1], q[2] correspond to the first 3 translations expressed in meter, while q[3], q[4] and q[5] correspond to the 3 succesives rotations expressed in radians. |
Definition at line 475 of file vpAfma6.cpp.
References vpAfma6::get_fMc().
|
inlineinherited |
Get the parameters of the virtual internal camera.
I | : The image used to display the view of the camera. |
Definition at line 398 of file vpWireFrameSimulator.h.
References vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpMath::maximum(), and vpMath::minimum().
Referenced by vpWireFrameSimulator::getExternalImage(), and vpWireFrameSimulator::getInternalImage().
|
inlineinherited |
Get the parameters of the virtual internal camera.
I | : The image used to display the view of the camera. |
Definition at line 418 of file vpWireFrameSimulator.h.
References vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpMath::maximum(), and vpMath::minimum().
Get the internal view ie the view of the camera.
I | : The image where the internal view is displayed. |
Definition at line 1034 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::cdMo, vpWireFrameSimulator::cMo, vpWireFrameSimulator::curColor, vpWireFrameSimulator::D_TOOL, vpWireFrameSimulator::desColor, vpWireFrameSimulator::desiredObject, vpWireFrameSimulator::desiredScene, vpImage< Type >::display, vpDisplay::display(), vpWireFrameSimulator::display_scene(), vpWireFrameSimulator::displayDesiredObject, vpWireFrameSimulator::displayImageSimulator, vpWireFrameSimulator::displayObject, vpImage< Type >::getHeight(), vpImageSimulator::getImage(), vpWireFrameSimulator::getInternalCameraParameters(), vpImage< Type >::getWidth(), vpHomogeneousMatrix::inverse(), vpMath::maximum(), vpMath::minimum(), vpSimulatorException::notInitializedError, vpWireFrameSimulator::objectImage, vpWireFrameSimulator::px_int, vpWireFrameSimulator::py_int, vpColor::red, vpWireFrameSimulator::rotz, vpWireFrameSimulator::scene, vpWireFrameSimulator::sceneInitialized, and vpImageSimulator::setCameraPosition().
|
inherited |
Get the internal view ie the view of the camera.
I | : The image where the internal view is displayed. |
Definition at line 1319 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::camMf, vpWireFrameSimulator::cdMo, vpWireFrameSimulator::cMo, vpWireFrameSimulator::curColor, vpWireFrameSimulator::D_TOOL, vpWireFrameSimulator::desColor, vpWireFrameSimulator::desiredObject, vpWireFrameSimulator::desiredScene, vpImage< Type >::display, vpDisplay::display(), vpWireFrameSimulator::display_scene(), vpWireFrameSimulator::displayDesiredObject, vpWireFrameSimulator::displayImageSimulator, vpWireFrameSimulator::displayObject, vpWireFrameSimulator::fMo, vpImage< Type >::getHeight(), vpImageSimulator::getImage(), vpWireFrameSimulator::getInternalCameraParameters(), vpImage< Type >::getWidth(), vpHomogeneousMatrix::inverse(), vpMath::maximum(), vpMath::minimum(), vpSimulatorException::notInitializedError, vpWireFrameSimulator::objectImage, vpWireFrameSimulator::px_int, vpWireFrameSimulator::py_int, vpColor::red, vpWireFrameSimulator::rotz, vpWireFrameSimulator::scene, vpWireFrameSimulator::sceneInitialized, and vpImageSimulator::setCameraPosition().
Get the view of the camera's robot.
According to the initialisation method you used, the current position and maybee the desired position of the object are displayed.
I | : The image where the internal view is displayed. |
Definition at line 210 of file vpRobotSimulator.cpp.
References vpWireFrameSimulator::cdMo, vpWireFrameSimulator::cMo, vpWireFrameSimulator::curColor, vpWireFrameSimulator::D_TOOL, vpWireFrameSimulator::desColor, vpWireFrameSimulator::desiredObject, vpWireFrameSimulator::desiredScene, vpWireFrameSimulator::display_scene(), vpWireFrameSimulator::displayDesiredObject, vpWireFrameSimulator::displayObject, vpWireFrameSimulator::fMo, vpRobotSimulator::get_displayBusy(), vpRobotSimulator::get_fMi(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpHomogeneousMatrix::inverse(), vpMath::maximum(), vpMath::minimum(), vpWireFrameSimulator::px_int, vpWireFrameSimulator::py_int, vpColor::red, vpWireFrameSimulator::rotz, vpWireFrameSimulator::scene, vpWireFrameSimulator::sceneInitialized, vpRobotSimulator::set_displayBusy(), vpRobotSimulator::size_fMi, and vpTime::wait().
Referenced by setPosition().
|
inherited |
Get the view of the camera's robot.
According to the initialisation method you used, the current position and maybee the desired position of the object are displayed.
I | : The image where the internal view is displayed. |
Definition at line 283 of file vpRobotSimulator.cpp.
References vpWireFrameSimulator::cdMo, vpWireFrameSimulator::cMo, vpWireFrameSimulator::curColor, vpWireFrameSimulator::D_TOOL, vpWireFrameSimulator::desColor, vpWireFrameSimulator::desiredObject, vpWireFrameSimulator::desiredScene, vpWireFrameSimulator::display_scene(), vpWireFrameSimulator::displayDesiredObject, vpWireFrameSimulator::displayObject, vpWireFrameSimulator::fMo, vpRobotSimulator::get_displayBusy(), vpRobotSimulator::get_fMi(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpHomogeneousMatrix::inverse(), vpMath::maximum(), vpMath::minimum(), vpWireFrameSimulator::px_int, vpWireFrameSimulator::py_int, vpColor::red, vpWireFrameSimulator::rotz, vpWireFrameSimulator::scene, vpWireFrameSimulator::sceneInitialized, vpRobotSimulator::set_displayBusy(), vpRobotSimulator::size_fMi, and vpTime::wait().
|
inherited |
Compute the inverse kinematics (inverse geometric model).
By inverse kinematics we mean here the six articular values of the joint positions given the position and the orientation of the camera frame relative to the base frame.
fMc | : Homogeneous matrix describing the transformation from base frame to the camera frame. |
q | : In input, the current articular joint position of the robot. In output, the solution of the inverse kinematics. Articular position of the six joints: q[0], q[1], q[2] correspond to the first 3 translations expressed in meter, while q[3], q[4] and q[5] correspond to the 3 succesives rotations expressed in radians. |
nearest | : true to return the nearest solution to q. false to return the farest. |
The code below shows how to compute the inverse geometric model:
Definition at line 555 of file vpAfma6.cpp.
References vpAfma6::_coupl_56, vpAfma6::_eMc, vpAfma6::_joint_max, vpAfma6::_joint_min, vpAfma6::_long_56, vpMatrix::getRows(), vpHomogeneousMatrix::inverse(), vpAfma6::njoint, vpMath::rad(), vpColVector::resize(), and vpTRACE.
Referenced by initialiseCameraRelativeToObject(), setPosition(), and vpRobotAfma6::setPosition().
|
inherited |
Get max joint values.
Definition at line 1004 of file vpAfma6.cpp.
References vpAfma6::_joint_max.
|
inherited |
Get min joint values.
Definition at line 987 of file vpAfma6.cpp.
References vpAfma6::_joint_min.
|
inherited |
Return the distance between join 5 and 6.
Definition at line 1031 of file vpAfma6.cpp.
References vpAfma6::_long_56.
|
inherited |
Get the maximal rotation velocity that can be sent to the robot during a velocity control.
Definition at line 233 of file vpRobot.cpp.
Referenced by computeArticularVelocity(), vpSimulatorViper850::computeArticularVelocity(), findHighestPositioningSpeed(), vpSimulatorViper850::findHighestPositioningSpeed(), setPosition(), vpRobotPioneer::setVelocity(), setVelocity(), vpSimulatorViper850::setVelocity(), vpRobotAfma4::setVelocity(), vpRobotAfma6::setVelocity(), and vpRobotViper850::setVelocity().
|
inherited |
Get the maximal translation velocity that can be sent to the robot during a velocity control.
Definition at line 208 of file vpRobot.cpp.
Referenced by setPosition(), vpRobotPioneer::setVelocity(), setVelocity(), vpSimulatorViper850::setVelocity(), vpRobotAfma4::setVelocity(), vpRobotAfma6::setVelocity(), and vpRobotViper850::setVelocity().
|
inherited |
Return the robot position (frame has to be specified).
Recupere la position actuelle du robot. Recupere la position actuelle du robot et renvoie le resultat Le repere de travail dans lequel est exprime le resultat est celui donne par la variable repere. INPUT:
Definition at line 176 of file vpRobot.cpp.
|
virtual |
Get the current position of the robot.
frame | : Control frame type in which to get the position, either :
|
q | : Measured position of the robot:
|
Implements vpRobot.
Definition at line 1604 of file vpSimulatorAfma6.cpp.
References vpRobot::ARTICULAR_FRAME, vpRobot::CAMERA_FRAME, vpHomogeneousMatrix::extract(), vpWireFrameSimulator::fMc, vpRobotSimulator::get_artCoord(), vpAfma6::get_fMc(), vpRobotException::lowLevelError, vpRobot::MIXT_FRAME, vpRobot::REFERENCE_FRAME, vpColVector::resize(), and vpERROR_TRACE.
Referenced by getPosition().
void vpSimulatorAfma6::getPosition | ( | const vpRobot::vpControlFrameType | frame, |
vpPoseVector & | position | ||
) |
Get the current position of the robot.
Similar as getPosition(const vpRobot::vpControlFrameType frame, vpColVector &)
The difference is here that the position is returned using a ThetaU representation.
Definition at line 1665 of file vpSimulatorAfma6.cpp.
References getPosition().
|
inline |
Definition at line 229 of file vpSimulatorAfma6.h.
Referenced by findHighestPositioningSpeed().
|
inlineinherited |
Definition at line 147 of file vpRobot.h.
Referenced by computeArticularVelocity(), and vpSimulatorViper850::computeArticularVelocity().
|
inlinevirtualinherited |
Definition at line 148 of file vpRobot.h.
Referenced by vpRobotBiclops::getPosition(), vpRobotBiclops::getVelocity(), vpRobotPtu46::setPosition(), vpRobotBiclops::setPosition(), setPosition(), vpRobotAfma4::setPosition(), vpSimulatorViper850::setPosition(), vpRobotAfma6::setPosition(), vpRobotViper850::setPosition(), vpRobotPtu46::setRobotState(), vpRobotBiclops::setRobotState(), setRobotState(), vpSimulatorViper850::setRobotState(), vpRobotAfma4::setRobotState(), vpRobotAfma6::setRobotState(), vpRobotViper850::setRobotState(), vpRobotPtu46::setVelocity(), vpRobotBiclops::setVelocity(), setVelocity(), vpSimulatorViper850::setVelocity(), vpRobotAfma4::setVelocity(), vpRobotAfma6::setVelocity(), vpRobotViper850::setVelocity(), stopMotion(), vpSimulatorViper850::stopMotion(), and vpRobotViper850::stopMotion().
|
inlineinherited |
Get the current tool type.
Definition at line 147 of file vpAfma6.h.
Referenced by vpAfma6::getCameraParameters(), getCameraParameters(), and initArms().
|
virtual |
Get the robot velocities.
frame | : Frame in wich velocities are mesured. |
vel | : Measured velocities. Translations are expressed in m/s and rotations in rad/s. |
Implements vpRobotSimulator.
Definition at line 1077 of file vpSimulatorAfma6.cpp.
References vpAfma6::_eMc, vpRobot::ARTICULAR_FRAME, vpRobot::CAMERA_FRAME, vpRobot::eJe, vpRobot::fJe, vpRobotSimulator::get_artCoord(), vpRobotSimulator::get_artVel(), vpAfma6::get_eJe(), vpAfma6::get_fJe(), vpRobot::MIXT_FRAME, vpRobot::REFERENCE_FRAME, vpColVector::resize(), and vpERROR_TRACE.
Referenced by getVelocity().
vpColVector vpSimulatorAfma6::getVelocity | ( | const vpRobot::vpControlFrameType | frame | ) |
Get the robot velocities.
frame | : Frame in wich velocities are mesured. |
Definition at line 1162 of file vpSimulatorAfma6.cpp.
References getVelocity(), and vpRobotSimulator::velocity.
|
inherited |
Read files containing the constant parameters related to the robot kinematics and to the end-effector to camera transformation.
paramAfma6 | : Filename containing the constant parameters of the robot kinematics. |
paramCamera | : Filename containing the camera extrinsic parameters. |
Definition at line 218 of file vpAfma6.cpp.
References vpAfma6::parseConfigFile().
void vpSimulatorAfma6::init | ( | vpAfma6::vpAfma6ToolType | tool, |
vpCameraParameters::vpCameraParametersProjType | projModel = vpCameraParameters::perspectiveProjWithoutDistortion |
||
) |
Initialize the robot kinematics with the extrinsic calibration parameters associated to a specific camera.
The eMc parameters depend on the camera.
tool | : Tool to use. Note that the generic camera is not handled. |
projModel | : Projection model associated to the camera. |
Definition at line 281 of file vpSimulatorAfma6.cpp.
References vpAfma6::_eMc, vpAfma6::_erc, vpAfma6::_etc, vpHomogeneousMatrix::buildFrom(), vpRobotSimulator::get_displayBusy(), vpAfma6::projModel, vpMath::rad(), vpRobotSimulator::robotArms, vpRobotSimulator::set_displayBusy(), setCameraParameters(), vpAfma6::setToolType(), vpAfma6::TOOL_CCMOP, vpAfma6::TOOL_GENERIC_CAMERA, vpAfma6::TOOL_GRIPPER, vpAfma6::TOOL_VACUUM, and vpTime::wait().
|
protectedvirtual |
Method which initialises the parameters linked to the robot caracteristics.
Set the path to the arm files (*.bnd and *.sln) used by the simulator. If the path set in vpConfig.h in VISP_ROBOT_ARMS_DIR macro is not valid, the path is set from the VISP_ROBOT_ARMS_DIR environment variable that the user has to set.
Reimplemented from vpRobotSimulator.
Definition at line 187 of file vpSimulatorAfma6.cpp.
References vpAfma6::_joint_max, vpAfma6::_joint_min, vpRobotSimulator::artCoord, vpRobot::ARTICULAR_FRAME, vpRobotSimulator::artVel, vpIoTools::checkDirectory(), defaultPositioningVelocity, vpRobotSimulator::fMi, vpIoTools::getenv(), vpAfma6::njoint, vpColVector::resize(), vpRobot::setRobotFrame(), setRobotState(), vpRobotSimulator::size_fMi, vpRobot::STATE_STOP, and vpAfma6::TOOL_CCMOP.
Referenced by vpSimulatorAfma6().
|
protectedvirtual |
Initialise the display of the robot's arms.
Set the path to the scene files (*.bnd and *.sln) used by the simulator. If the path set in vpConfig.h in VISP_SCENES_DIR macro is not valid, the path is set from the VISP_SCENES_DIR environment variable that the user has to set.
Implements vpRobotSimulator.
Definition at line 2172 of file vpSimulatorAfma6.cpp.
References vpWireFrameSimulator::camera, vpWireFrameSimulator::cameraFactor, vpIoTools::checkDirectory(), vpWireFrameSimulator::displayCamera, vpIoTools::getenv(), vpAfma6::getToolType(), vpRobotSimulator::robotArms, vpAfma6::TOOL_CCMOP, vpAfma6::TOOL_GENERIC_CAMERA, vpAfma6::TOOL_GRIPPER, and vpAfma6::TOOL_VACUUM.
Referenced by initDisplay().
|
protected |
Method which initialises the parameters linked to the display part.
Definition at line 249 of file vpSimulatorAfma6.cpp.
References vpRobotSimulator::cameraParam, vpCameraParameters::get_px(), vpCameraParameters::get_py(), getCameraParameters(), initArms(), vpCameraParameters::initPersProjWithoutDistortion(), vpWireFrameSimulator::px_int, vpWireFrameSimulator::py_int, vpMath::rad(), vpRobotSimulator::robotArms, vpWireFrameSimulator::sceneInitialized, vpWireFrameSimulator::setExternalCameraParameters(), and vpRobotSimulator::setExternalCameraPosition().
Referenced by vpSimulatorAfma6().
void vpSimulatorAfma6::initialiseCameraRelativeToObject | ( | vpHomogeneousMatrix | cMo | ) |
This method enables to initialise the articular coordinates of the robot in order to position the camera relative to the object.
Before using this method it is advised to set the position of the object thanks to the set_fMo() method.
cMo | : the desired pose of the camera. |
Definition at line 2335 of file vpSimulatorAfma6.cpp.
References compute_fMi(), vpWireFrameSimulator::fMc, vpWireFrameSimulator::fMo, vpRobotSimulator::get_artCoord(), vpAfma6::getInverseKinematics(), vpHomogeneousMatrix::inverse(), vpRobotSimulator::set_artCoord(), vpRobotSimulator::set_artVel(), vpRobotSimulator::set_velocity(), and vpERROR_TRACE.
void vpSimulatorAfma6::initialiseObjectRelativeToCamera | ( | vpHomogeneousMatrix | cMo | ) |
This method enables to initialise the pose between the object and the refrence frame, in order to position the object relative to the camera.
Before using this method it is advised to set the articular coordinates of the robot.
cMo | : the desired pose of the camera. |
Definition at line 2363 of file vpSimulatorAfma6.cpp.
References vpWireFrameSimulator::cMo, vpWireFrameSimulator::fMo, get_fMi(), vpRobotSimulator::set_artVel(), and vpRobotSimulator::set_velocity().
|
inherited |
Initialize the display. It enables to choose the type of scene which will be used to display the object at the current position and at the desired position.
It exists several default scenes you can use. Use the vpSceneObject and the vpSceneDesiredObject attributes to use them in this method. The corresponding files are stored in the "data" folder which is in the ViSP build directory.
obj | : Type of scene used to display the object at the current position. |
desiredObject | : Type of scene used to display the object at the desired pose (in the internal view). |
Definition at line 123 of file vpRobotSimulator.cpp.
References vpWireFrameSimulator::camera, vpWireFrameSimulator::displayCamera, and vpWireFrameSimulator::initScene().
|
inherited |
Initialize the display. It enables to choose the type of scene which will be used to display the object at the current position and at the desired position.
Here you can use the scene you want. You have to set the path to the .bnd file which is a scene file. It is also possible to use a vrml (.wrl) file.
obj | : Path to the scene file you want to use. |
desiredObject | : Path to the scene file you want to use. |
Definition at line 146 of file vpRobotSimulator.cpp.
References vpWireFrameSimulator::camera, vpWireFrameSimulator::displayCamera, and vpWireFrameSimulator::initScene().
|
inherited |
Initialize the display. It enables to choose the type of object which will be used to display the object at the current position. The object at the desired position is not displayed.
It exists several default scenes you can use. Use the vpSceneObject attributes to use them in this method. The corresponding files are stored in the "data" folder which is in the ViSP build directory.
obj | : Type of scene used to display the object at the current position. |
Definition at line 167 of file vpRobotSimulator.cpp.
References vpWireFrameSimulator::camera, vpWireFrameSimulator::displayCamera, and vpWireFrameSimulator::initScene().
|
inherited |
Initialize the display. It enables to choose the type of scene which will be used to display the object at the current position. The object at the desired position is not displayed.
Here you can use the scene you want. You have to set the path to the .bnd file which is a scene file, or the vrml file.
obj | : Path to the scene file you want to use. |
Definition at line 188 of file vpRobotSimulator.cpp.
References vpWireFrameSimulator::camera, vpWireFrameSimulator::displayCamera, and vpWireFrameSimulator::initScene().
|
inherited |
Initialize the simulator. It enables to choose the type of scene which will be used to display the object at the current position and at the desired position.
It exists several default scenes you can use. Use the vpSceneObject and the vpSceneDesiredObject attributes to use them in this method. The corresponding files are stored in the "data" folder which is in the ViSP build directory.
It is also possible to add a list of vpImageSimulator instances. They will be automatically projected into the image. The position of the four corners have to be given in the object frame.
obj | : Type of scene used to display the object at the current position. |
desiredObject | : Type of scene used to display the object at the desired pose (in the internal view). |
imObj | : A list of vpImageSimulator instances. |
Definition at line 725 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::displayImageSimulator, vpWireFrameSimulator::initScene(), and vpWireFrameSimulator::objectImage.
|
inherited |
Initialize the simulator. It enables to choose the type of scene which will be used to display the object at the current position and at the desired position.
Here you can use the scene you want. You have to set the path to a .bnd or a .wrl file which is a 3D model file.
It is also possible to add a list of vpImageSimulator instances. They will be automatically projected into the image. The position of the four corners have to be given in the object frame.
obj | : Path to the scene file you want to use. |
desiredObject | : Path to the scene file you want to use. |
imObj | : A list of vpImageSimulator instances. |
Definition at line 831 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::displayImageSimulator, vpWireFrameSimulator::initScene(), and vpWireFrameSimulator::objectImage.
|
inherited |
Initialize the simulator. It enables to choose the type of object which will be used to display the object at the current position. The object at the desired position is not displayed.
It exists several default scenes you can use. Use the vpSceneObject attributes to use them in this method. The corresponding files are stored in the "data" folder which is in the ViSP build directory.
It is also possible to add a list of vpImageSimulator instances. They will be automatically projected into the image. The position of the four corners have to be given in the object frame.
obj | : Type of scene used to display the object at the current position. |
imObj | : A list of vpImageSimulator instances. |
Definition at line 930 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::displayImageSimulator, vpWireFrameSimulator::initScene(), and vpWireFrameSimulator::objectImage.
|
inherited |
Initialize the simulator. It enables to choose the type of scene which will be used to display the object at the current position. The object at the desired position is not displayed.
Here you can use the scene you want. You have to set the path to a .bnd or a .wrl file which is a 3D model file.
It is also possible to add a list of vpImageSimulator instances. They will be automatically projected into the image. The position of the four corners have to be given in the object frame.
obj | : Path to the scene file you want to use. |
imObj | : A list of vpImageSimulator instances. |
Definition at line 1019 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::displayImageSimulator, vpWireFrameSimulator::initScene(), and vpWireFrameSimulator::objectImage.
|
inherited |
Initialize the simulator. It enables to choose the type of scene which will be used to display the object at the current position and at the desired position.
It exists several default scenes you can use. Use the vpSceneObject and the vpSceneDesiredObject attributes to use them in this method. The corresponding files are stored in the "data" folder which is in the ViSP build directory.
It is also possible to add a list of vpImageSimulator instances. They will be automatically projected into the image. The position of the four corners have to be given in the object frame.
obj | : Type of scene used to display the object at the current position. |
desiredObject | : Type of scene used to display the object at the desired pose (in the internal view). |
imObj | : A list of vpImageSimulator instances. |
Definition at line 701 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::displayImageSimulator, vpList< type >::front(), vpWireFrameSimulator::initScene(), vpList< type >::next(), vpWireFrameSimulator::objectImage, vpList< type >::outside(), and vpList< type >::value().
|
inherited |
Initialize the simulator. It enables to choose the type of scene which will be used to display the object at the current position and at the desired position.
Here you can use the scene you want. You have to set the path to a .bnd or a .wrl file which is a 3D model file.
It is also possible to add a list of vpImageSimulator instances. They will be automatically projected into the image. The position of the four corners have to be given in the object frame.
obj | : Path to the scene file you want to use. |
desiredObject | : Path to the scene file you want to use. |
imObj | : A list of vpImageSimulator instances. |
Definition at line 807 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::displayImageSimulator, vpList< type >::front(), vpWireFrameSimulator::initScene(), vpList< type >::next(), vpWireFrameSimulator::objectImage, vpList< type >::outside(), and vpList< type >::value().
|
inherited |
Initialize the simulator. It enables to choose the type of object which will be used to display the object at the current position. The object at the desired position is not displayed.
It exists several default scenes you can use. Use the vpSceneObject attributes to use them in this method. The corresponding files are stored in the "data" folder which is in the ViSP build directory.
It is also possible to add a list of vpImageSimulator instances. They will be automatically projected into the image. The position of the four corners have to be given in the object frame.
obj | : Type of scene used to display the object at the current position. |
imObj | : A list of vpImageSimulator instances. |
Definition at line 907 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::displayImageSimulator, vpList< type >::front(), vpWireFrameSimulator::initScene(), vpList< type >::next(), vpWireFrameSimulator::objectImage, vpList< type >::outside(), and vpList< type >::value().
|
inherited |
Initialize the simulator. It enables to choose the type of scene which will be used to display the object at the current position. The object at the desired position is not displayed.
Here you can use the scene you want. You have to set the path to a .bnd or a .wrl file which is a 3D model file.
It is also possible to add a list of vpImageSimulator instances. They will be automatically projected into the image. The position of the four corners have to be given in the object frame.
obj | : Path to the scene file you want to use. |
imObj | : A list of vpImageSimulator instances. |
Definition at line 996 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::displayImageSimulator, vpList< type >::front(), vpWireFrameSimulator::initScene(), vpList< type >::next(), vpWireFrameSimulator::objectImage, vpList< type >::outside(), and vpList< type >::value().
|
protectedvirtual |
Method used to check if the robot reached a joint limit.
Implements vpRobotSimulator.
Definition at line 1746 of file vpSimulatorAfma6.cpp.
References vpAfma6::_joint_max, vpAfma6::_joint_min, and vpRobotSimulator::get_artCoord().
Referenced by updateArticularPosition().
|
inlinestaticprotectedinherited |
Function used to launch the thread which moves the robot.
Definition at line 339 of file vpRobotSimulator.h.
Referenced by vpSimulatorAfma6(), and vpSimulatorViper850::vpSimulatorViper850().
void vpSimulatorAfma6::move | ( | const char * | filename | ) |
Moves the robot to the joint position specified in the filename.
filename | File containing a joint position. |
Definition at line 2045 of file vpSimulatorAfma6.cpp.
References vpRobot::ARTICULAR_FRAME, readPosFile(), setPosition(), setRobotState(), and vpRobot::STATE_POSITION_CONTROL.
|
protectedinherited |
Enables to change the external camera position.
Definition at line 1763 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::blocked, vpWireFrameSimulator::blockedr, vpWireFrameSimulator::blockedt, vpWireFrameSimulator::blockedz, vpHomogeneousMatrix::buildFrom(), vpMouseButton::button1, vpMouseButton::button2, vpMouseButton::button3, vpImagePoint::get_i(), vpImagePoint::get_j(), vpDisplay::getClick(), vpDisplay::getClickUp(), vpImage< Type >::getHeight(), vpDisplay::getPointerPosition(), vpImage< Type >::getWidth(), vpMath::minimum(), vpWireFrameSimulator::old_iPr, vpWireFrameSimulator::old_iPt, vpWireFrameSimulator::old_iPz, and vpMath::rad().
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), and vpWireFrameSimulator::getExternalImage().
|
protectedinherited |
Enables to change the external camera position.
Definition at line 1857 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::blocked, vpWireFrameSimulator::blockedr, vpWireFrameSimulator::blockedt, vpWireFrameSimulator::blockedz, vpHomogeneousMatrix::buildFrom(), vpMouseButton::button1, vpMouseButton::button2, vpMouseButton::button3, vpImagePoint::get_i(), vpImagePoint::get_j(), vpDisplay::getClick(), vpDisplay::getClickUp(), vpImage< Type >::getHeight(), vpDisplay::getPointerPosition(), vpImage< Type >::getWidth(), vpMath::minimum(), vpWireFrameSimulator::old_iPr, vpWireFrameSimulator::old_iPt, vpWireFrameSimulator::old_iPz, and vpMath::rad().
|
inherited |
This function gets the robot constant parameters from a file.
filename | : File name containing the robot constant parameters, like max/min joint values, distance between 5 and 6 axis, coupling factor between axis 5 and 6, and the hand-to-eye homogenous matrix. |
Definition at line 1051 of file vpAfma6.cpp.
References vpAfma6::_coupl_56, vpAfma6::_eMc, vpAfma6::_erc, vpAfma6::_etc, vpAfma6::_joint_max, vpAfma6::_joint_min, vpAfma6::_long_56, vpHomogeneousMatrix::buildFrom(), vpRobotException::readingParametersError, and vpERROR_TRACE.
Referenced by vpAfma6::init().
|
protectedinherited |
Project the center of the internal camera into the external camera view.
Definition at line 1952 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::camMf, vpMeterPixelConversion::convertPoint(), vpPoint::get_x(), vpPoint::get_y(), vpWireFrameSimulator::getExternalCameraParameters(), vpHomogeneousMatrix::inverse(), vpWireFrameSimulator::rotz, vpPoint::setWorldCoordinates(), and vpForwardProjection::track().
Referenced by vpWireFrameSimulator::displayTrajectory(), and vpWireFrameSimulator::getExternalImage().
|
protectedinherited |
Project the center of the internal camera into the external camera view.
Definition at line 1970 of file vpWireFrameSimulator.cpp.
References vpWireFrameSimulator::camMf, vpMeterPixelConversion::convertPoint(), vpPoint::get_x(), vpPoint::get_y(), vpWireFrameSimulator::getExternalCameraParameters(), vpHomogeneousMatrix::inverse(), vpWireFrameSimulator::rotz, vpPoint::setWorldCoordinates(), and vpForwardProjection::track().
|
protectedinherited |
Project the center of the internal camera into the external camera view.
Definition at line 1988 of file vpWireFrameSimulator.cpp.
References vpMeterPixelConversion::convertPoint(), vpPoint::get_x(), vpPoint::get_y(), vpWireFrameSimulator::getExternalCameraParameters(), vpHomogeneousMatrix::inverse(), vpWireFrameSimulator::rotz, vpPoint::setWorldCoordinates(), and vpForwardProjection::track().
|
protectedinherited |
Project the center of the internal camera into the external camera view.
Definition at line 2006 of file vpWireFrameSimulator.cpp.
References vpMeterPixelConversion::convertPoint(), vpPoint::get_x(), vpPoint::get_y(), vpWireFrameSimulator::getExternalCameraParameters(), vpHomogeneousMatrix::inverse(), vpWireFrameSimulator::rotz, vpPoint::setWorldCoordinates(), and vpForwardProjection::track().
|
static |
Read joint positions in a specific Afma6 position file.
This position file has to start with a header. The six joint positions are given after the "R:" keyword. The first 3 values correspond to the joint translations X,Y,Z expressed in meters. The 3 last values correspond to the joint rotations A,B,C expressed in degres to be more representative for the user. Theses values are then converted in radians in q. The character "#" starting a line indicates a comment.
A typical content of such a file is given below:
filename | : Name of the position file to read. |
q | : Joint positions: X,Y,Z,A,B,C. Translations X,Y,Z are expressed in meters, while joint rotations A,B,C in radians. |
The code below shows how to read a position from a file and move the robot to this position.
Definition at line 1934 of file vpSimulatorAfma6.cpp.
References vpAfma6::njoint, vpMath::rad(), and vpColVector::resize().
Referenced by move(), and setPosition().
|
staticinherited |
Saturate velocities.
v_in | : Vector of input velocities to saturate. Translation velocities should be expressed in m/s while rotation velocities in rad/s. |
v_max | : Vector of maximal allowed velocities. Maximal translation velocities should be expressed in m/s while maximal rotation velocities in rad/s. |
verbose | : Print a message indicating which axis causes the saturation. |
vpRobotException::dimensionError | : If the input vectors have different dimensions. |
The code below shows how to use this static method in order to saturate a velocity skew vector.
Definition at line 114 of file vpRobot.cpp.
References vpException::dimensionError, and vpColVector::size().
Referenced by vpRobotPioneer::setVelocity(), vpRobotAfma4::setVelocity(), vpRobotAfma6::setVelocity(), and vpRobotViper850::setVelocity().
|
static |
Save joint (articular) positions in a specific Afma6 position file.
This position file starts with a header on the first line. After convertion of the rotations in degrees, the joint position q is written on a line starting with the keyword "R: ". See readPosFile() documentation for an example of such a file.
filename | : Name of the position file to create. |
q | : Joint positions [X,Y,Z,A,B,C] to save in the filename. Translations X,Y,Z are expressed in meters, while rotations A,B,C in radians. |
Definition at line 2007 of file vpSimulatorAfma6.cpp.
References vpMath::deg().
|
inlineprotectedinherited |
Definition at line 373 of file vpRobotSimulator.h.
Referenced by initialiseCameraRelativeToObject(), vpSimulatorViper850::initialiseCameraRelativeToObject(), setPosition(), vpSimulatorViper850::setPosition(), updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
|
inlineprotectedinherited |
Definition at line 383 of file vpRobotSimulator.h.
Referenced by computeArticularVelocity(), vpSimulatorViper850::computeArticularVelocity(), initialiseCameraRelativeToObject(), vpSimulatorViper850::initialiseCameraRelativeToObject(), initialiseObjectRelativeToCamera(), vpSimulatorViper850::initialiseObjectRelativeToCamera(), setPosition(), vpSimulatorViper850::setPosition(), stopMotion(), vpSimulatorViper850::stopMotion(), updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
|
inlineprotectedinherited |
Definition at line 398 of file vpRobotSimulator.h.
Referenced by vpRobotSimulator::getInternalView(), init(), updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
|
inlineinherited |
Set the pose between the object and the fixed world frame.
fMo | : The pose between the object and the fixed world frame. |
Definition at line 283 of file vpRobotSimulator.h.
References vpWireFrameSimulator::fMo.
|
inlineprotectedinherited |
Definition at line 393 of file vpRobotSimulator.h.
Referenced by initialiseCameraRelativeToObject(), vpSimulatorViper850::initialiseCameraRelativeToObject(), initialiseObjectRelativeToCamera(), vpSimulatorViper850::initialiseObjectRelativeToCamera(), setPosition(), vpSimulatorViper850::setPosition(), setVelocity(), vpSimulatorViper850::setVelocity(), stopMotion(), and vpSimulatorViper850::stopMotion().
|
inlineinherited |
Set the color used to display the camera in the external view.
col | : The desired color. |
Definition at line 244 of file vpRobotSimulator.h.
void vpSimulatorAfma6::setCameraParameters | ( | const vpCameraParameters | cam | ) |
Set the intrinsic camera parameters.
cam | : The desired camera parameters. |
Definition at line 460 of file vpSimulatorAfma6.cpp.
References vpCameraParameters::get_px(), vpCameraParameters::get_py(), vpWireFrameSimulator::px_int, and vpWireFrameSimulator::py_int.
Referenced by init().
|
inlineinherited |
Set the position of the camera relative to the object.
cMo | : The pose of the camera. |
Definition at line 316 of file vpWireFrameSimulator.h.
References vpHomogeneousMatrix::inverse().
|
inlineinherited |
Set the position of the the world reference frame relative to the camera.
fMc | : The pose of the camera. |
Definition at line 323 of file vpWireFrameSimulator.h.
References vpHomogeneousMatrix::inverse().
|
inlineinherited |
Set the parameter which enables to choose the size of the main camera in the external camera views. By default this parameter is set to 1.
factor | : The ration for the camera size. |
Definition at line 524 of file vpWireFrameSimulator.h.
|
inlineinherited |
Set the color used to display the camera trajectory in the external view.
col | : The desired color. |
Definition at line 366 of file vpWireFrameSimulator.h.
|
inlineinherited |
Set the way to display the history of the main camera trajectory in the main external view. The choice is given between displaying lines and points.
camTrajType | : The chosen way to display the camera trajectory. |
Definition at line 539 of file vpWireFrameSimulator.h.
|
inlineinherited |
Set the flag used to force the sampling time in the thread computing the robot's displacement to a constant value (samplingTime). It may be useful if the main thread (computing the features) is very time consuming. False by default.
_constantSamplingTimeMode | : The new value of the constantSamplingTimeMode flag. |
Definition at line 313 of file vpRobotSimulator.h.
|
inlineinherited |
Set the color used to display the object at the current position in the robot's camera view.
col | : The desired color. |
Definition at line 251 of file vpRobotSimulator.h.
|
inlineinherited |
Set the desired position of the robot's camera relative to the object.
cdMo | : The desired pose of the camera. |
Definition at line 214 of file vpRobotSimulator.h.
References vpWireFrameSimulator::setDesiredCameraPosition().
|
inlineinherited |
Set the color used to display the object at the desired position in the robot's camera view.
col | : The desired color. |
Definition at line 258 of file vpRobotSimulator.h.
|
inlineinherited |
Enable or disable the displaying of the camera trajectory in the main external camera view.
By default the trajectory is displayed.
displayCameraTrajectory | : Set to true to display the camera trajectory. |
Definition at line 389 of file vpWireFrameSimulator.h.
|
inlineinherited |
Set the way to draw the robot. Depending on what you choose you can display a 3D wireframe model or a set of lines linking the frames used to compute the geometrical model.
dispType | : Type of display. Can be MODEL_3D or MODEL_DH. |
Definition at line 297 of file vpRobotSimulator.h.
|
inlineinherited |
Set the internal camera parameters.
cam | : The desired camera parameters. |
Definition at line 507 of file vpWireFrameSimulator.h.
References vpCameraParameters::get_px(), and vpCameraParameters::get_py().
Referenced by initDisplay(), and vpSimulatorViper850::initDisplay().
|
inlineinherited |
Set the external camera point of view.
camMf | : The pose of the external camera relative to the world reference frame. |
Definition at line 224 of file vpRobotSimulator.h.
References vpWireFrameSimulator::setExternalCameraPosition().
Referenced by initDisplay(), and vpSimulatorViper850::initDisplay().
|
inlineinherited |
Set the internal camera parameters.
cam | : The desired camera parameters. |
Definition at line 497 of file vpWireFrameSimulator.h.
References vpCameraParameters::get_px(), and vpCameraParameters::get_py().
void vpSimulatorAfma6::setJointLimit | ( | vpColVector | limitMin, |
vpColVector | limitMax | ||
) |
This method enables to set the minimum and maximum joint limits for all the six axis of the robot. The three first values have to be given in meter and the others in radian.
limitMin | : The minimum joint limits are given in a vector of size 6. The three first values have to be given in meter and the others in radian. |
limitMax | : The maximum joint limits are given in a vector of size 6. The three first values have to be given in meter and the others in radian. |
Definition at line 1690 of file vpSimulatorAfma6.cpp.
References vpAfma6::_joint_max, vpAfma6::_joint_min, vpMatrix::getRows(), and vpTRACE.
|
inherited |
Set the maximal rotation velocity that can be sent to the robot during a velocity control.
maxVr | : Maximum rotation velocity expressed in rad/s. |
Definition at line 220 of file vpRobot.cpp.
Referenced by setPosition().
|
inherited |
Set the maximal translation velocity that can be sent to the robot during a velocity control.
maxVt | : Maximum translation velocity expressed in m/s. |
Definition at line 196 of file vpRobot.cpp.
Referenced by setPosition().
|
inlineinherited |
Set the maximum number of main camera's positions which are stored. Those position can be displayed in the external camera field of view. By default this parameter is set to 1000.
nbPt | : The desired number of position which are saved. |
Definition at line 517 of file vpWireFrameSimulator.h.
|
virtual |
Move to an absolute position with a given percent of max velocity. The percent of max velocity is to set with setPositioningVelocity(). The position to reach can be specified in joint coordinates, in the camera frame or in the reference frame.
q | : A six dimension vector corresponding to the position to reach. All the positions are expressed in meters for the translations and radians for the rotations. If the position is out of range, an exception is provided. |
frame | : Frame in which the position is expressed. |
vpRobotException::lowLevelError | : vpRobot::MIXT_FRAME not implemented. |
vpRobotException::positionOutOfRangeError | : The requested position is out of range. |
To catch the exception if the position is out of range, modify the code like:
Implements vpRobot.
Definition at line 1261 of file vpSimulatorAfma6.cpp.
References vpRobot::ARTICULAR_FRAME, vpRobot::CAMERA_FRAME, vpWireFrameSimulator::fMc, vpRobotSimulator::get_artCoord(), vpAfma6::get_fMc(), vpAfma6::getInverseKinematics(), vpRobot::getRobotState(), vpRobotException::lowLevelError, vpRobot::MIXT_FRAME, vpRobotException::positionOutOfRangeError, vpRobot::REFERENCE_FRAME, vpRobotSimulator::set_artCoord(), vpRobotSimulator::set_artVel(), vpRobotSimulator::set_velocity(), vpRobotSimulator::setVelocityCalled, vpRobot::STATE_POSITION_CONTROL, vpMatrix::sumSquare(), and vpERROR_TRACE.
Referenced by move(), and setPosition().
void vpSimulatorAfma6::setPosition | ( | const vpRobot::vpControlFrameType | frame, |
const double | pos1, | ||
const double | pos2, | ||
const double | pos3, | ||
const double | pos4, | ||
const double | pos5, | ||
const double | pos6 | ||
) |
Move to an absolute position with a given percent of max velocity. The percent of max velocity is to set with setPositioningVelocity(). The position to reach can be specified in joint coordinates, in the camera frame or in the reference frame.
This method overloads setPosition(const vpRobot::vpControlFrameType, const vpColVector &).
pos1,pos2,pos3,pos4,pos5,pos6 | : The six coordinates of the position to reach. All the positions are expressed in meters for the translations and radians for the rotations. |
frame | : Frame in which the position is expressed. |
vpRobotException::lowLevelError | : vpRobot::MIXT_FRAME not implemented. |
vpRobotException::positionOutOfRangeError | : The requested position is out of range. |
Definition at line 1467 of file vpSimulatorAfma6.cpp.
References setPosition(), and vpERROR_TRACE.
void vpSimulatorAfma6::setPosition | ( | const char * | filename | ) |
Move to an absolute joint position with a given percent of max velocity. The robot state is set to position control. The percent of max velocity is to set with setPositioningVelocity(). The position to reach is defined in the position file.
filename | : Name of the position file to read. The readPosFile() documentation shows a typical content of such a position file. |
This method has the same behavior than the sample code given below;
vpRobotException::lowLevelError | : vpRobot::MIXT_FRAME not implemented. |
vpRobotException::positionOutOfRangeError | : The requested position is out of range. |
Definition at line 1528 of file vpSimulatorAfma6.cpp.
References vpRobot::ARTICULAR_FRAME, vpRobotException::lowLevelError, readPosFile(), setPosition(), setRobotState(), vpRobot::STATE_POSITION_CONTROL, and vpERROR_TRACE.
bool vpSimulatorAfma6::setPosition | ( | const vpHomogeneousMatrix & | cdMo, |
vpImage< unsigned char > * | Iint = NULL , |
||
const double & | errMax = 0.001 |
||
) |
This method enable to move the robot with respect to the initialized object. The robot trajectory is a straight line from the current position to the one corresponding to the desired pose (3D visual servoing).
cdMo | : the desired pose of the camera wrt. the object |
Iint | : pointer to the image where the internal view is displayed |
errMax | : maximum error to consider the pose is reached |
Definition at line 2385 of file vpSimulatorAfma6.cpp.
References vpThetaUVector::buildFrom(), vpRobot::CAMERA_FRAME, vpDisplay::display(), vpRobot::eJe, vpMatrix::euclideanNorm(), vpHomogeneousMatrix::extract(), vpDisplay::flush(), vpRobotSimulator::get_cMo(), vpRobotSimulator::getInternalView(), vpRobot::getMaxRotationVelocity(), vpRobot::getMaxTranslationVelocity(), vpHomogeneousMatrix::inverse(), vpTime::measureTimeMs(), vpRobotSimulator::set_artVel(), vpRobotSimulator::set_velocity(), vpRobot::setMaxRotationVelocity(), vpRobot::setMaxTranslationVelocity(), setVelocity(), vpRotationMatrix::t(), and vpTime::wait().
|
inline |
Definition at line 215 of file vpSimulatorAfma6.h.
References vpRobotSimulator::velocity.
|
inherited |
Definition at line 159 of file vpRobot.cpp.
Referenced by init(), vpSimulatorViper850::init(), setVelocity(), and vpSimulatorViper850::setVelocity().
|
virtual |
Change the robot state.
newState | : New requested robot state. |
Reimplemented from vpRobot.
Definition at line 735 of file vpSimulatorAfma6.cpp.
References vpRobot::getRobotState(), vpRobot::setRobotState(), vpRobot::STATE_ACCELERATION_CONTROL, vpRobot::STATE_POSITION_CONTROL, vpRobot::STATE_STOP, vpRobot::STATE_VELOCITY_CONTROL, and stopMotion().
Referenced by init(), move(), setPosition(), and stopMotion().
|
inlineinherited |
Set the sampling time for the thread which compute the robot displacements
_samplingTime | : The new value of the sampling time in ms. |
Definition at line 325 of file vpRobotSimulator.h.
References vpTime::minTimeForUsleepCall.
|
inlineinherited |
Set the parameter which enable or disable the singularity mangement
Definition at line 200 of file vpRobotSimulator.h.
|
inlineprotectedinherited |
Set the current tool type.
Definition at line 172 of file vpAfma6.h.
Referenced by vpAfma6::init(), init(), and vpRobotAfma6::init().
|
virtual |
Apply a velocity to the robot.
frame | : Control frame in which the velocity is expressed. Velocities could be expressed in articular, camera frame, reference frame or mixt frame. |
vel | : Velocity vector. Translation velocities are expressed in m/s while rotation velocities in rad/s. The size of this vector is always 6. |
vpRobotException::wrongStateError | : If a the robot is not configured to handle a velocity. The robot can handle a velocity only if the velocity control mode is set. For that, call setRobotState( vpRobot::STATE_VELOCITY_CONTROL) before setVelocity(). |
Implements vpRobotSimulator.
Definition at line 839 of file vpSimulatorAfma6.cpp.
References vpRobot::ARTICULAR_FRAME, vpRobot::CAMERA_FRAME, vpRobot::getMaxRotationVelocity(), vpRobot::getMaxTranslationVelocity(), vpRobot::getRobotState(), vpMatrix::getRows(), vpRobotSimulator::jointLimit, vpRobot::MIXT_FRAME, vpRobot::REFERENCE_FRAME, vpRobotSimulator::set_velocity(), vpRobot::setRobotFrame(), vpRobotSimulator::setVelocityCalled, vpRobot::STATE_VELOCITY_CONTROL, vpERROR_TRACE, and vpRobotException::wrongStateError.
Referenced by setPosition().
|
protected |
Test to detect if the robot is near one of its singularities.
The goal is to avoid the problems du to such configurations.
Definition at line 1720 of file vpSimulatorAfma6.cpp.
Referenced by computeArticularVelocity().
void vpSimulatorAfma6::stopMotion | ( | void | ) |
Stop the robot.
Definition at line 2144 of file vpSimulatorAfma6.cpp.
References vpRobot::getRobotState(), vpRobotSimulator::set_artVel(), vpRobotSimulator::set_velocity(), setRobotState(), vpRobot::STATE_STOP, and vpRobot::STATE_VELOCITY_CONTROL.
Referenced by setRobotState().
|
protectedvirtual |
Method lauched by the thread to compute the position of the robot in the articular frame.
Implements vpRobotSimulator.
Definition at line 472 of file vpSimulatorAfma6.cpp.
References vpAfma6::_joint_max, vpAfma6::_joint_min, vpRobotSimulator::cameraParam, compute_fMi(), computeArticularVelocity(), vpRobotSimulator::constantSamplingTimeMode, vpMeterPixelConversion::convertPoint(), vpDisplay::display(), vpRobotSimulator::displayAllowed, vpDisplay::displayCamera(), vpDisplay::displayFrame(), vpDisplay::displayLine(), vpRobotSimulator::displayType, vpDisplay::flush(), vpRobotSimulator::fMi, vpRobotSimulator::get_artCoord(), vpRobotSimulator::get_artVel(), vpRobotSimulator::get_displayBusy(), get_fMi(), vpPoint::get_x(), vpPoint::get_y(), vpRobotSimulator::getExternalCameraPosition(), getExternalImage(), vpColor::green, vpRobotSimulator::I, isInJointLimit(), vpRobotSimulator::jointLimit, vpRobotSimulator::jointLimitArt, vpTime::measureTimeMs(), vpRobotSimulator::MODEL_3D, vpColor::none, vpRobotSimulator::robotStop, vpRobotSimulator::samplingTime, vpRobotSimulator::set_artCoord(), vpRobotSimulator::set_artVel(), vpRobotSimulator::set_displayBusy(), vpRobotSimulator::setVelocityCalled, vpPoint::setWorldCoordinates(), vpRobotSimulator::tcur, vpRobotSimulator::tprev, vpForwardProjection::track(), and vpTime::wait().
|
protectedinherited |
Definition at line 182 of file vpAfma6.h.
Referenced by vpAfma6::get_fMe(), vpAfma6::getCoupl56(), vpAfma6::getInverseKinematics(), vpRobotAfma6::init(), vpAfma6::parseConfigFile(), and vpAfma6::vpAfma6().
|
protectedinherited |
Definition at line 190 of file vpAfma6.h.
Referenced by computeArticularVelocity(), vpAfma6::get_cMe(), vpAfma6::get_fMc(), vpAfma6::getInverseKinematics(), getVelocity(), vpAfma6::init(), init(), vpAfma6::parseConfigFile(), and vpAfma6::vpAfma6().
|
protectedinherited |
Definition at line 188 of file vpAfma6.h.
Referenced by vpAfma6::init(), init(), vpRobotAfma6::init(), and vpAfma6::parseConfigFile().
|
protectedinherited |
Definition at line 187 of file vpAfma6.h.
Referenced by vpAfma6::init(), init(), vpRobotAfma6::init(), and vpAfma6::parseConfigFile().
|
protectedinherited |
Definition at line 184 of file vpAfma6.h.
Referenced by vpAfma6::getInverseKinematics(), vpAfma6::getJointMax(), init(), vpRobotAfma6::init(), isInJointLimit(), vpAfma6::parseConfigFile(), setJointLimit(), updateArticularPosition(), and vpAfma6::vpAfma6().
|
protectedinherited |
Definition at line 185 of file vpAfma6.h.
Referenced by vpAfma6::getInverseKinematics(), vpAfma6::getJointMin(), init(), vpRobotAfma6::init(), isInJointLimit(), vpAfma6::parseConfigFile(), setJointLimit(), updateArticularPosition(), and vpAfma6::vpAfma6().
|
protectedinherited |
Definition at line 183 of file vpAfma6.h.
Referenced by compute_fMi(), vpAfma6::get_eJe(), vpAfma6::get_fJe(), vpAfma6::get_fMe(), vpAfma6::getInverseKinematics(), vpAfma6::getLong56(), vpRobotAfma6::init(), vpAfma6::parseConfigFile(), and vpAfma6::vpAfma6().
|
protectedinherited |
The articular coordinates
Definition at line 119 of file vpRobotSimulator.h.
Referenced by init(), and vpSimulatorViper850::init().
|
protectedinherited |
The articular velocity
Definition at line 121 of file vpRobotSimulator.h.
Referenced by init(), and vpSimulatorViper850::init().
|
protectedinherited |
Definition at line 271 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::navigation(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 268 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::navigation(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 270 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::navigation(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 269 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::navigation(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 251 of file vpWireFrameSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), vpWireFrameSimulator::getExternalImage(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 237 of file vpWireFrameSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), vpWireFrameSimulator::getExternalImage(), initArms(), vpSimulatorViper850::initArms(), vpRobotSimulator::initScene(), vpWireFrameSimulator::initScene(), and vpWireFrameSimulator::~vpWireFrameSimulator().
|
protectedinherited |
Definition at line 286 of file vpWireFrameSimulator.h.
Referenced by initArms(), vpSimulatorViper850::initArms(), vpWireFrameSimulator::initScene(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
External camera parameters
Definition at line 154 of file vpRobotSimulator.h.
Referenced by initDisplay(), vpSimulatorViper850::initDisplay(), updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
|
protectedinherited |
Definition at line 259 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::vpWireFrameSimulator(), and vpWireFrameSimulator::~vpWireFrameSimulator().
|
protectedinherited |
Definition at line 243 of file vpWireFrameSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::getInternalImage(), and vpWireFrameSimulator::projectCameraTrajectory().
|
protectedinherited |
Definition at line 273 of file vpWireFrameSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), and vpWireFrameSimulator::getExternalImage().
|
protectedinherited |
Definition at line 252 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::displayTrajectory(), vpWireFrameSimulator::getExternalImage(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 288 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::displayTrajectory(), vpWireFrameSimulator::getExternalImage(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 246 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getInternalImage(), and vpRobotSimulator::getInternalView().
|
protectedinherited |
|
staticinherited |
File where constant parameters in relation with the robot are stored: joint max, min, coupling factor between 4 ant 5 joint, distance between 5 and 6 joint, tranformation eMc between end-effector and camera frame.
Definition at line 76 of file vpAfma6.h.
Referenced by vpAfma6::init().
|
staticinherited |
Definition at line 85 of file vpAfma6.h.
Referenced by vpAfma6::getCameraParameters().
|
staticinherited |
Name of the camera attached to the CCMOP tool (vpAfma6ToolType::TOOL_CCMOP).
Definition at line 90 of file vpAfma6.h.
Referenced by vpAfma6::getCameraParameters(), and getCameraParameters().
|
staticinherited |
Definition at line 78 of file vpAfma6.h.
Referenced by vpAfma6::init().
|
staticinherited |
Definition at line 77 of file vpAfma6.h.
Referenced by vpAfma6::init().
|
staticinherited |
Definition at line 84 of file vpAfma6.h.
Referenced by vpAfma6::init().
|
staticinherited |
Definition at line 83 of file vpAfma6.h.
Referenced by vpAfma6::init().
|
staticinherited |
Definition at line 80 of file vpAfma6.h.
Referenced by vpAfma6::init().
|
staticinherited |
Definition at line 79 of file vpAfma6.h.
Referenced by vpAfma6::init().
|
staticinherited |
Definition at line 82 of file vpAfma6.h.
Referenced by vpAfma6::init().
|
staticinherited |
Definition at line 81 of file vpAfma6.h.
Referenced by vpAfma6::init().
|
staticinherited |
Name of the generic camera attached to the robot hand (vpAfma6ToolType::TOOL_GENERIC_CAMERA).
Definition at line 105 of file vpAfma6.h.
Referenced by vpAfma6::getCameraParameters().
|
staticinherited |
Name of the camera attached to the 2 fingers gripper tool (vpAfma6ToolType::TOOL_GRIPPER).
Definition at line 95 of file vpAfma6.h.
Referenced by vpAfma6::getCameraParameters(), and getCameraParameters().
|
staticinherited |
Name of the camera attached to the vacuum gripper tool (vpAfma6ToolType::TOOL_VACUUM).
Definition at line 100 of file vpAfma6.h.
Referenced by vpAfma6::getCameraParameters().
|
protectedinherited |
Flag used to force the sampling time in the thread computing the robot's displacement to a constant value (samplingTime). It may be useful if the main thread (computing the features) is very time consumming. False by default.
Definition at line 172 of file vpRobotSimulator.h.
Referenced by updateArticularPosition(), vpSimulatorViper850::updateArticularPosition(), and vpRobotSimulator::vpRobotSimulator().
|
protectedinherited |
Definition at line 253 of file vpWireFrameSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
staticinherited |
|
staticinherited |
|
static |
Definition at line 180 of file vpSimulatorAfma6.h.
Referenced by init().
|
staticinherited |
Default tool attached to the robot end effector.
Definition at line 117 of file vpAfma6.h.
Referenced by vpAfma6::init(), and vpRobotAfma6::init().
|
protectedinherited |
Definition at line 254 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 249 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), and vpWireFrameSimulator::initScene().
|
protectedinherited |
Definition at line 236 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), vpWireFrameSimulator::initScene(), and vpWireFrameSimulator::~vpWireFrameSimulator().
|
protectedinherited |
Definition at line 157 of file vpRobotSimulator.h.
Referenced by vpRobotSimulator::vpRobotSimulator().
|
protectedinherited |
Definition at line 170 of file vpRobotSimulator.h.
Referenced by updateArticularPosition(), vpSimulatorViper850::updateArticularPosition(), and vpRobotSimulator::vpRobotSimulator().
|
protectedinherited |
Definition at line 142 of file vpRobotSimulator.h.
Referenced by vpRobotSimulator::vpRobotSimulator().
|
protectedinherited |
Definition at line 283 of file vpWireFrameSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), vpWireFrameSimulator::getExternalImage(), initArms(), vpSimulatorViper850::initArms(), vpRobotSimulator::initScene(), vpWireFrameSimulator::initScene(), vpWireFrameSimulator::vpWireFrameSimulator(), and vpWireFrameSimulator::~vpWireFrameSimulator().
|
protectedinherited |
Definition at line 258 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getExternalImage(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 282 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), vpWireFrameSimulator::initScene(), vpWireFrameSimulator::vpWireFrameSimulator(), and vpWireFrameSimulator::~vpWireFrameSimulator().
|
protectedinherited |
Definition at line 284 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::getInternalImage(), vpWireFrameSimulator::initScene(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 281 of file vpWireFrameSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), vpWireFrameSimulator::initScene(), vpWireFrameSimulator::vpWireFrameSimulator(), and vpWireFrameSimulator::~vpWireFrameSimulator().
|
protectedinherited |
Definition at line 168 of file vpRobotSimulator.h.
Referenced by updateArticularPosition(), vpSimulatorViper850::updateArticularPosition(), and vpRobotSimulator::vpRobotSimulator().
|
protectedinherited |
robot Jacobian expressed in the end-effector frame
Definition at line 113 of file vpRobot.h.
Referenced by computeArticularVelocity(), vpSimulatorViper850::computeArticularVelocity(), vpRobotCamera::get_eJe(), getVelocity(), vpSimulatorViper850::getVelocity(), vpRobotCamera::init(), setPosition(), and vpRobotAfma4::setVelocity().
|
protectedinherited |
|
protectedinherited |
Definition at line 290 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getExternalImage(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 274 of file vpWireFrameSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), and vpWireFrameSimulator::getExternalImage().
|
protectedinherited |
robot Jacobian expressed in the robot reference frame available
Definition at line 117 of file vpRobot.h.
Referenced by computeArticularVelocity(), vpSimulatorViper850::computeArticularVelocity(), getVelocity(), and vpSimulatorViper850::getVelocity().
|
protectedinherited |
|
protectedinherited |
Definition at line 242 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getExternalImage(), getPosition(), vpSimulatorViper850::getPosition(), initialiseCameraRelativeToObject(), vpSimulatorViper850::initialiseCameraRelativeToObject(), setPosition(), and vpSimulatorViper850::setPosition().
|
protectedinherited |
Table containing all the homogeneous matrices between the reference frame of the robot and the frames you used to compute the Denavit-Hartenberg representation
If you use a camera at the end of the effector, the last homogeneous matrix has to be the one between the reference frame and the camera frame (fMc)
Definition at line 116 of file vpRobotSimulator.h.
Referenced by compute_fMi(), vpSimulatorViper850::compute_fMi(), init(), vpSimulatorViper850::init(), updateArticularPosition(), vpSimulatorViper850::updateArticularPosition(), ~vpSimulatorAfma6(), and vpSimulatorViper850::~vpSimulatorViper850().
|
protectedinherited |
Definition at line 241 of file vpWireFrameSimulator.h.
Referenced by vpRobotSimulator::get_cMo(), vpRobotSimulator::get_fMo(), getExternalImage(), vpSimulatorViper850::getExternalImage(), vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), initialiseCameraRelativeToObject(), vpSimulatorViper850::initialiseCameraRelativeToObject(), initialiseObjectRelativeToCamera(), vpSimulatorViper850::initialiseObjectRelativeToCamera(), vpRobotSimulator::set_fMo(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 261 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::vpWireFrameSimulator(), and vpWireFrameSimulator::~vpWireFrameSimulator().
|
protectedinherited |
Definition at line 126 of file vpRobotSimulator.h.
Referenced by vpSimulatorAfma6(), vpSimulatorViper850::vpSimulatorViper850(), ~vpSimulatorAfma6(), and vpSimulatorViper850::~vpSimulatorViper850().
Definition at line 91 of file vpRobotSimulator.h.
Referenced by updateArticularPosition(), vpSimulatorViper850::updateArticularPosition(), and vpRobotSimulator::vpRobotSimulator().
|
protectedinherited |
True if one of the joint reach the limit
Definition at line 147 of file vpRobotSimulator.h.
Referenced by computeArticularVelocity(), vpSimulatorViper850::computeArticularVelocity(), setVelocity(), vpSimulatorViper850::setVelocity(), updateArticularPosition(), vpSimulatorViper850::updateArticularPosition(), and vpRobotSimulator::vpRobotSimulator().
|
protectedinherited |
Index of the joint which is in limit
Definition at line 149 of file vpRobotSimulator.h.
Referenced by updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
|
staticprotectedinherited |
|
staticprotectedinherited |
|
protectedinherited |
Definition at line 129 of file vpRobotSimulator.h.
Referenced by vpSimulatorAfma6(), vpSimulatorViper850::vpSimulatorViper850(), ~vpSimulatorAfma6(), and vpSimulatorViper850::~vpSimulatorViper850().
|
protectedinherited |
Definition at line 128 of file vpRobotSimulator.h.
Referenced by vpSimulatorAfma6(), vpSimulatorViper850::vpSimulatorViper850(), ~vpSimulatorAfma6(), and vpSimulatorViper850::~vpSimulatorViper850().
|
protectedinherited |
Definition at line 131 of file vpRobotSimulator.h.
Referenced by vpSimulatorAfma6(), vpSimulatorViper850::vpSimulatorViper850(), ~vpSimulatorAfma6(), and vpSimulatorViper850::~vpSimulatorViper850().
|
protectedinherited |
Definition at line 127 of file vpRobotSimulator.h.
Referenced by compute_fMi(), vpSimulatorViper850::compute_fMi(), vpSimulatorAfma6(), vpSimulatorViper850::vpSimulatorViper850(), ~vpSimulatorAfma6(), and vpSimulatorViper850::~vpSimulatorViper850().
|
protectedinherited |
Definition at line 130 of file vpRobotSimulator.h.
Referenced by vpSimulatorAfma6(), vpSimulatorViper850::vpSimulatorViper850(), ~vpSimulatorAfma6(), and vpSimulatorViper850::~vpSimulatorViper850().
|
protectedinherited |
Definition at line 262 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getExternalImage(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
|
staticinherited |
Number of joint.
Definition at line 174 of file vpAfma6.h.
Referenced by vpRobotAfma6::checkJointLimits(), vpRobotAfma6::get_eJe(), vpRobotAfma6::get_fJe(), vpRobotAfma6::getDisplacement(), vpAfma6::getInverseKinematics(), vpRobotAfma6::getPosition(), vpRobotAfma6::getVelocity(), init(), readPosFile(), vpRobotAfma6::readPosFile(), vpRobotAfma6::setPosition(), and vpRobotAfma6::setVelocity().
|
protectedinherited |
Definition at line 248 of file vpWireFrameSimulator.h.
|
protectedinherited |
Definition at line 238 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::getInternalImage(), vpWireFrameSimulator::initScene(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 265 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::navigation(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 267 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::navigation(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 266 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::navigation(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 260 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::vpWireFrameSimulator(), and vpWireFrameSimulator::~vpWireFrameSimulator().
|
protectedinherited |
Definition at line 196 of file vpAfma6.h.
Referenced by vpAfma6::getCameraParameters(), vpAfma6::init(), and init().
|
protectedinherited |
Definition at line 278 of file vpWireFrameSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), vpWireFrameSimulator::getExternalImage(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 276 of file vpWireFrameSimulator.h.
Referenced by getCameraParameters(), vpSimulatorViper850::getCameraParameters(), vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), initDisplay(), vpSimulatorViper850::initDisplay(), setCameraParameters(), vpSimulatorViper850::setCameraParameters(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 279 of file vpWireFrameSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), vpWireFrameSimulator::getExternalImage(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 277 of file vpWireFrameSimulator.h.
Referenced by getCameraParameters(), vpSimulatorViper850::getCameraParameters(), vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), initDisplay(), vpSimulatorViper850::initDisplay(), setCameraParameters(), vpSimulatorViper850::setCameraParameters(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
Definition at line 244 of file vpWireFrameSimulator.h.
|
protectedinherited |
Contains the 3D model of the robot's arms
Definition at line 109 of file vpRobotSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), init(), initArms(), vpSimulatorViper850::initArms(), initDisplay(), vpSimulatorViper850::initDisplay(), vpRobotSimulator::vpRobotSimulator(), ~vpSimulatorAfma6(), and vpSimulatorViper850::~vpSimulatorViper850().
|
protectedinherited |
True if the robot has to be stopped
Definition at line 145 of file vpRobotSimulator.h.
Referenced by updateArticularPosition(), vpSimulatorViper850::updateArticularPosition(), vpRobotSimulator::vpRobotSimulator(), ~vpSimulatorAfma6(), and vpSimulatorViper850::~vpSimulatorViper850().
|
protectedinherited |
Definition at line 292 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::displayTrajectory(), vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), vpWireFrameSimulator::projectCameraTrajectory(), and vpWireFrameSimulator::vpWireFrameSimulator().
|
protectedinherited |
sampling time for the thread which manages the movement of the robot
Definition at line 102 of file vpRobotSimulator.h.
Referenced by updateArticularPosition(), vpSimulatorViper850::updateArticularPosition(), and vpRobotSimulator::vpRobotSimulator().
|
protectedinherited |
Definition at line 235 of file vpWireFrameSimulator.h.
Referenced by getExternalImage(), vpSimulatorViper850::getExternalImage(), vpWireFrameSimulator::getExternalImage(), vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), vpWireFrameSimulator::initScene(), and vpWireFrameSimulator::~vpWireFrameSimulator().
|
protectedinherited |
Definition at line 256 of file vpWireFrameSimulator.h.
Referenced by vpWireFrameSimulator::getInternalImage(), vpRobotSimulator::getInternalView(), initDisplay(), vpSimulatorViper850::initDisplay(), vpWireFrameSimulator::initScene(), vpWireFrameSimulator::vpWireFrameSimulator(), and vpWireFrameSimulator::~vpWireFrameSimulator().
|
protectedinherited |
Flag used to specify to the thread managing the robot displacements that the setVelocity() method has been called.
Definition at line 175 of file vpRobotSimulator.h.
Referenced by setPosition(), vpSimulatorViper850::setPosition(), setVelocity(), vpSimulatorViper850::setVelocity(), updateArticularPosition(), vpSimulatorViper850::updateArticularPosition(), and vpRobotSimulator::vpRobotSimulator().
|
protectedinherited |
True if the singularity are automatically managed
Definition at line 151 of file vpRobotSimulator.h.
Referenced by computeArticularVelocity(), vpSimulatorViper850::computeArticularVelocity(), and vpRobotSimulator::vpRobotSimulator().
|
protectedinherited |
Size of the fMi table
Definition at line 112 of file vpRobotSimulator.h.
Referenced by vpRobotSimulator::get_cMo(), vpRobotSimulator::getInternalView(), init(), and vpSimulatorViper850::init().
|
protectedinherited |
cpu time at the begining of the robot's movement
Definition at line 104 of file vpRobotSimulator.h.
Referenced by updateArticularPosition(), vpSimulatorViper850::updateArticularPosition(), vpSimulatorAfma6(), and vpSimulatorViper850::vpSimulatorViper850().
|
protectedinherited |
|
protectedinherited |
cpu time at the end of the last robot's movement
Definition at line 106 of file vpRobotSimulator.h.
Referenced by updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
|
protectedinherited |
The velocity in the current frame (articular, camera or reference)
Definition at line 123 of file vpRobotSimulator.h.
Referenced by getVelocity(), vpSimulatorViper850::getVelocity(), setPositioningVelocity(), vpSimulatorViper850::setPositioningVelocity(), and vpRobotSimulator::vpRobotSimulator().