How to Make an Autonomous Mapping Robot Using SLAM

Sdílet
Vložit
  • čas přidán 31. 05. 2024
  • This video explains the basics of SLAM (Simultaneous Localization and Mapping), how a LIDAR sensor works, frontier exploration, pathfinding, pure pursuit, obstacle avoidance, and Monte Carlo localization. This project was part of my RBE 3002 class, more details can be found at: kainakamura.com/project/rbe3002.
    0:00 What is SLAM?
    0:44 Implementing SLAM
    1:44 Frontier Exploration
    2:31 Pathfinding
    3:07 Pure Pursuit
    4:10 Obstacle Avoidance
    4:26 Monte Carlo Localization
    5:08 Outro and Mapping Videos
  • Věda a technologie

Komentáře • 9

  • @ClickingKeys
    @ClickingKeys Před 7 dny +1

    I’m interested in creating an outdoor rover. In your opinion, would lidar work for accurate positioning in an outdoor environment, like a yard?

    • @kaihnakamura
      @kaihnakamura  Před 7 dny

      It's hard to say for sure if LIDAR would work well in an outdoor environment for your needs. One thing to keep in mind for the robot I used is that it only makes LIDAR scans parallel to the ground. This worked find for my needs because the only obstacles were the walls. But if the environment were full of obstacles shorter than the LIDAR sensor, then the robot would be unable to detect them.
      There are 3D LIDAR sensors that allow you to create point clouds in 3D, but these can be quite expensive. Some SLAM robots use a 2D LIDAR scanner in combination with a stereo camera to achieve the same effect. The robot in the video is a TurtleBot3, but I know the TurtleBot4 uses the LIDAR and camera approach. Hope this helps!
      turtlebot.github.io/turtlebot4-user-manual/overview/features.html

    • @ClickingKeys
      @ClickingKeys Před 7 dny

      @@kaihnakamura I really appreciate your thoughts and input. I was considering using GPS, but realized I would need RTK to make it accurate enough and that’s a bit more expensive than I was hoping for.

  • @ianwhaples3837
    @ianwhaples3837 Před 9 dny +1

    sometime in the future, would it be able to detect changes in the environment? where an obstruction has been added or a wall moved so that it can update it's map?

    • @kaihnakamura
      @kaihnakamura  Před 9 dny

      Currently, the robot is using the gmapping ROS package to map the environment which only works for static environments. However, there are other SLAM implementations in ROS that allow for dynamic maps such as slam_toolbox.
      gmapping: wiki.ros.org/gmapping
      slam_toolbox: github.com/SteveMacenski/slam_toolbox#lifelong-mapping

    • @ianwhaples3837
      @ianwhaples3837 Před 9 dny

      Cool, I gotta say this is a very well made video, I’m surprised at how small the Chanel is and I hope to see it grow.

    • @kaihnakamura
      @kaihnakamura  Před 9 dny

      Thank you so much! :)

  • @user-bo5nb8jv4l
    @user-bo5nb8jv4l Před 15 dny +1

    Wow, really outstanding results! How many people were on this project and how long it took you to accomplish it? Are you planning to release the code for this project? Again, thank you for sharing!

    • @kaihnakamura
      @kaihnakamura  Před 15 dny +1

      Three people over the course of a seven week term. Unfortunately, I cannot share the code in its entirety due to academic policy (students next year would just be able to copy it). But I could share code snippets or point toward resources with some of the algorithms I used if you’re interested. Thank you so much for your interest in this project! :)