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 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
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
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.