dynamicgraph::sot::ForceCompensation Class Reference

#include <sot-dynamic/force-compensation.h>

Inheritance diagram for dynamicgraph::sot::ForceCompensation:
Collaboration diagram for dynamicgraph::sot::ForceCompensation:

Public Member Functions

 ForceCompensation (void)
 
void clearCalibration (void)
 
void addCalibrationValue (const ml::Vector &torsor, const MatrixRotation &worldRhand)
 
ml::Vector calibrateTransSensorCom (const ml::Vector &gravity, const MatrixRotation &handRsensor)
 
ml::Vector calibrateGravity (const MatrixRotation &handRsensor, bool precompensationCalibration=false, const MatrixRotation &hand0Rsensor=I3)
 

Static Public Member Functions

static MatrixForcecomputeHandXworld (const MatrixRotation &worldRhand, const ml::Vector &transSensorCom, MatrixForce &res)
 
static MatrixForcecomputeHandVsensor (const MatrixRotation &sensorRhand, MatrixForce &res)
 
static MatrixForcecomputeSensorXhand (const MatrixRotation &sensorRhand, const ml::Vector &transSensorCom, MatrixForce &res)
 
static ml::VectorcomputeTorsorCompensated (const ml::Vector &torqueInput, const ml::Vector &torquePrecompensation, const ml::Vector &gravity, const MatrixForce &handXworld, const MatrixForce &handVsensor, const ml::Matrix &gainSensor, const ml::Vector &momentum, ml::Vector &res)
 
static ml::VectorcrossProduct_V_F (const ml::Vector &velocity, const ml::Vector &force, ml::Vector &res)
 
static ml::VectorcomputeMomentum (const ml::Vector &velocity, const ml::Vector &acceleration, const MatrixForce &sensorXhand, const ml::Matrix &inertiaJoint, ml::Vector &res)
 
static ml::VectorcomputeDeadZone (const ml::Vector &torqueInput, const ml::Vector &deadZoneLimit, ml::Vector &res)
 

Public Attributes

std::list< ml::VectortorsorList
 
std::list< MatrixRotationrotationList
 

Protected Attributes

bool usingPrecompensation
 

Constructor & Destructor Documentation

◆ ForceCompensation()

dynamicgraph::sot::ForceCompensation::ForceCompensation ( void  )

Member Function Documentation

◆ addCalibrationValue()

void dynamicgraph::sot::ForceCompensation::addCalibrationValue ( const ml::Vector torsor,
const MatrixRotation worldRhand 
)

◆ calibrateGravity()

ml::Vector dynamicgraph::sot::ForceCompensation::calibrateGravity ( const MatrixRotation handRsensor,
bool  precompensationCalibration = false,
const MatrixRotation hand0Rsensor = I3 
)

◆ calibrateTransSensorCom()

ml::Vector dynamicgraph::sot::ForceCompensation::calibrateTransSensorCom ( const ml::Vector gravity,
const MatrixRotation handRsensor 
)

◆ clearCalibration()

void dynamicgraph::sot::ForceCompensation::clearCalibration ( void  )

◆ computeDeadZone()

static ml::Vector& dynamicgraph::sot::ForceCompensation::computeDeadZone ( const ml::Vector torqueInput,
const ml::Vector deadZoneLimit,
ml::Vector res 
)
static

◆ computeHandVsensor()

static MatrixForce& dynamicgraph::sot::ForceCompensation::computeHandVsensor ( const MatrixRotation sensorRhand,
MatrixForce res 
)
static

◆ computeHandXworld()

static MatrixForce& dynamicgraph::sot::ForceCompensation::computeHandXworld ( const MatrixRotation worldRhand,
const ml::Vector transSensorCom,
MatrixForce res 
)
static

◆ computeMomentum()

static ml::Vector& dynamicgraph::sot::ForceCompensation::computeMomentum ( const ml::Vector velocity,
const ml::Vector acceleration,
const MatrixForce sensorXhand,
const ml::Matrix inertiaJoint,
ml::Vector res 
)
static

◆ computeSensorXhand()

static MatrixForce& dynamicgraph::sot::ForceCompensation::computeSensorXhand ( const MatrixRotation sensorRhand,
const ml::Vector transSensorCom,
MatrixForce res 
)
static

◆ computeTorsorCompensated()

static ml::Vector& dynamicgraph::sot::ForceCompensation::computeTorsorCompensated ( const ml::Vector torqueInput,
const ml::Vector torquePrecompensation,
const ml::Vector gravity,
const MatrixForce handXworld,
const MatrixForce handVsensor,
const ml::Matrix gainSensor,
const ml::Vector momentum,
ml::Vector res 
)
static

◆ crossProduct_V_F()

static ml::Vector& dynamicgraph::sot::ForceCompensation::crossProduct_V_F ( const ml::Vector velocity,
const ml::Vector force,
ml::Vector res 
)
static

Member Data Documentation

◆ rotationList

std::list<MatrixRotation> dynamicgraph::sot::ForceCompensation::rotationList

◆ torsorList

std::list<ml::Vector> dynamicgraph::sot::ForceCompensation::torsorList

◆ usingPrecompensation

bool dynamicgraph::sot::ForceCompensation::usingPrecompensation
protected