- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
系统辨识实验报告
自动化0903班李姣
实验一、系统辨识的经典方法
系统的模块如图:
(1)、对系统的传递函数进行辨识。
对于一阶系统而言,未加入干扰信号时,其稳定值
t0=20.0,h0=42.2040,
加入干扰信号后其稳定值为
t=40,h1=60.4937。
现在分别取两个点为y1=30%对应的实际点为
h1’
根据实际测试值,选取h1’=47.8909,t1
y1’
所以第一个点的取值为 y1’=0.3109;t1
同理可得第二个点的数值为 y2’=0.8033;t2
由公式 :
可得 T=1.6750;=0;
由公式
可得 k=1.82899
(2)、对传递函数进行检验
下面对系统的辨识结果进行验证,用一个幅值为10的阶跃信号进行验证,程序如下:
num=[1.82899];
den=[1.675,1];
t=[0:0.1:10];
[y,x,t]=step(num,den,t);
plot(t,10*y)
grid on;
title(一阶系统模型的验证);
xlabel(仿真时间);
ylabel(系统的响应值);
set(gca,xtick,[0:0.5:10]);
set(gca,ytick,[0:1:20]);
所得的仿真图形如下,
实际系统加入测试信号后0.5s,从workspace中可发现系统的响应值为h=47.0929-42.2040=4.8889;验证是的对应仿真值为h’=4.4720;
其误差大小为:
(4.8889-4.4720)/4.8889*100%=8.536%;
同理,当仿真时间为3.8s时,h=16.3993;h’=16.398;
误差大小为:
(16.3993-16.398)/16.3993*100%=0.08%;
所以经过验证个,可以确定该辨识结果可以反应该系统的传递函数。
实验二
相关分析法
aa=5;NNPP=15;ts=2;
RR=ones(15)+eye(15);
UU=[UY(31:45,1);UY(30:44,1);UY(29:43,1);UY(28:42,1);UY(27:41,1); UY(26:40,1);UY(25:39,1);UY(24:38,1);UY(23:37,1);UY(22:36,1); UY(21:35,1);UY(20:34,1);UY(19:33,1);UY(18:32,1);UY(17:31,1)];
YY=[UY(16:30,2)];
GG=(RR*UU*YY+4.4474)/[aa*aa*(NNPP+1)*ts];
plot(0:2:29,GG)
hold on
stem(0:2:29,GG,filled)
(1) 最小二乘二阶一次完成算法
HL=[];
N=15;m序列的周期
n=2;系统的阶次
for k=16:15+N
a=[-UY(n+k-1:-1:k,2) UY(n+k-1:-1:k,1)];
HL=[HL;a];
end
ZL=UY(n+16:n+N+15,2);
c1=HL*HL; c2=inv(c1); c3=HL*ZL; c=c2*c3;
a1=c(1), a2=c(2), b1=c(3), b2=c(4);
求得:a1=-0.7729;a2=0.1522;a3=0.5586;a4=0.3232;
(2)最小二乘三阶的一次完成算法
HL=[];
N=15;m序列的周期
n=3;系统的阶次
for k=16:15+N
a=[-UY(n+k-1:-1:k,2) UY(n+k-1:-1:k,1)];
HL=[HL;a];
end
ZL=UY(n+16:n+N+15,2);
c1=HL*HL; c2=inv(c1); c3=HL*ZL; c=c2*c3;
a1=c(1), a2=c(2), a3=c(3), b1=c(4);b2=c(5);b3=c(6);
求得相关系数为:
a1=-0.1907; a2=-0.2461; a32=0.0392; b1=0.5609; b2=0.6509; b3=0.2252;
(3)最小二乘法二阶一般递推算法
%RLS递推最小
z=UY(:,2);
u=UY(:,1);
c0=[0.001 0.001 0.001 0.001];直接给出参数的初始值
p0=10^4*eye(4,4); 直接给出初始状态P0,已给很大的单位实矩阵
c=[c0,zeros(4,198)]; 存储各部迭代后的参数值 k=3:200; 开始迭代
h1=[-z(k-1),-z(k-2),u(k-1),u(k-2)];
x=h1*p0*h1+1*lamt;
x1=inv(x);
k
文档评论(0)