SLAM——开源项目学习

1、二维机器人的SLAM:定位、建图和路径规划

      该网站有关于ROS二维机器人仿真的专栏,里面详细介绍了二维机器人在室内环境的避障、建图、定位与路径规划等,是入门机器人自主导航的很好教程。

    1-1 学习网站:

   http://www.corvin.cn/category/robot-simulator/stdr_simulator

    1-2 全局路径规划算法:

   框架解析:https://blog.csdn.net/Jeff_Lee_/article/details/74276161

   源码解析:https://blog.csdn.net/u013158492/article/details/50504963

                                https://blog.csdn.net/Nksjc/article/details/78812066

   附加知识点:

            1) DijKstra、A* 和D* 路径规划算法

   https://blog.csdn.net/kongbu0622/article/details/1871520

 1-3 局部路径规划DWA算法:

   简介:https://blog.csdn.net/jyb1234/article/details/72829402

   算法原理:https://blog.csdn.net/heyijia0327/article/details/44983551

   代码解析:https://blog.csdn.net/m0_37343696/article/details/79866999?utm_source=blogxgwz5

   1-4 costmap学习

          英文功底好的,建议阅读官网介绍。

          costmap_2d:  http://wiki.ros.org/costmap_2d#Map_type_parameters

          costmap介绍:https://blog.csdn.net/x_r_su/article/details/53408528

          costmap文集:https://blog.csdn.net/x_r_su/article/category/6374886

          costmap自定义新层:https://blog.csdn.net/x_r_su/article/details/53454368

2、ROS Navigation包学习

      2-1 上述项目中也用到navigation包的内容,其核心是move_base。关于navigation包的配置使用可以参照创客制造:

          https://www.ncnynl.com/archives/201708/1880.html

     建议在学习navigation包时,先讲创客制造关于该包的讲解过一遍。

      2-2 上述二维机器人仿真的后几期介绍了在已知地图上进行导航,实现了随机地图上发布六个点,然后无人机进行全局路径规划和局部规划,一直到达目的地。 这其中全局路径规划只进行了一次,猜测原因是1)有先验地图作为static layer,全局路径规划在此基础上避开障碍物规划出最短路径是可能的;2)实际实验中没有动态的障碍物出现在obstacle layer;具体开源代码如下:

          git clone -b indigo_branch http://corvin.cn:8081/gerrit/stdr_ws 

          需要运行install脚本,补全支持包,注意这个是Indigo分支下的,其他版本ros可以切其他分支。编译成功后,运行:

    roslaunch stdr_navigation patrol_nav.launch

      2-3 对于实际应用时,我们是不知道地图的,一般需要使用SLAM提供map数据给move_base,实际的全局路径规划也是不断根据更新的costmap不停进行重规划的。这实际上是我们需要的,幸运的是ros提供了这方面的例程:

      git clone https://github.com/ros-planning/navigation_tutorials.git

      git checkout indigo-devel

      编译后,运行

       roslaunch navigation_stage move_base_gmapping_5cm.launch

       可以通过rviz中的2D Nav Goal点击目标点,可以看到机器人一遍建图一遍规划路径。

3、Hector slam原理学习

    https://blog.csdn.net/wangjingqi930330/article/details/70143476

    https://blog.csdn.net/roadseek_zw/article/details/53379896

    https://blog.csdn.net/weixin_40047925/article/details/80679496

    3-1 其中更新地图需要使用bresenham算法,介绍如下:

           https://blog.csdn.net/cjw_soledad/article/details/78886117

           https://blog.csdn.net/yzh1994414/article/details/82860187

4、vins-mono视觉惯性里程计

      https://blog.csdn.net/wangshuailpp/article/details/78461171

你可能感兴趣的:(SLAM)