FTSensor Class Reference

#include <armarx/control/common/ft/FTSensor.h>

Public Types

using FTConfig = arondto::FTConfig
 

Public Member Functions

bool calibrate (const FTConfig &c, double deltaT)
 
Eigen::Vector6fcompensateTCPGravity (const FTConfig &data)
 
void enableSafeGuard (bool enableForceGuard, bool enableTorqueGuard)
 
 FTSensor ()
 
Eigen::Vector6fgetFilteredForceTorque (const FTConfig &data)
 
void initialize (const VirtualRobot::RobotNodeSetPtr &rns, const armarx::RobotUnitPtr &robotUnit, const FTConfig &c)
 
bool isForceGuardEnabled ()
 
bool isSafe (const FTConfig &c)
 
bool isTorqueGuardEnabled ()
 
void reset ()
 
void resetSafeGuardOffset (const FTConfig &c)
 
void updateStatus (const FTConfig &c, Eigen::Vector6f &currentFT, double deltaT, bool firstRun)
 
 ~FTSensor ()
 

Public Attributes

std::atomic_bool calibrated {false}
 
std::atomic_bool ftSafe {true}
 

Detailed Description

Definition at line 45 of file FTSensor.h.

Member Typedef Documentation

◆ FTConfig

using FTConfig = arondto::FTConfig

Definition at line 48 of file FTSensor.h.

Constructor & Destructor Documentation

◆ FTSensor()

FTSensor ( )
inline

Definition at line 50 of file FTSensor.h.

◆ ~FTSensor()

~FTSensor ( )
inline

Definition at line 51 of file FTSensor.h.

Member Function Documentation

◆ calibrate()

bool calibrate ( const FTConfig c,
double  deltaT 
)

this will calibrate the force torque value in FTSensorFrame until timeLimit is reached

rt is ready only if the FT sensor is calibrated, and the rt2interface buffer is updated (see above)

Definition at line 205 of file FTSensor.cpp.

+ Here is the caller graph for this function:

◆ compensateTCPGravity()

Eigen::Vector6f & compensateTCPGravity ( const FTConfig data)

static compensation in root frame

Definition at line 258 of file FTSensor.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ enableSafeGuard()

void enableSafeGuard ( bool  enableForceGuard,
bool  enableTorqueGuard 
)

Definition at line 167 of file FTSensor.cpp.

◆ getFilteredForceTorque()

Eigen::Vector6f & getFilteredForceTorque ( const FTConfig data)

Definition at line 287 of file FTSensor.cpp.

+ Here is the caller graph for this function:

◆ initialize()

void initialize ( const VirtualRobot::RobotNodeSetPtr &  rns,
const armarx::RobotUnitPtr &  robotUnit,
const FTConfig c 
)

Definition at line 19 of file FTSensor.cpp.

+ Here is the call graph for this function:

◆ isForceGuardEnabled()

bool isForceGuardEnabled ( )

Definition at line 180 of file FTSensor.cpp.

◆ isSafe()

bool isSafe ( const FTConfig c)

Definition at line 192 of file FTSensor.cpp.

+ Here is the caller graph for this function:

◆ isTorqueGuardEnabled()

bool isTorqueGuardEnabled ( )

Definition at line 186 of file FTSensor.cpp.

◆ reset()

void reset ( )

you have to call this method only in the first loop of rtRun

Definition at line 87 of file FTSensor.cpp.

+ Here is the caller graph for this function:

◆ resetSafeGuardOffset()

void resetSafeGuardOffset ( const FTConfig c)

Definition at line 150 of file FTSensor.cpp.

+ Here is the caller graph for this function:

◆ updateStatus()

void updateStatus ( const FTConfig c,
Eigen::Vector6f currentFT,
double  deltaT,
bool  firstRun 
)

TODO how to toggle recalibration?

Definition at line 115 of file FTSensor.cpp.

+ Here is the call graph for this function:

Member Data Documentation

◆ calibrated

std::atomic_bool calibrated {false}

Definition at line 70 of file FTSensor.h.

◆ ftSafe

std::atomic_bool ftSafe {true}

Definition at line 71 of file FTSensor.h.


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