Class MasterboardData

Inheritance Relationships

Base Type

Class Documentation

class MasterboardData : public urcl::primary_interface::RobotState

The MasterboardData class handles the masterboard data sub-package sent as part of the Robot State message on the primary UR interface.

This package contains information about the control box IOs, analog inputs/outputs, voltages, currents, temperatures, the safety mode, as well as information about the optional IMMI interface. See the Universal Robots primary/secondary guide for details: https://docs.universal-robots.com/tutorials/communication-protocol-tutorials/primary-secondary-guide.html

Public Functions

MasterboardData() = delete
inline MasterboardData(const RobotStateType type)

Creates a new MasterboardData object.

Parameters:

type – The type of RobotState message received

MasterboardData(const MasterboardData &pkg)

Creates a copy of a MasterboardData object.

Parameters:

pkg – The MasterboardData object to be copied

virtual ~MasterboardData() = default
virtual bool parseWith(comm::BinParser &bp)

Sets the attributes of the package by parsing a serialized representation of the package.

Parameters:

bp – A parser containing a serialized version of the package

Returns:

True, if the package was parsed successfully, false otherwise

virtual bool consumeWith(AbstractPrimaryConsumer &consumer)

Consume this specific package with a specific consumer.

Parameters:

consumer – Placeholder for the consumer calling this

Returns:

true on success

virtual std::string toString() const

Produces a human readable representation of the package object.

Returns:

A string representing the object

Public Members

std::bitset<32> digital_input_bits_
std::bitset<32> digital_output_bits_
uint8_t analog_input_range_0_
uint8_t analog_input_range_1_
double analog_input_0_
double analog_input_1_
char analog_output_domain_0_
char analog_output_domain_1_
double analog_output_0_
double analog_output_1_
float master_board_temperature_
float robot_voltage_48v_
float robot_current_
float master_io_current_
SafetyMode safety_mode_
bool in_reduced_mode_
bool immi_interface_installed_ = {false}
std::bitset<32> immi_input_bits_
std::bitset<32> immi_output_bits_
float immi_voltage_24v_ = {0.0f}
float immi_current_ = {0.0f}
uint32_t reserved_1_ = {0}
uint8_t operational_mode_selector_input_ = {0}
bool three_position_enabling_device_input_ = {false}
uint8_t reserved_2_ = {0}