使用激光雷达结合cartographer

您所在的位置:网站首页 激光雷达如何使用视频教程下载 使用激光雷达结合cartographer

使用激光雷达结合cartographer

2024-06-25 13:50:21| 来源: 网络整理| 查看: 265

SLAM(同步定位与地图构建),是指运动物体根据传感器的信息,一边计算自身位置,一边构建环境地图的过程,解决机器人等在未知环境下运动时的定位与地图构建问题。激光SLAM所需要的传感器一般有激光雷达(Lidar)、惯性测量单元(IMU)、里程计(Odometry)。由于 IMU 具有较高的角速度测量精度,相比IMU里程计具有较高的局部位置测量精度,一般用IMU计算角度信息,里程计计算位置信息,配合激光雷达进行SLAM过程。 Cartographer是google的工程师开发的一个用于室内实时建图的SLAM解决方案。总体上可以看作是由局部地图更新和全局回环检测两个部分构成。 在局部地图更新过程中,通过最优位姿估计,把激光扫描数据插入到当前维护的子图(submap)中。。 这次我们使用的是纯雷达建图指不依靠IMU或者里程计信息,只使用雷达的深度点云进行建图 使用的工具:激光雷达rplidar_X3+ubuntu20.04+ROS noetic版本(雷达选择其他品牌也可以) 1.启动激光雷达

x3雷达使用 雷达启动参考上面教程,这里我们只执行启动程序:

roslaunch ydlidar_ros_driver X2.launch

在这里插入图片描述

2.修改revo_lds.lua文件

文件路径:~/catkin_google_ws/src/cartographer_ros/cartographer_ros/configuration_files/revo_lds.lua

记得提前备份修改的文件,然后将下面代码复制,替换即可, 其实只更改了两个位置,tracking_frame 和published_frame ,里面的两个参数"horizontal_laser_link",改成自己激光雷达的frame_id,我的是laser_frame,其余的不要动。保存即可。 -- Copyright 2016 The Cartographer Authors -- -- Licensed under the Apache License, Version 2.0 (the "License"); -- you may not use this file except in compliance with the License. -- You may obtain a copy of the License at -- -- http://www.apache.org/licenses/LICENSE-2.0 -- -- Unless required by applicable law or agreed to in writing, software -- distributed under the License is distributed on an "AS IS" BASIS, -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -- See the License for the specific language governing permissions and -- limitations under the License. include "map_builder.lua" include "trajectory_builder.lua" options = { map_builder = MAP_BUILDER, trajectory_builder = TRAJECTORY_BUILDER, map_frame = "map", tracking_frame = "laser_frame", published_frame = "laser_frame", odom_frame = "odom", provide_odom_frame = true, publish_frame_projected_to_2d = false, use_pose_extrapolator = true, use_odometry = false, use_nav_sat = false, use_landmarks = false, num_laser_scans = 1, num_multi_echo_laser_scans = 0, num_subdivisions_per_laser_scan = 1, num_point_clouds = 0, lookup_transform_timeout_sec = 0.2, submap_publish_period_sec = 0.3, pose_publish_period_sec = 5e-3, trajectory_publish_period_sec = 30e-3, rangefinder_sampling_ratio = 1., odometry_sampling_ratio = 1., fixed_frame_pose_sampling_ratio = 1., imu_sampling_ratio = 1., landmarks_sampling_ratio = 1., } MAP_BUILDER.use_trajectory_builder_2d = true TRAJECTORY_BUILDER_2D.submaps.num_range_data = 35 TRAJECTORY_BUILDER_2D.min_range = 0.3 TRAJECTORY_BUILDER_2D.max_range = 8. TRAJECTORY_BUILDER_2D.missing_data_ray_length = 1. TRAJECTORY_BUILDER_2D.use_imu_data = false TRAJECTORY_BUILDER_2D.use_online_correlative_scan_matching = true TRAJECTORY_BUILDER_2D.real_time_correlative_scan_matcher.linear_search_window = 0.1 TRAJECTORY_BUILDER_2D.real_time_correlative_scan_matcher.translation_delta_cost_weight = 10. TRAJECTORY_BUILDER_2D.real_time_correlative_scan_matcher.rotation_delta_cost_weight = 1e-1 POSE_GRAPH.optimization_problem.huber_scale = 1e2 POSE_GRAPH.optimize_every_n_nodes = 35 POSE_GRAPH.constraint_builder.min_score = 0.65 return options 3.修改demo_revo_lds.launch文件

文件路径:~/catkin_google_ws/src/cartographer_ros/cartographer_ros/launch/demo_revo_lds.launch

" 复制粘贴即可 修改完之后,回到cartographer_ws 目录下再次编译: catkin_make_isolated --install --use-ninja 编译完成后进行测试 1.启动雷达节点 roslaunch ydlidar_ros_driver X2.launch 2.运行cartographer roslaunch cartographer_ros demo_revo_lds.launch

然后在rviz中可以看到地图数据 在这里插入图片描述 然后我们添加话题,移动雷达就可以看到位置移动轨迹 添加话题 移动轨迹

至此纯雷达slam就大功告成了!!!


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