帮助中心主页
Robokit 功能文档
移动机器人通识
底盘类型
屏幕
地图构建及定位
识别
条形码识别
复合机器人识别
3D 相机识别
料笼形状识别
栈板形状识别(基于3D相机)
2D 激光识别
标定
标定类型
手动标定项
导航
机构脚本
通信脚本
清洁机器人
辊筒车
功能授权
附录
参数及报警码
地图自动更新
一、地图自动更新原理
地图自动更新原理和建图过程类似,其主要分为2个线程,一个线程是进行地图构建,另一个是保存并进行优化构建的地图。
其流程为:
1:当车进入特定区域内,首先线程1循环接收定位发来的信息,等待另一个线程完成建图。线程2进行初始化karto-slam,设置地图参数,循环遍历每个Maplog,使用线程插值计算当前车体位置,同时检测是否车体移动的距离是否满足阈值,如果满足则进行karto-slam的主流程,进行建图。
2:当车体出特定区域后,保存地图,循环遍历历史中所有的激光点的位置。将激光中的点加入到图优化的顶点中,将定位发来的位置加入到图优化的边,进行优化,得到最优的位置。定位mapHeader,把地图信息放进去,完成局部子地图的构建与更新。
流程图如下:
其中save_map流程如下:
二、参数说明:
参数名称 | 参数位置 | 单位 | 默认值 | 最小值 | 最大值 | 支持版本 |
---|---|---|---|---|---|---|
lrm StartSlam | 参数配置-LocalReMap | — | true | \ | \ | 3.3.5.66~latest |
是否开启局部建图功能 | ||||||
lrm time gap | 参数配置-LocalReMap | s | 10 | 0 | 99 | 3.3.5.66~latest |
相同区域连续建图间隔 | ||||||
lrm save_submap_threshold | 参数配置-LocalReMap | m | 0.15 | 0.0 | 0.5 | |
局部地图建图之后的评价标准,一般不需要修改 | ||||||
lrm use_nav_pose_threshold | 参数配置-LocalReMap | s | 0.7 | 0.0 | 1.0 | |
选取定位位姿的距离间隔,一般不需要修改 | ||||||
lrm use_optimization | 参数配置-LocalReMap | — | true | \ | \ | |
是否启用将定位pose作为图优化单边,一般不需要修改 | ||||||
lrm max_rang | 参数配置-LocalReMap | m | 20.0 | 0.0 | 150 | |
建图时激光最大扫描距离,一般不需要修改 | ||||||
lrm angle_threshold | 参数配置-LocalReMap | ° | 0.5 | 0.0 | 90 | |
轨迹对齐时选取建图轨迹的角度阈值,一般不需要修改 | ||||||
lrm distance_threshold | 参数配置-LocalReMap | m | 0.2 | 0.0 | 90 | |
轨迹对齐时选取建图轨迹的距离阈值,一般不需要修改 | ||||||
lrm use_icp | 参数配置-LocalReMap | — | false | \ | \ | |
轨迹对齐是否使用icp,一般不需要修改 |
最近更新 2024/02/24
感谢反馈
有帮助
感谢反馈
没帮助