机器人的充电方法、装置和设备与流程

文档序号:13735348阅读:1086来源:国知局
机器人的充电方法、装置和设备与流程

本发明涉及机器人控制领域,具体而言,涉及一种机器人的充电方法、装置和设备。



背景技术:

当前市场上的机器人,大部分是依靠无线充电或者近场电磁充电等非接触式充电方式为机器人补充电能。通常情况下,无线充电效率在50%-64%之间,经过特殊优化后的充电电路和电池能够将充电效率提高到86%以上,接近直流电直接充电的效率。但是,上述的非接触式充电方式的实现效率在通常情况下并不理想,存在两方面的不足:其一,无线充电信号可能被机器人的外壳、外皮吸收,导致充电效率降低或充电时间延长;其二,这类充电方式需要额外的充电装置加以复杂的导航技术(红外或声波)和通信技术(蓝牙或无线),帮助召回机器人进行充电,在机器人距离较远的房间或较复杂家庭环境的情况下,召回将很难实现。

针对现有的采用非接触式的充电方式为机器人充电实现效率低的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种机器人的充电方法、装置和设备,以至少解决现有的采用非接触式的充电方式为机器人充电效率低的技术问题。

根据本发明实施例的一个方面,提供了一种机器人的充电方法,该充电方法包括:通过视觉识别装置识别机器人所处环境中的充电插口,其中,视觉识别装置设置在机器人上;控制机器人的插头插入充电插口。

根据本发明实施例的另一方面,还提供了一种机器人的充电装置,该充电装置包括:识别单元,用于通过视觉识别装置识别机器人所处环境中的充电插口,其中,视觉识别装置设置在机器人上;控制单元,与识别单元通信连接,用于控制机器人的插头插入充电插口。

根据本发明实施例的另一方面,还提供了一种机器人的充电系统,该充电系统包括:用于识别机器人所处环境中的充电插口;控制器,与视觉识别装置连接,用于控制机器人的插头插入充电插口。

在本发明实施例中,通过设置在机器人上的视觉识别装置识别出机器人所处环境中的充电插口,并通过机器人上的控制器可以控制机器人的插头插入充电插口。通过上述实施例,在机器人当前所处的环境中,通过视觉识别装置识别出充电插口,机器人无需经过大范围的移动,就能找到可以即时充电的充电插口,并在识别到充电插口之后,可以将机器人的插头与充电插口建立有线连接,也即,在机器人进行充电的过程中,不会受到机器人自身的外壳对充电效率的影响,从而可以使机器人能够实现即时充电,同时可以提高机器人的充电效率,解决了现有的采用非接触式的充电方式为机器人充电实现效率低的问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种机器人的充电方法的流程图;

图2是根据本发明实施例的一种可选的使用双向视觉检测方法检测第一距离的示意图;

图3是根据本发明实施例的一种可选的机器人的充电方法的流程图;

图4是根据本发明实施例的一种机器人的充电装置的示意图;

图5是根据本发明实施例的一种可选的机器人的充电装置的示意图;

图6是根据本发明实施例的一种可选的机器人的充电装置的示意图;

图7是根据本发明实施例的一种可选的机器人的充电装置的示意图;

图8是根据本发明实施例的一种可选的机器人的充电装置的示意图;

图9是根据本发明实施例的一种可选的机器人的充电装置的示意图;

图10是根据本发明实施例的一种机器人的充电系统的示意图;

图11是根据本发明实施例的一种可选的机器人的充电系统的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

实施例1

根据本发明实施例,提供了一种机器人的充电方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是根据本发明实施例的一种机器人的充电方法的流程图,如图1所示,该方法包括如下步骤:

步骤s102,通过视觉识别装置识别机器人所处环境中的充电插口,其中,视觉识别装置设置在机器人上。

步骤s104,控制机器人的插头插入充电插口。

采用本发明的实施例,通过设置在机器人上的视觉识别装置识别出机器人所处环境中的充电插口,并通过机器人上的控制器可以控制机器人的插头插入充电插口。通过上述实施例,在机器人当前所处的环境中,通过视觉识别装置识别出充电插口,机器人无需经过大范围的移动,就能找到可以即时充电的充电插口,并在识别到充电插口之后,可以将机器人的插头与充电插口建立有线连接,也即,在机器人进行充电的过程中,不会受到机器人自身的外壳对充电效率的影响,从而可以使机器人能够实现即时充电,同时可以提高机器人的充电效率,解决了现有的采用非接触式的充电方式为机器人充电实现效率低的问题。

具体的,利用视觉识别装置中的物体识别技术协助机器人在墙面和地面搜索充电插口,在搜索到充电插口后,并确保前方没有较大障碍的情况下,进行目标跟踪,并通过控制器控制机器人行进到微型机械臂能够接触到充电插口的大致范围。在该范围内,控制器控制机器人伸出带有充电插头的机械臂,利用增强学习技术不断试验,使用机械臂的阻力传感器产生的阻力信号作为反馈信号,进行闭环训练,使机械臂在不断试错中将插头成功插入插口。

在本发明的上述实施例中,控制机器人的插头插入充电插口包括:控制机器人向充电插口移动;在控制机器人移动至目标位置的情况下,控制安装在机器人的机械臂上的插头插入充电插口,其中,目标位置位于机器人的机械臂能够接触充电插口的范围内。

具体地,在通过视觉识别装置识别出充电插口之后,控制器控制机器人向充电插口移动,当机器人移动至机器人的机械臂能够接触到充电插口的范围内时,控制器接收机械臂上的阻力传感器产生的阻力信号,并基于阻力信号输出控制机械臂动作的控制信号,机械臂按照该控制信号动作,以控制机械臂上的插头插入充电插口。

通过上述实施例,可以控制机器人移动至机械臂能够接触充电插口的范围内,从而可以充分保证机器人与充电插口的接触式的连接。

在本发明的上述实施例中,控制安装在机器人的机械臂上的插头插入充电插口包括:控制机械臂执行预先设置的第一动作序列中的动作;在机械臂执行第一动作序列中的动作后,判断插头是否成功接入充电插口;在判断出插头成功插入充电插口的情况下,记录第一动作序列,在该方案中可以在判断出插头成功插入充电插口的情况下,记录该第一动作序列,若记录的次数大于预定次数,则无需调整第一动作序列,若记录的次数不大于预定次数,则可以在判断出插头未成功插入充电插口的情况下,通过学习算法确定第二动作序列,第二动作序列用于将插头成功插入充电插口;控制机械臂执行第二动作序列中的动作,以将插头插入充电插口。

