【技术领域】
本发明涉及机器人领域,具体涉及一种基于软性手指的控制方法。
背景技术:
机械手是能模仿人手和臂的某些动作功能,用以按固定程序抓取、搬运物件或操作工具的自动操作装置。为了能把物体抓住而由不因夹持力过大而对物体造成伤害,要解决两个关键问题,一是能感知与测量压觉和滑觉功能的机器人触觉传感器;二是应施加多大的夹持力。
在稳定抓取和灵活使用工具的过程中,人类手指的柔软性扮演着很重要的作用。随着新技术的快速发展,仿人机器人的应用也越来越广泛。现有技术中的机械手的手指大多用刚性材料制作而成。刚性手指与被抓取物品之间的接触面积小,所需的抓力也很大,不适合抓取用脆性、易碎材料制成的物品(如玻璃杯等)。另外,用刚性手指抓取目标物体最少需要三个手指才能实现稳定抓取。基于上述诸多问题,现在亟需一种新的基于软性手指的控制方法,采用所述方法,能够在最大程度上增加软手指与被抓取物体之间的接触面积、减小了抓取力、减少了冲击力;同时引入软手指模型,解决夹持力控制,能够降低多个手指同时加持时带来的计算复杂度,尤其能够在实时的力的控制时计算出瞬间夹持力以进行手指控制。尤其解决了基于带有多个软性手指的仿人机械手的最小抓力算法问题。
技术实现要素:
为了解决现有技术中的上述问题,本发明采用的技术方案如下:一种基于软性手指的控制方法,所述方法包括如下步骤:
步骤1:机器人确定需要抓取的目标物体;具体为:机器人基于任务指派,搜索需要抓取的待选目标物体;在找到待选目标物体后进行待选目标物体的核对,将经过核对的待选目标物体确定为目标物体;
机器人基于任务指派,搜索需要抓取的待选目标物体;具体为:机器人通过人机交互界面或者远程终端接收任务指派,解析指派的任务,当任务为抓取任务时,确定需要抓取的目标物体及其基本属性信息和深度属性信息,基于基本属性信息搜索工作空间中的待选目标物体;其中,基本属性信息描述了目标物体最基本的属性,所述基本属性为容易获取的属性信息;
在找到待选目标物体后进行待选目标物体的核对,将经过核对的待选目标物体确定为目标物体;具体为:基于深度属性信息进行目标物体的核对;其中,深度属性信息描述了目标物体的除了基础属性之外的详细属性信息;所述深度属性需要进行进一步计算或者启动一个或者多个传感器来获取;
步骤2:获取确定的目标物体的形状;将所述形状用于最小抓力的计算中;
步骤3:机器人确定目标物体的位置,并驱动软性手指抓取目标物体;
步骤4:在抓取目标物体以及后续移动过程中,实时计算最小抓力,并基于最小抓力来进行软性手指的夹持。
进一步的,步骤4具体为:通过目标物体的基本属性和深度属性信息,确定目标物体是否为脆性物体,如果是,实时计算最小抓力,并基于最小抓力来进行软性手指的夹持;所述最小抓力为指尖与物体保持压接触且不发生相对滑动的最小的抓力;如果目标物体不是脆性物体,则不计算最小抓力,基于物体的质量查找预设抓力,并基于所述预设抓力进行目标物体的夹持。
进一步的,步骤4中的实时计算最小抓力,包括,步骤a1:建立软性手指的线性接触模型;步骤a2:建立机械手目标物体抓取模型;a3:基于步骤a1和a2建立的模型,通过拉格朗日乘子计算多个软性手指对物体的最小抓力。
进一步的,所述步骤a1:建立软性手指的线性接触模型,具体为:设置每个软性手指的接触力f与手指形变量d之间的线性关系;
其中:公式(1)采用每个软性手指顶面的中心点为原点的lt局部坐标系(n个手指有n个lt局部坐标系);f为软性手指和目标物体之间的接触力,n个软性手指在n个接触点的接触力表示为f1~fn;e是预设值,所述预设值和手指的材料相关,可以根据经验或者收敛算法来确定;d为软性手指沿z方向的形变量最大值;
进一步的,所述步骤a2:建立机械手目标物体抓取模型,具体为:a21建立机械手抓取模型和a22软性手指接触模型。
进一步的,a21:建立机械手抓取模型,具体为:
建立目标物体的运动方程,目标物体的运动方程采用的是坐标系0;
其中;
其中:fi是第i个软性手指在第i个接触点的接触力,也即第i个手指接触目标物体所产生的fix,fiy,fiz三个力的合力,其中,fix,fiz分别是fi的切向分量,fiy是fi的法向分量;fc是用向量的形式表示的多个软性手指对目标物体的接触力,
进一步的,所述a22:建立软性手指接触模型,具体为:
fc=w#fr+ny公式(3)
多个软性手指对物体的接触力分为二个部分,w#fr称为操作力,ny(即n×y)是抓握时产生的内力,内力不产生位移;
进一步的:
w#fr=[fo1tfo2t…font]t
n=[n1tn2t…nnt]t
其中:
在接触点pi的内部单位法向量可以表示为:
其中;eni为第i个手指在法向上的内部单位法向量,grads(pi)为接触点pi的梯度,s(x,y,z)=0为目标物体的形状;
设置约束条件gi(y):gi(y)是应用于第i根手指的约束条件;
gi(y)≤0fori=1,...,2n公式(5)
具体的:
其中;eni-n和foi-n的下标i的取值范围为i=n+1,…,2n,μi是库仑摩擦系数,μsi是扭矩系数,e3是基于软手指材料和手指结构的预设值,并且可以在机械手在抓取目标物体的过程中进行修正值;n是软性手指的数量;b0和bi(b1~bn)为中间变量。
进一步的,软性手指有有三个独立关节,指尖为半球状,指尖外面包覆一层硅酮橡胶。
进一步的,在机械手目标物体抓取模型中,建立以目标物体的质心为坐标系的原点的坐标系0为目标物体;p是接触点,p1~pn为n个软性手指的接触点,建立以软手指与目标物体的接触点pi为原点的局部坐标系li。
进一步的,所述a3:基于步骤a1和a2建立的模型,通过拉格朗日乘子计算多个软性手指对物体的最小抓力,具体为:
等效的将接触力fc最小化的设置为:
设置h(y)=(w#fr+ny)t(w#fr+ny);
引入一个拉格朗日乘子λ进行约束优化,将约束条件函数g(y)与原函数h(y)联系到一起,配成与变量数量相等的等式方程,从而求函数h(y)在g(y)=0的约束条件下的最小值;拉格朗日乘子λ表示为:
l(y;λ)=h(y)+λtg(y)公式(6)
其中;l(y;λ)为求解最小值的增广拉格朗日函数;
产生h(y)的局部最小值的必要条件是:
从上述公式得出:
得出最小值h(y)时的yo的值之后,设置y=yo,计算最小的内力ny,进而由公式(3)获取最小接触力fc作为最小抓力。
采用本发明,能够在最大程度上增加软手指与被抓取物体之间的接触面积、减小了抓取力、减少了冲击力;同时引入软手指模型,解决夹持力控制,能够降低多个手指同时加持时带来的计算复杂度,尤其能够在实时的力的控制时计算出瞬间夹持力以进行手指控制。
【附图说明】
此处所说明的附图是用来提供对本发明的进一步理解,构成本申请的一部分,但并不构成对本发明的不当限定,在附图中:
图1是本发明的软性手指形变模型的示意图。
图2是本发明的机械手抓取模型的示意图。
图3是本发明的软性手指接触模型的示意图。
【具体实施方式】
下面将结合附图以及具体实施例来详细说明本发明,其中的示意性实施例以及说明仅用来解释本发明,但并不作为对本发明的限定。
参见附图1,是本发明所应用的一种基于软性手指的控制方法,所述方法包括如下步骤:
步骤1:机器人确定需要抓取的目标物体;具体为:机器人基于任务指派,搜索需要抓取的待选目标物体;在找到待选目标物体后进行待选目标物体的核对,将经过核对的待选目标物体确定为目标物体;
机器人基于任务指派,搜索需要抓取的待选目标物体;具体为:机器人通过人机交互界面或者远程终端接收任务指派,解析指派的任务,当任务为抓取任务时,确定需要抓取的目标物体及其基本属性信息和深度属性信息,基于基本属性信息搜索工作空间中的待选目标物体;其中,基本属性信息描述了目标物体最基本的属性,所述基本属性为容易获取的属性信息;
例如:抓取任务中指定需要抓取水杯,则所述任务为抓取任务,确定所述任务中需要抓取的目标物体为水杯,属性信息为白色、玻璃、水杯;基于所述属性信息,在工作空间中搜索属性信息匹配的目标物体;
在找到待选目标物体后进行待选目标物体的核对,将经过核对的待选目标物体确定为目标物体;具体为:基于深度属性信息进行目标物体的核对;其中,深度属性信息描述了目标物体的除了基础属性之外的详细属性信息;优选的:深度属性信息包括:尺寸、透光度、体积等信息,所述深度属性需要进行进一步计算或者启动一个或者多个传感器来获取;
例如:通过传感器获取待选目标物体的深度属性信息,逐个的进行所有待选目标物体的核对;对于一个待选目标物体,进行其深度属性的逐项对比,当所有深度属性均匹配时,则确定所述一个待选目标为确定的目标物体;
步骤2:获取确定的目标物体的形状,将所述形状用于最小抓力的计算中;
优选的:机器人通过图像传感或者红外线反射等方式获取目标物体的形状,将形状表示为s(x,y,z)=0;(x,y,z)为空间坐标;
步骤3:机器人确定目标物体的位置,并驱动软性手指抓取目标物体;
优选的,抓取目标物体的手指数量为二个或者多个。
步骤4:在抓取目标物体以及后续移动过程中,实时计算最小抓力,并基于最小抓力来进行软性手指的夹持;
优选的:通过目标物体的基本属性信息和深度属性信息,确定目标物体是否为脆性物体,如果是,实时计算最小抓力,并基于最小抓力来进行软性手指的夹持;如果目标物体不是脆性物体,则不计算最小抓力,基于物体的质量查找预设抓力,并基于所述预设抓力进行目标物体的夹持;保存质量和预设抓力之间的对应关系;所述质量通过体积和密度计算得到;
所述最小抓力为指尖与物体保持压接触且不发生相对滑动的最小的抓力,无需计算出每个瞬间的夹持力;本方法解决了基于带有多个软性手指的仿人机械手的最小抓力算法问题;
优选的:将用于感知与测量压觉和滑觉功能的机器人触觉传感器安装在手指的凹槽中,以精确感知和测量手指和目标物体之间的距离和抓力的大小。
优选的:夹持所需的抓力的大小与机械手指的软硬、夹持的位置、目标物体的重量、被抓取的目标物体在运动中产生的惯性力、振动及传动效率等因素有关,在抓取和移动目标物体的过程中实时计算最小抓力;
步骤4中的实时计算最小抓力,具体为:
步骤a:建立二个模型,第一模型:软性手指的线性接触模型,第二模型:机械手目标物体抓取模型;
a1:建立软性手指的线性接触模型,具体为:设置每个软性手指的接触力f与手指形变量d之间的线性关系;
其中:公式(1)采用每个软性手指顶面的中心点为原点的lt局部坐标系(n个手指有n个对应的lt局部坐标系);f为软性手指和目标物体之间的接触力,n个软性手指在n个接触点的接触力表示为f1~fn;e是预设值,所述预设值和手指的材料相关,可以根据经验或者收敛算法来确定;d为软性手指沿z方向的形变量最大值;
附图1是y=0的剖面图,
a2:建立机械手目标物体抓取模型,具体为:建立机械手抓取模型和软性手指接触模型;
机械手目标物体抓取模型由处于三维空间的目标物体和多指机械手组成;机械手由n个软性手指组成(n≥2),且由软性手指的指尖接触目标物体;对于软性手指接触,指尖对物体除施加接触力外,还施加一个沿法向的扭矩;
优选的:软性手指由硅酮橡胶制成;大大增加了机械手指与被抓取物体之间的接触面积,减小了抓取力;优选的:软性手指有有三个独立关节,指尖为半球状,指尖外面包覆一层硅酮橡胶;
在机械手抓取模型中,建立以目标物体的质心为坐标系的原点的坐标系0为目标物体,p是接触点(p1~pn为n个软性手指的接触点);建立以软手指与目标物体的接触点pi为原点的局部坐标系li。
优选的:在物体抓取过程中建立力封闭模型,力封闭模型确保任何外力都能得到平衡;力封闭确保任何外力都能得到平衡,力封闭是稳定抓取的前提。基于此,在进行最小抓力的计算过程中需要满足手指与目标物体相互接触且无滑动,每个接触点处的接触力fi必须位于摩擦锥内,即接触力的切向分量必须不大于其法向分量与摩擦系数的乘积;
为了保证多指手能够完成稳定的抓取,在操作的过程中,多指手的抓取必须满足力平衡的条件,即所有作用在目标物体上的力(包括手指的抓取力和外力)其矢量和必须为零,如果手指作用在接触点的力可以抵消作用在物体上的任意力旋量,那么称该抓取满足力封闭条件。通常要求抓取物体的操作过程中满足力封闭条件。如果抓取满足力封闭条件,就可以根据作用在物体上的外力,求解各手指的抓取力。作用在刚体上的任何力系都可以合成为一个沿某直线的集中力和绕该直线的力矩,这一广义力即为力旋量;
a21:建立机械手抓取模型,具体为:
建立目标物体的运动方程,目标物体的运动方程采用的是坐标系0;
其中;
其中:fi是第i个软性手指在第i个接触点的接触力,也即第i个手指接触目标物体所产生的fix,fiy,fiz三个力的合力,其中,fix,fiz分别是fi的切向分量,fiy是fi的法向分量;fc是用向量的形式表示的多个软性手指对目标物体的接触力,
a22:建立软性手指接触模型,具体为:
fc=w#fr+ny公式(3)
多个软性手指对物体的接触力分为二个部分,w#fr称为操作力,ny(即n×y)是抓握时产生的内力,内力不产生位移;优选的:内力指其在抓握时,接触点处作用于目标物体但并不引目标起物体总的受力及力矩变化的力,内力使手指与物体满足静摩擦约束,防止沿物体表面滑动;
进一步的:
w#fr=[fo1tfo2t…font]t
n=[n1tn2t…nnt]t
其中:
a的零空间矩阵是一组由ker(a)={x∈cn:ax=0}定义的n维向量,即线性方程组ax=0的所有解x的集合;其中a为一个m*n的矩阵。矩阵可以看做一组列向量c1,c2,...,cn,如果这组向量是线性无关的,那么ax=0的解空间只包含一个向量:零向量。反之,如果零空间包含非零向量,说明矩阵的列向量线性相关。
在接触点pi的内部单位法向量可以表示为:
其中;eni为第i个手指在法向上的内部单位法向量,grads(pi)为接触点pi的梯度,s(x,y,z)=0为目标物体的形状;
设置约束条件gi(y):gi(y)是应用于第i根手指的约束条件;
gi(y)≤0fori=1,...,2n公式(5)
具体的:
其中;eni-n和foi-n的下标i的取值范围为i=n+1,…,2n,μi是库仑摩擦系数,μsi是扭矩系数,e3是基于软手指材料和手指结构的预设值,并且可以在机械手在抓取目标物体的过程中进行修正值。n是软性手指的数量;b0和bi(b1~bn)为中间变量。
a3:基于步骤a1和a2建立的模型,通过拉格朗日乘子计算多个软性手指对物体的最小抓力;
等效的将接触力fc最小化的设置为:
设置h(y)=(w#fr+ny)t(w#fr+ny);
引入一个拉格朗日乘子λ进行约束优化,将约束条件函数g(y)与原函数h(y)联系到一起,配成与变量数量相等的等式方程,从而求函数h(y)在g(y)=0的约束条件下的最小值;拉格朗日乘子λ表示为:
l(y;λ)=h(y)+λtg(y)公式(6)
其中;l(y;λ)为求解最小值的增广拉格朗日函数;
产生h(y)的局部最小值的必要条件是:
从上述公式得出:
其中;
得出最小值h(y)时的yo的值之后,设置y=yo,计算最小的内力ny,进而由公式(3)获取最小接触力fc作为最小抓力;
本发明的一种基于软性手指的控制方法,能够在最大程度上增加软手指与被抓取物体之间的接触面积、减小了抓取力、减少了冲击力;同时引入软手指模型,解决夹持力控制,能够降低多个手指同时加持时带来的计算复杂度,尤其能够在实时的力的控制时计算出瞬间夹持力以进行手指控制。尤其是解决了基于带有多个软性手指的仿人机械手的最小抓力算法问题。
以上所述仅是本发明的较佳实施方式,故凡依本发明专利申请范围所述的构造、特征及原理所做的等效变化或修饰,均包括于本发明专利申请范围内。