CN115674207B - 机械臂关节耦合误差补偿方法、装置、设备和存储介质 - Google Patents
机械臂关节耦合误差补偿方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN115674207B CN115674207B CN202211621572.2A CN202211621572A CN115674207B CN 115674207 B CN115674207 B CN 115674207B CN 202211621572 A CN202211621572 A CN 202211621572A CN 115674207 B CN115674207 B CN 115674207B
- Authority
- CN
- China
- Prior art keywords
- joint
- error
- errors
- motor
- joints
- 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
- 230000008878 coupling Effects 0.000 title claims abstract description 123
- 238000010168 coupling process Methods 0.000 title claims abstract description 123
- 238000005859 coupling reaction Methods 0.000 title claims abstract description 123
- 238000000034 method Methods 0.000 title claims abstract description 45
- 230000005540 biological transmission Effects 0.000 claims abstract description 70
- 238000006073 displacement reaction Methods 0.000 claims abstract description 41
- 238000001514 detection method Methods 0.000 claims abstract description 5
- 238000004590 computer program Methods 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000035484 reaction time Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000005259 measurement Methods 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
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Abstract
本申请涉及一种机械臂关节耦合误差补偿方法、装置、设备和存储介质。方法包括:基于机械臂末端的目标位姿,得到各关节对应的理论电机转角;根据理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差;基于传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差,并基于各关节末端的挠度误差和齿隙产生的位移误差,得到各关节刚柔耦合产生的耦合误差;对耦合误差进行解耦,得到各个关节对应的电机转角误差,并基于电机转角误差对电机进行误差补偿。采用本方法能够实现对刚柔耦合机械臂的关节耦合误差检测与补偿,大大提高了机械臂操作准确性。
Description
技术领域
本申请涉及工控技术领域,特别是涉及一种机械臂关节耦合误差补偿方法、装置、设备和存储介质。
背景技术
在工业控制中,工业机器人作为重要的设备之一,在各种工业中应用越来越广泛,但同时,这也对于工业机器人也提出了更高的要求。其中,工业机械臂由于对应关节之间存在误差,所以需要对误差进行补偿。
在传统技术中,工业机械臂可以分为刚体系统、柔性系统、刚柔耦合系统,针对刚体系统有间隙空回补偿,针对柔性系统有变形补偿,针对刚柔耦合系统有结合前述两者的非线性补偿。这些误差补偿方法建立在驱动动力源布置于机械臂关节上,各关节之间的误差存在关联而无耦合关系,即只存在多关节误差叠加后影响机械臂末端的总体误差,而不存在关节误差相互之间产生影响。因此,上述误差补偿无法适用于多关节误差互相影响工况下对机械臂进行误差补偿。
因此,需要解决机械臂关节转角误差间存在耦合关系时机械臂末端的误差补偿问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够实现多关节误差互相影响工况下误差补偿的机械臂关节耦合误差补偿方法、装置、设备和存储介质。
第一方面,本申请提供了一种机械臂关节耦合误差补偿方法,方法包括:
基于机械臂末端的目标位姿,得到各关节对应的理论电机转角;
根据理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差;
基于传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差,并基于各关节末端的挠度误差和齿隙产生的位移误差,得到各关节刚柔耦合产生的耦合误差;
对耦合误差进行解耦,得到各个关节对应的电机转角误差,并基于电机转角误差对电机进行误差补偿。
在其中一个实施例中,基于机械臂末端的目标位姿,得到各关节对应的理论电机转角包括:
基于机械臂关节之间的运动学模型,将目标位姿转换为各关节的理论关节转角;
基于关节转角与电机转角之间的耦合关系,对理论关节转角进行解耦,得到各关节对应的理论电机转角。
在其中一个实施例中,根据理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差包括:
根据理论电机转角判断电机是否发生换向,判断各关节驱动齿轮是否存在传动链间隙误差:
若发生换向,则对应关节驱动齿轮存在传动链间隙误差,若不发生换向,则对应关节驱动齿轮不存在传动链间隙误差。
在其中一个实施例中,基于传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差包括:
根据传动链间隙误差确定每组齿轮产生的挠度值,并根据每组齿轮产生的挠度值得到各关节末端的挠度误差;
根据传动链间隙误差及各关节到驱动电机的臂长,得到各关节末端齿隙产生的位移误差。
在其中一个实施例中,对耦合误差进行解耦,得到各个关节对应的电机转角误差包括:
基于机械臂关节之间的运动学模型,将耦合误差转变为关节转角误差;
基于关节转角与电机转角之间的耦合关系,对关节转角误差进行解耦,得到电机转角误差。
在其中一个实施例中,基于电机转角误差对电机进行误差补偿之后还包括:
对补偿后各关节对应的电机转角进行耦合,得到补偿后的关节转角;
基于机械臂关节之间的运动学模型,对补偿后的关节转角求正解,得到补偿后的实际位姿;
通过实际位姿和目标位姿之间的偏差值,验证实际位姿是否合格。
在其中一个实施例中,通过实际位姿和目标位姿之间的偏差值,验证实际位姿是否合格包括:
若偏差值小于或等于预设阈值,则实际位姿合格;
若偏差值大于预设阈值,则将补偿后的关节转角作为新的理论关节转角,并基于新的理论关节转角重新确定电机转角误差并对电机进行误差补偿。
第二方面,本申请还提供了一种机械臂关节耦合误差补偿装置,装置包括:
位姿模块,用于基于机械臂末端的目标位姿,得到各关节对应的理论电机转角;
判断模块,用于根据理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差;
检测模块,用于基于传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差,并基于各关节末端的挠度误差和齿隙产生的位移误差,得到各关节刚柔耦合产生的耦合误差;
补偿模块,用于对耦合误差进行解耦,得到各个关节对应的电机转角误差,并基于电机转角误差对电机进行误差补偿。
第三方面,本申请还提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述任意一种实施例所述的机械臂关节耦合误差补偿方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任意一种实施例所述的机械臂关节耦合误差补偿方法的步骤。
上述机械臂关节耦合误差补偿方法、装置、设备和存储介质,通过基于机械臂末端的目标位姿,得到各关节对应的理论电机转角,根据所述理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差,基于所述传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差,并基于各关节末端的挠度误差和齿隙产生的位移误差,得到各关节刚柔耦合产生的耦合误差,对所述耦合误差进行解耦,得到各个关节对应的电机转角误差,并基于所述电机转角误差对电机进行误差补偿,如此,充分考虑了齿轮组间耦合关系对于末端绝对误差的影响,在多关节互相影响下,实现了刚性误差和柔性误差的测量,从而实现了对刚柔耦合机械臂的耦合误差检测与补偿,解决了现有刚柔耦合算法在耦合运动工况下的应用局限性、以及机械臂关节转角误差间存在耦合关系时机械臂末端的误差补偿问题,提高了刚柔耦合机械臂的操作准确性。
附图说明
为了更清楚地说明本申请实施例或传统技术中的技术方案,下面将对实施例或传统技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中机械臂关节耦合误差补偿方法的流程示意图;
图2为一个实施例中机械臂的整体结构示意图;
图3为一个实施例中机械臂的齿轮组结构示意图;
图4为一个实施例中机械臂的齿轮啮合示意图;
图5为一个实施例中机械臂关节耦合误差补偿方法的补偿校验流程示意图;
图6为一个实施例中机械臂关节耦合误差补偿方法的逻辑示意图;
图7为一个实施例中机械臂关节耦合误差补偿装置的结构框图;
图8为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
需要说明的是,当一个元件被认为是“连接”另一个元件时,它可以是直接连接到另一个元件,或者通过居中元件连接另一个元件。此外,以下实施例中的“连接”,如果被连接的对象之间具有电信号或数据的传递,则应理解为“电连接”、“通信连接”等。
在此使用时,单数形式的“一”、“一个”和“所述/该”也可以包括复数形式,除非上下文清楚指出另外的方式。还应当理解的是,术语“包括/包含”或“具有”等指定所陈述的特征、整体、步骤、操作、组件、部分或它们的组合的存在,但是不排除存在或添加一个或更多个其他特征、整体、步骤、操作、组件、部分或它们的组合的可能性。
本申请实施例提供的机械臂关节耦合误差补偿方法,可以应用于刚柔耦合的机械臂,实现刚柔耦合情况下误差的补偿。
普通工业机械臂对应关节间隙的补偿,可以基于关节的正反转进行正负值补偿,关节无翻转倾向时,无需补偿间隙误差,但当存在关节转角与电机转角之间存在耦合的情况时,无法通过关节的转角方向进行间隙误差是否需要补偿的判定,因为电机的转动到关节的转动之间存在一个传动链,该传动链中间隙对对应关节转角产生的误差受其他传动链的耦合影响。
以两个传动链为例,当关节转角关系为Rθ1=θ1*i1+Dθ1,Rθ2= (θ1+ Dθ1) *i2 +θ2*i2+ Dθ2,其中, Rθ1、Rθ2分别为关节1、2的转角,θ1、θ2为电机1、2的转角,Dθ1、Dθ2为传动链1、2间隙误差,i1、i2为耦合系数,则关节2转角的误差DRθ2= Dθ1*i2+ Dθ2,在此情况下,Dθ1*i2与Dθ2的大小不确定,当存在正负时,DRθ2存在正负,即无法从关节2的转角方向来判定间隙补偿值DRθ2的正负,即无法判断是否需要补偿间隙值,换而言之,无法通过关节2的转角方向切换,来判定是否需引入间隙误差补偿值,即关节2的转角方向切换时,电机2的转角方向未切换,则需通过关节与电机转角的耦合矩阵来进行判定。同理,基于间隙变化趋势的不确定性,关节的变形量也存在不确定性。
在一个实施例中,如图1所示,提供了一种机械臂关节耦合误差补偿方法,包括以下步骤:
S100:基于机械臂末端的目标位姿,得到各关节对应的理论电机转角;
具体地,机械臂末端即机械臂的执行端,目标位姿为机械臂执行端的目标位置和目标姿态,其中,目标位置可以通过空间坐标表示,目标姿态可以通过正交旋转矩阵、固定角、欧拉角、等效轴角、单位四元数等表示。
具体地,基于机械臂的运动学模型以及关节转角和电机转角之间的耦合关系,得到各关节对应的理论电机转角,其中,不同机械臂,其运动学模型以及耦合关系有所不同,具体需要根据机械臂具体的结构确定运动学模型和耦合关系。
S200:根据理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差;
具体地,理论电机转角的转向指的是电机转动方向,传动链间隙误差指的是关节驱动齿轮由于啮合间隙引起的误差。由于各关节的电机驱动齿轮之间啮合存在间隙,该间隙会导致电机工作中存在一定的虚位,也就会产生各关节驱动齿轮的传动链间隙误差,其中,当电机两次沿同一方向的转动时,由于驱动齿轮之间啮合点保持在同一侧,所以此情况下不存在传动链间隙误差,而当电机两次沿相反方向转动,由于驱动齿轮之间啮合点在不同侧,转向需要跨过驱动齿轮之间啮合存在的间隙,所以此情况下就会存在传动链间隙误差。
具体地,基于上述原理可知,传动链间隙误差产生的条件是电机发生换向,即电机的转动方向发生改变,因此,本实施例根据理论电机转角的转向,确定各关节驱动齿轮是否存在传动链间隙误差。进一步地,传动链间隙误差为常量,传动链间隙误差的大小由电机驱动齿轮之间啮合的间隙决定,并且随着使用时间的增长,由于磨损该间隙误差也会逐渐增大。
S300:基于传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差,并基于各关节末端的挠度误差和齿隙产生的位移误差,得到各关节刚柔耦合产生的耦合误差;
具体地,挠度误差为在受力时关节轴线在垂直于轴线方向的线位移,其中,以图2和图3为例,各关节对应电机的扭矩通过齿轮组传递到关节上,并且由于关节之间存在齿轮啮合耦合关系,所以关节具体扭矩由相应的一组或多组齿轮共同承担,对应地,关节产生的挠度变形由相应的齿轮组以及相关传递链共同承受。进一步地,参看图4,齿轮组的啮合关系存在不确定性,即啮合点可能在左侧或右侧,并且由于有其他齿轮组作支撑,齿轮组之间会存在一组或多组齿轮不受力的情况,因此,关节产生的挠度变形具体与相应的各个齿轮组的啮合关系相关。基于上述原理,本实施例根据传动链间隙误差确定每一相关齿轮组的啮合关系,从而确定关节整体产生的挠度变形,即挠度误差。
具体地,各关节末端齿隙产生的位移误差为传动链间隙误差在关节上所产生的位移误差,其中,可以根据机械臂具体结构所对应的运动学模型进行转换,以得到各关节末端齿隙产生的位移误差。
具体地,挠度误差反映的是柔性误差,位移误差反映的是刚性误差,通过上述各关节末端的挠度误差和齿隙产生的位移误差进行叠加,可以得到各关节刚柔耦合产生的耦合误差,其中,挠度误差和位移误差均是位移变量,因此得到的耦合误差也是位移变量,反映的是各关节末端整体误差产生的位移量。
S400:对耦合误差进行解耦,得到各个关节对应的电机转角误差,并基于电机转角误差对电机进行误差补偿。
具体地,正如上述所述,耦合误差为各个关节末端整体误差产生的位移量,根据该位移量和关节转角之间的转换关系、以及关节转角和电机转角之间的耦合关系,即可以得到各个关节对应的电机转角误差,即电机需要补偿的角度,基于各个电机转角误差对电机进行误差补偿,以实现机械臂整体的补偿。
上述机械臂关节耦合误差补偿方法,充分考虑了齿轮组间耦合关系对于末端绝对误差的影响,在多关节互相影响下,实现了刚性误差和柔性误差的测量,从而实现了对刚柔耦合机械臂的耦合误差检测与补偿,解决了现有刚柔耦合算法在耦合运动工况下的应用局限性、以及机械臂关节转角误差间存在耦合关系时机械臂末端的误差补偿问题,提高了刚柔耦合机械臂的操作准确性。
在一个实施例中,基于机械臂末端的目标位姿,得到各关节对应的理论电机转角包括:基于机械臂关节之间的运动学模型,将目标位姿转换为各关节的理论关节转角;基于关节转角与电机转角之间的耦合关系,对理论关节转角进行解耦,得到各关节对应的理论电机转角。
具体地,根据机械臂具体的结构和运动学模型,可以确定机械臂目标位姿与各关节转角之间的对应关系,以此实现目标位姿到理论关节转角的转换,同样地,根据机械臂具体的结构和运动学模型,还可以确定机械臂关节转角和电机转角之间的耦合关系,以此实现理论关节转角的解耦,从而得到理论电机转角。
例如,参看图2,总共有7个关节,对应有7个电机,该机械臂中关节转角和电机转角之间的耦合关系可以表示为:
Rθ1=i1×θ1 公式1
Rθ2=i2×θ1+i2×θ2 公式2
Rθ3=i3×θ1+i3×θ2-i3×θ3 公式3
Rθ4=i4×θ1+i4×θ2-i4×θ3+i4×θ4 公式4
Rθ5=i5×θ1+i5×θ2-i5×θ3+i5×θ4+i5×θ5 公式5
Rθ6=i6×θ1+i6×θ2-i6×θ3+i6×θ4+i6×θ5+i6×θ6 公式6
Rθ7=i7×θ1+i7×θ2-i7×θ3+i7×θ4+i7×θ5+i7×θ6+i7×θ7 公式7
其中,Rθ1至Rθ7为关节转角,θ1至θ7为电机转角,i1至i7为耦合系数,各项的正负由具体机械臂结构决定。
对于上述机械臂而言,具体基于上述公式1至公式7,可以实现理论关节转角的解耦,得到理论电机转角。
在一个实施例中,根据理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差包括:根据理论电机转角判断电机是否发生换向,判断各关节驱动齿轮是否存在传动链间隙误差:若发生换向,则对应关节驱动齿轮存在传动链间隙误差,若不发生换向,则对应关节驱动齿轮不存在传动链间隙误差。
具体地,基于上述介绍的原理,本实施例基于理论电机转角的转向,判断基于理论电机转角是否发生换向,以确定各关节驱动齿轮是否存在传动链间隙误差,其中,若理论电机转角存在转向,则对应关节驱动齿轮存在传动链间隙误差,可选地,基于上述原理,本实施例基于理论电机转角的转向,判断各关节驱动,若理论电机转角不存在转向,则对应关节驱动齿轮不存在传动链间隙误差。
在一个实施例中,基于传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差包括:根据传动链间隙误差确定每组齿轮产生的挠度值,并根据每组齿轮产生的挠度值得到各关节末端的挠度误差;根据传动链间隙误差及各关节到驱动电机的臂长,得到各关节末端齿隙产生的位移误差。
具体地,根据传动链间隙误差确定每组齿轮的啮合关系,若啮合点不发生变化,则对应的齿轮组不产生挠度值,若啮合点发生变化,则对应的齿轮组产生挠度值,进一步将产生挠度值进行叠加得到关节整体的挠度误差。
例如,参看图2和图3,总共有7个关节,对应有7个电机,并通过7个齿轮组传输扭矩,其中,关节1的扭矩由齿轮组1~7共同承担,关节2的扭矩由齿轮组2~7共同承担,以此类推,关节6的扭矩由齿轮组6和7共同承担,关节7的扭矩由齿轮组7承担。具体以关节2为例,关节2产生的末端挠度值f iΣ为每个齿轮组产生的挠度值f i之和,公式可以表示为:
f iΣ=k2*f2+ k3*f3+ k4*f4+ k5* f5+ k6* f6+ k7*f7
其中,每个齿轮组产生的挠度变形用f i来表示,当传递链间隙误差Dθi>0时,ki=0,当Dθi=0时,ki =1,Dθi不存在小于0的值。以此类推可以得到其他关节产生的挠度值,该挠度值即对应关节末端的挠度误差。
具体地,根据机械臂的具体结构,根据传动链间隙误差及各关节到驱动电机的臂长,得到各关节末端齿隙产生的位移误差,例如,参看图2,设关节i到驱动电机末端的臂长是Li,则齿隙产生的绝对值误差可以近似为Ei=Li*tan(Dθi)。
在一个实施例中,对耦合误差进行解耦,得到各个关节对应的电机转角误差包括:基于机械臂关节之间的运动学模型,将耦合误差转变为关节转角误差;基于关节转角与电机转角之间的耦合关系,对关节转角误差进行解耦,得到电机转角误差。
具体地,关节转角误差为因耦合误差而引起的关节误差,基于机械臂的具体结构和运动学模型,确定耦合误差与关节转角误差之间的对应关系,即关节位移与关节转角之间的对应关系,从而将耦合误差转变为关节转角误差。
具体地,再基于关节转角和电机转角之间的耦合关系,对关节转角误差进行解耦,从而得到各个电机转角误差,以进行电机误差补偿。
例如,参看图2,以上述举例中的公式1至公式7为例,当引入传动链间隙误差Dθ1~Dθ7,则关节1的耦合关系转变为Rθ1=i1×θ1+Dθ1,即关节1的转角误差DRθ1= Dθ1,关节2 的耦合关系转变为Rθ2= (θ1+ Dθ1) *i2 +θ2*i2 + Dθ2,即关节2的转角误差DRθ2= Dθ1*i2+Dθ2,以此类推,关节3的转角误差DRθ2= (Dθ1+Dθ2)*i3- Dθ3,同理关节7的转角误差DRθ7=(Dθ1+ Dθ2-Dθ3+ Dθ4+ Dθ5+ Dθ6)*i7+ Dθ7。基于上述引入传动链间隙误差之后的耦合关系,对关节转角误差进行解耦,就可以得到各个电机转角误差,从而进行电机误差补偿。
在一个实施例中,参看图5,基于电机转角误差对电机进行误差补偿之后还包括:S501:对补偿后各关节对应的电机转角进行耦合,得到补偿后的关节转角;S502:基于机械臂关节之间的运动学模型,对补偿后的关节转角求正解,得到补偿后的实际位姿;S503:通过实际位姿和目标位姿之间的偏差值,验证实际位姿是否合格。
具体地,在对电机误差补偿之后,基于关节转角和电机转角之间的耦合关系,对补偿后各关节对应的电机转角进行耦合计算,得到补偿后的关节转角,然后基于机械臂的运动学模型,将补偿后的关节转角转换为实际位姿,以于目标位姿进行比较,通过偏差值确定实际位姿是否补偿到位。
在一个实施例中,通过实际位姿和目标位姿之间的偏差值,验证实际位姿是否合格包括:若偏差值小于或等于预设阈值,则实际位姿合格;若偏差值大于预设阈值,则将补偿后的关节转角作为新的理论关节转角,并基于新的理论关节转角重新确定电机转角误差并对电机进行误差补偿。
具体地,通过预设反映允许误差范围的阈值,确定偏差值是否在允许范围内,若偏差值小于或等于预设阈值,则说明补偿之后的实际位姿已达到目标位姿的允许误差范围内,若偏差值大于预设阈值,则说明本次补偿之后的实际位姿误差过大,对此,可以将补偿后的关节转角作为新的理论关节转角,通过上述方法重新确定电机转角误差并对电机进行误差补偿,直至实际姿态已达到目标位姿的允许误差范围内。
现结合一具体场景对本实施例进行详细说明,但不仅限于此。
参看图2和图3,该机械臂共有总共有7个关节,对应有7个电机,关节和电机之间有7个齿轮组,各电机的扭矩分别通过对应的齿轮组传递到对应的关节上,其中,关节之间存在耦合关系,关节1的转角由电机1的转角决定,关节2的转角由电机1和2的转角决定,关节3的转角由电机1~3的转角决定……关节7的转角由电机1~7的转角决定,关节2的扭矩由齿轮组2至齿轮组7共同承担,关节3的扭矩由齿轮组3至齿轮组7共同承担……关节7的扭矩由齿轮组7共同承担。
参看图6,基于上述刚柔耦合的机械臂进行耦合误差补偿,具体如下:
通过机械臂的运动学模型,对机械臂末端的目标位姿求逆解,得到理论关节转角Rθi;
通过上述举例中的公式1至公式7,对各关节的理论关节转角Rθ1进行解耦,得到对应的理论电机转角θi;
基于理论电机转角θi确定各个电机的转向是否发生换向:若关节i对应的电机发生换向,则关节i的驱动齿轮存在传动链间隙误差Dθi,反之则不存在传动链间隙误差Dθi;
基于存在的传动链间隙误差Dθi,计算各关节末端的挠度误差f iΣ:
f 1Σ= k1*f1+ k2*f2+ k3*f3+ k4*f4+ k5* f5+ k6* f6+ k7*f7
f 2Σ=k2*f2+ k3*f3+ k4*f4+ k5* f5+ k6* f6+ k7*f7
……
f 6Σ= k6* f6+ k7*f7
f 7Σ=k7*f7
其中,当传递链间隙误差Dθi>0时,ki=0,当Dθi=0时,ki =1,Dθi不存在小于0的值;
基于存在的传动链间隙误差Dθi,计算各关节末端的齿隙产生的位移误差:
Ei=Li*tan(Dθi)
其中,Li为关节i到驱动电机末端的臂长。
基于各关节末端的挠度误差和齿隙产生的位移误差,得到各关节刚柔耦合产生的耦合误差Ei +f iΣ;
基于机械臂的具体结构和运动学模型,确定耦合误差与关节转角误差之间的对应关系,求解关节转角误差DRθi;
通过上述举例中的公式1至公式7引入传动链间隙误差之后推导得到的耦合关系,对关节转角误差DRθi进行解耦,就可以得到各个电机转角误差dθi,从而进行电机误差补偿;
在对电机误差补偿之后,基于关节转角和电机转角之间的耦合关系,对补偿后各关节对应的电机转角进行耦合计算,得到补偿后的关节转角R’θi,基于机械臂的运动学模型,将补偿后的关节转角R’θi转换为实际位姿;
将实际位姿与目标位姿进行比较,确定两者之间的偏差值,若偏差值小于或等于预设阈值,则完成补偿,若偏差值大于预设阈值,则将补偿后的关节转角作为新的理论关节转角,并通过上述方法重新确定电机转角误差并对电机进行误差补偿,直至实际姿态已达到目标位姿的允许误差范围内。
需要说明的是,上述机械臂为本实施例方法适用的其中一种机械臂,更为广泛地,本实施例方法适用于关节之间存在耦合运动的任意一种刚柔耦合机械臂,实现关节耦合误差补偿。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的机械臂关节耦合误差补偿方法的机械臂关节耦合误差补偿装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个机械臂关节耦合误差补偿装置实施例中的具体限定可以参见上文中对于机械臂关节耦合误差补偿方法的限定,在此不再赘述。
在一个实施例中,如图7所示,提供了一种机械臂关节耦合误差补偿装置,包括:
位姿模块10,用于基于机械臂末端的目标位姿,得到各关节对应的理论电机转角;
判断模块20,用于根据理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差;
检测模块30,用于基于传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差,并基于各关节末端的挠度误差和齿隙产生的位移误差,得到各关节刚柔耦合产生的耦合误差;
补偿模块40,用于对耦合误差进行解耦,得到各个关节对应的电机转角误差,并基于电机转角误差对电机进行误差补偿。
在一个实施例中,基于机械臂末端的目标位姿,得到各关节对应的理论电机转角包括:基于机械臂关节之间的运动学模型,将目标位姿转换为各关节的理论关节转角;基于关节转角与电机转角之间的耦合关系,对理论关节转角进行解耦,得到各关节对应的理论电机转角。
在一个实施例中,根据理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差包括:根据理论电机转角判断电机是否发生换向,判断各关节驱动齿轮是否存在传动链间隙误差:若发生换向,则对应关节驱动齿轮存在传动链间隙误差,若不发生换向,则对应关节驱动齿轮不存在传动链间隙误差。
在一个实施例中,基于传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差包括:根据传动链间隙误差确定每组齿轮产生的挠度值,并根据每组齿轮产生的挠度值得到各关节末端的挠度误差;根据传动链间隙误差及各关节到驱动电机的臂长,得到各关节末端齿隙产生的位移误差。
在一个实施例中,对耦合误差进行解耦,得到各个关节对应的电机转角误差包括:基于机械臂关节之间的运动学模型,将耦合误差转变为关节形变转角误差;基于关节转角与电机转角之间的耦合关系,对关节形变转角误差进行解耦,得到电机转角误差。
在一个实施例中,参看图7,还包括校验模块50,用于对补偿后各关节对应的电机转角进行耦合,得到补偿后的关节转角;基于机械臂关节之间的运动学模型,对补偿后的关节转角求正解,得到补偿后的实际位姿;通过实际位姿和目标位姿之间的偏差值,验证实际位姿是否合格。
在一个实施例中,通过实际位姿和目标位姿之间的偏差值,验证实际位姿是否合格包括:若偏差值小于或等于预设阈值,则实际位置合格;若偏差值大于预设阈值,则将补偿后的关节转角作为新的理论关节转角,并基于新的理论关节转角重新确定电机转角误差并对电机进行误差补偿。
上述机械臂关节耦合误差补偿装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是机械臂的控制终端,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种机械臂关节耦合误差补偿方法。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述实施例中任意一种机械臂关节耦合误差补偿方法。具体详细说明参看方法对应的说明,在此不再赘述。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中任意一种机械臂关节耦合误差补偿方法。具体详细说明参看方法对应的说明,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (8)
1.一种机械臂关节耦合误差补偿方法,其特征在于,所述方法包括:
基于机械臂末端的目标位姿,得到各关节对应的理论电机转角;
根据所述理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差;
基于所述传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差,并基于各关节末端的挠度误差和齿隙产生的位移误差,得到各关节刚柔耦合产生的耦合误差;
对所述耦合误差进行解耦,得到各个关节对应的电机转角误差,并基于所述电机转角误差对电机进行误差补偿;
所述根据所述理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差包括:根据所述理论电机转角判断电机是否发生换向,判断各关节驱动齿轮是否存在所述传动链间隙误差:若发生换向,则对应关节驱动齿轮存在所述传动链间隙误差,若不发生换向,则对应关节驱动齿轮不存在所述传动链间隙误差;
所述基于所述传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差包括:根据所述传动链间隙误差确定每组齿轮产生的挠度值,并根据每组齿轮产生的挠度值得到各关节末端的挠度误差;根据所述传动链间隙误差及各关节到驱动电机的臂长,得到各关节末端齿隙产生的位移误差。
2.根据权利要求1所述的方法,其特征在于,所述基于机械臂末端的目标位姿,得到各关节对应的理论电机转角包括:
基于机械臂关节之间的运动学模型,将所述目标位姿转换为各关节的理论关节转角;
基于关节转角与电机转角之间的耦合关系,对所述理论关节转角进行解耦,得到各关节对应的所述理论电机转角。
3.根据权利要求1所述的方法,其特征在于,所述对所述耦合误差进行解耦,得到各个关节对应的电机转角误差包括:
基于机械臂关节之间的运动学模型,将所述耦合误差转变为关节转角误差;
基于关节转角与电机转角之间的耦合关系,对所述关节转角误差进行解耦,得到所述电机转角误差。
4.根据权利要求1至权利要求3任意一项所述的方法,其特征在于,所述基于所述电机转角误差对电机进行误差补偿之后还包括:
对补偿后各关节对应的电机转角进行耦合,得到补偿后的关节转角;
基于机械臂关节之间的运动学模型,对补偿后的关节转角求正解,得到补偿后的实际位姿;
通过所述实际位姿和所述目标位姿之间的偏差值,验证所述实际位姿是否合格。
5.根据权利要求4所述的方法,其特征在于,所述通过所述实际位姿和所述目标位姿之间的偏差值,验证所述实际位姿是否合格包括:
若所述偏差值小于或等于预设阈值,则所述实际位姿合格;
若所述偏差值大于预设阈值,则将补偿后的关节转角作为新的所述理论关节转角,并基于新的所述理论关节转角重新确定所述电机转角误差并对电机进行误差补偿。
6.一种机械臂关节耦合误差补偿装置,其特征在于,所述装置包括:
位姿模块,用于基于机械臂末端的目标位姿,得到各关节对应的理论电机转角;
判断模块,用于根据所述理论电机转角的转向,确定各关节驱动齿轮的传动链间隙误差,其中,根据所述理论电机转角判断电机是否发生换向,判断各关节驱动齿轮是否存在所述传动链间隙误差:若发生换向,则对应关节驱动齿轮存在所述传动链间隙误差,若不发生换向,则对应关节驱动齿轮不存在所述传动链间隙误差;
检测模块,用于基于所述传动链间隙误差,分别得到各关节末端的挠度误差和齿隙产生的位移误差,并基于各关节末端的挠度误差和齿隙产生的位移误差,得到各关节刚柔耦合产生的耦合误差,其中,根据所述传动链间隙误差确定每组齿轮产生的挠度值,并根据每组齿轮产生的挠度值得到各关节末端的挠度误差;根据所述传动链间隙误差及各关节到驱动电机的臂长,得到各关节末端齿隙产生的位移误差;
补偿模块,用于对所述耦合误差进行解耦,得到各个关节对应的电机转角误差,并基于所述电机转角误差对电机进行误差补偿。
7.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至权利要求5中任一项所述的方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至权利要求5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211621572.2A CN115674207B (zh) | 2022-12-14 | 2022-12-14 | 机械臂关节耦合误差补偿方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211621572.2A CN115674207B (zh) | 2022-12-14 | 2022-12-14 | 机械臂关节耦合误差补偿方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115674207A CN115674207A (zh) | 2023-02-03 |
CN115674207B true CN115674207B (zh) | 2023-03-14 |
Family
ID=85056667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211621572.2A Active CN115674207B (zh) | 2022-12-14 | 2022-12-14 | 机械臂关节耦合误差补偿方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115674207B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116460859B (zh) * | 2023-06-19 | 2023-10-03 | 广东隆崎机器人有限公司 | Scara机器人运动补偿方法、装置、设备及存储介质 |
CN117565063B (zh) * | 2024-01-16 | 2024-03-29 | 泓浒(苏州)半导体科技有限公司 | 晶圆搬运机械手传动部件磨损自适应定位补偿方法及系统 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108524001B (zh) * | 2012-08-15 | 2021-06-29 | 直观外科手术操作公司 | 利用零空间取消关节运动的系统 |
CN109483529B (zh) * | 2018-10-12 | 2021-02-26 | 华南智能机器人创新研究院 | 一种基于螺旋理论的机械臂伺服控制方法、系统及装置 |
CN110154078B (zh) * | 2019-05-09 | 2022-05-13 | 广东工业大学 | 一种刚柔耦合模块化机器人关节及其应用 |
CN112077853B (zh) * | 2020-11-16 | 2021-03-02 | 杭州景业智能科技股份有限公司 | 主从随动系统的力反馈方法、装置以及主从随动系统 |
CN114179081B (zh) * | 2021-12-01 | 2024-04-26 | 深圳市汇川技术股份有限公司 | 角度传达误差的补偿方法、装置和计算机可读存储介质 |
CN114310911B (zh) * | 2022-02-08 | 2023-06-30 | 天津大学 | 基于神经网络的驱动关节动态误差预测与补偿系统及方法 |
CN114750167B (zh) * | 2022-06-02 | 2023-05-09 | 成都卡诺普机器人技术股份有限公司 | 一种基于扰动观测的工业机器人关节摩擦补偿方法 |
-
2022
- 2022-12-14 CN CN202211621572.2A patent/CN115674207B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115674207A (zh) | 2023-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115674207B (zh) | 机械臂关节耦合误差补偿方法、装置、设备和存储介质 | |
CN109176494B (zh) | 绳驱多关节柔性机器人自标定方法及系统、存储介质 | |
RU2672654C2 (ru) | Способ и система для определения по меньшей мере одного свойства манипулятора | |
CN106910223B (zh) | 一种基于凸松弛全局优化算法的机器人手眼标定方法 | |
US20060195228A1 (en) | Robot locus control method and apparatus and program of robot locus control method | |
White | Geometric applications of the Grassmann-Cayley algebra | |
CN112975954B (zh) | 机械臂的控制方法、计算机设备和存储介质 | |
CN115213905B (zh) | 冗余度机械臂位姿控制的方法、系统及机器人 | |
CN105856231B (zh) | 一种特定构型六轴工业机器人的运动控制方法 | |
WO2023024278A1 (zh) | 机器人关节位姿优化方法、机器人控制方法和机器人 | |
CN115091455B (zh) | 一种工业机器人定位误差补偿方法 | |
CN118401348A (zh) | 机器人设备的非线性轨迹优化 | |
CN111258220A (zh) | 一种基于干扰观测器的柔性机械臂级联控制方法及系统 | |
CN115922735A (zh) | 奇异区域的轨迹规划方法、装置、计算机设备和存储介质 | |
CN114147714B (zh) | 自主机器人机械臂控制参数计算方法和系统 | |
CN114851168B (zh) | 关节受限冗余并联机械臂的运动规划和控制方法、系统及机器人 | |
CN114131601A (zh) | 偏置腕6r工业机械手笛卡尔轨迹跟踪逆运动学算法 | |
CN116673966B (zh) | 用于机器人的关节角度生成方法及机器人系统 | |
KR101985328B1 (ko) | 관절 로봇의 관절각 산출 방법 | |
CN113927592B (zh) | 一种基于自适应降阶滑模算法的机械臂力位混合控制方法 | |
CN114571448A (zh) | 一种关节受限的冗余机械臂伪逆型重复运动规划方法 | |
CN116276958A (zh) | 一种基于模糊adrc的连续体机械臂多环控制方法 | |
Guo et al. | Kinematic analysis and simulation of a new-type robot with special structure | |
Sholanov | Parallel Manipulators of Robots: Theory and Applications | |
CN118305791A (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 |