具体地,在通过视觉识别装置识别出充电插口之后,控制器控制机器人向充电插口移动,当机器人移动至机器人的机械臂能够接触到充电插口的范围内时,控制器输出包含第一动作序列的控制信号,并控制机械臂执行第一动作序列中的动作;在机械臂执行第一动作序列中的动作之后,控制器判断插头是否成功插入充电插口,并在判断出插头没有成功插入充电插口的情况下,控制器接收机械臂上的阻力传感器产生的阻力信号,并将阻力信号作为上述学习算法(如q-learning学习算法)的输入信号,并输出包含第二动作序列的控制信号,机械臂则按照该控制信号执行第二动作序列中的动作,使机械臂上的插头成功插入充电插口。

通过上述实施例,首先控制机器人执行预先设置的第一动作序列中的动作,并在判断出插头未成功插入充电插口的情况下,对机械臂进行实时的训练,从而可以达到使插头能够以最短时间插入充电插口的目的。

在本发明的实施例中,通过学习算法确定第二动作序列包括:将阻力信号作为反馈信号,命令机械臂自行执行预设次数的下述学习操作,直至反馈信号达到预设阈值,其中,阻力信号用于表示插头接入充电插口时产生的阻力;记录每次执行学习操作的学习结果,其中,学习结果包括从机械臂开始转动到结束转动的过程中,每一舵机的所有转角和角加速度值;基于学习结果确定第二动作序列,其中,第二动作序列中的每个动作的信息中包括对应动作的每个舵机的转角和角加速度值。

具体地,控制器控制机械臂执行多次学习操作(即执行多次试错动作),机器人的存储设备记录每次执行学习操作的学习结果,也即以每一次机械臂的阻力反馈信号达到一定阈值(即上述的预设阈值)为结束信号,记录每次学习操作中的从开始转动机械臂到结束时每一舵机的所有转角和角加速度值,使用q-learning学习算法规划机械臂的动作序列(机械臂上所有舵机的一系列的转动),从记录的多次学习结果对应的多个动作学列中得到第二动作序列。

通过上述实施例,基于q-learning学习算法,对机器人的机器臂进行实时训练,可以使插头能够以最短的时间、并准确地插入充电插头。

在本发明的上述实施例中,将阻力信号作为反馈信号包括:利用阻力信号和/或视觉识别信号,判断机械臂是否将插头移动到预定位置,其中,预定位置与充电插口的位置之间的距离小于预设距离;若判断出机械臂将插头移动到预定位置,则将阻力信号作为正反馈信号;若判断出机械臂未将插头移动到预定位置,则将阻力信号作为负反馈信号。

进一步地,利用阻力信号和/或视觉识别信号,判断机械臂是否将插头移动到预定位置包括:判断视觉识别信号中插头的位置与充电插口之间的距离是否小于预设距离、和/或者判断阻力信号是否大于预设阻力值;若判断出视觉识别信号中插头的位置与充电插口之间的距离小于预设距离、和/或者判断出阻力信号大于预设阻力值,则判断出机械臂将插头移动到预定位置;否则,判断出机械臂未将插头移动到预定位置。

在一种可选的实施例中,当电源管理器没有得到充电成功信号时,机械臂的阻力传感器采集的阻力信号和视觉识别信号将用于判断机械臂是否将插头移动到接近插口位置(即上述的预定位置)。以此建立奖罚机制,如若视觉识别信号中机械臂插头的位置与充电插口的位置之间的距离小于预设距离(可以预先设定),则判断出插头移动到接近插口的位置,或者若阻力传感器采集的阻力信号大于预设阻力值,则判断出插头移动到接近插口的位置,在上述情况下,机械臂的插头到达插口位置时得到了相应的阻力信号,则将该相应的阻力信号作为基于增强学习算法(即上述的学习算法)的机械臂控制模型的正向奖励,即将该相应的阻力信号作为上述学习算法的正反馈信号;其它情况下则作为负向惩罚,即将其他情况下相应的阻力信号作为上述学习算法的负反馈信号。

进一步地,在判断出插头没有成功插入充电插口的情况下,控制器接收机械臂上的阻力传感器产生的阻力信号,并将阻力信号作为上述学习算法(如q-learning学习算法)的输入参数,控制器则基于q-learning学习算法确定出能够使控制器控制机械臂的插头成功插入充电插口的第二动作序列,机械臂则按照该控制信号执行第二动作序列中的动作,使机械臂上的插头成功插入充电插口。

通过上述实施例,将机械臂上的阻力传感器采集到的阻力信号确认为正反馈信号或负反馈信号两种信号,并基于这两种信号的区别,通过q-learning学习算法,可以确定出第二序列动作,从而可以保证插头能够更快的成功插入充电插口。

在本发明的上述实施例中,判断插头是否成功接入充电插口包括:判断机器人的电源管理器是否得到充电成功信号,其中,充电成功信号用于表示插头成功接入充电插口;若机器人的电源管理器没有得到充电成功信号,则判断出插头未成功接入充电插口;若机器人的电源管理器得到充电成功信号,则判断出插头成功接入充电插口。

具体地,在通过视觉识别装置识别出充电插口之后,控制器控制机器人向充电插口移动,当机器人移动至机器人的机械臂能够接触到充电插口的范围内时,控制器输出包含第一动作序列的控制信号,并控制机械臂执行第一动作序列中的动作;在机械臂执行第一动作序列中的动作之后,控制器通过判断电源管理器是否得到充电成功信号,判断机械臂的插头是否成功插入充电插口。当电源管理器得到充电成功信号时,则表示机械臂的插头成功插入充电插口。当电源管理器没有得到充电成功信号时,则表示机械臂的插头未成功插入充电插口,此时,控制器接收机械臂上的阻力传感器产生的阻力信号,并将阻力信号作为上述学习算法(如q-learning学习算法)的输入信号,并输出包含第二动作序列的控制信号,机械臂则按照该控制信号执行第二动作序列中的动作,使械臂上的插头成功插入充电插口。

通过上述实施例,在控制机器人执行预先设置的第一动作序列中的动作之后,判断插头是否成功插入充电插口,在判断出插头未成功插入充电插口的情况下,对机械臂进行实时的训练,从而可以达到使插头能够以最短时间插入充电插口的目的。

在上述实施例中,预先设置的第一动作序列可以通过如下步骤得到:在机械臂自行操作充电时,通过多次学习操作的方法,即机械臂进行多次试错操作的方法,以每一次机械臂的阻力反馈达到一定阈值为结束信号,记录每次机械臂动作(即上述的学习操作)的学习结果,也即记录从开始转动机械臂到结束时每一舵机的所有转角和角加速度值。使用q-learning学习算法规划机械臂的动作序列(机械臂上所有舵机的一系列的转动),搜索能够使插头最大限度接近插口的动作序列(即上述的第一动作序列)。当增强学习模型得到第一动作序列后,将其设置在控制器中,并控制机械臂实施该第一动作序列中的动作,在插头靠近插口,但并没有成功插入插口的情况下,继续采用q-learning学习算法,通过控制器控制机械臂执行多次学习操作,在微小范围内微调移动插头,直到电源成功接入。

