系统辨识实验指导书

合集下载

系统辨识实验报告

系统辨识实验报告

i=1:800; figure(1) plot(i,Theta(1,:),i,Theta(2,:),i,Theta(3,:),i,Theta(4,:),i,Theta(5,:),i,T title('待估参数过渡过程') figure(2) plot(i,Pstore(1,:),i,Pstore(2,:),i,Pstore(3,:),i,Pstore(4,:),i,Pstore(5,: title('估计方差变化过程')
最小二乘法建模:
二、三次实验 本次实验要完成的内容: 1.参照index2,设计对象,从workspace空间获取数据,取二阶,三阶 对象实现最小二乘法的一次完成算法和最小二乘法的递推算法(LS and RLS); 2.对设计好的对象,在时间为200-300之间,设计一个阶跃扰动,用最 小二乘法和带遗忘因子的最小二乘法实现,对这两种算法的特点进行说 明; 实验内容结果与程序代码: 利用LS和RLS得到的二阶,三阶参数 算法 阶次 A1 A2 A3 B0 B1 B2 B3 LS 二阶 -0.78420.1373 -0.00360.5668 0.3157 RLS 二阶 -0.78240.1373 -0.00360.5668 0.3157 LS 三阶 -0.4381-0.12280.0407 -0.00780.5652 0.5106 0.1160
测试对象流程图 实验结果为:
2、加入噪声干扰 搭建对象
实验结果:
加入噪声干扰之后水箱输出不平稳,有波动。
实验二:相关分析法 搭建对象:
处理程序: for i=1:15 m(i,:)=UY(32-i:46-i,1);
end y=UY(31:45,2); gg=ones(15)+eye(15); g=1/(25*16*2)*gg*m*y; plot(g); hold on; stem(g); 实验结果: 相关分析法

系统辨识基础实验指导书

系统辨识基础实验指导书

实验一 离散模型的参数辨识一、实验目的1. 掌握随机序列的产生方法。

2. 掌握最小二乘估计算法的基本原理。

3. 掌握最小二乘递推算法。

二、实验内容1. 基于Box--Jinkins 模型模拟一个动态过程,动态过程取为各种不同的情况,输入信号采用M 序列,实验者可尝试不同周期的M 序列。

信噪比、观测数据长度也由实验者取为各种不同情况。

2. 模拟生成输入输出数据。

3. 根据仿真过程的噪声特性,选择一种模型参数估计算法,如RLS 、RIV 、RELS 、RGLS 、COR-LS 、STAA 、RML 或MLS 等,估计出模型的参数。

三、实验器材计算机 1台四、实验原理最小二乘法是一种经典的有效的数据处理方法。

它是1795年高斯(K.F.Guass )在预测行星和彗星运动的轨道时提出并实际使用的。

最小二乘法也是一种根据实验数据进行参数估计的主要方法。

这种方法容易被理解,而且由于存在唯一解,所以也比较容易实现。

它在统计学文献中还被称为线性回归法,在某些辨识文献中还被称为方程误差法。

正如各个学科都用到系统辨识技术建立模型一样,最小二乘法也用于很多场合进行参数估计,虽然不一定是直接运用,但很多算法是以最小二乘为基础的。

在系统辨识和参数估计领域中,最小二乘法是一种最基本的估计方法。

它可用于动态系统,也可用于静态系统;可用于线性系统,也可用于非线性系统;可用于离线估计,也可用于在线估计。

在随机的环境下利用最小二乘法时,并不要求知道观测数据的概率统计信息,而用这种方法所获得的估计结果,却有相当好的统计性质。

在系统辨识和参数估计领域中,应用最广泛的估计方法是最小二乘法和极大似然法,而其他的大多数算法都与最小二乘法有关。

最小二乘法采用的模型为11()()()()()A z y k B z u k e k --=+最小二乘估计是在残差二乘方准则函数极小意义下的最优估计,即按照准则函数ˆˆˆˆ()()min T T J ee Y Y ΦθΦθ==--= 来确定估计值ˆθ。

系统辨识与自适应控制实验

系统辨识与自适应控制实验

中南大学系统辨识及自适应控制实验指导老师贺建军姓名史伟东专业班级测控1102班0909111814号实验日期2014年11月实验一 递推二乘法参数辨识设被辨识系统的数学模型由下式描述:2341231232.0 1.51()()()1 1.50.70.11 1.50.70.1z z z y k u k k z z z z z zξ---------++=+-++-++ 式中ξ(k )为方差为0.1的白噪声。

要求:(1) 当输入信号u (k )是方差为1的白噪声序列时,利用系统的输入输出值在线辨识上述模型的参数;(2) 当输入信号u (k )是幅值为1的逆M 序列时,利用系统的输入输出值在线辨识上述模型的参数;分析比较在不同输入信号作用下,对系统模型参数辨识精度的影响。

(1)clear all; close all;a=[1 -1.5 0.7 0.1]';b=[1 2 1.5]';d=3; %对象参数na=length(a)-1;nb=length(b)-1; %计算阶次L=500; %数据长度uk=zeros(d+nb,1);yk=zeros(na,1); %输入输出初值u=randn(L,1); %输入采用方差为1的白噪声序列xi=sqrt(0.1)*randn(L,1); % 方差为0.1的白噪声干扰序列theta=[a(2:na+1);b]; %对象参数真值thetae_1=zeros(na+nb+1,1); %参数初值P=10^6*eye(na+nb+1);for k=1:Lphi=[-yk;uk(d:d+nb)]; %此处phi为列向量y(k)=phi'*theta+xi(k); %采集输出数据%递推公式K=P*phi/(1+phi'*P*phi);thetae(:,k)=thetae_1+K*(y(k)-phi'*thetae_1);P=(eye(na+nb+1)-K*phi')*P;%更新数据thetae_1=thetae(:,k);for i=d+nb:-1:2uk(i)=uk(i-1);enduk(1)=u(k);for i=na:-1:2yk(i)=yk(i-1);endyk(1)=y(k);endplot([1:L],thetae); %line([1:L],[theta,theta]); xlabel('k');ylabel('参数估计a,b');legend('a_1','a_2','a_3','b_0','b_1','b_2');axis([0 L -2 2]);(2)clear all;a=[1 -1.5 0.7 0.1]';b=[1 2 1.5]';d=2; %对象参数na=length(a)-1;nb=length(b)-1; %计算阶次L=20; %数据长度uk=zeros(d+nb,1);yk=zeros(na,1); %输入初值x1=1;x2=1;x3=1;x4=0;S=1;%移位寄存器初值,方波初值xi=rand(L,1);%白噪声序列theta=[a(2:na+1);b]; %对象参数真值for k=1:Lphi(k,:)=[-yk;uk(d:d+nb)]'; % phi(k,:)为行向量,便于组成phi矩阵y(k)=phi(k,:)*theta+xi(k); %采集输出数据IM=xor(S,x4);if IM==0u(k)=-1;elseu(k)=1;endS=not(S);M=xor(x3,x4); %产生M序列%更新数据x4=x3;x3=x2;x2=x1;x1=M;for i=nb+d:-1:2uk(i)=uk(i-1);enduk(1)=u(k);for i=na:-1:2yk(i)=yk(i-1);endyk(1)=y(k);End实验二 最小方差自校正控制实验设二阶纯滞后被控对象的数学模型参数未知或慢时变,仿真实验时用下列模型:34112122.5 1.510.5()()()1 1.50.71 1.50.7z z z y k u k k z z z zξ-------++=+-+-+ 式中ξ(k )为方差为0.1的白噪声。

系统辨识实验1实验报告

系统辨识实验1实验报告

实验报告--实验1.基于matlab的4阶系统辨识实验课程:系统辨识题目:基于matlab的4阶系统辨识实验作者:专业:自动化学号:11351014目录实验报告 (1)1.引言 (2)2.实验方法和步骤 (2)3.实验数据和结果 (2)4.实验分析 (4)1、 引言系统辨识是研究如何确定系统的数学模型及其参数的理论。

而模型化是进行系统分析、仿真、设计、预测、控制和决策的前提和基础。

本次实验利用matlab 工具对一个简单的4阶系统进行辨识,以此熟悉系统辨识的基本步骤,和matlab 里的一些系统辨识常用工具箱和函数。

这次实验所采取的基本方法是对系统输入两个特定的激励信号,分别反映系统的动态特性和稳态特性。

通过对输入和输出两个系统信号的比较,来验证系统的正确性。

2、 实验方法和步骤2.1 实验方法利用matlab 对一个系统进行辨识,选取的输入信号必须能够反映系统的动态和稳态两个方面的特性,才能更好地确定系统的参数。

本次实验采取了两种输入信号,为反映动态特性,第一个选的是正弦扫频信号,由下面公式产生:选定频率范围 ,w(t)是时间t 的线性函数,具有扫频性质,可以反映系统的动态特性。

为反映稳态特性,选的输入信号是阶跃信号。

以上的到两组数据,利用matlab 的merge()函数,对两组数据融合,然后用matlab 系统辨识工具箱中的基于子空间方法的状态空间模型辨识函数n4sid()来对系统进行辨识2.2 实验步骤(1)建立一个4阶的线性系统,作为被辨识的系统,传递函数为3243211548765()125410865s s s G s s s s s -+-+=++++(2)产生扫频信号u1和阶跃信号u2(3)u1、u2作为输入对系统进行激励,分别产生输出y1和y2 (4)画出稳态测试输入信号u1-t 的曲线,和y1-t 的曲线 画出动态测试输入信号u2-t 的曲线,和y2-t 的曲线(5)使用merge()函数对u1-y1数据和u2-y2数据进行融合,并使用n4sid()函数对系统进行辨识。

系统辨识试验

系统辨识试验

2、用普通最小二乘法(OLS)法辨识对象数学模型选择得仿真对象得数学模型如下)()2(5.0)1()2(7.0)1(5.1)(k v k u k u k z k z k z +-+-=-+--其中,)(k v 就是服从正态分布得白噪声N )1,0(。

输入信号采用4阶M 序列,幅度为1。

选择如下形式得辨识模型)()2()1()2()1()(2121k v k u b k u b k z a k z a k z +-+-=-+-+设输入信号得取值就是从k =1到k =16得M 序列,则待辨识参数LSθˆ为LS θˆ=L τL 1L τL z H )H H -(。

其中,被辨识参数LSθˆ、观测矩阵z L 、H L 得表达式为 ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=2121ˆb b a a LS θ , ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=)16()4()3(z z z L z , ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡------=)14()2()1()15()3()2()14()2()1()15()3()2(u u u u u u z z z z z z L H 程序框图如下所示:参考程序:%olsM 序列z=zeros(1,16); %for k=3:16 z(k)=1、endsubplot(3,1,1) %stem(u) %subplot(3,1,2) %画三行一列图形窗口中得第二个图形i=1:1:16; %横坐标范围就是1到16,步长为1plot(i,z) %图形得横坐标就是采样时刻i, 纵坐标就是输出观测值z, 图形格式为连续曲线subplot(3,1,3) %画三行一列图形窗口中得第三个图形stem(z),grid on%画出输出观测值z得经线图形,并显示坐标网格u,z%显示输入信号与输出观测信号%L=14%数据长度HL=[-z(2) -z(1) u(2) u(1);-z(3) -z(2) u(3) u(2);-z(4) -z(3) u(4) u(3);-z(5) -z(4) u(5) u(4);-z(6) -z(5) u(6) u(5);-z(7) -z(6) u(7) u(6);-z(8) -z(7) u(8) u(7);-z(9) -z(8) u(9) u(8);-z(10) -z(9) u(10) u(9);-z(11) -z(10) u(11) u(10);-z(12) -z(11) u(12) u(11);-z(13) -z(12) u(13) u(12);-z(14) -z(13) u(14) u(13);-z(15) -z(14) u(15) u(14)] %给样本矩阵HL赋值ZL=[z(3);z(4);z(5);z(6);z(7);z(8);z(9);z(10);z(11);z(12);z(13);z(14);z(15);z(16)]% 给样本矩阵zL赋值%calculating parameters%计算参数c1=HL'*HL; c2=inv(c1); c3=HL'*ZL; c=c2*c3 %计算并显示%DISPLAY PARAMETERSa1=c(1), a2=c(2), b1=c(3), b2=c(4) %从中分离出并显示a1 、a2、 b1、 b2%End注:由于输出观测值没有任何噪音成分,所以辨识结果也无任何误差,同学们可以在输出观测值中添加噪音,观察ols得辨识效果。

系统辨识实验

系统辨识实验

实验一:系统辨识的经典方法实验目的:掌握系统的数学模型与系统的输入、输出信号之间的关系,掌握经典辨识的实验测试方法和数据处理方法。

熟悉MATLAB/Simulink环境。

实验内容:1.用阶跃响应发测试给定系统的数学模型在系统没有噪声干扰的条件下通过测试系统的阶跃响应获得系统的一阶加纯滞后或者二阶加纯滞后模型,对模型进行验证。

2.在被辨识系统中加入噪声干扰,重复上述1的实验过程。

实验方法:在MATLAB环境下用simulink构造测试环境,被测试的模型为水槽液位控制对象。

利用非线性水槽模型(tank)可以搭建单水槽系统的模型,也可以搭建多水槽系统的模型,多水槽模型可以是高低放置,也可以并排放置。

图1.1 二阶水槽测试流程图(1)一阶环节传函利用两点法,找到 , 的点,对应得到 , ; 运用公式得到所以确定(2)二阶环节传函确定找到 , 的点,对应得到 , ;运用公式求的所以确定思考题1()=0.39y t 2()=0.63y t 122=2 1.1-2.3=-0.1t t τ=-⨯212()T t t =-1=1.1t 2=2.3t 122t t τ=-212()=2(2.3 1.1) 2.4T t t =-⨯-=()y y 27.1K ==2.71u u 10∞∆==∆∆1()=0.4y t=9.1t20.909T =1 2.121T =()y y 26.6K ==2.66u u 10∞∆==∆∆实验二相关分析法实验目的:掌握相关分析法测试系统数学模型的过程和方法。

掌握应用移位计数器设计M序列信号发生器的方法。

实验内容:1.设计并实现PRBS伪随机序列信号(M序列)发生器;2.应用相关分析法测试给定系统的数学模型。

使用伪随机序列信号测试系统在有噪声情况下的输出,用相关分析法辨识系统的数学模型。

3.模型验证。

实验方法:测试对象可以与实验一相同。

应用MATLAB/Simulink设计PRBS伪随机信号(M序列)发生器,可以用JK触发器构造的移位计数器实现,也可以用程序实现。

系统辨识实验二

系统辨识实验二

《系统辨识》实验二要点实验二 递推最小二乘估计(RLS)及模型阶次辨识(F-Test )一、实验目的① 通过实验,掌握递推最小二乘参数辨识方法 ② 通过实验,掌握F-Test 模型阶次辨识方法二、实验内容1、仿真模型实验所用的仿真模型如下: 框图表示模型表示)()2(5.0)1()2(7.0)1(5.1)(k v k u k u k z k z k z λ+-+-=-+-- 其中u (k )和z (k )分别为模型的输入和输出变量;v (k )为零均值、方差为1、服从正态分布的白噪声;λ为噪声的标准差(实验时,可取0.0、0.1、0.5、1.0);输入变量u (k )采用M 序列,其特征多项式取1)(4⊕⊕=s s s F ,幅度取1.0。

2、辨识模型辨识模型的形式取)()()()()(11k e k u z B k z z A +=--为方便起见,取n n n b a ==,即nn nn zb z b z b z B z a z a z a z A ------+++=++++= 22112211)(1)(根据仿真模型生成的数据{}L k k u ,,1),( =和{}L k k z ,,1),( =,辨识模型的参数n n b b b a a a ,,,,,,2121 和;并确定模型阶次n ,同时估计出模型误差)(k e 的方差(应近似等于模型噪声)(k v 的方差,即为2λ)和模型的静态增益K 。

3、辨识算法① 采用递推遗忘因子法:[][][]⎪⎪⎩⎪⎪⎨⎧--=+--=--+-=-)1()()(1)()()1()()()1()()1()()()()1()(1k k k μk μk k k k k k k k k z k k k P h K I P h P h h P K h K τττθθθ 其中,遗忘因子10≤<μ(具体值根据情况自已确定);数据长度L 可取100、300、500;初始值⎩⎨⎧==IP 2)0()0(a εθ。

系统辨识实验报告30288

系统辨识实验报告30288

一、相关分析法(1)实验原理图1 实验原理图本实验的原理图如图1。

过程传递函数()G s 中12120,8.3, 6.2K T Sec T Sec ===;输入变量()u k ,输出变量()z k ,噪声服从2(0,)v N σ,0()g k 为过程的脉冲响应理论值,ˆ()gk 为过程脉冲响应估计值,()g k 为过程脉冲响应估计误差。

过程输入()u k 采用M 序列,其输出数据加白噪声()v k 得到输出数据()z k 。

利用相关分析法估计出过程的脉冲响应值ˆ()gk ,并与过程脉冲响应理论值0()g k 比较,得到过程脉冲响应估计误差值()g k 。

M 序列阶次选择说明:首先粗略估计系统的过渡过程时间T S (通过简单阶跃响应)、截止频率f M (给系统施加不同周期的正弦信号或方波信号,观察输出)。

本次为验证试验,已知系统模型,经计算Hz T T f M 14.0121≈=,s T S 30≈。

根据式Mf t 3.0≤∆及式S T t N ≥∆-)1(,则t ∆取值为1,此时31≥N ,由于t ∆与N 选择时要求完全覆盖,则选择六阶M 移位寄存器,即N =63。

(2)编程说明图2 程序流程图(3)分步说明 ① 生成M 序列:M 序列的循环周期63126=-=N ,时钟节拍1t Sec ∆=,幅度1a =,移位寄存器中第5、6位的内容按“模二相加”,反馈到第一位作为输入。

其中初始数据设为{1,0,1,0,0,0}。

程序如下:② 生成白噪声序列: 程序如下:③ 过程仿真得到输出数据:如图2所示的过程传递函数串联,可以写成形如121211()1/1/K Gs TT s T s T =++,其中112KK TT =。

图2 过程仿真方框图程序如下:④ 计算脉冲响应估计值:互相关函数采用公式)()(1)(10k i y i x Nr k R N r i xy +⋅⋅=∑-⋅=,互相关函数所用的数据是从第二个周期开始的,其中r 为周期数,取1-3之间。

系统辨识与自适应控制实验报告

系统辨识与自适应控制实验报告

系统辨识与自适应控制实验报告一、实验目的1.了解最小二乘算法的实现;2.使用最小二乘法一次完成算法、递推最小二乘法以及广义最小二乘法对系统进行辨识。

二、实验容设单输入-单输出系统的差分方程为y(k)=-取真实值=[ 1.642 0.715 0.39 0.35] ,输入数据如下表所列。

k u(k) k u(k) k u(k)1 1.147 11 -0.958 21 0.4852 0.201 12 0.810 22 1.6333 -0.787 13 -0.044 23 0.0434 -1.589 14 0.947 24 1.3265 -1.052 15 -1.474 25 1.7066 0.866 16 -0.719 26 -0.3407 1.152 17 -0.086 27 0.8908 1.157 18 -1.099 28 1.1449 0.626 19 1.450 29 1.177 10 0.43320 1.15130 -0.390用的真实值利用查分方程求出作为测量值,为均值为0,方差为0.1,0.5的不相关随机序列。

(1) 用最小二乘法估计参数(2) 用递推最小二乘法估计参数θ。

(3) 用辅助变量法估计参数θ。

(4) 设,用广义最小二乘法估计参数θ。

(5) 用增广矩阵法估计参数θ详细分析和比较所获得的参数辨识结果,并说明上述参数辨识方法的优点。

三、 实验设备Matlab 软件,PC 机一台。

四、实验原理4.1 最小二乘一次完成算法 4.1.1 公式 辨识参数L T LL TL LS y XX X 1)(-Λ=θ上式中4.1.2 程序流程图图 1最小二乘一次完成程序流程图4.2 递推最小二乘算法4.2.1 递推公式公式为其中,4.2.2 算法流程图图 2 递推最小二乘法实现程序框图4.3 增广最小二乘递推算法4.3.1 递推公式公式为:其中,4.3.2 算法流程图图 3 增广最小二乘法算法流程图五、实验结果5.1 最小二乘法一次完成实验结果XL =0 0 0 00 0 0 00 0 0.2010 1.1470-0.4798 0 -0.7870 0.20101.0245 -0.4798 -1.5890 -0.7870-0.4439 1.0245 -1.0520 -1.5890 0.9629 -0.4439 0.8660 -1.0520 -1.2332 0.9629 1.1520 0.8660 0.5840 -1.2332 1.5730 1.1520 -1.0939 0.5840 0.6260 1.5730 0.5840 -1.0939 0.4330 0.6260 -0.5647 0.5840 -0.9580 0.4330 0.7317 -0.5647 0.8100 -0.9580 -0.7784 0.7317 -0.0440 0.8100 0.4885 -0.7784 0.9470 -0.0440 -0.5996 0.4885 -1.4740 0.9470 0.8786 -0.5996 -0.7190 -1.4740 -0.2177 0.8786 -0.0860 -0.7190 0.0144 -0.2177 -1.0990 -0.0860 0.5907 0.0144 1.4500 -1.0990 -1.1611 0.5907 1.1510 1.4500 0.5277 -1.1611 0.4850 1.1510 -0.6284 0.5277 1.6330 0.4850 -0.1521 -0.6284 0.0430 1.6330 0.1108 -0.1521 1.3260 0.0430 -0.6053 0.1108 1.7060 1.3260 -0.2147 -0.6053 -0.3400 1.70600.3208 -0.2147 0.8900 -0.3400 -0.6014 0.3208 1.1440 0.8900 0.0005 -0.6014 1.1770 1.1440 yL =0.4798-1.02450.4439-0.96291.2332-0.58401.0939-0.58400.5647-0.73170.7784-0.48850.5996-0.87860.2177-0.0144-0.59071.1611-0.52770.62840.1521-0.11080.60530.2147-0.32080.6014-0.00050.4302辨识参数矩阵c =1.64200.71500.39000.3500a1 =1.6420;a2 =0.7150;b1 =0.3900;b2 =0.3500 下图为输入、输出矩阵的根径图图 4最小二乘法一次实现输入输出根径图5.2 递推最小二乘法算法辨识结果系统输出矩阵:y =Columns 1 through 130 0 0.4798 -1.0245 0.4439 -0.9629 1.2332 -0.5840 1.0939 -0.5840 0.5647 -0.7317 0.7784Columns 14 through 26-0.4885 0.5996 -0.8786 0.2177 -0.0144 -0.5907 1.1611 -0.5277 0.6284 0.1521 -0.1108 0.6053 0.2147Columns 27 through 30-0.3208 0.6014 -0.0005 0.4302辨识参数矩阵(辨识过程执行26次即满足了误差要求):c =Columns 1 through 130.0010 0 0.0010 0.5690 1.3863 1.64201.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.0010 0.0010 -0.2821 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.0010 0 0.0719 1.0162 0.5392 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.0010 0 0.4057 0.2403 0.3239 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500Columns 14 through 261.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500辨识误差矩阵:e =Columns 1 through 130 0 0 567.9876 1.4365 0.1844 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.00000 0 0 0 -283.1457 -3.5341 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.00000 0 70.9263 13.1283 -0.4694 -0.2767 0.0000 0.0000 -0.0000 -0.0000 0.0000 -0.0000 -0.00000 0 404.7388 -0.4078 0.3479 0.0807 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000Columns 14 through 260.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 -0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000输入输出根径图图 5 递推最小二乘法输入输出根径图辨识参数过程图 6 递推最小二乘法辨识参数(辨识过程)辨识误差:图 7 递推最小二乘法辨识过程中的误差曲线5.3 增光最小二乘法实验结果随机噪声e0 =Columns 1 through 130.8017 0.3112 0.0400 1.5927 2.1796 -0.2063 0.4197 -0.4914 0.9967 -2.0484 1.3063 0.5351 0.5779Columns 14 through 261.5297 0.0416 0.1831 -0.9543 -1.3474 -0.3873 0.5971 -0.2250 -1.0173 1.3889 -0.3959 0.3049 0.3154Columns 27 through 300.0668 0.7128 0.0522 -1.3478考虑噪声的系统输出矩阵y =Columns 1 through 130 0 1.3292 -2.8976 3.0444 -3.4535 4.0637 -1.2169 1.8419 -1.5061 0.3942 -3.0734 2.3278Columns 14 through 26-0.7705 1.1973 -0.1962 0.3711 -0.4941 -1.4314 1.2987 -1.5689 0.0303 1.8310 0.3403 -0.3472 0.5176Columns 27 through 30-1.1419 -0.4368 0.0696 1.6791不考虑噪声的系统输出矩阵ys =Columns 1 through 130 0 0.4798 -2.4191 2.9124 -3.8936 3.4635 -3.4509 0.1092 -1.3596 1.5440 0.2076 4.7453Columns 14 through 26-1.3584 -0.0452 -1.6585 -1.3303 -0.7543 0.0873 2.8846 -0.1526 2.2396 1.8786 -2.4398 -1.3358 1.4562Columns 27 through 30-0.1371 1.7331 2.2914 1.0575不考虑噪声时的模型输出ym =Columns 1 through 130 0 0.8502 -2.7124 3.2115 -4.4770 4.5771 -3.4086 0.1092 -1.3596 1.5440 0.2076 4.7453Columns 14 through 26-1.3584 -0.0452 -1.6585 -1.3303 -0.7543 0.0873 2.8846 -0.1526 2.2396 1.8786 -2.4398 -1.3358 1.4562Columns 27 through 30-0.1371 1.7331 2.2914 1.0575考虑噪声时的模型输出ymd =Columns 1 through 130 0 1.3292 -2.8976 3.0444 -3.4535 4.0637 -1.2169 1.8419 -1.5061 0.3942 -3.0734 2.3278Columns 14 through 26-0.7705 1.1973 -0.1962 0.3711 -0.4941 -1.4314 1.2987 -1.5689 0.0303 1.8310 0.3403 -0.3472 0.5176Columns 27 through 30-1.1419 -0.4368 0.0696 1.6791辨识参数矩阵:c =Columns 1 through 130.0010 0 0.0010 1.5171 1.6829 1.84351.8250 1.6529 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.0010 0.0010 -0.1409 0.7419 0.6281 0.7388 0.7150 0.7150 0.7150 0.7150 0.71500.0010 0 0.1268 1.0576 0.8180 0.3002 0.4168 0.3921 0.3900 0.3900 0.3900 0.3900 0.39000.0010 0 0.7190 0.6789 0.7019 0.4396 0.1656 0.3522 0.3500 0.3500 0.3500 0.3500 0.35000.0010 0 -0.1988 0.0261 0.0572 -0.0988 -0.0852 1.0030 1.0000 1.0000 1.0000 1.0000 1.00000.0010 0 0.2540 0.6848 0.6545 1.34961.4284 1.6100 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.4430 0.0984 0.1605 0.2657 0.6386 0.7305 0.7150 0.7150 0.7150 0.7150 0.7150Columns 14 through 261.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.3500 0.3500 0.35000.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.35001.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.00001.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150Columns 27 through 301.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.35001.0000 1.0000 1.0000 1.00001.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150辨识参数误差矩阵e =1.0e+003 *Columns 1 through 130 0 0 1.5161 0.0001 0.0001 -0.0000 -0.0001 -0.0000 -0.0000 -0.0000 -0.0000 -0.00000 0 0 0 -0.1419 -0.0063 -0.0002 0.0002 -0.0000 0.0000 0.0000 -0.0000 -0.00000 0 0.1258 0.0073 -0.0002 -0.0006 0.0004 -0.0001 -0.0000 -0.0000 -0.0000 -0.0000 -0.00000 0 0.7180 -0.0001 0.0000 -0.0004 -0.0006 0.0011 -0.0000 0.0000 -0.0000 -0.0000 0.00000 0 -0.1998 -0.0011 0.0012 -0.0027 -0.0001 -0.0128 -0.0000 0.0000 0.0000 0.0000 -0.00000 0 0.2530 0.0017 -0.0000 0.0011 0.0001 0.0001 0.0000 -0.0000 0.0000 0.0000 0.00000 0 0.4420 -0.0008 0.0006 0.0007 0.0014 0.0001 -0.0000 0.0000 0.0000 -0.0000 0.0000Columns 14 through 260.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000-0.0000 -0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 0.0000 -0.0000 -0.0000 -0.0000-0.0000 -0.0000 -0.0000 0.0000 -0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 -0.0000 -0.0000 0.0000 0.0000-0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 -0.0000Columns 27 through 300.0000 -0.0000 -0.0000 0.00000.0000 -0.0000 -0.0000 0.00000.0000 -0.0000 -0.0000 -0.0000-0.0000 0.0000 -0.0000 -0.00000.0000 0.0000 0.0000 -0.00000.0000 0.0000 0.0000 0.00000.0000 -0.0000 0.0000 0.0000输入输出根径图:图 8 增广最小二乘法输入输出根径图辨识过程的参数:图 9 增广最小二乘法辨识过程参数辨识过程中的误差图 10 增广最小二乘法辨识过程中的误差系统输出矩阵和模型输出矩阵的对比:图 11 系统输出矩阵和模型输出矩阵的对比图六、结果分析利用最小二乘法对系统进行辨识,能够在最小误差平方的意义上对实验数据实现最好的拟合。

系统辨识实验报告1

系统辨识实验报告1
三.数据递推关系图:
14
四.实验运行结果:
函数界面示意图: 6. 只显示结果界面: 7. 显示过程的参考界面:
15
心得体会
我很喜欢这个课程的期末考核方式,不用再拘泥于在题目当中对该课程的了 解,而是通过 4 个 C 语言设计的练习来达到学习的目的,而且对以后的学习还有 很大的帮助。
在编写 C 语言的过程中,也遇到了一些阻碍,特别是在编写第 3,4 个的时候。 比如:用的数组太多,并且未将其初始化,运行出来的结果经常是很长的一段随 机数;或者一模一样的程序有时候就可以正常运行,有时候就总是出现报错…… 这些都是让我心塞了两周的问题。在这些问题解决之后,运行出来的结果却与实 际模型参数的出入有点大,于是又重新查找第 2 个实验是否是 M 序列产生的方式 有问题。通过对初始化寄存器赋给不同的值,可以让结果与真实模型参数之间的 误差达到最小。
实验 4 ................................................ 错误!未定义书签。 一.实验内容及要求: ............................... 错误!未定义书签。 二.实验原理: ..................................... 错误!未定义书签。 三.数据递推关系图: ............................... 错误!未定义书签。
编写并调试动态离散时间模型 LS 成批算法程序。 要求:(1)原始数据由 DU 和 DY 读出。 (2)调用求逆及相乘子程序。 (3)显示参数辨识结果。
二.实验原理:
1.批次处理的方法就是把所有的数据采集到一次性进行处理,但前提是 白色噪声、及 M 序列所共同作用而产生的输出,才能使用最小二乘法。虽然 这种方法的计算量庞大,但经常用于处理时不变系统,方法简单。

系统辨识实验报告

系统辨识实验报告

系统辨识实验报告SA08157051 杜鹏超一 选择的系统模型类选择系统模型如下:se TsK τ-=G(S)然后多系统模型离散化,即;⎩⎨⎧⎭⎬⎫=--s s e TsK s e z ττG(z)二 辨识的原理,方法和公式 y(i)=-a*y(i-1)+b*u(i-1)⎪⎪⎩⎪⎪⎨⎧-+--=+-=+-=)1()1()()2()2()3()1()1()2(n bu n ay n y bu ay y bu ay y 令 T θ=[-a b] x(k)=[y(k-1) u(k-1)]或⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡--=)1()1()2()2()1()1(X n u n y u y u y⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=)()3()2(y(N) n y y y 即y=x θ+e1.批量最小二乘估计算法最小二乘估计准则:模型拟合残差为θϕε)()()(k k y k T-=则有目标函数J 为:∑==ki i k J 12)()(ε把数据代入拟合残差得:θϕε)()()(n n y n T-=下面从最小二乘准则推导正规方程。

根据术极值原理可知,最小二乘估计θ满足⎪⎪⎩⎪⎪⎨⎧∂∂∂∂=∂∂-为正定T J J LS )(0θθθθθJ 还可写成)()()(k k k J T εε=θφφθθφθφεε T T T T Ty y y y k k k J 2)()()()(-=--==)(上式中为简单起见,略去了有关各项的(n)。

⎪⎪⎩⎪⎪⎨⎧=∂∂∂∂=+-=∂∂-为正定φφθθθφφφθθθTT LS TT J y J LS 2)(022于是得:y TT ls φφφθ1)(-=的最小二乘估计为)()())()(()(1k y k x k x k x k T T -=θ2.递推最小二乘估计算法原式为)()1()1(1k e k xk y T ++=++θ得新解)1()1())1()1(()1(1++++=+-k y k x k x k x k TTθ其中:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+=+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+=+)1()()1()1()()1(k y k y k y k x k x k x T T 令:2)]1()1([)1(++=+k x k x k p T可求得)1()()1(1)1()()1(++++=+k X k p k X k x k p k k T T)]()1()1()[1()()1(k k x k y k K k k Tθθθ +-+++=+)]()1(1[)1(k x k K k p T θ++=+3 渐消记忆递推最小二乘估计算法修改目标两数J ,对残差平方加指数权λ∑=-=ki ik i k J 12)()(ελ其巾λ=0.9—0.999愈大遗忘愈慢。

《系统辨识实验》实验指导书

《系统辨识实验》实验指导书

《系统辨识实验》实验指导书赵英凯南京工业大学自动化学院2006-04-17目录实验一基于OLS法的系统辨识数字仿真实验 (2)实验二基于RLS法的系统辨识数字仿真实验 (7)实验一基于OLS法的系统辨识数字仿真实验一、实验目的1、深入理解系统辨识中相关分析法及最小二乘法的相关内容。

2、学会用Matlab或C语言等进行系统辨识的仿真研究二、实验设备装有相应软件的计算机。

三、实验原理(请见教材,次处从略)四、实验内容1.伪随机二位式信号(PRBS)的生成。

2.用普通最小二乘法(OLS)法辨识对象数学模型。

五、实验要求1.熟悉系统辨识中的相关内容。

2.掌握Matlab或C语言等进行系统辨识仿真研究的一般步骤。

3.实验前基本应完成相关的编程任务,实验时调试相应程序。

4.修改相应参数与随机噪声幅度,观察并分析结果。

5.软件包人机界面的开发与设计。

(选做)六、.实验步骤实验步骤:1、运行matlab1)File->New->M-File打开M文件编辑窗口2)输入自己编写的程序3)点击run按钮,如果程序出错则调试程序,如果运行正常的话则观察程序的运行结果具体的实验步骤:1.伪随机二位式信号(PRBS )的生成:X1=1;X2=0;X3=1;X4=0; %移位寄存器输入Xi 初态(0101), Yi 为移位寄存器各级输出 m=60; %置M 序列总长度 for i=1:mY4=X4; Y3=X3; Y2=X2; Y1=X1; X4=Y3; X3=Y2; X2=Y1; X1=xor(Y3,Y4); %异或运算 if Y4==0 U(i)=-1; else U(i)=Y4; end end M=U %绘图 i1=i k=1:1:i1;plot(k,U,k,U,'rx') xlabel('k') ylabel('M 序列')title('移位寄存器产生的M 序列')注:这是一个采用四级移位寄存器产生prbs 信号的程序,同学们可以将这个程序编写的更具通用性,使得移位寄存器的级数可以选择。

