iCub-main
Classes | Enumerations | Functions | Variables
iCub::iDyn Namespace Reference

Classes

class  BaseLinkNewtonEuler
 A class for setting a virtual base link: this is useful to initialize the forward phase of Newton-Euler's method, by setting w, dw, ddp; H is an identity matrix, while ddpC=ddp; Note that this is a virtual link, since there's no iDynLink attached: it is just necessary to make the recursive Newton-Euler computations. More...
 
class  FinalLinkNewtonEuler
 A class for setting a virtual final link: this is useful to initialize the backward phase of Newton-Euler's method, by setting F, Mu; H is an identity matrix, while ddpC=ddp; Note that this is a virtual link, since there's no iDynLink attached: it is just necessary to make the recursive Newton-Euler computations. More...
 
class  iCubArmDyn
 A class for defining the 7-DOF iCub Arm in the iDyn framework. More...
 
class  iCubArmNoTorsoDyn
 A class for defining the 7-DOF iCub Arm in the iDyn framework. More...
 
class  iCubArmSensorLink
 A class for setting a virtual sensor link on the iCub arm, for the arm FT sensor. More...
 
class  iCubLegDyn
 A class for defining the 6-DOF iCub Leg. More...
 
class  iCubLegDynV2
 A class for defining the 6-DOF iCub Leg. More...
 
class  iCubLegSensorLink
 A class for setting a virtual sensor link on the iCub leg, for the leg FT sensor. More...
 
class  iCubLowerTorso
 A class for connecting torso, left and right leg of the iCub, and exchanging kinematic and wrench information between limbs, when both legs have FT sensors and the torso use the kinematic and wrench information coming from UpperTorso. More...
 
class  iCubNeckInertialDyn
 A class for defining the 3-DOF Inertia Sensor Kinematics. More...
 
class  iCubNeckInertialDynV2
 A class for defining the 3-DOF Inertia Sensor Kinematics (V2 HEAD) More...
 
class  iCubTorsoDyn
 A class for defining the 3-DOF iCub Torso in the iDyn framework. More...
 
class  iCubUpperTorso
 A class for connecting head, left and right arm of the iCub, and exchanging kinematic and wrench information between limbs, when both arms have FT sensors and the head use the inertial sensor. More...
 
class  iCubWholeBody
 A class for connecting UpperTorso and LowerTorso of the iCub, then getting the WholeBody in the dynamic framework. More...
 
class  iDynChain
 A Base class for defining a Serial Link Chain, using dynamics and kinematics. More...
 
class  iDynContactSolver
 This solver uses a modified version of the Newton-Euler algorithm to estimate both the external and internal forces/moments of a single kinematic chain. More...
 
class  iDynInvSensor
 A class for computing force/moment of a sensor placed anywhere in a kinematic chain; its position in the chain is defined wrt a certain link in the chain; this class can be useful to estimate the FT measurements of the sensor. More...
 
class  iDynInvSensorArm
 A class for computing force/moment of the FT sensor placed in the middle of the iCub's left or right arm. More...
 
class  iDynInvSensorArmNoTorso
 A class for computing force/moment of the FT sensor placed in the middle of the iCub's left or right arm. More...
 
class  iDynInvSensorLeg
 A class for computing force/moment of the FT sensor placed in the middle of the iCub's left or right leg. More...
 
class  iDynLimb
 A class for defining a generic Limb within the iDyn framework. More...
 
class  iDynLink
 A base class for defining a Link with standard Denavit-Hartenberg convention, providing kinematic and dynamic information. More...
 
class  iDynNode
 A class for connecting two or mutiple limbs and exchanging kinematic and wrench information between limbs. More...
 
class  iDynSensor
 A class for computing forces and torques in a iDynChain, when a force/torque sensor is placed in the middle of the kinematic chain and it is the only available sensor for measuring forces and moments; the sensor position in the chain must be set; the computation of joint forces, moments and torques is performed by an Inverse Newton-Euler method. More...
 
class  iDynSensorArm
 A class for computing joint force/moment/torque of an iCub arm (left/right) given the FT measurements of the sensor placed in the middle of the arm. More...
 
class  iDynSensorArmNoTorso
 A class for computing joint force/moment/torque of an iCub arm (left/right) given the FT measurements of the sensor placed in the middle of the arm. More...
 
class  iDynSensorLeg
 A class for computing joint force/moment/torque of an iCub leg (left/right) given the FT measurements of the sensor placed in the middle of the leg. More...
 
class  iDynSensorNode
 A class for connecting two or mutiple limbs and exchanging kinematic and wrench information between limbs, when one or multiple limbs have FT sensors. More...
 
class  iDynSensorTorsoNode
 A class for connecting a central-up limb, a left and right limb of the iCub, and exchanging kinematic and wrench information between limbs, when both left/right limb have FT sensors and the central-up one use the kinematic and wrench information coming from a inertial measurements or another iDynSensorNode. More...
 
class  iFrameOnLink
 A Base class for defining the FT sensor over a generic link of a kinematic chain inherited by iKinLimb. More...
 
class  iFTransformation
 
class  iGenericFrame
 A Base class for defining the Transformation of a Wrench from a frame to another. More...
 
class  OneChainNewtonEuler
 A class for computing forces and torques in a iDynChain. More...
 
