Demo Scripts
This section describes the demo scripts that come with the Trossen Arm driver.
What You Need
To get started, please make sure you have gone through the Configuration. For the driver’s concepts and how a script is structured, see the Programming Guide (Concepts and Writing a Script).
Demos
These demos ground the concepts from the Programming Guide in ready-to-run examples. Demos of three levels of complexity are provided with the driver.
Basics
The basic demos show the must-know functionalities to get the arm up and running.
cartesian_position
This script demonstrates how to perform position control in Cartesian space.
configure_cleanup
This script demonstrates how to configure and cleanup the driver. This is useful for switching between different arms without creating a new driver object. This script also demonstrates how to access the driver’s states and configurations.
gravity_compensation
This script demonstrates how to do gravity compensation. This is useful for manually moving the arm to teach a trajectory or record specific positions.
gripper_torque
This script demonstrates how to open and close the gripper.
set_mode
This script demonstrates how to set the mode of the robot.
simple_move
This script demonstrates how to move a robot to different positions.
mixed_interpolation_space
This script tests transitions of the interpolation space.
arm_discovery
This script discovers all Arm Controllers connected on a given subnet.
Intermediate
The intermediate demos give examples on commonly-used configurations and application-specific control loops.
cartesian_external_effort
This script demonstrates how to use external effort control in Cartesian space to do impedance control.
cartesian_velocity
This script demonstrates how to use velocity control in Cartesian space to do admittance control.
configuration_in_yaml
This script demonstrates how to exchange persistent configurations via a YAML file.
error_recovery_and_logging
This script demonstrates how to recover from an error in the driver and how to use and modify the logging capabilities of the driver.
gravity_compensation_partial
This script demonstrates how to compensate for a portion of the gravity.
move
This script demonstrates how to write a control loop to move the robot to different positions and record the states.
move_two
This script demonstrates how to move two robots to different positions using interpolation.
set_factory_reset_flag
This script demonstrates how to reset all configuration options to their default values.
set_ip_method
This script demonstrates how to set the IP method to DHCP or MANUAL.
set_joint_limits
This script demonstrates how to set the joint limits of the arm.
set_manual_ip
This script demonstrates how to set the manual IP address.
teleoperation
This script demonstrates how to teleoperate the robots with force feedback.
Advanced
The advanced demos show configurations that should be used with full understanding the implications.
set_joint_characteristics
This script demonstrates how to set the joint characteristics in the EEPROM, using the effort corrections as an example.
joint_characteristics_finetune
This script demonstrates how to finetune the joint characteristic of one joint.
set_motor_parameters
This script demonstrates how to set the motor parameters of the arm.
What’s Next
These demos give you a foundation for developing your own applications. For more details on the driver API, please refer to the Trossen Arm Driver API.