From sdk-wiki
Jump to: navigation, search
Learning: Foundations, Advanced Understanding, Projects and Tools (Do More), Configuration and Admin

This page contains all of the Baxter Tools necessary for standard operation (enabling the robot, controlling the cameras, etc.) as well as support for external tools (MoveIt! motion planning framework, Gazebo simulation, etc.).

Standard Operational Tools

This section describes tools for everyday use with Baxter. These tools are provided in the baxter_tools package, and are largely convenient, common usage, executable tools created using the baxter_interface .

Enable Robot (enable_robot.py)

A fundamental tool when working with Baxter, the enable_robot tool, allows for enabling/disabling/resetting/stopping the robot. Baxter must be enabled in order to actively command any of the motors.

Camera Control Robot (camera_control.py)

A tool for use of Baxter's cameras, camera_control.py, allows for listing, opening, closing, resetting and changing resolution.

Tuck Arms Tool (tuck_arms.py)

A tools for tucking and untucking Baxter's arms. Useful when unpacking Baxter, moving locations, shipping, etc.

Supported External Tools

This section describes advanced tools external to Baxter for which Rethink has created specific implementations to support.

Motion Planning

MoveIt!

Moveit logo.png

MoveIt Tutorial

MoveIt! is the standard and state of the art ROS motion planning framework. MoveIt! supports the latest in motion planning, manipulation, perception, collision checking, visualization and more..

Custom IKFast for your Baxter

Every Baxter's URDF is slightly different. This tutorial shows you how to generate IKFast for use with MoveIt specific to your Baxter. For additional background and information on the algorithm behind IKFast, please see Rosen Diankov's Doctoral thesis.

Simulation

Gazebo

Gazebo horz.png

Baxter Gazebo Simulation

Gazebo is a "robot simulation tool that offers the ability to accurately and efficiently simulate populations of robots in complex indoor and outdoor environments. At your fingertips is a robust physics engine, high-quality graphics, and convenient programmatic and graphical interfaces. Best of all, Gazebo is free with a vibrant community."

Web Tools

Rosbridge

The Baxter Research Robot runs rosbridge nodes automatically, which enables users to interface with the robot directly via the rosbridge JSON APIs without needing a ROS installed platform.

Using Standard ROS Tools with Baxter

One aspect of ROS, and the large, active community is the creation and support of useful development tools. This section largely describes these tools and their usage with Baxter.

Visualization

rviz

Rviz 2014.png

Using rviz with Baxter

rviz (ROS visualization) is a 3D visualizer for displaying sensor data and state information from ROS. Using rviz, you can visualize Baxter's current configuration on a virtual model of the robot. You can also display live representations of sensor values coming over ROS Topics including camera data, infrared distance measurements, sonar data, and more.

image_view

ROS image_view A simple visualizer for ROS image topics. Useful for viewing Baxter's cameras.

Robot Status/Monitor

ROS rqt_console

ROS GUI tool for displaying ROS logging (INFO/WARN/ERROR/DEBUG message).

ROS robot_monitor

ROS GUI Tool which uses the diagnostic_aggregator node to filter and display robot diagnostics. This tools is primarily used for diagnosing Baxter hardware problems.

Resources

Using Joysticks

Guide for configuring and connecting with supported joysticks (ps3, xbox, logitech) for use in ROS and with the SDK (example programs).

Kinect basics

Connect a Kinect camera to the SDK dev workstation, and start using the output for your project.

Links to Useful ROS Tools

There are a number of other standard ROS tools useful for development/debugging.

rqt_bag

Record, view, and playback ROS topics (Command-line reference). Useful debugging tool.

rqt_plot

GUI plugin for plotting. Plot ROS message data against a number of backends.