完整word版,《系统辨识》实验手册

完整word版,《系统辨识》实验手册

《系统辨识》实验手册哈尔滨工业大学控制与仿真中心2012年8月目录实验1 白噪声和M序列的产生---------------------------------------------------------- 2 实验2 脉冲响应法的实现---------------------------------------------------------------- 5 实验3 最小二乘法的实现--------------------------------------------------------------- 9 实验4 递推最小二乘法的实现---------------------------------------------------------- 12 附录实验报告模板---------------------------------------------------------------------- 16实验1 白噪声和M 序列的产生一、实验目的1、熟悉并掌握产生均匀分布随机序列方法以及进而产生高斯白噪声方法2、熟悉并掌握M 序列生成原理及仿真生成方法二、实验原理1、混合同余法混合同余法是加同余法和乘同余法的混合形式,其迭代式如下:111(*)mod /n n n n x a x b MR x M +++=+⎧⎨=⎩ 式中a 为乘子,0x 为种子,b 为常数,M 为模。

混合同余法是一种递归算法,即先提供一个种子0x ,逐次递归即得到一个不超过模M 的整数数列。

2、正态分布随机数产生方法由独立同分布中心极限定理有:设随机变量12,,....,,...n X X X 相互独立,服从同一分布,且具有数学期望和方差:2(),()0,(1,2,...)k k E X D X k μσ==>=则随机变量之和1nk i X =∑的标准化变量:()nnnkk kXE X Xn Y μ--==∑∑∑近似服从(0,1)N 分布。

