70 return "EtherCATRTUnit";
94 std::string rootNodeName);
102 virtual void rtRun();
152 return _iterationCount;
157 std::atomic_uintmax_t _iterationCount = 0;
171 std::vector<std::pair<VirtualRobot::RobotNodePtr, SensorValue1DoFGravityTorque*>>
177 return IceUtil::Time::microSeconds(
properties.rtLoopTimeInUS);
The RobotUnit class manages a robot and its controllers.
std::string ethercatInterfaceName
bool enableErrorCountersReading
IceUtil::Time getControlThreadTargetPeriod() const override
The ControlThread's period.
std::atomic_bool taskRunning
void joinControlThread() override
Implementations have to join their ControlThread in this hook. (used by RobotUnit::finishRunning())
PeriodicLoggingMode periodicLoggingMode
void publish(armarx::StringVariantBaseMap debugObserverMap={}, armarx::StringVariantBaseMap timingMap={}) override
Publishes data.
VirtualRobot::RobotPtr robot
VirtualRobot::RobotNodeSetPtr rtRobotJointSet
void startBackupLogging()
std::thread backupLoggingTask
std::string robotColNodeSet
VirtualRobot::RobotNodeSetPtr rtRobotBodySet
struct armarx::control::ethercat::RTUnit::@220041145354046113147030301166073356361324314346 properties
std::atomic_bool backupLoggingRunning
std::vector< std::pair< VirtualRobot::RobotNodePtr, SensorValue1DoFGravityTorque * > > nodeJointDataVec
armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
void onExitRobotUnit() override
called in onExitComponent before calling finishRunning
armarx::control::ethercat::Timeouts ethercatTimeouts
unsigned int periodicLoggingIntervalInSeconds
void computeInertiaTorque()
static MultiNodeRapidXMLReader ReadHardwareConfigFile(std::string hardwareConfigFilePath, std::string rootNodeName)
void controlLoopRTThread()
std::uintmax_t getIterationCount()
double rTLoopTimingCheckToleranceFactor
void onConnectRobotUnit() override
called in onConnectComponent
virtual CalibrationStatus rtCalibrate()
Hook to add calibration code.
bool rtIsCalibrating() const
std::string busConfigFilePath
virtual void rtCalibrateActivateControlers()
Allows to switch controllers while calibrating.
unsigned int errorCountersReadingPeriodInMS
IceUtil::Time currentPDOUpdateTimestamp
unsigned int periodicLoggingHistorySize
virtual void rtRun()
the run method of the rt thread
bool resetErrorRegistersAtStartup
void initializeKinematicUnit() override
Initializes the KinematicUnit.
std::string robotJointsNodeSet
void onInitRobotUnit() override
called in onInitComponent
void onDisconnectRobotUnit() override
called in onDisconnecComponent
std::string getDefaultName() const override
void periodicBackupLoggingRun()
std::string periodicLoggingDirectory
bool useTorqueVelocityModeAsDefault
std::shared_ptr< class Robot > RobotPtr
std::map< std::string, VariantBasePtr > StringVariantBaseMap
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.