基于激光测距的温室移动机器人全局定位方法
基于激光测距的温室移动机器人全局定位方法
作者:刘洞波;刘国荣;胡慧;喻妙华
温室内高温高湿、工作环境较差 ,为改善劳动条件、提高生产效率 ,利用移动机器人进行温室作业很有必要。国外很多研究者研制出了多种性能卓越的农用机器人 ,国内的研究人员也开始该领域的研究 ,目前尚处于初步阶段 ,还需要做大量的基础研究及实际应用工作。近年来 ,温室的无土栽培得到快速发展 ,无土栽培是在温室内放置若干排较高的栽培箱 ,栽培箱形成的行道等空间类似于墙壁形成的走廊等室内环境空间 ,采用类似于室内移动机人自定位的方法可解决无土栽培温室内机器人定位问题。
在温室三维环境下运动 ,移动机器人必须通过传感器收集数据 ,建立外部环境的模型 ,正确全面地反映出外部环境的特征 ,为机器人准确定位提供依据。其中激光测距传感器具有较高的精度而无需对环境进行任何修改 ,具有测距范围大 ,环境适应能力强等优点 ,因而能很好地适用于温室结构。由于粒子滤波定位方法利用带权重的粒子集来表示任意概率分布 ,可以很好地解决全局定位以及机器人绑架问题。因此本文提出一种基于激光传感器 ,采用自适应曲率计算方法进行环境特征分割的移动机器人粒子滤波全局定位方法 ,以期解决无土栽培温室内机器人的自主定位问题 ,为机器人在温室内进行采摘、喷药、施肥等作业自主导航和避障奠定基础。
1 系统工作原理
机器人全局定位系统是一个递推的过程。仅靠里程计进行定位 ,累积误差会越来越大 ,因此在机器人定位系统中必须利用其他传感器和有效的定位算法相结合 ,才能很好地解决自主机器人的定位问题。本文使用激光测距仪感知温室环境特征信息 ,并以粒子滤波算法 [ 3~4 ]和地图匹配相结合的方式设计机器人定位系统。依靠每一个位置所观察到的不同的环境特征和已有地图匹配 ,可以不断地修正自身位置的误差量 ,从而可实现长距离的自主导航。
首先提出一种激光测距数据点自适应曲率计算方法 ,利用该算法对激光测距数据进行特征分割、特征提取 ,然后进行环境描述 ,构建环
境的局部和全局地图。将机器人里程计信息和前一时刻的机器人位姿输入到系统的粒子滤波器中 , 由粒子滤波器对机器人进行位姿预测距信息进行特征地图匹配,并将匹配结果输入到粒子滤波器中,最终实现移动机器人的精确定位。
2 环境描述与地图构建
特征地图提供了一种紧凑的地图描述方法 ,同时也为机器人自定位提供了更为直接的参照物。地图必须包含环境中所有可能用于定位的特征信息 ,对于二维激光测距仪而言 , 通过扫描获取机器人和与周围环境的距离信息 , 最终将其转化为环境的几
何信息 ,如机器人与某一墙面的距离等。本节按照以下步骤进行特征地图的创建 :采用自适应曲率计算方法进行环境特征分割 ;环境特征提取与描述;利用提取的特征创建局部地图 ,局部地图转换成全局坐标系 ,最后融合成新的全局地图。
2.1 基于自适应曲率计算的环境特征分割
2.1.1 自适应邻域窗口的选择
首先 ,为环境特征分类进行预处理 ,使用自适应断点检测器进行扫描点集分割 , 断点之间的连续扫描数据形成彼此隔离的连通区 。
2.1.2 离散曲率的计算
由 Teh和 Chin提出的改进方法 , 使用偏差与弦长的比值作为点的曲率 ,激光扫描连通区ρ= { p1 , p2 , …, pm }内的点除边界点 p1 和 pm 都可以通过确定邻域窗口进行求解。但是边界点 p1 和 pm 利用式 (4)不便求解 ,本文考虑到机器人定位的实时性要求 ,没有进行插值、拟合再求解 ,而是连通区起点 p1 的曲率取其右邻域窗口[ i, i + f ]内所有的点的曲率的平均值 , 连通区终点pm 曲率取其左邻域窗口 [ i - b, i ]内所有点曲率的平均值。
2.1.3 特征分割
由上述自适应曲率估计方法可获得激光扫描点的曲率函数 ,然后根据环境特征的曲率特性进行特征分割。
激光测距仪扫描外界平面获得直线段特征 ,故直线段特征对应的特征扫描点 , 是曲率小于阈值曲率 km in且曲率平均值接近零的连续激光扫描点的集合。曲线段由曲面扫描所得 , 曲率函数体现为连续局部峰值 , 曲率函数值绝对值大于阈值曲率 km in。如果曲率值接近一个常数 , 则当前点的集合对应的是圆或圆弧特征类。曲率函数的峰值则对应曲线的角点 ,而峰值大小与该扫描点转角大小相关 。
2.2 环境特征提取与描述
2.2.1 直线段特征提取
斜率截距式的直线参数可使用线性回归等式确定。
2.2.2 最小二乘曲线拟合
用提取的特征创建局部地图 ,将局部地图转换成全局坐标系 ,最后融合成新的全局地图。
3 M on te Carlo自定位方法
无土栽培温室环境中都有大量的特征模式 ,比如栽培箱排列形成的类似墙壁、走廊等环境特征 ,可以利用这些几何特征设计几何相似性函数。对于已知的全局地图 ,可以预先提取出环境特征 ,并以世界坐标形式存储。对于实时扫描数据 ,根据 212节算法对温室环境中的直线、曲线特征类型进行提取和描述。首先将全局地图中的参考环境特征与实时扫描的环境特征都转换到机器人坐标系下 , 然后根据参数 (ρ,θ)之间的差异 ,计算特征间的匹配程度 ,并利用此匹配的程度来更新每个粒子的权重值。
4 仿真实验
为验证本文所提出方法的有效性 ,建立了仿真实验平台 ,对激光扫描仪采集的数据进行处理 ,实现了移动机器人的自定位。仿真参数设计如下 :机器人运动速度设为 3 m / s,控制信号时间间隔为 01025 s,度噪声为 013 m / s,根据 SICK LMS2200的参数指标 ,扫描区域为 180°,有效测距 8 m,距离和角度分辨率分别为 1 cm和 015°。
4.1 地图创建实验
对温室结构进行一定程度的模型简化 ,实验环境为 1 000 cm ×800 cm大小的室内环境 ,对一组激光数据依次进行预处理、自适应曲率估计、环境特征分割、特征提取和局部地图创建 。
显示了机器人利用测距数据的自适应曲率函数对环境特征进行准确的分割 ,并构建局部地图的过程。图 5c横坐标表示当前工作场景扫描帧中0~360 号测距扫描点 , 因为扫描仪扫描区域为180°,角度分辨率分别为 015°,所以一帧有 360个扫描点 ;纵坐标表示扫描点的曲率值。图 5c只标示了角点特征 ,双实线之间为 3个连通区。图 5d中序号为 1、5、7、9、10、12、14、16、17的特征是直线段特征 ,序号 3的特征是曲线段特征 ,序号 2、4、6、8、11、13、 15的特征是角点特征。仿真实验表明基于自适应曲率计算的环境特征分割、提取算法是有效的 ,对环境进行了很好地描述。
412 全局定位实验
Monte Carlo定位中 ,样本数量的选择很重要。抽样数量太少 ,则计算速度快 ,但精度很低 ;而抽样数量过多时 ,定位误差降低了 ,但是实时处理难以完成。图 6表示的是对温室结构进行一定程度模型简化的室内环境 ,应用 Monte Carlo定位算法进行全局定位的过程中粒子分布的变化情况 ,其中初始粒子数选定为 500个。定位过程中采用基于 Kullback2 Leiber距离的自适应采样法 ,根据机器人位姿不确定程度的大小 ,动态地调节粒子数目 ,从而提高计算效率。具体定位过程如下 :
初始时刻机器人对环境完全陌生 ,其中样本均匀在整个环境空间 ,应用均匀分布函数随机采样得到。黑色粗点标记为机器人的真实位姿 ,见图 6a。经过几个周期的运动预测和感知更新的迭代过程 ,机器人提取到可识别的环境特征后生成候选位姿分布情况。可以看出 ,经过一段时间的探索后 ,机器人的位姿己收敛到少数几个可能存在的位置 ,粒子分布中的几处粒子云。机器人通过运动预测和感知更新两个步骤进行定位 ,并以此为基础进行下一步定位。机器人在定位过程中搜集到足够证据以确定其自身实际位置置信度的样本分布。此时机器人位置唯一确定 ,位姿初始化任务完成 。
定位过程中的定位误差曲线 ,可以看出算法的定位精度较高。在系统运行的初期 ,由于没有估计误差的协方差矩阵知识 ,误差比较大 ,误差很快得到抑制。x轴向平均误差为 1125 cm, y轴向平均误差为 2155 cm,转向角平均误差为 118°。
启动阶段误差较大是因为机器人由静止到运动对控制器有较大冲击造成的 ;而地面状况的局部不平整也会造成位姿误差的突变。角度误差和位置误差相关 ,位置误差较大的时刻角度误差也相对较大。由误差的大小可以得知定位系统确定的机器人位姿与实际位置很接近 ,本文所提出的定位方法是准确有效的。
5 结束语
本文提出一种无土栽培温室环境下自主机器人定位的新方法。利用自适应曲率计算方法对激光扫描仪获得的离散扫描数据进行特征分割 ,然后对环境特征进行描述和环境地图的构建。机器人利用里程计进行位姿的运动预测 ,为消除累积误差 ,利用激光扫描仪感知数据进行位姿的感知更新 ,并以粒子滤波算法和地图匹配相结合的方式 ,用样本的加权作为对机器人实际位姿的估计 ,实现了机器人定位功能 ,为机器人自主执行各种作业提供定位支持。仿真结果表明该方法能较好地满足温室移动机器人自定位要求。
本文章转自爱学术(aixueshu.com),如有侵权,请联系删除