在上述实施例中,基于阻力传感器采集的反馈信号,通过q-learning学习算法,可以对机械臂进行实时的闭环训练,并能够持续地利用训练好的连接电源动作在不同的空间、角度完成将机器人机械臂上的插头成功插入插口这一任务。上述训练好的动作也可以作为其它动作,如抓取物体、移动物体等动作的初始训练设定,利用机器人学习的转移训练特性完成对其它动作的训练和优化。

通过上述实施例,实现了机器人与电源的有线连接,从而可以更好的保证机器人的充电效率。

在本发明的上述实施例中,在控制机器人向充电插口移动的过程中,检测机器人与充电插口之间的第一距离;计算第一距离与机械臂的最大伸长距离的差值;控制机器人的移动距离大于或等于差值。

具体地,在机器人识别到充电插口和测量得到了机器人与充电插口的第一距离之后,机器人将利用自身的行走能力,计算插头能够接触到充电插口的距离,即微型机械臂的最大伸长距离。机器人在行进过程中将对自己微机械臂上的插头和识别到的充电插口进行实时的跟踪,跟踪的方法是:使用meanshift等跟踪算法对图像中的插口的位置变化和方向变化进行实时跟踪,并配合视觉识别装置对插口和机械臂的实时识别。控制器根据上述的跟踪算法,实时得到机器人的移动距离,并控制机器人的移动距离大于或等于第一距离与机械臂的最大伸长距离的差值,也即控制机器人移动至插头能够接触到充电插口的范围内。

通过上述实施例,可以实时跟踪机器人的移动距离,并对机器人进行实时的控制,能够保证机器人更快的到达插头能够接触到插口的范围,保证机器人即时充电。

在本发明的上述实施例中,检测机器人与充电插口之间的第一距离包括:使用双向视觉检测方法检测第一距离。

进一步地,使用双向视觉检测方法检测第一距离包括:通过第一摄像头采集充电插口的第一图像,并通过第二摄像头采集充电插口的第二图像,其中,第一摄像头和第二摄像头安装在机器人上,第一摄像头和第二摄像头安装在相同的水平位置,第一摄像头和第二摄像头的镜头参数相同;利用第一图像和第二图像的图像参数,按照如下公式确定第一距离d,公式为:

其中,b表示第一摄像头的中线与第二摄像头的中线之间的距离;x1表示第一图像中的充电插口与第一图像的中心的像素差值,x2表示第二图像中的充电插口与第二图像的中心的像素差值;f表示第一摄像头和第二摄像头的像素平面到摄像头凸透镜光心的距离,其中,图像参数包括像素差值。

具体地,视觉识别装置在能够识别到插口和其在图像中的位置基础上,可以利用立体视觉检测识别到的插口到机器人本身的大致距离,该实施例中采用双向视觉检测方法检测识别到的插口到机器人本身之间的距离(即上述的第一距离)。

下面结合图2详述本发明的上述实施例。如图2所示,包含两个相同的摄像头(第一摄像头和第二摄像头,对应图2中的左侧摄像头和右侧摄像头)。两个摄像头具有相同的镜头长度f和相同的视角角度θ0,并摆放在相同的水平位置(包括相同高度)。

目标t(即对应识别到的插口)在左侧摄像头中的投影距离是x1,在右侧摄像头中的投影距离是x2,两个摄像头的中心距离(中心距离即为两个摄像头的镜头中线线间的距离)为b,b1和b2分别为水平方向上两个摄像头的镜头中心线到目标的距离,则利用等比对角(对左右两个镜头分别为θ1和θ2),也即三角形相似原理,可以构建等式:

d为镜头到目标的直线距离,也即机器人到充电插口的第一距离。由于b1+b2=b,即b1与b2的和值为两个镜头中线线间的距离b,则可以推倒得到:

其中,x1和x2分别为图像中的物体(即图像中的目标t)对两个镜头的图像中心的像素差值,f为摄像头的像素平面到摄像头凸透镜光心的距离。上述的像素平面为摄像头成像的ccd传感器表面,可以使用ccd传感器的尺寸对f进行像素转化(或将像素转化到真实距离),例如ccd传感器的尺寸为8mm*6mm,相机的像素为800*600,f的距离为8mm,则转化为像素值得到f=800pixels。由此,可以得到真实的距离值。

在上述实施例中,以识别到图像中物体的中心点为基准,并可以采用取均值等矫正方法矫正中间产生的微小误差,计算识别到的物体(如识别到的插口)与机器人本身之间的距离(即上述的第一距离)。

在上述实施例中,可以通过双向视觉检测方法,实时的检测得到识别到的插口与机器人之间的第一距离,从而通过控制器对机器人的移动进行精确的控制。

在本发明的上述实施例中,控制机器人向充电插口移动包括:基于充电插口的位置和机器人的位置确定移动路径,其中,移动路径为机器人到达充电插口的位置的所有路径中距离最短的路径;控制机器人沿移动路径向充电插口移动。

具体地,通过视觉识别装置,得到机器人与充电插口之间的环境图像,控制器对环境图像进行解析处理,从环境图像中可以确定出机器人的多条前进路径,根据距离最短原则,从多条前进路径中选择机器人到达充电插口的位置的距离最短的移动路径,并控制机器人沿该移动路径向充电插口移动。

通过上述实施例,在确定出接近插口的最短路程的移动路径之后,控制机器人沿最短路程的移动路径向充电插口移动,并对插口进行有效追踪,能够使机器人进行有效的路径规划,因此能够帮助机器人在需要充电、寻找电源时节省更多的电力,以确保机器人能够到达充电插口所在的充电地点。

在本发明的上述实施例中,通过视觉识别装置识别机器人所处环境中的充电插口包括:采集机器人所处环境的环境视频,其中,环境视频中包括多帧环境图像;识别环境图像中的插口;若检测出机器人与识别出的插口之间不存在障碍物,则将识别出的插口确定为充电插口,若检测出所述机器人与识别出的插口之间存在障碍物,则继续采集所述机器人所处环境的环境视频。

进一步地,识别环境图像中的插口包括:利用滑动框在环境图像中滑动;滑动框在环境图像滑动时,获取位于滑动框内的图像像素;利用预先构建的插口分类器,对图像像素进行特征识别,识别出图像像素中的插口。

进一步地,利用滑动框在环境图像中滑动包括:使用并行计算方法使多个滑动框并行在同一帧环境图像中滑动。

具体地,通过机器人的两个摄像头采集机器人所处环境的多帧环境图像,利用滑动框技术对插头进行识别检测,其中,滑动框技术是使用不同尺寸的框在图像中滑动,获取框住的环境图像的图像像素,利用预先构建的插口分类器(即基于卷积神经元网络预先训练好的分类器),对图像像素进行特征识别,识别出图像像素中的插口。在识别出插口之后,需要检测机器人与识别出的插口之间是否存障碍物,如,可以激光扫描的方法,机器人利用自身安装的激光扫描装置,扫描到机器人与识别出的插口之间的物体,当扫描到的物体的尺寸在预设尺寸值的范围之内时,则认为该物体可以忽略,机器人与识别出的插口之间不存在障碍物。若检测出机器人与识别出的插口之间不存在障碍物,则将识别出的插口确定为充电插口,以进一步控制机器人靠近该充电插口,并使机器人机械臂上的插口插入该充电插口,实现为机器人充电的功能。

上述的滑动框有多个尺寸(n*n正方形框),使用并行计算方法使多个滑动框并行在同一帧环境图像中滑动,当滑动框在环境图像中滑动时,每次框住的像素矩阵将缩小到特定的尺寸,并使用物体识别算法(如卷积神经元网络算法)进行识别。对于识别出的物体进行保留,在保留的物体图像上进一步进行更小尺寸的滑框识别,直到框定物体的尺寸不能缩小为止(即在更小尺寸的滑动框上无法识别到物体,或识别物体的错误率明显升高)。上述的利用滑动框技术进行物体识别的方法类似adaboost分类算法中的cascade滑框方法。

上述使用的物体识别算法是简易的深度学习物体识别器,即通过卷积神经元网络构建的插口分类器(即上述预先构建的插口分类器)。其中,上述使用的卷积神经元网络,用较少的卷积核和下采样层对训练图像(即上述的环境图像)中的物体(如上述的识别出的插口)进行特征提取,保留边缘、纹理、轮廓、颜色等特征信息,其中,利用简单的全连接层结构表示特征信息,并输出分类结果。

在上述实施例中,利用机器人的两个摄像头收集不同角度、不同种类、不同光照条件下的电源插口图像(即上述的多帧环境图像),在得到多帧电源插口图像之后,采用卷积神经元网络进行前向和反向的训练(backpropagation),得到预先构建的插口分类器,该分类器的输出为二分类,即是插口(可以用高电平1表示)和非插口(可以用低电平0表示)。训练后的预先构建的插口分类器用于识别图像中物体是否为插口,即输入图像经过卷积神经元网络的前向和后向计算,可以得到分类结果。

通过上述实施例,利用并行计算方法,利用滑动框技术能够达到快速搜索视频图像中可识别到的电源插口,并依据高低等空间位置和到达难易程度的排序,能够确定出机器人的插头将要连接的充电插口,可以实现机器人的即时充电,省去了返回固定位置或房间的麻烦。

下面结合图3详述本发明的上述实施例,如图3所示,包括如下步骤:

步骤s301,采集机器人所处环境的环境视频,其中,环境视频中包含多帧环境图像。

其中,上述的多帧环境图像可以为rgb图像。

步骤s303,利用滑动框slider对环境图像进行屏幕滑动检索。

具体地,滑动框有多个尺寸(n*n正方形框),使用并行计算方法使多个滑动框并行在同一帧环境图像中滑动。

步骤s305,利用预先构建的插口分类器,识别环境图像中的插口。

其中,使用卷积神经元网络进行深度学习,也即使用卷积神经元网络进行前向和反向的训练,得到预先构建的插口分类器。

步骤s307,识别出环境图像中的插口。

在上述实施例中,由于机器人可能从多种角度、在多种光线条件下搜索插口物体,传统的机器学习对于插口特征提取要求较大,需要人工预处理得到的特征信息较多。相对地,采用上述的使用卷积神经元网络进行深度学习的方法能够对图像中的物体特征自行提取,识别的效果也要高于传统机器学习方法,对于角度和光照条件的要求不高。

通过上述实施例,使用滑动框slider和深度学习卷积神经元网络cnn(convolutionalneuralnetworks的缩写)的方法,可以对视频中的环境图像进行抽象提取,以确定环境图像中的插口。由于滑动框slider和深度学习卷积神经元网络cnn都属于软件实现方案,不受机器人所处外界环境的影响,因此采用上述实施例的方案能够在不同方位、不同角度和光照条件下检测到机器人所处环境中的插口。此外,使用训练好的插口分类器,直接加入到滑动框技术中,省去了训练的过程,能够极大提高对环境图像中的物体进行识别的速度。

通过上述实施例,基于视觉识别技术(如上述的视觉识别装置),可以使机器人在任意房间内搜索墙壁电源插口或是地面放置的接线插排,利用微型机械臂和增强学习技术(如上述的学习算法)可以帮助机器人将插头成功接入充电插口进行充电,从而可以控制机器人在复杂环境中也可以即时有效地充电的问题。

实施例2

图4是根据本发明实施例的一种机器人的充电装置的示意图,如图4所示,该装置包括:识别单元41和控制单元43。

其中,识别单元41,用于通过视觉识别装置识别机器人所处环境中的充电插口,其中,视觉识别装置设置在机器人上。

控制单元43,与识别单元通信连接,用于控制机器人的插头插入充电插口。

采用本发明的实施例,通过设置在机器人上的视觉识别装置识别出机器人所处环境中的充电插口,并通过机器人上的控制器可以控制机器人的插头插入充电插口。通过上述实施例,在机器人当前所处的环境中,通过视觉识别装置识别出充电插口,机器人无需经过大范围的移动,就能找到可以即时充电的充电插口,并在识别到充电插口之后,可以将机器人的插头与充电插口建立有线连接,也即,在机器人进行充电的过程中,不会受到机器人自身的外壳对充电效率的影响,从而可以使机器人能够实现即时充电,同时可以提高机器人的充电效率,解决了现有的采用非接触式的充电方式为机器人充电实现效率低的问题。

具体的,利用视觉识别装置中的物体识别技术协助机器人在墙面和地面搜索充电插口,在搜索到充电插口后,并确保前方没有较大障碍的情况下,进行目标跟踪,并通过控制器控制机器人行进到微型机械臂能够接触到充电插口的大致范围。在该范围内,控制器控制机器人伸出带有充电插头的机械臂,利用增强学习技术不断试验,使用机械臂的阻力传感器产生的阻力信号作为反馈信号,进行闭环训练,使机械臂在不断试错中将插头成功插入插口。

在本发明的上述实施例中,如图5所示,上述的控制单元43包括:第一控制模块431,用于控制机器人向充电插口移动;第二控制模块433,用于在控制机器人移动至目标位置的情况下,控制安装在机器人的机械臂上的插头插入充电插口,其中,目标位置位于机器人的机械臂能够接触充电插口的范围内。

