Go to the documentation of this file.
33 #include <ArmarXSimulation/interface/simulator/SimulatorInterface.h>
35 #include <IceUtil/Time.h>
54 defineOptionalProperty<int>(
"IntervalMs", 100,
"The time in milliseconds between two calls to the simulation method.");
62 defineOptionalProperty<std::string>(
"RobotName",
"Armar3",
"Name of the Robot to use.");
64 defineOptionalProperty<std::string>(
"SimulatorProxyName",
"Simulator",
"Name of the simulator proxy to use.");
77 virtual public RobotPoseUnitDynamicSimulationInterface
84 return "RobotPoseUnit";
98 void move(
const PoseBasePtr& targetVelocity,
const Ice::Current&
c = Ice::emptyCurrent)
override;
104 void stopMovement(
const Ice::Current&
c = Ice::emptyCurrent)
override;
115 void reportState(SimulatedRobotState
const& state,
const Ice::Current&)
override;
120 Eigen::Vector3f
getRPY(PoseBasePtr pose);
void setCurrentPose(const PoseBasePtr &newPose)
const VariantTypeId Float
Eigen::Vector3f getRPY(PoseBasePtr pose)
void moveRelative(const PoseBasePtr &relativeTarget, Ice::Float positionalAccuracy, Ice::Float orientationalAccuracy, const Ice::Current &c=Ice::emptyCurrent) override
This unit connects to the physics simulator topic (default: "Simulator") and handles RobotPose moveme...
Moves the robot around. Currently only position control is implemented.
IceUtil::Time lastExecutionTime
std::string prefix
Prefix of the properties such as namespace, domain, component name, etc.
std::string getDefaultName() const override
Retrieve default name of component.
void onStartRobotPoseUnit() override
void setMaxVelocities(Ice::Float positionalVelocity, Ice::Float orientationalVelocity, const Ice::Current &c=Ice::emptyCurrent) override
std::string simulatorPrxName
PeriodicTask< RobotPoseUnitDynamicSimulation >::pointer_type simulationTask
void simulationFunction()
ControlMode RobotPoseControlMode
::Ice::Float orientationalAccuracy
RobotPoseUnitDynamicSimulationPropertyDefinitions(std::string prefix)
PropertyDefinitionsPtr createPropertyDefinitions() override
armarx::core::time::DateTime Time
void updateCurrentPose(const PoseBasePtr &newPose)
void onExitRobotPoseUnit() override
void onStopRobotPoseUnit() override
std::mutex currentPoseMutex
Defines all necessary properties for armarx::RobotPoseUnit.
void onInitRobotPoseUnit() override
void move(const PoseBasePtr &targetVelocity, const Ice::Current &c=Ice::emptyCurrent) override
SimulatorInterfacePrx simulatorPrx
::Ice::Float positionalAccuracy
This file offers overloads of toIce() and fromIce() functions for STL container types.
void reportState(SimulatedRobotState const &state, const Ice::Current &) override
void stopMovement(const Ice::Current &c=Ice::emptyCurrent) override
void moveTo(const PoseBasePtr &targetPose, Ice::Float positionalAccuracy, Ice::Float orientationalAccuracy, const Ice::Current &c=Ice::emptyCurrent) override