CN114815858B - 机器人自动充电方法、装置、电子设备及存储介质 - Google Patents

机器人自动充电方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN114815858B
CN114815858B CN202210749760.7A CN202210749760A CN114815858B CN 114815858 B CN114815858 B CN 114815858B CN 202210749760 A CN202210749760 A CN 202210749760A CN 114815858 B CN114815858 B CN 114815858B
Authority
CN
China
Prior art keywords
charging pile
mobile robot
point cloud
data
point
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
Application number
CN202210749760.7A
Other languages
English (en)
Other versions
CN114815858A (zh
Inventor
许金鹏
谢雄敦
温志庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ji Hua Laboratory
Original Assignee
Ji Hua Laboratory
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ji Hua Laboratory filed Critical Ji Hua Laboratory
Priority to CN202210749760.7A priority Critical patent/CN114815858B/zh
Publication of CN114815858A publication Critical patent/CN114815858A/zh
Application granted granted Critical
Publication of CN114815858B publication Critical patent/CN114815858B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0225Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving docking at a fixed facility, e.g. base station or loading bay
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J7/00Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
    • H02J7/00032Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries characterised by data exchange
    • H02J7/00034Charger exchanging data with an electronic device, i.e. telephone, whose internal battery is under charge
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J7/00Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
    • H02J7/0042Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries characterised by the mechanical construction
    • H02J7/0045Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries characterised by the mechanical construction concerning the insertion or the connection of the batteries

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Electromagnetism (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本申请属于机器人控制技术领域,公开了一种机器人自动充电方法、装置、电子设备及存储介质,通过获取充电桩的参考轮廓线点云模型和预设停泊点相对参考轮廓线点云模型的第一位姿数据;获取充电桩在基准坐标系下的实际轮廓线点云数据;通过匹配实际轮廓线点云数据和参考轮廓线点云模型,以得到充电桩在基准坐标系下的第二位姿数据;根据第二位姿数据和第一位姿数据计算预设停泊点在基准坐标系下的第三位姿数据;根据第三位姿数据,控制移动机器人朝预设停泊点移动;基于UWB定位方法,控制移动机器人运动以完成与充电桩的对接;从而,对于充电桩的位置不固定的情况,也能保证移动机器人快速准确地返回充电桩处完成对接进行充电。

Description

机器人自动充电方法、装置、电子设备及存储介质
技术领域
本申请涉及机器人控制技术领域,具体而言,涉及一种机器人自动充电方法、装置、电子设备及存储介质。
背景技术
目前,由移动机器人自主返回充电桩处进行充电的导航方法主要是针对固定式充电桩的,移动机器人在返回充电时,通过预先建立的包含充电桩点云数据的地图进行导航。然而,现有的一些充电桩是可移动的,这种充电桩的位置会发生变化,对于这种充电桩,传统的导航方法无法保证移动机器人能够快速准确地返回充电桩处完成对接进行充电。
发明内容
本申请的目的在于提供一种机器人自动充电方法、装置、电子设备及存储介质,对于充电桩的位置不固定的情况,也能保证移动机器人快速准确地返回充电桩处完成对接进行充电。
第一方面,本申请提供了一种机器人自动充电方法,用于控制移动机器人返回充电桩处进行充电,包括步骤:
A1.获取充电桩的参考轮廓线点云模型和预设停泊点相对所述参考轮廓线点云模型的第一位姿数据;
A2.获取所述充电桩在基准坐标系下的实际轮廓线点云数据;
A3.通过匹配所述实际轮廓线点云数据和所述参考轮廓线点云模型,以得到所述充电桩在基准坐标系下的第二位姿数据;
A4.根据所述第二位姿数据和所述第一位姿数据计算所述预设停泊点在基准坐标系下的第三位姿数据;
A5.根据所述第三位姿数据,控制所述移动机器人朝所述预设停泊点移动;
A6.基于UWB定位方法,控制移动机器人运动以完成与所述充电桩的对接。
该机器人自动充电方法,通过用充电桩的轮廓线上的点云数据与参考轮廓线点云模型进行匹配,以确定充电桩在基准坐标系下的第二位姿数据,与直接通过整个充电桩的点云数据进行匹配的方法相比,计算量更小,处理速度更快,可快速地得到充电桩的第二位姿数据,然后根据充电桩的第二位姿数据确定预设停泊点在基准坐标系下的第三位姿数据,控制移动机器人朝该预设停泊点运动后,再基于UWB定位方法控制移动机器人与充电桩进行对接,由于UWB定位方法的定位精度高,可是实现移动机器人与充电桩的准确对接;因此,由于是基于实时获取的充电桩在基准坐标系下的位姿数据对移动机器人的返回过程进行控制,对于充电桩的位置不固定的情况,也能保证移动机器人快速准确地返回充电桩处完成对接进行充电。
优选地,步骤A2包括:
A201.获取由移动机器人采集的所述充电桩在基准坐标系下的实时点云数据;
A202.从所述实时点云数据中提取所述充电桩的轮廓线上的点云数据,得到实际轮廓线点云数据。
优选地,步骤A201包括:
获取由所述移动机器人最新采集的多帧所述充电桩的在相机坐标系下的点云数据,作为多帧第一点云数据,并获取所述移动机器人在采集各所述第一点云数据时在基准坐标系下的第一坐标数据;
根据所述第一坐标数据,融合各所述第一点云数据,得到基准坐标系下的所述实时点云数据。
通过融合多帧点云数据得到实时点云数据,可提高实时点云数据准确性,从而有利于提高后续获取的充电桩在基准坐标系下的第二位姿数据的准确性。
优选地,步骤A202包括:
采用网格划分法从所述实时点云数据中提取所述充电桩的轮廓线上的点云数据,得到所述实际轮廓线点云数据。
优选地,步骤A4包括:
用所述第二位姿数据乘以所述第一位姿数据,得到所述第三位姿数据。
优选地,步骤A5包括:
根据所述充电桩在基准坐标系下的第二位姿数据,确定所述充电桩的避让区域;所述避让区域是以所述充电桩为中心并把所述充电桩完全包围在内的虚拟障碍区域;
根据所述避让区域和所述第三位姿数据,规划从所述移动机器人当前位置到所述预设停泊点的移动路径;
控制所述移动机器人沿所述移动路径移动。
通过设置避让区域,在进行路径规划时会绕开该避让区域,以避免移动机器人沿所述移动路径移动与充电桩发生碰撞。
优选地,步骤A6包括:
获取设置在所述移动机器人上的第二UWB定位传感器分别与设置在所述充电桩上的三个第一UWB定位传感器的距离,作为三个第一距离;
根据三个所述第一距离计算所述移动机器人从当前位置移动至所述预设停泊点所需的方向角和所需的移动距离;
根据所述方向角和所述移动距离控制所述移动机器人移动至所述预设停泊点;
调整所述移动机器人的朝向并控制所述移动机器人后退与所述充电桩对接。
第二方面,本申请提供了一种机器人自动充电装置,用于控制移动机器人返回充电桩处进行充电,包括:
第一获取模块,用于获取充电桩的参考轮廓线点云模型和预设停泊点相对所述参考轮廓线点云模型的第一位姿数据;
第二获取模块,用于获取所述充电桩在基准坐标系下的实际轮廓线点云数据;
匹配模块,用于通过匹配所述实际轮廓线点云数据和所述参考轮廓线点云模型,以得到所述充电桩在基准坐标系下的第二位姿数据;
第一计算模块,用于根据所述第二位姿数据和所述第一位姿数据计算所述预设停泊点在基准坐标系下的第三位姿数据;
第一控制模块,用于根据所述第三位姿数据,控制所述移动机器人朝所述预设停泊点移动;
对接模块,用于基于UWB定位方法,控制移动机器人运动以完成与所述充电桩的对接。
该机器人自动充电装置,通过用充电桩的轮廓线上的点云数据与参考轮廓线点云模型进行匹配,以确定充电桩在基准坐标系下的第二位姿数据,与直接通过整个充电桩的点云数据进行匹配的方式相比,计算量更小,处理速度更快,可快速地得到充电桩的第二位姿数据,然后根据充电桩的第二位姿数据确定预设停泊点在基准坐标系下的第三位姿数据,控制移动机器人朝该预设停泊点运动后,再基于UWB定位方法控制移动机器人与充电桩进行对接,由于UWB定位方法的定位精度高,可是实现移动机器人与充电桩的准确对接;因此,由于是基于实时获取的充电桩在基准坐标系下的位姿数据对移动机器人的返回过程进行控制,对于充电桩的位置不固定的情况,也能保证移动机器人快速准确地返回充电桩处完成对接进行充电。
第三方面,本申请提供了一种电子设备,包括处理器和存储器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时,运行如前文所述机器人自动充电方法中的步骤。
第四方面,一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如前文所述机器人自动充电方法中的步骤。
有益效果:
本申请提供的机器人自动充电方法、装置、电子设备及存储介质,通过获取充电桩的参考轮廓线点云模型和预设停泊点相对所述参考轮廓线点云模型的第一位姿数据;获取所述充电桩在基准坐标系下的实际轮廓线点云数据;通过匹配所述实际轮廓线点云数据和所述参考轮廓线点云模型,以得到所述充电桩在基准坐标系下的第二位姿数据;根据所述第二位姿数据和所述第一位姿数据计算所述预设停泊点在基准坐标系下的第三位姿数据;根据所述第三位姿数据,控制所述移动机器人朝所述预设停泊点移动;基于UWB定位方法,控制移动机器人运动以完成与所述充电桩的对接;从而,对于充电桩的位置不固定的情况,也能保证移动机器人快速准确地返回充电桩处完成对接进行充电。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请了解。
附图说明
图1为本申请实施例提供的机器人自动充电方法的流程图。
图2为本申请实施例提供的机器人自动充电装置的结构示意图。
图3为本申请实施例提供的电子设备的结构示意图。
图4为一种示例性的充电桩的立体图。
图5为图4中的充电桩的俯视图。
图6为图4中的充电桩的右视图。
图7为图4中的充电桩的左视图。
图8为图4中的充电桩的前视图。
图9为一种示例性的移动机器人的实际停止点与预设停泊点之间的相对位置的示意图。
图10为另一种示例性的移动机器人的实际停止点与预设停泊点之间的相对位置的示意图。
标号说明:1、第一获取模块;2、第二获取模块;3、匹配模块;4、第一计算模块;5、第一控制模块;6、对接模块;301、处理器;302、存储器;303、通信总线;90、箱体;91、半圆柱形凹槽;92、矩形槽;93、充电口;94、电轨;95、第一UWB定位传感器;96、矩形直槽;97、圆凹槽。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
请参照图1,图1是本申请一些实施例中的一种机器人自动充电方法,用于控制移动机器人返回充电桩处进行充电,包括步骤:
A1.获取充电桩的参考轮廓线点云模型和预设停泊点相对参考轮廓线点云模型的第一位姿数据;
A2.获取充电桩在基准坐标系下的实际轮廓线点云数据;
A3.通过匹配实际轮廓线点云数据和参考轮廓线点云模型,以得到充电桩在基准坐标系下的第二位姿数据;
A4.根据第二位姿数据和第一位姿数据计算预设停泊点在基准坐标系下的第三位姿数据;
A5.根据第三位姿数据,控制移动机器人朝预设停泊点移动;
A6.基于UWB定位方法,控制移动机器人运动以完成与充电桩的对接。
该机器人自动充电方法,通过用充电桩的轮廓线上的点云数据与参考轮廓线点云模型进行匹配,以确定充电桩在基准坐标系下的第二位姿数据,与直接通过整个充电桩的点云数据进行匹配的方法相比,计算量更小,处理速度更快,可快速地得到充电桩的第二位姿数据,然后根据充电桩的第二位姿数据确定预设停泊点在基准坐标系下的第三位姿数据,控制移动机器人朝该预设停泊点运动后,再基于UWB定位方法控制移动机器人与充电桩进行对接,由于UWB定位方法的定位精度高,可是实现移动机器人与充电桩的准确对接;因此,由于是基于实时获取的充电桩在基准坐标系下的位姿数据对移动机器人的返回过程进行控制,对于充电桩的位置不固定的情况,也能保证移动机器人快速准确地返回充电桩处完成对接进行充电。
其中,参考轮廓线点云模型通过以下方式得到:预先对该充电桩进行扫描和坐标转换得到充电桩坐标系下的总体点云数据后,从该总体点云数据中提取充电桩的轮廓线的点云数据,形成该参考轮廓线点云模型。该参考轮廓线点云模型可存储在本地数据库中,在控制移动机器人返回充电桩处进行充电时,可从本地数据库中加载该参考轮廓线点云模型。即,步骤A1包括:从本地数据库中加载充电桩的参考轮廓线点云模型。
其中,预设停泊点一般为位于充电桩的充电口正前方一定距离的位置点,其相对充电桩固定(即在充电桩坐标系下的位置固定),预设停泊点相对参考轮廓线点云模型的第一位姿数据实际上是指预设停泊点在充电桩坐标系下的位姿数据。其中,第一位姿数据包括第一位置数据和第一姿态角度数据,第一位置数据是指预设停泊点在充电桩坐标系下的位置数据,第一姿态角度数据是指移动机器人相对充电桩的姿态角度数据,对于预设停泊点位于充电桩的充电口正前方一定距离的情况,第一姿态角度数据一般为移动机器人的充电接口正对充电桩的充电口时的姿态角度数据。把预设停泊点设置在充电桩的充电口正前方,并要求移动机器人的充电接口正对充电桩的充电口,当移动机器人移动至预设停泊点并达到第一姿态角度数据要求时,更方便于后续通过UWB定位方法进行对接。
在本实施例中,预设停泊点一般为位于充电桩的充电口正前方第一预设距离的位置点。该第一预设距离可根据实际需要设置。实际上,预设停泊点不限于设置在充电桩的充电口正前方,该第一位姿数据可根据实际需要预先设置。
需要说明的是,为了方便轮廓线点云的匹配,优选地,充电桩的除底面以外的各侧面上需要有特征轮廓线,且各侧面上的特征轮廓线不相同(形状、尺寸、位置中的至少一项不相同),例如图4-8所示的充电桩,包括箱体90;箱体90的上部前侧设置有半圆柱形凹槽91,该半圆柱形凹槽91的曲面上间隔设置有多个矩形槽92;箱体90的前侧面设置有充电口93,该充电口93包括两根水平平行设置的电轨94;两根电轨94之间设置有三个第一UWB定位传感器95(该三个第一UWB定位传感器95均为UWB基站),三个第一UWB定位传感器95沿水平直线等间隔排布,且位于中间的一个第一UWB定位传感器95与充电口93的中心重合(即第一UWB定位传感器95位于两个电轨94中心的连线的中点处);箱体90的左侧面、右侧面和后侧面上各设置有至少一个矩形直槽96和至少一个圆凹槽97(图中没有画后侧面的矩形直槽96和圆凹槽97),且不同侧面上的矩形直槽96和圆凹槽97的数量、尺寸、位置中的至少一项不相同。对于该充电桩,其上表面的特征轮廓线包括半圆柱形凹槽91的顶部轮廓线和矩形槽92的顶部轮廓线组成的线条,其前侧面的特征轮廓线包括充电口93和第一UWB定位传感器95的轮廓线,其左侧面、右侧面和后侧面的特征轮廓线包括对应的矩形直槽96和圆凹槽97的轮廓线。
其中,充电桩的轮廓线是充电桩的面与面之间的交线,对于图4-8所示的充电桩,图中的实线即为其轮廓线(图中仅画出部分轮廓线),这些轮廓线中包括特征轮廓线。
具体地,步骤A2包括:
A201.获取由移动机器人采集的充电桩在基准坐标系下的实时点云数据;
A202.从实时点云数据中提取充电桩的轮廓线上的点云数据,得到实际轮廓线点云数据。
其中,可通过设置在移动机器人上的相机获取充电桩的点云数据。基准坐标系是固定不动的参考坐标系,例如为导航地图的地图坐标系、大地坐标系等。
例如,在一些实施方式中,可只采集一帧点云数据,并根据该帧点云数据得到充电桩在基准坐标系下的实时点云数据;从而,步骤A201包括:
获取由移动机器人最新采集的一帧充电桩的在相机坐标系下的点云数据(通过相机直接采集到的点云数据,是在相机坐标系下的点云数据),作为第一点云数据,并获取由移动机器人采集该第一点云数据时在基准坐标系下的第一坐标数据;
根据第一坐标数据和该第一点云数据,得到基准坐标系下的实时点云数据。
其中,可通过设置在移动机器人上的定位模块(如GPS模块、北斗模块、惯性测量模块、里程计等)获取移动机器人采集该第一点云数据时在基准坐标系下的第一坐标数据,也可通过现有的SLAM方法(即时定位与地图构建方法)获取移动机器人采集该第一点云数据时在基准坐标系下的第一坐标数据。其中,移动机器人上的定位模块与用于获取点云数据的相机预先进行同步操作,从而可通过点云数据的时间戳与定位模块采集的坐标数据的时间戳进行匹配,从而查找到移动机器人采集该第一点云数据时在基准坐标系下的第一坐标数据。
其中,相机坐标系与移动机器人的机器人坐标系之间的位置转换矩阵是可预先标定的,通过以下公式可把在相机坐标系下的第一点云数据转换为基准坐标系下的实时点云数据:
Figure 100002_DEST_PATH_IMAGE001
(1);
其中,
Figure 100002_DEST_PATH_IMAGE002
为基准坐标系下的实时点云数据,
Figure 100002_DEST_PATH_IMAGE003
为移动机器人在基准坐标系下的第一坐标数据,
Figure 100002_DEST_PATH_IMAGE004
为相机坐标系与移动机器人的机器人坐标系之间的位置转换矩阵,
Figure 100002_DEST_PATH_IMAGE005
为相机坐标系下的第一点云数据。
仅通过一帧点云数据得到基准坐标系下的实时点云数据,计算量较小,处理速度较快。
又例如,在另一些实施方式中,可采集多帧点云数据,通过多帧点云数据融合得到充电桩在基准坐标系下的实时点云数据;从而,步骤A201包括:
获取由移动机器人最新采集的多帧充电桩的在相机坐标系下的点云数据,作为多帧第一点云数据,并获取移动机器人在采集各第一点云数据时在基准坐标系下的第一坐标数据;
根据第一坐标数据,融合各第一点云数据,得到基准坐标系下的实时点云数据。
其中,每帧第一点云数据和对应的第一坐标数据的具体获取过程,可参考前文。
可先根据公式(1)计算得到各第一点云数据对应的实时点云数据,作为初步实时点云数据,再把各初步实时点云数据融合(可采用现有的融合方法进行融合,此处不对其进行限定)得到最后的实时点云数据。
通过融合多帧点云数据得到实时点云数据,可提高实时点云数据准确性,从而有利于提高后续获取的充电桩在基准坐标系下的第二位姿数据的准确性。
其中,可采用现有的轮廓线提取方法来提取充电桩的轮廓线上的点云数据,以得到实际轮廓线点云数据。或者,在一些实施方式中,步骤A202包括:
采用网格划分法从实时点云数据中提取充电桩的轮廓线上的点云数据,得到实际轮廓线点云数据。
具体地,采用网格划分法从实时点云数据中提取充电桩的轮廓线上的点云数据,得到实际轮廓线点云数据的步骤包括:
(1)网格划分即空心单元格填充。
首先,将实时点云数据的三维点集
Figure 100002_DEST_PATH_IMAGE006
通过坐标转换转化为(基准坐标系的)xy平面上的二维点集
Figure 100002_DEST_PATH_IMAGE007
,其中,
Figure 100002_DEST_PATH_IMAGE008
为第n个三维数据点的三维坐标数据(包括三个坐标值:
Figure 100002_DEST_PATH_IMAGE009
,为基准坐标系下的三个坐标值),
Figure 100002_DEST_PATH_IMAGE010
为第n个二维数据点的二维坐标数据(包括两个坐标值:
Figure 100002_DEST_PATH_IMAGE011
),n为实时点云数据中的数据点的个数。
然后,遍历二维点集的所有二维数据点,得到最大x坐标值
Figure 100002_DEST_PATH_IMAGE012
、最小x坐标值
Figure 100002_DEST_PATH_IMAGE013
、最大y坐标值
Figure 100002_DEST_PATH_IMAGE014
和最小y坐标值
Figure 100002_DEST_PATH_IMAGE015
,并根据以下公式计算网格的边长:
Figure DEST_PATH_IMAGE016
Figure DEST_PATH_IMAGE017
为网格的边长。
根据以下公式计算x轴和y轴方向上的网格数:
Figure DEST_PATH_IMAGE018
Figure DEST_PATH_IMAGE019
其中,
Figure DEST_PATH_IMAGE020
为x轴方向上的网格数,
Figure DEST_PATH_IMAGE021
为y轴方向上的网格数。
根据网格的边长、x轴和y轴方向上的网格数,对二维点集所处的平面图像(即实时点云数据图像投影到xy平面后得到的平面图像)进行网格划分,把每个网格内的二维数据点的二维坐标数据与相应网格单元(u,v)建立对应关系,其中,u为网格在x轴方向上的网格序号(
Figure DEST_PATH_IMAGE022
),v为网格在y轴方向上的网格序号(
Figure DEST_PATH_IMAGE023
)。
把内部没有二维数据点的网格归类为空孔网格,把内部有至少一个二维数据点的网格归类为实孔网格;并对孤立的空孔网格进行填充(即把孤立的空孔网格重新归类为实孔网格,孤立的空孔网格是指与该空孔网格相邻的网格均为实孔网格的情况)。由于平面内的点云分布不均匀,如果网格尺寸较小,可能出现孤立的空孔网格,而导致其周围的网格被误判为边界网格,因此需要对孤立的空孔网格进行填充,以避免部分二维数据点被误判为边界点。
(2)寻找粗边界。
针对每个实孔网格,统计其相邻的网格中的空孔网格的数量,若该数量不为零,则判定对应的实孔网格为边界网格,否则,判定对应的实孔网格为非边界网格;对于所有空孔网格,均判定为非边界网格。
(3)提取边界线。
提取每个边界网格中的二维数据点作为边界点,将所有的边界点按顺序连接形成初始边界线,并对初始边界线进行平滑处理。
(4)提取实际轮廓线点云数据。
属于同一段初始边界线上的边界点,可能全部是一段实际轮廓线上的点,也可能是分布在同一个侧面上的点;因此,提取各段初始边界线的边界点对应的三维数据点,从每段初始边界线对应的三维数据点中提取边缘点(例如,选定一段初始边界线作为扫略线,沿z轴方向进行步进扫略,每前进一步,从这些三维数据点中找出与扫略线距离在第一预设距离阈值之内的三维数据点,并以找出的三维数据点中相互距离最大的两个点为两个初始边缘点,从而得到多个初始缘点,依次连接相邻的缘点,得到初始边缘线,从选定的初始边界线对应的三维数据点中提取与初始边缘线的距离在第二预设距离阈值之内的三维数据点,得到选定的初始边界线对应的所有边缘点;其中,沿z轴方向扫略即沿z轴平移;针对每段初始边界线均重复上述过程;但不限于此),提取各边缘点的三维坐标数据得到实际轮廓线点云数据。
在实际应用中,步骤(1)中也可把三维点集转换为xz或yz平面上的二维点集(相应的计算公式中的x、y坐标值对应替换为x、z坐标值或y、z坐标值),进而步骤(4)中扫略线对应地沿y轴或x轴扫略。或者,循环执行上述步骤(1)-(4)三次,三次循环中的步骤(1)中分别把三维点集转换为xy、xz、yz平面上的二维点集,步骤(4)中扫略线对应地沿z轴、y轴、x轴扫略,然后整合三次循环得到的实际轮廓线点云数据,得到最终的实际轮廓线点云数据。
需要说明的是,若在获取充电桩在基准坐标系下的实际轮廓线点云数据的时刻与完成对接的时刻之间的时间段内,充电桩的位置有变动,则需要重新获取充电桩在基准坐标系下的实际轮廓线点云数据,并以重新引导移动机器人返回充电桩进行对接充电。为了避免需要频繁重复该过程,当移动机器人需要充电时,可向充电桩发送提醒信号,使充电桩停止移动,直到完成对接;从而在一些优选实施方式中,步骤A2之前,还包括步骤:
向充电桩发送提醒信号,使充电桩停止移动。
在一些优选实施方式中,步骤A3包括:
A301.用各实际轮廓线的第二点云数据和各参考特征轮廓线的第三点云数据进行匹配,以找出至少一个实际特征轮廓线的第二点云数据;其中,实际轮廓线是指实际轮廓线点云数据中的轮廓线,第二点云数据是指实际轮廓线点云数据中的点云数据(为基准坐标系下的点云数据),参考特征轮廓线是指参考轮廓线点云模型中的特征轮廓线,第三点云数据是指参考轮廓线点云模型中的点云数据(为充电桩坐标系下的点云数据),实际特征轮廓线是指实际轮廓线点云数据中的特征轮廓线;
A302.根据该至少一个实际特征轮廓线的第二点云数据和对应的参考特征轮廓线的第三点云数据,计算充电桩在基准坐标系下的第二位姿数据。
仅通过特征轮廓线的点云数据匹配以得到充电桩在基准坐标系下的第二位姿数据,与通过所有轮廓线的点云数据匹配以得到充电桩在基准坐标系下的第二位姿数据的方式相比,既可保证匹配的准确性,且计算量更小,处理速度更快。
其中,可采用现有的匹配算法对实际轮廓线的第二点云数据和参考特征轮廓线的第三点云数据进行匹配,此处不对具体的匹配方法进行限定。
其中,第二位姿数据包括第二坐标数据和第二姿态角度数据。可通过求解以下公式计算充电桩在基准坐标系下的第二坐标数据:
Figure DEST_PATH_IMAGE024
其中,
Figure DEST_PATH_IMAGE025
为第二坐标数据(即充电桩在基准坐标系下的坐标数据),
Figure DEST_PATH_IMAGE026
为实际特征轮廓线的第二点云数据,
Figure DEST_PATH_IMAGE027
对应的参考特征轮廓线的第三点云数据。可只以一个实际特征轮廓线的第二点云数据和对应的参考特征轮廓线的第三点云数据,通过该公式计算得到充电桩在基准坐标系下的第二坐标数据;也可先分别以多个实际特征轮廓线的第二点云数据和对应的参考特征轮廓线的第三点云数据,通过该公式计算得到充电桩在基准坐标系下的第二坐标数据,得到多个初步的第二坐标数据,再计算多个初步的第二坐标数据的平均值作为最后的第二坐标数据(以提高准确性)。
其中,若找到的实际特征轮廓线包括直线(例如矩形直槽96的一段边沿线),则计算该直线的实际方向向量(可用直线的两个端点的在基准坐标系下的坐标计算该实际方向向量),并获取对应的参考特征轮廓线(也为直线)的参考方向向量(可预先用该参考特征轮廓线的两个端点的在充电桩坐标系下的坐标计算该参考方向向量),再根据该实际方向向量和参考方向向量之间的欧拉角(具体计算方法为现有技术,此处不对其进行详述)得到充电桩在基准坐标系下的第二姿态角度数据。其中,可只以一个直线式的实际特征轮廓线通过上述方式计算充电桩在基准坐标系下的第二姿态角度数据(当找到的直线有多个,优选根据其中最长的直线进行计算);当找到多个直线式的实际特征轮廓线时,也可分别用各直线式的实际特征轮廓线通过上述方式计算充电桩在基准坐标系下的第二姿态角度数据,得到多个初步的第二姿态角度数据,再计算多个初步的第二姿态角度数据的平均值作为最后的第二姿态角度数据(以提高准确性)。
其中,若找到的实际特征轮廓线包括多个圆形轮廓线(例如圆凹槽97的边沿线),则可计算其中一个圆形轮廓线的圆心指向另一个圆形轮廓线的圆心的实际方向向量,并获取对应的两个参考特征轮廓线的圆心之间的参考方向向量,再根据该实际方向向量和参考方向向量之间的欧拉角得到充电桩在基准坐标系下的第二姿态角度数据。可以只根据两个圆形轮廓线采用上述方法得到充电桩在基准坐标系下的第二姿态角度数据(当找到的圆形轮廓线多于两个时,优选根据位于同一平面且圆心相距最远的两个圆形轮廓线进行计算);当找到的圆形轮廓线多于两个时,可基于不同组合(两两组合)的两个圆形轮廓线,分别采用上述方法计算充电桩在基准坐标系下的第二姿态角度数,得到多个初步的第二姿态角度数据,再计算多个初步的第二姿态角度数据的平均值作为最后的第二姿态角度数据(以提高准确性)。
具体地,步骤A4包括:
用第二位姿数据乘以第一位姿数据,得到第三位姿数据。
在获取预设停泊点在基准坐标系下的第三位姿数据之后,可根据移动机器人当前在基准坐标系下的位姿数据(可通过设置在移动机器人上的定位模块获取,也可通过现有的SLAM方法获取),规划从移动机器人当前位置到预设停泊点的移动路径,进而根据该移动路径控制移动机器人移动至预设停泊点。
在一些优选实施方式中,步骤A5包括:
A501.根据充电桩在基准坐标系下的第二位姿数据,确定充电桩的避让区域;避让区域是以充电桩为中心并把充电桩完全包围在内的虚拟障碍区域;
A502.根据避让区域和第三位姿数据,规划从移动机器人当前位置到预设停泊点的移动路径;
A503.控制移动机器人沿移动路径移动。
通过设置避让区域,在进行路径规划时会绕开该避让区域,以避免移动机器人沿移动路径移动与充电桩发生碰撞。
其中,避让区域的形状和尺寸可以根据实际需要设置,例如,为预设半径的圆形区域。一般地,需要保证移动机器人在该避让区域的边沿任意一点处的时候,移动机器人均不会与充电桩发生碰撞。
其中,规划的移动路径为避障路径,具体可采用现有的避障路径规划方法进行移动路径的规划,此处不对避障路径规划方法进行限定。
在实际应用中,当按照规划的移动路径控制移动机器人移动时,由于移动机器人的输出力矩误差、轮胎与地面的摩擦力误差等的影响,移动机器人最终到达的位置与预设停泊点之间一般具有偏差。此时,通过基于UWB定位方法,引导移动机器人运动以完成与充电桩的对接,可以避免这种偏差导致对接失败。为实现该引导方式,还需要在移动机器人上设置第二UWB定位传感器(为UWB信标),以与充电桩上的三个第一UWB定位传感器95配合测距。
在本实施例中,步骤A6包括:
A601.获取设置在移动机器人上的第二UWB定位传感器分别与设置在充电桩上的三个第一UWB定位传感器95的距离,作为三个第一距离;
A602.根据三个第一距离计算移动机器人从当前位置移动至预设停泊点所需的方向角和所需的移动距离;
A603.根据方向角和移动距离控制移动机器人移动至预设停泊点;
A604.调整移动机器人的朝向并控制移动机器人后退与充电桩对接。
例如,图9为一种示例性的移动机器人的实际停止点(即移动机器人沿移动路径移动后实际到达的点)与预设停泊点之间的相对位置的示意图,其中,A、B、C三个点分别为三个第一UWB定位传感器95的位置,D点为预设停泊点,E点为实际停止点;此时,三个第一距离分别为AE、BE和CE(可通过第二UWB定位传感器和各第一UWB定位传感器95直接测得,且测量精度较高),其中,AE大于CE,表示E点位于D点右侧,步骤A602包括:
通过求解以下公式计算移动机器人从当前位置移动至预设停泊点所需的移动距离:
Figure DEST_PATH_IMAGE028
其中,DE为移动机器人从当前位置移动至预设停泊点所需的移动距离,DB的长度等于第一预设距离;其中,
Figure DEST_PATH_IMAGE029
Figure DEST_PATH_IMAGE030
;其中BC的长度可预先测得。
其中,移动机器人从当前位置移动至预设停泊点所需的方向角用ED与X轴(X轴与AC平行且朝右为正方向,Y轴垂直于AC且背向充电桩的方向为正方向)的逆时针方向的夹角来表示,该夹角称为方向角,步骤A602包括:
通过以下公式计算移动机器人从当前位置移动至预设停泊点所需的方向角:
Figure DEST_PATH_IMAGE031
Figure DEST_PATH_IMAGE032
Figure DEST_PATH_IMAGE033
Figure DEST_PATH_IMAGE034
其中,
Figure DEST_PATH_IMAGE036
为所需的方向角,
Figure DEST_PATH_IMAGE037
为E点相对D点的X坐标增量,
Figure DEST_PATH_IMAGE038
为E点相对D点的Y坐标增量,AB和AC的长度可预先测得。
又例如,图10为另一种示例性的移动机器人的实际停止点与预设停泊点之间的相对位置的示意图,其中,A、B、C三个点分别为三个第一UWB定位传感器95的位置,D点为预设停泊点,E点为实际停止点;此时,三个第一距离分别为AE、BE和CE,其中,AE小于CE,表示E点位于D点左侧,步骤A602包括:
通过求解以下公式计算移动机器人从当前位置移动至预设停泊点所需的移动距离:
Figure 556988DEST_PATH_IMAGE028
其中,DE为移动机器人从当前位置移动至预设停泊点所需的移动距离,DB的长度等于第一预设距离;其中,
Figure DEST_PATH_IMAGE039
Figure 631385DEST_PATH_IMAGE030
;其中BC的长度可预先测得。
其中,移动机器人从当前位置移动至预设停泊点所需的方向角用ED与X轴(X轴与AC平行且朝右为正方向,Y轴垂直于AC且背向充电桩的方向为正方向)的逆时针方向的夹角来表示,该夹角称为方向角,步骤A602包括:
通过以下公式计算移动机器人从当前位置移动至预设停泊点所需的方向角:
Figure DEST_PATH_IMAGE040
Figure DEST_PATH_IMAGE041
Figure DEST_PATH_IMAGE042
Figure DEST_PATH_IMAGE043
其中,
Figure DEST_PATH_IMAGE036A
为所需的方向角,
Figure 814718DEST_PATH_IMAGE037
为E点相对D点的X坐标增量,
Figure 944348DEST_PATH_IMAGE038
为E点相对D点的Y坐标增量, AC的长度可预先测得。
步骤A603包括控制移动机器人按该所需的方向角对应的方向移动,且移动距离为该所需的移动距离。
步骤A604包括:
调整移动机器人的朝向,使移动机器人上的充电接口正对位于中间的第一UWB定位传感器95;
通过第二UWB定位传感器和位于中间的第一UWB定位传感器95获取移动机器人需后退的后退距离;
根据该后退距离控制移动机器人后退与充电桩对接。
其中,当移动机器人沿其充电接口所朝的方向移动时,称为后退。
其中,可使第二UWB定位传感器的朝向与移动机器人的充电接口的朝向相同(假设充电接口相对移动机器人朝正后方设置,则第二UWB定位传感器也朝正后方设置),且第二UWB定位传感器与该充电接口的中心在同一竖直平面内。从而,可根据第二UWB定位传感器与位于中间的第一UWB定位传感器95之间的信号强弱来进行移动机器人的朝向的调整,使第二UWB定位传感器与位于中间的第一UWB定位传感器95之间的信号最强,以实现充电接口正对位于中间的第一UWB定位传感器95。也可根据移动机器人实时的在基准坐标系下的位姿数据和第一UWB定位传感器95在基准坐标系下的位姿数据(通过实际轮廓线点云数据提取),计算移动机器人需要转动的角度,然后控制移动机器人转动该角度,实现充电接口正对位于中间的第一UWB定位传感器95。但调整移动机器人的朝向,使移动机器人上的充电接口正对位于中间的第一UWB定位传感器95的具体方式不限于此。
其中,可获取第二UWB定位传感器和位于中间的第一UWB定位传感器95之间的距离(直接通过该两个UWB定位传感器测得),然后用该距离减去根据移动机器人上的充电接口与第二UWB定位传感器在前后方向上的相对距离(可预先测得),即得到后退距离。
由上可知,该机器人自动充电方法,通过获取充电桩的参考轮廓线点云模型和预设停泊点相对参考轮廓线点云模型的第一位姿数据;获取充电桩在基准坐标系下的实际轮廓线点云数据;通过匹配实际轮廓线点云数据和参考轮廓线点云模型,以得到充电桩在基准坐标系下的第二位姿数据;根据第二位姿数据和第一位姿数据计算预设停泊点在基准坐标系下的第三位姿数据;根据第三位姿数据,控制移动机器人朝预设停泊点移动;基于UWB定位方法,控制移动机器人运动以完成与充电桩的对接;从而,对于充电桩的位置不固定的情况,也能保证移动机器人快速准确地返回充电桩处完成对接进行充电。
请参考图2,本申请提供了一种机器人自动充电装置,用于控制移动机器人返回充电桩处进行充电,包括:
第一获取模块1,用于获取充电桩的参考轮廓线点云模型和预设停泊点相对参考轮廓线点云模型的第一位姿数据;
第二获取模块2,用于获取充电桩在基准坐标系下的实际轮廓线点云数据;
匹配模块3,用于通过匹配实际轮廓线点云数据和参考轮廓线点云模型,以得到充电桩在基准坐标系下的第二位姿数据;
第一计算模块4,用于根据第二位姿数据和第一位姿数据计算预设停泊点在基准坐标系下的第三位姿数据;
第一控制模块5,用于根据第三位姿数据,控制移动机器人朝预设停泊点移动;
对接模块6,用于基于UWB定位方法,控制移动机器人运动以完成与充电桩的对接。
该机器人自动充电装置,通过用充电桩的轮廓线上的点云数据与参考轮廓线点云模型进行匹配,以确定充电桩在基准坐标系下的第二位姿数据,与直接通过整个充电桩的点云数据进行匹配的方式相比,计算量更小,处理速度更快,可快速地得到充电桩的第二位姿数据,然后根据充电桩的第二位姿数据确定预设停泊点在基准坐标系下的第三位姿数据,控制移动机器人朝该预设停泊点运动后,再基于UWB定位方法控制移动机器人与充电桩进行对接,由于UWB定位方法的定位精度高,可是实现移动机器人与充电桩的准确对接;因此,由于是基于实时获取的充电桩在基准坐标系下的位姿数据对移动机器人的返回过程进行控制,对于充电桩的位置不固定的情况,也能保证移动机器人快速准确地返回充电桩处完成对接进行充电。
其中,参考轮廓线点云模型通过以下方式得到:预先对该充电桩进行扫描和坐标转换得到充电桩坐标系下的总体点云数据后,从该总体点云数据中提取充电桩的轮廓线的点云数据,形成该参考轮廓线点云模型。该参考轮廓线点云模型可存储在本地数据库中,在控制移动机器人返回充电桩处进行充电时,可从本地数据库中加载该参考轮廓线点云模型。即,第一获取模块1用于在获取充电桩的参考轮廓线点云模型的时候,执行:从本地数据库中加载充电桩的参考轮廓线点云模型。
其中,预设停泊点一般为位于充电桩的充电口正前方一定距离的位置点,其相对充电桩固定(即在充电桩坐标系下的位置固定),预设停泊点相对参考轮廓线点云模型的第一位姿数据实际上是指预设停泊点在充电桩坐标系下的位姿数据。其中,第一位姿数据包括第一位置数据和第一姿态角度数据,第一位置数据是指预设停泊点在充电桩坐标系下的位置数据,第一姿态角度数据是指移动机器人相对充电桩的姿态角度数据,对于预设停泊点位于充电桩的充电口正前方一定距离的情况,第一姿态角度数据一般为移动机器人的充电接口正对充电桩的充电口时的姿态角度数据。把预设停泊点设置在充电桩的充电口正前方,并要求移动机器人的充电接口正对充电桩的充电口,当移动机器人移动至预设停泊点并达到第一姿态角度数据要求时,更方便于后续通过UWB定位方法进行对接。
在本实施例中,预设停泊点一般为位于充电桩的充电口正前方第一预设距离的位置点。该第一预设距离可根据实际需要设置。实际上,预设停泊点不限于设置在充电桩的充电口正前方,该第一位姿数据可根据实际需要预先设置。
需要说明的是,为了方便轮廓线点云的匹配,优选地,充电桩的除底面以外的各侧面上需要有特征轮廓线,且各侧面上的特征轮廓线不相同(形状、尺寸、位置中的至少一项不相同),例如图4-8所示的充电桩,包括箱体90;箱体90的上部前侧设置有半圆柱形凹槽91,该半圆柱形凹槽91的曲面上间隔设置有多个矩形槽92;箱体90的前侧面设置有充电口93,该充电口93包括两根水平平行设置的电轨94;两根电轨94之间设置有三个第一UWB定位传感器95(该三个第一UWB定位传感器95均为UWB基站),三个第一UWB定位传感器95沿水平直线等间隔排布,且位于中间的一个第一UWB定位传感器95与充电口93的中心重合(即第一UWB定位传感器95位于两个电轨94中心的连线的中点处);箱体90的左侧面、右侧面和后侧面上各设置有至少一个矩形直槽96和至少一个圆凹槽97(图中没有画后侧面的矩形直槽96和圆凹槽97),且不同侧面上的矩形直槽96和圆凹槽97的数量、尺寸、位置中的至少一项不相同。对于该充电桩,其上表面的特征轮廓线包括半圆柱形凹槽91的顶部轮廓线和矩形槽92的顶部轮廓线组成的线条,其前侧面的特征轮廓线包括充电口93和第一UWB定位传感器95的轮廓线,其左侧面、右侧面和后侧面的特征轮廓线包括对应的矩形直槽96和圆凹槽97的轮廓线。
其中,充电桩的轮廓线是充电桩的面与面之间的交线,对于图4-8所示的充电桩,图中的实线即为其轮廓线(图中仅画出部分轮廓线),这些轮廓线中包括特征轮廓线。
具体地,第二获取模块2用于在获取充电桩在基准坐标系下的实际轮廓线点云数据的时候,执行:
获取由移动机器人采集的充电桩在基准坐标系下的实时点云数据;
从实时点云数据中提取充电桩的轮廓线上的点云数据,得到实际轮廓线点云数据。
其中,可通过设置在移动机器人上的相机获取充电桩的点云数据。基准坐标系是固定不动的参考坐标系,例如为导航地图的地图坐标系、大地坐标系等。
例如,在一些实施方式中,可只采集一帧点云数据,并根据该帧点云数据得到充电桩在基准坐标系下的实时点云数据;从而,第二获取模块2在获取由移动机器人采集的充电桩在基准坐标系下的实时点云数据的时候,执行:
获取由移动机器人最新采集的一帧充电桩的在相机坐标系下的点云数据(通过相机直接采集到的点云数据,是在相机坐标系下的点云数据),作为第一点云数据,并获取由移动机器人采集该第一点云数据时在基准坐标系下的第一坐标数据;
根据第一坐标数据和该第一点云数据,得到基准坐标系下的实时点云数据。
其中,可通过设置在移动机器人上的定位模块(如GPS模块、北斗模块、惯性测量模块、里程计等)获取移动机器人采集该第一点云数据时在基准坐标系下的第一坐标数据,也可通过现有的SLAM方法(即时定位与地图构建方法)获取移动机器人采集该第一点云数据时在基准坐标系下的第一坐标数据。其中,移动机器人上的定位模块与用于获取点云数据的相机预先进行同步操作,从而可通过点云数据的时间戳与定位模块采集的坐标数据的时间戳进行匹配,从而查找到移动机器人采集该第一点云数据时在基准坐标系下的第一坐标数据。
其中,相机坐标系与移动机器人的机器人坐标系之间的位置转换矩阵是可预先标定的,通过以下公式可把在相机坐标系下的第一点云数据转换为基准坐标系下的实时点云数据:
Figure 961982DEST_PATH_IMAGE001
(1);
其中,
Figure 4019DEST_PATH_IMAGE002
为基准坐标系下的实时点云数据,
Figure 739893DEST_PATH_IMAGE003
为移动机器人在基准坐标系下的第一坐标数据,
Figure 407635DEST_PATH_IMAGE004
为相机坐标系与移动机器人的机器人坐标系之间的位置转换矩阵,
Figure 545355DEST_PATH_IMAGE005
为相机坐标系下的第一点云数据。
仅通过一帧点云数据得到基准坐标系下的实时点云数据,计算量较小,处理速度较快。
又例如,在另一些实施方式中,可采集多帧点云数据,通过多帧点云数据融合得到充电桩在基准坐标系下的实时点云数据;从而,第二获取模块2在获取由移动机器人采集的充电桩在基准坐标系下的实时点云数据的时候,执行:
获取由移动机器人最新采集的多帧充电桩的在相机坐标系下的点云数据,作为多帧第一点云数据,并获取移动机器人在采集各第一点云数据时在基准坐标系下的第一坐标数据;
根据第一坐标数据,融合各第一点云数据,得到基准坐标系下的实时点云数据。
其中,每帧第一点云数据和对应的第一坐标数据的具体获取过程,可参考前文。
可先根据公式(1)计算得到各第一点云数据对应的实时点云数据,作为初步实时点云数据,再把各初步实时点云数据融合(可采用现有的融合方法进行融合,此处不对其进行限定)得到最后的实时点云数据。
通过融合多帧点云数据得到实时点云数据,可提高实时点云数据准确性,从而有利于提高后续获取的充电桩在基准坐标系下的第二位姿数据的准确性。
其中,可采用现有的轮廓线提取方法来提取充电桩的轮廓线上的点云数据,以得到实际轮廓线点云数据。或者,在一些实施方式中,第二获取模块2在从实时点云数据中提取充电桩的轮廓线上的点云数据,得到实际轮廓线点云数据的时候,执行:
采用网格划分法从实时点云数据中提取充电桩的轮廓线上的点云数据,得到实际轮廓线点云数据。
具体地,采用网格划分法从实时点云数据中提取充电桩的轮廓线上的点云数据,得到实际轮廓线点云数据,具体包括:
(1)网格划分即空心单元格填充。
首先,将实时点云数据的三维点集
Figure 256828DEST_PATH_IMAGE006
通过坐标转换转化为(基准坐标系的)xy平面上的二维点集
Figure 745579DEST_PATH_IMAGE007
,其中,
Figure 951432DEST_PATH_IMAGE008
为第n个三维数据点的三维坐标数据(包括三个坐标值:
Figure 943659DEST_PATH_IMAGE009
,为基准坐标系下的三个坐标值),
Figure 590147DEST_PATH_IMAGE010
为第n个二维数据点的二维坐标数据(包括两个坐标值:
Figure 300614DEST_PATH_IMAGE011
),n为实时点云数据中的数据点的个数。
然后,遍历二维点集的所有二维数据点,得到最大x坐标值
Figure 44580DEST_PATH_IMAGE012
、最小x坐标值
Figure 609422DEST_PATH_IMAGE013
、最大y坐标值
Figure 413430DEST_PATH_IMAGE014
和最小y坐标值
Figure 611193DEST_PATH_IMAGE015
,并根据以下公式计算网格的边长:
Figure 424428DEST_PATH_IMAGE016
Figure 141980DEST_PATH_IMAGE017
为网格的边长。
根据以下公式计算x轴和y轴方向上的网格数:
Figure 382468DEST_PATH_IMAGE018
Figure 801948DEST_PATH_IMAGE019
其中,
Figure 605825DEST_PATH_IMAGE020
为x轴方向上的网格数,
Figure 427150DEST_PATH_IMAGE021
为y轴方向上的网格数。
根据网格的边长、x轴和y轴方向上的网格数,对二维点集所处的平面图像(即实时点云数据图像投影到xy平面后得到的平面图像)进行网格划分,把每个网格内的二维数据点的二维坐标数据与相应网格单元(u,v)建立对应关系,其中,u为网格在x轴方向上的网格序号(
Figure 838540DEST_PATH_IMAGE022
),v为网格在y轴方向上的网格序号(
Figure 745316DEST_PATH_IMAGE023
)。
把内部没有二维数据点的网格归类为空孔网格,把内部有至少一个二维数据点的网格归类为实孔网格;并对孤立的空孔网格进行填充(即把孤立的空孔网格重新归类为实孔网格,孤立的空孔网格是指与该空孔网格相邻的网格均为实孔网格的情况)。由于平面内的点云分布不均匀,如果网格尺寸较小,可能出现孤立的空孔网格,而导致其周围的网格被误判为边界网格,因此需要对孤立的空孔网格进行填充,以避免部分二维数据点被误判为边界点。
(2)寻找粗边界。
针对每个实孔网格,统计其相邻的网格中的空孔网格的数量,若该数量不为零,则判定对应的实孔网格为边界网格,否则,判定对应的实孔网格为非边界网格;对于所有空孔网格,均判定为非边界网格。
(3)提取边界线。
提取每个边界网格中的二维数据点作为边界点,将所有的边界点按顺序连接形成初始边界线,并对初始边界线进行平滑处理。
(4)提取实际轮廓线点云数据。
属于同一段初始边界线上的边界点,可能是一段实际轮廓线上的点,也可能是同一个侧面上的点;因此,提取各段初始边界线的边界点对应的三维数据点,从每段初始边界线对应的三维数据点中提取边缘点(例如,选定的一段初始边界线作为扫略线,沿z轴方向进行步进扫略,每前进一步,从这些三维数据点中找出与扫略线距离在第一预设距离阈值之内的三维数据点,并以找出的三维数据点中相互距离最大的两个点为两个初始边缘点,从而得到多个初始缘点,依次连接相邻的缘点,得到初始边缘线,从选定的初始边界线对应的三维数据点中提取与初始边缘线的距离在第二预设距离阈值之内的三维数据点,得到选定的初始边界线对应的所有边缘点;但不限于此),提取各边缘点的三维坐标数据得到实际轮廓线点云数据。需要说明的是,若在获取充电桩在基准坐标系下的实际轮廓线点云数据的时刻与完成对接的时刻之间的时间段内,充电桩的位置有变动,则需要重新获取充电桩在基准坐标系下的实际轮廓线点云数据,并以重新引导移动机器人返回充电桩进行对接充电。为了避免需要频繁重复该过程,当移动机器人需要充电时,可向充电桩发送提醒信号,使充电桩停止移动,直到完成对接;从而在一些优选实施方式中,该机器人自动充电装置还包括:
提醒模块,用于向充电桩发送提醒信号,使充电桩停止移动。
在一些优选实施方式中,匹配模块3用于在通过匹配实际轮廓线点云数据和参考轮廓线点云模型,以得到充电桩在基准坐标系下的第二位姿数据的时候,执行:
用各实际轮廓线的第二点云数据和各参考特征轮廓线的第三点云数据进行匹配,以找出至少一个实际特征轮廓线的第二点云数据;其中,实际轮廓线是指实际轮廓线点云数据中的轮廓线,第二点云数据是指实际轮廓线点云数据中的点云数据(为基准坐标系下的点云数据),参考特征轮廓线是指参考轮廓线点云模型中的特征轮廓线,第三点云数据是指参考轮廓线点云模型中的点云数据(为充电桩坐标系下的点云数据),实际特征轮廓线是指实际轮廓线点云数据中的特征轮廓线;
根据该至少一个实际特征轮廓线的第二点云数据和对应的参考特征轮廓线的第三点云数据,计算充电桩在基准坐标系下的第二位姿数据。
仅通过特征轮廓线的点云数据匹配以得到充电桩在基准坐标系下的第二位姿数据,与通过所有轮廓线的点云数据匹配以得到充电桩在基准坐标系下的第二位姿数据的方式相比,既可保证匹配的准确性,且计算量更小,处理速度更快。
其中,可采用现有的匹配算法对实际轮廓线的第二点云数据和参考特征轮廓线的第三点云数据进行匹配,此处不对具体的匹配方法进行限定。
其中,第二位姿数据包括第二坐标数据和第二姿态角度数据。可通过求解以下公式计算充电桩在基准坐标系下的第二坐标数据:
Figure 648157DEST_PATH_IMAGE024
其中,
Figure 792830DEST_PATH_IMAGE025
为第二坐标数据(即充电桩在基准坐标系下的坐标数据),
Figure 375121DEST_PATH_IMAGE026
为实际特征轮廓线的第二点云数据,
Figure 18461DEST_PATH_IMAGE027
对应的参考特征轮廓线的第三点云数据。可只以一个实际特征轮廓线的第二点云数据和对应的参考特征轮廓线的第三点云数据,通过该公式计算得到充电桩在基准坐标系下的第二坐标数据;也可先分别以多个实际特征轮廓线的第二点云数据和对应的参考特征轮廓线的第三点云数据,通过该公式计算得到充电桩在基准坐标系下的第二坐标数据,得到多个初步的第二坐标数据,再计算多个初步的第二坐标数据的平均值作为最后的第二坐标数据(以提高准确性)。
其中,若找到的实际特征轮廓线包括直线(例如矩形直槽96的一段边沿线),则计算该直线的实际方向向量(可用直线的两个端点的在基准坐标系下的坐标计算该实际方向向量),并获取对应的参考特征轮廓线(也为直线)的参考方向向量(可预先用该参考特征轮廓线的两个端点的在充电桩坐标系下的坐标计算该参考方向向量),再根据该实际方向向量和参考方向向量之间的欧拉角(具体计算方法为现有技术,此处不对其进行详述)得到充电桩在基准坐标系下的第二姿态角度数据。其中,可只以一个直线式的实际特征轮廓线通过上述方式计算充电桩在基准坐标系下的第二姿态角度数据(当找到的直线有多个,优选根据其中最长的直线进行计算);当找到多个直线式的实际特征轮廓线时,也可分别用各直线式的实际特征轮廓线通过上述方式计算充电桩在基准坐标系下的第二姿态角度数据,得到多个初步的第二姿态角度数据,再计算多个初步的第二姿态角度数据的平均值作为最后的第二姿态角度数据(以提高准确性)。
其中,若找到的实际特征轮廓线包括多个圆形轮廓线(例如圆凹槽97的边沿线),则可计算其中一个圆形轮廓线的圆心指向另一个圆形轮廓线的圆心的实际方向向量,并获取对应的两个参考特征轮廓线的圆心之间的参考方向向量,再根据该实际方向向量和参考方向向量之间的欧拉角得到充电桩在基准坐标系下的第二姿态角度数据。可以只根据两个圆形轮廓线采用上述方法得到充电桩在基准坐标系下的第二姿态角度数据(当找到的圆形轮廓线多于两个时,优选根据位于同一平面且圆心相距最远的两个圆形轮廓线进行计算);当找到的圆形轮廓线多于两个时,可基于不同组合(两两组合)的两个圆形轮廓线,分别采用上述方法计算充电桩在基准坐标系下的第二姿态角度数,得到多个初步的第二姿态角度数据,再计算多个初步的第二姿态角度数据的平均值作为最后的第二姿态角度数据(以提高准确性)。
具体地,第一计算模块4用于在根据第二位姿数据和第一位姿数据计算预设停泊点在基准坐标系下的第三位姿数据的时候,执行:
用第二位姿数据乘以第一位姿数据,得到第三位姿数据。
在获取预设停泊点在基准坐标系下的第三位姿数据之后,可根据移动机器人当前在基准坐标系下的位姿数据(可通过设置在移动机器人上的定位模块获取,也可通过现有的SLAM方法获取),规划从移动机器人当前位置到预设停泊点的移动路径,进而根据该移动路径控制移动机器人移动至预设停泊点。
在一些优选实施方式中,第一控制模块5用于在根据第三位姿数据,控制移动机器人朝预设停泊点移动的时候,执行:
根据充电桩在基准坐标系下的第二位姿数据,确定充电桩的避让区域;避让区域是以充电桩为中心并把充电桩完全包围在内的虚拟障碍区域;
根据避让区域和第三位姿数据,规划从移动机器人当前位置到预设停泊点的移动路径;
控制移动机器人沿移动路径移动。
通过设置避让区域,在进行路径规划时会绕开该避让区域,以避免移动机器人沿移动路径移动与充电桩发生碰撞。
其中,避让区域的形状和尺寸可以根据实际需要设置,例如,为预设半径的圆形区域。一般地,需要保证移动机器人在该避让区域的边沿任意一点处的时候,移动机器人均不会与充电桩发生碰撞。
其中,规划的移动路径为避障路径,具体可采用现有的避障路径规划方法进行移动路径的规划,此处不对避障路径规划方法进行限定。
在实际应用中,当按照规划的移动路径控制移动机器人移动时,由于移动机器人的输出力矩误差、轮胎与地面的摩擦力误差等的影响,移动机器人最终到达的位置与预设停泊点之间一般具有偏差。此时,通过基于UWB定位方法,引导移动机器人运动以完成与充电桩的对接,可以避免这种偏差导致对接失败。为实现该引导方式,还需要在移动机器人上设置第二UWB定位传感器(为UWB信标),以与充电桩上的三个第一UWB定位传感器95配合测距。
在本实施例中,对接模块6用于在基于UWB定位方法,控制移动机器人运动以完成与充电桩的对接的时候,执行:
获取设置在移动机器人上的第二UWB定位传感器分别与设置在充电桩上的三个第一UWB定位传感器95的距离,作为三个第一距离;
根据三个第一距离计算移动机器人从当前位置移动至预设停泊点所需的方向角和所需的移动距离;
根据方向角和移动距离控制移动机器人移动至预设停泊点;
调整移动机器人的朝向并控制移动机器人后退与充电桩对接。
例如,图9为一种示例性的移动机器人的实际停止点(即移动机器人沿移动路径移动后实际到达的点)与预设停泊点之间的相对位置的示意图,其中,A、B、C三个点分别为三个第一UWB定位传感器95的位置,D点为预设停泊点,E点为实际停止点;此时,三个第一距离分别为AE、BE和CE(可通过第二UWB定位传感器和各第一UWB定位传感器95直接测得,且测量精度较高),其中,AE大于CE,表示E点位于D点右侧,对接模块6在根据三个第一距离计算移动机器人从当前位置移动至预设停泊点所需的移动距离的时候,执行:
通过求解以下公式计算移动机器人从当前位置移动至预设停泊点所需的移动距离:
Figure 711611DEST_PATH_IMAGE028
其中,DE为移动机器人从当前位置移动至预设停泊点所需的移动距离,DB的长度等于第一预设距离;其中,
Figure 507528DEST_PATH_IMAGE029
Figure 260721DEST_PATH_IMAGE030
;其中BC的长度可预先测得。
其中,移动机器人从当前位置移动至预设停泊点所需的方向角用ED与X轴(X轴与AC平行且朝右为正方向,Y轴垂直于AC且背向充电桩的方向为正方向)的逆时针方向的夹角来表示,该夹角称为方向角,对接模块6在根据三个第一距离计算移动机器人从当前位置移动至预设停泊点所需的方向角的时候,执行:
通过以下公式计算移动机器人从当前位置移动至预设停泊点所需的方向角:
Figure 892822DEST_PATH_IMAGE031
Figure 779875DEST_PATH_IMAGE032
Figure 227037DEST_PATH_IMAGE033
Figure 885551DEST_PATH_IMAGE034
其中,
Figure DEST_PATH_IMAGE036AA
为所需的方向角,
Figure 939702DEST_PATH_IMAGE037
为E点相对D点的X坐标增量,
Figure 974654DEST_PATH_IMAGE038
为E点相对D点的Y坐标增量,AB和AC的长度可预先测得。
又例如,图10为另一种示例性的移动机器人的实际停止点与预设停泊点之间的相对位置的示意图,其中,A、B、C三个点分别为三个第一UWB定位传感器95的位置,D点为预设停泊点,E点为实际停止点;此时,三个第一距离分别为AE、BE和CE,其中,AE小于CE,表示E点位于D点左侧,对接模块6在根据三个第一距离计算移动机器人从当前位置移动至预设停泊点所需的移动距离的时候,执行:
通过求解以下公式计算移动机器人从当前位置移动至预设停泊点所需的移动距离:
Figure 745164DEST_PATH_IMAGE028
其中,DE为移动机器人从当前位置移动至预设停泊点所需的移动距离,DB的长度等于第一预设距离;其中,
Figure 574579DEST_PATH_IMAGE039
Figure 883070DEST_PATH_IMAGE030
;其中BC的长度可预先测得。
其中,移动机器人从当前位置移动至预设停泊点所需的方向角用ED与X轴(X轴与AC平行且朝右为正方向,Y轴垂直于AC且背向充电桩的方向为正方向)的逆时针方向的夹角来表示,该夹角称为方向角,对接模块6在根据三个第一距离计算移动机器人从当前位置移动至预设停泊点所需的方向角的时候,执行:
通过以下公式计算移动机器人从当前位置移动至预设停泊点所需的方向角:
Figure 987292DEST_PATH_IMAGE040
Figure 300724DEST_PATH_IMAGE041
Figure 832199DEST_PATH_IMAGE042
Figure 644298DEST_PATH_IMAGE043
其中,
Figure DEST_PATH_IMAGE036AAA
为所需的方向角,
Figure 473582DEST_PATH_IMAGE037
为E点相对D点的X坐标增量,
Figure 953105DEST_PATH_IMAGE038
为E点相对D点的Y坐标增量, AC的长度可预先测得。
对接模块6在根据方向角和移动距离控制移动机器人移动至预设停泊点的时候,执行:控制移动机器人按该所需的方向角对应的方向移动,且移动距离为该所需的移动距离。
对接模块6在调整移动机器人的朝向并控制移动机器人后退与充电桩对接的时候,执行:
调整移动机器人的朝向,使移动机器人上的充电接口正对位于中间的第一UWB定位传感器95;
通过第二UWB定位传感器和位于中间的第一UWB定位传感器95获取移动机器人需后退的后退距离;
根据该后退距离控制移动机器人后退与充电桩对接。
其中,当移动机器人沿其充电接口所朝的方向移动时,称为后退。
其中,可使第二UWB定位传感器的朝向与移动机器人的充电接口的朝向相同(假设充电接口相对移动机器人朝正后方设置,则第二UWB定位传感器也朝正后方设置),且第二UWB定位传感器与该充电接口的中心在同一竖直平面内。从而,可根据第二UWB定位传感器与位于中间的第一UWB定位传感器95之间的信号强弱来进行移动机器人的朝向的调整,使第二UWB定位传感器与位于中间的第一UWB定位传感器95之间的信号最强,以实现充电接口正对位于中间的第一UWB定位传感器95。也可根据移动机器人实时的在基准坐标系下的位姿数据和第一UWB定位传感器95在基准坐标系下的位姿数据(通过实际轮廓线点云数据提取),计算移动机器人需要转动的角度,然后控制移动机器人转动该角度,实现充电接口正对位于中间的第一UWB定位传感器95。但调整移动机器人的朝向,使移动机器人上的充电接口正对位于中间的第一UWB定位传感器95的具体方式不限于此。
其中,可获取第二UWB定位传感器和位于中间的第一UWB定位传感器95之间的距离(直接通过该两个UWB定位传感器测得),然后用该距离减去根据移动机器人上的充电接口与第二UWB定位传感器在前后方向上的相对距离(可预先测得),即得到后退距离。
由上可知,该机器人自动充电装置,通过获取充电桩的参考轮廓线点云模型和预设停泊点相对参考轮廓线点云模型的第一位姿数据;获取充电桩在基准坐标系下的实际轮廓线点云数据;通过匹配实际轮廓线点云数据和参考轮廓线点云模型,以得到充电桩在基准坐标系下的第二位姿数据;根据第二位姿数据和第一位姿数据计算预设停泊点在基准坐标系下的第三位姿数据;根据第三位姿数据,控制移动机器人朝预设停泊点移动;基于UWB定位方法,控制移动机器人运动以完成与充电桩的对接;从而,对于充电桩的位置不固定的情况,也能保证移动机器人快速准确地返回充电桩处完成对接进行充电。
请参照图3,图3为本申请实施例提供的一种电子设备的结构示意图,本申请提供一种电子设备,包括:处理器301和存储器302,处理器301和存储器302通过通信总线303和/或其他形式的连接机构(未标出)互连并相互通讯,存储器302存储有处理器301可执行的计算机程序,当电子设备运行时,处理器301执行该计算机程序,以执行上述实施例的任一可选的实现方式中的机器人自动充电方法,以实现以下功能:获取充电桩的参考轮廓线点云模型和预设停泊点相对参考轮廓线点云模型的第一位姿数据;获取充电桩在基准坐标系下的实际轮廓线点云数据;通过匹配实际轮廓线点云数据和参考轮廓线点云模型,以得到充电桩在基准坐标系下的第二位姿数据;根据第二位姿数据和第一位姿数据计算预设停泊点在基准坐标系下的第三位姿数据;根据第三位姿数据,控制移动机器人朝预设停泊点移动;基于UWB定位方法,控制移动机器人运动以完成与充电桩的对接。
本申请实施例提供一种存储介质,其上存储有计算机程序,计算机程序被处理器执行时,执行上述实施例的任一可选的实现方式中的机器人自动充电方法,以实现以下功能:获取充电桩的参考轮廓线点云模型和预设停泊点相对参考轮廓线点云模型的第一位姿数据;获取充电桩在基准坐标系下的实际轮廓线点云数据;通过匹配实际轮廓线点云数据和参考轮廓线点云模型,以得到充电桩在基准坐标系下的第二位姿数据;根据第二位姿数据和第一位姿数据计算预设停泊点在基准坐标系下的第三位姿数据;根据第三位姿数据,控制移动机器人朝预设停泊点移动;基于UWB定位方法,控制移动机器人运动以完成与充电桩的对接。其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory, 简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory, 简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory, 简称EPROM),可编程只读存储器(Programmable Red-Only Memory, 简称PROM),只读存储器(Read-Only Memory, 简称ROM),磁存储器,快闪存储器,磁盘或光盘。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (8)

1.一种机器人自动充电方法,用于控制移动机器人返回可移动的充电桩处进行充电,其特征在于,所述充电桩上设置有三个第一UWB定位传感器,所述移动机器人上设置有第二UWB定位传感器,所述第一UWB定位传感器为UWB基站,所述第二UWB定位传感器为UWB信标;包括步骤:
A1.获取充电桩的参考轮廓线点云模型和预设停泊点相对所述参考轮廓线点云模型的第一位姿数据;所述预设停泊点位于所述充电桩的充电口正前方,且相对所述充电桩固定;
A2.获取所述充电桩在基准坐标系下的实际轮廓线点云数据;
A3.通过匹配所述实际轮廓线点云数据和所述参考轮廓线点云模型,以得到所述充电桩在所述基准坐标系下的第二位姿数据;
A4.根据所述第二位姿数据和所述第一位姿数据计算所述预设停泊点在所述基准坐标系下的第三位姿数据;
A5.根据所述第三位姿数据,控制所述移动机器人朝所述预设停泊点移动;
A6.基于UWB定位方法,控制所述移动机器人运动以完成与所述充电桩的对接;
步骤A2之前,还包括步骤:向充电桩发送提醒信号,使充电桩停止移动;
步骤A2包括:
A201.获取由所述移动机器人采集的所述充电桩在所述基准坐标系下的实时点云数据;
A202.从所述实时点云数据中提取所述充电桩的轮廓线上的点云数据,得到所述实际轮廓线点云数据;所述充电桩的轮廓线为所述充电桩的面与面之间的交线;
步骤A6包括:
A601.获取设置在所述移动机器人上的第二UWB定位传感器分别与设置在所述充电桩上的三个第一UWB定位传感器的距离,作为三个第一距离;
A602.根据三个所述第一距离计算所述移动机器人从当前位置移动至所述预设停泊点所需的方向角和所需的移动距离;
A603.根据所述方向角和所述移动距离控制所述移动机器人移动至所述预设停泊点;
A604.调整所述移动机器人的朝向并控制所述移动机器人后退与所述充电桩对接;
设A、B、C三个点分别为三个第一UWB定位传感器的位置,B为位于中间的第一UWB定位传感器的位置,D点为预设停泊点,E点为实际停止点,三个第一距离分别为AE、BE和CE;
若AE大于CE,则步骤A602包括:
通过求解以下公式计算移动机器人从当前位置移动至预设停泊点所需的移动距离:
Figure DEST_PATH_IMAGE001
其中,DE为移动机器人从当前位置移动至预设停泊点所需的移动距离,DB的长度等于第一预设距离;其中,
Figure DEST_PATH_IMAGE002
Figure DEST_PATH_IMAGE003
;其中BC的长度预先测得;
通过以下公式计算移动机器人从当前位置移动至预设停泊点所需的方向角:
Figure DEST_PATH_IMAGE004
Figure DEST_PATH_IMAGE005
Figure DEST_PATH_IMAGE006
Figure DEST_PATH_IMAGE007
其中,
Figure DEST_PATH_IMAGE008
为所需的方向角,
Figure DEST_PATH_IMAGE009
为E点相对D点的X坐标增量,
Figure DEST_PATH_IMAGE010
为E点相对D点的Y坐标增量,AB和AC的长度预先测得;
若AE小于CE,则步骤A602包括:
通过求解以下公式计算移动机器人从当前位置移动至预设停泊点所需的移动距离:
Figure 885281DEST_PATH_IMAGE001
其中,DE为移动机器人从当前位置移动至预设停泊点所需的移动距离,DB的长度等于第一预设距离;其中,
Figure DEST_PATH_IMAGE011
Figure 349891DEST_PATH_IMAGE003
;其中BC的长度预先测得;
通过以下公式计算移动机器人从当前位置移动至预设停泊点所需的方向角:
Figure DEST_PATH_IMAGE012
Figure DEST_PATH_IMAGE013
Figure DEST_PATH_IMAGE014
Figure DEST_PATH_IMAGE015
其中,
Figure 270574DEST_PATH_IMAGE008
为所需的方向角,
Figure 196942DEST_PATH_IMAGE009
为E点相对D点的X坐标增量,
Figure 542472DEST_PATH_IMAGE010
为E点相对D点的Y坐标增量, AC的长度预先测得。
2.根据权利要求1所述的机器人自动充电方法,其特征在于,步骤A201包括:
获取由所述移动机器人最新采集的多帧所述充电桩的在相机坐标系下的点云数据,作为多帧第一点云数据,并获取所述移动机器人在采集各所述第一点云数据时在所述基准坐标系下的第一坐标数据;
根据所述第一坐标数据,融合各所述第一点云数据,得到基准坐标系下的所述实时点云数据。
3.根据权利要求1所述的机器人自动充电方法,其特征在于,步骤A202包括:
采用网格划分法从所述实时点云数据中提取所述充电桩的轮廓线上的点云数据,得到所述实际轮廓线点云数据。
4.根据权利要求1所述的机器人自动充电方法,其特征在于,步骤A4包括:
用所述第二位姿数据乘以所述第一位姿数据,得到所述第三位姿数据。
5.根据权利要求1所述的机器人自动充电方法,其特征在于,步骤A5包括:
根据所述充电桩在所述基准坐标系下的第二位姿数据,确定所述充电桩的避让区域;所述避让区域是以所述充电桩为中心并把所述充电桩完全包围在内的虚拟障碍区域;
根据所述避让区域和所述第三位姿数据,规划从所述移动机器人当前位置到所述预设停泊点的移动路径;
控制所述移动机器人沿所述移动路径移动。
6.一种机器人自动充电装置,用于控制移动机器人返回可移动的充电桩处进行充电,其特征在于,所述充电桩上设置有三个第一UWB定位传感器,所述移动机器人上设置有第二UWB定位传感器,所述第一UWB定位传感器为UWB基站,所述第二UWB定位传感器为UWB信标;包括:
第一获取模块,用于获取充电桩的参考轮廓线点云模型和预设停泊点相对所述参考轮廓线点云模型的第一位姿数据;所述预设停泊点位于所述充电桩的充电口正前方,且相对所述充电桩固定;
第二获取模块,用于获取所述充电桩在基准坐标系下的实际轮廓线点云数据;
匹配模块,用于通过匹配所述实际轮廓线点云数据和所述参考轮廓线点云模型,以得到所述充电桩在基准坐标系下的第二位姿数据;
第一计算模块,用于根据所述第二位姿数据和所述第一位姿数据计算所述预设停泊点在所述基准坐标系下的第三位姿数据;
第一控制模块,用于根据所述第三位姿数据,控制所述移动机器人朝所述预设停泊点移动;
对接模块,用于基于UWB定位方法,控制所述移动机器人运动以完成与所述充电桩的对接;
提醒模块,用于向充电桩发送提醒信号,使充电桩停止移动;
第二获取模块用于在获取所述充电桩在基准坐标系下的实际轮廓线点云数据的时候,执行:
获取由所述移动机器人采集的所述充电桩在所述基准坐标系下的实时点云数据;
从所述实时点云数据中提取所述充电桩的轮廓线上的点云数据,得到所述实际轮廓线点云数据;所述充电桩的轮廓线为所述充电桩的面与面之间的交线;
对接模块用于在基于UWB定位方法,控制所述移动机器人运动以完成与所述充电桩的对接的时候,执行:
获取设置在所述移动机器人上的第二UWB定位传感器分别与设置在所述充电桩上的三个第一UWB定位传感器的距离,作为三个第一距离;
根据三个所述第一距离计算所述移动机器人从当前位置移动至所述预设停泊点所需的方向角和所需的移动距离;
根据所述方向角和所述移动距离控制所述移动机器人移动至所述预设停泊点;
调整所述移动机器人的朝向并控制所述移动机器人后退与所述充电桩对接;
设A、B、C三个点分别为三个第一UWB定位传感器的位置,B为位于中间的第一UWB定位传感器的位置,D点为预设停泊点,E点为实际停止点,三个第一距离分别为AE、BE和CE;
若AE大于CE,则对接模块在根据三个所述第一距离计算所述移动机器人从当前位置移动至所述预设停泊点所需的方向角和所需的移动距离的时候,执行:
通过求解以下公式计算移动机器人从当前位置移动至预设停泊点所需的移动距离:
Figure 381246DEST_PATH_IMAGE001
其中,DE为移动机器人从当前位置移动至预设停泊点所需的移动距离,DB的长度等于第一预设距离;其中,
Figure 179438DEST_PATH_IMAGE002
Figure 909497DEST_PATH_IMAGE003
;其中BC的长度预先测得;
通过以下公式计算移动机器人从当前位置移动至预设停泊点所需的方向角:
Figure 843955DEST_PATH_IMAGE004
Figure 368477DEST_PATH_IMAGE005
Figure 142048DEST_PATH_IMAGE006
Figure 410218DEST_PATH_IMAGE007
其中,
Figure 199182DEST_PATH_IMAGE008
为所需的方向角,
Figure 160185DEST_PATH_IMAGE009
为E点相对D点的X坐标增量,
Figure 667390DEST_PATH_IMAGE010
为E点相对D点的Y坐标增量,AB和AC的长度预先测得;
若AE小于CE,则对接模块在根据三个所述第一距离计算所述移动机器人从当前位置移动至所述预设停泊点所需的方向角和所需的移动距离的时候,执行:
通过求解以下公式计算移动机器人从当前位置移动至预设停泊点所需的移动距离:
Figure 224404DEST_PATH_IMAGE001
其中,DE为移动机器人从当前位置移动至预设停泊点所需的移动距离,DB的长度等于第一预设距离;其中,
Figure 133455DEST_PATH_IMAGE011
Figure 999779DEST_PATH_IMAGE003
;其中BC的长度预先测得;
通过以下公式计算移动机器人从当前位置移动至预设停泊点所需的方向角:
Figure 259859DEST_PATH_IMAGE012
Figure 604253DEST_PATH_IMAGE013
Figure 384121DEST_PATH_IMAGE014
Figure 421347DEST_PATH_IMAGE015
其中,
Figure 903144DEST_PATH_IMAGE008
为所需的方向角,
Figure 316808DEST_PATH_IMAGE009
为E点相对D点的X坐标增量,
Figure 934871DEST_PATH_IMAGE010
为E点相对D点的Y坐标增量, AC的长度预先测得。
7.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时,运行如权利要求1-5任一项所述机器人自动充电方法中的步骤。
8.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时运行如权利要求1-5任一项所述机器人自动充电方法中的步骤。
CN202210749760.7A 2022-06-29 2022-06-29 机器人自动充电方法、装置、电子设备及存储介质 Active CN114815858B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210749760.7A CN114815858B (zh) 2022-06-29 2022-06-29 机器人自动充电方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210749760.7A CN114815858B (zh) 2022-06-29 2022-06-29 机器人自动充电方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN114815858A CN114815858A (zh) 2022-07-29
CN114815858B true CN114815858B (zh) 2022-11-08

Family

ID=82522828

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210749760.7A Active CN114815858B (zh) 2022-06-29 2022-06-29 机器人自动充电方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114815858B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116413735B (zh) * 2023-06-12 2023-09-22 九曜智能科技(浙江)有限公司 牵引车和被牵引目标的跟踪对接方法和电子设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105674991A (zh) * 2016-03-29 2016-06-15 深圳市华讯方舟科技有限公司 一种机器人定位方法和装置
CN106020188A (zh) * 2016-05-17 2016-10-12 杭州申昊科技股份有限公司 一种基于激光导航的变电站巡检机器人自主充电方法
CN106097341A (zh) * 2016-06-13 2016-11-09 华讯方舟科技有限公司 一种机器人自主充电的方法及系统
CN109648602A (zh) * 2018-09-11 2019-04-19 深圳优地科技有限公司 自动充电方法、装置及终端设备
EP3505036A1 (en) * 2017-12-29 2019-07-03 iRobot Corporation Mobile robot docking systems and methods
CN209460645U (zh) * 2019-04-11 2019-10-01 西安铂士顿电气设备制造有限公司 一种充电机器人并联充电用充电枪寻位机构
US10585437B1 (en) * 2018-09-25 2020-03-10 NextVPU (Shanghai) Co., Ltd. Auto-recharging of robot
CN111482972A (zh) * 2020-03-19 2020-08-04 季华实验室 一种灭火救灾机器人及系统
CN114265401A (zh) * 2021-12-09 2022-04-01 上海擎朗智能科技有限公司 一种机器人自动充电方法及机器人
CN114442624A (zh) * 2022-01-21 2022-05-06 美的集团(上海)有限公司 一种机器人的回充控制方法、装置及系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105674991A (zh) * 2016-03-29 2016-06-15 深圳市华讯方舟科技有限公司 一种机器人定位方法和装置
CN106020188A (zh) * 2016-05-17 2016-10-12 杭州申昊科技股份有限公司 一种基于激光导航的变电站巡检机器人自主充电方法
CN106097341A (zh) * 2016-06-13 2016-11-09 华讯方舟科技有限公司 一种机器人自主充电的方法及系统
EP3505036A1 (en) * 2017-12-29 2019-07-03 iRobot Corporation Mobile robot docking systems and methods
CN109648602A (zh) * 2018-09-11 2019-04-19 深圳优地科技有限公司 自动充电方法、装置及终端设备
US10585437B1 (en) * 2018-09-25 2020-03-10 NextVPU (Shanghai) Co., Ltd. Auto-recharging of robot
CN209460645U (zh) * 2019-04-11 2019-10-01 西安铂士顿电气设备制造有限公司 一种充电机器人并联充电用充电枪寻位机构
CN111482972A (zh) * 2020-03-19 2020-08-04 季华实验室 一种灭火救灾机器人及系统
CN114265401A (zh) * 2021-12-09 2022-04-01 上海擎朗智能科技有限公司 一种机器人自动充电方法及机器人
CN114442624A (zh) * 2022-01-21 2022-05-06 美的集团(上海)有限公司 一种机器人的回充控制方法、装置及系统

Also Published As

Publication number Publication date
CN114815858A (zh) 2022-07-29

Similar Documents

Publication Publication Date Title
KR102257610B1 (ko) 자율 주행 시스템을 위한 복수의 3차원 라이다 센서의 외부 파리미터 보정 방법
CN107514993B (zh) 基于无人机的面向单体建筑建模的数据采集方法及系统
US20240053477A1 (en) System and method for measuring image distance of power transmission lines with unmanned aerial vehicle (uav)
CN105160702B (zh) 基于LiDAR点云辅助的立体影像密集匹配方法及系统
CN106054900B (zh) 基于深度摄像头的机器人临时避障方法
CN106338245B (zh) 一种工件非接触移动测量方法
US20230112991A1 (en) Method of high-precision 3d reconstruction of existing railway track lines based on uav multi-view images
CN105045263A (zh) 一种基于Kinect的机器人自定位方法
CN109828280A (zh) 一种基于三维激光栅格的定位方法以及机器人自主充电方法
CN111710040B (zh) 一种高精度地图的构建方法、系统、终端和存储介质
CN114815858B (zh) 机器人自动充电方法、装置、电子设备及存储介质
CN111273312B (zh) 一种智能车辆定位与回环检测方法
CN109282808A (zh) 用于桥梁三维巡航检测的无人机与多传感器融合定位方法
CN110515383A (zh) 自主充电的方法以及移动机器人
CN110597249A (zh) 一种机器人及其回充定位方法和装置
CN106652028B (zh) 一种环境三维建图方法及装置
CN111158356B (zh) 自动割草机及其控制方法
Olson et al. Wide-baseline stereo vision for Mars rovers
CN113541265B (zh) 用于机器人的自动充电系统及充电桩定位导航方法
Hasheminasab et al. Linear Feature-based image/LiDAR integration for a stockpile monitoring and reporting technology
CN111612829B (zh) 一种高精度地图的构建方法、系统、终端和存储介质
CN115685153A (zh) 一种激光雷达标定方法、装置、设备及存储介质
Jensen et al. Laser range imaging using mobile robots: From pose estimation to 3d-models
CN116989670A (zh) 一种柔性飞机全机外形一站式数字化测量方法
CN110220474A (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