具体地,在通过视觉识别装置识别出充电插口之后,控制器控制机器人向充电插口移动,当机器人移动至机器人的机械臂能够接触到充电插口的范围内时,控制器接收机械臂上的阻力传感器产生的阻力信号,并基于阻力信号输出控制机械臂动作的控制信号,机械臂按照该控制信号动作,以控制机械臂上的插头插入充电插口。

通过上述实施例,可以控制机器人移动至机械臂能够接触充电插口的范围内,从而可以充分保证机器人与充电插口的接触式的连接。

在本发明的上述实施例中,如图6所示,上述的第二控制模块433包括:第一控制子模块4331,用于控制机械臂执行预先设置的第一动作序列中的动作;第一判断子模块4333,用于在机械臂执行第一动作序列中的动作后,判断插头是否成功接入充电插口;记录子模块,用于在判断出所述插头成功插入所述充电插口的情况下,记录所述第一动作序列;第二动作序列确定子模块4335,用于在判断出插头未成功插入充电插口的情况下,通过学习算法确定第二动作序列,第二动作序列用于将插头成功插入充电插口;第二控制子模块4337,用于控制机械臂执行第二动作序列中的动作,以将所述插头插入所述充电插口。

具体地,在通过视觉识别装置识别出充电插口之后,控制器控制机器人向充电插口移动,当机器人移动至机器人的机械臂能够接触到充电插口的范围内时,控制器输出包含第一动作序列的控制信号,并控制机械臂执行第一动作序列中的动作;在机械臂执行第一动作序列中的动作之后,控制器判断插头是否成功插入充电插口,并在判断出插头没有成功插入充电插口的情况下,控制器接收机械臂上的阻力传感器产生的阻力信号,并将阻力信号作为上述学习算法(如q-learning学习算法)的输入信号,并输出包含第二动作序列的控制信号,机械臂则按照该控制信号执行第二动作序列中的动作,使机械臂上的插头成功插入充电插口。

通过上述实施例,首先控制机器人执行预先设置的第一动作序列中的动作,并在判断出插头未成功插入充电插口的情况下,对机械臂进行实时的训练,从而可以达到使插头能够以最短时间插入充电插口的目的。

在本发明的实施例中,确定子模块包括:处理子模块,用于将阻力信号作为反馈信号,命令机械臂自行执行预设次数的下述学习操作,直至反馈信号达到预设阈值,其中,阻力信号用于表示插头接入充电插口时产生的阻力;记录子模块,用于记录每次执行学习操作的学习结果,其中,学习结果包括从机械臂开始转动到结束转动的过程中,每一舵机的所有转角和角加速度值;第二动作序列确定子模块,用于基于学习结果确定第二动作序列,其中,第二动作序列中的每个动作的信息中包括对应动作的每个舵机的转角和角加速度值。

具体地,控制器控制机械臂执行多次学习操作(即执行多次试错动作),机器人的存储设备记录每次执行学习操作的学习结果,也即以每一次机械臂的阻力反馈信号达到一定阈值(即上述的预设阈值)为结束信号,记录每次学习操作中的从开始转动机械臂到结束时每一舵机的所有转角和角加速度值,使用q-learning学习算法规划机械臂的动作序列(机械臂上所有舵机的一系列的转动),从记录的多次学习结果对应的多个动作学列中得到第二动作序列。

通过上述实施例,基于q-learning学习算法,对机器人的机器臂进行实时训练,可以使插头能够以最短的时间、并准确地插入充电插头。

在本发明的上述实施例中,处理子模块包括:第二判断子模块,用于利用阻力信号和/或视觉识别信号,判断机械臂是否将插头移动到预定位置,其中,预定位置与充电插口的位置之间的距离小于预设距离;正反馈信号确定子模块,用于若判断出机械臂将插头移动到预定位置,则将阻力信号作为正反馈信号;负反馈信号确定子模块,用于若判断出机械臂未将插头移动到预定位置,则将阻力信号作为负反馈信号。

进一步地,第二判断子模块包括:判断重子模块,用于判断视觉识别信号中插头的位置与充电插口之间的距离是否小于预设距离、和/或者判断阻力信号是否大于预设阻力值;确定重子模块,用于若判断出视觉识别信号中插头的位置与充电插口之间的距离小于预设距离、和/或者判断出阻力信号大于预设阻力值,则判断出机械臂将插头移动到预定位置;否则,判断出机械臂未将插头移动到预定位置。

在一种可选的实施例中,当电源管理器没有得到充电成功信号时,机械臂的阻力传感器采集的阻力信号和视觉识别信号将用于判断机械臂是否将插头移动到接近插口位置(即上述的预定位置)。以此建立奖罚机制,如若视觉识别信号中机械臂插头的位置与充电插口的位置之间的距离小于预设距离(可以预先设定),则判断出插头移动到接近插口的位置,或者若阻力传感器采集的阻力信号大于预设阻力值,则判断出插头移动到接近插口的位置,在上述情况下,机械臂的插头到达插口位置时得到了相应的阻力信号,则将该相应的阻力信号作为基于增强学习算法(即上述的学习算法)的机械臂控制模型的正向奖励,即将该相应的阻力信号作为上述学习算法的正反馈信号;其它情况下则作为负向惩罚,即将其他情况下相应的阻力信号作为上述学习算法的负反馈信号。

进一步地,在判断出插头没有成功插入充电插口的情况下,控制器接收机械臂上的阻力传感器产生的阻力信号,并将阻力信号作为上述学习算法(如q-learning学习算法)的输入参数,控制器则基于q-learning学习算法确定出能够使控制器控制机械臂的插头成功插入充电插口的第二动作序列,机械臂则按照该控制信号执行第二动作序列中的动作,使机械臂上的插头成功插入充电插口。

通过上述实施例,将机械臂上的阻力传感器采集到的阻力信号确认为正反馈信号或负反馈信号两种信号,并基于这两种信号的区别,通过q-learning学习算法,可以确定出第二序列动作,从而可以保证插头能够更快的成功插入充电插口。

在本发明的上述实施例中,第一判断子模块包括:第一信号判断子模块,用于判断机器人的电源管理器是否得到充电成功信号,其中,所述充电成功信号用于表示所述插头成功接入所述充电插口;第二信号判断子模块,用于若机器人的电源管理器没有得到充电成功信号,则判断出插头未成功接入充电插口;第三信号判断子模块,用于若机器人的电源管理器得到充电成功信号,则判断出插头成功接入充电插口。