【最新推荐】系统辨识实验指导书-精选word文档 (14页)

【最新推荐】系统辨识实验指导书-精选word文档 (14页)

本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==系统辨识实验指导书篇一:系统辨识实验指导书444444444444444444444444444444444444444444444444444444444444444444444 444444444444444444444444444444444444444444444444444444444444444444444 4444444444444444444444444444444444444《系统辨识实验》实验指导书赵英凯南京工业大学自动化学院实验一实验二201X-04-17目录基于OLS法的系统辨识数字仿真实验......................... 2 基于RLS法的系统辨识数字仿真实验.. (7)实验一基于OLS法的系统辨识数字仿真实验一、实验目的1、深入理解系统辨识中相关分析法及最小二乘法的相关内容。

2、学会用Matlab或C语言等进行系统辨识的仿真研究二、实验设备装有相应软件的计算机。

三、实验原理(请见教材,次处从略) 四、实验内容1.伪随机二位式信号(PRBS)的生成。

2.用普通最小二乘法(OLS)法辨识对象数学模型。

五、实验要求1. 熟悉系统辨识中的相关内容。

2. 掌握Matlab或C语言等进行系统辨识仿真研究的一般步骤。

3. 实验前基本应完成相关的编程任务,实验时调试相应程序。

4. 修改相应参数与随机噪声幅度,观察并分析结果。

