cisst-saw
Loading...
Searching...
No Matches
robComputedTorque Class Reference

#include <robComputedTorque.h>

Inheritance diagram for robComputedTorque:
robControllerJoints robManipulator

Public Member Functions

 robComputedTorque (const std::string &robfile, const vctFrame4x4< double > &Rtw0, const vctDynamicMatrix< double > &Kp, const vctDynamicMatrix< double > &Kd)
vctDynamicVector< double > Control (double dt, const vctDynamicVector< double > &qs, const vctDynamicVector< double > &q, const vctDynamicVector< double > &qds, const vctDynamicVector< double > &qd, const vctDynamicVector< double > &qdds, const vctDynamicVector< double > &qdd)
Public Member Functions inherited from robManipulator
virtual robManipulator::Errno LoadRobot (const std::string &linkfile)
 Load the kinematics and the dynamics of the robot.
virtual robManipulator::Errno LoadRobot (std::istream &ifs)
robManipulator::Errno LoadRobot (std::vector< robKinematics * > KinParms)
void JacobianBody (const vctDynamicVector< double > &q) const
 Evaluate the body Jacobian.
bool JacobianBody (const vctDynamicVector< double > &q, vctDynamicMatrix< double > &J) const
 Evaluate the body Jacobian and return it in the dynamic matrix J.
void JacobianSpatial (const vctDynamicVector< double > &q) const
 Evaluate the spatial Jacobian.
bool JacobianSpatial (const vctDynamicVector< double > &q, vctDynamicMatrix< double > &J) const
 Evaluate the spatial Jacobian and return it in the dynamic matrix J.
vctDynamicVector< double > RNE (const vctDynamicVector< double > &q, const vctDynamicVector< double > &qd, const vctDynamicVector< double > &qdd, const vctFixedSizeVector< double, 6 > &f, double g=9.81) const
 Recursive Newton-Euler altorithm.
vctDynamicVector< double > RNE_MDH (const vctDynamicVector< double > &q, const vctDynamicVector< double > &qd, const vctDynamicVector< double > &qdd, const vctFixedSizeVector< double, 6 > &f, double g=9.81) const
vctDynamicVector< double > RNE_MDH (const vctDynamicVector< double > &q, const vctDynamicVector< double > &qd, const vctDynamicVector< double > &qdd, const vctFixedSizeVector< double, 6 > &f, const vct3 &g) const
vctDynamicVector< double > CCG (const vctDynamicVector< double > &q, const vctDynamicVector< double > &qd, double g=9.81) const
 Coriolis/centrifugal and gravity.
vctDynamicVector< double > CCG_MDH (const vctDynamicVector< double > &q, const vctDynamicVector< double > &qd, double g=9.81) const
vctDynamicVector< double > CCG_MDH (const vctDynamicVector< double > &q, const vctDynamicVector< double > &qd, const vct3 &g) const
vctFixedSizeVector< double, 6 > BiasAcceleration (const vctDynamicVector< double > &q, const vctDynamicVector< double > &qd) const
 End-effector accelerations.
void JSinertia (double **A, const vctDynamicVector< double > &q) const
 Compute the NxN manipulator inertia matrix.
vctDynamicMatrix< double > JSinertia (const vctDynamicVector< double > &q) const
void OSinertia (double Ac[6][6], const vctDynamicVector< double > &q) const
 Compute the 6x6 manipulator inertia matrix in operation space.
vctFixedSizeMatrix< double, 4, 4 > SE3Difference (const vctFrame4x4< double > &Rt1, const vctFrame4x4< double > &Rt2) const
void AddIdentificationColumn (vctDynamicMatrix< double > &J, vctFixedSizeMatrix< double, 4, 4 > &delRt) const
 robManipulator (const vctFrame4x4< double > &Rtw0=vctFrame4x4< double >())
 robManipulator (const std::string &robotfilename, const vctFrame4x4< double > &Rtw0=vctFrame4x4< double >())
 Manipulator generic constructor.
 robManipulator (const std::vector< robKinematics * > linkParms, const vctFrame4x4< double > &Rtw0=vctFrame4x4< double >())
virtual ~robManipulator ()
 Manipulator destructor.
