This projects simulates the pick and place ability of Baxter along with obstacle avoidance. The Rviz path planner was used to extract coordinates for the robot to follow a specific path. These points were finally fed to the ik_pick_and_place node to simulate baxter's motion in Gazebo.
Figure 1 - Demo of Baxter moving objects while avoiding obstacles
- ROS Kinetic
- Gazebo
- MoveIt
- Rviz
- Baxter Simulator
- This project was developed using ROS Kinetic.
- It is highly recommended that ROS Kinetic is properly installed on your system before the use of this project.
- Follow the instructions on the ROS kinetic install tutorial page
to install Full-Desktop Version of ROS Kinetic.
- If you have the full-desktop version of ROS, you can skip the next 2 steps.
- The full-version would help you install Gazebo as well. If you have ROS Kinetic pre-installed on your machine, use the following link to just install Gazebo on your machine.
- Ensure successful installation by running Gazebo via your terminal window:
gazebo
- Install moveit using the following command:
sudo apt-get install ros-kinetic-moveit
- Install other packages for move-it Rviz interface:
cd ~/workspace/src
git clone https://github.com/ros-planning/moveit_robots.git
cd ..
catkin_make
- Create your ROS workspace by following instructions on the create ROS workspace tutortial page.
- Follow the Rethink Robotics link to setup the Baxter simulator.
- The coordinates for Baxter to pick'n'place objects while avoiding obstacles were extracted using Rviz Path Planning.
- A demo of the same can be seen below.
Figure 2 - Demo of extracting waypoints for Baxter to avoid obstacles
Switch to your src sub-directory of your ROS workspace to clone this repository.
<ROS Workspace>/src
- Run the following commands to clone and build this project:
git clone --recursive https://github.com/urastogi885/Supermarket-Cleaning-Robot
cd ../
catkin_make
Now, we use launch file to run. In a new terminal, type:
cd catkin_ws
source devel/setup.bash
roslaunch baxter-motion-planning baxter.launch