Checkout the YouTube Video of the project reaching to the designated pickup and drop off zones.
- SLAM_gmapping
- Turtlebot
- Turtlebot_navigation
- Turtlebot_simulator
- Turtlebot_interactions
- Simple U model and save it in a Gazebo world.
- Add simple U world for SLAM.
- Made a wall_follower package
- Add
C++
code insrc/wall_follower.cpp
- Edited CMakeLists.txt. Add rule for compiling wall_follower node
- reduced the
linearUpdate
andangularUpdate
- increased the
minimunScore
to a large value. This prevented the jumps from the robot for large feature poor environments. - Save the map file in World directory.
- AMCL: Given the right path for the map file in World to the map server for AMCL.
- Create a
pick_objects
package for commanding the robot to go to pickup and drop-off zones. - Add
C++
code in thesrc/pick_objects.cpp
- Edited CMakeLists.txt. Add rule for compiling pick_objects node
- Create a
add_markers
package for commanding the robot to go to pickup and drop-off zones. - Add
C++
code in thesrc/add_markers.cpp
to display the visual markers in RViz. - Edited CMakeLists.txt. Add rule for compiling add_markers node.
- Published virtual object when the robot reaches the pickup and drop point.
To implement this, a new parameter zone
was set.
- Setting the parameter server when reaching pickup and drop zone.
ros::NodeHandle n;
n.setParam("zone", "pick");
The value of the zone
parameter was checked in the add_markers node and when in a zone, the marker was published in that zone.