仿真原理.docx

上传人:b****9 文档编号:154590 上传时间:2022-10-04 格式:DOCX 页数:22 大小:45.07KB
下载 相关 举报
仿真原理.docx_第1页
第1页 / 共22页
仿真原理.docx_第2页
第2页 / 共22页
仿真原理.docx_第3页
第3页 / 共22页
仿真原理.docx_第4页
第4页 / 共22页
仿真原理.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

仿真原理.docx

《仿真原理.docx》由会员分享,可在线阅读,更多相关《仿真原理.docx(22页珍藏版)》请在冰豆网上搜索。

仿真原理.docx

一、仿真原理

1、给定条件

设有一个随机信号x(n)服从AR(4)过程,它是一个宽带过程,参数如下:

a

(1)

a

(2)

a(3)

a(4)

s2

-1.352

1.338

-0.662

0.240

1

通过观测方程y(n)=x(n)+u(n)来测量信号,u(n)是方差为1的高斯白噪声

2、推导初始条件如下:

由所给定的条件,得到状态方程如下:

x(n)=1.352*x(n-1)-1.338*x(n-2)+0.662*x(n-3)-0.24*x(n-4)+w(n)

其中w(n)表示动态噪声,其方差s2为1;

令x(-1)=x(-2)=x(-3)=x(-4)=0得到的初始值如下:

x

(1)=w(n);

x

(2)=w(n)+1.352*x

(1);x(3)=w(n)+1.352*x

(2)-1.338*x

(1);

x(4)=w(n)+1.352*x(3)-1.338*x

(2)+0.602*x

(1);

当n≥5时满足如下方程:

x(n)=1.352*x(n-1)-1.338*x(n-2)+0.602*x(n-3)-0.24*x(n-4)+w(n);

其中w(n)是方差为1的高斯白噪声

对卡尔曼滤波有:

由状态方程可得

æx(n) ö æx(n-1)ö æ1ö

ç ÷ ç ÷ ç÷

çx(n-1)÷ çx(n-2)÷ ç0÷

=A* +w(n)

çx(n-2)÷ çx(n-3)÷ ç0÷

è ø è ø èø

çx(n-3)÷ çx(n-4)÷ ç0÷

状态变量增益矩阵为:

æ1.352-1.3380.6620.240ö

ç1 0 0 0÷

A=ç ÷

ç0 1 0 0÷

ç0 0 1 0÷

è ø

仅对x方向进行估计,即考虑一维的情况下,有:

状态变量与输出信号之间的增益矩阵Ck=[1000];

量测噪声协方差阵为Rk=[1];

æ1000ö

ç0100÷

噪声的均方误差阵为Pk=ç ÷;

ç0010÷

è ø

ç0001÷

3、仿真要求

分别利用Wiener滤波器和Kalman滤波器通过测量信号估计x(n)的波形

4、仿真原理

(1)维纳滤波原理

维纳滤波的原理是根据全部过去的和当前的观测数据x(n),x(n-1), …来估计信号的当前值。

以均方误差最小条件下求解系统的传递函数H(z)或单位冲激响应h(n)。

维纳滤波的信号模型是从信号与噪声的相关函数得到。

Wiener滤波器的一般结构如下:

-

线性滤波器

y(n)=dˆ(n)

x(n)

e(n)

d(n)

有一期望响应d(n),滤波器系数的设计准则是使得滤波器的输出y(n)是均方意义上对期望响应的最优线性估计。

线性系统输出为:

y(n)=sˆ(n)=åh(m)x(n-m)

m

ìïé ¥ ù2üï

均方误差为:

Eéëe2(n)ùû=Eíês(n)-åh(m)x(n-m)úý

ïîë

m=0

ûïþ



¶Eéëe2(n)ùû

维纳滤波器的设计,实际上就是在最小均方误差条件下,即

¶hj

=0,

确定滤波器的冲激响应h(n)或系统函数H(z),可等效于求解维纳-霍夫方程:

[h]=[φxx]-1[φxs]。

(2)卡尔曼滤波原理

不需要全部过去的观察数据,只根据前一个估计值和最近一个观察数据来估计信号的当前值。

它是用状态空间法描述系统,即由状态方程和量测方程组成。

解是以估计值(是状态变量的估计值)的形式给出的,其算法是递推。

卡尔曼滤波的信号模型则是从状态方程和量测方程得到。

卡尔曼滤波的信号模型(一维)如下:

A(z)

wk sk

uk yk=sk+uk

离散系统的n维状态方程:

x(k)=Akxk-1+wk-1

离散系统的m维量测方程:

yk=c+kxk uk

令Ak表示状态变量之间的增益矩阵,Ck为状态变量与输出信号之间的增益矩阵,不随时间发生变化,动态噪声wk与观测噪声uk都是零均值的正态噪声,

k k kk

且两者互不相关,R=var[u]=EéëuuTùû为量测噪声协方差矩阵,

中Q= var[w]=EéëwwTùû为动态噪声协方差矩阵。

k k kk

系统初始条件为:



E[x0]=m0

0 0 0 0

var[x]=Eéë(x-m)(x-m)Tùû=p

0

k

0

k

cov[x,w]=EéëxwTùû=0

0

k

0

k

