研究六自由度工业机器人动力学模型小惯性参数辨识和模型参数自适应PD控制方法。首先分析六自由度机器人动力学模型及其小惯性参数;研究基于位置、速度、加速度约束条件的傅里叶级数型激励轨迹优化方法;依据激励轨迹跟踪实验获取的关节角位置、速度、加速度和力矩数据,研究基于小二乘的小惯性参数估计方法。在此基础上,研究六自由度机器人模型自适应PD控制方法。后,构建了基于Codesys平台的六自由度机器人控制系统,利用SYMORO+推导回归矩阵元素,结合Hadamard不等式,利用MatlabFunction函数生成目标函数并将其代入Matlab fmincon函数计算激励轨迹参数,通过激励轨迹跟踪实验辨识出小惯性参数;通过机器人跟踪激励轨迹和验证轨迹实验,比较实测力矩与基于辨识模型估计力矩的均方根误差验证参数辨识方法有效性;通过期望轨迹跟踪实验验证了自适应PD控制算法可行性。
In this paper, the identification of minimum inertia parameters and the adaptive PD control method of model parameters for a 6-DOF(six-degree-of-freedom) industrial robot dynamics model are studied. Firstly, the dynamic model of 6-DOF robot and its minimum inertia parameters are analyzed. The Fourier series excitation trajectory optimization method is studied based on position, velocity and acceleration constraints. The least square method of minimum inertial parameter estimation is studied according to the joint angular position, velocity, acceleration and moment data obtained from the excitation trajectory tracking experiment. On this basis, the model adaptive PD control method of 6-DOF robot is studied. Finally, a 6-DOF robot control system based on Codesys platform is constructed. The regression matrix elements are deduced by SYMORO+ and combined with Hadamard's inequality. The objective function is generated by MatlabFunction function and substituted into Matlab fmincon function to calculate the excitation trajectory parameters. The minimum inertia parameters are identified by the experiment of tracking the excitation trajectories. Through the experiments of tracking the excitation trajectories and verifying the trajectories, the parameter identification method is validated by analyzing the root mean square error between the measured moment and the estimated moment based on the identification model. The feasibility of the adaptive PD control algorithm is verified by the experiment of tracking the expected trajectory.
工业机器人广泛应用于工业生产过程中的搬运、装配、涂装等方面,并且正向着高速、高精度、高智能化的方向发展,加之产业需求的不断扩大与提升,诸如新型的激光焊接、激光切割、多机器人协作等任务对机器人的控制精度提出了更高要求
笔者以ZCR07S六自由度工业机器人为实验研究对象,基于Codesys平台完成机器人动力学参数辨识实验与自适应控制实验。辨识出一组动力学参数并实现了自适应控制算法。
n连杆刚性机器人动力学方程可由二阶非线性微分方程
式中:q,
机器人系统的动力学结构特性如下:
特性1 可适当定义
特性2 存在一个依赖于机械臂参数的参数向量a,使得H(q),C(q,
式中:Y(q,
式(3)中Y的有些列恒为零,有些列间存在常值线性关系,所以不是所有惯性参数都对力矩有影响,通过线性关系重组标准惯性参数
式中Y′(q,
Izz1r=(m3+m4+m5+m6)(d
Ia1+d
Ixx2r=-(m3+m4+m5+m6)·
(d
Ixz2r=Ixz2-d3(m3+m4+m5+m6+mz3)r3
Izz2r=Ia2+d
mx2r=d3(m3+m4+m5+m6)+mx2
Ixx3r=2mz4r4+(m4+m5+m6)r
Ixx3-Iyy3+Iyy4
Izz3r=2mz4r4+(m4+m5+m6)r
Iyy4-Izz3
my3r=my3-mz4-(m4+m5+m6)r4
Ixx4r=Ixx4-Iyy4+Iyy5
Izz4r=Iyy5+Izz4
my4r=Imy4+Imz5
Ixx5r=Ixx5-Iyy5+Iyy6
Izz5r=Iyy6+Izz5
my5r=Imy5-Imz6
Ixx6r=Ixx6-Iyy6
表1 小惯性参数 导出到EXCEL
Table 1 Minimum inertial parameters
连杆1 | 连杆2 | 连杆3 | 连杆4 | 连杆5 | 连杆6 |
0 | Ixx2r | Ixx3r | Ixx4r | Ixx5r | Ixx6r |
0 | Ιxy2 | Ιxy3 | Ιxy4 | Ixy5 | Ιxy6 |
0 | Ixz2r | Ixz3r | Ixz4r | Ixz5r | Ιxz6 |
0 | Ιyz2 | Ιyz3 | Ιyz4 | Ιyz5 | Ιyz6 |
Izz1r | Izz2r | Izz3r | Izz4r | Izz5r | Ιzz6 |
0 | mx2r | mx3 | mx4 | mx5 | mx6 |
0 | my2 | my3r | my4r | my5r | my6 |
0 | 0 | Ia3 | Ia4 | Ia5 | Ia6 |
fv1 | fv2 | fv3 | fv4 | fv5 | fv6 |
fc1 | fc2 | fc3 | fc4 | fc5 | fc6 |
为实现基于动力学模型的控制,需要对结构已知的模型参数进行辨识,获取机器人的一组小惯性参数值,即式(4)中的amin。机器人的参数辨识是一个复杂的系统工程,包括运动学与动力学建模、激励轨迹的选取、实验设计、数据采集与处理、参数估计、模型验证等环节,其流程图如图1所示。
ZCR07S机器人6 个关节均为旋转关节,本体如图2所示,运动学模型的建立采用文献
表2 MDH参数 导出到EXCEL
Table 2 MDH parameters
连杆 | ri/mm | αi/(°) | di/mm | θi/(°) |
1 | 0 | 0 | 0 | θ1 |
2 | 0 | 90 | 25 | θ2+90 |
3 | 0 | 0 | 455 | θ3 |
4 | 420 | 90 | 35 | θ4 |
5 | 0 | 90 | 0 | θ5 |
6 | 0 | -90 | 0 | θ6 |
动力学模型由SYMORO+
各关节激励轨迹为N次谐波的正弦和余弦函数有限项和,激励轨迹关节角位置表达式为
关节角速度、角加速度分别为一阶、二阶导数。实验中:基频为0.1 Hz;周期为10 s;N为5;qi0为位置偏移量;al,bl确定了三角函数的幅值。
确定激励轨迹参数al,bl,qi0的问题可描述为非线性约束优化问题:
优化目标为
q*(t)=argmin(J) (6)
约束条件为
式中:J为待确定的目标函数;qmax,
表3 各关节位置、速度限位 导出到EXCEL
Table 3 Position and speed limitation of joints
关节 | 位置限位/(°) | 速度限位/((°)·s-1) |
1 | ±130 | 150.0 |
2 | -18,+90 | 112.5 |
3 | -20,+140 | 150.0 |
4 | ±250 | 204.5 |
5 | ±130 | 225.0 |
6 | ±350 | 360.0 |
式(7)中后面的3 个约束条件保证了激励轨迹起始和终止位置、速度、加速度为零。根据Hadamard不等式,正定矩阵的行列式小于等于其对角项的乘积,可计算det(YTY)上界,可小化矩阵条件数。目标函数J
式中Y为m×n的回归矩阵,Yij为矩阵Y的第i行第j列元素。通过MatlabFunction函数计算目标函数参数,将目标函数与式(7)中的约束条件代入到Matlab fmincon函数计算激励轨迹参数。激励轨迹如图4所示。
辨识实验设计与数据采集通过Codesys平台完成,同时采集关节角位置、速度和力矩,采样频率为250 Hz。由Codesys采集到的力矩经过如下转换关系换算为机械臂端力矩:机械臂端力矩=采集的力矩相对值×电机额定力矩×减速器减速比/1 000。实验所用电机额定力矩和减速器减速比如表4所示。
表4 电机额定力矩和减速器减速比 导出到EXCEL
Table 4 Rated torque of motor and reduction ratio of speed reducer
关节 | 电机额定力矩/(N·m) | 减速器减速比 |
1 | 2.390 | 120 |
2 | 2.390 | 120 |
3 | 1.270 | 100 |
4 | 0.318 | 116 |
5 | 0.318 | 80 |
6 | 0.318 | 50 |
实验中采集的关节位置轨迹光滑,无需滤波处理,关节速度、加速度通过中心差分算法计算得到,并通过Matlab smooth函数对关节加速度、力矩进行平滑处理。
小惯性参数值的估计采用标准小二乘法,去除掉一些相对标准偏差较大(RSD>30%)的惯性参数后,得到29 个描述6 个关节机器人动力学模型的小惯性参数,如表5所示。
表5 小惯性参数值 导出到EXCEL
Table 5 Minimum inertial parameter values
小惯性参数 | RSD/% | |
Izz1r | 39.560 689 257 7 | 13.15 |
fv1 | 31.972 108 039 4 | 1.26 |
fc1 | 16.061 131 863 2 | 1.25 |
Ixx2r | -42.671 108 237 0 | 15.73 |
Ixz2r | 0.347 377 258 1 | 25.04 |
Ιyz2 | -4.336 088 223 2 | 28.62 |
mx2r | 9.078 391 556 5 | 8.02 |
my2 | -0.210 724 339 0 | 14.43 |
fv2 | -59.361 832 520 0 | 4.31 |
fc2 | -13.513 298 318 7 | 1.55 |
Ixx3r | 8.847 127 449 7 | 26.17 |
Izz3r | -5.644 584 976 7 | 17.19 |
mx3 | -0.784 824 398 6 | 22.06 |
my3r | -2.284 085 631 8 | 0.87 |
Ia3 | 6.317 742 287 6 | 24.07 |
fv3 | -11.772 151 253 0 | 23.69 |
fc3 | -7.879 692 889 6 | 2.75 |
Ιyz4 | -0.201 137 447 0 | 24.43 |
fv4 | 9.930 327 124 3 | 3.47 |
fc4 | 9.812 399 300 8 | 2.18 |
Ixz5r | -0.221 956 985 4 | 28.06 |
Ia5 | 0.039 832 177 0 | 27.59 |
fv5 | 2.717 465 875 1 | 11.18 |
fc5 | 2.461 814 008 5 | 7.32 |
Ιxy6 | 0.087 176 081 2 | 26.16 |
Ιyz6 | 0.138 817 631 4 | 17.87 |
Ia6 | -0.059 928 086 2 | 25.28 |
fv6 | 0.441 493 161 0 | 29.04 |
fc6 | 0.921 412 730 6 | 17.76 |
通过比较实测力矩与由辨识模型所估计的力矩的均方根误差来判断所辨识的模型是否符合精确度要求。图5为重新生成的一组验证轨迹。
图6,7分别代表激励轨迹和验证轨迹下的实测力矩与估计力矩。
图6 6 个关节激励轨迹下实测力矩与估计力矩图 下载原图
Fig.6 Measured and estimated torque diagrams under 6 joint excitation trajectories
图7 6 个关节验证轨迹下实测力矩与估计力矩图 下载原图
Fig.7 Measured and estimated torque diagrams under 6 joint verification trajectories
图7 6 个关节验证轨迹下实测力矩与估计力矩图 下载原图
Fig.7 Measured and estimated torque diagrams under 6 joint verification trajectories
表6为激励轨迹和验证轨迹下的实测力矩与估计力矩的均方根误差,误差值较小,辨识的模型可用。
表6 均方根误差 导出到EXCEL
Table 6 RMS error
关节 | 激励轨迹/(N·m) | 验证轨迹/(N·m) |
1 | 4.130 1 | 7.631 3 |
2 | 4.333 2 | 6.196 1 |
3 | 2.370 1 | 3.413 0 |
4 | 2.484 8 | 2.743 3 |
5 | 1.197 2 | 1.143 3 |
6 | 0.470 1 | 0.475 7 |
选择控制律和自适应律
式中:
式中:
研究中使用的六轴工业机器人控制系统采用一主多从的控制模式,主站采用ARM+Linux控制方案,从站采用带EtherCAT接口的高创CDHD系列伺服驱动,主站与从站、从站与从站之间的通讯采用工业以太网EtherCAT技术,软件平台以Codesys作为开发环境,以ST和CFC作为主要编程语言实现机器人动力学控制,机器人控制系统结构如图9所示。
实验的期望轨迹为
程序运行采样周期为4 ms,自适应增益均为1,在实际的调节过程中,根据系统的稳定性与跟踪性能之间的权衡,确定KD=diag[400,350,130,22,9,2],Λ=diag[10,10,10,30,30,25](KP=ΛKD)。实验结果如图10所示,图10中曲线由上至下分别代表期望位置y1,实际位置y2,期望速度y3,实际速度y4,位置误差y5,速度误差y6。跟踪过程中,关节1至关节6大位置误差分别为-0.06°,0.22°,0.34°,-0.29°,0.45°,0.85°。关节1至关节6位置定位误差分别为-0.06°,0.02°,0.04°,-0.11°,-0.11°,0.09°。
采用一种计算效率高的优化准则设计辨识实验的激励轨迹,通过Codesys平台完成辨识实验,去掉相对标准偏差较大的惯性参数后,得到29 个描述机器人动力学特性的小惯性参数,并通过验证轨迹验证了辨识参数的精确性;接着基于所辨识的小惯性参数和机器人动力学模型,将一种自适应控制算法应用于六自由度工业机器人轨迹跟踪控制,通过实验验证了所研究方法的有效性。主要体现为应用创新:第一个创新点是辨识出了ZCR07S工业机器人动力学参数;第二个创新点是将自适应控制算法应用于ZCR07S工业机器人,并取得了良好的控制效果。
[2] 刘楚辉,姚宝国,柯映林.工业机器人切削加工离线编程研究[J].浙江大学学报(工学版),2010,44(3):426-431.
[8] 吴文祥,朱世强,靳兴来.基于改进傅里叶级数的机器人动力学参数辨识[J].浙江大学学报(工学版),2013,47(2):231-237.
[19] 焦晓红,李运锋,方一鸣,等.一种机器人鲁棒自适应控制法[J].机器人技术与应用,2002(3):40-43.
[20] 范其明,吕书豪.移动机器人的自适应神经网络滑模控制[J].控制工程,2017,24(7):1409-1414.
文章转自中国知网,如有侵权,联系删除。
地址:青岛市西海岸新区海滨工业园香海路168号
手机:13806390681 服务热线:0532-86131102
邮箱:qdhengchangkeji@163.com
鲁ICP备18013584号