Free Drive
Invoke directly from RDK
Switch the robot into Primitive execution mode (Mode::NRT_PRIMITIVE_EXECUTION).
Call
Robot::ExecutePrimitive()
to executeFloatingCartesian
primitive for free drive in Cartesian space, orFloatingJoint
for free drive in joint space. For example:# Python ... robot.ExecutePrimitive("FloatingCartesian()") while robot.busy(): time.sleep(1) ...
Caution
Free drive will be activated immediately regardless of whether the enabling button on the motion bar is pressed down or not. You can implement your own code to only activate free drive while enabling button is pressed down with the help of a condition check on Robot::enabling_button_pressed()
.
Note
Both FloatingCartesian
and FloatingJoint
primitives require a license.
Invoke from Flexiv Elements
With the teach pendant connected, free drive can be invoked under either Manual or Auto mode.
Free drive under Manual mode
The robot’s movement speed is restricted under Manual mode, thus free drive feels heavy. To invoke:
Toggle the Auto/Manual Slide Switch on the motion bar to the lower position to exit Auto (Remote) mode and enter Manual mode.
Click the Freedrive On & Off button on the motion bar. LED on the motion bar will turn deep blue, and a window for controlling free drive will pop up in Flexiv Elements.
Follow instructions in Flexiv Elements to unlock Cartesian or joint axes to free drive.
Press and hold Enabling Button on the motion bar to activate free drive.
Free drive under Auto mode
The robot’s movement speed is not restricted under Auto mode, thus free drive feels light. To invoke:
Same as step 1 above to put the robot into Manual mode first.
Push the Auto/Manual Slide Switch back to upper position, a window will pop-up asking you to choose which type of Auto mode to enter, choose AUTO.
Same as steps 2 to 4 as above.