5. 软件包人机界面的开发与设计。

(选做)六、.实验步骤实验步骤: 1、运行matlab1) File->New->M-File打开M文件编辑窗口 2) 输入自己编写的程序3) 点击run按钮,如果程序出错则调试程序,如果运行正常的话则观察程序的运行结果具体的实验步骤:1.伪随机二位式信号(PRBS)的生成:X1=1;X2=0;X3=1;X4=0; %移位寄存器输入Xi初态(0101), Yi为移位寄存器各级输出 m=60; %置M序列总长度 for i=1:mY4=X4; Y3=X3; Y2=X2;Y1=X1; X4=Y3; X3=Y2;X2=Y1;X1=xor(Y3,Y4); %异或运算 if Y4==0 U(i)=-1; else U(i)=Y4; end end M=U %绘图 i1=i k=1:1:i1;plot(k,U,k,U,'rx') xlabel('k') ylabel('M序列')title('移位寄存器产生的M序列')注:这是一个采用四级移位寄存器产生prbs信号的程序,同学们可以将这个程序编写的更具通用性,使得移位寄存器的级数可以选择。

系统辨识实验报告

系统辨识实验报告

系统辨识实验报告学院:信息科学与技术学院专业:自动化日期:2016/4/26目录实验1 .................................................... 错误!未定义书签。

