系统辨识及自适应控制实验_第1页
系统辨识及自适应控制实验_第2页
系统辨识及自适应控制实验_第3页
系统辨识及自适应控制实验_第4页
系统辨识及自适应控制实验_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Harbin Institute of Technology系统辨识与自适应控制 实验报告题 目: 渐消记忆最小二乘法、MIT方案 与卫星振动抑制仿真实验专 业: 控制科学与工程 姓 名: 学 号: 15S004001 指导老师: 日 期: 2015.12.06 哈尔滨工业大学2015年11月本实验第一部分是辨识部分,仿真了渐消记忆递推最小二乘辨识法,研究了这种方法对减缓数据饱和作用现象的作用;第二部分是自适应控制部分,对MIT方案模型参考自适应系统作出了仿真,分别探究了改变系统增益、自适应参数的输出,并研究了输入信号对该系统稳定性的影响;第三部分探究自适应控制的实际应用情况,来自我本科毕设的

2、课题,我从自适应控制角度重新考虑了这一问题并相应节选了一段实验。针对挠性卫星姿态变化前后导致参数改变的特点,探究了用模糊自适应理论中的模糊PID法对这种变参数系统挠性振动抑制效果,并与传统PID法比较仿真。一、系统辨识1. 最小二乘法的引出在系统辨识中用得最广泛的估计方法是最小二乘法(LS)。设单输入-单输出线性定长系统的差分方程为: (1.1) 式中:为控制量;为理论上的输出值。只有通过观测才能得到,在观测过程中往往附加有随机干扰。的观测值可表示为: (1.2)式中:为随机干扰。由式(1.2)得 (1.3)将式(1.3)带入式(1.1)得 (1.4)我们可能不知道的统计特性,在这种情况下,往

3、往把看做均值为0的白噪声。设 (1.5)则式(1.4)可写成 (1.6)在观测时也有测量误差,系统内部也可能有噪声,应当考虑它们的影响。因此假定不仅包含了的测量误差,而且包含了的测量误差和系统内部噪声。假定是不相关随机序列(实际上是相关随机序列)。现分别测出个随机输出输入值,则可写成个方程,即 (1.7)上述个方程可写成向量-矩阵形式,设:则式(1.7)可写为 (1.8)式中:为维输出向量;为维噪声向量;为维参数向量;为维测量矩阵。因此,式(1.8)是一个含有个未知参数,由个方程组成的联立方程组。如果,方程数少于未知数数目,则方程组的解是不定的,不能唯一地确定参数向量。如果,方程组正好与未知数

