机器人刚度建模、辨识与修正方法及实验系统与流程

文档序号:28427814发布日期:2022-01-12 00:36阅读:795来源:国知局
机器人刚度建模、辨识与修正方法及实验系统与流程

1.本发明涉及工业机器人技术领域,特别是一种机器人刚度建模、辨识与修正方法及实验系统。


背景技术:

2.机器人系统刚度是指机器人系统抵抗外力变形的能力,表现为机器人末端在外力作用下的弹性变形。连杆、轴承、力矩传感器等弹性因素的引入对机器人刚度的提高带来了困难,从而影响了机器人的动态性能和定位精度。目前行之有效的方法为通过刚度建模提高机器人的使用刚度和定位精度。
3.由于连杆等结构件和支撑元件引起的弹性变形不能忽略,所以基于虚拟关节法简单的将机器人的刚度模型等效为等自由度的关节扭转模型不再适用。在之前的研究中,基于虚拟关节法的刚度建模方法大多假设机器人柔性的主要来源为关节扭转和倾覆柔性,忽略了其他因素对机器人刚度模型的影响。结构矩阵法将关节复杂结构件和光顺曲面连杆等效为单段或多段梁的方法过于简化,虽然降低了计算量但建模精度较低;而通过有限元分析方法可以得到连杆刚度参数最可靠的结果,但该方法在计算时间方面又无法满足刚度建模和补偿的实时性要求。基于外部传感器的静力学参数辨识几乎无法辨识机器人各模块所有的静力学弹性参数,辨识精度和辨识工作量之间需要进行平衡。基于有限元的辨识方法可以解决整个机械臂辨识参数庞大的问题。理想状态下,机器人各模块的刚度可以通过有限元方法辨识,这种辨识方法能够考虑机器人模块的复杂形状,线性和耦合刚度等因素,减少辨识次数。但机器人关节传动系统和轴承支撑刚度会受到关节机械装配或结构设计等影响,所以由理论有限元模型与实际样机模型的差异而造成的建模误差也是刚度建模和辨识的一个挑战。


技术实现要素:

