利用相关分析法辨识脉冲响应文档格式.docx

上传人:b****8 文档编号:21975409 上传时间:2023-02-02 格式:DOCX 页数:12 大小:102.43KB
下载 相关 举报
利用相关分析法辨识脉冲响应文档格式.docx_第1页
第1页 / 共12页
利用相关分析法辨识脉冲响应文档格式.docx_第2页
第2页 / 共12页
利用相关分析法辨识脉冲响应文档格式.docx_第3页
第3页 / 共12页
利用相关分析法辨识脉冲响应文档格式.docx_第4页
第4页 / 共12页
利用相关分析法辨识脉冲响应文档格式.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

利用相关分析法辨识脉冲响应文档格式.docx

《利用相关分析法辨识脉冲响应文档格式.docx》由会员分享,可在线阅读,更多相关《利用相关分析法辨识脉冲响应文档格式.docx(12页珍藏版)》请在冰豆网上搜索。

利用相关分析法辨识脉冲响应文档格式.docx

M=2^15;

fork=1:

N

x2=A*x0;

x1=mod(x2,M);

v1=x1/(M+1);

v(:

k)=v1;

x0=x1;

end

sita=v;

3.2正态分布白噪声生成函数

functionv=noise(aipi)

%生成正态分布N(0,sigma)

sigma=1;

%标准差

length(aipi)

ksai=0;

fori=1:

12

temp=mod(i+k,length(aipi))+1;

ksai=ksai+aipi(temp);

end

v(k)=sigma*(ksai-6);

3.3M序列生成函数

function[NprM]=createM(n,a)

%生成长度为n的M序列,周期为Np,周期数为r

x=[111111];

%初始化初态

fori=1:

n

y=x;

x(2:

6)=y(1:

5);

x

(1)=xor(y(5),y(6));

U(i)=y(6);

M=U*a;

lenx=length(x);

Np=2^lenx-1;

r=n/Np;

3.4过程仿真函数

functiony=createy(u,K,T1,T2,T0)

n=length(u);

K1=K/(T1*T2);

E1=exp(-T0/T1);

E2=exp(-T0/T2);

x

(1)=0;

y

(1)=0;

fork=2:

x(k)=E1*x(k-1)+T1*K1*(1-E1)*u(k-1)...

+T1*K1*(T1*(E1-1)+T0)*(u(k)-u(k-1))/T0;

y(k)=E2*y(k-1)+T2*(1-E2)*x(k-1)...

+T2*(T2*(E1-1)+T0)*(x(k)-x(k-1))/T0;

u(k-1)=u(k);

x(k-1)=x(k);

y(k-1)=y(k);

3.5相关函数计算函数

functionR_Mz=RMz(Np,r,u,z)

r=r-1;

y=zeros(1,Np);

Np

y(k)=0;

fori=Np+1:

(r+1)*Np

y(k)=y(k)+u(i-k)*z(i);

y(k)=y(k)/(r*Np);

R_Mz=y;

3.5主函数

function[ogyita]=main(time)

%脉冲响应估计误差og

%噪信比yita

N=time*63;

K=120;

T1=8.3;

T2=6.2;

T0=1;

a=1;

sita=U(N);

%生成[01]均匀分布随机数

v=noise(sita);

%利用aipi生成正态分布白噪声

[Npru]=createM(N,a);

%生成长度为N的M序列

y=createy(u,K,T1,T2,T0);

%利用M序列驱动,生成y

z=y+v;

R_Mz=RMz(Np,r,u,z);

%计算相关函数

%计算脉冲响应估计值

g_k=zeros(1,Np);

g_k(1,k)=(R_Mz(1,k)-R_Mz(Np-1))*Np/((Np+1)*a*a*T0);

%计算脉冲响应理论值

Eg=zeros(1,Np);

Eg(1,k)=K/(T1-T2)*(exp(-k*T0/T1)-exp(-k*T0/T2));

%计算脉冲响应估计误差

og=sqrt(norm(Eg-g_k)^2/norm(Eg)^2);

ov=fangcha(v);

%计算噪声方差

oy=fangcha(y);

%计算信号方差

yita=sqrt(oy/ov);

%计算信噪比End

3.5画图函数1

%mainPlot.m

figure

(1)

forn=4:

40

[ogyita]=main(n);

y1(n)=og;

y1=y1(4:

40);

plot([4:

40],y1);

xlabel('

周期数'

);

ylabel('

脉冲响应估计误差'

figure

(2)

y2(n)=yita;

y2=y2(4:

40],y2);

噪信比'

3.5画图函数2

%mainPlot2.m

N=252;

plot([1:

252],y,[1:

252],z);

Legend('

不含噪声的输出序列'

'

含噪声的输出序列'

63],g_k,[1:

63],Eg);

脉冲响应估计值'

脉冲响应理论值'

4数据记录

表1脉冲响应估计值与脉冲响应理论值的比较

t

1

2

3

4

5

6

7

0.79

0.92

1.02

1.04

1.05

1.01

2.03

3.52

4.59

5.32

5.77

6.02

6.11

8

9

10

11

13

14

0.87

0.80

0.74

0.65

0.57

0.50

0.42

6.07

5.94

5.74

5.49

5.21

4.91

4.60

15

16

17

18

19

20

21

0.33

0.23

0.17

0.10

0.05

-0.01

-0.06

4.29

3.99

3.69

3.40

3.12

2.86

2.62

22

23

24

25

26

27

28

-0.10

-0.16

-0.19

-0.22

-0.25

-0.29

-0.28

2.39

2.18

1.98

1.80

1.63

1.48

1.33

29

30

31

32

33

34

35

-0.30

-0.31

-0.32

-0.36

-0.37

-0.39

-0.41

1.20

1.09

0.98

0.88

0.71

0.64

36

37

38

39

41

42

-0.44

-0.46

-0.47

-0.49

-0.51

-0.52

0.58

0.52

0.46

0.41

0.37

0.30

43

44

45

46

47

48

49

-0.53

-0.54

-0.55

-0.56

0.27

0.24

0.21

0.19

0.15

0.13

50

51

52

53

54

55

56

-0.57

0.12

0.11

0.09

0.08

0.07

0.06

57

58

59

60

61

62

63

0.00

0.61

0.04

0.03

5曲线打印

图1信噪比随着周期数增大的变化

图2脉冲响应计算误差随着周期数增大的变化

图3加入噪声前后的输出序列比较

图4脉冲响应理论值与估计值的比较

6结果分析

6.1信噪比脉冲响应计算误差随周期的变化

随着周期数的增加,信噪比减小,说明噪声随着周期数的增加变得更强烈,而计算误差的减小表示周期数的增加使得不确定因素的影响减小,使得计算结果与实际更接近。

6.2加入噪声前后的输出序列比较

加入噪声前后的变化并不大,说明噪声对输出序列影响不大,在第二个周期之后输出序列变得稳定,具有周期变化。

6.3脉冲响应理论值与估计值的比较

随着时间的增加,脉冲响应理论值与估计值全部变小,且差值变小,与实验前的理论推导一致。

7实验体会

通过本次试验,我不仅更深层次的了解了系统辨识的内容,而且也复习和运用了matlab,为以后的工作实践打了一些基础。

 

欢迎您的下载,

资料仅供参考!

致力为企业和个人提供合同协议,策划案计划书,学习资料等等

打造全网一站式需求

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1