具体地,在通过视觉识别装置识别出充电插口之后,控制器控制机器人向充电插口移动,当机器人移动至机器人的机械臂能够接触到充电插口的范围内时,控制器输出包含第一动作序列的控制信号,并控制机械臂执行第一动作序列中的动作;在机械臂执行第一动作序列中的动作之后,控制器通过判断电源管理器是否得到充电成功信号,判断机械臂的插头是否成功插入充电插口。当电源管理器得到充电成功信号时,则表示机械臂的插头成功插入充电插口。当电源管理器没有得到充电成功信号时,则表示机械臂的插头未成功插入充电插口,此时,控制器接收机械臂上的阻力传感器产生的阻力信号,并将阻力信号作为上述学习算法(如q-learning学习算法)的输入信号,并输出包含第二动作序列的控制信号,机械臂则按照该控制信号执行第二动作序列中的动作,使械臂上的插头成功插入充电插口。

通过上述实施例,在控制机器人执行预先设置的第一动作序列中的动作之后,判断插头是否成功插入充电插口,在判断出插头未成功插入充电插口的情况下,对机械臂进行实时的训练,从而可以达到使插头能够以最短时间插入充电插口的目的。

在上述实施例中,预先设置的第一动作序列可以通过如下步骤得到:在机械臂自行操作充电时,通过多次学习操作的方法,即机械臂进行多次试错操作的方法,以每一次机械臂的阻力反馈达到一定阈值为结束信号,记录每次机械臂动作(即上述的学习操作)的学习结果,也即记录从开始转动机械臂到结束时每一舵机的所有转角和角加速度值。使用q-learning学习算法规划机械臂的动作序列(机械臂上所有舵机的一系列的转动),搜索能够使插头最大限度接近插口的动作序列(即上述的第一动作序列)。当增强学习模型得到第一动作序列后,将其设置在控制器中,并控制机械臂实施该第一动作序列中的动作,在插头靠近插口,但并没有成功插入插口的情况下,继续采用q-learning学习算法,通过控制器控制机械臂执行多次学习操作,在微小范围内微调移动插头,直到电源成功接入。

在上述实施例中,基于阻力传感器采集的反馈信号,通过q-learning学习算法,可以对机械臂进行实时的闭环训练,并能够持续地利用训练好的连接电源动作在不同的空间、角度完成将机器人机械臂上的插头成功插入插口这一任务。上述训练好的动作也可以作为其它动作,如抓取物体、移动物体等动作的初始训练设定,利用机器人学习的转移训练特性完成对其它动作的训练和优化。

通过上述实施例,实现了机器人与电源的有线连接,从而可以更好的保证机器人的充电效率。

在本发明的上述实施例中,如图7所示,上述控制单元43还包括:检测模块435,用于在控制机器人向充电插口移动的过程中,检测机器人与充电插口之间的第一距离;计算模块437,用于计算第一距离与机械臂的最大伸长距离的差值;第三控制模块439,用于控制机器人的移动距离大于或等于差值。

具体地,在机器人识别到充电插口和测量得到了机器人与充电插口的第一距离之后,机器人将利用自身的行走能力,计算插头能够接触到充电插口的距离,即微型机械臂的最大伸长距离。机器人在行进过程中将对自己微机械臂上的插头和识别到的充电插口进行实时的跟踪,跟踪的方法是:使用meanshift等跟踪算法对图像中的插口的位置变化和方向变化进行实时跟踪,并配合视觉识别装置对插口和机械臂的实时识别。控制器根据上述的跟踪算法,实时得到机器人的移动距离,并控制机器人的移动距离大于或等于第一距离与机械臂的最大伸长距离的差值,也即控制机器人移动至插头能够接触到充电插口的范围内。

通过上述实施例,可以实时跟踪机器人的移动距离,并对机器人进行实时的控制,能够保证机器人更快的到达插头能够接触到插口的范围,保证机器人即时充电。

在本发明的上述实施例中,检测模块包括:检测子模块,用于使用双向视觉检测装置检测第一距离。

进一步地,检测子模块包括:采集子模块,用于通过第一摄像头采集充电插口的第一图像,并通过第二摄像头采集充电插口的第二图像,其中,第一摄像头和第二摄像头安装在机器人上,第一摄像头和第二摄像头安装在相同的水平位置,第一摄像头和第二摄像头的镜头参数相同;计算子模块,用于利用第一图像和第二图像的图像参数,按照如下公式确定第一距离d,公式为:

其中,b表示第一摄像头的中线与第二摄像头的中线之间的距离;x1表示第一图像中的充电插口与第一图像的中心的像素差值,x2表示第二图像中的充电插口与第二图像的中心的像素差值;f表示第一摄像头和第二摄像头的像素平面到摄像头凸透镜光心的距离,其中,图像参数包括像素差值。

具体地,视觉识别装置在能够识别到插口和其在图像中的位置基础上,可以利用立体视觉检测识别到的插口到机器人本身的大致距离,该实施例中采用双向视觉检测方法检测识别到的插口到机器人本身之间的距离(即上述的第一距离)。

如图2所示,包含两个相同的摄像头(第一摄像头和第二摄像头,对应图2中的左侧摄像头和右侧摄像头)。两个摄像头具有相同的镜头长度f和相同的视角角度θ0,并摆放在相同的水平位置(包括相同高度)。

目标t(即对应识别到的插口)在左侧摄像头中的投影距离是x1,在右侧摄像头中的投影距离是x2,两个摄像头的中心距离(中心距离即为两个摄像头的镜头中线线间的距离)为b,b1和b2分别为水平方向上两个摄像头的镜头中心线到目标的距离,则利用等比对角(对左右两个镜头分别为θ1和θ2),也即三角形相似原理,可以构建等式:

d为镜头到目标的直线距离,也即机器人到充电插口的第一距离。由于b1+b2=b,即b1与b2的和值为两个镜头中线线间的距离b,则可以推倒得到:

其中,x1和x2分别为图像中的物体(即图像中的目标t)对两个镜头的图像中心的像素差值,f为摄像头的像素平面到摄像头凸透镜光心的距离。上述的像素平面为摄像头成像的ccd传感器表面,可以使用ccd传感器的尺寸对f进行像素转化(或将像素转化到真实距离),例如ccd传感器的尺寸为8mm*6mm,相机的像素为800*600,f的距离为8mm,则转化为像素值得到f=800pixels。由此,可以得到真实的距离值。

在上述实施例中,以识别到图像中物体的中心点为基准,并可以采用取均值等矫正方法矫正中间产生的微小误差,计算识别到的物体(如识别到的插口)与机器人本身之间的距离(即上述的第一距离)。

在上述实施例中,可以通过双向视觉检测方法,实时的检测得到识别到的插口与机器人之间的第一距离,从而通过控制器对机器人的移动进行精确的控制。

