From sdk-wiki
Jump to: navigation, search

This section described the Baxter Research Robot example programs. These example programs are provided as a starting point, demonstrating usage of the Python SDK packages for control of Baxter.

Prerequisites

Running Examples with the SDK

Initialize

$ cd ~/ros_ws
$ ./baxter.sh

Run a program!

$ rosrun baxter_examples <example_program> [arguments]

Refer to the individual examples below for a complete list of arguments or run it as

$ rosrun baxter_examples <example_program> -h

to find the list of arguments.

Clone the SDK Examples

We recommend suggest cloning the 'baxter_examples' into your ROS development workspace ( ~/ros_ws/src ). This will allow you to dig into the examples, follow along with the code walkthroughs and base your custom code off of these examples.

$ cd ~/ros_ws/src
$ git clone https://github.com/RethinkRobotics/baxter_examples.git

SDK Examples

Fundamentals

Enable Robot Example (Start Here) - This tool is responsible for enabling (powering and state monitoring) Baxter. Enabling the robot is expected and necessary for standard Baxter usage.

Movement

Joint Position Waypoints Example - The basic example for joint position moves. Hand-over-hand teach and recording a number of joint position waypoints. These waypoints will then be played back indefinitely upon completion.

Joint Position Keyboard Example - This example demonstrates numerous joint position control.

Joint Position Example - Joystick, keyboard and file record/playback examples using joint position control of Baxter's arms.

Joint Torque Springs Example - Joint torque control example applying virtual spring torques.

Joint Velocity Wobbler Example - Simple demo that moves the arm with sinusoidal joint velocities.

Joint Velocity Puppet Example - Simple demo which mirrors moves of one arm on the other in Zero-G.

Inverse Kinematics Service Example - Basic use of Inverse Kinematics solver service.

Simple Joint Trajectory Example - Simple demo using the joint trajectory interface.

Joint Trajectory Playback Example - Trajectory playback using the joint trajectory interface.

Head Movement Example - Simple demo moving and nodding the head.

Head Action Client Example - A demo to showcase the functionality of the head trajectory action server.

Gripper Example - Joystick and Keyboard control for the grippers.

Gripper Cuff Control Example - Simple cuff-interaction control with Zero-G mode.

Robot Configuration

URDF Configuration Example - A simple ROS node that shows how to add segment and joint subtrees to the robot's model.

Simulator

IK Pick and Place Demo - An intermediate example for combining Inverse Kinematics Service calls with Arm movement, gripper actuation, Gazebo Model Spawning, and simulator readiness.

Input and Output

Camera Control Example - Demonstrates usage for listing, opening, and closing the available cameras.

View Cameras Example - Simple tool for viewing camera feed on development machine.

Screen Display - Example tool for displaying image files (png, jpeg) on the Head Screen.

I/O Example - Flash the lights on the digital outputs.