- 博客(11)
- 资源 (5)
- 收藏
- 关注
原创 costmap2D数据结构及生成过程
概述前一篇源码分析,让我了解到了costmap_2d包类的具体功能。但costmap2d包的到底整体包含什么地图数据?如何维护地图数据?何时调用各层更新?何时聚合?这些问题还不甚明了。这篇对costmap2d维护的地图数据、更新过程做一个总结。地图数据结构‘如中序号对应了地图生成过程的步骤,可能不全,但是已经对地图的数据有了清晰的认识。地图生成过程move_base类的构造函数,调用了...
2019-01-18 23:51:38 1144
原创 costmap_2d包源码学习
0 概述该软件包订阅现实世界的传感器数据,实现2d栅格costmap。该软件包还支持基于map_server的costmap初始化,基于滚动窗口的costmaps,以及基于参数的订阅和传感器主题的配置。0.1 层次分为三层:staticlayer,obstaclelayer,inflationlayer。0.2 基础cost值每个单元分为三个状态。Occupied(costmap_2d...
2019-01-18 23:47:00 1990 1
原创 tf中的常用类和函数
geometry_msgs::PoseStamped消息简介:内容包括序列号、时间戳、frameID、位姿(点表示位置和四元数表示姿态)tf::Transform和tf::pose完全一样,就是一个typedef类简介:储存了3×3旋转矩阵和3×1平移矢量。tf::StampedTransform类简介:保存stamped transform类型的数据。带有ROS时间戳、子坐标系、父坐标...
2019-01-15 11:11:56 1356
转载 LINUX常用命令
一、Linux权限的概念 Linux下有两种用户:普通用户和超级用户()。 普通用户:在linux下做有限的事情; 超级用户:可以在linux系统下做任何事情,不受限制。 普通用户的提示符是“$”,超级用户的命令提示符是“#”。 命令: su [用户名] 功...
2019-01-15 11:10:52 203
转载 boost线程知识
BOOST 线程完全攻略 1 创建线程 首先看看boost::thread的构造函数吧,boost::thread有两个构造函数: (1)thread():构造一个表示当前执行线程的线程对象; (2)explicit thread(const boost::function0& threadfunc):&n...
2019-01-15 11:10:33 184
原创 boost库之多线程编程
多线程与多进程的概念说到多线程编程,那么就不得不提并行和并发,多线程是实现并发(并行)的一种手段。并行是指两个或多个独立的操作同时进行。注意这里是同时进行,区别于并发,在一个时间段内执行多个操作。在单核时代,多个线程是并发的,在一个时间段内轮流执行;在多核时代,多个线程可以实现真正的并行,在多核上真正独立的并行执行。例如现在常见的4核4线程可以并行4个线程;4核8线程则使用了超线程技术,把一个物...
2019-01-15 11:10:09 560
原创 actionlib常规操作
actionlib::ActionServer< ActionSpec >::ActionServer ( ros::NodeHandle n,std::string name,boost::function< void(GoalHandle)> goal_cb,boost::function< void(GoalHandle)> cancel_c...
2019-01-15 11:09:32 491
原创 导航recovery机制
概述recovery机制是当移动机器人认为自己被卡住时,指导机器人进行一系列的恢复行为。1 恢复机制如图:move_base节点可以在机器人认为自己被卡住时选择性地执行恢复行为。默认情况下,move_base节点将采取以下操作来清除空间:首先,用户指定区域以外的障碍物将从机器人的地图上清除。接下来,如果可能的话,机器人将进行原地旋转以清除空间。如果这也失败了,机器人将更积极地清除地图,...
2019-01-14 18:43:19 2673
原创 global_planner源码学习
简介global_planner负责全局规划,主要利用了A*算法和Dijkstra算法。提供了makeplan接口做全局规划。可以发布geometry_msgs::PoseStamped类型的信息。类简介
2019-01-07 20:13:33 1170
原创 nav_core包源码学习
简介gav_core包里面只有四个头文件,规定了导航核心功能包必须有的接口。四个头文件中:三个虚基类:BaseGlobalPlanner、BaseLocalPlanner、RecoveryBehavior函数:loadParameterWithDeprecation加载ros参数服务器中的参数。BaseGlobalPlanner类1、虚函数initialize:需实现功能:设定全局规...
2019-01-06 14:52:27 369
Introduction to Autonomous Mobile Robots(自主移动机器人导论)
2018-09-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人