CN111158364B - 机器人重定位方法、装置及终端设备 - Google Patents
机器人重定位方法、装置及终端设备 Download PDFInfo
- Publication number
- CN111158364B CN111158364B CN201911391027.7A CN201911391027A CN111158364B CN 111158364 B CN111158364 B CN 111158364B CN 201911391027 A CN201911391027 A CN 201911391027A CN 111158364 B CN111158364 B CN 111158364B
- Authority
- CN
- China
- Prior art keywords
- robot
- positioning coordinates
- positioning
- repositioning
- moving
- 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
- 238000000034 method Methods 0.000 title claims abstract description 89
- 230000008569 process Effects 0.000 claims abstract description 44
- 238000004590 computer program Methods 0.000 claims description 24
- 238000003860 storage Methods 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011065 in-situ storage Methods 0.000 description 1
- 230000003993 interaction 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
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
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/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0238—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
- G05D1/024—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
-
- 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/0214—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
-
- 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/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- 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/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0242—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using non-visible light signals, e.g. IR or UV signals
-
- 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/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
-
- 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/0255—Control of position or course in two dimensions specially adapted to land vehicles using acoustic signals, e.g. ultra-sonic singals
-
- 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/0257—Control of position or course in two dimensions specially adapted to land vehicles using a radar
-
- 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/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
-
- 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/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
- G05D1/028—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using a RF signal
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Aviation & Aerospace Engineering (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Electromagnetism (AREA)
- Optics & Photonics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Manipulator (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本申请适用于定位技术领域,提供了一种机器人重定位方法、装置及终端设备,机器人重定位方法包括:控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,其中M≥2;基于M个定位坐标,建立机器人移动轨迹的直线模型;计算直线模型的斜率,并将斜率和M个定位坐标转换到地图坐标系中,确定机器人的位置信息和姿态信息。通过上述方法,重定位时能够实现对机器人位置信息和姿态信息的确定,提高了重定位的精准度。
Description
技术领域
本申请属于定位技术领域,尤其涉及一种机器人重定位方法、装置及终端设备。
背景技术
机器人重定位技术是指机器人在重启或位姿(位置信息和姿态信息)丢失时能够重新找到相对于地图中的位置信息和姿态信息(朝向角度),是移动机器人的一项关键基础技术,有着不可或缺的特点。
对于室内大场景,如机场、大型商场、火车站等,目前采用的激光重定位由于环境变化、激光传感器距离不够等问题极其容易失效,无法获得机器人的初始位置信息和姿态信息。采用UWB定位能够很好的解决激光传感器的不足,但是UWB只能够提供机器人在大场景中的位置信息,却无法确定机器人的姿态信息。
发明内容
本申请实施例提供了一种机器人重定位方法、装置及终端设备,可以解决现有重定位无法确定机器人姿态信息的问题。
第一方面,本申请实施例提供了一种机器人重定位方法,包括:
控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,其中M≥2;
基于M个所述定位坐标,建立所述机器人移动轨迹的直线模型;
计算所述直线模型的斜率,并将所述斜率和M个所述定位坐标转换到地图坐标系中,确定所述机器人的位置信息和姿态信息。
在第一方面的一种可能的实现方式中,所述控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,包括:
接收重定位指令;
根据所述重定位指令控制所述机器人直线移动,计算所述机器人的移动距离,并在移动过程中获取所述定位坐标,直至所述移动距离达到所述预设距离。
在第一方面的一种可能的实现方式中,所述控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,包括:
检测所述机器人前方是否有障碍物;
在所述机器人前方存在障碍物的情况下,控制所述机器人旋转预设角度,并对所述移动距离归零;
所述机器人旋转所述预设角度后,在前方不存在障碍物的情况下,控制所述机器人直线移动,并在移动过程中获取所述定位坐标。
在第一方面的一种可能的实现方式中,所述控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,还包括:
在所述机器人在同一位置旋转次数达到设定次数,且前方一直存在障碍物的情况下,发送干预指令至工作人员端。
在第一方面的一种可能的实现方式中,所述控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,包括:
在机器人移动过程中获取多个定位基站的定位数据;
对多个所述定位数据进行拟合,得到M个所述定位坐标。
在第一方面的一种可能的实现方式中,所述基于M个所述定位坐标,建立所述机器人移动轨迹的直线模型,包括:
在M个所述定位坐标中选取任意两个所述定位坐标建立直线方程;
计算剩余的所述定位坐标相对于所述直线方程的误差值,并统计所述误差值满足预设误差范围的所述定位坐标的个数;
将所述误差值满足预设误差范围的定位坐标个数最多的直线方程,作为所述机器人移动轨迹的直线模型。
在第一方面的一种可能的实现方式中,所述计算所述直线模型的斜率,并将所述斜率和M个所述定位坐标转换到地图坐标系中,确定所述机器人的位置信息和姿态信息,包括:
基于所述M个定位坐标在所述地图坐标系中的位置,确定所述机器人的移动轨迹和所述位置信息;
基于所述移动轨迹,确定所述机器人的移动方向;
基于所述斜率和所述移动方向,确定所述机器人的姿态信息。
第二方面,本申请实施例提供了一种机器人重定位装置,包括:
定位坐标获取模块,用于控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,其中M≥2;
直线模型创建模块,用于基于M个所述定位坐标,建立所述机器人移动轨迹的直线模型;
位姿信息获取模块,用于计算所述直线模型的斜率,并将所述斜率和M个所述定位坐标转换到地图坐标系中,确定所述机器人的位置信息和姿态信息。
第三方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中任一项所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的方法。
本申请实施例与现有技术相比存在的有益效果是:
本申请实施例,通过控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标;然后基于M个定位坐标,建立机器人移动轨迹的直线模型;最后计算直线模型的斜率,并将斜率和M个定位坐标转换到地图坐标系中,确定机器人的位置信息和姿态信息。通过上述方法,重定位时能够实现对机器人位置信息和姿态信息的确定,提高了重定位的精准度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的机器人重定位方法的流程示意图;
图2是本申请一实施例提供的机器人重定位方法的流程示意图;
图3是本申请一实施例提供的定位坐标获取方法的流程示意图;
图4是本申请一实施例提供的机器人重定位方法的流程示意图;
图5是本申请一实施例提供的机器人重定位方法的流程示意图;
图6是本申请一实施例提供的机器人重定位方法的流程示意图;
图7是本申请一实施例提供的机器人重定位方法的流程示意图;
图8是本申请一实施例提供的机器人重定位装置的结构示意图;
图9是本申请实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
对于室内大场景,如机场、大型商场、火车站等,目前采用的激光重定位由于环境变化、激光传感器距离不够等问题极其容易失效,无法获得机器人的初始位置信息和姿态信息。采用UWB定位能够很好的解决激光传感器的不足,但是UWB只能够提供机器人在大场景中的位置信息,却无法确定机器人的姿态信息。
基于上述问题,本申请实施例提供了一种机器人重定位方法,通过控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标;然后基于M个定位坐标,建立机器人移动轨迹的直线模型;最后计算直线模型的斜率,并将斜率和M个定位坐标转换到地图坐标系中,确定机器人的位置信息和姿态信息。通过上述方法,重定位时能够实现对机器人位置信息和姿态信息的确定,提高重定位的精准度。
图1示出了申请实施例提供的机器人重定位方法的流程示意图,作为示例而非限定,所述方法可以包括以下步骤:
S101,控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标。
其中,M为大于等于2个整数。
具体地,控制机器人直线移动预设距离,可以保证能够获得足够多的定位坐标,以实现后期对机器人位置信息和姿态信息的计算,机器人在移动过程中可以通过接收多个定位基站的定位数据,然后对定位数据进行拟合,得到定位坐标。
示例性的,参照图2,步骤S101具体可以包括:
S1011,接收重定位指令。
具体地,当机器人重启或者位姿信息(位置信息和姿态信息)丢失时,需要进行重定位,此时可以通过外部设备向机器人发送重定位指令,也可以机器人识别位姿信息丢失,自动生成重定位指令。
S1012,根据重定位指令控制机器人直线移动,计算机器人的移动距离,并在移动过程中获取定位坐标,直至移动距离达到预设距离。
具体地,根据步骤S1011中得到的重定位指令,控制机器人直线移动(可以是任意方向),移动过程中计算移动的距离,以方便判断机器人移动距离是否达到预设距离。同时在机器人移动过程中,可以不断的接收定位基站传送的定位数据,然后对定位数据进行拟合,得到机器人的定位坐标,当机器人移动距离达到预设距离时,即可以获取M个定位坐标,为后期计算机器人位姿信息提供数据。
示例性的,参见图3,步骤S101中定位坐标获取方法可以包括:
S1013,在机器人移动过程中获取多个定位基站的定位数据。
具体地,常见的室内定位技术有:Wi-Fi、蓝牙、红外线、超宽带、RFID、ZigBee和超声波。预先在室内设定的位置安装多个定位基站,机器人在移动过程中,多个定位基站分别测试与机器人之间的距离(即定位数据),然后通过对多个定位数据进行拟合,得到机器人的定位坐标。
S1014,对多个定位数据进行拟合,得到M个定位坐标。
具体地,当机器人处于一个位置时,通过步骤S10101得到多个定位数据,然后对多个定位数据进行拟合,得到机器人在该位置的定位坐标。机器人在移动过程中,可以获得多个位置对应的定位坐标。
机器人重定位需要直线移动一定的距离,当机器人在移动过程中,遇到前方有障碍物时,需要转换方向,重新移动一定的距离。因此在机器人重定位整个过程中需要不断的检测前方是否有障碍物的存在。
图4示出了申请实施例提供的机器人重定位方法的流程示意图,作为示例而非限定,所述方法可以包括以下步骤:
S1015,检测机器人前方是否有障碍物。
具体地,机器人可以通过激光、雷达、超声波或图像采集的方式检测是否有障碍物的存在。
S1016,在机器人前方存在障碍物的情况下,控制机器人旋转预设角度,并对移动距离归零。
具体地,当机器人前方存在障碍物时,不能够继续向前移动,此时无法获取足够的定位坐标计算机器人的位置信息和姿态信息。此时控制机器人旋转预设角度,避开前方的障碍物,同时将计算的移动距离进行清零,也需要将此前获得的定位坐标清除。
S1017,机器人旋转预设角度后,在前方不存在障碍物的情况下,控制机器人直线移动,并在移动过程中获取定位坐标。
具体地,当机器人经过旋转预设的角度后,前方没有障碍物时,则机器人直线移动,开始重新计算移动距离,同时开始重新获取定位坐标。
本申请的一个实施例中,在机器人在同一位置旋转次数达到设定次数,且前方一直存在障碍物的情况下,发送干预指令至工作人员端。
具体地,当机器人旋转预设角度后,前方仍然有障碍物,机器人会继续旋转预设角度。当机器人在同一个位置旋转预设次数时(可以设定机器人旋转达到预设次数时,旋转角度超过360度),若此时机器人前方仍有障碍物,则说明机器人周围均有障碍物,无法移动,此时发送干预指令至工作人员端,通知工作人员进行处理。
S102,基于M个定位坐标,建立机器人移动轨迹的直线模型。
具体地,通过步骤S101获得M个定位坐标,对M个定位坐标进行一系列的算法,得到机器人的移动轨迹,即直线模型。然后对直线模型进行分析可以得到机器人的位置信息和姿态信息。
示例性的,参照图5,步骤S102具体可以包括:
S1021,在M个定位坐标中选取任意两个定位坐标建立直线方程。
具体的,根据两点之间确定一条直线,在M个定位坐标中任意选取两个定位坐标建立一个直线方程。最终根据M个定位坐标可以建立个直线方程。
S1022,计算剩余的定位坐标相对于直线方程的误差值,并统计误差值满足预设误差范围的定位坐标的个数。
具体地,在步骤S1021得到的个直线方程中任选一个直线方程,去除构建该直线方程的两个定位坐标,将剩余的M-2个定位坐标分别代入到该方程中,通过满足预设误差范围的定位坐标的个数。
S1023,将误差值满足预设误差范围的定位坐标个数最多的直线方程,作为机器人移动轨迹的直线模型。
具体地,步骤S1022剩余的M-2个定位坐标中代入到对应的直线方程中,满足预设误差范围的定位坐标的个数越多,则说明该直线方程越贴合机器人实际的运动轨迹,因此选择定位坐标满足预设误差范围个数最多的方程建立直线模型,以使建立的直线模型贴合机器人实际的运动轨迹,提高机器人位置信息和姿态信息计算的准确性。
S103,计算直线模型的斜率,并将斜率和M个定位坐标转换到地图坐标系中,确定机器人的位置信息和姿态信息。
具体地,将M个定位坐标分别转换到地图坐标系中,可以得到机器人的坐标信息,即位置信息;将直线模型的斜率转换到地图坐标系中,可以得到机器人的角度朝向,并结合运动方向可以确定机器人的姿态信息。
示例性的,参照图6,步骤S103具体可以包括:
S1031,基于M个定位坐标在地图坐标系中的位置,确定机器人的移动轨迹和位置信息。
具体地,将M个定位坐标转换到地图坐标系中,转换成地图坐标系中对应的坐标信息,以此可以得到机器人的位置信息。
S1032,基于移动轨迹,确定机器人的移动方向。
具体地,根据地图坐标系中的M个坐标信息可以得到机器人的移动轨迹,通过移动轨迹可以得到机器人的移动方向。
S1033,基于斜率和移动方向,确定机器人的姿态信息。
具体地,将斜率转换到地图坐标系中,可以确定机器人的朝向角度,此时的朝向角度可以为有两个方向,此时结合机器人的移动方向,可以确定唯一的朝向角度,即得到机器人的姿态信息。
为了清楚说明机器人重定位方法的工作流程,下面以一个具体的实施例进行说明,具体的流程示意图参见图7所示。
首先接收到重定位指令,然后检测机器人前方是否有障碍物,当机器人前方不存在障碍物时,机器人直线移动,在移动过程中获取定位坐标,并判断机器人移动的距离是否达到预设距离,当机器人移动的距离没有达到预设距离时,则机器人继续直线移动并获取定位坐标;当机器人移动距离达到预设距离时,此时可以获得M个定位坐标,然后依据获得的M个定位坐标建立直线模型(直线模型具体建立过程参见上述步骤),最后计算直线模型的斜率,并将斜率和M个定位坐标转换到地图坐标系中,确定机器人的位置信息和姿态信息。
在机器人直线移动过程中,当检测到机器人前方存在障碍物时,机器人原地旋转预设角度,并判断机器人旋转的次数是否达到预设次数,当旋转次数达到预设次数时,则判定重定位失败,发送干预指令至工作人员端,通知工作人员;若机器人旋转的次数没有达到预设次数时,则继续检测机器人前方是否有障碍物。
通过以上流程,可以实现重定位时确定机器人的位置信息和姿态信息,提高了机器人定位的准确性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的机器人重定位方法,图8示出了本申请实施例提供的机器人重定位装置的结构示意图,为了便于说明,仅示出了与本申请实施例相关的部分。
参见图8,本申请实施例中的机器人重定位装置可以包括定位坐标获取模块81、直线模型创建模块82和位姿信息获取模块83。
其中,定位坐标获取模块81,用于控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,其中M≥2;
直线模型创建模块82,用于基于M个所述定位坐标,建立所述机器人移动轨迹的直线模型;
位姿信息获取模块83,用于计算所述直线模型的斜率,并将所述斜率和M个所述定位坐标转换到地图坐标系中,确定所述机器人的位置信息和姿态信息。
可选的,定位坐标获取模块81可以包括指令接收单元和控制单元。
其中,指令接收单元,用于接收重定位指令;
控制单元,根据所述重定位指令控制所述机器人直线移动,计算所述机器人的移动距离,并在移动过程中获取所述定位坐标,直至所述移动距离达到所述预设距离。
可选的,定位坐标获取模块81还可以包括检测单元、第一控制单元和第二控制单元。
其中,检测单元,用于检测所述机器人前方是否有障碍物;
第一控制单元,用于在所述机器人前方存在障碍物的情况下,控制所述机器人旋转预设角度,并对所述移动距离归零;
第二控制单元,用于所述机器人旋转所述预设角度后,在前方不存在障碍物的情况下,控制所述机器人直线移动,并在移动过程中获取所述定位坐标。
可选的,定位坐标获取模块81还可以包括干预指令发送单元。
其中,干预指令发送单元,用于在所述机器人在同一位置旋转次数达到设定次数,且前方一直存在障碍物的情况下,发送干预指令至工作人员端。
可选的,定位坐标获取模块81还可以包括定位数据获取单元和定位坐标确定单元。
其中,定位数据获取单元,用于在机器人移动过程中获取多个定位基站的定位数据;
定位坐标确定单元,用于对多个所述定位数据进行拟合,得到M个所述定位坐标。
可选的,直线模型创建模块82可以包括直线方程建立单元、统计单元和直线模型建立单元。
其中,直线方程建立单元,用于在M个所述定位坐标中选取任意两个所述定位坐标建立直线方程;
统计单元,用于计算剩余的所述定位坐标相对于所述直线方程的误差值,并统计所述误差值满足预设误差范围的所述定位坐标的个数;
直线模型建立单元,用于将所述误差值满足预设误差范围的定位坐标个数最多的直线方程,作为所述机器人移动轨迹的直线模型。
可选的,位姿信息获取模块83可以包括位置信息确定单元、移动方向确定单元和姿态信息确定单元。
其中,位置信息确定单元,用于基于所述M个定位坐标在所述地图坐标系中的位置,确定所述机器人的移动轨迹和所述位置信息;
移动方向确定单元,用于基于所述移动轨迹,确定所述机器人的移动方向;
姿态信息确定单元,用于基于所述斜率和所述移动方向,确定所述机器人的姿态信息。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
另外,图8所示的机器人重定位装置可以是内置于现有的终端设备内的软件单元、硬件单元、或软硬结合的单元,也可以作为独立的挂件集成到所述终端设备中,还可以作为独立的终端设备存在。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图9为本申请实施例提供的终端设备的结构示意图。如图9所示,该实施例的终端设备9可以包括:至少一个处理器90(图9中仅示出一个处理器90)、存储器91以及存储在所述存储器91中并可在所述至少一个处理器90上运行的计算机程序92,所述处理器90执行所述计算机程序92时实现上述任意各个方法实施例中的步骤,例如图1所示实施例中的步骤S101至步骤S103。或者,处理器90执行所述计算机程序92时实现上述各装置实施例中各模块/单元的功能,例如图8所示模块81至83的功能。
示例性的,所述计算机程序92可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器91中,并由所述处理器90执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序92指令段,该指令段用于描述所述计算机程序92在所述终端设备9中的执行过程。
所述终端设备9可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备9可包括,但不仅限于,处理器90、存储器91。本领域技术人员可以理解,图9仅仅是终端设备9的举例,并不构成对终端设备9的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器90可以是中央处理单元(Central Processing Unit,CPU),该处理器90还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器91在一些实施例中可以是所述终端设备9的内部存储单元,例如终端设备9的硬盘或内存。所述存储器91在另一些实施例中也可以是所述终端设备9的外部存储设备,例如所述终端设备9上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器91还可以既包括所述终端设备9的内部存储单元也包括外部存储设备。所述存储器91用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序92的程序代码等。所述存储器91还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序92,所述计算机程序92被处理器90执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序92来指令相关的硬件来完成,所述的计算机程序92可存储于一计算机可读存储介质中,该计算机程序92在被处理器90执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序92包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (8)
1.一种机器人重定位方法,其特征在于,包括:
控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,其中M≥2;
基于M个所述定位坐标,建立所述机器人移动轨迹的直线模型;
计算所述直线模型的斜率,并将所述斜率和M个所述定位坐标转换到地图坐标系中,确定所述机器人的位置信息和姿态信息;
所述控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,包括:
检测所述机器人前方是否有障碍物;
在所述机器人前方存在障碍物的情况下,控制所述机器人旋转预设角度,并对移动距离归零;
所述机器人旋转所述预设角度后,在前方不存在障碍物的情况下,控制所述机器人直线移动,并在移动过程中获取所述定位坐标;
所述控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,包括:
当机器人重启或者位置信息和姿态信息丢失时,接收重定位指令;
根据所述重定位指令控制所述机器人直线移动,计算所述机器人的移动距离,并在移动过程中获取所述定位坐标,直至所述移动距离达到所述预设距离。
2.根据权利要求1所述的机器人重定位方法,其特征在于,所述控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,还包括:
在所述机器人在同一位置旋转次数达到设定次数,且前方一直存在障碍物的情况下,发送干预指令至工作人员端。
3.根据权利要求1所述的机器人重定位方法,其特征在于,所述控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,包括:
在机器人移动过程中获取多个定位基站的定位数据;
对多个所述定位数据进行拟合,得到M个所述定位坐标。
4.根据权利要求1所述的机器人重定位方法,其特征在于,所述基于M个所述定位坐标,建立所述机器人移动轨迹的直线模型,包括:
在M个所述定位坐标中选取任意两个所述定位坐标建立直线方程;
计算剩余的所述定位坐标相对于所述直线方程的误差值,并统计所述误差值满足预设误差范围的所述定位坐标的个数;
将所述误差值满足预设误差范围的定位坐标个数最多的直线方程,作为所述机器人移动轨迹的直线模型。
5.根据权利要求1所述的机器人重定位方法,其特征在于,所述计算所述直线模型的斜率,并将所述斜率和M个所述定位坐标转换到地图坐标系中,确定所述机器人的位置信息和姿态信息,包括:
基于所述M个定位坐标在所述地图坐标系中的位置,确定所述机器人的移动轨迹和所述位置信息;
基于所述移动轨迹,确定所述机器人的移动方向;
基于所述斜率和所述移动方向,确定所述机器人的姿态信息。
6.一种机器人重定位装置,其特征在于,包括:
定位坐标获取模块,用于控制机器人直线移动预设距离,并在移动过程中获取M个定位坐标,其中M≥2;
直线模型创建模块,用于基于M个所述定位坐标,建立所述机器人移动轨迹的直线模型;
位姿信息获取模块,用于计算所述直线模型的斜率,并将所述斜率和M个所述定位坐标转换到地图坐标系中,确定所述机器人的位置信息和姿态信息;
定位坐标获取模块包括检测单元、第一控制单元和第二控制单元;
其中,检测单元,用于检测所述机器人前方是否有障碍物;
第一控制单元,用于在所述机器人前方存在障碍物的情况下,控制所述机器人旋转预设角度,并对移动距离归零;
第二控制单元,用于所述机器人旋转所述预设角度后,在前方不存在障碍物的情况下,控制所述机器人直线移动,并在移动过程中获取所述定位坐标;
定位坐标获取模块包括指令接收单元和控制单元;
其中,指令接收单元,用于当机器人重启或者位置信息和姿态信息丢失时,接收重定位指令;
控制单元,根据所述重定位指令控制所述机器人直线移动,计算所述机器人的移动距离,并在移动过程中获取所述定位坐标,直至所述移动距离达到所述预设距离。
7.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述的方法。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911391027.7A CN111158364B (zh) | 2019-12-30 | 2019-12-30 | 机器人重定位方法、装置及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911391027.7A CN111158364B (zh) | 2019-12-30 | 2019-12-30 | 机器人重定位方法、装置及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111158364A CN111158364A (zh) | 2020-05-15 |
CN111158364B true CN111158364B (zh) | 2024-02-09 |
Family
ID=70559373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911391027.7A Active CN111158364B (zh) | 2019-12-30 | 2019-12-30 | 机器人重定位方法、装置及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111158364B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113359769B (zh) * | 2021-07-06 | 2022-08-09 | 广东省科学院智能制造研究所 | 室内自主移动机器人复合导航方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108957512A (zh) * | 2017-05-26 | 2018-12-07 | 苏州宝时得电动工具有限公司 | 定位装置及方法以及自动行走设备 |
CN109085834A (zh) * | 2018-08-27 | 2018-12-25 | 珠海市微半导体有限公司 | 机器人检测直边的方法和清洁机器人筛选参考墙边的方法 |
CN109732593A (zh) * | 2018-12-28 | 2019-05-10 | 深圳市越疆科技有限公司 | 一种机器人的远端控制方法、装置及终端设备 |
CN110319834A (zh) * | 2018-03-30 | 2019-10-11 | 深圳市神州云海智能科技有限公司 | 一种室内机器人定位的方法及机器人 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109976324B (zh) * | 2017-12-27 | 2022-06-28 | 深圳市优必选科技有限公司 | 控制机器人充电的方法、机器人及计算机可读存储介质 |
-
2019
- 2019-12-30 CN CN201911391027.7A patent/CN111158364B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108957512A (zh) * | 2017-05-26 | 2018-12-07 | 苏州宝时得电动工具有限公司 | 定位装置及方法以及自动行走设备 |
CN110319834A (zh) * | 2018-03-30 | 2019-10-11 | 深圳市神州云海智能科技有限公司 | 一种室内机器人定位的方法及机器人 |
CN109085834A (zh) * | 2018-08-27 | 2018-12-25 | 珠海市微半导体有限公司 | 机器人检测直边的方法和清洁机器人筛选参考墙边的方法 |
CN109732593A (zh) * | 2018-12-28 | 2019-05-10 | 深圳市越疆科技有限公司 | 一种机器人的远端控制方法、装置及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111158364A (zh) | 2020-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11422261B2 (en) | Robot relocalization method and apparatus and robot using the same | |
US11002840B2 (en) | Multi-sensor calibration method, multi-sensor calibration device, computer device, medium and vehicle | |
US11372101B2 (en) | Method and apparatus for determining relative pose, device and medium | |
CN109976148B (zh) | 机器人运动路径规划方法、装置、存储介质及终端设备 | |
KR102032070B1 (ko) | 깊이 맵 샘플링을 위한 시스템 및 방법 | |
CN109116374B (zh) | 确定障碍物距离的方法、装置、设备及存储介质 | |
CN110471409B (zh) | 机器人巡检方法、装置、计算机可读存储介质及机器人 | |
US20190202067A1 (en) | Method and device for localizing robot and robot | |
US20200110173A1 (en) | Obstacle detection method and device | |
US11111785B2 (en) | Method and device for acquiring three-dimensional coordinates of ore based on mining process | |
CN111814752B (zh) | 室内定位实现方法、服务器、智能移动设备、存储介质 | |
CN108876857B (zh) | 无人驾驶车辆的定位方法、系统、设备及存储介质 | |
CN111381586A (zh) | 一种机器人及其移动控制方法和装置 | |
US20190025336A1 (en) | Absolute speed detector | |
CN111988524A (zh) | 一种无人机与摄像头协同避障方法、服务器及存储介质 | |
CN109814113B (zh) | 一种超声波雷达障碍物检测结果处理方法及系统 | |
CN112650300B (zh) | 一种无人机避障方法和装置 | |
US11034028B2 (en) | Pose determining method for mobile robot and apparatus and mobile robot thereof | |
CN114820749A (zh) | 无人车井下定位方法、系统、设备及介质 | |
CN111158364B (zh) | 机器人重定位方法、装置及终端设备 | |
CN112686951A (zh) | 用于确定机器人位置的方法、装置、终端及存储介质 | |
KR102383567B1 (ko) | 시각 정보 처리 기반의 위치 인식 방법 및 시스템 | |
CN113741446B (zh) | 一种机器人自主探索的方法、终端设备及存储介质 | |
CN113029167B (zh) | 一种地图数据处理方法、地图数据处理装置及机器人 | |
CN113601510A (zh) | 基于双目视觉的机器人移动控制方法、装置、系统及设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |