@@ -55,3 +55,40 @@ Therefor, it can be used with all position-based controllers available in ROS-Co
5555recommend using the controllers from the ` ur_controllers ` package. See it's
5656[ documentation] ( ../ur_controllers/README.md ) for details. ** Note: Speed scaling support will only be
5757available using the controllers from ` ur_controllers ` **
58+
59+ ## A note about modes
60+ The term ** mode** is used in different meanings inside this driver.
61+
62+ ### Remote control mode
63+ On the e-series the robot itself can operate in different command modes: It can be either in ** local control
64+ mode** where the teach pendant is the single point of command or in ** remote control mode** , where
65+ motions from the TP, starting & loading programs from the TP activating the freedrive mode are
66+ blocked. Note that the ** remote control mode** has to be explicitly enabled in the robot's settings
67+ under ** Settings** -> ** System** -> ** Remote Control** . See the robot's manual for details.
68+
69+ The ** remote control mode** is needed for many aspects of this driver such as
70+ * headless mode (see below)
71+ * sending script code to the robot
72+ * many dashboard functionalities such as
73+ * restarting the robot after protective / EM-Stop
74+ * powering on the robot and do brake release
75+ * loading and starting programs
76+ * the ` set_mode ` action, as it uses the dashboard calls mentioned above
77+
78+ ### Headless mode
79+ Inside this driver, there's the ** headless** mode, which can be either enabled or not. When the
80+ [ headless mode] ( ./doc/ROS_INTERFACE.md#headless_mode-default-false ) is activated, required script
81+ code for external control will be sent to the robot directly when the driver starts. As soon as
82+ other script code is sent to the robot either by sending it directly through this driver or by
83+ pressing any motion-related button on the teach pendant, the script will be overwritten by this
84+ action and has to be restarted by using the
85+ [ resend_robot_program] ( ./doc/ROS_INTERFACE.md#resend_robot_program-std_srvstrigger ) service. If this
86+ is necessary, you will see the output ` Connection to robot dropped, waiting for new connection. `
87+ from the driver. Note that pressing "play" on the TP won't start the external control again, but
88+ whatever program is currently loaded on the controller. This mode doesn't require the "External
89+ Control" URCap being installed on the robot as the program is sent to the robot directly. However,
90+ we recommend to use the non-headless mode and leverage the ` set_mode ` action to start program
91+ execution without the teach pendant. The ** headless** mode might be removed in future releases.
92+
93+ ** Note for the e-Series:** In order to leverage the ** headless** mode on the e-Series the robot must
94+ be in ** remote_control_mode** as explained above.
0 commit comments