一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于时滞滤波器和PID控制器设置复合控制系统的方法与流程

2022-08-28 01:54:39 来源:中国专利 TAG:

一种基于时滞滤波器和pid控制器设置复合控制系统的方法
技术领域
1.本发明涉及柔性机械臂的减振控制技术领域,具体地说,是一种基于时滞滤波器和pid控制器设置复合控制系统的方法。


背景技术:

2.轻型机械臂被广泛地应用于很多高性能工业场景,如柔性制造以及空间飞船等领域。作为关键的机械控制部件,特别是应用在智能机器人中,伺服电机有着举足轻重的作用。当伺服电机带动的移动部件为弹性材质或移动部件本身为柔性机械臂结构时。柔性机械臂的应用使得机器人在运行过程中不可避免的引起弹性振动,对机器人的运动精度造成不良影响,不仅如此,弹性振动还会导致机械臂的结构产生严重的疲劳破坏,缩短机械臂的使用寿命。因此,必须对机械臂的振动进行抑制。
3.在对机械臂进行振动抑制时,除了对柔性系统的硬件结构进行改进设计,还需要选择合适的闭环控制系统来抑制机械臂定位时出现地尖端余留振荡。时滞滤波器可以有效地抑制高精度定位系统的残留振荡,属于一种前馈型的开环控制方法。但是,该滤波器的设计需要阶跃系统的输入和系统的输出值,鲁棒性较差,无法对不可预测的外部干扰进行有效地抑制。pid控制器的算法简单,鲁棒性好,具有较高的可靠性。它通过调整参数,确定合适的参数使控制器特性与受控对象相匹配,使得受控对象得到减振控制。但是,在实际控制系统中参数会发生变化,参数确定较为复杂,传统的pid往往参数整定不良,性能欠佳,很难使系统达到最佳控制效果。
4.因此,本发明拟提出一种基于时滞滤波器和pid控制器设置复合控制系统的方法,实现对机械臂轨迹的精确跟踪,尽可能缩减机械臂的定位时间,有效抑制机械臂末端从高速运行到快速减速停止过程中出现的残留振动。


技术实现要素:

