1.本发明属于移动机器人自主导航领域,更具体地说涉及到一种适用于户外非结构化环境下的移动机器人高精度自主导航系统。
背景技术:2.自主导航主要包括局部导航和全局导航两部分,为建立可靠的自主导航系统,机器人需要一边对自身进行定位,一边根据传感器获取的周边环境信息构建局部地图,并完成全局路径的规划。目前虽然已经存在多种适用于室内外的移动机器人,但大多室内环境下的移动机器人采用的是红外传感器或依靠磁条导航等复杂且精度相对较低的设备,导致导航效果欠佳;还有部分室内环境下的移动机器人采用视觉或激光雷达传感器,其导航系统中用来进行探测环境的装置也存在不足,例如:单目视觉传感器组成的探测装置无法精确获得物体的深度信息;双激光雷达传感器组成的探测装置仅能获取空间中两个平面内的障碍物信息,而无法获取周围障碍物的信息等,这导致机器人的导航精度受到影响;此外,利用惯性导航技术的室内机器人虽然可以通过测量加速度后积分得出相应的速度及位移,从而引导室内机器人朝特定方向前进,但是积分累积的误差会随时间而增加。
3.随着机器人应用场景的广泛,面对未知的环境、无法预测各种可能出现的障碍的非结构化的室外环境下,例如:移动机器人在火星、森林、沙漠等环境下工作时依靠传感器获取的数据不完整且难以处理;标准迭代最近点算法在迭代搜索最近点时只考虑几何信息,在动态环境和非结构化环境下,icp无法单独实现精确的点云注册性能。
技术实现要素:4.本发明是为避免上述现有技术所存在的不足,提供一种移动机器人室外高精度自主导航系统,实现移动机器人在室外环境下高精度自主导航,保证机器人获取环境信息更为精准、机器人自主运动过程的更加稳定,且实现成本低廉,优化效果明显。
5.本发明为解决技术问题采用如下技术方案:
6.本发明移动机器人室外高精度自主导航系统的特点是其包括机械系统和软件系统;
7.所述机械系统包括gps定位设备、3d扫描仪、视觉里程计、服务器、处理器和运算模块;在所述机械系统中:由所述3d扫描仪通过扫描和三维重现获取室外场景信息和室外物体信息;由所述视觉里程计通过图像信息处理获得移动机器人位移信息;由所述服务器在3d扫描仪和gps定位设备之间收发指令和数据;由所述处理器对3d扫描仪和视觉里程计所述获取的图像进行格式转换以及分辨率调整;由所述运算模块对移动机器人在移动过程中所耗费的代价进行计算;所述软件系统包括机器人操作系统ros;
8.将机器人开始移动之前的初始地点坐标记为坐标o,将所述初始地点坐标o存入在服务器中的close_list集合中;针对移动中的机器人,按如下步骤进行最优路径规划:
9.步骤1、利用所述gps定位设备获得与机器人当前所在地点相邻且可直达的n个直
达地点n的坐标集合a,n=1,2,......n;将所述坐标集合a存入在服务器中的open_list集合中,将机器人当前所在地点坐标记为坐标b存入在服务器中的close_list集合中;
10.步骤2、针对服务器中存储的坐标b和坐标集合a,由所述运算模块一一对应计算获得机器人由坐标b移动到坐标集合a中的各直达地点n所需付出的代价f
n
,从n个代价f
n
中筛选出最低代价f
min
;
11.步骤3、若对应于最低代价f
min
的直达地点的数量为1,即对应于最低代价f
min
的直达地点为唯一直达地点,则将所述唯一直达地点作为当前目标地点w,并进入步骤7;否则进入步骤4;
12.步骤4、对应于最低代价f
min
的直达地点的数量多于1,即对应于最低代价f
min
的直达地点并非为唯一直达地点,按如下方式确定当前目标地点w:将对应于最低代价f
min
的m个直达地点记为w
j
,j=1,2...,m;所述运算模块通过计算分别获得机器人从初始地点坐标o移动到各直达地点w
j
所付出的各代价g
j
,从m个代价g
j
中筛选出最低代价g
min
;
13.步骤5、若对应于最低代价g
min
的直达地点的数量为1,即对应于最低代价g
min
的直达地点为唯一直达地点,则将所述唯一直达地点作为当前目标地点w,并进入步骤7;否则进入步骤6;
14.步骤6、若对应于最低代价g
min
的直达地点的数量多于1,即对应于最低代价f
min
的直达地点并非为唯一直达地点,则在对应于最低代价g
min
的各直达地点中任选其一作为当前目标地点w,并进入步骤7;
15.步骤7、机器人由当前地点向当前目标地点w移动,在机器人到达当前目标地点w时即完成当前一步移动;随后,将当前目标地点w的坐标作为机器人下一步移动的当前所在地点的坐标,返回步骤1继续下一步移动,直至机器人到达最终的目标地点,结束路径规划。
16.本发明移动机器人室外高精度自主导航系统的特点也在于所述可直达地点是按如下方式进行确定:设定机器人移动步距u,且将与机器人相距为u的地点视作相邻且可直达地点。
17.本发明移动机器人室外高精度自主导航系统的特点也在于所述机器人移动步距u是按如下方式获得:利用视觉里程计将由3d扫描仪扫描获得、并保存在服务器中的关于室外场景的三维图像利用处理器转化为二维图像,以所述二维图像的重心为原点建立二维直角坐标系xoy,针对在t时段内的图像变换计算获得机器人在t时段内的的移动距离作为移动步距u。
18.本发明移动机器人室外高精度自主导航系统的特点也在于:所述图像变换为图像发生缩放变换,针对图像发生缩放变换按如下方式计算获得机器人移动步距u:
19.将图像在二维直角坐标系中的坐标点记为p
i
[x
p
,y
p
],图像发生缩放变换发生在机器人移动的(t
i
,t
j
)时段内,利用测量设备获得图像发生移动的速率v1,则图像在单位时段内发生的位位移s由式(5
‑
1)计算获得:
[0020][0021]
在单位时段内,由于机器人移动使得由机器人测量设备观测到的图像发生缩放变换,在发生缩放变换后的图像中,坐标点p
i
[x
p
,y
p
]对应变换为坐标点p
i
‘
[x
p'
,y
p'
],根据相似定理,坐标点p
i
[x
p
,y
p
]在单位时段发生缩放变换的倍数λ由式(5
‑
2)计算获得:
[0022][0023]
式(5
‑
2)中:
[0024]
x
p
'和y
p
'为坐标点p
i
‘
[x
p'
,y
p'
]的坐标值;x
p
和y
p
为坐标点p
i
[x
p
,y
p
]的坐标值;
[0025]
机器人在单位时段内的位移量l如式(5
‑
3)所示:
[0026][0027]
式(5
‑
3)中:是在单位时段内由于图像缩放变换发生的位移量与机器人在单位时段内所移动的位移量的比值,
[0028]
则,由式(5
‑
4)计算获得机器人移动步距u:
[0029][0030]
移动步距u是机器人在(t
i
,t
j
)的时间段内发生的位移量,(t
i
,t
j
)时间段是由有限个单位时段所组成。
[0031]
本发明移动机器人室外高精度自主导航系统的特点也在于:所述图像变换为图像发生平移变换,针对图像发生平移变换按如下方式计算机器人移动步距u:图像发生平移变换发生在机器人移动的单位时段内,利用测量设备测得图像发生移动的速率v1,则图像在单位时段内发生的位移s由式(5
‑
5)计算获得:
[0032][0033]
机器人在单位时段内的位移量l如式(5
‑
6)所示:
[0034]
l=υs
ꢀꢀꢀ
(5
‑
6)
[0035]
式(5
‑
6)中:
[0036]
υ是在单位时段内图像平移的距离与机器人位移量的比值,υ≠0,1;
[0037]
则,由式(5
‑
7)计算获得机器人移动步距u:
[0038][0039]
移动步距u是机器人在(t
i
,t
j
)的时间段内发生的位移量,(t
i
,t
j
)时间段是由有限个单位时段所组成。
[0040]
本发明移动机器人室外高精度自主导航系统的特点也在于:机器人由当前所在地点移动到当前目标地点所付出的代价f为:
[0041][0042]
式(6
‑
1)中:以γ表示路面影响因子,以e表示不同类型路面;以γ
e
表示各不同类型路面的路面影响因子,共有四种不同类型的路面分别以e=i、e=ii、e=iii和e=iv进行
表征。
[0043]
本发明移动机器人室外高精度自主导航系统的特点也在于:处于室外环境中的机器人的运动状态受到路面粗糙度c和路面坡度d的影响;并有:
[0044][0045]
式(7
‑
1)中:θ为路面与水平面所成的倾角;h为机器人移动的水平位移,由视觉里程计测量得出;z为变坡点相对于水平面的高度;路面影响因子γ由式(7
‑
2)计算获得:
[0046][0047]
式(7
‑
2)中:系数k是表征机器人在运动时受到外界影响导致自身产生晃动的剧烈程度的物理量;路面粗糙度c随不同类型路面所有不同,根据土层等效剪切波速和场地覆盖层厚度将路面划分为如下四种类型:
[0048]
i类:指近海海面和海岛、海岸、湖岸及沙漠地区;
[0049]
ii类:指田野、乡村、丛林、丘陵以及房屋稀疏的乡镇和城市郊区;
[0050]
iii类:指有密集建筑群的城市市区;
[0051]
iv类:指有密集建筑群且房屋较高的城市市区。
[0052]
与已有技术相比,本发明有益效果体现在:
[0053]
1、本发明利用3d扫描仪获取外部环境信息,通过最优路径规划实现移动机器人在室外环境下进行高精度自主导航,可以保证机器人获取环境信息更为精准、机器人自主运动过程的更加稳定,且实现成本低廉,优化效果明显。
[0054]
2、本发明可以为室外环境下的服务型机器人、引导机器人等不同类型的机器人实现相似的功能提供参考。
附图说明
[0055]
图1是本发明系统构成框图;
[0056]
图2是本发明中路径规划算法流程图;
具体实施方式
[0057]
本发明移动机器人室外高精度自主导航系统包括机械系统和软件系统。
[0058]
参见图1,本实施例中机械系统包括gps定位设备、3d扫描仪、视觉里程计、服务器和处理器,并设置运算模块;在机械系统中:由3d扫描仪通过扫描和三维重现获取室外场景信息和室外物体信息;由视觉里程计通过图像信息处理获得移动机器人位移信息;由服务器在3d扫描仪和gps定位设备之间收发指令和数据;由处理器对3d扫描仪和视觉里程计获取的图像进行格式转换以及分辨率调整;由运算模块对移动机器人在移动过程中所耗费的代价进行计算。
[0059]
如图1所示还包括建图与导航模块,机器人首先通过gps模块获取全局地图信息后保存至服务器,通过全局地图信息得知目标地点的具体位置后由初始地点向目标地点移动。在移动过程中,机器人依靠自身所携带的3d扫描仪获取周围的环境信息从而判断自己
在全局地图中所处的具体位置,并依据利用3d扫描仪获取的环境信息以及自身的位置信息不断地更新局部地图信息,从而有效地进行路径规划以付出最小的代价到达目标地点。
[0060]
本实施例中,软件系统包括机器人操作系统ros,将机器人开始移动之前的初始地点坐标记为坐标o,对于坐标o,首先,机器人利用携带的gps定位设备接收卫星发出的导航定位信号,gps定位设备是内置了gps模块和移动通信模块的终端;其次,由gps定位设备中内置的gps模块将接收到的导航定位信号转化为计算机可识别并处理的数据后获取到机器人当前所在地的经纬度;最后gps定位设备将通过移动通信模块将机器人当前地点所对应的经纬度上传至服务器,由服务器将经纬度信息解析成具体的三维坐标后再将坐标o存入close_list集合中;针对移动中的机器人,如图2所示流程,按如下步骤进行最优路径规划:
[0061]
步骤1、机器人利用gps定位设备与卫星群进行通讯,接受卫星群发送的位置、时间数据所组成的信号,基于数据计算并获得与机器人当前所在地点相邻且可直达的n个直达地点n的坐标集合,记为坐标集合a,n=1,2,
……
n;将坐标集合a存入在服务器中的open_list集合中,将机器人当前所在地点坐标记为坐标b,并将当前所在地点坐标b存入服务器中的close_list集合中。
[0062]
步骤2、针对服务器中存储的坐标b和坐标集合a,由运算模块一一对应计算获得机器人由坐标b移动到坐标集合a中的各直达地点n所需付出的代价f
n
,从n个代价f
n
中筛选出最低代价f
min
。
[0063]
步骤3、若对应于最低代价f
min
的直达地点的数量为1,即对应于最低代价f
min
的直达地点为唯一直达地点,则将唯一直达地点作为当前目标地点w,并进入步骤7;否则进入步骤4。
[0064]
步骤4、对应于最低代价f
min
的直达地点的数量多于1,即对应于最低代价f
min
的直达地点并非为唯一直达地点,按如下方式确定当前目标地点w:
[0065]
将对应于最低代价f
min
的m个直达地点记为w
j
,j=1,2
…
,m;运算模块通过计算分别获得机器人从初始地点坐标o移动到各直达地点w
j
所付出的各代价g
j
,从m个代价g
j
中筛选出最低代价g
min
。
[0066]
步骤5、若对应于最低代价的直达地点的数量为1,即对应于最低代价g
min
的直达地点为唯一直达地点,则将唯一直达地点作为当前目标地点w,并进入步骤7;否则进入步骤6。
[0067]
步骤6、若对应于最低代价g
min
的直达地点的数量多于1,即对应于最低代价f
min
的直达地点并非为唯一直达地点,则在对应于最低代价g
min
的各直达地点中任选其一作为当前目标地点w,并进入步骤7。
[0068]
步骤7、机器人由当前地点向当前目标地点w移动,在机器人到达当前目标地点w时即完成当前一步移动。随后,将当前目标地点w的坐标存入服务器中的close_list集合,并将当前目标地点w作为机器人下一步移动的当前所在地点的坐标,返回步骤1继续下一步移动,直至机器人到达最终的目标地点,结束路径规划。
[0069]
本实施例中通过路径规划引导机器人从初始地点向目标地点移动,能够实现机器人在移动过程中尽可能地避开例如:地面损毁严重、磁场强度过大、空气湿度过高、障碍物分布密集等环境相对恶劣的区域,从而可以降低对组成机器人所需的机械元件以及机器人自身所携带的电子设备造成损耗的概率,保证机器人自身的软硬件设备保持相对良好的运作状态。具体实施中,相应的技术措施也包括:
[0070]
可直达地点是按如下方式进行确定:设定机器人移动步距u,且将与机器人相距为u的地点视作相邻且可直达地点。
[0071]
机器人移动步距u是按如下方式获得:利用视觉里程计将由3d扫描仪扫描获得、并保存在服务器中的关于室外场景的三维图像利用处理器转化为二维图像,以二维图像的重心为原点建立二维直角坐标系xoy。在机器人移动过程中3d扫描仪随着机器人同步移动,移动过程中,3d扫描仪将激光以点、线或阵列的形式投射至室外场景中的物体表面,根据物体反射光判断物体的位置获得其坐标信息并上传至服务器;3d扫描仪不仅能够基于反射光的角度获得物体的几何信息,还能够将室外场景的立体信息转换为计算机可直接处理的数据。基于此,根据在t时段内二维图像的变换情况能够计算获得机器人在t时段内的的移动距离作为移动步距u。
[0072]
图像变换有两种不同的形式,一种是图像发生缩放变换,另一种是图像发生平移变换;
[0073]
具体实施中,针对图像发生缩放变换按如下方式计算获得机器人移动步距u:将图像在二维直角坐标系中的坐标点记为p
i
[x
p
,y
p
],图像发生缩放变换发生在机器人移动的(t
i
,t
j
)时段内,利用测量设备图像发生移动的速率v1,则图像在单位时段内发生的位移s由式(5
‑
1)计算获得:
[0074][0075]
在单位时段内,由于机器人移动使得由机器人测量设备观测到的图像发生缩放变换,在发生缩放变换后的图像中,坐标点p
i
[x
p
,y
p
]对应变换为坐标点p
i
‘
[x
p
′
,y
p
′
],根据相似定理,坐标点p
i
[x
p
,y
p
]在单位时段发生缩放变换的倍数λ可由式(5
‑
2)计算获得:
[0076][0077]
式(5
‑
2)中:
[0078]
x
p
′
和y
p
′
为坐标点p
i
‘
[x
p
′
,y
p
′
]的坐标值;x
p
和y
p
为坐标点p
i
[x
p
,y
p
]的坐标值;
[0079]
机器人在单位时段内的位移量l如式(5
‑
3)所示:
[0080][0081]
式(5
‑
3)中:是在单位时段内由于图像缩放变换发生的位移量与机器人在单位时段内所移动的位移量的比值,则,由式(5
‑
4)计算获得机器人移动步距u:
[0082][0083]
移动步距u是机器人在(t
i
,t
j
)的时间段内发生的位移量,(t
i
,t
j
)时间段是由有限个单位时段所组成。
[0084]
针对图像发生平移变换按如下方式计算机器人移动步距u:图像发生平移变换发生在机器人移动的单位时段内,利用测量设备测得图像发生移动的速率v1,则图像在单位时段内发生的位移s由式(5
‑
5)计算获得:
[0085][0086]
机器人在单位时段内的位移量l如式(5
‑
6)所示:
[0087]
l=υs
ꢀꢀꢀ
(5
‑
6)
[0088]
式(5
‑
6)中:υ是在单位时段内图像平移的距离与机器人位移量的比值,υ≠0,l;
[0089]
则,由式(5
‑
7)计算获得机器人移动步距u:
[0090][0091]
移动步距u是机器人在(t
i
,t
j
)的时间段内发生的位移量,(t
i
,t
j
)时间段是由有限个单位时段所组成。
[0092]
机器人由当前所在地点移动到当前目标地点w所付出的代价f为:
[0093][0094]
式(5
‑
8)中:以γ表示路面影响因子,以e表示不同类型路面,γ
e
即表示为各不同类型路面的路面影响因子,共有四种不同类型的路面分别以e=i、e=ii、e=iii和e=iv进行表征;路面影响因子γ用来表征由于路面本身所具有的物理属性对机器人运动状态造成的影响,例如:处于室外环境中的机器人的运动状态受到路面粗糙度c和路面坡度d的影响;并有:
[0095][0096]
式(5
‑
9)中:θ为路面与水平面所成的倾角;h为机器人移动的水平位移,由视觉里程计测量得出;z为变坡点相对于水平面的高度;
[0097]
路面影响因子γ由式(7
‑
2)计算获得:
[0098][0099]
式(5
‑
10)中:系数k是表征机器人在运动时受到外界影响导致自身产生晃动的剧烈程度的物理量;路面坡度d是表征地表单元陡缓的程度的物理量,表达方式如式(5
‑
9);路面粗糙度c随不同类型路面所有不同,根据土层等效剪切波速和场地覆盖层厚度将路面划分为如下四种类型:
[0100]
i类:指近海海面和海岛、海岸、湖岸及沙漠地区;
[0101]
ii类:指田野、乡村、丛林、丘陵以及房屋稀疏的乡镇和城市郊区;
[0102]
iii类:指有密集建筑群的城市市区;
[0103]
iv类:指有密集建筑群且房屋较高的城市市区。
[0104]
路面粗糙度c指的是路表面骨料的棱角阻碍机器人移动的能力,通常与路面摩擦系数和路表构造深度有关,会随着路面类型所对应等级的上升而对机器人的运动状态造成相对更强的影响,从而使机器人在到达目标地点的过程中付出更高的代价。
[0105]
本发明中机器人是以3d扫描仪为捕获环境信息的工具,使机器人在移动过程中能够准确的识别周边环境中障碍物的分布地点以有效地避让,保证自身运动的稳定性;并根
据自身的定位与最终目标地点进行合理的路径规划,减小移动过程受到外界干扰。