在本发明的上述实施例中,如图8所示,上述第一控制模块431包括:移动路径确定子模块4311,用于基于充电插口的位置和机器人的位置确定移动路径,其中,移动路径为机器人可导到充电插口的位置的所有路径中距离最短的路径;第三控制子模块4313,用于控制机器人沿移动路径向充电插口移动。

具体地,通过视觉识别装置,得到机器人与充电插口之间的环境图像,控制器对环境图像进行解析处理,从环境图像中可以确定出机器人的多条前进路径,根据距离最短原则,从多条前进路径中选择机器人到达充电插口的位置的距离最短的移动路径,并控制机器人沿该移动路径向充电插口移动。

通过上述实施例,在确定出接近插口的最短路程的移动路径之后,控制机器人沿最短路程的移动路径向充电插口移动,并对插口进行有效追踪,能够使机器人进行有效的路径规划,因此能够帮助机器人在需要充电、寻找电源时节省更多的电力,以确保机器人能够到达充电插口所在的充电地点。

在本发明的上述实施例中,如图9所示,上述的识别单元41包括:采集模块411,用于采集机器人所处环境的环境视频,其中,环境视频中包括多帧环境图像;识别模块413,用于识别环境图像中的插口;确定模块415,用于若检测出机器人与识别出的插口之间不存在障碍物,则将识别出的插口确定为充电插口;若检测出所述机器人与识别出的插口之间存在障碍物,则继续采集所述机器人所处环境的环境视频。

进一步地,识别模块包括:滑动子模块,用于利用滑动框在环境图像中滑动;获取子模块,用于滑动框在环境图像滑动时,获取位于滑动框内的图像像素;识别子模块,用于利用预先构建的插口分类器,对图像像素进行特征识别,识别出图像像素中的插口。

进一步地,滑动子模块包括:并行滑动子模块,用于使用并行计算装置使多个滑动框并行在同一帧环境图像中滑动。

具体地,通过机器人的两个摄像头采集机器人所处环境的多帧环境图像,利用滑动框技术对插头进行识别检测,其中,滑动框技术是使用不同尺寸的框在图像中滑动,获取框住的环境图像的图像像素,利用预先构建的插口分类器(即基于卷积神经元网络预先训练好的分类器),对图像像素进行特征识别,识别出图像像素中的插口。在识别出插口之后,需要检测机器人与识别出的插口之间是否存障碍物,如,可以激光扫描的方法,机器人利用自身安装的激光扫描装置,扫描到机器人与识别出的插口之间的物体,当扫描到的物体的尺寸在预设尺寸值的范围之内时,则认为该物体可以忽略,机器人与识别出的插口之间不存在障碍物。若检测出机器人与识别出的插口之间不存在障碍物,则将识别出的插口确定为充电插口,以进一步控制机器人靠近该充电插口,并使机器人机械臂上的插口插入该充电插口,实现为机器人充电的功能。

上述的滑动框有多个尺寸(n*n正方形框),使用并行计算方法使多个滑动框并行在同一帧环境图像中滑动,当滑动框在环境图像中滑动时,每次框住的像素矩阵将缩小到特定的尺寸,并使用物体识别算法(如卷积神经元网络算法)进行识别。对于识别出的物体进行保留,在保留的物体图像上进一步进行更小尺寸的滑框识别,直到框定物体的尺寸不能缩小为止(即在更小尺寸的滑动框上无法识别到物体,或识别物体的错误率明显升高)。上述的利用滑动框技术进行物体识别的方法类似adaboost分类算法中的cascade滑框方法。

上述使用的物体识别算法是简易的深度学习物体识别器,即通过卷积神经元网络构建的插口分类器(即上述预先构建的插口分类器)。其中,上述使用的卷积神经元网络,用较少的卷积核和下采样层对训练图像(即上述的环境图像)中的物体(如上述的识别出的插口)进行特征提取,保留边缘、纹理、轮廓、颜色等特征信息,其中,利用简单的全连接层结构表示特征信息,并输出分类结果。

在上述实施例中,利用机器人的两个摄像头收集不同角度、不同种类、不同光照条件下的电源插口图像(即上述的多帧环境图像),在得到多帧电源插口图像之后,采用卷积神经元网络进行前向和反向的训练(backpropagation),得到预先构建的插口分类器,该分类器的输出为二分类,即是插口(可以用高电平1表示)和非插口(可以用低电平0表示)。训练后的预先构建的插口分类器用于识别图像中物体是否为插口,即输入图像经过卷积神经元网络的前向和后向计算,可以得到分类结果。

通过上述实施例,利用并行计算方法,利用滑动框技术能够达到快速搜索视频图像中可识别到的电源插口,并依据高低等空间位置和到达难易程度的排序,能够确定出机器人的插头将要连接的充电插口,可以实现机器人的即时充电,省去了返回固定位置或房间的麻烦。

在上述实施例中,由于机器人可能从多种角度、在多种光线条件下搜索插口物体,传统的机器学习对于插口特征提取要求较大,需要人工预处理得到的特征信息较多。相对地,采用上述的使用卷积神经元网络进行深度学习的方法能够对图像中的物体特征自行提取,识别的效果也要高于传统机器学习方法,对于角度和光照条件的要求不高。

通过上述实施例,使用滑动框slider和深度学习卷积神经元网络cnn(convolutionalneuralnetworks的缩写)的方法,可以对视频中的环境图像进行抽象提取,以确定环境图像中的插口。由于滑动框slider和深度学习卷积神经元网络cnn都属于软件实现方案,不受机器人所处外界环境的影响,因此采用上述实施例的方案能够在不同方位、不同角度和光照条件下检测到机器人所处环境中的插口。此外,使用训练好的插口分类器,直接加入到滑动框技术中,省去了训练的过程,能够极大提高对环境图像中的物体进行识别的速度。

通过上述实施例,基于视觉识别技术(如上述的视觉识别装置),可以使机器人在任意房间内搜索墙壁电源插口或是地面放置的接线插排,利用微型机械臂和增强学习技术(如上述的学习算法)可以帮助机器人将插头成功接入充电插口进行充电,从而可以控制机器人在复杂环境中也可以即时有效地充电的问题。

实施例3

图10是根据本发明实施例的一种机器人的充电系统的示意图,如图10所示,该系统包括:视觉识别装置1001和控制器1003。

其中,视觉识别装置1001,用于识别机器人所处环境中的充电插口。

控制器1003,与视觉识别装置连接,用于控制机器人的插头1005插入充电插口1007。

采用本发明的实施例,通过设置在机器人上的视觉识别装置识别出机器人所处环境中的充电插口,并通过机器人上的控制器可以控制机器人的插头插入充电插口。通过上述实施例,在机器人当前所处的环境中,通过视觉识别装置识别出充电插口,机器人无需经过大范围的移动,就能找到可以即时充电的充电插口,并在识别到充电插口之后,可以将机器人的插头与充电插口建立有线连接,也即,在机器人进行充电的过程中,不会受到机器人自身的外壳对充电效率的影响,从而可以使机器人能够实现即时充电,同时可以提高机器人的充电效率,解决了现有的采用非接触式的充电方式为机器人充电实现效率低的问题。

