ROS
欧西特
这个作者很懒,什么都没留下…
展开
-
MPU6050+Arduino mega2560(dmp-kalman)并发送数据到ROS
1 Arduino IDE安装 可以从软件园直接安装,但是版本好像不太新,有些函数可能找不到,可去官网或者论坛中找较新的版本安装;2 硬件装配 注意对应引脚的接线方式,引脚旁边有对应的标识,接上对应的口就ok, 网上大部分的接线图都是UNO版本的,所以稍有差别,应当留心。 接号线后,可以测试一下是否成功: 可先看看这里 3 用mpu6050自带的处理器dmp融合数据 代码地址:原创 2017-05-13 13:07:18 · 3600 阅读 · 0 评论 -
ROS导航-向cost-map中添加超声波障碍图层
两种思路: 1.将超声波反馈信息作为一个新的layer添加到cost-map当中; 2.将超声波数据(ros_msgs/Range)转换为move_base包需要的输入格式(LaserScan或者PointCloud; 这里重点讲解方式一,因为方式二尚未尝试。步骤(以ros_by_example书中第八章例程为基础): 1 编译range_sensor_layer插件并添加到ROS环境原创 2017-05-13 11:36:15 · 10765 阅读 · 24 评论 -
ROS导航包navigation stack中关键包的作用
nav_core该包定义了整个导航系统关键包的接口函数,包括base_global_planner, base_local_planner以及recovery_behavior的接口。里面的函数全是虚函数,所以该包只是起到规范接口的作用,真正功能的实现在相应的包当中。global_planner和navfn这两个包干的事情是一样的,都是为实现目标点与当前点之间的全局路径规划,内部都有Dijkstr原创 2017-07-08 15:12:24 · 1930 阅读 · 0 评论 -
ROS导航之base_local_planner
局部规划模块的设计思路为,根据机器人当前位置(由costmapros提供)和速度(通过订阅odom消息提供),在速度和加速度以及模拟前进时间的限制下进行速度采样,并假设在此速度下行进模拟时长(sim_time)的时间。 然后根据时间间隔计算每一步的位置,根据经历位置的损失值之和计算轨迹的损失值。 关于损失值的计算,局部规划模块使用了三张图来保存损失值信息,对应三种类型的损失值,分别是pathg原创 2017-07-08 20:24:16 · 2001 阅读 · 0 评论 -
Cartographer源码阅读
(一) 定义的各种坐标系间的关系 1. map_frame = “map”,cartographer中使用的全局坐标系,最好保持默认,否则ROS的Rviz不认识其它的定义,导致无法可视化建图过程。 2. tracking_frame = “base_link”, 机器人中心坐标系,很重要,其它传感器数据都是以这个为基础进行插入的。cartographer_ros里面有个tf_bridge的原创 2017-06-05 20:49:28 · 7479 阅读 · 4 评论 -
ROS导航包之costmap_2d
Costmap2DROS类主要作用是完成对Costmap2D类的ROS接口包装,提供包括机器人在地图中的位置查询,机器人脚印(footprint)在地图中的位置查询; 地图的更新和停止接口; 提供Costmap2D的访问接口,通过它可以方便地访问地图数据信息。关键函数接口:Costmap2DROS(std::string name, tf::TransformListener& tf);boo原创 2017-07-08 16:58:32 · 3411 阅读 · 0 评论