4.为解决机器人刚度建模、辨识存在的问题,本发明的目的在于提供一种机器人刚度建模、辨识与修正方法及实验系统,能够全面考虑机器人的静力学弹性参数,解决辨识精度与辨识工作量相互冲突问题,可实现快速、高精度的机器人刚度建模,为机器人实时在线弹性误差补偿和刚度性能优化提供理论基础。该发明在保留虚拟关节法高计算效率的同时又具有有限元建模方法的高建模精度。
5.为了实现上述目的,本发明采用以下技术方案:第一方面,本发明提供一种机器人刚度建模、辨识与修正方法,该方法包括以下步骤:
6.步骤一、机器人模型的拆分:将机器人拆分成若干个相互独立的模块;
7.步骤二、机器人刚度辨识:将步骤一拆分的模块等效为有限元超单元,基于有限元子结构法采用有限元分析软件对模块刚度矩阵进行辨识;
8.步骤三、机器人刚度建模:
9.(1)建立机器人的虚拟关节模型;所述虚拟关节模型为通过六维虚拟关节表示连
杆或关节模块的柔性变形;
10.(2)采用虚拟关节法建立机器人刚度模型;
11.步骤四、机器人刚度修正系数修正:
12.(1)确定影响机器人刚度模型的刚度影响系数;
13.(2)测量机器人外力及相应的弹性变形;
14.(3)采用辨识算法对刚度修正系数进行辨识;
15.所述刚度影响系数为机器人装配性能、结构设计、温度和磨损这些影响因素对机器人刚度模型的影响;所述机器人刚度修正系数修正能够补偿由理论有限元模型与实际样机的差异而造成的建模误差。
16.第二方面,本发明提供一种机器人刚度建模、辨识与修正实验系统,用于实现上述的机器人刚度建模、辨识与修正方法,该实验系统包括机器人、激光跟踪仪、激光跟踪仪靶头、加载装置、加载法兰、机器人安装座、六维力传感器和终端;加载装置包括加载架和安装在加载架上的砝码、钢丝绳;
17.所述机器人固定于机器人安装座上,加载法兰通过六维力传感器安装在机器人末端,激光跟踪仪靶头安装于加载法兰上,砝码通过钢丝绳和加载架向机器人加载;
18.所述六维力传感器用于获得机器人末端所受外力,所述激光跟踪仪用于获得机器人末端位移。
19.第三方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述机器人刚度建模、辨识与修正方法的步骤。
20.第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述机器人刚度建模、辨识与修正方法的步骤。
21.与现有技术相比,本发明的优点与积极效果为:
22.(1)本发明所建立的机器人刚度模型能够考虑机器人模块的复杂形状、线性刚度、扭转刚度以及耦合刚度等因素,在保留虚拟关节法高计算效率的同时又具有有限元建模方法的高建模精度。
23.(2)本发明解决了机器人刚度辨识精度与辨识工作量相互冲突问题,可实现快速、高精度的机器人刚度建模,为机器人实时在线弹性误差补偿和刚度性能优化提供理论基础。
24.(3)设计加载装置,通过调节砝码数量和钢丝绳在加载架的位置来改变加载力。
25.为使本发明的上述目的、特征和优点能更明显易懂,下面特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
26.为了更清楚地说明本发明实施例的技术方案,下面对将实施例中所需使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
27.图1是本发明实施例1提供的机器人刚度建模、辨识与修正方法的流程示意图;
28.图2是本发明实施例1所涉及的机器人简化模型示意图;
29.图3是本发明实施例1所涉及的机器人关节模块示意图;
30.图4是本发明实施例1所涉及的机器人连杆模块示意图;
31.图5是本发明实施例1所涉及的机器人关节模块等效模型示意图;
32.图6是本发明实施例1所涉及的超单元模型示意图;
33.图7是本发明实施例1所涉及的提取刚度矩阵的关节模块有限元模型示意图;
34.图8是本发明实施例1所涉及的机器人运动学模型示意图;
35.图9是本发明实施例1所涉及的机器人虚拟关节模型示意图;
36.表1是本发明实施例1提供的机器人刚度建模、辨识与修正方法与其他方法的对比;
37.图10是本发明实施例1提供的机器人刚度建模、辨识与修正方法与其他方法的对比;
38.图11是本发明实施例2提供的机器人刚度建模、辨识与修正实验系统的结构示意图;
39.图12是本发明实施例2提供的六维力传感器安装结构示意图;
40.图13是本发明实施例2提供的终端的结构示意图。
41.图中:1为机器人、2为激光跟踪仪、3为激光跟踪仪靶头、4为加载装置、4-1为加载架、4-2为砝码、4-3为钢丝绳、5为加载法兰、6为机器人安装座、7为六维力传感器、8为终端、8-1为存储器、8-2为输入单元、8-3为显示单元、8-4为处理器,8-5为输出单元。
具体实施方式
42.为了便于理解本发明,下面将参照相关附图对机器人刚度建模、辨识与修正方法及实验系统进行更全面的描述。附图中给出了机器人刚度建模、辨识与修正方法及实验系统的优选实施例。但是,机器人刚度建模、辨识与修正方法及实验系统可以通过许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对机器人刚度建模、辨识与修正方法及实验系统的公开内容更加透彻全面。
43.实施例1
44.图1为本发明的一种机器人刚度建模、辨识与修正方法的流程示意图;示范性地,本实施例以一种七自由度串联机器人为例,如图2所示。该机器人采用模块化设计理念,机器人可以看作由八个连杆与七个模块化关节依次串联组成,该类机器人的结构特征可以参见参考文献“hu m,wang h,pan x.multi-objective global optimum design of collaborative robots[j].structural and multidisciplinary optimization,2020,62:1547-1561.”。按照本发明对该机器人进行刚度建模、辨识与修正,步骤如下:
[0045]
a:机器人模型的拆分。
[0046]
所述机器人模型的拆分为根据机器人的机构或结构特点,将机器人拆分成若干个相互独立的模块;本实施例中机器人采用模块化设计理念,由于各关节和连杆模块的功能、机械接口、电气接口等相互独立,所以机器人模型可以看作由若干相互独立的连杆和关节模块串联连接而成。在solidworks三维建模软件中,机器人整机三维模型可以拆分为若干相互独立的如图3所示的关节模块模型以及如图4所示的连杆模块模型。
[0047]
b:机器人刚度辨识。
[0048]
所述机器人刚度辨识为将上述步骤a拆分的模块等效为有限元超单元,基于有限元子结构法采用有限元分析软件对模块刚度矩阵机进行辨识;所述机器人刚度辨识能够考虑机器人的复杂形状,线性和耦合刚度等因素,减少辨识次数,本步骤具体为:
[0049]
b1:采用solidworks三维建模软件对模块三维几何模型进行简化,对模块刚度影响可以忽略的结构如倒角、圆角、螺钉孔等进行简化;
[0050]
b2:将连杆和关节模块等效为超单元,使用ansys有限元分析软件完成各模块建模、参数设定及单元矩阵提取,获得各个超单元的结构刚度矩阵。
[0051]
进一步地,连杆和关节模块等效为超单元的过程为:由于每个机器人具有独立的功能、机械、电气、控制等功能,所以每个模块都可以等效为一个超单元,整个机器人模型可以看作由若干个超单元组成的模型。其中,超单元的定义和使用可以参见参考文献“王新敏.结构动力分析与应用[m].北京中国:人民交通出版社,2014.”。由于串联机器人特殊的结构形式,各模块只在输出和输入法兰与其它模块相互约束,约束关系通过法兰端面上的节点定义。为降低计算量提高计算效率,采用结构质量点单元来模拟模块之间的约束关系,质量点单元分别位于模块的输入端和输出端中心。通过多点约束(mpc)能够在结构质量点单元和端面节点之间建立刚性梁,在模块输出端和输入端分别形成两个刚性区域,如图5所示。每个模块都可以简化成具有两个主节点的超单元,其中位于输入端的主节点编号为1,位于输出端的主节点编号为2,主节点自由度对应于超单元自由度,如图6所示。诸多模块对应的超单元依次串联即可组成如图2所示的机械臂等效有限元模型,本实施例所涉及的机械臂为七自由度机械臂,该机械臂可以等效为由15个超单元、16个主节点串联组成的有限元模型,其中e1~e
15
表示超单元,n1~n
16
表示整机有限元模型中的主节点。ki分别表示单个超单元的刚度矩阵和质量矩阵,i表示超单元编号。
[0052]
进一步地,使用ansys有限元分析软件完成各模块有限元的建模、参数设定以及单元矩阵的提取时,采用四面体单元划分有限元模型,结构件之间的机械接口简化为刚性连接,其中:对模块刚度影响可以忽略的元器件及结构件均简化为结构质量点,如制动器、电机、编码器等元件,与结构件刚性连接;支撑元件如电机轴承、十字交叉滚珠轴承等简化为具有质量的六维弹簧单元;传动元器件如谐波减速器等简化为具有质量的六维弹簧单元;模块的输入端面均作固定处理,在输出端面使用多点约束(mpc)将端面上的各节点与结构质量点单元刚性连接,定义该结构质量点定义为超单元主节点,图7为本实施例所涉及的关节模块有限元模型,基于有限元子结构法,采用ansys有限元分析软件获得各个超单元(包括连杆模块和关节模块)刚度矩阵ki为:
[0053][0054]
上式(1)中,ki是对称正定矩阵,即对任意的0≠x∈rn,都有x
tki
x>0,且x表示n维非零矢量。
[0055]
c:机器人刚度建模,本步骤可通过数值分析软件matlab实现。
[0056]
c1:建立机器人的虚拟关节模型;虚拟关节法是通过在机器人刚性模型中添加虚拟关节表示关节和连杆的弹性变形来建立刚度模型的方法(“pashkevich a,klimchik a,chablat d.enhanced stiffness modeling of manipulators with passive joints[j].mechanism and machine theory,2011,46(5):662-679.”)。为综合考虑机器人各模块的弹性变形,本实施例1将传统虚拟关节法扩展为六维,通过在连杆或关节模块末端添加六维虚拟关节的方法来表示连杆或关节模块的柔性变形。基于小变形假设,如图8所示的运动学模型可以通过如下顺序描述:
[0057]
(1)刚性连杆模块可以通过常齐次矩阵t
li
表示;
[0058]
(2)六自由度虚拟关节表示连杆模块的弹性旋转和位移,通过齐次矩阵函数t
vj
(q
li
)表示;
[0059]
(3)刚性关节模块表示关节模块的刚性旋转运动,可以通过齐次矩阵函数tj(θi)表示;
[0060]
(4)六自由度虚拟关节表示关节模块的弹性旋转和位移,通过齐次矩阵函数t
vj
(q
ji
)表示;
[0061]
其中θi表示第i个关节的位移角,qi=[xi,yi,zi,αi,βi,γi]
t
表示虚拟关节的位移和旋转矢量,αi,βi,γi表示欧拉角。
[0062]
因此,如图8所示的协作机器人运动模型可以等效为图9所示的虚拟关节模型,机械臂末端位姿可以通过机器人各模块和虚拟关节的齐次矩阵串联组成,表示为:
[0063]
t=t
l1
t
vj
(q
l1
)tj(θ1)t
vj
(q
j1
)

