本申请涉及传感器融合定位技术领域,尤其涉及一种在nlos场景下uwb与激光融合的机器人定位方法及装置。
背景技术:
定位技术在机器人技术的应用中起着关键的作用。在现有的室内定位系统中,超宽带(uwb)技术以其精度高、延时分辨率好、功耗低、复杂室内环境下的鲁棒性高成为目前最具有发展前景的室内定位技术之一,uwb技术是一种基于信号的定位方式,类比于gnss的定位方式,在视距(lineofsight,los)环境的情况下可以提供可靠的绝对定位,但也会受到室内环境复杂性的制约,在非视距(nonlineofsight,nlos)环境下以及多路径效应会使得定位精度下降。
因此解决nlos环境下的定位精度问题是uwb定位能否大规模应用的关键。目前的算法多是采用根据uwb信号强弱进行判断,通过算法补偿多路径效应所引起的误差,但这样会导致计算量增大,同时精度上也不能满足室内服务机器人的需求。这给机器人在室内应用上带来了困难,需要一种计算简单,精度高的室内定位算法。
技术实现要素:
本申请实施例的目的是提供一种在nlos场景下uwb与激光融合的机器人定位方法及装置,以解决相关技术中存在的在nlos条件下定位不可靠的问题。与传统方法相比此定位方法具有更高的时效性及应用普适性,与uwb和激光的硬件类型无关。
根据本申请实施例的第一方面,提供一种在nlos场景下uwb与激光融合的机器人定位方法,包括:
对场景进行建图,获得激光地图,所述激光地图为灰度图;
在所述激光地图上标注出uwb基站的位置;
通过uwb定位标签向各个uwb基站间广播带有自身时间戳的时间数据包;
接收uwb定位数据,所述uwb定位数据包含uwb基站与uwb定位标签的距离和时间信息,所述时间信息为所述的时间数据包;
根据上一时刻定位结果、所述激光地图和所述uwb基站的位置,计算所述uwb定位标签和所述uwb基站之间是否存在遮挡,并计算每个uwb基站的遮挡权重;
以所述遮挡权重为依据,提取uwb基站的定位数据,计算机器人在地图中的uwb定位信息;
根据所述uwb定位信息、里程计与当前激光定位结果进行ekf滤波融合,得到机器人当前定位结果。
进一步的,所述激光地图中的每一个点都有自己的灰度值valueg,建图规则为有障碍物的像素点valueg=1,无障碍物的像素点valueg=0。
进一步的,根据实际情况,对建图不准确的地方进行修改。包括:
添加激光扫描不到的墙体障碍物位置,或减去低于标签和基站高度的低矮障碍物。
进一步的,如果没有上一时刻定位结果,则需要进行初定位。所述初定位的方法为:
采用uwb定位结果作为初始位置粗定位,之后走一段距离进行激光地图匹配得到精确的初始位姿。
进一步的,计算所述uwb定位标签和所述uwb基站之间是否存在遮挡,包括以下子步骤:
步骤(1),场景中分布着多个uwb定位基站
步骤(2)根据
其中,上一时刻uwb标签的估计位置与机器人估计位置相同,记为
步骤(3)选取
步骤(4)如果s大于遮挡的阈值则认为该基站不被遮挡,否则认为不被遮挡。
根据本申请实施例的第二方面,提供一种在nlos场景下uwb与激光融合的机器人定位装置,包括:
建图模块,用于对场景进行建图,获得激光地图,所述激光地图为灰度图;
标注模块,用于在所述激光地图上标注出uwb基站的位置;
广播模块,用于通过uwb定位标签向各个uwb基站间广播带有自身时间戳的时间数据包;
接收模块,用于接收uwb定位数据,所述uwb定位数据包含uwb基站与uwb定位标签的距离和时间信息,所述时间信息为所述的时间数据包;
第一计算模块,用于根据上一时刻定位结果、所述激光地图和所述uwb基站的位置,计算所述uwb定位标签和所述uwb基站之间是否存在遮挡,并计算每个uwb基站的遮挡权重;
提取计算模块,用于以所述遮挡权重为依据,提取uwb基站的定位数据,计算机器人在地图中的uwb定位信息;
融合模块,用于根据所述uwb定位信息、里程计与当前激光定位结果进行ekf滤波融合,得到机器人当前定位结果。
根据本申请实施例的第三方面,提供一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的一种在nlos场景下uwb与激光融合的机器人定位方法。
本申请的实施例提供的技术方案可以包括以下有益效果:
本发明根据地图和基站位置等先验信息,通过上一时刻定位结果,选择出得到没有遮挡的基站数据进行定位计算,之后与激光进行ekf数据融合定位。解决了在复杂室内环境下的uwb定位系统中,因nlos导致uwb定位不准确的问题。本发明的创新点在于,利用了激光地图的先验信息作为uwb定位的约束,提高了在nlos场景下的机器人定位精度,减少了计算复杂度。本发明适用于在有较多遮挡情形的复杂室内场景工作的服务机器人。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本发明实施例提供的一种在nlos场景下uwb与激光融合的机器人定位方法的流程框图;
图2是本发明实施例提供的一种在nlos场景下uwb与激光融合的机器人定位方法的场景示意图;
图3是本发明实施例提供一种在nlos场景下uwb与激光融合的机器人定位方法的装置的框图。
本发明的场景示意图中。附图标记:1-uwb定位基站,2-机器人,3-uwb定位标签,4基站与标签之间有障碍,5基站与标签之间无障碍
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
实施例1:
图1是本发明实施例提供的一种在nlos场景下uwb与激光融合的机器人定位方法的流程框图;图2是本发明实施例提供的一种在nlos场景下uwb与激光融合的机器人定位方法的流程图;该方法包括以下步骤:
步骤s101,对场景进行建图,获得激光地图,所述激光地图为灰度图;
具体地,所述激光地图中的每一个点都有自己的灰度值valueg,建图规则为有障碍物的像素点valueg=1,无障碍物的像素点valueg=0。根据实际情况,对建图不准确的地方进行修改。添加激光扫描不到的墙体障碍物位置,或减去不会遮挡标签与uwb基站的低矮障碍物。
步骤s102,在所述激光地图上标注出uwb基站的位置;
具体地,在本实施例中采用激光测距仪精准得到每个uwb基站在测量坐标系中的位置,再测量测量坐标系的原点与激光地图的原点之间位置与角度的偏差,通过二维坐标转换,即可获得激光地图中uwb基站的位置。
步骤s103,通过uwb定位标签向各个uwb基站间广播带有自身时间戳的时间数据包;
具体地,本实施例中uwb定位标签安装在机器人头部外壳外,减少外壳遮挡。在使用前需要确保uwb定位标签与各个uwb基站之间时间为同步。
步骤s104,接收uwb定位数据,所述uwb定位数据包含uwb基站与uwb定位标签的距离和时间信息,所述时间信息为所述的时间数据包;
具体地,本实施例中采用到达时间差技术,附近的所有基站都会收到标签的无线信号,但不会返回任何无线信号。由于基站与标签的距离间隔不同,因此消息在不同的时刻到达每个基站。这些时间差乘以空间中恒定的光速得到标签和基站之间的距离差,这样就可以形成多点定位计算的基础,从而确定标签的相对坐标,即uwb基站与uwb定位标签的距离。
步骤s105,根据上一时刻定位结果、所述激光地图和所述uwb基站的位置,计算所述uwb定位标签和所述uwb基站之间是否存在遮挡,并计算每个uwb基站的遮挡权重;
具体地,计算所述uwb定位标签和所述uwb基站之间是否存在遮挡,包括以下子步骤:
步骤(1),场景中分布着多个uwb定位基站
步骤(2)根据
其中,上一时刻uwb标签的估计位置与机器人估计位置相同,记为
步骤(3)选取
步骤(4)如果s大于遮挡的阈值则认为该基站不被遮挡,否则认为不被遮挡。
如果没有上一时刻定位结果,则需要进行初定位。采用uwb定位结果作为初始位置粗定位,之后走一段距离进行激光地图匹配得到精确的初始位姿。
步骤s106,以所述遮挡权重为依据,提取uwb基站的定位数据,计算机器人在地图中的uwb定位信息;
具体地,提取遮挡权重最小的三个uwb基站,作为定位依据。得到各个基站的距离差之后,可以画双曲线,交点就是机器人位置的位置。本实施例中uwb基站的位置信息为其在激光地图中的位置,所以得到的uwb定位信息为机器人在的激光地图坐标系下的定位结果。
步骤s107,根据所述uwb定位信息、里程计与当前激光定位结果进行ekf滤波融合,得到机器人当前定位结果。
具体地,本实施例中里程计为两轮差动轮编码里程计,用以获取机器人在里程计坐标系中的位置和机器人坐标系下机器人的速度。激光定位采取自适应蒙特卡洛定位算法。uwb定位信息获取到的为地图坐标系下的定位结果。采用差动轮运动模型,以里程计速度信息推算下一时刻的位置,以激光定位信息和uwb定位信息作为观测信息,做ekf滤波融合。
实施例2:
参考图3,本实施例还提供一种在nlos场景下uwb与激光融合的机器人定位装置,该装置为实施例1提供的一种在nlos场景下uwb与激光融合的机器人定位方法的虚拟装置,具备执行该方法相应的功能模块和有益效果,该装置包括:
建图模块91,用于对场景进行建图,获得激光地图,所述激光地图为灰度图;
标注模块92,用于在所述激光地图上标注出uwb基站的位置;
广播模块93,用于通过uwb定位标签向各个uwb基站间广播带有自身时间戳的时间数据包;
接收模块94,用于接收uwb定位数据,所述uwb定位数据包含uwb基站与uwb定位标签的距离和时间信息,所述时间信息为所述的时间数据包;
第一计算模块95,用于根据上一时刻定位结果、所述激光地图和所述uwb基站的位置,计算所述uwb定位标签和所述uwb基站之间是否存在遮挡,并计算每个uwb基站的遮挡权重;
提取计算模块,用于以所述遮挡权重为依据,提取uwb基站的定位数据,计算机器人在地图中的uwb定位信息;
融合模块96,用于根据所述uwb定位信息、里程计与当前激光定位结果进行ekf滤波融合,得到机器人当前定位结果。
实施例3:
本发明实施例还提供一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的一种在nlos场景下uwb与激光融合的机器人定位方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
1.一种在nlos场景下uwb与激光融合的机器人定位方法,其特征在于,应用于机器人,包括:
对场景进行建图,获得激光地图,所述激光地图为灰度图;
在所述激光地图上标注出uwb基站的位置;
通过uwb定位标签向各个uwb基站间广播带有自身时间戳的时间数据包;
接收uwb定位数据,所述uwb定位数据包含uwb基站与uwb定位标签的距离和时间信息,所述时间信息为所述的时间数据包;
根据上一时刻定位结果、所述激光地图和所述uwb基站的位置,计算所述uwb定位标签和所述uwb基站之间是否存在遮挡,并计算每个uwb基站的遮挡权重;
以所述遮挡权重为依据,提取uwb基站的定位数据,计算机器人在地图中的uwb定位信息;
根据所述uwb定位信息、里程计与当前激光定位结果进行ekf滤波融合,得到机器人当前定位结果。
2.根据权利要求1所述的一种在nlos场景下uwb与激光融合的机器人定位方法,其特征在于,所述激光地图中的每一个点都有自己的灰度值valueg,建图规则为有障碍物的像素点valueg=1,无障碍物的像素点valueg=0。
3.根据权利要求1所述的一种在nlos场景下uwb与激光融合的机器人定位方法,其特征在于,还包括:
根据实际情况,对建图不准确的地方进行修改。
4.根据权利要求3所述的一种在nlos场景下uwb与激光融合的机器人定位方法,其特征在于,所述对建图不准确的地方进行修改包括:
添加激光扫描不到的墙体障碍物位置,或减去不会遮挡标签与uwb基站的低矮障碍物。
5.根据权利要求1所述的一种在nlos场景下uwb与激光融合的机器人定位方法,其特征在于,还包括:
如果没有上一时刻定位结果,则需要进行初定位。
6.根据权利要求5所述的一种在nlos场景下uwb与激光融合的机器人定位方法,其特征在于,所述初定位的方法为:
采用uwb定位结果作为初始位置粗定位,之后走一段距离进行激光地图匹配得到精确的初始位姿。
7.根据权利要求1所述的融合定位方法,其特征在于,计算所述uwb定位标签和所述uwb基站之间是否存在遮挡,包括以下子步骤:
场景中分布着多个uwb定位基站
根据
其中,上一时刻uwb标签的估计位置与机器人估计位置相同,记为
选取
如果s大于遮挡的阈值则认为该基站不被遮挡,否则认为不被遮挡。
8.一种在nlos场景下uwb与激光融合的机器人定位方法,其特征在于,应用于机器人,包括:
建图模块,用于对场景进行建图,获得激光地图,所述激光地图为灰度图;
标注模块,用于在所述激光地图上标注出uwb基站的位置;
广播模块,用于通过uwb定位标签向各个uwb基站间广播带有自身时间戳的时间数据包;
接收模块,用于接收uwb定位数据,所述uwb定位数据包含uwb基站与uwb定位标签的距离和时间信息,所述时间信息为所述的时间数据包;
第一计算模块,用于根据上一时刻定位结果、所述激光地图和所述uwb基站的位置,计算所述uwb定位标签和所述uwb基站之间是否存在遮挡,并计算每个uwb基站的遮挡权重;
提取计算模块,用于以所述遮挡权重为依据,提取uwb基站的定位数据,计算机器人在地图中的uwb定位信息;
融合模块,用于根据所述uwb定位信息、里程计与当前激光定位结果进行ekf滤波融合,得到机器人当前定位结果。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-7中任一项所述方法的步骤。
技术总结