Go to the documentation of this file.
25 #include <VirtualRobot/Robot.h>
33 #include <armarx/control/interface/ConfigurableNJointControllerInterface.h>
34 #include <armarx/control/njoint_controller/task_space/ControllerInterface.h>
57 using ConfigPtrT = ConfigurableNJointControllerConfigPtr;
58 using AronDTO = law::arondto::TaskspaceImpedanceControllerConfig;
59 using BO = law::TaskspaceImpedanceController::Config;
62 const NJointControllerConfigPtr& config,
65 std::string
getClassName(
const Ice::Current&)
const override;
74 const Ice::Current& iceCurrent = Ice::emptyCurrent)
override;
75 Ice::FloatSeq
getTCPVel(
const Ice::Current& iceCurrent = Ice::emptyCurrent)
override;
95 std::vector<ControlTarget1DoFActuatorTorque*>
targets;
SensorDevices sensorDevices
std::vector< std::string > jointNames
Ice::FloatSeq getTCPVel()
Brief description of class NJointTaskspaceImpedanceController.
TripleBuffer< law::RobotStatus > bufferRtToAdditionalTask
void onInitNJointController() override
NJointControllerBase interface.
NJointControllerConfigPtr ConfigPtrT
std::string getClassName(const Ice::Current &) const override
std::atomic_bool rtFirstRun
void rtPostDeactivateController() override
This function is called after the controller is deactivated.
TripleBuffer< BO > bufferUserToRt
void rtRun(const IceUtil::Time &sensorValuesTimestamp, const IceUtil::Time &timeSinceLastIteration) override
TODO make protected and use attorneys.
void updateConfig(const ::armarx::aron::data::dto::DictPtr &dto, const Ice::Current &iceCurrent=Ice::emptyCurrent) override
NJointController interface.
void onPublish(const SensorAndControl &, const DebugDrawerInterfacePrx &, const DebugObserverInterfacePrx &) override
TripleBuffer< BO > bufferUserToAdditionalTask
set buffers
NJointTaskspaceImpedanceController(const RobotUnitPtr &robotUnit, const NJointControllerConfigPtr &config, const VirtualRobot::RobotPtr &)
std::vector< ControlTarget1DoFActuatorTorque * > targets
std::string kinematicChainName
variables
std::vector< const SensorValue1DoFActuatorTorque * > torqueSensors
namespace armarx::control::common::ft
VirtualRobot::RobotPtr nonRtRobot
void rtPreActivateController() override
This function is called before the controller is activated.
armarx::core::time::DateTime Time
law::TaskspaceImpedanceController::Config BO
void validateConfigData(BO &config)
std::shared_ptr< Dict > DictPtr
virtual void additionalTask()
common::control_law::ControlTarget controlTargets
law::arondto::TaskspaceImpedanceControllerConfig AronDTO
std::atomic_bool reInitPreActivate
std::vector< const SensorValue1DoFActuatorVelocity * > velocitySensors
law::TaskspaceImpedanceController controller
std::vector< const SensorValue1DoFActuatorPosition * > positionSensors
std::shared_ptr< class Robot > RobotPtr