发明内容
本发明的主要目的在于提出一种多模态导航方法及移动机器人,旨在针对室外移动巡逻机器人平台的应用情况,充分解决复杂路况的机器人定位导航问题,并实现低成本化。
为实现上述目的,本发明提出一种多模态导航方法,应用于移动机器人,所述移动机器人包括第一导航模块、第二导航模块以及第三导航模块;所述方法包括:
分别获取所述第一导航模块、第二导航模块以及第三导航模块对应的第一导航数据、第二导航数据、第三导航数据;
分别获取所述第一导航模块、第二导航模块以及第三导航模块对应的第一导航信号的当前值、第二导航信号的当前值、第三导航信号的当前值;
计算所述第一导航信号的当前值与所述第一导航数据中对应的目标值之间的第一误差;计算所述第二导航信号的当前值与所述第二导航数据中对应的目标值之间的第二误差;计算所述第三导航信号的当前值与所述第三导航数据中对应的目标值之间的第三误差;
选择所述第一误差、第二误差、第三误差中最小的值对应的导航模块进行导航。
可选地,所述第一误差为所述第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量的模值;所述第二误差为所述第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量的模值;所述第三误差为所述第三导航信号的当前值与所述第三导航数据中对应的目标值的误差向量的模值。
可选地,所述第一误差为所述第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量的模值与第一增益值之间的乘积;所述第二误差为所述第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量的模值与第二增益值之间的乘积;所述第三误差为所述第三导航信号的当前值与所述第三导航数据中对应的目标值的误差向量的模值与第三增益值之间的乘积。
可选地,所述第一增益值与所述第一导航模块的测量精度成反比;所述第二增益值与所述第二模块的测量精度成反比;所述第二增益值与所述第三模块的测量精度成反比。
可选地,所述第一导航模块为RTK-GPS导航模块;所述第二导航模块为航位推算导航模块;所述第三导航模块为视觉导航模块。
此外,为实现上述目的,本发明还提供一种移动机器人,其特征在于,包括:
第一导航模块,用于获取第一导航数据及第一导航信号的当前值;
第二导航模块,用于获取第二导航数据及第二导航信号的当前值;
第三导航模块,用于获取第三导航数据及第三导航信号的当前值;
误差计算模块,用于计算所述第一导航信号的当前值与所述第一导航数据中对应的目标值之间的第一误差;计算所述第二导航信号的当前值与所述第二导航数据中对应的目标值之间的第二误差;计算所述第三导航信号的当前值与所述第三导航数据中对应的目标值之间的第三误差;
导航选择模块,用于选择所述第一误差、第二误差、第三误差中最小的值对应的导航模块进行导航。
可选地,所述第一误差为所述第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量的模值;所述第二误差为所述第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量的模值;所述第三误差为所述第三导航信号的当前值与所述第三导航数据中对应的目标值的误差向量的模值。
可选地,所述第一误差为所述第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量的模值与第一增益值之间的乘积;所述第二误差为所述第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量的模值与第二增益值之间的乘积;所述第三误差为所述第三导航信号的当前值与所述第三导航数据中对应的目标值的误差向量的模值与第三增益值之间的乘积。
可选地,所述第一增益值与所述第一导航模块的测量精度成反比;所述第二增益值与所述第二模块的测量精度成反比;所述第二增益值与所述第三模块的测量精度成反比。
可选地,所述第一导航模块为RTK-GPS导航模块;所述第二导航模块为航位推算导航模块;所述第三导航模块为视觉导航模块。
本发明针对用于安保巡逻的移动机器人,一方面基于陀螺或者惯性测量单元完成的导航方案具有累计误差,不能进行长距离的导航,另一方面RTK-GPS导航信号容易受到高楼或者树木的遮挡,同时现有的视觉车道线保持容易受到地面积水等因素影响;单靠一种或者不能互补优缺点的导航方式难以解决室外导航的关键性问题;而针对多种导航方式进行的组合导航,没有很好的方法控制其各种传感器内在的误差。本发明提出的多模态导航方法及移动机器人解决上述适用于安保巡逻机器人室外导航的具体问题,包括GPS信号遮挡情况下的导航问题,路面积水无法进行车道保持的导航问题,航位推算的累计误差等问题。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。
如图1所示,本发明提供一种多模态导航方法,应用于移动机器人,所述移动机器人包括第一导航模块、第二导航模块以及第三导航模块;上述第一导航模块、第二导航模块以及第三导航模块可以是现有技术中的任意三种导航模块,所述方法包括步骤:
S1、分别获取所述第一导航模块、第二导航模块以及第三导航模块对应的第一导航数据、第二导航数据、第三导航数据;
S2、分别获取所述第一导航模块、第二导航模块以及第三导航模块对应的第一导航信号的当前值、第二导航信号的当前值、第三导航信号的当前值;
S3、计算所述第一导航信号的当前值与所述第一导航数据中对应的目标值之间的第一误差;计算所述第二导航信号的当前值与所述第二导航数据中对应的目标值之间的第二误差;计算所述第三导航信号的当前值与所述第三导航数据中对应的目标值之间的第三误差;
S4、选择所述第一误差、第二误差、第三误差中最小的值对应的导航模块进行导航。
误差越小,表示其导航方式越适合当前路况;因此,能更顺利地进行室外导航。
在本发明的一个实施例中,所述第一误差为所述第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量的模值;所述第二误差为所述第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量的模值;所述第三误差为所述第三导航信号的当前值与所述第三导航数据中对应的目标值的误差向量的模值。
在计算时,可以先计算第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量为d1;第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量为d2;第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量为d3;然后再计算其对应的误差向量的模值;具体地,误差向量d1、d2、d3分别为:
d1=(x1-x1',y1-y1',z1-z1');
d2=(x2-x'2,y2-y'2,z2-z'2);
d3=(x3-x'3,y3-y'3,z3-z'3);
误差向量d1、d2、d3对应的模值即第一误差、第二误差、第三误差分别为:
其中,(x'1,y'1,z'1)为第一导航信号的当前值,(x1,y1,z1)为第一导航数据中对应的目标值;(x'2,y'2,z'2)为第二导航信号的当前值,(x2,y2,z2)为第二导航数据中对应的目标值;(x'3,y'3,z'3)为第三导航信号的当前值,(x3,y3,z3)为第三导航数据中对应的目标值。
在本发明的另一实施例中,所述第一误差为所述第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量的模值与第一增益值之间的乘积;所述第二误差为所述第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量的模值与第二增益值之间的乘积;所述第三误差为所述第三导航信号的当前值与所述第三导航数据中对应的目标值的误差向量的模值与第三增益值之间的乘积。
在计算时,可以先计算第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量为d1;第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量为d2;第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量为d3;然后再计算其对应的误差向量的模值;最后计算误差向量的模值与增益值的乘积;具体地,误差向量d1、d2、d3分别为:
d1=(x1-x1',y1-y1',z1-z1');
d2=(x2-x'2,y2-y'2,z2-z'2);
d3=(x3-x'3,y3-y'3,z3-z'3);
误差向量d1、d2、d3对应的模值分别为:
其中,(x'1,y'1,z'1)为第一导航信号的当前值,(x1,y1,z1)为第一导航数据中对应的目标值;(x'2,y'2,z'2)为第二导航信号的当前值,(x2,y2,z2)为第二导航数据中对应的目标值;(x'3,y'3,z'3)为第三导航信号的当前值,(x3,y3,z3)为第三导航数据中对应的目标值;
若第一增益值、第二增益值、第三增益值分别为k1、k2、k3,则其对应的第一误差、第二误差、第三误差分别为:
ε1=k1δ1;
ε2=k2δ2;
ε3=k3δ3;
需要说明的是,本实施例中,所述第一增益值与所述第一导航模块的测量精度成反比;所述第二增益值与所述第二模块的测量精度成反比;所述第二增益值与所述第三模块的测量精度成反比;即测量精度越高,其对应的增益值越小。
在具体实施时,上述第一导航模块可以为RTK-GPS导航模块,其对应的第一导航信号为RTK-GPS信号;第二导航模块可以为航位推算导航模块,包括电子罗盘与编码器,其对应的第二导航信号为航位推算信号;第三导航模块可以为视觉导航模块,其对应的第三导航信号为车道保持信号。
上面对本发明实施例中的多模态导航方法,进行了描述,下面对本发明实施例中的移动机器人进行描述。
如图2所示,本发明提出一种移动机器人,包括第一导航模块10、第二导航模块20、第三导航模块30、误差计算模块40、导航选择模块50。其中:
第一导航模块10,用于获取第一导航数据及第一导航信号的当前值;
第二导航模块20,用于获取第二导航数据及第二导航信号的当前值;
第三导航模块30,用于获取第三导航数据及第三导航信号的当前值;
误差计算模块40,用于计算所述第一导航信号的当前值与所述第一导航数据中对应的目标值之间的第一误差;计算所述第二导航信号的当前值与所述第二导航数据中对应的目标值之间的第二误差;计算所述第三导航信号的当前值与所述第三导航数据中对应的目标值之间的第三误差;
导航选择模块50,用于选择所述第一误差、第二误差、第三误差中最小的值对应的导航模块进行导航。
在本发明的一个实施例中,所述第一误差为所述第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量的模值;所述第二误差为所述第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量的模值;所述第三误差为所述第三导航信号的当前值与所述第三导航数据中对应的目标值的误差向量的模值。
在计算时,可以先计算第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量为d1;第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量为d2;第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量为d3;然后再计算其对应的误差向量的模值;具体地,误差向量d1、d2、d3分别为:
d1=(x1-x1',y1-y1',z1-z1');
d2=(x2-x'2,y2-y'2,z2-z'2);
d3=(x3-x'3,y3-y'3,z3-z'3);
误差向量d1、d2、d3对应的模值即第一误差、第二误差、第三误差分别为:
其中,(x'1,y'1,z'1)为第一导航信号的当前值,(x1,y1,z1)为第一导航数据中对应的目标值;(x'2,y'2,z'2)为第二导航信号的当前值,(x2,y2,z2)为第二导航数据中对应的目标值;(x'3,y'3,z'3)为第三导航信号的当前值,(x3,y3,z3)为第三导航数据中对应的目标值。
在本发明的另一实施例中,所述第一误差为所述第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量的模值与第一增益值之间的乘积;所述第二误差为所述第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量的模值与第二增益值之间的乘积;所述第三误差为所述第三导航信号的当前值与所述第三导航数据中对应的目标值的误差向量的模值与第三增益值之间的乘积。
在计算时,可以先计算第一导航信号的当前值与所述第一导航数据中对应的目标值的误差向量为d1;第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量为d2;第二导航信号的当前值与所述第二导航数据中对应的目标值的误差向量为d3;然后再计算其对应的误差向量的模值;最后计算误差向量的模值与增益值的乘积;具体地,误差向量d1、d2、d3分别为:
d1=(x1-x1',y1-y1',z1-z1');
d2=(x2-x'2,y2-y'2,z2-z'2);
d3=(x3-x'3,y3-y'3,z3-z'3);
误差向量d1、d2、d3对应的模值分别为:
其中,(x'1,y'1,z'1)为第一导航信号的当前值,(x1,y1,z1)为第一导航数据中对应的目标值;(x'2,y'2,z'2)为第二导航信号的当前值,(x2,y2,z2)为第二导航数据中对应的目标值;(x'3,y'3,z'3)为第三导航信号的当前值,(x3,y3,z3)为第三导航数据中对应的目标值;
若第一增益值、第二增益值、第三增益值分别为k1、k2、k3,则其对应的第一误差、第二误差、第三误差分别为:
ε1=k1δ1;
ε2=k2δ2;
ε3=k3δ3;
需要说明的是,本实施例中,所述第一增益值与所述第一导航模块的测量精度成反比;所述第二增益值与所述第二模块的测量精度成反比;所述第二增益值与所述第三模块的测量精度成反比;即测量精度越高,其对应的增益值越小。
在具体实施时,上述第一导航模块可以为RTK-GPS导航模块,其对应的第一导航信号为RTK-GPS信号;第二导航模块可以为航位推算导航模块,包括电子罗盘与编码器,其对应的第二导航信号为航位推算信号;第三导航模块可以为视觉导航模块,其对应的第三导航信号为车道保持信号。
本发明提出的多模态导航方法及移动机器人解决了用于安保巡逻的移动机器人在室外导航容易受路况的限制问题,主要包括以下两个方面:
(1)在路面被高楼或者大型树木遮挡的情况,能够自主选择最优导航方式,实现自主导航。
(2)针对上述自主导航方式,在GPS信号漂移,以及相关传感器信号存在误差的情况下,最优导航方案能够具备鲁棒性。
本发明针对巡逻机器人的实际运行环境,组合三种导航方法,结合三者之间的优点,自主切换导航方式,实现安保巡逻机器人的室外导航方式顺利进行。
相对于传统的导航组合方式,本发明首先获取三种导航方式的数据,根据传感器本身的精度问题,制定数据增益,并根据最终的误差,选择合适的导航方式。传统的方式主要判断传感器数据的有无来选择组合导航方式,这种方式无法解决RTK-GPS数据漂移,路面技术引起视觉误差较大时的情况。本发明提出的方法充分的融合了多种导航模式获得数据的可信度,利用误差最小可信度最大的原理实现对系统最终导航数据的选择。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。