4、数目相等,当噪声时,就能准确地解出 (1.9)如果噪声,则 (1.10)从上式可以看出噪声对参数估计是有影响的,为了尽量较小噪声对估值的影响。在给定输出向量和测量矩阵的条件下求系统参数的估值,这就是系统辨识问题。可用最小二乘法来求的估值,以下讨论最小二乘法估计。2. 最小二乘法估计算法设表示的最优估值,表示的最优估值,则有: (1.11)写出式(1.11)的某一行,则有: (1.12) 设表示与之差,即: (1.13)成为残差。把分别代入式(1.13)可得残差。设则有 (1.14)最小二乘估计要求残差的平方和为最小,即按照指数函数 (1.15)为最小来确定估值。求对的偏导数并令其等于0可得 (

5、1.16) (1.17) 由式(1.17)可得的最小二乘估计 (1.18)3 渐消记忆递推最小二乘法渐消记忆递推最小二乘法是能克服最小二乘法数据饱和的一种方法,这种方法加入了遗忘因子,能够带来数据饱和现象的改善。下面直接介绍渐消记忆递推最小二乘法的计算原理:其中为遗忘因子。4 仿真及结果考虑如下仿真对象: 其中, v ( k ) 为服从 N (0,1) 分布的白噪声。输入信号 u ( k ) 采用 M 序列,幅度为 1。用simulink产生在M序列作用下的输出值,仿真框图如下:渐消记忆递推最小二乘法的程序如下:%渐消记忆递推最小二乘法set(0,'DefaultAxesFontSiz

6、e',15);load R_out;load R_input;Sample = 0.005;Count = length(R_input);Time = zeros(1,Count);for i = 1:Count Time(i) = (i-1)*Sample;endN = Count-10;Epsaler = 1010;nb = 3;na = 2;lamda = 1-4e-3;Saita = zeros(na+nb,N);P_N = Epsaler*eye(na+nb);Lowercase_Fai_N1 = zeros(na + nb,1);Lowercase_Fai_N = zer

7、os(na + nb,1);for i = 1 : N for j = 1 : nb Lowercase_Fai_N1(j) = R_input(i + j - 1); end for j = 1 : na Lowercase_Fai_N1(nb+j) = -R_out(i + j - 1); end for j = 1 : na + nb Lowercase_Fai_N(j) = Lowercase_Fai_N1(na + nb + 1- j); end K_N = P_N * Lowercase_Fai_N /(lamda + Lowercase_Fai_N'* P_N * Low

8、ercase_Fai_N); Saita(:,1+i) = Saita(:,i) + K_N * ( R_out(na + i) - Lowercase_Fai_N'*Saita(:,i); P_N =1/ lamda*(P_N - K_N * K_N' * (lamda + Lowercase_Fai_N' * P_N * Lowercase_Fai_N);endSaita(:,1+N)My_xlable = 'fontsize15 fontnameTimes new roman Step'My_ylable1 = 'fontsize15 fo

9、ntnameTimes new roman alpha 0'My_ylable2 = 'fontsize15 fontnameTimes new roman alpha 1'My_ylable3 = 'fontsize15 fontnameTimes new roman beta 0'My_ylable4 = 'fontsize15 fontnameTimes new roman beta 1'My_ylable5 = 'fontsize15 fontnameTimes new roman beta 2'My_title

10、= 'fontsize15 fontnameTimes new roman Estimation'%画出递推最小二乘辨识结果for i = 1: na+nb figure(i); plot(Saita(i,:),'k-','LineWidth',2.5); xlabel(My_xlable); ylabel(My_ylablei); title (My_title); grid on;end%画出输入信号figure;plot(Time,R_input,'k-','LineWidth',1);xlabel('

11、;fontsize12 fontnameTimes new roman Time (Seconds)');ylabel('fontsize12 fontnameTimes new roman Amplitude');title ('fontsize12 fontnameTimes new roman Input-Signal');grid on;axis(0,Time(Count),-2,2);%画出输出信号figure;plot(Time,R_out,'k-','LineWidth',1);xlabel('fon

12、tsize12 fontnameTimes new roman Time (Seconds)');ylabel('fontsize12 fontnameTimes new roman Amplitude');title ('fontsize12 fontnameTimes new roman Output-Signal');grid on;axis(0,Time(Count),-15,15);当时,仿真结果如下所示:参数的估计结果为:ans = -1.1949 0.7954 1.0058 0.5053 0.2015而普通递推最小二乘的结果如下:可以发现渐

13、消记忆法还是能够较好的解决数据饱和现象的。二、自适应控制MIT是一种基于梯度优化的自适应控制器。MIT 方法可以针对任意“定常但未知的参数”,经过“调整时间”后,让理想模型的输出和实际被控对象的输出偏差趋于零。由于为了让理想模型的输出和实际被控对象的输出偏差趋于零,所以定义偏差:为了来讨论输出偏差,所以我们选择以下指标来讨论这个时变系统的:在MIT引入可调参数,设定所以:因为MIT自适应方法主要是为了针对变化的增益,所以设置当为0时,即。· 仿真程序仿真程序如下:clear all; close all;%设置仿真环境 h = 0.1; t = 100; L = t/h; %设置传递

14、函数%G(s) = 1/(s2 + s +1)%kp = 1.2;%km = 1; num = 1; den = 1 1 1; n = length(den) - 1; kp = 1.2; Ap,Bp,Cp,Dp = tf2ss(kp*num,den); km = 1; %参考模型增益 Am,Bm,Cm,Dm = tf2ss(km*num,den);%参考模型参数%配置初始化%gamma = 0.2 %系统输入:方波 幅值r=1 gamma = 0.2; %自适应增益 uc0 = 0; u0 = 0; e0 = 0; ym0 = 0; xp0 = zeros(n,1); xm0 = zeros

15、(n,1); kc0 = 0; r = 1; uc = r *ones(1,L/8) -ones(1,L/8) ones(1,L/8) -ones(1,L/8) ones(1,L/8) -ones(1,L/8) ones(1,L/8) -ones(1,L/8); %输入信号(方波) %-MIT方案 for k = 1:L; time(k) = k*h; xp(:,k) = xp0 + h*(Ap*xp0 + Bp*u0); yp(k) = Cp*xp(:,k) + Dp*u0; %计算被控输出 xm(:,k) = xm0 + h*(Am*xm0 + Bm*uc0); ym(k) = Cm*xm

16、(:,k) + Dm*u0;%计算参考输出 e(k) = yp(k) - ym(k); %计算误差error=yp-ym kc(k) = kc0 - h*gamma*e0*ym0;%求控制系数,dkc = -gamma*e0*ym0 u(k) = kc(k) * uc(k); %计算控制率 %-更新参数-% uc0 = uc(k); u0 = u(k); e0 = e(k); ym0 = ym(k); xp0 = xp(:,k); xm0 = xm(:,k); kc0 = kc(k); end %-画图-% figure(1); plot(time,uc); xlabel('time&

17、#39;); ylabel('uc'); title('输入信号'); axis(0 L*h -1.5 1.5); figure(2); plot(time,ym,'r',time,yp,':'); xlabel('time'); ylabel('y'); legend('参考模型ym','被控对象yp'); title('输出信号'); figure(3); plot(time,e); xlabel('time'); ylabel(&

18、#39;e'); title('偏差');· 参数比较· 增益参数比较参考对象的增益为1,被控对象的增益选择0.2、0.5、0.8、1、1.5、3。 所以综上所述,用MIT控制方法设计出的针对这个系统的控制率是有效的,它让被控对象的输出和参考对象的输出的偏差是最后趋于零,即最后被控对象的输出与参考对象输出一致。被控对象与参考对象之间的增益区别,并不会造成MIT控制方法失效。区别主要是如果被控对象增益小于参考对象,那么被控对象会先小于参考对象,再慢慢攀升至参考对象。如果被控对象增益大于参考对象,那么被控对象的输出将会先超调与参考对象输出。·

19、自适应参数比较选取0.5、0.8、1。通过仿真结果可以看出,在增大后,误差的振荡开始增大,最后如果过大,系统将发散。· 实验结论 通过实验可以发现,增益区别对系统的自适应效果不会有影响,采用MIT方案后,被控对象都可以完全跟随参考对象。由上面那些图可以看出,在实际参数未知的情况下,通过MIT方案,也可以使最后模型的输出和参考模型吻合。越大,则收敛速度越快,同时会增加系统的不稳定性。所有的MIT方案,稳定性无法保证,在控制信号发生改变的时候控制效果可能发散,可以通过改变极点来使系统稳定。三、模糊自适应系统应用-卫星姿态振动抑制实验原理:本设计直接参考哈勃望远镜已知的模态参数及对应增益进

20、行仿真研究。卫星模型如下:哈勃望远镜的太阳帆板姿态角不同时参数不同。我们首先根据姿态角为90度时的情形设计PID控制器,具体数据如表。 哈勃望远镜模态参数表Modal Freqency (Hz)Modal GainDamping(%)V1V2V30.310.0130.50.430.0150.50.70.0160.0010.50.920.10351.210.1320.51.370.0210.51.560.4330.514.31-0.001-1.079-0.2260.8表中V1、V2、V3代表卫星空间坐标轴的滚转、偏航、俯仰三个方向,本实验只选取V1轴的数据对含振荡的系统进行一维单自由度系统的振动

21、抑制设计。系统各模态阻尼比均可假设为。 根据系统90度时的Bode图可知,挠性模态对系统特性影响较大,会增大不确定性;其次在卫星上太阳帆板与本体的姿态角发生改变时,系统的各项参数会随着姿态的改变而变化,相当于一个参数不确定的系统,因此传统的线性控制器无法实现对所有情形的控制,可能会由于参数改变而变得发散,因此需要采用自适应控制中方法来实现系统的稳定,本实验采用模糊自适应方法中的模糊PID方法。传统模糊控制器包括模糊控制器、控制对象、作动器以及传感器等四个部分。其中,模糊控制器又包含输入信号模糊化、控制规则库、模糊推理和解模糊输出等四个部分,包含Ke, Kec, Ku分别为误差、误差变化率、控制

22、输出的量化因子。当Ke较小时,系统快速性差,稳态误差较大,增大Ke,系统响应加快,误差减小,但当Ke过大时,系统会出现明显的超调,不稳定。当Kec较小时,系统具有较大的超调量,且调整时间较长,当增大Kec时,上述两指标得到明显改善,Kec过大时,系统超调进一步减小,但调整时间反而变长。Ku的作用与Ke类似,与Ke配合使用,便于调试。量化因子的确定:Ke=n/e(max),Kec=m/ec(max),Ku=u(max)/l。n,m,l分别为Ke,Kec,Ku的量化等级,一般可取6或7。e(max),ec(max),u(max)分别为误差,误差变化率,控制输出的论域。实际的调试也采用凑试法,通常先

23、根据经确定Ku,这个直接关系着你的输出是发散的还是收敛的。再确定Ke,这个直接关系着输出的稳态误差响应,最后确定Kec。变量的模糊化是将输入的精确量转换成模糊量,其中输入量包括外界的参考输入和系统的输出或状态等,并确定它们的隶属函数,从而确定属于每个模糊集合的隶属度。模糊化的具体过程如下: (1)首先对这些输入量进行处理以变成模糊控制器要求的输入量。例如常见的情况是计算位移误差和误差变化率; (2)将己经处理过的输入量进行尺度变换,使其变换到各自的论域范围; (3)将变换到论域范围的输入量进行模糊处理,使其原先精确的输入量变成模糊量,并用相应的模糊划分集合来表示。系统中误差e、误差变化率以及控

24、制量u 的实际范围称为论域。设误差论域为,l、m、n 分别为e、u的模糊子集划分数目。在理论上可以证明,通常情况下,对简单的、要求不高的模糊控制系统,模糊子集划分数目l = m = n =3,对于具有一定要求的模糊控制系统,模糊子集划分数目l = m = n =7。 传统的二维模糊控制器以误差e和误差变化率作为输入变量,控制量u为输出,从关系上可以表示为。体现了模糊控制器实质上是一种非线性的比例微分(PD)控制关系,相当于一个非线性的 PD 调节器,只有当误差不为零时才具有调节作用,具有模糊 PD 控制功能,缺少模糊积分控制功能,所以一般具有稳态误差。 模糊推理是模糊控制器的核心,其具有模拟人

25、的基于模糊概念的推理能力,该推理过程是基于模糊逻辑中的蕴涵关系及控制规则库中的推理规则来进行的。模糊控制规则实际是一组多重条件语句。形如“IF-THEN”形式的语句描述成为规则,若干条规则组合起来称为模糊规则库。模糊控制必然用到模糊控制规则库,根据经验,模糊控制系统中常用的规则库基本形式由E、EC、U 分别表示误差、误差变化率、控制输出模糊子集的变量构成的模糊规则表。 对于二维模糊控制器,当输入与输出的论域等级划分相同时,控制规则可表示为:,其中, 为误差加权系数,(0,1),(1)为误差变化率加权系数。采取因子调整优化时,初始控制阶段系统误差较大,应使误差加权系数较大;控制趋向稳定时系统误差

26、较小,应使误差变化率加权系数(1-)较大。 解模糊化过程的输入是一个模糊集,既上一步的聚类输出模糊集,其输出为一个单值。模糊集的聚类中包含很多输出值,因此必须进行反模糊化,以从集合中解析出一个单输出值。增益调节型模糊 PID 控制器模型如下图所示。 模糊PID控制原理示意图根据PID控制的理论分析,针对不同的e和总结出一套调节原则: (1)当e较大时,为使系统具有较好的跟踪性能,应取较大的Kp与较小的Kd同时为避免系统响应出现较大的超调,应对积分作用加以限制,通常取Ki=0; (2)当e和中等大小时,为使系统具有较小的超调,Kp应取得小些。在这种情况下,Kd的取值对系统的影响较大,应取得小一些

27、,Ki取值要适当。 (3)当e较小时,为使系统具有较好的稳定性能,Kp、Ki均应取得大些,同时为避免系统在设定值出现振荡,并考虑系统抗干扰性能,当较大时Kd可取得小些;较小时Kd可取大一些。 语言变量EC和E选取的模糊集为NB,NM,NS,ZO,PS,PM,PB;语言变量U选取的模糊集为NB,NM,NS,ZO,PS,PM,PB;E和EC论域为-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6;U的论域为-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7对模糊语言值进行量化:就是将语言值用特定的模糊集合来描述,从而确定出论域内元素对应相应模糊集合的隶属度。确定每

28、个模糊集的隶属函数,可以在FIS中选择隶属函数的形状和参数。模糊PID 的论域的中心取与经典 PID 控制参数大致相等的值。根据参数Kp、Ki、Kd对系统输出特性的影响情况,在不同的误差信号和误差信号的变化率组合输入下,结合结构振动控制的知识,有如下的模糊控制规则: Kp 模糊控制规则表U EC E NBNMNSZOPSPMPBNBPBPBPMPMPSZOZONMPBPBPMPSPSZONSNSPMPMPMPSZONSNSZOPMPMPSZONSNMNMPSPSPSZONMNMNMNMPMPSZONSNMNMNMNBPBZOZONMNMNMNBNB Ki 模糊控制规则表U EC E NBNMN

29、SZOPSPMPBNBNBNBNMNMNSZOZONMNBNBNMNSNSZONSNSNBNMNSNSZOPSPSZONMNMNSZOPSPMPMPSNMNSZOPSPSPMPBPMZOZOPSPSPMPBPBPBZOZOPSPMPMPBPB Kd 模糊控制规则表U EC E NBNMNSZOPSPMPBNBPSNSNBNBNBNMPSNMPSNSNBNMNMNSZONSZONSNMNMNSNSZOZOZONSNSNSNSNSZOPSZOZOZOZOZOZOZOPMPBNSPSPSPSPSPBPBPBPMPMPMPSPSPB在simulink仿真环境中建立模糊控制系统的方框图,如图所示。其中有信号发生器,比较器,放大器(Gain),零阶保持器,多路混合器(Mux),模糊逻辑控制器(FIS),控制对象,示波器(scope)。本设计的仿真框图如下图:模糊逻辑控制系统的参数对控制性能影响

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论