class  OneLinkNewtonEuler
 A base class for computing forces and torques in a serial link chain. More...
 
class  RigidBodyTransformation
 A class for setting a rigid body transformation between iDynLimb and iDynNode. More...
 
class  SensorLinkNewtonEuler
 A class for setting a virtual sensor link. More...
 
struct  version_tag
 

Enumerations

enum  InteractionType {
  RBT_BASE,
  RBT_ENDEFF
}
 
enum  FlowType {
  RBT_NODE_IN,
  RBT_NODE_OUT
}
 
enum  JacobType {
  JAC_KIN,
  JAC_IKIN
}
 
enum  NewEulMode {
  STATIC,
  DYNAMIC,
  DYNAMIC_W_ROTOR,
  DYNAMIC_CORIOLIS_GRAVITY
}
 
enum  ChainIterationMode {
  FORWARD,
  BACKWARD
}
 
enum  ChainComputationMode {
  KINFWD_WREFWD,
  KINFWD_WREBWD,
  KINBWD_WREFWD,
  KINBWD_WREBWD
}
 

Functions

void notImplemented (const unsigned int verbose)
 
void notImplemented (const unsigned int verbose, const std::string &msg)
 
void workInProgress (const unsigned int verbose, const std::string &msg)
 
bool asWrench (yarp::sig::Vector &w, const yarp::sig::Vector &f, const yarp::sig::Vector &m)
 
yarp::sig::Vector asWrench (const yarp::sig::Vector &f, const yarp::sig::Vector &m)
 
bool asForceMoment (const yarp::sig::Vector &w, yarp::sig::Vector &f, yarp::sig::Vector &m)
 

Variables

static double const TOLLERANCE = 10e-08
 
const std::string NewEulMode_s [4] = {"static","dynamic","dynamic with motor/rotor","dynamic with only Coriolis and gravitational terms"}
 
const std::string ChainIterationMode_s [2] = {"Forward (Base To End)","Backward (End To Base)"}
 
const std::string ChainComputationMode_s [4] = {"Kinematic Forward - Wrench Forward","Kinematic Forward - Wrench Backward","Kinematic Backward - Wrench Forward","Kinematic Backward - Wrench Backward"}
 

Enumeration Type Documentation

◆ ChainComputationMode

Enumerator
KINFWD_WREFWD 
KINFWD_WREBWD 
KINBWD_WREFWD 
KINBWD_WREBWD 

Definition at line 69 of file iDynInv.h.

◆ ChainIterationMode

Enumerator
FORWARD 
BACKWARD 

Definition at line 68 of file iDynInv.h.

◆ FlowType

Enumerator
RBT_NODE_IN 
RBT_NODE_OUT 

Definition at line 92 of file iDynBody.h.

◆ InteractionType

Enumerator
RBT_BASE 
RBT_ENDEFF 

Definition at line 86 of file iDynBody.h.

◆ JacobType

Enumerator
JAC_KIN 
JAC_IKIN 

Definition at line 99 of file iDynBody.h.

◆ NewEulMode

Enumerator
STATIC 
DYNAMIC 
DYNAMIC_W_ROTOR 
DYNAMIC_CORIOLIS_GRAVITY 

Definition at line 64 of file iDynInv.h.

Function Documentation

◆ asForceMoment()

bool iCub::iDyn::asForceMoment ( const yarp::sig::Vector &  w,
yarp::sig::Vector &  f,
yarp::sig::Vector &  m 
)

◆ asWrench() [1/2]

bool iCub::iDyn::asWrench ( yarp::sig::Vector &  w,
const yarp::sig::Vector &  f,
const yarp::sig::Vector &  m 
)

◆ asWrench() [2/2]

yarp::sig::Vector iCub::iDyn::asWrench ( const yarp::sig::Vector &  f,
const yarp::sig::Vector &  m 
)

◆ notImplemented() [1/2]

void iCub::iDyn::notImplemented ( const unsigned int  verbose)

Definition at line 54 of file iDyn.cpp.

◆ notImplemented() [2/2]

void iCub::iDyn::notImplemented ( const unsigned int  verbose,
const std::string &  msg 
)

Definition at line 59 of file iDyn.cpp.

◆ workInProgress()

void iCub::iDyn::workInProgress ( const unsigned int  verbose,
const std::string &  msg 
)

Definition at line 64 of file iDyn.cpp.

Variable Documentation

◆ ChainComputationMode_s

const std::string iCub::iDyn::ChainComputationMode_s[4] = {"Kinematic Forward - Wrench Forward","Kinematic Forward - Wrench Backward","Kinematic Backward - Wrench Forward","Kinematic Backward - Wrench Backward"}

Definition at line 71 of file iDynInv.h.

◆ ChainIterationMode_s

const std::string iCub::iDyn::ChainIterationMode_s[2] = {"Forward (Base To End)","Backward (End To Base)"}

Definition at line 70 of file iDynInv.h.

◆ NewEulMode_s

const std::string iCub::iDyn::NewEulMode_s[4] = {"static","dynamic","dynamic with motor/rotor","dynamic with only Coriolis and gravitational terms"}

Definition at line 65 of file iDynInv.h.

◆ TOLLERANCE

double const iCub::iDyn::TOLLERANCE = 10e-08
static

Definition at line 44 of file iDynContact.h.