一.实验内容及要求: ................................... 错误!未定义书签。

二.实验原理:......................................... 错误!未定义书签。

三.软件设计思想: ..................................... 错误!未定义书签。

四.程序结构框图: ..................................... 错误!未定义书签。

五.运行示意图: ....................................... 错误!未定义书签。

实验2 .................................................... 错误!未定义书签。

一.实验内容及要求: ................................... 错误!未定义书签。

二.实验原理:......................................... 错误!未定义书签。

三.软件设计思想: ..................................... 错误!未定义书签。

四.程序设计框图: ..................................... 错误!未定义书签。

五.程序运行流程图: ................................... 错误!未定义书签。

实验3 .................................................... 错误!未定义书签。

一.实验内容及要求: ................................... 错误!未定义书签。

系统辩识实验报告

系统辩识实验报告

一、实验目的1. 理解系统辨识的基本概念和原理。

2. 掌握递推最小二乘算法在系统辨识中的应用。

3. 通过实验,验证算法的有效性,并分析参数估计误差。

二、实验原理系统辨识是利用系统输入输出数据,对系统模型进行估计和识别的过程。

在本实验中,我们采用递推最小二乘算法对系统进行辨识。

递推最小二乘算法是一种参数估计方法,其基本思想是利用当前观测值对系统参数进行修正,使参数估计值与实际值之间的误差最小。

