ROS navigation相关概念小结
2015-09-16 22:37
831 查看
概念
1. navigation stack
A 2D navigation stack takes in information from odometry, sensor streams, and a goal pose and outputs safe velocity commands that are sent to a mobile base.
2. nav_core
nav_core是一个package,provides common interfaces for navigation specific robot actions. The interfaces include BaseGlobalPlanner, BaseLocalPlanner, and RecoveryBehavior. 这些接口可以用来build actions that can easily swap their planner, local controller, or recovery behavior for new versions adhering to the same interface. (对interface的作用还是不太明白)
The nav_core package contains key interfaces for the navigation stack. All planners and recovery behaviors that wish to be used as plugins in the move_base node must adhere to these interfaces.
How to do
1 Implement path planning algorithm(A star) on turtlebot.
Implement your own global planner (interface: base_global_planner).
Read about how all the pieces link together in http://wiki.ros.org/navigation and http://wiki.ros.org/nav_core .
What you’re really doing is creating a subclass of http://docs.ros.org/hydro/api/nav_cor… , overriding the two methods to implement your functionality.
2 If you want to do unknown environment navigation, then you’ll have to have a more robust algorithm that can reactto a changing map. That also involves setting up existing ROS packages that can build a map as you move along.
3 D* algorithm - This algorithm is an extension of A* algorithm.
It addresses the problem of expensive re-planning when obstacles appear in the path of the robot.
1. navigation stack
A 2D navigation stack takes in information from odometry, sensor streams, and a goal pose and outputs safe velocity commands that are sent to a mobile base.
2. nav_core
nav_core是一个package,provides common interfaces for navigation specific robot actions. The interfaces include BaseGlobalPlanner, BaseLocalPlanner, and RecoveryBehavior. 这些接口可以用来build actions that can easily swap their planner, local controller, or recovery behavior for new versions adhering to the same interface. (对interface的作用还是不太明白)
The nav_core package contains key interfaces for the navigation stack. All planners and recovery behaviors that wish to be used as plugins in the move_base node must adhere to these interfaces.
How to do
1 Implement path planning algorithm(A star) on turtlebot.
Implement your own global planner (interface: base_global_planner).
Read about how all the pieces link together in http://wiki.ros.org/navigation and http://wiki.ros.org/nav_core .
What you’re really doing is creating a subclass of http://docs.ros.org/hydro/api/nav_cor… , overriding the two methods to implement your functionality.
2 If you want to do unknown environment navigation, then you’ll have to have a more robust algorithm that can reactto a changing map. That also involves setting up existing ROS packages that can build a map as you move along.
3 D* algorithm - This algorithm is an extension of A* algorithm.
It addresses the problem of expensive re-planning when obstacles appear in the path of the robot.
相关文章推荐
- R-CNN和SPP-net
- HDU 5439 Aggregated Counting (2015年长春赛区网络赛C题)
- 算法学习--二分法查找
- JavaScript原型链
- hive调用Linux的shell命令测试
- Linux kernel过滤网络数据包
- a^b-b^a - SGU 112(高精度快速幂)
- ASP.NET - TreeView控件,只操作最后一级节点
- 《转型之战:传统企业的互联网机会》转型案例+访谈。案例一般,分析总结水平一般,二星推荐。
- JVM系列文章(五):Javac编译与JIT编译
- 关于caffe安装中的一些小问题
- uva 11549 Calculator Conundrum 周期,哇!这也能过
- JSP九大对象:内置对象
- webService客户端传输xml中文乱码
- Android第九讲——网络(四) 文件的下载(单线程下载、多线程下载)
- 产品设计:Android应用-开发技术【数据缓存】
- JVM系列文章(四):类加载机制
- 自定义View
- caffe安装遇到的问题总结
- testng 失败自动截图