24 #include <qstatemachine.h>
26 #include <VirtualRobot/Robot.h>
27 #include <VirtualRobot/VirtualRobot.h>
36 #include <armarx/control/interface/ConfigurableNJointControllerInterface.h>
37 #include <armarx/control/njoint_controller/platform/platform_follower_controller/aron/PlatformFollowerControllerConfig.aron.generated.h>
41 class ControlTargetHolonomicPlatformVelocity;
42 class SensorValueHolonomicPlatformWithAbsolutePosition;
63 using Params = platform_follower_controller::arondto::Params;
95 virtual public armarx::control::ConfigurableNJointControllerInterface
98 using ConfigPtrT = armarx::control::ConfigurableNJointControllerConfigPtr;
100 Controller(
const armarx::RobotUnitPtr& robotUnit,
101 const armarx::NJointControllerConfigPtr& config,
106 std::string
getClassName(
const Ice::Current& iceCurrent = Ice::emptyCurrent)
const override;
112 const Ice::Current& iceCurrent = Ice::emptyCurrent)
override;
115 getConfig(
const Ice::Current& iceCurrent = Ice::emptyCurrent)
override
139 std::atomic_bool rtFirstRun =
true;
140 std::atomic_bool rtReady =
false;
145 std::vector<const armarx::SensorValue1DoFActuatorVelocity*> velocitySensors;
147 Devices getDevices(
const VirtualRobot::RobotNodeSet& rns);
151 VirtualRobot::RobotNodePtr tcpRight;
152 VirtualRobot::RobotNodePtr tcpLeft;
159 } additionalTaskData;
165 Eigen::Vector3f position_error_left;
166 Eigen::Vector3f position_error_right;