cisst-saw
Loading...
Searching...
No Matches
robKinematics Class Referenceabstract

#include <robKinematics.h>

Inheritance diagram for robKinematics:
robJoint robDH robHayati robModifiedDH robModifiedHayati

Public Types

enum  Convention {
  UNDEFINED , STANDARD_DH , MODIFIED_DH , HAYATI ,
  MODIFIED_HAYATI
}
 Kinematics convention. More...
Public Types inherited from robJoint
enum  Mode { ACTIVE , PASSIVE }
 Joint modes. More...
enum  Errno { ESUCCESS , EFAILURE }
typedef cmnJointType Type

Public Member Functions

 robKinematics (robKinematics::Convention convention)
 Default constructor.
 robKinematics (const robJoint &joint, robKinematics::Convention convention)
 Overloaded constructor.
virtual ~robKinematics ()
robKinematics::Convention GetConvention () const
 Return the kinematics convention.
robKinematics::Errno Read (std::istream &is)
 Read the kinematics parameters and joints parameters.
robKinematics::Errno Write (std::ostream &os) const
 Write the kinematics parameters and joints parameters.
virtual vctFrame4x4< double > ForwardKinematics (double q) const =0
 Get the position and orientation of the link.
virtual vctMatrixRotation3< double > Orientation (double q) const =0
 Get the orientation of the link.
virtual vctFixedSizeVector< double, 3 > PStar () const =0
 Return the position of the next (distal) link coordinate frame.
virtual robKinematicsClone () const =0
 Kinematics objects must be able to clone themselves.
Public Member Functions inherited from robJoint
 robJoint ()
 Default constructor.
 robJoint (cmnJointType type, robJoint::Mode mode, double offset, double min, double max, double ftmax)
virtual ~robJoint ()
const std::string & Name (void) const
std::string & Name (void)
cmnJointType GetType () const
 Return the type of the joint.
robJoint::Mode GetMode () const
 Return the mode of the joint.
double GetPosition () const
 Return the joint position.
double GetVelocity () const
 Return the joint velocity.
double GetForceTorque () const
 Return the joint force or torque.
void SetPosition (double q)
 Set the joint position.
void SetVelocity (double qd)
 Set the joint velocity.
void SetForceTorque (double ft)
 Set the force/torque.
double PositionOffset () const
 Return the offset position.
void SetPositionOffset (const double offset)
const double & PositionMin (void) const
 Return the minimum position.
double & PositionMin (void)
const double & PositionMax (void) const
 Return the maximum position.
double & PositionMax (void)
const double & ForceTorqueMax (void) const
 Return the maximum force/torque.
double & ForceTorqueMax (void)

Static Public Member Functions

static robKinematicsInstantiate (const std::string &type)
 Instantiate a kinematic convention by name.

Protected Member Functions

virtual void ReadParameters (std::istream &is)=0
 Read the parameters of the kinematics convention.
virtual void WriteParameters (std::ostream &os) const =0
 Write the parameters of the kinematics convention.

Additional Inherited Members

Static Public Attributes inherited from robJoint
static const cmnJointType UNDEFINED = CMN_JOINT_UNDEFINED
static const cmnJointType HINGE = CMN_JOINT_REVOLUTE
static const cmnJointType SLIDER = CMN_JOINT_PRISMATIC
static const cmnJointType UNIVERSAL = CMN_JOINT_UNIVERSAL
static const cmnJointType BALLSOCKET = CMN_JOINT_BALL_SOCKET

Member Enumeration Documentation

◆ Convention

Kinematics convention.

Enumerator
UNDEFINED 
STANDARD_DH 
MODIFIED_DH 
HAYATI 
MODIFIED_HAYATI 

Constructor & Destructor Documentation

◆ robKinematics() [1/2]

robKinematics::robKinematics ( robKinematics::Convention convention)

Default constructor.

◆ robKinematics() [2/2]

robKinematics::robKinematics ( const robJoint & joint,
robKinematics::Convention convention )

Overloaded constructor.

◆ ~robKinematics()

virtual robKinematics::~robKinematics ( )
inlinevirtual

Member Function Documentation

◆ Clone()

virtual robKinematics * robKinematics::Clone ( ) const
pure virtual

Kinematics objects must be able to clone themselves.

Implemented in robDH, robHayati, robModifiedDH, and robModifiedHayati.

◆ ForwardKinematics()

virtual vctFrame4x4< double > robKinematics::ForwardKinematics ( double q) const
pure virtual

Get the position and orientation of the link.

Returns the position and orientation of the link with respect to the proximal link for a given joint vale.

Parameters
jointThe joint associated with the link
Returns
The position and orientation associated with the DH parameters

Implemented in robDH, robHayati, robModifiedDH, and robModifiedHayati.

◆ GetConvention()

robKinematics::Convention robKinematics::GetConvention ( ) const
inline

Return the kinematics convention.

Returns
The DH convention: robDHStandard or robDHModified

◆ Instantiate()

robKinematics * robKinematics::Instantiate ( const std::string & type)
static

Instantiate a kinematic convention by name.

◆ Orientation()

virtual vctMatrixRotation3< double > robKinematics::Orientation ( double q) const
pure virtual

Get the orientation of the link.

Returns the orientation of the link with respect to the proximal link for a given joint vale.

Parameters
jointThe joint associated with the link
Returns
The orientation associated with the DH parameters

Implemented in robDH, robHayati, robModifiedDH, and robModifiedHayati.

◆ PStar()

virtual vctFixedSizeVector< double, 3 > robKinematics::PStar ( ) const
pure virtual

Return the position of the next (distal) link coordinate frame.

This method returns the $XYZ$ coordinates of the origin of the distal link in the coordinate frame of the proximal link. "PStar" is not a good name for this but the literature uses $ \mathbf{p}^* $ to denote this value.

Returns
The position of the next coordinate frame wrt to the current frame

Implemented in robDH, robHayati, robModifiedDH, and robModifiedHayati.

◆ Read()

robKinematics::Errno robKinematics::Read ( std::istream & is)
virtual

Read the kinematics parameters and joints parameters.

Reimplemented from robJoint.

◆ ReadParameters()

virtual void robKinematics::ReadParameters ( std::istream & is)
protectedpure virtual

Read the parameters of the kinematics convention.

Implemented in robDH, robHayati, robModifiedDH, and robModifiedHayati.

◆ Write()

robKinematics::Errno robKinematics::Write ( std::ostream & os) const
virtual

Write the kinematics parameters and joints parameters.

Reimplemented from robJoint.

◆ WriteParameters()

virtual void robKinematics::WriteParameters ( std::ostream & os) const
protectedpure virtual

Write the parameters of the kinematics convention.

Implemented in robDH, robHayati, robModifiedDH, and robModifiedHayati.


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