递推最小二乘算法具有计算简单、收敛速度快等优点。

三、实验设备1. 电脑一台,装有MATLAB软件。

2. 系统辨识实验模块。

四、实验步骤1. 打开MATLAB软件,运行系统辨识实验模块。

2. 在模块中输入已知的系数a1、a2、b1、b2。

3. 生成输入序列u(t)和噪声序列v(t)。

4. 将输入序列u(t)和噪声序列v(t)加入系统,产生输出序列y(t)。

5. 利用递推最小二乘算法对系统参数进行辨识。

6. 将得到的参数估计值代入公式计算参数估计误差。

7. 仿真出参数估计误差随时间的变化曲线。

五、实验结果与分析1. 实验结果根据实验步骤,我们得到了参数估计值和参数估计误差随时间的变化曲线。

2. 结果分析(1)参数估计值:通过递推最小二乘算法,我们得到了系统参数的估计值。

这些估计值与实际参数存在一定的误差,这是由于噪声和系统模型的不确定性所导致的。

(2)参数估计误差:从参数估计误差随时间的变化曲线可以看出,递推最小二乘算法在短时间内就能使参数估计误差达到较低水平。

这说明递推最小二乘算法具有较好的收敛性能。

(3)参数估计误差曲线:在实验过程中,我们发现参数估计误差曲线在初期变化较快,随后逐渐趋于平稳。

这表明系统辨识过程在初期具有较高的灵敏度,但随着时间的推移,参数估计误差逐渐减小,系统辨识过程逐渐稳定。

六、实验结论1. 递推最小二乘算法在系统辨识中具有较好的收敛性能,能够快速、准确地估计系统参数。

2. 实验结果表明,递推最小二乘算法能够有效减小参数估计误差,提高系统辨识精度。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4444444444444444444444444444444 4444444444444444444444444444444 4444444444444444444444444444444 4444444444444444444444444444444 4444444444444444444444444444444 44444444444444444444《系统辨识实验》实验指导书赵英凯南京工业大学自动化学院2006-04-17目录实验一基于OLS法的系统辨识数字仿真实验 (2)实验二基于RLS法的系统辨识数字仿真实验 (7)实验一基于OLS法的系统辨识数字仿真实验一、实验目的1、深入理解系统辨识中相关分析法及最小二乘法的相关内容。

2、学会用Matlab或C语言等进行系统辨识的仿真研究二、实验设备装有相应软件的计算机。

三、实验原理(请见教材,次处从略)四、实验内容1.伪随机二位式信号(PRBS)的生成。

2.用普通最小二乘法(OLS)法辨识对象数学模型。

五、实验要求1.熟悉系统辨识中的相关内容。

2.掌握Matlab或C语言等进行系统辨识仿真研究的一般步骤。

3.实验前基本应完成相关的编程任务,实验时调试相应程序。

4.修改相应参数与随机噪声幅度,观察并分析结果。

5.软件包人机界面的开发与设计。

(选做)六、.实验步骤实验步骤:1、运行matlab1)File->New->M-File打开M文件编辑窗口2)输入自己编写的程序3)点击run按钮,如果程序出错则调试程序,如果运行正常的话则观察程序的运行结果具体的实验步骤:1.伪随机二位式信号(PRBS )的生成:X1=1;X2=0;X3=1;X4=0; %移位寄存器输入Xi 初态(0101), Yi 为移位寄存器各级输出 m=60; %置M 序列总长度 for i=1:mY4=X4; Y3=X3; Y2=X2; Y1=X1; X4=Y3; X3=Y2; X2=Y1; X1=xor(Y3,Y4); %异或运算 if Y4==0 U(i)=-1; else U(i)=Y4; end end M=U %绘图 i1=i k=1:1:i1;plot(k,U,k,U,'rx') xlabel('k') ylabel('M 序列')title('移位寄存器产生的M 序列')注:这是一个采用四级移位寄存器产生prbs 信号的程序,同学们可以将这个程序编写的更具通用性,使得移位寄存器的级数可以选择。

2.用普通最小二乘法(OLS )法辨识对象数学模型 选择的仿真对象的数学模型如下)()2(5.0)1()2(7.0)1(5.1)(k v k u k u k z k z k z +-+-=-+--其中,)(k v 是服从正态分布的白噪声N )1,0(。

输入信号采用4阶M 序列,幅度为1。

选择如下形式的辨识模型)()2()1()2()1()(2121k v k u b k u b k z a k z a k z +-+-=-+-+设输入信号的取值是从k =1到k =16的M 序列,则待辨识参数LSθˆ为LS θˆ=L τL 1L τL z H )H H -(。

其中,被辨识参数LSθˆ、观测矩阵z L 、H L 的表达式为 ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=2121ˆb b a a LSθ , ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=)16()4()3(z z z L z , ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡------=)14()2()1()15()3()2()14()2()1()15()3()2(u u u u u u z z z z z z L H 程序框图如下所示:参考程序: %olsu=[-1,1,-1,1,1,1,1,-1,-1,-1,1,-1,-1,1,1]; %系统辨识的输入信号为一个周期的M 序列z=zeros(1,16); %定义输出观测值的长度 for k=3:16z(k)=1.5*z(k-1)-0.7*z(k-2)+u(k-1)+0.5*u(k-2); %用理想输出值作为观测值 endsubplot(3,1,1) %画三行一列图形窗口中的第一个图形 stem(u) %画出输入信号u 的经线图形subplot(3,1,2) %画三行一列图形窗口中的第二个图形i=1:1:16; %横坐标范围是1到16,步长为1plot(i,z) %图形的横坐标是采样时刻i, 纵坐标是输出观测值z, 图形格式为连续曲线subplot(3,1,3) %画三行一列图形窗口中的第三个图形stem(z),grid on%画出输出观测值z的经线图形,并显示坐标网格u,z%显示输入信号和输出观测信号%L=14%数据长度HL=[-z(2) -z(1) u(2) u(1);-z(3) -z(2) u(3) u(2);-z(4) -z(3) u(4) u(3);-z(5) -z(4) u(5) u(4);-z(6) -z(5) u(6) u(5);-z(7) -z(6) u(7) u(6);-z(8) -z(7) u(8) u(7);-z(9) -z(8) u(9) u(8);-z(10) -z(9) u(10) u(9);-z(11) -z(10) u(11) u(10);-z(12) -z(11) u(12) u(11);-z(13) -z(12) u(13) u(12);-z(14) -z(13) u(14) u(13);-z(15) -z(14) u(15) u(14)] %给样本矩阵HL赋值ZL=[z(3);z(4);z(5);z(6);z(7);z(8);z(9);z(10);z(11);z(12);z(13);z(14);z(15);z(16)]% 给样本矩阵zL赋值%calculating parameters%计算参数c1=HL'*HL; c2=inv(c1); c3=HL'*ZL; c=c2*c3 %计算并显示%DISPLAY PARAMETERSa1=c(1), a2=c(2), b1=c(3), b2=c(4) %从中分离出并显示a1 、a2、 b1、 b2%End注:由于输出观测值没有任何噪音成分,所以辨识结果也无任何误差,同学们可以在输出观测值中添加噪音,观察ols的辨识效果。

同时,可以尝试增加输入信号的数量,看辨识结果有何变化。

七、实验报告要求1、整理分析实验结果与程序,并打印之。

2、小结调试程序的方法,并提出改进意见。

3、上交相关软盘或将程序与电子文档通过EMAIL发给老师。

八.实验思考题:1、用C语言编程实现递推最小二乘法和对象阶的辨识的编程。

2、用F检验法来进行对象阶的辨识。

3、修改相应参数与随机噪声幅度,观察并分析结果4、编制系统辨识的软件包,制作良好的用户界面。

(选作)5、自己可选取一个具体的对象(如某化工厂的加热炉)进行建模。

实验二 基于RLS 法的系统辨识数字仿真实验一、实验目的1、深入理解系统辨识中相关分析法及最小二乘法的相关内容。

2、学会用Matlab 或C 语言等进行系统辨识的仿真研究二、实验设备 装有相应软件的计算机。

三、实验原理1. 考虑如下图所示的仿真对象:图中, )(k v 是服从N )1,0(分布的不相关随机噪声。

且)(1-z G )()(11--=z A z B ,)(1-z N )()(11--=z C z D , (1)⎪⎪⎩⎪⎪⎨⎧=+==+-=--------1)(5.00.1)()(7.05.11)(121112111z D z z z B z C z z a z A 选择上图所示的辨识模型。

仿真对象选择如下的模型结构:)()2()1()2()1()(2121k v k u b k u b k z a k z a k z +-+-=-+-+ (2)其中,)(k v 是服从正态分布的白噪声N )1,0(。

输入信号采用4位移位寄存器产生的M 序列,幅度为0.03。

按式(3))()2(5.0)1()2(7.0)1(5.1)(k v k u k u k z k z k z +-+-=-+-- (3)构造h (k );加权阵取单位阵I Λ=L ;利用如下公式计算K (k )、)(ˆk θ和P (k ),计算各次参数辨识的相对误差,精度满足要求后停机。

递推最小二乘法的推导公式如下:(1)()()(1)(1)1(1)()(1)(1)()(1)(1)()(1)()(1)[][1](1)T k k k k k T k k k k k k T k k k k k k y xK P x x P x P P k k x P θθθ∧∧∧+++-++++++=++-=+=-+ (4)2.阶的辨识前面所讨论的系统辨识方法,都是假定模型的阶次是已知的,因此仅仅要求估计差分方程的系数。

但实际上,系统的阶次是很难被准确知道的。

因为对阶次的理解程度是直接与一个线性差分方程的准确结构有关的,所以有关阶次的确定也可以称为系统结构的确定。

经验指出,一个模型的阶次不准,就可能在控制系统设计时发生严重问题。

故在辨识过程中,模型的阶次是否合适是必须加以检验的。

一般阶的方法中,常用的有这么几种:零极点相消法、目标函数法和F 检验法。

下面只介绍其中的目标函数法。

当我们用不同阶的模型给系统的输入——输出观测数据进行最小二乘拟合时,会得到不同的估计误差:因此利用J 极小化确定阶是很自然的。

实验表明,假设模型具有大于1而小于max N 的阶n ,当n 取1,2,…时, 若随着n 的增加, 在ˆn(阶的估计量)-1时,J 最后一次出现陡峭的下降,往后J 就近似地保持不变或者只有微小的下降(见下图),则取ˆn n=。

也就是说,模型阶次的确定可以直接依次计算阶次n =1,2,…时的最小二乘估计ˆn以及相应的损失函数J ,然后选择当J 下降不明显时的阶次作为合适的模型阶次n ,这种方法也叫确定阶的估计准则方法,有很广的应用。

∑===Nk T EE k e J 12)(Jn四、实验内容1. 用递推最小二乘法(RLS)法辨识对象数学模型。

2. 对象阶的辨识。

五、实验要求1. 熟悉系统辨识中的相关内容。

2. 掌握Matlab或C语言等进行系统辨识仿真研究的一般步骤。

3. 实验前基本应完成相关的编程任务,实验时调试相应程序。

4. 修改相应参数与随机噪声幅度,观察并分析结果。

5. 软件包人机界面的开发与设计。

(选做)六、实验步骤1.首先要熟悉一下MATLAB的运行环境:1)File->New->M-File打开M文件编辑窗口2)输入自己编写的程序3)点击run按钮,如果程序出错则调试程序,如果运行正常的话则观察程序的运行结果2. 用递推最小二乘法(RLS)法辨识对象数学模型在这个实验中,我们采用以下模型进行仿真:y=1.5*y[k-1]-0.7*y[k-2]+0*u[k]+1.0*u[k-1]+0.5*u[k-2]+e[k] (5)其中u[k]是幅值为1的PRBS信号输入,e[k]是白噪声,即(0,1)的正态分布序列,它的方差时可以调整的。

相关文档
最新文档