cov[x,u]=EéëxuTùû=0

卡尔曼滤波的基本思想是先不考虑激励噪声wk和观测噪声uk,得到状态的

估计值xˆ'和观测数据的估计值yˆ',再用观测数据的估计误差y%=y-yˆ

去修正状

k k k k k

态的估计值xˆk,通过选择修正矩阵H使得状态估计误差的均方值Pk最小。

卡尔曼滤波的递推公式如下:

ìxˆk

ï

=Akxˆk-1+Hk(yk-CkAkxˆk-1)

-1

k kk kkk k

ïH=P'CT(CP'CT+R)

í

ï P'=APAT+Q

k kk-1k k-1

ï P=(I-HC)P'

î k kk k

假设初始条件Ak,,Ck,Q,k,R,k

yk xˆk-1

Pk-1已知,其中

xˆ0=E[x0],P0=var[x0],则卡尔曼滤波的递推流程如下:

xˆ ,P P'

k-1

k-1

P'=APAT+Q k

xˆk

k kk-1

k k-1

H=P'CT(CP'CT+R

xˆk=Akxˆk-1+Hk(yk-CkAkxˆk-1)

k kk kkk k

Hk

)-1

Pk P

=(I-HC

)P'

k kk k

二、 仿真流程

(1)维纳滤波仿真流程如下:

初始条件+状态方程

观测信号与期望信号的互相关函数φyx

观测样本y=x+v,

v表示加性高斯白噪声

真实值x

输出滤波估计值xk_s

维纳滤波器系数:

[h]=[φyy]-1[φyx]

观测信号的自相关函数φyy

误差=真实值-滤波估计值

_

(2)卡尔曼滤波仿真流程如下:

初始值xˆ0

_

误差=真实值-滤波估计值

k=k+1

k=k+1

计算估计值:

xˆk=Akxˆk-1+Hk(yk-CkAkxˆk-1)

观测值ykyk=x+v

kk k

k

'

P=I-HC P

计算滤波后的均方误差阵:

-1

k

k kk kkk

'T

'T

H=PC CPC+R

计算增益矩阵:

真实值x

k kk-1k k-1

P'=APAT+Q

计算未考虑噪声时的均方误差阵:

给定Ak、Ck、Rk、Pk的初始值

三、仿真结果及分析

1、利用维纳滤波器进行估计:

(1)Wiener滤波器的阶数取101阶,观测点数取100,u(n)的方差为1时,

通过仿真得到真实轨迹、观测样本及估计轨迹的比较图形如下图1所示:

□估估估

估估估估

估估估估

6

4

2

0

-2

-4

-6

0 10 20 30 40 50 60 70 80 90 100

图1采用维纳滤波,噪声方差为1时,真实轨迹、观测样本及估计轨迹的比较从图1可以看出,利用Wiener滤波器通过测量信号估计x(n)的波形,得

到的估计轨迹接近于真实轨迹。

当噪声方差为1时,估计轨迹与真实轨迹间的误差很小。

(2)Wiener滤波器的阶数取101阶,观测点数取100,u(n)的方差为1

时,通过仿真得到平均误差如下图2所示:

□估估估

2

1.5

1

0.5

0

-0.5

-1

-1.5

-2

0 10 20 30 40 50 60 70 80 90 100

图2采用维纳滤波,噪声方差为1时的平均误差

从图2可以看出,利用Wiener滤波器通过测量信号估计x(n)的波形,当

噪声方差为1时,得到的估计轨迹与真实轨迹的平均误差较小,而且刚开始的时候平均误差相对较大,随着时间的推移,平均误差有逐渐减小的趋势。

(3)Wiener滤波器的阶数取101阶,观测点数取100,u(n)的方差为4时,

通过仿真得到真实轨迹、观测样本及估计轨迹的比较图形如下图3所示:

□估估估

估估估估

估估估估

15

10

5

0

-5

-10

-15

0 10 20 30 40 50 60 70 80 90 100

图3采用维纳滤波,噪声方差为4时,真实轨迹、观测样本及估计轨迹的比较从图3可以看出,当噪声方差为4时,估计轨迹与真实轨迹间的误差变

大了。

利用Wiener滤波器通过测量信号估计x(n)的波形,得到的估计轨迹接近

于真实轨迹。

(4)Wiener滤波器的阶数取101阶,观测点数取100,u(n)的方差为4

时,通过仿真得到平均误差如下图4所示:

□估估估

3

2

1

0

-1

-2

-3

0 10 20 30 40 50 60 70 80 90 100

图4采用维纳滤波,噪声方差为4时的平均误差

从图4可以看出,当噪声方差为4时,估计轨迹与真实轨迹间的平均误差变大了。

而且刚开始的时候平均误差相对较大,随着时间的推移,平均误差有逐渐减小的趋势。

2、利用卡尔曼滤波器进行估计:

(1)采用卡尔曼滤波,观测点数取100,u(n)的方差为1时,通过仿真得

到真实轨迹、观测样本及估计轨迹的比较图形如下图5所示:

□估估估

估估估估

估估估估

6

4

2

0

-2

-4

-6

0 10 20 30 40 50 60 70 80 90 100

图5 采用卡尔曼滤波,噪声

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

当前位置:首页 > 表格模板

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

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