CN109059922B - 移动机器人定位方法、装置和系统 - Google Patents
移动机器人定位方法、装置和系统 Download PDFInfo
- Publication number
- CN109059922B CN109059922B CN201810712487.4A CN201810712487A CN109059922B CN 109059922 B CN109059922 B CN 109059922B CN 201810712487 A CN201810712487 A CN 201810712487A CN 109059922 B CN109059922 B CN 109059922B
- Authority
- CN
- China
- Prior art keywords
- positioning
- dimensional code
- coordinate system
- robot
- mobile robot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本发明提供了一种移动机器人定位方法、装置和系统,涉及机器人定位技术领域。本发明实施例提供的移动机器人定位方法、装置和系统,在移动机器人活动的场地中布设定位标识,该定位标识包括具有方向性的一维码,移动机器人通过捕获定位标识,确定定位标识在机器人坐标系中的位置坐标和偏离角度,并解析一维码,获取定位标识在全局坐标系中的位置坐标和一维码的方向,进而确定移动机器人在场地中的位置和姿态。由于一维码具有制作简单,识别容易,抗畸变能力强,便于读码器对准的优点,因此,与现有技术中解析二维码相比,本发明实施例的方案可以降低解码复杂度,提高解码速度和解码成功率,降低制作成本。
Description
技术领域
本发明涉及移动机器人定位技术领域,尤其是涉及一种移动机器人定位方法、装置和系统。
背景技术
移动机器人在场地中按照规划的路径行进,需要实现在行进过程中的定位。定位是确定移动机器人在工作环境中相对于全局坐标的位置及其姿态。
现有的移动机器人定位系统通常采用如图1所示的二维码表示一个全局坐标系中的位置坐标。场地中固定间隔的网格节点上贴着二维码标签,移动机器人从二维码标签上方经过时,利用其携带的摄像头扫描二维码并解码获得二维码表示的信息,即可进行定位。但是,二维码的制作精度要求高,抗畸变能力差,且译码算法复杂,解码成功率较低。为了提高解码成功率,目前采用多个二维码并列的方式,但这进一步增加了解码的复杂度和成本。
发明内容
有鉴于此,本发明的目的在于提供一种移动机器人定位方法、装置和系统,降低了解码难度,提高了解码成功率,降低了制作成本。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种移动机器人定位方法,所述移动机器人上安装有读码器;所述方法包括:
读码器判断视场范围内是否存在定位标识;
如果是,确定所述定位标识在机器人坐标系中的位置坐标和偏离角度;所述定位标识布设于所述移动机器人活动的场地中,包括具有方向性的一维码;
解析所述一维码,获取所述定位标识在全局坐标系中的位置坐标和所述一维码的方向;
根据所述定位标识在机器人坐标系中的位置坐标和偏离角度,以及所述定位标识在全局坐标系中的位置坐标,结合所述一维码的方向,确定所述移动机器人在所述场地中的位置和姿态。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述定位标识还包括所述一维码周围的位置标定图形;所述确定所述定位标识在机器人坐标系中的位置坐标和偏离角度的步骤,包括:
如果所述读码器的视场范围内存在所述一维码,根据所述一维码确定所述位置标定图形;
根据所述位置标定图形中的位置标定点在所述机器人坐标系中的坐标,确定所述定位标识在机器人坐标系中的位置坐标和偏离角度。
结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述位置标定图形为正方形,所述正方形的中心点为所述定位标识的中心点;根据所述位置标定图形中的位置标定点在所述机器人坐标系中的坐标,确定所述定位标识在机器人坐标系中的位置坐标的和偏离角度步骤,包括:
选取所述正方形的四个角点中的至少两个角点作为位置标定点,获取所述位置标定点在所述机器人坐标系中的坐标,结合所述正方形的边长,确定所述正方形的中心点在所述机器人坐标系中的坐标;
将所述正方形的中心点在所述机器人坐标系中的坐标,作为所述定位标识在所述机器人坐标系中的位置坐标;
根据选取的所述位置标定点的坐标,确定所述定位标识在机器人坐标系中的偏离角度。
结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述解析所述一维码,获取所述定位标识在全局坐标系中的位置坐标和所述一维码的方向的步骤,包括:
沿所述位置标定图形的第一中轴线提取第一图像;
判断所述第一图像中是否存在颜色变换特征;
如果是,解析所述第一图像,得到所述一维码中存储的所述定位标识的编号;根据预先存储的编号与位置坐标之间的对应关系,获取所述定位标识在全局坐标系中的位置坐标;
如果否,沿与所述第一中轴线垂直的第二中轴线提取第二图像;解析所述第二图像,得到所述一维码中存储的所述定位标识的编号;根据预先存储的编号与位置坐标之间的对应关系,获取所述定位标识在全局坐标系中的位置坐标;
解码得到所述一维码的方向。
结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述方法还包括:
判断所述第一图像中是存在颜色变换特征时,如果解析所述第一图像不成功,则向所述第一中轴线的任一侧偏移设定距离后,沿所述第一中轴线的平行线再次提取图像,并解析提取的所述图像;
或者,判断所述第二图像中是存在颜色变换特征时,如果解析所述第二图像不成功,则向所述第二中轴线的任一侧偏移设定距离后,沿所述第二中轴线的平行线再次提取图像,并解析提取的所述图像。
结合第一方面的第四种可能的实施方式,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述方法还包括:
解析所述一维码成功之后,将解码信息发送至机器人管理服务器;所述解码信息至少包括定位标识的编号和成功解码位置,所述成功解码位置为成功解析所述一维码时,提取图像的位置。
结合第一方面的第五种可能的实施方式,本发明实施例提供了第一方面的第六种可能的实施方式,其中,所述解析所述一维码,获取所述定位标识在全局坐标系中的位置坐标的步骤,还包括:
根据设定的规划路径,预测位于读码器的视场范围内的定位标识的编号和/或定位标识中一维码相对机器人的方向;
根据所述编号,查找是否存储有所述定位标识对应的解码信息;所述解码信息为移动机器人接收到的机器人管理服务器发送的解码信息;
如果是,根据所述解码信息中的成功解码位置,解析所述一维码,获取所述定位标识在全局坐标系中的位置坐标。
第二方面,本发明实施例还提供一种移动机器人定位装置,应用于所述移动机器人上的读码器,所述装置包括:
扫描模块,用于如果读码器判断视场范围内存在定位标识,确定所述定位标识在机器人坐标系中的位置坐标和偏离角度;所述定位标识布设于所述移动机器人活动的场地中,包括具有方向性的一维码;
解码模块,用于解析所述一维码,获取所述定位标识在全局坐标系中的位置坐标和所述一维码的方向;
位姿确定模块,用于根据所述定位标识在机器人坐标系中的位置坐标和偏离角度,以及所述定位标识在全局坐标系中的位置坐标,结合所述一维码的方向,确定所述移动机器人在所述场地中的位置和姿态。
第三方面,本发明实施例还提供一种移动机器人定位系统,包括第三方面所述的移动机器人和布设在所述移动机器人活动的场地中的多个定位标识;
所述定位标识包括具有方向性的一维码;所述移动机器人执行第一方面中任一项所述的移动机器人定位方法进行定位。
结合第三方面,本发明实施例提供了第三方面的第一种可能的实施方式,其中,所述定位标识还包括位置标定图形。
结合第三方面的第一种可能的实施方式,本发明实施例提供了第三方面的第二种可能的实施方式,其中,所述位置标定图形为正方形。
结合第三方面的第一种可能的实施方式,本发明实施例提供了第三方面的第三种可能的实施方式,其中,所述位置标定图形为连线组成正方形的四个定位图案。
结合第三方面的第二种可能的实施方式,本发明实施例提供了第三方面的第四种可能的实施方式,其中,所述正方形的每条边的中点位置均设置有中点标记。
结合第三方面的第一种可能的实施方式,本发明实施例提供了第三方面的第五种可能的实施方式,其中,所述位置标定图形内并排设置有多个所述一维码。
结合第三方面的第一种可能的实施方式,本发明实施例提供了第三方面的第六种可能的实施方式,其中,所述位置标定图形内的空白区域印刷有与所述定位标识一致的编号。
结合第三方面,本发明实施例提供了第三方面的第七种可能的实施方式,其中,所述一维码为条形码;所述条形码包括依次排列的起始符、数据符和终止符;所述数据符用于表示所述定位标识的编号。
结合第三方面,本发明实施例提供了第三方面的第七种可能的实施方式,其中,所述系统还包括与所述移动机器人连接的机器人管理服务器;所述机器人管理服务器用于接收所述移动机器人发送的解码信息,并将所述解码信息下发给所述场地内的其它移动机器人;所述解码信息至少包括定位标识的编号和成功解码位置,所述成功解码位置为成功解析所述一维码时,提取图像的位置。
本发明实施例带来了以下有益效果:
本发明实施例提供的移动机器人定位方法、装置和系统,在移动机器人活动的场地中布设定位标识,该定位标识包括具有方向性的一维码,移动机器人通过捕获定位标识,确定定位标识在机器人坐标系中的位置坐标和偏离角度,并解析一维码,获取定位标识在全局坐标系中的位置坐标和一维码的方向,从而根据定位标识分别在机器人坐标系中的位置坐标和偏离角度,以及定位标识在全局坐标系中的位置坐标,结合一维码的方向,确定移动机器人在场地中的位置和姿态。由于一维码具有制作简单,识别容易,抗畸变能力强,便于读码器对准的优点,因此,与现有技术中解析二维码相比,本发明实施例的方案可以降低解码复杂度,提高解码速度和解码成功率,降低制作成本。
本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了现有技术中所采用的二维码的示意图;
图2示出了本发明实施例所提供的一种移动机器人的结构示意图;
图3示出了本发明实施例所提供的一种移动机器人定位方法的流程图;
图4示出了本发明实施例所提供的一种解析一维码过程的流程图;
图5示出了本发明实施例所提供的一种移动机器人定位方法的交互图;
图6示出了本发明实施例所提供的一种定位标识的示意图;
图7示出了本发明实施例所提供的另一种定位标识的示意图;
图8示出了本发明实施例所提供的一种条形码的结构示意图;
图9示出了本发明实施例所提供的一种移动机器人定位装置的结构框图;
图10示出了本发明实施例所提供的一种移动机器人定位系统的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
针对现有的移动机器人定位系统通过二维码进行定位,存在制作精度要求高,抗畸变能力差,译码算法复杂,解码成功率较低等缺陷,本发明实施例提供了一种移动机器人定位方法、装置和系统,以下对本发明实施例进行详细介绍。
实施例一:
首先,参照图2来描述用于实现本发明实施例的移动机器人定位方法的示例移动机器人100。该移动机器人100可以是但不限于自动化流水线系统中使用的AGV(AutomatedGuided Vehicle,自动引导运输车)。
如图2所示,移动机器人100包括一个或多个处理器102、一个或多个存储装置104、驱动装置106、通讯装置108以及读码器110,这些组件通过总线系统112和/或其它形式的连接机构(未示出)互连。应当注意,图2所示的移动机器人100的组件和结构只是示例性的,而非限制性的,根据需要,所述移动机器人也可以具有其他组件和结构。
所述处理器102可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制所述移动机器人100中的其它组件以执行期望的功能。
所述存储装置104可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器102可以运行所述程序指令,以实现下文所述的本发明实施例中(由处理器实现)的客户端功能以及/或者其它期望的功能。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如所述应用程序使用和/或产生的各种数据等。
所述驱动装置106可以包括电机驱动器、电机及制动机构等,驱动装置106在处理器102的控制下,带动移动机器人行进或停止行进。
所述通讯装置108可以是无线传输模块,用于与机器人管理服务器连接。通讯装置108也可以是有线连接接口,用于连接控制主机,上传数据或下载应用程序、规划路径等。
所述读码器110具有摄像头和图像处理功能,用于捕获含有一维码的定位标识,解码捕获的定位标识,实现移动机器人的定位,把定位信息反馈给处理器102。
实施例二:
本实施例提供了一种移动机器人定位方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。以下对本实施例进行详细介绍。
图3示出了本发明实施例所提供的一种移动机器人定位方法的流程图,如图3所示,该方法包括如下步骤:
步骤S302,如果读码器判断视场范围内存在定位标识,确定定位标识在机器人坐标系中的位置坐标和偏离角度。
其中,定位标识布设于移动机器人活动的场地中,可以包括位置标定图形和具有方向性的一维码。位置标定图形可以是方形、菱形、圆形或椭圆形等,一维码可以位于位置标定图形的内部。
移动机器人在场地中移动,场地中布设有多个定位标识,例如,场地内按照设定的边长划分为多个网格,每个网格的中心或其它指定位置粘贴定位标识。定位标识中的一维码可以存储该定位标识的编号,进而标识该网格在场地中的位置。定位标识之间的间隔可以保证移动机器人的读码器在同一时刻最多捕获一个定位标识。
移动机器人在场地内移动时,通过读码器捕获定位标识。具体地,由于一维码的特征较为明显,因此,可以先查找读码器的视场范围内是否存在一维码,如果存在一维码,即表示捕获到定位标识。根据一维码,可以查找到位于一维码周围的位置标定图形。读码器每间隔一定时长(一般小于50ms)检测视场范围内是否存在定位标识,当定位标识进入读码器的视场范围内时,可以根据位置标定图形确定定位标识在机器人坐标系中的位置坐标和偏离角度。
示例性地,位置标定图形可以为正方形,正方形的中心点为定位标识的中心点。选取正方形的四个角点中的至少两个角点作为位置标定点,获取位置标定点在机器人坐标系中的坐标,结合正方形的边长,可以确定正方形的中心点在机器人坐标系中的坐标。其中,正方形的边长是制作一维码时设定的,可以预存在移动机器人的存储装置中。由于正方形的中心点与定位标识的中心点重合,因此,可以将正方形的中心点在机器人坐标系中的坐标,作为定位标识在机器人坐标系中的位置坐标。
例如,机器人坐标系可以以读码器的视场中心为原点,指定x轴正方向和y轴正方向。在机器人坐标系中,获取正方形的两个角点的坐标分别为(P1.x,P1.y)和(P2.x,P2.y)。根据两个角点的坐标计算两个角点之间的距离。如果两个角点之间的距离大于正方形的边长,说明两个角点位于正方形的同一对角线上。则正方形的中心点的坐标(Po.x,Po.y)为:Po.x=(P1.x+P2.x)/2,Po.y=(P1.y+P2.y)/2。如果两个角点之间的距离等于正方形的边长,则根据两个角点的坐标计算两个角点的连线与机器人坐标系的坐标轴之间的夹角,结合任意角点的坐标、上述夹角及正方形的边长,确定正方形的中心点的坐标(Po.x,Po.y)。
在机器人坐标系中,获取正方形的三个角点的坐标分别为(P1.x,P1.y)、(P2.x,P2.y)和(P3.x,P3.y)。在三个角点中,确定两个位于正方形的同一对角线上的角点,根据上述方法计算正方形的中心点的坐标(Po.x,Po.y)。同理,如果获取正方形的四个角点的坐标,也可以根据上述方法计算正方形的中心点的坐标(Po.x,Po.y),在此不再赘述。
根据选取的上述至少两个角点的坐标,可以确定定位标识在机器人坐标系中的偏离角度。
为了更便于对正方形的四个角点进行定位,可以在正方形的四个角点处设置有定位图案,如图7所示,定位图案可以为“回”字。
步骤S304,解析一维码,获取定位标识在全局坐标系中的位置坐标和一维码的方向。
一维码用于存储定位标识的编号,在一个场地中,每个定位标识具有一个唯一的编号。如果每平方米内设置一个定位标识,对于一个数万平米的巨型仓库,所需的编号不超过10万个,最多使用5个十进制数字即可进行区分,因此,其需要存储的信息量很小,使用一维码完全可以满足需求。
可选地,一维码可以采用条形码。条形码是由一组规则排列的条、空以及对应的字符组成的标记,“条”指对光线反射率较低的部分,“空”指对光线反射率较高的部分,这些条和空组成的数据表达一定的信息,并能够用读码器识读,转换成与计算机兼容的二进制和十进制信息。码制指条码条和空的排列规则,本发明实施例中条形码的码制可以是但不限于EAN码、39码、交叉25码、UPC码、128码、93码,及Codabar(库德巴码)等。
下面以交叉25码为例,说明本发明实施例的条形码的编码规则。交叉二五条码是一种密度较高的条形码,具有高密度,连续、非定长,条空都表示信息等特点。由于条与空均表示信息,没有条码字符间隔,所以也称为连续型条形码,可表示0-9的不同数字字符,字符的二进制表示见表1。如图8所示,该条形码由左侧空白区域、起始符、数据符、终止符、右侧空白区域五部分组成。每部分又由“条”“空”这些单元组成。“条”“空”单元有窄宽之分,其中宽单元表示二进制中的“1”;窄单元表示二进制中的“0”。宽单元与窄单元的宽窄比N可以在1.8-3.4之间取值。
表1
字符 | 二进制表示 | 字符 | 二进制表示 |
0 | 00110 | 5 | 10100 |
1 | 10001 | 6 | 01100 |
2 | 01001 | 7 | 00011 |
3 | 11000 | 8 | 10010 |
4 | 00101 | 9 | 01010 |
根据交叉25码的编码规范,在一可选的实施例中,所采用的条形码中存储的数字内容为偶数位,包括最左侧的补位字符“0”、中间4位字符及最后一位校验字符。中间4位字符为定位标识的编号。其中,校验字符的计算方法可以采用Mod 10算法,具体如下:
1)从右侧的数字开始(不包括校验字符)至左侧,将所有数字间隔相加;
2)将步骤1)的结果乘以3;
3)将剩余的数字值相加;
4)将步骤2)和步骤3)的结果相加;
5)与步骤4)结果相加成为10的倍数的最小数值,这个最小数值就是校验字符。
例如,如果定位标识的编号为1937,根据上述算法,可以计算得到校验字符为8,对应的条形码中存储的数字内容为019378。
如图6至图8所示,条形维码在垂直方向排布的任何一条水平线均包含所存储的数字内容,具有冗余功能,抗污和抗破损能力强。如图7所示,还可以在位置定位图形内并排设置两个条形码,进一步提高抗破损能力。
以一维码为条形码为例,结合图4对步骤S304进行详细说明,具体包括:
步骤S3042,沿位置标定图形的第一中轴线提取第一图像。
可选的,位置标定图形为正方形,在正方形的各边长的中点位置均设置有中点标记,中点标记可以为“+”号,连接正方形中任两个平行边长中点位置的“+”号,作为第一中轴线,沿第一中轴线提取第一图像。
步骤S3044,判断第一图像中是否存在颜色变换特征。如果是,执行步骤S3046;如果否,执行步骤S3048。
其中,颜色变换特征可以指密集的黑白变换特征。例如,如果条形码由黑色的条和白色的空组成,可以判断第一图像中是否存在密集的黑白变换特征。如果存在,说明第一图像中包含条形码信息,则执行步骤S3046;如果不存在密集的黑白变换特征,说明提取图像的方向不正确,此时执行步骤S3048。
步骤S3046,解析第一图像,得到一维码中存储的定位标识的编号;根据预先存储的编号与位置坐标之间的对应关系,获取定位标识在全局坐标系中的位置坐标。
以图6所示的定位标识为例,如果成功解析第一图像,得到一维码存储的数字内容019378,去掉补位字符和校验字符,得到定位标识的编号1937。移动机器人的存储装置中预存了定位标识的编号与定位标识在全局坐标系中的位置坐标之间的对应关系,该对应关系可以以表格的形式进行存储。其中,全局坐标系是根据移动机器人活动的场地建立的坐标系。通过查找,可以确定编号1937对应的位置坐标为(x1,y1)。
如果解析第一图像不成功,则向第一中轴线的任一侧偏移设定距离,比如:设定距离可以为1/5的边长,然后沿第一中轴线的平行线再次提取图像,并解析提取的图像。如果仍不能成功解析图像,则依照上述规则继续移动,换一个位置重新提取图像,直至能够成功解析图像为止。该过程可以避开一些条形码上的污损或破损,提高解码成功率。
步骤S3048,沿与第一中轴线垂直的第二中轴线提取第二图像;解析第二图像,得到一维码中存储的定位标识的编号;根据预先存储的编号与位置坐标之间的对应关系,获取定位标识在全局坐标系中的位置坐标。
如果第一中轴线对应的第一图像不存在密集的黑白变换特征,则沿与第一中轴线垂直的第二中轴线提取第二图像,并进行解析,进而获取定位标识在全局坐标系中的位置坐标。
同样,如果解析第二图像不成功,可向第二中轴线的任一侧偏移设定距离,然后沿第二中轴线的平行线再次提取图像,并解析提取的图像。
由于一维码本身具有方向性,解码过程同时,可以得到一维码的方向。
步骤S306,根据定位标识在机器人坐标系中的位置坐标和偏离角度,以及定位标识在全局坐标系中的位置坐标,结合所述一维码的方向,确定移动机器人在场地中的位置和姿态。
正方形没有明确的方向性,由于本发明实施例中所采用的一维码是具有方向性的,解码时同时得到一维码的方向,例如,在图8所示的条形码中,起始符包括两“条”两“空”,均为窄单元,终止符包括两“条”一“空”,其中一“条”为宽单元,其余为窄单元。起始符和终止符的形状不同,即可表示方向。根据读码器视场范围内的图像中一维码的倾斜方向,确定定位标识在机器人坐标系中的偏离角度(如一维码倾斜方向与机器人坐标系的x轴之间的夹角)。
根据一维码的方向和正方形至少两个角点的坐标计算得到机器人的准确方向。
可选的,根据路径规划,可以预先判断机器人即将经过的一维码的方向,结合正方形至少两个角点的坐标计算得到机器人的准确方向。
例如,在上述步骤S302中,确定该定位标识在机器人坐标系中的位置坐标为(Po.x,Po.y),已知定位标识在全局坐标系中的偏置角(可以是0°,优选的,系统中所有定位标识都是朝同一个方向的),根据定位标识在机器人坐标系中的偏离角度与一维码在全局坐标系中的偏置角之差,可以确定移动机器人相对于全局坐标系的偏离角度θ,在步骤S304中,确定该定位标识在全局坐标系中的位置坐标为(x1,y1)。则移动机器人在全局坐标系中的位置坐标(x,y)为:
将移动机器人在全局坐标系中的位置坐标作为移动机器人在场地中的位置,将移动机器人相对于全局坐标系的偏离角度作为移动机器人在场地中的姿态。
本发明实施例提供的移动机器人定位方法,在移动机器人活动的场地中布设有包括位置标定图像和一维码的定位标识,移动机器人通过一维码密集的黑白变换特征来捕获定位标识,确定定位标识在机器人坐标系中的位置坐标,并解析一维码,获取定位标识在全局坐标系中的位置坐标;根据一维码在机器人坐标系中的角度(0°),确定移动机器人相对于全局坐标系的偏离角度;从而根据定位标识分别在机器人坐标系和全局坐标系中的位置坐标,以及移动机器人在全局坐标系中的偏离角度,确定移动机器人在场地中的位置和姿态。由于一维码具有制作简单,识别容易,抗畸变能力强,便于读码器对准的优点,因此,与现有技术中解析二维码相比,本发明实施例的方案可以降低解码复杂度,提高解码速度和解码成功率,降低制作成本。
在一可选的实施例中,如图5所示,移动机器人解析一维码成功之后,可以将解码信息发送至机器人管理服务器。解码信息至少包括定位标识的编号和成功解码位置,成功解码位置为成功解析一维码时,提取图像的位置。机器人管理服务器接收到移动机器人发送的解码信息后,可以即时或定时将解码信息下发给场地内的其它移动机器人,使其它移动机器人在解锁对应的一维码时,可以减少尝试次数,更快地完成解码过程。
对应地,移动机器人可以根据设定的规划路径,预测位于读码器的视场范围内的定位标识的编号;根据编号,查找是否存储有定位标识对应的解码信息;解码信息为机器人管理服务器发送的解码信息。如果是,根据解码信息中的成功解码位置,解析一维码。如果否,根据上述步骤S304提供的方法,解析一维码,获取定位标识在全局坐标系中的位置坐标。
在移动机器人定位过程中,首先获得定位标识在机器人坐标中的位置坐标和偏离角度,再解析一维码,即使有个别一维码不能成功解析,位置坐标和偏离角度也是可以使用的,因为根据路径规划机器人知道预计即将要经过的定位标识的编号和方向是可以预知的,根据机器人预知的定位标识的编号和方向,依然可以得到移动机器人在场地中的位置和姿态。
实施例三:
对应于实施例二中所提供的移动机器人定位方法,本实施例提供了一种移动机器人定位装置,应用于所述移动机器人上的读码器。图9示出了本发明实施例所提供的一种移动机器人定位装置的结构示意图,如图9所示,该装置包括以下模块:
扫描模块91,用于如果读码器判断视场范围内存在定位标识,确定定位标识在机器人坐标系中的位置坐标和偏离角度;定位标识布设于移动机器人活动的场地中,包括具有方向性的一维码。
解码模块92,用于解析一维码,获取定位标识在全局坐标系中的位置坐标和一维码的方向。
位姿确定模块93,用于根据定位标识在机器人坐标系中的位置坐标和偏离角度,以及定位标识在全局坐标系中的位置坐标,结合一维码的方向,确定移动机器人在场地中的位置和姿态。
其中,扫描模块91,还可以用于如果所述读码器的视场范围内存在所述一维码,根据所述一维码确定所述位置标定图形;根据定位标识所包括的位置标定图形中的位置标定点在机器人坐标系中的坐标,确定定位标识在机器人坐标系中的位置坐标。位置标定图形为正方形,正方形的中心点与定位标识的中心点重合;选取正方形的四个角点中的至少两个角点作为位置标定点,获取位置标定点在机器人坐标系中的坐标,结合正方形的边长,确定正方形的中心点在机器人坐标系中的坐标;将正方形的中心点在机器人坐标系中的坐标,作为定位标识在机器人坐标系中的位置坐标。
解码模块92,还可以用于沿位置标定图形的第一中轴线提取第一图像;判断第一图像中是否存在颜色变换特征;如果是,解析第一图像,得到一维码中存储的定位标识的编号;根据预先存储的编号与位置坐标之间的对应关系,获取定位标识在全局坐标系中的位置坐标;如果否,沿与第一中轴线垂直的第二中轴线提取第二图像;解析第二图像,得到一维码中存储的定位标识的编号;根据预先存储的编号与位置坐标之间的对应关系,获取定位标识在全局坐标系中的位置坐标。
如果解析第一图像不成功,则向第一中轴线的任一侧偏移设定距离后,沿第一中轴线的平行线再次提取图像,并解析提取的图像;或者,如果解析第二图像不成功,则向第二中轴线的任一侧偏移设定距离后,沿第二中轴线的平行线再次提取图像,并解析提取的图像。
解码模块92,还可以用于根据设定的规划路径,预测位于读码器的视场范围内的定位标识的编号;根据编号,查找是否存储有定位标识对应的解码信息;解码信息为机器人管理服务器发送的解码信息;如果是,根据解码信息中的成功解码位置,解析一维码,获取定位标识在全局坐标系中的位置坐标。
本实施例所提供的装置,其实现原理及产生的技术效果和前述实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本发明实施例提供的移动机器人定位装置,在移动机器人活动的场地中布设有包括位置标定图像和一维码的定位标识,移动机器人通过捕获定位标识,确定定位标识在机器人坐标系中的位置坐标,并解析一维码,获取定位标识在全局坐标系中的位置坐标;根据一维码在机器人坐标系中的角度,确定移动机器人相对于全局坐标系的偏离角度;从而根据定位标识分别在机器人坐标系和全局坐标系中的位置坐标,以及移动机器人在全局坐标系中的偏离角度,确定移动机器人在场地中的位置和姿态。能够有效提高解码成功率,使移动机器人定位更精确,并简化了解码设备复杂度,降低成本。
实施例四:
本实施例还提供了一种移动机器人定位系统,如图10所示,该系统包括机器人管理服务器200,与机器人管理服务器通讯连接的多个移动机器人100和布设在移动机器人活动的场地中的多个定位标识。
定位标识包括具有方向性的一维码和位置标定图形,一维码位于位置标定图形之内。一维码为条形码;条形码包括依次排列的起始符、数据符和终止符;数据符用于表示定位标识的编号。
可选的,位置标定图形可以为正方形,也可以为其它形状。如果位置标定图形可以为正方形,便于根据正方形的中心点的坐标,确定定位标识的中心点的位置坐标。位置标定图形还可以为连线组成正方形的四个定位图案,比如:定位图案可以为“回”字。
正方形的每条边的中点位置均设置有中点标记,方便粘贴一维码时可以将一维码贴得比较端正。中点标记可以设置于正方形的外部。
位置标定图形内的空白区域印刷有与定位标识一致的编号,方便粘贴一维码时检查,同时还可以避免场地内重复粘贴同一定位标识。
可选的,位置标定图形内可以并排设置有多个一维码。多个一维码相同且处于同方向,多个一维码中只要任一个解码成功即可,可以提高解码成功率。
在同一移动机器人活动场地中,机器人管理服务器可以与多个移动机器人相连接,接收移动机器人发送的解码信息,并将解码信息下发给场地内的其它移动机器人。解码信息至少包括定位标识的编号和成功解码位置,成功解码位置为成功解析一维码时,提取图像的位置。
移动机器人主动将解码信息发送至机器人管理服务器,可以及时警告一维码上是否有污损或破损,严重时以便及时更换一维码。机器人管理服务器将解码信息下发给场地内的其他移动机器人,当保存有这些解码信息的移动机器人经过对应的一维码时,可以及时选取正确的解码位置尝试解码,提高解码速度,缩短解码用时。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
在本发明的描述中,需要说明的是,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
进一步,本实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述前述方法实施例所提供的方法的步骤。
本发明实施例所提供的一种移动机器人定位方法、装置及系统的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (17)
1.一种移动机器人定位方法,所述移动机器人上安装有读码器;其特征在于,所述方法包括:
读码器判断视场范围内是否存在定位标识;
如果是,确定所述定位标识在机器人坐标系中的位置坐标和偏离角度;所述定位标识布设于所述移动机器人活动的场地中,包括具有方向性的一维码;
解析所述一维码,获取所述定位标识在全局坐标系中的位置坐标和所述一维码的方向;
根据所述定位标识在机器人坐标系中的位置坐标和偏离角度,以及所述定位标识在全局坐标系中的位置坐标,结合所述一维码的方向,确定所述移动机器人在所述场地中的位置和姿态。
2.根据权利要求1所述的方法,其特征在于,所述定位标识还包括所述一维码周围的位置标定图形;所述确定所述定位标识在机器人坐标系中的位置坐标和偏离角度的步骤,包括:
如果所述读码器的视场范围内存在所述一维码,根据所述一维码确定所述位置标定图形;
根据所述位置标定图形中的位置标定点在所述机器人坐标系中的坐标,确定所述定位标识在机器人坐标系中的位置坐标和偏离角度。
3.根据权利要求2所述的方法,其特征在于,所述位置标定图形为正方形,所述正方形的中心点为所述定位标识的中心点;根据所述位置标定图形中的位置标定点在所述机器人坐标系中的坐标,确定所述定位标识在机器人坐标系中的位置坐标和偏离角度的步骤,包括:
选取所述正方形的四个角点中的至少两个角点作为位置标定点,获取所述位置标定点在所述机器人坐标系中的坐标,结合所述正方形的边长,确定所述正方形的中心点在所述机器人坐标系中的坐标;
将所述正方形的中心点在所述机器人坐标系中的坐标,作为所述定位标识在所述机器人坐标系中的位置坐标;
根据选取的所述位置标定点的坐标,确定所述定位标识在机器人坐标系中的偏离角度。
4.根据权利要求2所述的方法,其特征在于,所述解析所述一维码,获取所述定位标识在全局坐标系中的位置坐标和所述一维码的方向的步骤包括:沿所述位置标定图形的第一中轴线提取第一图像;
判断所述第一图像中是否存在颜色变换特征;
如果是,解析所述第一图像,得到所述一维码中存储的所述定位标识的编号;根据预先存储的编号与位置坐标之间的对应关系,获取所述定位标识在全局坐标系中的位置坐标;
如果否,沿与所述第一中轴线垂直的第二中轴线提取第二图像;解析所述第二图像,得到所述一维码中存储的所述定位标识的编号;根据预先存储的编号与位置坐标之间的对应关系,获取所述定位标识在全局坐标系中的位置坐标;
解码得到所述一维码的方向。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
判断所述第一图像中是存在颜色变换特征时,如果解析所述第一图像不成功,则向所述第一中轴线的任一侧偏移设定距离后,沿所述第一中轴线的平行线再次提取图像,并解析提取的所述图像;
或者,判断所述第二图像中是存在颜色变换特征时,如果解析所述第二图像不成功,则向所述第二中轴线的任一侧偏移设定距离后,沿所述第二中轴线的平行线再次提取图像,并解析提取的所述图像。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
解析所述一维码成功之后,将解码信息发送至机器人管理服务器;所述解码信息至少包括定位标识的编号和成功解码位置,所述成功解码位置为成功解析所述一维码时,提取图像的位置。
7.根据权利要求6所述的方法,其特征在于,所述解析所述一维码,获取所述定位标识在全局坐标系中的位置坐标的步骤,还包括:
根据设定的规划路径,预测位于读码器的视场范围内的定位标识的编号和/或定位标识中一维码相对机器人的方向;
根据所述编号,查找是否存储有所述定位标识对应的解码信息;所述解码信息为机器人管理服务器发送的解码信息;
如果是,根据所述解码信息中的成功解码位置,解析所述一维码,获取所述定位标识在全局坐标系中的位置坐标。
8.一种移动机器人定位装置,应用于所述移动机器人上的读码器,其特征在于,所述装置包括:
扫描模块,用于如果读码器判断视场范围内存在定位标识,确定所述定位标识在机器人坐标系中的位置坐标和偏离角度;所述定位标识布设于所述移动机器人活动的场地中,包括具有方向性的一维码;
解码模块,用于解析所述一维码,获取所述定位标识在全局坐标系中的位置坐标和所述一维码的方向;
位姿确定模块,用于根据所述定位标识在机器人坐标系中的位置坐标和偏离角度,以及所述定位标识在全局坐标系中的位置坐标,结合所述一维码的方向,确定所述移动机器人在所述场地中的位置和姿态。
9.一种移动机器人定位系统,其特征在于,包括移动机器人和布设在所述移动机器人活动的场地中的多个定位标识;
所述定位标识包括具有方向性的一维码;所述移动机器人执行权利要求1~7中任一项所述的移动机器人定位方法进行定位。
10.根据权利要求9所述的系统,其特征在于,所述定位标识还包括位置标定图形。
11.根据权利要求10所述的系统,其特征在于,所述位置标定图形为正方形。
12.根据权利要求10所述的系统,其特征在于,所述位置标定图形为连线组成正方形的四个定位图案。
13.根据权利要求11或12所述的系统,其特征在于,所述正方形的每条边的中点位置均设置有中点标记。
14.根据权利要求10所述的系统,其特征在于,所述位置标定图形内并排设置有多个所述一维码。
15.根据权利要求10所述的系统,其特征在于,所述位置标定图形内的空白区域印刷有与所述定位标识一致的编号。
16.根据权利要求9所述的系统,其特征在于,所述一维码为条形码;所述条形码包括依次排列的起始符、数据符和终止符;所述数据符用于表示所述定位标识的编号。
17.根据权利要求9所述的系统,其特征在于,所述系统还包括与所述移动机器人连接的机器人管理服务器;所述机器人管理服务器用于接收所述移动机器人发送的解码信息,并将所述解码信息下发给所述场地内的其它移动机器人;所述解码信息至少包括定位标识的编号和成功解码位置,所述成功解码位置为成功解析所述一维码时,提取图像的位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810712487.4A CN109059922B (zh) | 2018-06-29 | 2018-06-29 | 移动机器人定位方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810712487.4A CN109059922B (zh) | 2018-06-29 | 2018-06-29 | 移动机器人定位方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109059922A CN109059922A (zh) | 2018-12-21 |
CN109059922B true CN109059922B (zh) | 2020-10-16 |
Family
ID=64818817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810712487.4A Active CN109059922B (zh) | 2018-06-29 | 2018-06-29 | 移动机器人定位方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109059922B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109738213B (zh) * | 2019-02-03 | 2020-10-02 | 北京新联铁集团股份有限公司 | 轨道交通机车车辆巡检位姿检测系统及其方法 |
CN110209165B (zh) * | 2019-05-20 | 2022-05-13 | 江苏理工学院 | 一种agv小车上下料的自动识别精确停靠装置及其停靠方法 |
CN111982099B (zh) * | 2019-05-21 | 2022-09-16 | 顺丰科技有限公司 | 机器人混合定位方法、装置、设备及计算机可读介质 |
CN110187708B (zh) * | 2019-06-10 | 2022-07-08 | 大有智能科技(嘉兴)有限公司 | 定位系统及方法 |
CN110426038B (zh) * | 2019-07-01 | 2023-01-24 | 达闼机器人股份有限公司 | 机器人导航控制方法、装置、计算设备及计算机存储介质 |
CN110470293B (zh) * | 2019-07-31 | 2021-04-02 | 维沃移动通信有限公司 | 一种导航方法及移动终端 |
CN110926319A (zh) * | 2019-11-14 | 2020-03-27 | 江苏武进液压启闭机有限公司 | 一种基于一维码的活塞杆或阻尼部件定位装置及定位方法 |
CN112894752B (zh) * | 2021-01-20 | 2022-04-01 | 华中科技大学 | 一种移动加工机器人的寻位方法 |
CN113093763B (zh) * | 2021-04-13 | 2023-04-07 | 塔米智能科技(北京)有限公司 | 一种移动机器人调度系统和方法 |
CN113858214B (zh) * | 2021-11-11 | 2023-06-09 | 节卡机器人股份有限公司 | 一种用于机器人作业的定位方法与控制系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1707223A (zh) * | 2004-06-12 | 2005-12-14 | 杨建华 | 基于条形码的室内移动机器人定位系统和方法 |
KR100824744B1 (ko) * | 2006-07-12 | 2008-04-24 | 동명대학교산학협력단 | 모서리 형태를 이용한 이동로봇의 자기위치 검출 시스템 및방법 |
CN102135429B (zh) * | 2010-12-29 | 2012-06-13 | 东南大学 | 一种基于视觉的机器人室内定位导航方法 |
CN102944236B (zh) * | 2012-11-20 | 2015-03-18 | 无锡普智联科高新技术有限公司 | 基于多个二维码读码器的移动机器人定位系统及方法 |
CN106370185B (zh) * | 2016-08-31 | 2024-05-14 | 北京翰宁智能科技有限责任公司 | 基于地面基准标识的移动机器人定位方法和系统 |
CN108121332A (zh) * | 2016-11-28 | 2018-06-05 | 沈阳新松机器人自动化股份有限公司 | 基于二维码的室内移动机器人定位装置及方法 |
-
2018
- 2018-06-29 CN CN201810712487.4A patent/CN109059922B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109059922A (zh) | 2018-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109059922B (zh) | 移动机器人定位方法、装置和系统 | |
EP3040904B1 (en) | Portable rfid reading terminal with visual indication of scan trace | |
CN101840496B (zh) | 一维条码解码芯片 | |
US9911072B2 (en) | Two-dimensional code, and two-dimensional-code analysis system | |
CN108073966A (zh) | 一种二维码与孔阵码的转换方法 | |
AU2017380263B2 (en) | Method for detecting and recognising long-range high-density visual markers | |
CN101833641A (zh) | 条码解码芯片 | |
CN101908122A (zh) | 条空边界处理模块、条码识别装置及其方法 | |
CN103884323A (zh) | 基于二维码地理信息标志的全站仪测量方法及系统 | |
CN101908128A (zh) | Aztec Code条码解码芯片及其解码方法 | |
CN110889304A (zh) | 二维码质量评估方法及装置、存储介质、电子设备、系统 | |
CN113642352A (zh) | 快递面单的文本信息的获取方法、装置和终端设备 | |
CN113420580A (zh) | 用于对二维码进行辅助定位符定位的方法及装置、二维码扫描设备、存储介质 | |
CN109977715B (zh) | 基于轮廓识别的二维码识别方法及二维码 | |
CN101908126A (zh) | Pdf417条码解码芯片 | |
CN116301674A (zh) | 打印头磨损检测方法、装置及计算设备 | |
CN113158704B (zh) | 一种快速定位Dotcode码的方法及其系统 | |
CN111738389A (zh) | 二维码生成方法和生成系统 | |
CN108875868A (zh) | 移动机器人定位方法、装置和系统 | |
CN117574930B (zh) | 立体条形码信息生成方法、装置、电子设备和可读介质 | |
CN114492487B (zh) | 一种基于rfid技术和计算机视觉技术的图书盘点方法及系统 | |
CN111191759A (zh) | 一种二维码的生成方法和基于gpu的定位、解码方法 | |
CN101833643A (zh) | 复合码条码解码芯片 | |
CN101908127B (zh) | 行列式条码解码芯片 | |
CN201965627U (zh) | Aztec Code条码解码芯片 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100000 Beijing Haidian District, Dongbei Wangxi Road, No. 8 Building, No. 2 District 106-1 Applicant after: Beijing Wide-sighted Robot Technology Co., Ltd. Applicant after: MEGVII INC. Address before: 100000 Beijing Haidian District, Dongbei Wangxi Road, No. 8 Building, No. 2 District 106-1 Applicant before: Beijing AI Ruisi Robot Technology Co Ltd Applicant before: MEGVII INC. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |