APP下载

基于粒子群算法优化的机械手控制仿真研究

2024-01-16孙素军张文磊

关键词:角位移机械手连杆

孙素军,张文磊

(1.滁州职业技术学院 电气工程学院,安徽 滁州 239000;2.滁州职业技术学院 智能制造学院,安徽 滁州 239000)

由于科技的发展,人们的生活水平得到了普遍的提高,现有的人力成本也在不断攀升,这使得替代人力的机械手产品得到了迅猛发展。机械手涉及机械制造、传感器、自动控制和计算机技术等多学科领域[1-2]。机械手能够根据编程程序自动完成人类设置好动作目标,即使在恶劣或者危险的环境中也能正常工作。但是,机械手的发展也面临着很多困难、控制精度要求越来越高、响应速度要求越来越快等。这使得过去生产的机械手无法满足复杂、多变、高精度的生产任务。为了提高机械手在市场中的竞争力,必须对机械手控制系统展开深入研究。

当前,许多科研人员为了改变机械手控制系统的落后局面,从不同角度对机械手控制方法进行了实验。例如:文献[3-4]研究了机械手姿态PID控制理论,分析了主控制器任务流程,给出了PID控制规律的离散表达形式,通过具体实例建立PID控制的Simulink仿真框图,对机械手抓取物体跟踪精度进行仿真,从而完成了机械手抓取物体的控制系统程序设计;文献[5-6]研究了机械手运动轨迹滑模控制仿真方法,定义了机械手位姿坐标示意图,根据拉格朗日定理简化机械手动力学方程式,设计了机械手运动关节滑模控制器,利用李雅普诺夫函数推导机械手滑模控制器的稳定性和收敛性,通过仿真证明机械手滑模控制器的优越性;文献研究了机械手模糊反演控制理论,描述了机械手非线性二阶微分方程式,提出了机械手运动误差自适应模糊反演控制律,采用李雅普诺夫函数证明控制误差的收敛性,通过仿真检验连杆运动轨迹跟踪误差,提高了控制系统输出精度。虽然过去研究机械手定位精度得到了提高,但是,随着高精度科技产品的发展,人们对机械手定位精度要求也随之提高,这就迫使人们对机械手控制系统展开更深入的研究。对此,本文建立n连杆机械手非线性微分方程式,分析了机械手动力学特性,设计了机械手滑模控制系统,采用粒子群算法优化滑模控制器,以两自由度机械手为例,利用MATLAB对机械手角位移进行仿真实验,对比和分析外界扰动环境中误差变化,从而得到优化后控制系统的优越性。

1 机械手动力学

n连杆机械手的动力学可以用1个二阶非线性微分方程[8-9]来描述,如下所示

M(q)q″+C(q,q′)q′+G(q)+τd=u

(1)

(1)式中:q、q′、q″分别为链接位置、速度和加速度向量;u∈Rn为连杆扭矩的矢量,M(q)∈Rn×n为对称正定惯性矩阵,C(q,q′)∈Rn×n为向心矩阵,G(q)∈Rn为重力矢量,τd∈Rn为广义输入扰动的向量。

机械手的动力学特性如下:

特性① 对于某些正常数φ1和φ2,满足

φ1In≤M(q)≤φ2In

(2)

特性② 公式(3)为一个斜对称矩阵,

M′(q)-2C(q,q′)q′

(3)

特性③ 重力矢量G(q)满足下列关系:

‖G(q)‖≤gmax

(4)

特性④ 科里奥利和离心扭矩矢量C(q,q′)满足下列关系

‖C(q,q′)‖≤ξc‖q‖

(5)

(5)式中,ξc为1个正常数。

2 控制器优化设计

2.1 滑模控制器

滑模控制器是从变结构理论中衍生出来的一种技术。这种控制技术具有管理非线性和时变系统的能力。在非线性滑模控制器设计中,滑动面s(t)的表达式[10]定义为

s(t)=e′(t)+λe(t)

(6)

式中:s(t)为n×1向量,λ为对角正定常数矩阵;e(t)=q(t)-qd(t)为跟踪位置误差,qd(t)为理想的位置轨迹。

设计滑模控制器可以使状态向量e(t)在所有t≥0的滑动面(s(t)=0)上保持不变。在极限状态下,limt→∞e(t)=0, 使误差渐近收敛到零。滑动面的导数由以下等式给出

s′(t)=e″(t)+λe′(t)

(7)

由公式(1)和(7)可以得到

(8)

为了达到预期的性能,s′(t)=0决定了等效控制力ueq(t), 设计为

(9)

然而,在发生由参数变化或外部负载干扰引起的不可预测干扰时,等效控制力无法确保良好的控制性能。因此,增加新的控制力,以消除不可预测干扰的影响。新的控制力定义为ud(t):

ud(t)=-Ksign(s(t))

(10)

式中:K=diag{k1,k2,…,kn}为控制增益;sign(·)为符号函数。

为保证稳定性和收敛性,非线性不确定系统的滑模控制定律可以表示为

(11)

2.2 粒子群算法

粒子群算法基于动物的行为,通过调整它们的位置和速度以适应它们的群体信息。在该算法中,种群被称为群,其每个元素被称为粒子。该进化算法通过迭代尝试改进不同参数值的解,用于优化连续或离散、线性或非线性、约束或无约束、不可微函数。

“种群”的初始化是通过一群随机解完成的。对于N维空间,每个粒子(假设第k粒子)的位置坐标和相应的速度分别表示为xk=(xk1,xk2,…,xkN)和vk=(vk1,vk2,…,vkN)。在粒子群算法中,其粒子的速度和位置[11-12]更新为

vk(i)=w·vk(i-1)+r1φ1·(pbestk-xk(i-1))+r2φ2·(gbest-xk(i-1))

(12)

xk(i)=xk(i-1)+vk(i)

(13)

(12)式中:w为惯性权重,r1和r2为介于0和1之间的随机数;φ1和φ2分别为控制粒子认知行为和社交能力的加速度常数,pbestk为粒子个人最佳位置,gbest为粒子全局最佳位置。

采用粒子群算法迭代搜索过程,如图1所示。

图1 粒子群算法迭代搜索过程

2.3 滑模控制器优化设计

对于等式(6)、(10)和(11)中描述的控制器,需要指定以下4个参数:λ1和λ2滑动面坡度和k1和k2控制增益。使用这些参数将链接位置收敛到所需位置。由于机械手系统的非线性和耦合效应,没有直接的方法来寻找这些参数。粒子群优化算法通过考虑所观察系统的性能和特征,并考虑待调整系统的所有响应、2个链路的期望动态性能、最小响应时间和建立静态误差为零等,实现最优控制。

通过测定k1、k2、λ1和λ2定义了最优滑模控制器设计问题。将问题编码为粒子群算法中的种群。所有需要优化的控制器参数都为该问题提供了可能的解决方案。向最优滑模控制器参数的收敛遵循适应度函数。因此,在执行粒子群算法之前,必须正确定义基于误差的函数。基于平方误差的适应度函数由以下等式给出

(14)

式(14)中:e(i)为第i个样本的轨迹误差,N为样本数。

采用粒子群算法优化滑模控制流程,如图2所示。

图2 机械手控制优化流程

3 误差仿真

为了验证机械手滑模控制器优化后的跟踪误差输出效果,采用两自由度机械手,n=2,K=diag{k1,k2}进行测试,如图3所示。

图3 两自由度机械手

利用MATLAB对机械手连杆的角位移和角速度跟踪误差进行仿真,根据仿真结果分析优化前和优化后的跟踪误差。仿真参数设置见表1。

表1 机械手控制仿真参数

假设机械手连杆角位移为q1=q2=2sin(πt/2),在无外界扰动环境中,连杆1和连杆2角位移跟踪误差分别如图4和图5所示。在有外界扰动环境中(τd=2cos(2πt)),连杆1和连杆2角位移跟踪误差分别如图6和图7所示。

图4 连杆1(无扰动)

图4和图5仿真结果显示,在无外界扰动环境中,机械手采用优化前和优化后的滑模控制器,其连杆实际输出角位移能够较好的收敛于期望角位移,机械手连杆输出误差较小。图6和图7仿真结果显示,在有外界扰动环境中,机械手采用滑模控制器,其连杆实际输出角位移与期望角位移偏离较大,机械手连杆输出误差较大。机械手采用粒子群算法优化滑模控制器,其连杆实际输出角位移仍然能够较好地收敛于期望角位移,机械手连杆输出误差较小。因此,在等同外界环境中,采用粒子群算法优化滑模控制器,机械手控制系统反应速度较快,能够根据在线反馈信号进行优化和调节,更适合高精度机械手控制系统。

4 结 论

针对两自由度机械手连杆角位移输出误差较大问题,设计其滑模控制系统,引用粒子群算法优化滑模控制器,通过连杆角位移输出误差进行仿真验证,主要结论如下:

(1)机械手采用滑模控制器,在有扰动的外界环境中,其连杆角位移与期望角位移偏离较大。面对突发波形的干扰,反应速度较慢,自适应调节能力较弱,导致机械手连杆跟踪误差较大。

(2)机械手采用粒子群算法优化后的滑模控制器,在有扰动的外界环境中,其连杆角位移与期望角位移偏离较小。面对突发波形的干扰,反应速度较快,自适应调节能力较强,能够提高机械手连杆角位移跟踪精度。

(3)基于机械手连杆滑模控制器优化研究,提高了机械手控制系统抗干扰能力,但没有考虑机械手连杆末端抓取力的大小。今后可以对机械手抓取力展开进一步研究。

猜你喜欢

角位移机械手连杆
抓取脆弱物体的机械手
一种压电驱动的角位移微动平台设计与优化
某发动机连杆螺栓拧紧工艺开发
基于离散小波变换方法的信号去噪应用研究
C空间中肢体参数的测量方法
搬运机械手PLC控制系统设计
基于ADAMS与MATLAB的机械手控制系统仿真研究
连杆的运动及有限元分析
一种连杆、杠杆撬断浇口的新型模具设计
变转速泵控马达系统位置控制试验研究