t
ln
t
vj
(q
ln
)
ꢀꢀꢀꢀꢀ
(2)
[0064]
将机械臂末端的齐次矩阵表示为广义矢量:
[0065]
t=g(q,θ)
ꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0066]
其中q=[q
l1
;q
j1


;q
ln
]表示虚拟关节位移,θ=[θ1,θ2,

θm]
t
表示关节位移角矢量。
[0067]
c2:采用虚拟关节法建立机器人的刚度模型;
[0068]
机器人的刚度是指机器人抵抗外力变形的能力,在小变形假设下,表现为机器人末端的弹性变形。机械臂各模块受力(模块输出坐标系表示)与末端执行器受力关系可以表示为:
[0069][0070][0071]
其中fi表示施加在第i个模块输出端的外力,为力旋量变换矩阵,w为施加在机器人末端的外力,为末端坐标系到第i个模块输出坐标系的旋转矩阵,为末端坐标系到第i个模块输出坐标系的位置矢量。
[0072]
通过微分变换,机械臂模块弹性位移与机器人末端位移关系可以表示为:
[0073]
δx=jδq
ꢀꢀꢀꢀꢀꢀꢀ
(6)
[0074][0075]
其中j为机器人虚拟关节的雅克比矩阵,矩阵维数为6
×
6n。
[0076]
所以,机械臂末端受力到虚拟关节空间的变换为
[0077]
f=j
twꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)
[0078]
f=[f1;f2;

;fn]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(9)其中f为模块空间受力矢量。
[0079]
机械臂末端所受外力与弹性变形的关系为:
[0080]
w=kδx
ꢀꢀꢀꢀꢀꢀ
(10)
[0081]
其中k为机械臂末端刚度;
[0082]
机器人各模块受力关于各模块虚拟关节的偏微分,即模块刚度矩阵,可以表示为如下:
[0083][0084][0085]

