Skip to content

G1-k/LaMB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LaMB
CC BY-NC-SA 4.0 CC BY-NC-SA 4.0

Localization and Mapping Bot a.k.a LaMB

alt_text

LaMB is a differential drive robot which uses SLAM with RPLidar to navigate in its environment. It uses Jetson Nano as a companion computer for path planning and obstacle avoidance

Getting Started

  1. Give a star to this repo (at the top)

  2. Install Pre-requisite

sudo apt-get install ros-melodic-gmapping ros-melodic-teleop-twist-keyboard ros-melodic-map-server ros-melodic-amcl ros-melodic-move-base
  1. Clone the repository
  • cd catkin_ws/src
  • git clone https://github.com/G1-k/LaMB.git
  • git clone https://github.com/NickL77/RPLidar_Hector_SLAM.git
  1. Build the workspace
cd ..
catkin build

Generate Map using GMapping

Launch Respective Nodes

  1. Launch Hardware related Nodes:
roslaunch lamb hardware.launch

OR Launch these individually(Optional):

* Arduino Bridge Node

roslaunch ros_arduino_python arduino.launch


* RPLidar Node

roslaunch rplidar_ros rplidar.launch
  1. Gmapping node
roslaunch lamb gmapping.launch
  1. Visualization
cd catkin_ws/src/LaMB/rviz 
rviz -d map.rviz
  1. Teleop Node
 rosrun teleop_twist_keyboard teleop_twist_keyboard.py 

Using Arrow keys drive the robot around to generate map.

  1. After completing map, Save it
 rosrun map_server map_saver -f ~ ~/catkin_ws/src/lamb/maps/name_of_map

Navigation

  1. Launch Navigation:
roslaunch lamb navigation.launch savedmap:='name-of-map'

OR Launch these individually (Optional)

* AMCL Node

roslaunch lamb amcl.launch map:='name-of-map


* Move base Node

roslaunch lamb move_base.launch
  1. Visualization
 cd catkin_ws/src/LaMB/rviz
 rviz -d navigate.rviz
  1. Go to goal
  • Set initial pose using 2D pose estimate in Rviz.
  • Optional : Use teleop until pose estimates(red_particles) are accurate.
  • Set goal postion and orientation using 2D Nav goal

Don't forget to give a star (at top of the repo)

This work/project is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International Public License.

Contributing

  1. Fork it!
  2. Create your feature branch : git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request

About

Localization and Mapping Bot using ROS

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages