一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

机器人移动方法、装置、计算机设备和存储介质与流程

2021-10-19 19:28:00 来源:中国专利 TAG:机器人 装置 计算机 方法 设备


1.本技术涉及机器人技术领域,特别是涉及一种机器人移动方法、装置、计算机设备和存储介质。


背景技术:

2.随着科技的快速发展,出现了可以通过自主移动执行工作的机器装置,即移动机器人。目前,激光雷达和同步定位导航算法(slam,simultaneous localization and mapping)是移动机器人的主要导航技术,其结合了机器人视觉、无线定位、惯性导航等技术。移动机器人的操作系统通常可以基于集成的slam算法模块直接利用激光雷达采集的数据完成建图和定位从而辅助机器人在位置环境中移动执行工作。
3.然而,由于不同机器人厂商技术的差异,以及受激光传感器的类型、安装高度、环境中的障碍物高度以及是否存在玻璃和栏杆等不易识别物体因素的影响,导致slam算法建图容易存在建图误差和包括一些建图错误区域(如图1中的虚线所示),从而影响机器人移动的精准性。


技术实现要素:

4.基于此,有必要针对上述技术问题,提供一种能够提高精准性的机器人移动方法、装置、计算机设备和存储介质。
5.一种机器人移动方法,所述方法包括:
6.获取移动机器人发送的所述移动机器人在所建地图的坐标位置、以及所述移动机器人在所述坐标位置时相对各预设锚点的距离值;
7.根据所述移动机器人在所建地图的坐标位置、以及在所述坐标位置时相对各所述预设锚点的距离值,确定各所述预设锚点在所建地图中的建图坐标;
8.获取所述预设锚点在预设地图中的坐标,得到所述预设锚点的预设坐标;
9.将各所述预设锚点的所述建图坐标与所述预设坐标进行映射,得到所述移动机器人的所述所建地图与所述预设地图的变换矩阵;
10.基于所述变换矩阵将所述移动机器人的移动目的进行坐标转换后发送给所述移动机器人,所述移动机器人移动至坐标转换后的所述移动目的对应的位置。
11.在其中一个实施例中,所述将各所述预设锚点的所述建图坐标与所述预设坐标进行映射,得到所述移动机器人的所建地图与所述预设地图的变换矩阵,包括:
12.从各所述预设锚点中选取预设数量的预设描点作为候选锚点;
13.分别将各所述候选锚点的所述建图坐标和所述预设坐标进行逆仿射变换,得到所述移动机器人的所建地图与所述预设地图的变换矩阵。
14.在其中一个实施例中,所述基于所述变换矩阵将所述移动机器人的移动目的进行坐标转换后发送给所述移动机器人,所述移动机器人移动至坐标转换后的所述移动目的对应的位置,包括:
15.接收移动指令,所述移动指令携带有机器编号以及第一移动目的坐标,所述第一移动目的坐标属于所述预设地图上的坐标;
16.根据所述机器编号获取对应移动机器人的变换矩阵;
17.基于所述变换矩阵将所述第一移动目的坐标转换成第二移动目的坐标,所述第二移动目的坐标属于所述所建地图上的坐标;
18.将所述第二移动目的坐标发送给所述机器编号对应的移动机器人,所述机器编号对应的移动机器人移动至所述第二移动目的坐标对应的位置。
19.在其中一个实施例中,所述基于所述变换矩阵将所述第一移动目的坐标转换成第二移动目的坐标,包括:
20.获取所述变换矩阵的逆矩阵;
21.将所述逆矩阵与所述第一移动目的坐标进行相乘,得到第二移动目的坐标。
22.在其中一个实施例中,所述方法还包括:
23.接收位置查询指令,所述位置查询指令携带有机器编号;
24.根据所述机器编号获取对应移动机器人在所述所建地图中的第一当前坐标,以及获取所述机器编号对应移动机器人对应的变换矩阵;
25.基于所述变换矩阵将所述第一当前坐标转换成第二当前坐标并在所述预设地图中显示所述第二当前坐标。
26.在其中一个实施例中,所述基于所述变换矩阵将所述第一当前坐标转换成第二当前坐标,包括:
27.将所述变换矩阵与所述第一当前坐标相乘,得到第二当前坐标。
28.在其中一个实施例中,所述根据所述移动机器人在所建地图的坐标位置以及在所述坐标位置时相对各所述预设锚点的距离值,确定所述预设锚点在所建地图中的建图坐标,包括:
29.获取固定数量的坐标位置,以及获取在各所述坐标位置时对应的所述距离值;
30.基于各所述坐标位置和所述距离值进行三角定位,确定所述预设锚点的建图坐标。
31.一种机器人移动装置,所述装置包括:
32.数据获取模块,用于获取所述移动机器人发送的所述移动机器人在所建地图的坐标位置、以及所述移动机器人在所述坐标位置时相对各预设锚点的距离值;
33.确定模块,用于根据所述移动机器人在所建地图的坐标位置、以及在所述坐标位置时相对各所述预设锚点的距离值,确定所述预设锚点在所建地图中的建图坐标;
34.坐标获取模块,用于获取所述预设锚点在预设地图中的坐标,得到所述预设锚点的预设坐标;
35.映射模块,用于将各所述预设锚点的所述建图坐标与所述预设坐标进行映射,得到所述移动机器人的所述所建地图与所述预设地图的变换矩阵;
36.移动控制模块,用于基于所述变换矩阵将所述移动机器人的移动目的进行坐标转换后发送给所述移动机器人,所述移动机器人移动至坐标转换后的所述移动目的对应的位置。
37.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理
器执行所述计算机程序时实现上述任一项所述的机器人移动方法的步骤。
38.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的机器人移动方法的步骤。
39.上述机器人移动方法、装置、计算机设备和存储介质,根据获取到的移动机器人在自身所建地图中的坐标位置和在各坐标位置时相对预设锚点的距离值确定预设锚点在所建地图中的建图坐标之后,将建图坐标与预设锚点在预设地图的预设坐标进行映射得到所建地图和预设地图的变换矩阵,进而基于变换矩阵将移动目的进行坐标转换后发给移动机器人完成移动。该方法通过映射预设锚点的两个坐标位置实现了所建地图和预设地图的对接,而后基于对接得到的变换矩阵完成机器人的移动,避免了移动机器人只依据自身所建的地图进行移动,从而降低了建图误差和建图错误带来的影响,提高移动的精准性。
附图说明
40.图1为移动机器人的建图错误区域的示意图;
41.图2为一个实施例中机器人移动方法的应用环境图;
42.图3为一个实施例中机器人移动方法的流程示意图;
43.图4为一个实施例中基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人步骤的流程示意图;
44.图5为一个实施例中机器人移动装置的结构框图;
45.图6为一个实施例中服务器的内部结构图。
具体实施方式
46.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
47.本技术提供的机器人移动方法,可以应用于如图2所示的应用环境中。该应用环境涉及移动机器人102、服务器104和终端106。其中,移动机器人102通过网络与服务器104进行通信、服务器104通过网络与终端106进行通信。移动机器人102包括无线通信模块、传感器和辅助定位硬件。
48.具体地,移动机器人102通过传感器采集传感器数据、同时通过辅助定位硬件采集锚点辅助定位数据。基于采集的传感器数据和锚点辅助定位数据进行建图和定位,得到移动机器人在所建地图的坐标位置以及移动机器人在坐标位置时相对各预设锚点的距离值发送给服务器104。服务器104获取移动机器人102发送的移动机器人在所建地图的坐标位置以及移动机器人在坐标位置时相对各预设锚点的距离值;服务器104根据移动机器人在所建地图的坐标位置以及在所述坐标位置时相对各预设锚点的距离值,确定预设锚点在所建地图中的建图坐标;服务器104获取预设锚点在预设地图中的坐标,得到预设锚点的预设坐标;服务器104将各预设锚点的建图坐标与预设坐标进行映射,得到移动机器人的所建地图与预设地图的变换矩阵;服务器104响应终端106发送的移动指令,基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人,移动机器人移动至移动目的对应的位置。其中,终端106可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和
便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
49.在一个实施例中,如图3所示,提供了一种机器人移动方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
50.步骤s202,获取移动机器人发送的移动机器人在所建地图的坐标位置、以及移动机器人在坐标位置时相对各预设锚点的距离值。
51.其中,预设锚点可以理解为是预先设定的标记标签,预设锚点由移动机器人采用的辅助定位方法决定。例如,当辅助定位方法采用uwb标签时,预设锚点就是uwb基站。当辅助定位方法采用拍摄二维码时,预设锚点就是二维码。
52.具体地,移动机器人通过安装于自身的传感器采集传感器数据,例如由移动机器人中的激光雷达所采集的数据。同时,移动机器人通过辅助定位硬件采集锚点辅助定位数据。锚点辅助定位数据是由移动机器人中辅助定位硬件获取的对锚点进行定位的定位导航数据,例如由搭载于移动机器人中的uwb(ultra wide band,超宽带技术)标签测量uwb基站的信号强度得到。当得到传感器数据和锚点辅助定位数据后,移动机器人基于传感器数据和锚点辅助定位数据建立地图和对预设锚点进行定位,从而可以得到所建地图、移动机器人在所建地图中的坐标位置、以及在该坐标位置时移动机器人相对各预设锚点的距离值。
53.移动机器人的建图方法可以采用常规的建图算法slam(simultaneous localization and mapping,同时定位与地图构建)算法进行。而在某一坐标位置定位获取相对于预设锚点的距离值时,通过搭载的uwb标签进行信号强度的测量实现。例如,移动机器人通过移动至3个不同的坐标位置,且在这3个坐标位置时分别对同一个uwb基站进行信号强度的测量。在进行信号强度测量的过程中,通过信号从出发到返回的时间分别确定所选3个坐标位置分别与uwb基站的距离,即移动机器人在这3个坐标位置处分别相对于预设锚点的距离值。其中,3个不同的坐标位置可以从建图得到的所建地图中随机进行选择。
54.当移动机器人进行建图和定位得到所建地图,移动机器人在所建地图的坐标位置以及在坐标位置时相对于各预设锚点的距离值之后,通过移动机器人的无线通信模块将所建地图,移动机器人在所建地图的坐标位置以及在坐标位置时相对各预设锚点的距离值发送给服务器。
55.步骤s204,根据移动机器人在所建地图的坐标位置、以及在坐标位置时相对各预设锚点的距离值,确定各预设锚点在所建地图中的建图坐标。
56.其中,建图坐标是指预设锚点在以移动机器人的所建地图的坐标系为基准时的坐标,可以简单理解为预设锚点在所建地图中的坐标。
57.具体地,在服务器得到移动机器人在所建地图的坐标位置以及在坐标位置相对各预设锚点的距离值后,以三角定位的方法计算出预设锚点的建图坐标。
58.在一个实施例中,步骤s204,包括:获取固定数量的坐标位置,以及获取在各坐标位置时对应的距离值;基于各坐标位置和距离值进行三角定位,确定预设锚点的建图坐标。
59.其中,固定数量是设定的值,因为采用的是三角定位,所以本实施例中固定数量为3。
60.具体地,以一个预设锚点为例,假设预设锚点是uwb基站。那么,在服务器接收到所有的坐标位置以及坐标位置对应的距离值之后,服务器从接收到的坐标位置中选择3个坐
标位置,以及从距离值中选择在这3个坐标位置时对同一个预设锚点的3个距离值。然后,服务器分别将这3个移动机器人在所建地图的坐标位置作为3个圆心,以及分别将这3个坐标位置相对于uwb基站的距离值作为3个半径值,根据对应关系将这3个圆心和3个半径一一组成圆形。服务器通过计算3个圆中任意两个圆的之间的交点,从每一相交两圆的交点中选定一个交点作为三角形的顶点,选定原则为:当两圆之间只存在一个交点时,该交点选为顶点,而当两圆之间的交点存在两个以上时,判定离第三个圆最近的交点为顶点。最后,求解确定的三个顶点组成的三角形的重心为uwb基站在所建地图中的坐标,即uwb基站的建图坐标。
61.步骤s206,获取预设锚点在预设地图中的坐标,得到预设锚点的预设坐标。
62.其中,预设地图是通过其他方法得到的地图数据,可以是通过深度相机和三维重建算法建图得到地图空间数据、通过从bim(building information modeling,建筑信息模型)系统中导出转换得到的地图空间数据、通过人工标记得到的兴趣点数据,以及以上数据的组合得到的地图数据。应当理解的是,预设地图对应的场景应当与所建地图是同一场景,例如所建地图是移动机器人对a仓库进行建图所得,那么预设地图应当是通过其他建图方法对a仓库进行建图所得。预设坐标则是预设锚点在预设地图中的坐标,是以预设地图的坐标系为基准得到的坐标。
63.具体地,构建预设地图时已经将各个预设锚点在预设地图中的预设坐标进行预先存储了,各个预设锚点之间通过唯一的锚点id进行区分。因此,服务器可以直接从数据库中获取存储的预设锚点在预设地图中的预设坐标。
64.步骤s208,将各预设锚点的建图坐标与预设坐标进行映射,得到移动机器人的所建地图与预设地图的变换矩阵。
65.具体地,当得到预设锚点的建图坐标和预设坐标之后,通过映射具有相同锚点id的两个坐标得到所建地图和预设地图之间的变换矩阵。
66.在一个实施例中,步骤s208,包括:从各预设锚点中选取预设数量的预设描点作为候选锚点;分别将各候选锚点的建图坐标和预设坐标进行逆仿射变换,得到移动机器人的所建地图与预设地图的变换矩阵。
67.其中,预设数量是预先设定的数量阈值,可以根据实际情况进行设定,本实施例优选预设数量为三。
68.具体地,当所建地图和预设地图之间为仿射变换关系时,从各预设锚点中选择三个预设锚点作为候选锚点。选择的三个候选锚点在所建地图和预设地图中的六个坐标通过逆仿射变换算法求解得到变换矩阵。其中,建图坐标可以由齐次坐标pi1={xi1,yi1,1}表示,预设坐标可以由齐次坐标pi2={xi2,yi2,1}表示,而通过逆仿射变换得到的变换矩阵可以由ti=[{t01,t02,0},{t11,t12,0},{t21,t22,0}]表示。
[0069]
另外,当所建地图和预设地图之间不是仿射变换关系时,可以通过分别对所建地图和预设地图进行地图的划分,将所建地图和预设地图变成由子地图组合的方式,例如六角形或者矩形的形式。然后,对所建地图的子地图和预设地图的子地图进行逆仿射变换,得到各个对应两个子地图的变换矩阵。
[0070]
步骤s210,基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人,移动机器人移动至坐标转换后的移动目的对应的位置。
[0071]
具体地,当需要指示移动机器人进行移动时,服务器接收业务人员通过终端发送的移动目的坐标,该移动目的坐标是以预设坐标的坐标系为基准的坐标。然后,服务器通过获取移动机器人对应的变换矩阵,利用变换矩阵将属于预设地图的坐标系的移动目的坐标转换成属于所建地图的坐标系的移动目的坐标。最后,将转换后属于所建地图坐标系的移动目的坐标发送给移动机器人,移动机器人结合自身建图得到的所建地图和该移动目的坐标进行移动,到达移动目的坐标所指定的位置。
[0072]
上述机器人移动方法,根据获取到的移动机器人在自身所建地图中的坐标位置和在各坐标位置时相对预设锚点的距离值确定预设锚点在所建地图中的建图坐标之后,将建图坐标与预设锚点在预设地图的预设坐标进行映射得到所建地图和预设地图的变换矩阵,进而基于变换矩阵将移动目的进行坐标转换后发给移动机器人完成移动。该方法通过映射预设锚点的两个坐标位置实现了所建地图和预设地图的对接,而后基于对接得到的变换矩阵完成机器人的移动,避免了移动机器人只依据自身所建的地图进行移动,从而降低了建图误差和建图错误带来的影响,提高移动的精准性。
[0073]
在一个实施例中,辅助定位方法还可以采用拍摄二维码的方式,在本实施例中,二维码即为预设锚点。具体地,在移动机器人的行进过程中,通过移动机器人的摄像头对行进路程中的二维码进行图像拍摄,移动机器人拍摄二维码时在所建地图中的坐标位置加上固定偏移量即为被拍摄的二维码在所建地图的坐标,即二维码的建图坐标。
[0074]
在一个实施例中,如图4所示,步骤210,包括:
[0075]
步骤s402,接收移动指令,移动指令携带有机器编号以及第一移动目的坐标,第一移动目的坐标属于预设地图上的坐标。
[0076]
其中,移动指令是用于指示移动机器人移动的请求指令,机器编号是移动机器人的编号,通过机器编号可以指定需要移动的移动机器人。第一移动目的坐标是服务器接收的以预设地图的坐标系为基准的移动目的坐标。
[0077]
具体地,当需要是指示移动机器人进行移动时,业务人员向服务器发送携带有机器人编号和第一移动目的坐标的移动指令。
[0078]
步骤s404,根据机器编号获取对应移动机器人的变换矩阵。
[0079]
具体地,当服务器接收到移动指令之后,根据机器编号获取对应需要移动机器人的变换矩阵。因为在部署移动机器人时,每个机器人都会各自进行建图,所以各个移动机器人都与预设地图有对应的变换矩阵。因此,当利用变换矩阵对移动目的坐标进行坐标转换时,需要根据机器编号获取对应的变换矩阵。
[0080]
步骤s406,基于变换矩阵将第一移动目的坐标转换成第二移动目的坐标,第二移动目的坐标属于所建地图上的坐标。
[0081]
其中,第二移动目的坐标则是服务器将第一移动目的坐标进行坐标转换后的坐标,是以移动机器人的所建地图的坐标系为基准的移动目的坐标。
[0082]
具体地,当获取到变换矩阵和第一移动目的坐标之后,获取变换矩阵的逆矩阵。将变换矩阵的逆矩阵与第一移动坐标进行相乘,完成坐标转换得到第二移动目的坐标。
[0083]
步骤s408,将第二移动目的坐标发送给机器编号对应的移动机器人,机器编号对应的移动机器人移动至第二移动目的坐标对应的位置。
[0084]
具体的,当将属于预设地图的第一移动目的坐标转换成属于所建地图的第二移动
目的坐标之后,服务器将第二移动目的坐标发送给机器编号对应的移动机器人。当机器编号对应的移动机器人接收到第二移动目的坐标后,根据自身的所建地图移动至第二移动目的坐标对应的位置完成移动。
[0085]
在本实施例中,当指示移动机器人移动时,通过映射得到的变换矩阵将移动目的坐标从预设地图的坐标系下转换到所建地图的坐标系下,在确保机器人使用自建地图的同时降低机器人自建地图带来的误差和错误,提高移动的精准。
[0086]
在一个实施例中,机器人移动方法还包括:接收位置查询指令,位置查询指令携带有机器编号;根据机器编号获取对应移动机器人在所建地图中的第一当前坐标,以及获取机器编号对应移动机器人对应的变换矩阵;基于变换矩阵将第一当前坐标转换成第二当前坐标并在预设地图中显示第二当前坐标。
[0087]
具体地,当需要查询某个移动机器人当前的位置信息时,服务器响应从终端接收到的用于请求查询机器人当前位置的位置查询指令。根据位置查询指令中携带的机器编号确定需要查询位置的移动机器人,并向需要查询位置的移动机器人发送获取第一当前坐标的请求。第一当前坐标是指移动机器人根据自身所建地图为基准发送的当前自身所在位置的坐标。当计算设备接收到移动机器人反馈的第一当前坐标之后,根据机器编号获取需要查询位置的移动机器人对应的变换矩阵。然后,利用变换矩阵将第一当前坐标进行坐标转换得到第二当前坐标,并将第二当前坐标显示在预设地图中以便将位置查询结果反馈给业务人员。第二当前坐标时对第一当前坐标进行坐标转换得到的,以预设地图的坐标系为基准的移动机器人的当前坐标。
[0088]
在一个实施例中,基于变换矩阵将第一当前坐标转换成第二当前坐标为将得到的变换矩阵与第一当前坐标进行相乘,完成第一当前坐标的转换,得到第二当前坐标。
[0089]
在本实施例中,当指示查询移动机器人的位置时,通过映射得到的变换矩阵将查询到的当前坐标从所建地图的坐标系下转换到预设地图的坐标系下,在确保机器人使用自建地图的同时降低机器人自建地图带来的误差和错误,提高查询的精准性。
[0090]
应该理解的是,虽然图3-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3-4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0091]
在一个实施例中,如图5所示,提供了一种机器人移动装置,包括:数据获取模块502、确定模块504、坐标获取模块506、映射模块508和移动控制模块510,其中:
[0092]
数据获取模块502,用于获取移动机器人发送的移动机器人在所建地图的坐标位置、以及移动机器人在坐标位置时相对各预设锚点的距离值。
[0093]
确定模块504,用于根据移动机器人在所建地图的坐标位置、以及在坐标位置时相对各预设锚点的距离值,确定预设锚点在所建地图中的建图坐标。
[0094]
坐标获取模块506,用于获取预设锚点在预设地图中的坐标,得到预设锚点的预设坐标。
[0095]
映射模块508,用于将各预设锚点的建图坐标与预设坐标进行映射,得到移动机器
人的所建地图与预设地图的变换矩阵。
[0096]
移动控制模块510,用于基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人,移动机器人移动至坐标转换后移动目的对应的位置。
[0097]
在一个实施例中,映射模块508还用于从各预设锚点中选取预设数量的预设描点作为候选锚点;分别将各候选锚点的建图坐标和预设坐标进行逆仿射变换,得到移动机器人的所建地图与预设地图的变换矩阵。
[0098]
在一个实施例中,移动控制模块510还用于接收移动指令,移动指令携带有机器编号以及第一移动目的坐标,第一移动目的坐标属于预设地图上的坐标;根据机器编号获取对应移动机器人的变换矩阵;基于变换矩阵将第一移动目的坐标转换成第二移动目的坐标,第二移动目的坐标属于所建地图上的坐标;将第二移动目的坐标发送给机器编号对应的移动机器人,机器编号对应的移动机器人移动至第二移动目的坐标对应的位置。
[0099]
在一个实施例中,移动控制模块510还用于获取变换矩阵的逆矩阵;将变换矩阵的逆矩阵与第一移动坐标进行相乘,得到第二移动目的坐标。
[0100]
在一个实施例中,机器人移动装置还包括查询模块,用于接收位置查询指令,位置查询指令携带有机器编号;根据机器编号获取对应移动机器人在所建地图中的第一当前坐标,以及获取机器编号对应移动机器人对应的变换矩阵;基于变换矩阵将第一当前坐标转换成第二当前坐标并在预设地图中显示第二当前坐标。
[0101]
在一个实施例中,查询模块还用于将得到的变换矩阵与第一当前坐标进行相乘,得到第二当前坐标。
[0102]
在一个实施例中,确定模块504还用于获取固定数量的坐标位置,以及获取在各坐标位置时对应的距离值;基于各坐标位置和距离值进行三角定位,确定预设锚点的建图坐标。
[0103]
关于机器人移动装置的具体限定可以参见上文中对于机器人移动方法的限定,在此不再赘述。上述机器人移动装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0104]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储所建地图数据、预设地图数据、预设锚点的预设坐标以及各移动机器人的变换矩阵。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种机器人移动方法。
[0105]
本领域技术人员可以理解,图6中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0106]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
[0107]
获取移动机器人发送的移动机器人在所建地图的坐标位置、以及移动机器人在坐标位置时相对各预设锚点的距离值;
[0108]
根据移动机器人在所建地图的坐标位置、以及在坐标位置时相对各预设锚点的距离值,确定预设锚点在所建地图中的建图坐标;
[0109]
获取预设锚点在预设地图中的坐标,得到预设锚点的预设坐标;
[0110]
将各预设锚点的建图坐标与预设坐标进行映射,得到移动机器人的所建地图与预设地图的变换矩阵;
[0111]
基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人,移动机器人移动至坐标转换后移动目的对应的位置。
[0112]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:从各预设锚点中选取预设数量的预设描点作为候选锚点;分别将各候选锚点的建图坐标和预设坐标进行逆仿射变换,得到移动机器人的所建地图与预设地图的变换矩阵。
[0113]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:接收移动指令,移动指令携带有机器编号以及第一移动目的坐标,第一移动目的坐标属于预设地图上的坐标;根据机器编号获取对应移动机器人的变换矩阵;基于变换矩阵将第一移动目的坐标转换成第二移动目的坐标,第二移动目的坐标属于所建地图上的坐标;将第二移动目的坐标发送给机器编号对应的移动机器人,机器编号对应的移动机器人移动至第二移动目的坐标对应的位置。
[0114]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取变换矩阵的逆矩阵;将变换矩阵的逆矩阵与第一移动坐标进行相乘,得到第二移动目的坐标。
[0115]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:接收位置查询指令,位置查询指令携带有机器编号;根据机器编号获取对应移动机器人在所建地图中的第一当前坐标,以及获取机器编号对应移动机器人对应的变换矩阵;基于变换矩阵将第一当前坐标转换成第二当前坐标并在预设地图中显示第二当前坐标。
[0116]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:将得到的变换矩阵与第一当前坐标进行相乘,得到第二当前坐标。
[0117]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取固定数量的坐标位置,以及获取在各坐标位置时对应的距离值;基于各坐标位置和距离值进行三角定位,确定预设锚点的建图坐标。
[0118]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0119]
获取移动机器人发送的移动机器人在所建地图的坐标位置、以及移动机器人在坐标位置时相对各预设锚点的距离值;
[0120]
根据移动机器人在所建地图的坐标位置、以及在坐标位置时相对各预设锚点的距离值,确定预设锚点在所建地图中的建图坐标;
[0121]
获取预设锚点在预设地图中的坐标,得到预设锚点的预设坐标;
[0122]
将各预设锚点的建图坐标与预设坐标进行映射,得到移动机器人的所建地图与预设地图的变换矩阵;
[0123]
基于变换矩阵将移动机器人的移动目的进行坐标转换后发送给移动机器人,移动
机器人移动至坐标转换后移动目的对应的位置。
[0124]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:从各预设锚点中选取预设数量的预设描点作为候选锚点;分别将各候选锚点的建图坐标和预设坐标进行逆仿射变换,得到移动机器人的所建地图与预设地图的变换矩阵。
[0125]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收移动指令,移动指令携带有机器编号以及第一移动目的坐标,第一移动目的坐标属于预设地图上的坐标;根据机器编号获取对应移动机器人的变换矩阵;基于变换矩阵将第一移动目的坐标转换成第二移动目的坐标,第二移动目的坐标属于所建地图上的坐标;将第二移动目的坐标发送给机器编号对应的移动机器人,机器编号对应的移动机器人移动至第二移动目的坐标对应的位置。
[0126]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取变换矩阵的逆矩阵;将变换矩阵的逆矩阵与第一移动坐标进行相乘,得到第二移动目的坐标。
[0127]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收位置查询指令,位置查询指令携带有机器编号;根据机器编号获取对应移动机器人在所建地图中的第一当前坐标,以及获取机器编号对应移动机器人对应的变换矩阵;基于变换矩阵将第一当前坐标转换成第二当前坐标并在预设地图中显示第二当前坐标。
[0128]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将得到的变换矩阵与第一当前坐标进行相乘,得到第二当前坐标。
[0129]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取固定数量的坐标位置,以及获取在各坐标位置时对应的距离值;基于各坐标位置和距离值进行三角定位,确定预设锚点的建图坐标。
[0130]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。
[0131]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0132]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