[0086]kq
=kc+j
t
kj
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(13)
[0087]
其中kq=diag.([k1,k2,

,kn])为机器人虚拟关节刚度矩阵,由机器人各模块的刚度矩阵组成。ki为机器人第i个模块刚度矩阵。根据参考文献“dumas c,caro s,cherif m,et al.joint stiffness identification of industrial serial robots[j].robotica,2012,30(4):649-659.”,补充刚度矩阵kc对于机器人整机刚度的影响可以忽略不计,则机器人刚度模型可以推导如下:
[0088]
k=j-tkq
j-1
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(14)
[0089]
c=jc
qjt
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(15)
[0090]
其中c,cq分别表示笛卡尔空间和虚拟关节空间的柔度矩阵。
[0091]
所述机器人刚度建模在保留虚拟关节法高计算效率的同时又具有有限元建模方法的高建模精度,实现建模精度与辨识工作量之间的平衡。
[0092]
d:机器人刚度修正系数修正。
[0093]
d1:确定影响机器人实际刚度模型的刚度影响系数。所述刚度影响系数为机器人装配性能、结构设计、温度和磨损等影响因素对机器人刚度模型的影响;所述机器人刚度修正系数修正能够补偿由理论有限元模型与实际样机的差异而造成的建模误差。本步骤可通过数值分析软件matlab实现。
[0094]
理想状态下,机器人整机刚度模型可以通过所述机器人刚度辨识步骤获得的模块刚度矩阵建立。所述机器人刚度辨识步骤能够考虑机器人模块的复杂形状,各模块的线性、耦合刚度等,减少辨识次数。但机器人关节机械装配性能或结构设计等均会影响传动系统和轴承支撑刚度,所以实际的关节扭转刚度和支撑刚度并不等于理论值。示范性地,本实施例假设机器人关节机械装配性能或关节结构设计等因素对关节刚度矩阵的影响仅为元素k
44
,k
55
,k
66
,则k
44
,k
55
元素的刚度修正系数为λb,k
66
元素的刚度修正系数为λ
t
,所以式(1)提取的关节刚度矩阵变为式(16)。
[0095][0096]
d2:测量机器人外力及相应的弹性变形;
[0097]
依据本发明所述的一种机器人刚度建模、辨识与修正实验系统测量机器人外力及相应的弹性变形,所述六维力传感器7用于获得机器人1末端所受外力,所述激光跟踪仪2用于获得机器人1末端位移。
[0098]
d3:采用辨识算法对刚度修正系数进行辨识,本步骤可通过数值分析软件matlab实现。
[0099]
机器人在外力w作用下产生的弹性变形与关节刚度矩阵修正系数成非线性关系,本实施例采用非线性最小二乘法对刚度修正系数进行辨识。以机器人弹性变形的实测值与计算值差值的平方和最小为目标函数,构建非线性最小二乘问题模型。目标函数如下:
[0100][0101]
其中p为试验次数,δdi为误差矢量,可根据式(18)求得。
[0102]
δdi=(δx
m-δxc)iꢀꢀꢀꢀꢀꢀꢀꢀ
(18)
[0103]
其中δxm为特定位姿和负载下测量的机器人实际弹性变形,δxc为同等工况下通过式(10)计算获得的机器人末端弹性变形。
[0104]
求解该模型可以得到机器人关节模块的刚度修正系数。
[0105]
x=[λ
b1

t1
,


bm

tm
]
ꢀꢀꢀꢀꢀꢀꢀꢀ
(19)
[0106]
将式(19)和式(16)带入式(14)即可获得实际的刚度模型。
[0107]
示范性地,在matlab软件中,采用莱文贝格-马夸特方法(“alici g,shirinzadeh b.enhanced stiffness modeling,identification and characterization for robot manipulators[j].ieee transactions on robotics,2005,21(4):554-564.”)求解上述非线性最小二乘优化问题。对于本实施例所采用的七自由度机器人,需要辨识的刚度修正系数为6个,即三种模块化关节的倾覆刚度修正系数和扭转刚度修正系数,刚度修正系数的初始值为x=[0.25,0.75,0.25,0.75,0.25,0.75]。通过最小二乘法获得估计值为x=[0.20,1.00,0.14,1.19,0.16,1.26]和目标函数值为2.11。
[0108]
示范性地,表1和图10给出了本发明与其他方法或技术的对比。
[0109]
表1
[0110][0111]
本发明所述方法能够高精度的获得机器人末端弹性变形,相比于七自由度虚拟关节法,其建模精度要高,不仅在高灵巧性位姿有良好的建模精度,在低灵巧性位姿的建模精
度依然较高,验证了所述刚度建模、辨识和修正方法的合理性。采用2.3ghz core i5-6200u处理器求解刚度模型,所述方法的求解周期约为1.31ms,相比于七自由度虚拟关节法,其求解时间较长,但能够满足机器人实时在线刚度补偿的要求。
[0112]
实施例2
[0113]
如图11、图12,本实施例提供一种机器人刚度建模、辨识与修正实验系统,包括:七自由度机器人1、激光跟踪仪2、激光跟踪仪靶头3、加载装置4、加载法兰5、机器人安装座6、六维力传感器7、终端8;
[0114]
所述机器人刚度建模、辨识与修正实验系统用于实现实施例1所述的一种机器人刚度建模、辨识与修正方法;所述七自由度机器人1固定于机器人安装座6上,加载法兰5通过六维力传感器7安装在七自由度机器人1末端,激光跟踪仪靶头3安装于加载法兰5上,砝码4-2通过钢丝绳4-3和加载架4-1向七自由度机器人1加载,通过调节砝码4-2数量和钢丝绳4-3在加载架4-1的位置来改变加载力。所述六维力传感器7用于获得七自由度机器人1末端所受外力,所述激光跟踪仪2用于获得七自由度机器人1末端位移。
[0115]
进一步地,如图13所示,所述终端8包括存储器8-1、输入单元8-2、显示单元8-3、处理器8-4、输出单元8-5;所述存储器8-1用于储存计算机程序;所述输入单元8-2用于接收七自由度机器人1、激光跟踪仪2、六维力传感器7等设备的各项指令或参数;所述显示单元8-3用于显示终端8的各种输出信息;所述处理器8-4执行所述计算机程序以使所述终端实现所述的一种机器人刚度建模、辨识与修正方法。所述输出单元8-5用于输出各种控制指令,示范性地,控制七自由度机器人1运动,设置六维力传感器7和激光跟踪仪2的各项工作参数。
[0116]
进一步地,所述机器人刚度建模、辨识与修正实验系统的工作过程为:
[0117]
s1:七自由度机器人1初始化,初始化后运动到初始测量位姿;
[0118]
s2:激光跟踪仪2测量激光跟踪仪靶头3的位姿信息,六维力传感器7测量七自由度机器人1的末端受力信息,激光跟踪仪2和六维力传感器7分别将位置信息和力信息传递至终端8;
[0119]
s3:通过加载装置4对七自由度机器人1进行加载,激光跟踪仪2测量激光跟踪仪靶头3的位姿信息,六维力传感器7测量七自由度机器人1的末端受力信息,激光跟踪仪2和六维力传感器7分别将位置信息和力信息传递至终端8;
[0120]
s4:不断重复步骤三直至获得足够的位置和力信息,通过调节砝码4-2数量和钢丝绳4-3在加载架4-1的位置来改变加载力;
[0121]
s5:七自由度机器人1运动到下一个测量位姿,重复步骤s2到s4;
[0122]
s6:重复s5,直至测量结束。
[0123]
本发明未尽事宜为公知技术。上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据此实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1