virtual void SetJointLimits (const vctDynamicVector< double > &lowerLimits, const vctDynamicVector< double > &upperLimits)
virtual void GetJointLimits (vctDynamicVectorRef< double > lowerLimits, vctDynamicVectorRef< double > upperLimits) const
virtual void GetFTMaximums (vctDynamicVectorRef< double > ftMaximums) const
virtual void GetJointNames (std::vector< std::string > &names) const
virtual void GetJointTypes (std::vector< cmnJointType > &types) const
virtual vctFrame4x4< double > ForwardKinematics (const vctDynamicVector< double > &q, int N=-1) const
 Evaluate the forward kinematics.
virtual robManipulator::Errno InverseKinematics (vctDynamicVector< double > &q, const vctFrame4x4< double > &Rts, double tolerance=1e-12, size_t Niteration=1000, double LAMBDA=0.001)
 Evaluate the inverse kinematics.
virtual robManipulator::Errno InverseKinematics (vctDynamicVector< double > &q, const vctFrm3 &Rts, double tolerance=1e-12, size_t Niteration=1000)
virtual void NormalizeAngles (vctDynamicVector< double > &q)
 Normalize angles to -pi to pi.
virtual vctDynamicVector< double > InverseDynamics (const vctDynamicVector< double > &q, const vctDynamicVector< double > &qd, const vctDynamicVector< double > &qdd) const
 Inverse dynamics in joint space.
virtual vctDynamicVector< double > InverseDynamics (const vctDynamicVector< double > &q, const vctDynamicVector< double > &qd, const vctFixedSizeVector< double, 6 > &vdwd) const
 Inverse dynamics in operation space.
virtual vctDynamicMatrix< double > JacobianKinematicsIdentification (const vctDynamicVector< double > &q, double epsilon=1e-6) const
 Compute Jacobian for kinematics identification.
virtual void PrintKinematics (std::ostream &os) const
 Print the kinematics parameters to the specified output stream.
virtual void Attach (robManipulator *tool)
 Attach a tool.
void DeleteTools (void)
virtual robManipulator::Errno Truncate (const size_t linksToKeep)
 Remove all links expect n first ones.
const std::string & LastError (void) const
bool ClampJointValueAndUpdateError (const size_t jointIndex, double &value, const double &tolerance=1e-6)

Protected Attributes

vctDynamicVector< double > qold
vctDynamicVector< double > eold
vctDynamicMatrix< double > Kp
vctDynamicMatrix< double > Kd
Protected Attributes inherited from robManipulator
ToolsType tools

Additional Inherited Members

Public Types inherited from robManipulator
enum  Errno { ESUCCESS , EFAILURE }
enum  LinkID {
  L0 , L1 , L2 , L3 ,
  L4 , L5 , L6 , L7 ,
  L8 , L9 , LN
}
Public Attributes inherited from robManipulator
std::string mLastError
vctFrame4x4< double > Rtw0
 Position and orientation of the first link.
double ** Jn
 Body Jacobian.
double ** Js
 Spatial Jacobian.
std::vector< robLinklinks
 A vector of links.
Protected Types inherited from robManipulator
typedef std::vector< robManipulator * > ToolsType
 A vector of tools.

Constructor & Destructor Documentation

◆ robComputedTorque()

robComputedTorque::robComputedTorque ( const std::string & robfile,
const vctFrame4x4< double > & Rtw0,
const vctDynamicMatrix< double > & Kp,
const vctDynamicMatrix< double > & Kd )

Member Function Documentation

◆ Control()

vctDynamicVector< double > robComputedTorque::Control ( double dt,
const vctDynamicVector< double > & qs,
const vctDynamicVector< double > & q,
const vctDynamicVector< double > & qds,
const vctDynamicVector< double > & qd,
const vctDynamicVector< double > & qdds,
const vctDynamicVector< double > & qdd )
virtual

Implements robControllerJoints.

Member Data Documentation

◆ eold

vctDynamicVector<double> robComputedTorque::eold
protected

◆ Kd

vctDynamicMatrix<double> robComputedTorque::Kd
protected

◆ Kp

vctDynamicMatrix<double> robComputedTorque::Kp
protected

◆ qold

vctDynamicVector<double> robComputedTorque::qold
protected

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