master

This node makes sure that the VR data is received from the headset is valid (in correct mode) and published to the rest of the system.

Subscribed topics

  • _vr_drive (VRDrive): The untrusted VR drive data received from the headset.

  • _vr_arm (VRArm): The untrusted VR arm data received from the headset.

  • _vr_mode (VRMode): The untrusted VR mode data received from the headset.

  • _vr_screw (VRScrew): The untrusted VR screw data received from the headset.

  • _robot_data (RobotData): The untrusted robot data received from the robot.

Published topics

  • vr_drive (VRDrive): The VR drive data received from the headset.

  • vr_arm (VRArm): The VR arm data received from the headset.

  • vr_mode (VRMode): The VR mode data received from the headset.

  • vr_screw (VRScrew): The VR screw data received from the headset.

  • robot_data (RobotData): The robot data received from the robot.

  • message (Message): Log data to send to logger.

master node

robot.src.master.master.master_node.matches_mode_and_not_emergency(mode: Mode)
class robot.src.master.master.master_node.MasterNode(*args: Any, **kwargs: Any)
_switch_camera(mode: str) None

Publishes a SwitchCamera message.

Parameters:

mode – camera mode

set_mode(mode: Mode) None

Sets the mode.

Parameters:

mode – mode

int_to_mode(mode: int) Mode

Converts an integer to a Mode.

Parameters:

mode – mode

Returns:

Mode

handle_robot_data(msg) None

Handles RobotData messages.

Parameters:

msg – RobotData message

handle_unsafe_vr_mode(msg) None

Handles VRMode messages.

Parameters:

msg – VRMode message

handle_unsafe_vr_drive(msg) None

Handles VRDrive messages.

Parameters:

msg – VRDrive message

handle_unsafe_vr_arm(msg) None

Handles VRArm messages.

Parameters:

msg – VRArm message

handle_unsafe_vr_screw(msg) None

Handles VRScrew messages.

Parameters:

msg – VRScrew message

robot.src.master.master.master_node.main(args=None)

modes

class robot.src.master.master.modes.Mode(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)
IDLE = 0
DRIVE = 1
ARM = 2
EMERGENCY = 3