The Robot Monitor tool is a ROS package (
robot_monitor) that uses the
diagnostic_aggregator node to filter and display robot diagnostics. Use this tool primarily for diagnosing any hardware problems with Baxter.
$ sudo apt-get update $ sudo apt-get install ros-indigo-rqt-robot-monitor
$ sudo apt-get update $ sudo apt-get install ros-hydro-rqt-robot-monitor
$ sudo apt-get update $ sudo apt-get install ros-groovy-rqt-robot-monitor
To start the Robot Monitor, first make sure that the
/diagnostics_agg topic is being published:
$ rostopic list | grep diagnostics /diagnostics /diagnostics_agg
Then run the
$ rosrun rqt_robot_monitor rqt_robot_monitor
Baxter publishes hardware diagnostics messages on the
/diagnostics topic and also aggregates them on the
/diagnostics_agg topic using the
diagnostic_aggregator node. The
/diagnostics_agg topic is the topic used by the Robot Monitor.
The diagnostics are grouped using the parameters under the
/diagnostic_aggregator/analyzers namespace. The main categories are:
- End Effectors
If you notice that some of the higher-level group labels seem to be showing an Error status when there are no Errors in the individual children, it is likely that the children diagnostic messages have just gone 'Stale'. The diagnostic messages will go stale when no new messages come in after the
timeout. The default timeout is 5.0 seconds.
To change the timeout, set the rosparam under the groups analyzer namespace. For example, to set the timeout for the '/Joints' group to 40 seconds, run:
$ rosparam set /diagnostic_aggregator/analyzers/joints/timeout 40.0
You will likely need to restart the diagnostic_aggregator node after changing the parameters.