This is the second ROS project from the Udacity Robotics Software Engineer course.
The robot's task is to chase a white ball and stop if either the ball is outside of the robot's camera view or if it gets too close to it to avoid a collision.
The source code is released under an MIT license.
Author: Andres Campos
Both my_robot and ball_chaser packages have been tested under ROS Kinetic on Ubuntu 16.04. This code is for personal learning and any fitness for a paticular purpose is disclaimed.
To install all packages from this repository as Debian packages use
sudo apt-get install ros-kinetic-...
Or use rosdep:
sudo rosdep install --from-paths src
- Robotics Operating System (ROS) (middleware for robotics)
sudo rosdep install --from-paths src
To build from source, clone the latest version from this repository into your catkin workspace and compile this package using
cd catkin_workspace/src
git clone https://github.com/acampos074/Ball_Chaser_Project.git
cd ../
catkin_make
Navigate to the /src/scripts directory, and launch the shell script:
./chase_ball.sh
- world.launch: Gazebo launch and world file
- ball_chaser.launch: The robot's ball chaser algorithm
Published Topics
-
/cmd_vel(geometry_msgs/Twist)Contains the linear and angular velocities to move the robot
Services
-
/ball_chaser/command_robotPublishes linear and angular velocities to the robot's wheel joints and provides a response message to the client containing the requested velocities.
Subscribed Topics
-
/camera/rgb/image_raw(sensor_msgs/Image)Reads the image data of an RGB camera
Services
-
/ball_chaser/command_robotCalls the server and sends the linear and angular velocities from the process_image_callback function.
Please report bugs and request features using the Issue Tracker