系统辨识实验报告30288
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、相关分析法
(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 为过程的脉冲响应理论
值,ˆ()g
k 为过程脉冲响应估计值,()g k 为过程脉冲响应估计误差。 过程输入()u k 采用M 序列,其输出数据加白噪声()v k 得到输出数据()z k 。利
用相关分析法估计出过程的脉冲响应值ˆ()g
k ,并与过程脉冲响应理论值0()g k 比较,得到过程脉冲响应估计误差值()g k 。
M 序列阶次选择说明:首先粗略估计系统的过渡过程时间T S (通过简单阶跃响应)、截止频率f M (给系统施加不同周期的正弦信号或方波信号,观察输出)。本次为验证试验,已知系统模型,经计算Hz T T f M 14.01
2
1≈=
,s T S 30≈。根据式M
f 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所示的过程传递函数串联,可以写成形如1212
11
()1/1/K G
s TT s T s T =
++,
其中112
K
K TT =
。 图2 过程仿真方框图
程序如下:
④ 计算脉冲响应估计值:
互相关函数采用公式)()(1
)(
10
k i y i x N
r k R N r i xy +⋅⋅=
∑-⋅=,互相关函数所用的数据
是从第二个周期开始的,其中r 为周期数,取1-3之间。则脉冲响应估计值为:
])([1
)(ˆc k R k k g xy -=,t
a N N k ∆⋅⋅+=2
)1(。补偿量)1(-=N R c xy 。 程序如下:
⑤ 计算脉冲响应估计值: 脉冲响应的理论值由式12//012
()[]k t T k t T K
g k e e T T -∆-∆=
--可计算得到。这时可得到过程脉冲相应估计误差0ˆ()()()g k g k g
k =-。脉冲响应估计误差为: ∑∑===
N
k N
k g k g k g
1
2
01
2
))(())(~(δ
程序如下:
(4)数据记录
①当噪声标准差sigma=,生成数据周期r为2时:脉冲响应估计误差为。脉冲响应估计曲线为图3所示。
②当噪声标准差sigma=,生成数据周期r为1时:脉冲响应估计误差为。脉冲响应估计曲线为图4所示。
③当噪声标准差sigma=,生成数据周期r为3时:脉冲响应估计误差为。脉冲响应估计曲线为图5所示。
④当噪声标准差sigma=1,生成数据周期r为3时:脉冲响应估计误差为。脉冲响应估计曲线为图6所示。
图3 sigma=,r=2时脉冲响应估计曲线图4 sigma=,r=1时脉冲响应估计曲线
图5 sigma=,r=3时脉冲响应估计曲线 图6 sigma=1,r=3时脉冲响应估计曲线
(5)结果分析
实验中可以看到脉冲响应估计的曲线与理论曲线的重合度还是比较高的,脉冲响应估计误差也比较小,实验证明相关分析法的估计效果还是不错的。
同时,经过实验可以得出结论:固定数据周期r ,给定不同的噪声标准差sigma 可以发现,噪声的方差越大,也就是信噪比越大,估计的效果越不好;固定噪声标准差sigma ,选择不同的数据生成周期r 可以发现,数据周期越大,估计的周期越多,估计的效果越好。
二、最小二乘法
1. 基本最小二乘(离线辨识)
ζφθζ+=+⎥⎥⎥⎦
⎤
⎢⎢⎢⎣⎡=b a U Y Y ][
残差为: )(ˆ)()(k y
k y k e -= 最小二乘目标:残差平方和最小(一阶导为0,二阶导>0)。
[][]
正定,且φφφφφθT T T LS
Y 1ˆ-=⇒ 从上式看出,逆存在才有解,满足条件的u(k):(1) 伪随机;(2) 白噪声;(3)有色随机信号。
程序如下:
结果如下:
result1 =[ ; ; ; ; ]
2. 递推最小二乘(在线辨识)
RLS )
1()]()([)()
()1()(1)
()1()()]1(ˆ)()()[()1(ˆ)(ˆ--=-+-=
--+-=k P k k K I k P k k P k k k P k K k k k y k K k k T T T φφφφθφθθ
修正项老估值新估值+=+N
N θθˆ)(ˆ)(1 为了启动RLS ,需给初值:I c P 20
,0ˆ==θ
。 计算框图见书P66。 程序如下: