CN113515112A - 机器人移动方法、装置、计算机设备和存储介质 - Google Patents
机器人移动方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN113515112A CN113515112A CN202010221416.1A CN202010221416A CN113515112A CN 113515112 A CN113515112 A CN 113515112A CN 202010221416 A CN202010221416 A CN 202010221416A CN 113515112 A CN113515112 A CN 113515112A
- Authority
- CN
- China
- Prior art keywords
- coordinate
- mobile robot
- preset
- map
- coordinates
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000009466 transformation Effects 0.000 claims abstract description 110
- 239000011159 matrix material Substances 0.000 claims abstract description 108
- 238000013507 mapping Methods 0.000 claims abstract description 82
- 238000006243 chemical reaction Methods 0.000 claims abstract description 25
- 230000033001 locomotion Effects 0.000 claims description 93
- 238000004590 computer program Methods 0.000 claims description 25
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0219—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本申请涉及一种机器人移动方法、装置、计算机设备和存储介质。所述方法包括:获取移动机器人发送的移动机器人在所建地图的坐标位置、以及移动机器人在坐标位置时相对各预设锚点的距离值;根据移动机器人在所建地图的坐标位置、以及在坐标位置时相对各预设锚点的距离值,确定预设锚点在所建地图中的建图坐标;获取预设锚点在预设地图中的坐标,得到预设锚点的预设坐标;将各预设锚点的建图坐标与预设坐标进行映射,得到移动机器人的所建地图与预设地图的变换矩阵;基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人,移动机器人移动至坐标转换后的移动目的对应的位置。采用本方法能够提高精准性。
Description
技术领域
本申请涉及机器人技术领域,特别是涉及一种机器人移动方法、装置、计算机设备和存储介质。
背景技术
随着科技的快速发展,出现了可以通过自主移动执行工作的机器装置,即移动机器人。目前,激光雷达和同步定位导航算法(SLAM,Simultaneous Localization andMapping)是移动机器人的主要导航技术,其结合了机器人视觉、无线定位、惯性导航等技术。移动机器人的操作系统通常可以基于集成的SLAM算法模块直接利用激光雷达采集的数据完成建图和定位从而辅助机器人在位置环境中移动执行工作。
然而,由于不同机器人厂商技术的差异,以及受激光传感器的类型、安装高度、环境中的障碍物高度以及是否存在玻璃和栏杆等不易识别物体因素的影响,导致SLAM算法建图容易存在建图误差和包括一些建图错误区域(如图1中的虚线所示),从而影响机器人移动的精准性。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高精准性的机器人移动方法、装置、计算机设备和存储介质。
一种机器人移动方法,所述方法包括:
获取移动机器人发送的所述移动机器人在所建地图的坐标位置、以及所述移动机器人在所述坐标位置时相对各预设锚点的距离值;
根据所述移动机器人在所建地图的坐标位置、以及在所述坐标位置时相对各所述预设锚点的距离值,确定各所述预设锚点在所建地图中的建图坐标;
获取所述预设锚点在预设地图中的坐标,得到所述预设锚点的预设坐标;
将各所述预设锚点的所述建图坐标与所述预设坐标进行映射,得到所述移动机器人的所述所建地图与所述预设地图的变换矩阵;
基于所述变换矩阵将所述移动机器人的移动目的进行坐标转换后发送给所述移动机器人,所述移动机器人移动至坐标转换后的所述移动目的对应的位置。
在其中一个实施例中,所述将各所述预设锚点的所述建图坐标与所述预设坐标进行映射,得到所述移动机器人的所建地图与所述预设地图的变换矩阵,包括:
从各所述预设锚点中选取预设数量的预设描点作为候选锚点;
分别将各所述候选锚点的所述建图坐标和所述预设坐标进行逆仿射变换,得到所述移动机器人的所建地图与所述预设地图的变换矩阵。
在其中一个实施例中,所述基于所述变换矩阵将所述移动机器人的移动目的进行坐标转换后发送给所述移动机器人,所述移动机器人移动至坐标转换后的所述移动目的对应的位置,包括:
接收移动指令,所述移动指令携带有机器编号以及第一移动目的坐标,所述第一移动目的坐标属于所述预设地图上的坐标;
根据所述机器编号获取对应移动机器人的变换矩阵;
基于所述变换矩阵将所述第一移动目的坐标转换成第二移动目的坐标,所述第二移动目的坐标属于所述所建地图上的坐标;
将所述第二移动目的坐标发送给所述机器编号对应的移动机器人,所述机器编号对应的移动机器人移动至所述第二移动目的坐标对应的位置。
在其中一个实施例中,所述基于所述变换矩阵将所述第一移动目的坐标转换成第二移动目的坐标,包括:
获取所述变换矩阵的逆矩阵;
将所述逆矩阵与所述第一移动目的坐标进行相乘,得到第二移动目的坐标。
在其中一个实施例中,所述方法还包括:
接收位置查询指令,所述位置查询指令携带有机器编号;
根据所述机器编号获取对应移动机器人在所述所建地图中的第一当前坐标,以及获取所述机器编号对应移动机器人对应的变换矩阵;
基于所述变换矩阵将所述第一当前坐标转换成第二当前坐标并在所述预设地图中显示所述第二当前坐标。
在其中一个实施例中,所述基于所述变换矩阵将所述第一当前坐标转换成第二当前坐标,包括:
将所述变换矩阵与所述第一当前坐标相乘,得到第二当前坐标。
在其中一个实施例中,所述根据所述移动机器人在所建地图的坐标位置以及在所述坐标位置时相对各所述预设锚点的距离值,确定所述预设锚点在所建地图中的建图坐标,包括:
获取固定数量的坐标位置,以及获取在各所述坐标位置时对应的所述距离值;
基于各所述坐标位置和所述距离值进行三角定位,确定所述预设锚点的建图坐标。
一种机器人移动装置,所述装置包括:
数据获取模块,用于获取所述移动机器人发送的所述移动机器人在所建地图的坐标位置、以及所述移动机器人在所述坐标位置时相对各预设锚点的距离值;
确定模块,用于根据所述移动机器人在所建地图的坐标位置、以及在所述坐标位置时相对各所述预设锚点的距离值,确定所述预设锚点在所建地图中的建图坐标;
坐标获取模块,用于获取所述预设锚点在预设地图中的坐标,得到所述预设锚点的预设坐标;
映射模块,用于将各所述预设锚点的所述建图坐标与所述预设坐标进行映射,得到所述移动机器人的所述所建地图与所述预设地图的变换矩阵;
移动控制模块,用于基于所述变换矩阵将所述移动机器人的移动目的进行坐标转换后发送给所述移动机器人,所述移动机器人移动至坐标转换后的所述移动目的对应的位置。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的机器人移动方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的机器人移动方法的步骤。
上述机器人移动方法、装置、计算机设备和存储介质,根据获取到的移动机器人在自身所建地图中的坐标位置和在各坐标位置时相对预设锚点的距离值确定预设锚点在所建地图中的建图坐标之后,将建图坐标与预设锚点在预设地图的预设坐标进行映射得到所建地图和预设地图的变换矩阵,进而基于变换矩阵将移动目的进行坐标转换后发给移动机器人完成移动。该方法通过映射预设锚点的两个坐标位置实现了所建地图和预设地图的对接,而后基于对接得到的变换矩阵完成机器人的移动,避免了移动机器人只依据自身所建的地图进行移动,从而降低了建图误差和建图错误带来的影响,提高移动的精准性。
附图说明
图1为移动机器人的建图错误区域的示意图;
图2为一个实施例中机器人移动方法的应用环境图;
图3为一个实施例中机器人移动方法的流程示意图;
图4为一个实施例中基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人步骤的流程示意图;
图5为一个实施例中机器人移动装置的结构框图;
图6为一个实施例中服务器的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的机器人移动方法,可以应用于如图2所示的应用环境中。该应用环境涉及移动机器人102、服务器104和终端106。其中,移动机器人102通过网络与服务器104进行通信、服务器104通过网络与终端106进行通信。移动机器人102包括无线通信模块、传感器和辅助定位硬件。
具体地,移动机器人102通过传感器采集传感器数据、同时通过辅助定位硬件采集锚点辅助定位数据。基于采集的传感器数据和锚点辅助定位数据进行建图和定位,得到移动机器人在所建地图的坐标位置以及移动机器人在坐标位置时相对各预设锚点的距离值发送给服务器104。服务器104获取移动机器人102发送的移动机器人在所建地图的坐标位置以及移动机器人在坐标位置时相对各预设锚点的距离值;服务器104根据移动机器人在所建地图的坐标位置以及在所述坐标位置时相对各预设锚点的距离值,确定预设锚点在所建地图中的建图坐标;服务器104获取预设锚点在预设地图中的坐标,得到预设锚点的预设坐标;服务器104将各预设锚点的建图坐标与预设坐标进行映射,得到移动机器人的所建地图与预设地图的变换矩阵;服务器104响应终端106发送的移动指令,基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人,移动机器人移动至移动目的对应的位置。其中,终端106可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图3所示,提供了一种机器人移动方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤S202,获取移动机器人发送的移动机器人在所建地图的坐标位置、以及移动机器人在坐标位置时相对各预设锚点的距离值。
其中,预设锚点可以理解为是预先设定的标记标签,预设锚点由移动机器人采用的辅助定位方法决定。例如,当辅助定位方法采用UWB标签时,预设锚点就是UWB基站。当辅助定位方法采用拍摄二维码时,预设锚点就是二维码。
具体地,移动机器人通过安装于自身的传感器采集传感器数据,例如由移动机器人中的激光雷达所采集的数据。同时,移动机器人通过辅助定位硬件采集锚点辅助定位数据。锚点辅助定位数据是由移动机器人中辅助定位硬件获取的对锚点进行定位的定位导航数据,例如由搭载于移动机器人中的UWB(Ultra Wide Band,超宽带技术)标签测量UWB基站的信号强度得到。当得到传感器数据和锚点辅助定位数据后,移动机器人基于传感器数据和锚点辅助定位数据建立地图和对预设锚点进行定位,从而可以得到所建地图、移动机器人在所建地图中的坐标位置、以及在该坐标位置时移动机器人相对各预设锚点的距离值。
移动机器人的建图方法可以采用常规的建图算法SLAM(SimultaneousLocalization And Mapping,同时定位与地图构建)算法进行。而在某一坐标位置定位获取相对于预设锚点的距离值时,通过搭载的UWB标签进行信号强度的测量实现。例如,移动机器人通过移动至3个不同的坐标位置,且在这3个坐标位置时分别对同一个UWB基站进行信号强度的测量。在进行信号强度测量的过程中,通过信号从出发到返回的时间分别确定所选3个坐标位置分别与UWB基站的距离,即移动机器人在这3个坐标位置处分别相对于预设锚点的距离值。其中,3个不同的坐标位置可以从建图得到的所建地图中随机进行选择。
当移动机器人进行建图和定位得到所建地图,移动机器人在所建地图的坐标位置以及在坐标位置时相对于各预设锚点的距离值之后,通过移动机器人的无线通信模块将所建地图,移动机器人在所建地图的坐标位置以及在坐标位置时相对各预设锚点的距离值发送给服务器。
步骤S204,根据移动机器人在所建地图的坐标位置、以及在坐标位置时相对各预设锚点的距离值,确定各预设锚点在所建地图中的建图坐标。
其中,建图坐标是指预设锚点在以移动机器人的所建地图的坐标系为基准时的坐标,可以简单理解为预设锚点在所建地图中的坐标。
具体地,在服务器得到移动机器人在所建地图的坐标位置以及在坐标位置相对各预设锚点的距离值后,以三角定位的方法计算出预设锚点的建图坐标。
在一个实施例中,步骤S204,包括:获取固定数量的坐标位置,以及获取在各坐标位置时对应的距离值;基于各坐标位置和距离值进行三角定位,确定预设锚点的建图坐标。
其中,固定数量是设定的值,因为采用的是三角定位,所以本实施例中固定数量为3。
具体地,以一个预设锚点为例,假设预设锚点是UWB基站。那么,在服务器接收到所有的坐标位置以及坐标位置对应的距离值之后,服务器从接收到的坐标位置中选择3个坐标位置,以及从距离值中选择在这3个坐标位置时对同一个预设锚点的3个距离值。然后,服务器分别将这3个移动机器人在所建地图的坐标位置作为3个圆心,以及分别将这3个坐标位置相对于UWB基站的距离值作为3个半径值,根据对应关系将这3个圆心和3个半径一一组成圆形。服务器通过计算3个圆中任意两个圆的之间的交点,从每一相交两圆的交点中选定一个交点作为三角形的顶点,选定原则为:当两圆之间只存在一个交点时,该交点选为顶点,而当两圆之间的交点存在两个以上时,判定离第三个圆最近的交点为顶点。最后,求解确定的三个顶点组成的三角形的重心为UWB基站在所建地图中的坐标,即UWB基站的建图坐标。
步骤S206,获取预设锚点在预设地图中的坐标,得到预设锚点的预设坐标。
其中,预设地图是通过其他方法得到的地图数据,可以是通过深度相机和三维重建算法建图得到地图空间数据、通过从BIM(Building Information Modeling,建筑信息模型)系统中导出转换得到的地图空间数据、通过人工标记得到的兴趣点数据,以及以上数据的组合得到的地图数据。应当理解的是,预设地图对应的场景应当与所建地图是同一场景,例如所建地图是移动机器人对A仓库进行建图所得,那么预设地图应当是通过其他建图方法对A仓库进行建图所得。预设坐标则是预设锚点在预设地图中的坐标,是以预设地图的坐标系为基准得到的坐标。
具体地,构建预设地图时已经将各个预设锚点在预设地图中的预设坐标进行预先存储了,各个预设锚点之间通过唯一的锚点ID进行区分。因此,服务器可以直接从数据库中获取存储的预设锚点在预设地图中的预设坐标。
步骤S208,将各预设锚点的建图坐标与预设坐标进行映射,得到移动机器人的所建地图与预设地图的变换矩阵。
具体地,当得到预设锚点的建图坐标和预设坐标之后,通过映射具有相同锚点ID的两个坐标得到所建地图和预设地图之间的变换矩阵。
在一个实施例中,步骤S208,包括:从各预设锚点中选取预设数量的预设描点作为候选锚点;分别将各候选锚点的建图坐标和预设坐标进行逆仿射变换,得到移动机器人的所建地图与预设地图的变换矩阵。
其中,预设数量是预先设定的数量阈值,可以根据实际情况进行设定,本实施例优选预设数量为三。
具体地,当所建地图和预设地图之间为仿射变换关系时,从各预设锚点中选择三个预设锚点作为候选锚点。选择的三个候选锚点在所建地图和预设地图中的六个坐标通过逆仿射变换算法求解得到变换矩阵。其中,建图坐标可以由齐次坐标Pi1={xi1,yi1,1}表示,预设坐标可以由齐次坐标Pi2={xi2,yi2,1}表示,而通过逆仿射变换得到的变换矩阵可以由Ti=[{t01,t02,0},{t11,t12,0},{t21,t22,0}]表示。
另外,当所建地图和预设地图之间不是仿射变换关系时,可以通过分别对所建地图和预设地图进行地图的划分,将所建地图和预设地图变成由子地图组合的方式,例如六角形或者矩形的形式。然后,对所建地图的子地图和预设地图的子地图进行逆仿射变换,得到各个对应两个子地图的变换矩阵。
步骤S210,基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人,移动机器人移动至坐标转换后的移动目的对应的位置。
具体地,当需要指示移动机器人进行移动时,服务器接收业务人员通过终端发送的移动目的坐标,该移动目的坐标是以预设坐标的坐标系为基准的坐标。然后,服务器通过获取移动机器人对应的变换矩阵,利用变换矩阵将属于预设地图的坐标系的移动目的坐标转换成属于所建地图的坐标系的移动目的坐标。最后,将转换后属于所建地图坐标系的移动目的坐标发送给移动机器人,移动机器人结合自身建图得到的所建地图和该移动目的坐标进行移动,到达移动目的坐标所指定的位置。
上述机器人移动方法,根据获取到的移动机器人在自身所建地图中的坐标位置和在各坐标位置时相对预设锚点的距离值确定预设锚点在所建地图中的建图坐标之后,将建图坐标与预设锚点在预设地图的预设坐标进行映射得到所建地图和预设地图的变换矩阵,进而基于变换矩阵将移动目的进行坐标转换后发给移动机器人完成移动。该方法通过映射预设锚点的两个坐标位置实现了所建地图和预设地图的对接,而后基于对接得到的变换矩阵完成机器人的移动,避免了移动机器人只依据自身所建的地图进行移动,从而降低了建图误差和建图错误带来的影响,提高移动的精准性。
在一个实施例中,辅助定位方法还可以采用拍摄二维码的方式,在本实施例中,二维码即为预设锚点。具体地,在移动机器人的行进过程中,通过移动机器人的摄像头对行进路程中的二维码进行图像拍摄,移动机器人拍摄二维码时在所建地图中的坐标位置加上固定偏移量即为被拍摄的二维码在所建地图的坐标,即二维码的建图坐标。
在一个实施例中,如图4所示,步骤210,包括:
步骤S402,接收移动指令,移动指令携带有机器编号以及第一移动目的坐标,第一移动目的坐标属于预设地图上的坐标。
其中,移动指令是用于指示移动机器人移动的请求指令,机器编号是移动机器人的编号,通过机器编号可以指定需要移动的移动机器人。第一移动目的坐标是服务器接收的以预设地图的坐标系为基准的移动目的坐标。
具体地,当需要是指示移动机器人进行移动时,业务人员向服务器发送携带有机器人编号和第一移动目的坐标的移动指令。
步骤S404,根据机器编号获取对应移动机器人的变换矩阵。
具体地,当服务器接收到移动指令之后,根据机器编号获取对应需要移动机器人的变换矩阵。因为在部署移动机器人时,每个机器人都会各自进行建图,所以各个移动机器人都与预设地图有对应的变换矩阵。因此,当利用变换矩阵对移动目的坐标进行坐标转换时,需要根据机器编号获取对应的变换矩阵。
步骤S406,基于变换矩阵将第一移动目的坐标转换成第二移动目的坐标,第二移动目的坐标属于所建地图上的坐标。
其中,第二移动目的坐标则是服务器将第一移动目的坐标进行坐标转换后的坐标,是以移动机器人的所建地图的坐标系为基准的移动目的坐标。
具体地,当获取到变换矩阵和第一移动目的坐标之后,获取变换矩阵的逆矩阵。将变换矩阵的逆矩阵与第一移动坐标进行相乘,完成坐标转换得到第二移动目的坐标。
步骤S408,将第二移动目的坐标发送给机器编号对应的移动机器人,机器编号对应的移动机器人移动至第二移动目的坐标对应的位置。
具体的,当将属于预设地图的第一移动目的坐标转换成属于所建地图的第二移动目的坐标之后,服务器将第二移动目的坐标发送给机器编号对应的移动机器人。当机器编号对应的移动机器人接收到第二移动目的坐标后,根据自身的所建地图移动至第二移动目的坐标对应的位置完成移动。
在本实施例中,当指示移动机器人移动时,通过映射得到的变换矩阵将移动目的坐标从预设地图的坐标系下转换到所建地图的坐标系下,在确保机器人使用自建地图的同时降低机器人自建地图带来的误差和错误,提高移动的精准。
在一个实施例中,机器人移动方法还包括:接收位置查询指令,位置查询指令携带有机器编号;根据机器编号获取对应移动机器人在所建地图中的第一当前坐标,以及获取机器编号对应移动机器人对应的变换矩阵;基于变换矩阵将第一当前坐标转换成第二当前坐标并在预设地图中显示第二当前坐标。
具体地,当需要查询某个移动机器人当前的位置信息时,服务器响应从终端接收到的用于请求查询机器人当前位置的位置查询指令。根据位置查询指令中携带的机器编号确定需要查询位置的移动机器人,并向需要查询位置的移动机器人发送获取第一当前坐标的请求。第一当前坐标是指移动机器人根据自身所建地图为基准发送的当前自身所在位置的坐标。当计算设备接收到移动机器人反馈的第一当前坐标之后,根据机器编号获取需要查询位置的移动机器人对应的变换矩阵。然后,利用变换矩阵将第一当前坐标进行坐标转换得到第二当前坐标,并将第二当前坐标显示在预设地图中以便将位置查询结果反馈给业务人员。第二当前坐标时对第一当前坐标进行坐标转换得到的,以预设地图的坐标系为基准的移动机器人的当前坐标。
在一个实施例中,基于变换矩阵将第一当前坐标转换成第二当前坐标为将得到的变换矩阵与第一当前坐标进行相乘,完成第一当前坐标的转换,得到第二当前坐标。
在本实施例中,当指示查询移动机器人的位置时,通过映射得到的变换矩阵将查询到的当前坐标从所建地图的坐标系下转换到预设地图的坐标系下,在确保机器人使用自建地图的同时降低机器人自建地图带来的误差和错误,提高查询的精准性。
应该理解的是,虽然图3-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3-4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种机器人移动装置,包括:数据获取模块502、确定模块504、坐标获取模块506、映射模块508和移动控制模块510,其中:
数据获取模块502,用于获取移动机器人发送的移动机器人在所建地图的坐标位置、以及移动机器人在坐标位置时相对各预设锚点的距离值。
确定模块504,用于根据移动机器人在所建地图的坐标位置、以及在坐标位置时相对各预设锚点的距离值,确定预设锚点在所建地图中的建图坐标。
坐标获取模块506,用于获取预设锚点在预设地图中的坐标,得到预设锚点的预设坐标。
映射模块508,用于将各预设锚点的建图坐标与预设坐标进行映射,得到移动机器人的所建地图与预设地图的变换矩阵。
移动控制模块510,用于基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人,移动机器人移动至坐标转换后移动目的对应的位置。
在一个实施例中,映射模块508还用于从各预设锚点中选取预设数量的预设描点作为候选锚点;分别将各候选锚点的建图坐标和预设坐标进行逆仿射变换,得到移动机器人的所建地图与预设地图的变换矩阵。
在一个实施例中,移动控制模块510还用于接收移动指令,移动指令携带有机器编号以及第一移动目的坐标,第一移动目的坐标属于预设地图上的坐标;根据机器编号获取对应移动机器人的变换矩阵;基于变换矩阵将第一移动目的坐标转换成第二移动目的坐标,第二移动目的坐标属于所建地图上的坐标;将第二移动目的坐标发送给机器编号对应的移动机器人,机器编号对应的移动机器人移动至第二移动目的坐标对应的位置。
在一个实施例中,移动控制模块510还用于获取变换矩阵的逆矩阵;将变换矩阵的逆矩阵与第一移动坐标进行相乘,得到第二移动目的坐标。
在一个实施例中,机器人移动装置还包括查询模块,用于接收位置查询指令,位置查询指令携带有机器编号;根据机器编号获取对应移动机器人在所建地图中的第一当前坐标,以及获取机器编号对应移动机器人对应的变换矩阵;基于变换矩阵将第一当前坐标转换成第二当前坐标并在预设地图中显示第二当前坐标。
在一个实施例中,查询模块还用于将得到的变换矩阵与第一当前坐标进行相乘,得到第二当前坐标。
在一个实施例中,确定模块504还用于获取固定数量的坐标位置,以及获取在各坐标位置时对应的距离值;基于各坐标位置和距离值进行三角定位,确定预设锚点的建图坐标。
关于机器人移动装置的具体限定可以参见上文中对于机器人移动方法的限定,在此不再赘述。上述机器人移动装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储所建地图数据、预设地图数据、预设锚点的预设坐标以及各移动机器人的变换矩阵。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种机器人移动方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取移动机器人发送的移动机器人在所建地图的坐标位置、以及移动机器人在坐标位置时相对各预设锚点的距离值;
根据移动机器人在所建地图的坐标位置、以及在坐标位置时相对各预设锚点的距离值,确定预设锚点在所建地图中的建图坐标;
获取预设锚点在预设地图中的坐标,得到预设锚点的预设坐标;
将各预设锚点的建图坐标与预设坐标进行映射,得到移动机器人的所建地图与预设地图的变换矩阵;
基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人,移动机器人移动至坐标转换后移动目的对应的位置。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:从各预设锚点中选取预设数量的预设描点作为候选锚点;分别将各候选锚点的建图坐标和预设坐标进行逆仿射变换,得到移动机器人的所建地图与预设地图的变换矩阵。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:接收移动指令,移动指令携带有机器编号以及第一移动目的坐标,第一移动目的坐标属于预设地图上的坐标;根据机器编号获取对应移动机器人的变换矩阵;基于变换矩阵将第一移动目的坐标转换成第二移动目的坐标,第二移动目的坐标属于所建地图上的坐标;将第二移动目的坐标发送给机器编号对应的移动机器人,机器编号对应的移动机器人移动至第二移动目的坐标对应的位置。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取变换矩阵的逆矩阵;将变换矩阵的逆矩阵与第一移动坐标进行相乘,得到第二移动目的坐标。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:接收位置查询指令,位置查询指令携带有机器编号;根据机器编号获取对应移动机器人在所建地图中的第一当前坐标,以及获取机器编号对应移动机器人对应的变换矩阵;基于变换矩阵将第一当前坐标转换成第二当前坐标并在预设地图中显示第二当前坐标。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:将得到的变换矩阵与第一当前坐标进行相乘,得到第二当前坐标。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取固定数量的坐标位置,以及获取在各坐标位置时对应的距离值;基于各坐标位置和距离值进行三角定位,确定预设锚点的建图坐标。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取移动机器人发送的移动机器人在所建地图的坐标位置、以及移动机器人在坐标位置时相对各预设锚点的距离值;
根据移动机器人在所建地图的坐标位置、以及在坐标位置时相对各预设锚点的距离值,确定预设锚点在所建地图中的建图坐标;
获取预设锚点在预设地图中的坐标,得到预设锚点的预设坐标;
将各预设锚点的建图坐标与预设坐标进行映射,得到移动机器人的所建地图与预设地图的变换矩阵;
基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人,移动机器人移动至坐标转换后移动目的对应的位置。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:从各预设锚点中选取预设数量的预设描点作为候选锚点;分别将各候选锚点的建图坐标和预设坐标进行逆仿射变换,得到移动机器人的所建地图与预设地图的变换矩阵。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收移动指令,移动指令携带有机器编号以及第一移动目的坐标,第一移动目的坐标属于预设地图上的坐标;根据机器编号获取对应移动机器人的变换矩阵;基于变换矩阵将第一移动目的坐标转换成第二移动目的坐标,第二移动目的坐标属于所建地图上的坐标;将第二移动目的坐标发送给机器编号对应的移动机器人,机器编号对应的移动机器人移动至第二移动目的坐标对应的位置。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取变换矩阵的逆矩阵;将变换矩阵的逆矩阵与第一移动坐标进行相乘,得到第二移动目的坐标。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收位置查询指令,位置查询指令携带有机器编号;根据机器编号获取对应移动机器人在所建地图中的第一当前坐标,以及获取机器编号对应移动机器人对应的变换矩阵;基于变换矩阵将第一当前坐标转换成第二当前坐标并在预设地图中显示第二当前坐标。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将得到的变换矩阵与第一当前坐标进行相乘,得到第二当前坐标。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取固定数量的坐标位置,以及获取在各坐标位置时对应的距离值;基于各坐标位置和距离值进行三角定位,确定预设锚点的建图坐标。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种机器人移动方法,所述方法包括:
获取移动机器人发送的所述移动机器人在所建地图的坐标位置、以及所述移动机器人在所述坐标位置时相对各预设锚点的距离值;
根据所述移动机器人在所建地图的坐标位置、以及在所述坐标位置时相对各所述预设锚点的距离值,确定各所述预设锚点在所建地图中的建图坐标;
获取所述预设锚点在预设地图中的坐标,得到所述预设锚点的预设坐标;
将各所述预设锚点的所述建图坐标与所述预设坐标进行映射,得到所述移动机器人的所述所建地图与所述预设地图的变换矩阵;
基于所述变换矩阵将所述移动机器人的移动目的进行坐标转换后发送给所述移动机器人,所述移动机器人移动至坐标转换后的所述移动目的对应的位置。
2.根据权利要求1所述的方法,其特征在于,所述将各所述预设锚点的所述建图坐标与所述预设坐标进行映射,得到所述移动机器人的所建地图与所述预设地图的变换矩阵,包括:
从各所述预设锚点中选取预设数量的预设描点作为候选锚点;
分别将各所述候选锚点的所述建图坐标和所述预设坐标进行逆仿射变换,得到所述移动机器人的所建地图与所述预设地图的变换矩阵。
3.根据权利要求1所述的方法,其特征在于,所述基于所述变换矩阵将所述移动机器人的移动目的进行坐标转换后发送给所述移动机器人,所述移动机器人移动至坐标转换后的所述移动目的对应的位置,包括:
接收移动指令,所述移动指令携带有机器编号以及第一移动目的坐标,所述第一移动目的坐标属于所述预设地图上的坐标;
根据所述机器编号获取对应移动机器人的变换矩阵;
基于所述变换矩阵将所述第一移动目的坐标转换成第二移动目的坐标,所述第二移动目的坐标属于所述所建地图上的坐标;
将所述第二移动目的坐标发送给所述机器编号对应的移动机器人,所述机器编号对应的移动机器人移动至所述第二移动目的坐标对应的位置。
4.根据权利要求3所述的方法,其特征在于,所述基于所述变换矩阵将所述第一移动目的坐标转换成第二移动目的坐标,包括:
获取所述变换矩阵的逆矩阵;
将所述逆矩阵与所述第一移动目的坐标进行相乘,得到第二移动目的坐标。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收位置查询指令,所述位置查询指令携带有机器编号;
根据所述机器编号获取对应移动机器人在所述所建地图中的第一当前坐标,以及获取所述机器编号对应移动机器人对应的变换矩阵;
基于所述变换矩阵将所述第一当前坐标转换成第二当前坐标并在所述预设地图中显示所述第二当前坐标。
6.根据权利要求5所述的方法,其特征在于,所述基于所述变换矩阵将所述第一当前坐标转换成第二当前坐标,包括:
将所述变换矩阵与所述第一当前坐标相乘,得到第二当前坐标。
7.根据权利要求1所述的方法,其特征在于,所述根据所述移动机器人在所建地图的坐标位置以及在所述坐标位置时相对各所述预设锚点的距离值,确定所述预设锚点在所建地图中的建图坐标,包括:
获取固定数量的坐标位置,以及获取在各所述坐标位置时对应的所述距离值;
基于各所述坐标位置和所述距离值进行三角定位,确定所述预设锚点的建图坐标。
8.一种机器人移动装置,其特征在于,所述装置包括:
数据获取模块,用于获取所述移动机器人发送的所述移动机器人在所建地图的坐标位置、以及所述移动机器人在所述坐标位置时相对各预设锚点的距离值;
确定模块,用于根据所述移动机器人在所建地图的坐标位置、以及在所述坐标位置时相对各所述预设锚点的距离值,确定所述预设锚点在所建地图中的建图坐标;
坐标获取模块,用于获取所述预设锚点在预设地图中的坐标,得到所述预设锚点的预设坐标;
映射模块,用于将各所述预设锚点的所述建图坐标与所述预设坐标进行映射,得到所述移动机器人的所述所建地图与所述预设地图的变换矩阵;
移动控制模块,用于基于所述变换矩阵将所述移动机器人的移动目的进行坐标转换后发送给所述移动机器人,所述移动机器人移动至坐标转换后的所述移动目的对应的位置。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010221416.1A CN113515112A (zh) | 2020-03-26 | 2020-03-26 | 机器人移动方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010221416.1A CN113515112A (zh) | 2020-03-26 | 2020-03-26 | 机器人移动方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113515112A true CN113515112A (zh) | 2021-10-19 |
Family
ID=78060196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010221416.1A Pending CN113515112A (zh) | 2020-03-26 | 2020-03-26 | 机器人移动方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113515112A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105143821A (zh) * | 2013-04-30 | 2015-12-09 | 高通股份有限公司 | 依据slam地图的广域定位 |
KR20180076815A (ko) * | 2016-12-28 | 2018-07-06 | 한국과학기술원 | Qr 마커와 레이저 스캐너를 이용하여 광범위 실내 공간에서 로봇의 위치를 인식하기 위한 방법 및 장치 |
CN109579843A (zh) * | 2018-11-29 | 2019-04-05 | 浙江工业大学 | 一种空地多视角下的多机器人协同定位及融合建图方法 |
JP2020042366A (ja) * | 2018-09-06 | 2020-03-19 | Tis株式会社 | 自律移動装置、サーバ装置、プログラム、および情報処理方法 |
-
2020
- 2020-03-26 CN CN202010221416.1A patent/CN113515112A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105143821A (zh) * | 2013-04-30 | 2015-12-09 | 高通股份有限公司 | 依据slam地图的广域定位 |
KR20180076815A (ko) * | 2016-12-28 | 2018-07-06 | 한국과학기술원 | Qr 마커와 레이저 스캐너를 이용하여 광범위 실내 공간에서 로봇의 위치를 인식하기 위한 방법 및 장치 |
JP2020042366A (ja) * | 2018-09-06 | 2020-03-19 | Tis株式会社 | 自律移動装置、サーバ装置、プログラム、および情報処理方法 |
CN109579843A (zh) * | 2018-11-29 | 2019-04-05 | 浙江工业大学 | 一种空地多视角下的多机器人协同定位及融合建图方法 |
Non-Patent Citations (1)
Title |
---|
刘晶;: "RFID技术在移动机器人同步定位中的应用", 中南民族大学学报(自然科学版), vol. 27, no. 03, pages 84 - 87 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107438752B (zh) | 定位方法、终端和服务器 | |
JP6842519B2 (ja) | データ収集方法及びそのシステム | |
CN109062207B (zh) | 充电座的定位方法、装置、机器人和存储介质 | |
CN108873908B (zh) | 基于视觉slam和网络地图结合的机器人城市导航系统 | |
CN105547305B (zh) | 一种基于无线定位和激光地图匹配的位姿解算方法 | |
CN109186606B (zh) | 一种基于slam和图像信息的机器人构图及导航方法 | |
CN103913162B (zh) | 增强的移动平台定位 | |
CN111429574A (zh) | 基于三维点云和视觉融合的移动机器人定位方法和系统 | |
WO2019126950A1 (zh) | 一种定位方法、云端服务器、终端、系统、电子设备及计算机程序产品 | |
CN112258590B (zh) | 一种基于激光的深度相机外参标定方法、设备及其存储介质 | |
CN112904358B (zh) | 基于几何信息的激光定位方法 | |
CN113587930B (zh) | 基于多传感融合的自主移动机器人室内外导航方法及装置 | |
CN113124880B (zh) | 一种基于两种传感器数据融合的建图及定位方法、装置 | |
US20200103914A1 (en) | Robot Localization with Co-located Markers | |
CN109668568A (zh) | 一种利用环视全景成像进行定位导航的方法 | |
CN113359769A (zh) | 室内自主移动机器人复合导航方法及装置 | |
CN113607166B (zh) | 基于多传感融合的自主移动机器人室内外定位方法及装置 | |
CN112447058A (zh) | 泊车方法、装置、计算机设备及存储介质 | |
CN112689234B (zh) | 室内车辆定位方法、装置、计算机设备和存储介质 | |
CN110988795A (zh) | 融合wifi定位的无标记导航agv全局初定位方法 | |
CN113515112A (zh) | 机器人移动方法、装置、计算机设备和存储介质 | |
CN114995459A (zh) | 机器人的控制方法、装置、设备及存储介质 | |
CN113503883B (zh) | 采集用于构建地图的数据的方法、存储介质及电子设备 | |
KR102450139B1 (ko) | 3차원 라이다 스캐너를 이용한 동적 환경 대상 전역 위치 인식 장치 및 방법 | |
EP3943979A1 (en) | Indoor device localization |
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 |