具体的,利用视觉识别装置中的物体识别技术协助机器人在墙面和地面搜索充电插口,在搜索到充电插口后,并确保前方没有较大障碍的情况下,进行目标跟踪,并通过控制器控制机器人行进到微型机械臂能够接触到充电插口的大致范围。在该范围内,控制器控制机器人伸出带有充电插头的机械臂,利用增强学习技术不断试验,使用机械臂的阻力传感器产生的阻力信号作为反馈信号,进行闭环训练,使机械臂在不断试错中将插头成功插入插口。

在本发明的上述实施例中,上述的控制器103具体用于,控制机器人向充电插口移动;并在控制机器人移动至目标位置的情况下,控制安装在机器人的机械臂上的插头插入充电插口,其中,目标位置位于机器人的机械臂能够接触充电插口的范围内。

具体地,在通过视觉识别装置识别出充电插口之后,控制器控制机器人向充电插口移动,当机器人移动至机器人的机械臂能够接触到充电插口的范围内时,控制器接收机械臂上的阻力传感器产生的阻力信号,并基于阻力信号输出控制机械臂动作的控制信号,机械臂按照该控制信号动作,以控制机械臂上的插头插入充电插口。

通过上述实施例,可以控制机器人移动至机械臂能够接触充电插口的范围内,从而可以充分保证机器人与充电插口的接触式的连接。

在本发明的上述实施例中,上述的控制器103具体用于,控制机械臂执行预先设置的第一动作序列中的动作;在机械臂执行第一动作序列中的动作后,判断插头是否成功接入充电插口;在判断出插头成功插入充电插口的情况下,记录第一动作序列;在判断出插头未成功插入充电插口的情况下,通过学习算法确定第二动作序列,第二动作序列用于将插头成功插入充电插口;控制机械臂执行第二动作序列中的动作。

具体地,在通过视觉识别装置识别出充电插口之后,控制器控制机器人向充电插口移动,当机器人移动至机器人的机械臂能够接触到充电插口的范围内时,控制器输出包含第一动作序列的控制信号,并控制机械臂执行第一动作序列中的动作;在机械臂执行第一动作序列中的动作之后,控制器判断插头是否成功插入充电插口,并在判断出插头没有成功插入充电插口的情况下,控制器接收机械臂上的阻力传感器产生的阻力信号,并将阻力信号作为上述学习算法(如q-learning学习算法)的输入信号,并输出包含第二动作序列的控制信号,机械臂则按照该控制信号执行第二动作序列中的动作,使机械臂上的插头成功插入充电插口。

通过上述实施例,首先控制机器人执行预先设置的第一动作序列中的动作,并在判断出插头未成功插入充电插口的情况下,对机械臂进行实时的训练,从而可以达到使插头能够以最短时间插入充电插口的目的。

如图11所示,上述设备还包括:阻力传感器1009,安装在机器人的机械臂1011上,与控制器连接,用于采集阻力信号,其中,阻力信号用于表示插头接入充电插口时产生的阻力;控制器还用于,基于阻力信号确定第二动作序列。

如图11所示,上述设备还包括:电源管理器1013,用于获取充电成功信号;控制器还用于,与电源管理器连接,用于基于电源管理器是否获取到充电成功信号判断插头是否成功接入充电插口。

如图11所示,上述实施例还包括如下步骤:

步骤s11,采集包含充电插口的多帧环境图像。

步骤s12,将视觉识别装置识别出的充电插口的视频数据发送至机器人的控制器。

具体地,利用机器人的两个摄像头采集机器人所处环境的环境视频,环境视频中包括多帧环境图像,在获得多帧环境图像之后,利用滑动框slider对环境图像进行屏幕滑动检索,并利用预先构建的插口分类器,识别出环境图像中的充电插口。

步骤s13,控制器输出控制机械臂动作的控制信号。

其中,在机器人移动至能够接触到充电插口的范围内的情况下,控制器输出的控制机械臂动作的控制信号为包含预先设置的第一动作序列的控制信号;在控制机械臂执行预先设置的第一动作序列中的动作之后,且在判断出插头没有成功插入充电插口的情况下,控制器通过学习算法,输出包含第二动作序列的控制信号,控制机械臂执行第二动作序列中的动作,使插头成功插入充电插口。

步骤s14,将阻力传感器产生的阻力信号作为反馈信号,反馈至控制器。

具体地,当电源管理器没有得到充电成功信号时,机械臂的阻力传感器采集的阻力信号和视觉识别信号将用于判断机械臂是否将插头移动到接近插口位置(即上述的预定位置)。以此建立奖罚机制,如若视觉识别信号中机械臂插头的位置与充电插口的位置之间的距离小于预设距离(可以预先设定),则判断出插头移动到接近插口的位置,或者若阻力传感器采集的阻力信号大于预设阻力值,则判断出插头移动到接近插口的位置,在上述情况下,机械臂的插头到达插口位置时得到了相应的阻力信号,则将该相应的阻力信号作为基于增强学习算法(即上述的学习算法)的机械臂控制模型的正向奖励,即将该相应的阻力信号作为上述学习算法的正反馈信号;其它情况下则作为负向惩罚,即将其他情况下相应的阻力信号作为上述学习算法的负反馈信号。

具体地,首先,利用机器人的两个摄像头采集包含充电插口的多帧环境图像,在获得多帧环境图像之后,利用滑动框slider对环境图像进行屏幕滑动检索,并利用预先构建的插口分类器,识别出环境图像中的充电插口。其次,在识别充电插口之后,控制器控制机器人向充电插口移动,当机器人移动至机器人的机械臂能够接触到充电插口的范围内时,控制器输出包含第一动作序列的控制信号,并控制机械臂执行第一动作序列中的动作;在机械臂执行第一动作序列中的动作之后,判断电源管理器是否获取到充电成功信号,该充电成功信号用于表示插头成功插入充电插口,当电源管理器得到充电成功信号时,则表示机械臂的插头成功插入充电插口。当电源管理器没有得到充电成功信号时,则表示机械臂的插头未成功插入充电插口,此时,控制器接收机械臂上的阻力传感器产生的阻力信号,并将阻力信号作为学习算法(如q-learning学习算法)的输入信号,并输出包含第二动作序列的控制信号,机械臂则按照该控制信号执行第二动作序列中的动作,使械臂上的插头成功插入充电插口。

通过上述实施例,实现了机器人与电源的有线连接,从而可以更好的保证机器人的充电效率。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1