5.本发明的目的在于针对传统的机械臂减振控制方法中的不足,提供一种基于时滞滤波器和pid控制器设置复合控制系统的方法。其中,闭环定位控制器采用一种改进的螺旋动态算法pid控制,该算法具有较好的控制响应,可以实现对柔性机械臂的精准快速地控制。时滞滤波器位于闭环控制器之外,可以缩短定位时间,还可以综合考虑系统的振动模态,消除机械臂的残留振动。将闭环定位控制器和开环时滞滤波器进行结合,设计一种复合控制系统以实现对机械臂的快速减振定位。
6.本发明通过下述技术方案实现:一种基于时滞滤波器和pid控制器设置复合控制系统的方法,包括以下步骤:
7.建立柔性机械臂的动力学数学模型;
8.根据传统的时滞滤波器设计最小残留振荡的最优时滞滤波器;
9.建立基于对立点的螺旋动态算法的数学模型,基于螺旋动态算法求解pid控制器参数;
10.根据pid控制器参数和基于对立点的螺旋动态算法的数学模型设计改进的pid控制器;
11.将最优时滞滤波器和改进的pid控制器进行结合,设计一种对柔性机械臂的残留振荡进行抑制的复合控制系统。
12.为了更好地实现本发明,进一步地,所述建立基于对立点的螺旋动态算法的数学模型的方法包括:
13.将对立点学习算法和动态螺旋算法结合,建立基于对立点的螺旋动态算法模型。
14.为了更好地实现本发明,进一步地,所述设计改进的pid控制器的方法包括:
15.引入基于对立点的螺旋动态算法的数学模型对pid控制器参数进行动态调整,设计基于对立点的螺旋动态算法的数学模型调参的改进的pid控制器;
16.所述pid控制器参数包括比例系数、积分系数和微分系数。
17.为了更好地实现本发明,进一步地,所述将最优时滞滤波器和改进的pid控制器进行结合,设计一种对柔性机械臂的残留振荡进行抑制的复合控制系统的方法包括:
18.将最优时滞滤波器与脉冲序列进行卷积,过滤掉输入信号中不必要的频率成分,消除柔性机械臂系统的残留振荡;
19.在开环中对最优时滞滤波器初次滤波后,在闭环中采用基于对立点的螺旋动态算法的数学模型改进的pid控制器对柔性机械臂的残留振荡进行二次有效抑制;
20.将基于最优时滞滤波器的开环控制和基于对立点的螺旋动态算法的数学模型改进的pid控制器闭环控制进行耦合;
21.将最优时滞滤波器以外循环方式引入到改进的pid控制器中,设计外循环方式的复合控制系统。
22.本发明与现有技术相比,具有以下优点及有益效果:
23.(1)本发明引入了开环控制的最优时滞滤波器,可以有效地抑制高精度定位系统的残余振荡。同时改进传统的pid控制器,通过基于对立点的螺旋动态算法对pid控制器参数进行动态调整,改善系统的控制性能。将最优时滞滤波器以外循环方式引入pid控制系统中,进而对柔性机械臂的残余振动进行有效地抑制。
附图说明
24.本发明结合下面附图和实施例做进一步说明,本发明所有构思创新应视为所公开内容和本发明保护范围。
25.图1为本发明提供的一种基于时滞滤波器和pid控制器设置复合控制系统的方法中柔性机械臂二维模型示意图。
26.图2为本发明提供的一种基于时滞滤波器和pid控制器设置复合控制系统的方法中基于对立点的螺旋动态算法的的pid控制柔性机械手的闭环示意图。
27.图3为本发明提供的一种基于时滞滤波器和pid控制器设置复合控制系统的方法中整个复合控制的示意图。
具体实施方式
28.为了更清楚地说明本发明实施例的技术方案,下面将结合本发明实施例中的附
图,对本发明实施例中的技术方案进行清楚、完整地描述,应当理解,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例,因此不应被看作是对保护范围的限定。基于本发明中的实施例,本领域普通技术工作人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
29.实施例1:
30.本实施例的一种基于时滞滤波器和pid控制器设置复合控制系统的方法,包括以下步骤:
31.建立柔性机械臂的动力学数学模型;
32.根据传统的时滞滤波器设计最小残留振荡的最优时滞滤波器;
33.建立基于对立点的螺旋动态算法的数学模型,基于螺旋动态算法求解pid控制器参数;
34.根据pid控制器参数和基于对立点的螺旋动态算法的数学模型设计改进的pid控制器;
35.将最优时滞滤波器和改进的pid控制器进行结合,设计一种对柔性机械臂的残留振荡进行抑制的复合控制系统。
36.在本实施例中,。
37.实施例2:
38.本实施例在实施例1的基础上做进一步优化,在本实施例中建立柔性机械臂的动力学数学模型,在建立柔性机械臂的动力学方程之前,先做一些必要的假设:
39.1)柔性机械臂是均匀的矩形截面梁。
40.2)表面惯性矩和单位长度的质量是恒定的。
41.在上述假设条件下,根据汉密尔顿原理推导出以下微分方程和边界条件:
[0042][0043]
其中,w是柔性机械臂的弹性偏转,l表示柔性连杆的长度,t是中心轮轴,m是载荷的质量,ih是中心轮轴惯性,θ(t)是中心轮轴的角度,τ(t)是中心轮轴的转矩,ei是连杆的均匀抗弯刚度。
[0044]
柔性机械臂通常是细长的薄壁连杆。在分析过程中忽略了纵向振动。假设柔性臂仅被认为是横向振动的欧拉-伯努利模型。因此,柔性臂的简化二维模型如图1所示,其中,w(x,t)表示柔性机械臂的弹性偏转,ei表示连杆的均匀抗弯刚度,l表示柔性连杆的长度,ρ表示每单位长度的均匀重量,ih表示中心轮轴惯性,u表示控制扭矩,m
t
是尖端有效载荷的质量,θ(t)代表中心轮轴的角度,wi表示在xoy坐标轴下的第i个元件的弹性偏转,yi是圆弧逼近右节点位置的y元素。
[0045]
本实施例的其他部分与实施例1相同,故不再赘述。
[0046]
实施例3:
[0047]
本实施例在上述实施例1或2的基础上做进一步优化,在本实施例中设计传统的时
滞滤波器,时滞滤波器的本质是引入时滞环节。它包含了一系列不同时滞时间和幅值的脉冲序列,通过将期望的输入脉冲序列进行卷积,得到一个整形的输入来驱动系统,达到消除柔性系统残留振荡的目的。其基本结构为:
[0048][0049]
其中,ai和ti是脉冲序列的幅值和对应的时滞,n是所包含的脉冲个数,f(s)是时滞滤波器的基本结构;
[0050]
采用时滞滤波器前馈控制,系统的残留振荡可以描述为ω和ξ的函数,ω为系统模型频率,ξ为阻尼比,系统的残留振荡v(ω,ξ)表示为:
[0051]
c(ω,ξ)为ω和ξ的的正弦之和,ω为系统模型频率,ξ为阻尼比,s(ω,ξ)为ω和ξ的的余弦之和,ω为系统模型频率,ξ为阻尼比,tn为脉冲个数对应的时滞,n为脉冲个数;
[0052]
ti为脉冲序列对应的时滞,ai为脉冲序列的幅值,ω为系统模型频率,ξ为阻尼比;
[0053][0054]
式(2)提供了一种设计时滞滤波器的方法,在系统的模型频率ω和阻尼ξ处残留振荡的幅值为0,所有的正弦之和与所有的余弦之和也必须分别为0,即:
[0055][0056][0057]
为使滤波后与未滤波的输入最终得到的输出值相同,脉冲幅值之和必须满足如下增益约束条件:
[0058]ai
为脉冲序列的幅值,n是所包含的脉冲个数;
[0059]
同时要求脉冲的幅值均为正值,即ai≥0;
[0060]
当n=2时,时滞滤波器包括2个脉冲,4个未知数,有
[0061]
k为时滞滤波器的增益,t为时滞滤波器的时滞,ω为系统模型频率,ξ为阻尼比。
[0062][0063]
t1=0,t2=δt;其中,t
1 t2和为时滞时间。
[0064]
该两脉冲序列称为零振荡(zv)时滞滤波器,零振荡时滞滤波器的形式为f(s)是零振荡时滞滤波器的基本结构,a1和a2为脉冲序列为1和2时候的
幅值。根据表达式可得,时滞时间t2取决于柔性机械臂的固有频率和阻尼。若系统的阻尼和固有频率不能精确知道,则时滞时间t2不确定,不能有效地抑制柔性机械臂振荡。
[0065]
本实施例的其他部分与上述实施例1或2相同,故不再赘述。
[0066]
实施例4:
[0067]
本实施例在上述实施例1-3任一项的基础上做进一步优化,在本实施例中,设计最小残留振荡的最优时滞滤波器,在设计传统的两脉冲zv(zero vibration)、三脉冲zvd(zero vibration derivative)和极不灵敏ei(extensive insensive)时滞滤波器时,为了简化计算,忽略了系统参数变化的分布特性。如果已知系统参数变化的概率特性,可以将系统参数变化和系统残留振荡相结合,得到最小的期望残留振荡。假设f(o)为系统频率或阻尼系数的概率密度函数,且其服从平均分布u(ph,p
l
)。其中,p表示系统频率ω或者阻尼系数ξ。h和l为区域限定,v(ω,ξ)为系统频率ω或者阻尼系数ξ的脉冲函数,如果同时考虑系统频率ω或者阻尼系数ξ,则二维概率密度函数可表示为:
[0068][0069]
(1)考虑系统频率误差,且系统的阻尼较小时,性能指标j可表示为
[0070][0071]
(2)考虑系统阻尼误差时,性能指标j可表示为
[0072][0073]
(3)考虑系统的频率误差和阻尼误差时,性能指标j可表示为
[0074][0075]
时滞时间和脉冲幅值是时滞滤波器中可优化的变量。根据约束条件幅值ai≥0,即可求得目标函数j的最优解。
[0076]
本实施例的其他部分与上述实施例1-3任一项相同,故不再赘述。
[0077]
实施例5:
[0078]
本实施例在上述实施例1-4任一项基础上做进一步优化,在本实施例中,建立基于对立点的螺旋动态算法(osda)的数学模型
[0079]
传统的螺旋动态优化算法(sda)主要应用于探索模型的解空间。在螺旋运动的前期,粒子充分运动,探索所有可能的解空间,而在螺旋动态运动的后期,粒子在较小的搜索区域内剧烈运动,具有较强的探索能力。相比于直线运动搜索,该动态算法的移动策略更具有全局探索性。但是,该算法的搜索策略较为单一,螺旋轨迹较为固定,容易陷入局部最优。因此,引入对立学习对螺旋动态算法进行一定的优化。
[0080]
基于对立点的螺旋动态算法(osda)是基于对立点的学习算法(obl)和螺旋动态算法(sda)的结合。将obl应用到sda中,使得该算法不仅考虑通常的解,还考虑其相应的对立解,为算法在代理当前位置的相反位置寻找最优解创造了机会。该策略改善了搜索代理在预定义搜索空间中的分布,从而改进了sda的开发策略。使用的obl公式表示为(13),它是
obl的准对立变体。
[0081]vopp
(i)=v
mid
(i) (vo(i)-v
mid
(i))
×
rand
ꢀꢀꢀ
(13);
[0082]
其中,vo(i)定义如下:
[0083]
vo(i)=2
×vmid
(i)-v
old(i)ꢀꢀꢀ
(14);
[0084]
其中,v
mid
定义如下:
[0085][0086]
其中,v
opp
是第i个代理的相反位置,rand是生成的随机数,v
old
是第i个代理的旧位置,v
max
和v
min
是第i个代理的上下界。sda是一种基于代理的算法,主要利用螺旋方程将代理从一个位置螺旋移动到另一个位置。sda的螺旋方程定义为(16)。
[0087]
xi(t 1)=s(r,θ)xi(t)-(s(r,θ)-i)x
*
(t)
ꢀꢀꢀ
(16);
[0088]
其中,xi(t 1)是第t次迭代中第i个搜索代理的更新位置,xi(t)是第t次迭代中第i个搜索代理的前一个位置,i表示单位矩阵,r表示螺旋半径,θ表示螺旋角。s(r,θ)表示旋转矩阵的组合,它是由半径r和角度θ定义的。x
*
(t)代表螺旋形式的中心点。
[0089]
基于对立点的螺旋动态算法(osda)是利用等式(13)-(16)的新算法。具体步骤如下:
[0090]
步骤1,初始化第i个代理的位置xi,第i个代理的相反位置v
opp
(i)以及最大迭代t。
[0091]
步骤2,更新每个代理i的成本函数f(xi)和适应度函数f(v
opp
(i))。
[0092]
步骤3,确定最佳个体代理x
fmin
。以成本函数f
min
值最低的代理为最佳个体代理。最佳个体代理被设置为目的地位置p
dest

