6 #ifndef FLEXIV_RDK_SAFETY_HPP_
7 #define FLEXIV_RDK_SAFETY_HPP_
94 const std::vector<double>& min_positions,
const std::vector<double>& max_positions);
130 std::unique_ptr<Impl> pimpl_;
Main interface with the robot, containing several function categories and background services.
Interface to change robot safety settings. The robot must be in IDLE mode when applying any changes....
const std::array< bool, kSafetyIOPorts > safety_inputs() const
[Non-blocking] Current reading from all safety input ports.
const SafetyLimits default_limits() const
[Non-blocking] Default values of the safety limits of the connected robot.
void SetJointPositionLimits(const std::vector< double > &min_positions, const std::vector< double > &max_positions)
[Blocking] Set new joint position safety limits to the connected robot, which will honor this setting...
Safety(const Robot &robot, const std::string &password)
[Non-blocking] Create an instance and initialize the interface.
void SetJointVelocityReducedLimits(const std::vector< double > &max_velocities)
[Blocking] Set new joint velocity safety limits to the connected robot, which will honor this setting...
void SetJointVelocityNormalLimits(const std::vector< double > &max_velocities)
[Blocking] Set new joint velocity safety limits to the connected robot, which will honor this setting...
const SafetyLimits current_limits() const
[Non-blocking] Current values of the safety limits of the connected robot.
constexpr size_t kSafetyIOPorts
Data structure containing configurable robot safety limits.
std::vector< double > dq_max_normal
std::vector< double > q_min
std::vector< double > q_max
std::vector< double > dq_max_reduced