Go to the documentation of this file.
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);
void joinControlThread() override
Implementations have to join their ControlThread in this hook. (used by RobotUnit::finishRunning())
VirtualRobot::RobotNodeSetPtr rtRobotBodySet
armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
std::map< std::string, VariantBasePtr > StringVariantBaseMap
bool resetErrorRegistersAtStartup
std::uintmax_t getIterationCount()
armarx::control::ethercat::Timeouts ethercatTimeouts
void startBackupLogging()
void controlLoopRTThread()
struct armarx::control::ethercat::RTUnit::@55 properties
IceUtil::Time currentPDOUpdateTimestamp
unsigned int periodicLoggingHistorySize
double rTLoopTimingCheckToleranceFactor
unsigned int errorCountersReadingPeriodInMS
std::string getDefaultName() const override
unsigned int periodicLoggingIntervalInSeconds
bool enableErrorCountersReading
void onExitRobotUnit() override
called in onExitComponent before calling finishRunning
void periodicBackupLoggingRun()
void initializeKinematicUnit() override
Initializes the KinematicUnit.
void publish(armarx::StringVariantBaseMap debugObserverMap={}, armarx::StringVariantBaseMap timingMap={}) override
Publishes data.
std::string busConfigFilePath
std::thread backupLoggingTask
virtual void rtCalibrateActivateControlers()
Allows to switch controllers while calibrating.
std::atomic_bool taskRunning
bool useTorqueVelocityModeAsDefault
static MultiNodeRapidXMLReader ReadHardwareConfigFile(std::string hardwareConfigFilePath, std::string rootNodeName)
std::vector< std::pair< VirtualRobot::RobotNodePtr, SensorValue1DoFGravityTorque * > > nodeJointDataVec
armarx::core::time::DateTime Time
virtual CalibrationStatus rtCalibrate()
Hook to add calibration code.
IceUtil::Time getControlThreadTargetPeriod() const override
The ControlThread's period.
std::string robotJointsNodeSet
std::string ethercatInterfaceName
std::string periodicLoggingDirectory
Base Class for all Logging classes.
bool rtIsCalibrating() const
std::string robotColNodeSet
void onInitRobotUnit() override
called in onInitComponent
The RobotUnit class manages a robot and its controllers.
void computeInertiaTorque()
PeriodicLoggingMode periodicLoggingMode
virtual void rtRun()
the run method of the rt thread
VirtualRobot::RobotPtr robot
void onConnectRobotUnit() override
called in onConnectComponent
Brief description of class RTUnit.
VirtualRobot::RobotNodeSetPtr rtRobotJointSet
void onDisconnectRobotUnit() override
called in onDisconnecComponent
std::shared_ptr< class Robot > RobotPtr
std::atomic_bool backupLoggingRunning