[0093]
步骤4,使用螺旋方程(16)更新第i个代理的位置。
[0094]
步骤5,根据等式(13)-(16)确定第i个代理更新位置的相反位置。
[0095]
步骤6,检查算法是否已更新所有代理的位置。如果已更新,则继续执行步骤8。如果未更新完成,重复步骤4-步骤7。
[0096]
步骤7,更新每个代理的成本或适应度函数f(xi)和f(v
opp
(i))值。
[0097]
步骤8,确定最佳代理x
fmin
。该代理具有最低成本函数,f
min
是最佳代理,p
dest
被指定为目标位置。
[0098]
步骤9,检查迭代次数是否达到最大值t。如果已达到,则停止算法。如果未达到,重复步骤4-步骤9。
[0099]
本实施例的其他部分与上述实施例1-4任一项相同,故不再赘述。
[0100]
实施例6:
[0101]
本实施例在上述实施例1-5任一项基础上做进一步优化,在本实施例中,设计基于osda的pid控制器
[0102]
在控制系统的设计中,最常用的是pid控制器,其属于一种线性控制器。pid控制通过对控制器参数进行调整,即比例系数k
p
、积分系数ki和微分系数kd进行调整,便可实现有效的控制效果。pid控制器的控制方程由初始给定值i(t)和实际输出值o(t)两部组成,即控制偏差:e(t)=i(t)-o(t);
[0103]
经过pid控制器的输出方程u(t)为:
[0104]
pid控制器的参数整定是控制系统设计的核心内容。调整pid参数的目的是使控制器的特性和被控对象配合好,达到最佳减振效果。传统的pid控制器参数确定后便不能更改,即利用固定参数进行控制,不能实现动态性调参。因此,引入基于对立点的螺旋动态算法对pid控制器参数进行动态调整,在初值参数的基础上进行参数整定,改善系统动、静态性能。
[0105]
基于osda的pid控制柔性机械手的闭环框图如图2所示。
[0106]
kp,ki和kd分别被定义为比例项、积分项和导数项的常数。在这项工作中,关注输出的是中心轮轴的角度。注意对中心角度输出响应与期望输入的比较。这些信号之间的差异是误差,应用于sda和基于对立点的螺旋动态算法。两种优化算法都会进行搜索操作以使误差最小化,从而确定pid控制的一组最优参数。sda和osda成本函数的表达式基于误差信号,如式(5)所示。θ
desired(i)
和θ
actual(i)
分别为柔性机械臂的期望输入和中心角度输出响应。n为误差信号的采样数据总数。
[0107][0108]
本实施例的其他部分与上述实施例1-5任一项相同,故不再赘述。
[0109]
实施例7:
[0110]
本实施例在上述实施例1-6任一项基础上做进一步优化,在本实施例中,设计复合控制系统对机械臂的残余振动进行抑制
[0111]
采用最优时滞滤波器,最优时滞滤波器通过与脉冲序列卷积,可以有效地过滤掉输入信号中不必要的频率成分,从而在pid控制器外侧对柔性机械臂系统的残余振动进程初次抑制。在闭环pid控制器中,采用基于osda的pid控制器对残余振动进行二次抑制,osda解决pid参数动态变化的问题,提高了减振性能,具有良好的鲁棒性。将基于最优时滞滤波器的开环控制和基于osda的pid闭环控制进行耦合的方式有:
[0112]
(1)内循环输入滤波器:将时滞滤波器引入到反馈环节;
[0113]
(2)(2)外循环输入滤波器:将时滞滤波器置于反馈环节外部。若采用内循环引入的方式,可能会导致原本稳定的闭环控制系统出现失稳现象,故设计外循环复合控制系统,其控制结构框图如图3所示。
[0114]
本实施例的其他部分与上述实施例1-6任一项相同,故不再赘述。
[0115]
以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化,均落入本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献