Due to the use of vision systems, like the Kinect, and the mobile Pioneer 3DX base, the software and sensing will be built around ROS. The Pioneer 3DX has a controller node written for ROS, the RosAria package provided by the manufacturer. The opensource kinect2_bridge will be used to gather depth images from the Kinect and forward them to a node written to detect the ball. Color images will be sent to a human-detection node, which will give an angular offset between the person and the robot.
Detailed software component diagram. The ROS interfaces are labeled with the topic names that components will communicate over.
In this diagram, the ROS Ecosystem area provides a blanket connection to the standard ROS master and communication layer. These are not directly specified to simplify the diagram, but they are provided in this ecosystem area.
Comonents that will be written for this project are: