Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The state-machine is built within ROS. Each state is its own ROS node and all nodes are controlled by a main ROS controller node.

Overview

New diagram(s) in development...

Nodes

cyborg_ros_controller

The cyborg_ros_controller contains the robots state-machine and coordinates all other ROS nodes. A command line tool node cyborg_ros_command is availble to configure the controller.

ros-arnl

The ros-arnl ROS node is developed by MobileRobots and handles communication with the robots actuators, sensors and navigation library.

From http://wiki.ros.org/ros-arnl:

  • ros-arnl provides a ROS node that incorporates Adept MobileRobots' ARNL localization and autonomous navigation system for AMR mobile robot platforms. ARNL is an optional package that may be purchased from Adept MobileRobots with a laser rangefinder and robot. See http://www.mobilerobots.com for details.
  • ros-arnl connects directly to the robot and laser rangefinder (via ARNL and ARIA libraries). It does not require any other nodes to be running to communicate with the mobile robot or laser.
  • You must have previously installed the ARNL libraries (Arnl and ArnlBase) before building ros-arnl.
  • For instructions on building and notes on its API see the README file provided with ros-arnl. ros-arnl has a similar interface to the standard ROS navigation stack, but does not yet have all of the same features. It has a few topics relevant to ARNL only as well.

Other nodes

The cyborg_ros_[NAME] repositories on github are the various ROS nodes made by us. For a more detailed overview over the existing ROS modules, see READMEs within the repos and the reports in Box.

The ROS nodes are basically the states (of the state-machine) of the robot:

To be developed

ROS rqt_graph:

ROS structureImage AddedROS structure expandedImage AddedA LED head ROS node that controls the LED head visualization with face animations and MEA data streams. See LED_box for code that can visualize the MEA data stream. This code is primarily made for the LED box.