TaskspaceImpedanceController Class Reference

#include <armarx/control/common/control_law/TaskspaceImpedanceController.h>

Public Types

using Config = common::control_law::arondto::TaskspaceImpedanceControllerConfig
 
using ConfigDict = common::control_law::arondto::TaskspaceImpedanceControllerConfigDict
 
using FTConfig = common::ft::arondto::FTConfig
 

Public Member Functions

void firstRun ()
 
void initialize (const VirtualRobot::RobotNodeSetPtr &rns, const VirtualRobot::RobotNodeSetPtr &rtRns)
 
void preactivateInit (const VirtualRobot::RobotNodeSetPtr &rns)
 
void run (Config &c, TSCtrlRtStatus &robotStatus)
 

Public Attributes

common::ft::FTSensor ftsensor
 
VirtualRobot::RobotNodePtr rtTCP
 
VirtualRobot::RobotNodePtr tcp
 

Detailed Description

Definition at line 36 of file TaskspaceImpedanceController.h.

Member Typedef Documentation

◆ Config

using Config = common::control_law::arondto::TaskspaceImpedanceControllerConfig

Definition at line 40 of file TaskspaceImpedanceController.h.

◆ ConfigDict

using ConfigDict = common::control_law::arondto::TaskspaceImpedanceControllerConfigDict

Definition at line 41 of file TaskspaceImpedanceController.h.

◆ FTConfig

using FTConfig = common::ft::arondto::FTConfig

Definition at line 39 of file TaskspaceImpedanceController.h.

Member Function Documentation

◆ firstRun()

void firstRun ( )

Definition at line 45 of file TaskspaceImpedanceController.cpp.

◆ initialize()

void initialize ( const VirtualRobot::RobotNodeSetPtr & rns,
const VirtualRobot::RobotNodeSetPtr & rtRns )

Definition at line 24 of file TaskspaceImpedanceController.cpp.

◆ preactivateInit()

void preactivateInit ( const VirtualRobot::RobotNodeSetPtr & rns)

Definition at line 40 of file TaskspaceImpedanceController.cpp.

◆ run()

void run ( Config & c,
TSCtrlRtStatus & robotStatus )

run in rt thread

-------------------------— safety guard by FT and target pose ---------------------—

this should not be moved to non rt, just in case non rt thread dies, rt still functions as safely

---------------------------— compute jacobi ---------------------------------------—

---------------------------— update velocity/twist --------------------------------—

----------------------------------— Impedance control -----------------------------— calculate pose error between target pose and current pose !!! This is very important: you have to keep postion and orientation both with UI unit (meter, radian) to calculate impedance force.

--------------------------— Nullspace PD Control ----------------------------------—

--------------------------— Map TS target force to JS -----------------------------—

--------------------------— write torque target ----------------------------------—

Definition at line 75 of file TaskspaceImpedanceController.cpp.

Member Data Documentation

◆ ftsensor

Definition at line 91 of file TaskspaceImpedanceController.h.

◆ rtTCP

VirtualRobot::RobotNodePtr rtTCP

Definition at line 90 of file TaskspaceImpedanceController.h.

◆ tcp

VirtualRobot::RobotNodePtr tcp

Definition at line 89 of file TaskspaceImpedanceController.h.


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