系统辨识MATLAB仿真
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
设一非线性系统如下所示:
()()()
()()111y k y k e u k k βαε--=-+-+
0.75α= 0.35β=0.25γ=,()k ε是零均值,方差为0.01的噪声序列(均匀白噪声)。 (1)试设计一种激励信号能持续激励系统的各工作点(平衡点)
(2)用适当的方法辨识出系统的等价模型(用另一组数据来检验模型的泛化性) 说明:下面讨论的都是离散系统,所以时间坐标均采用离散时间节点k 。 解:
(1) 线性化处理寻找系统的合理输入信号 可以求得系统的平衡点为:
()0.75y k α== (1.1)
按题意要求最后系统必须收敛于平衡点附近,即:
()lim 0.75k y k →∞
= (1.2)
为了找出系统的合理输入信号,使得系统最终工作在平衡点附近,这里可以将系统线性化处理,将上述非线性系统进行泰勒展开得:
()()()()()()()2323111111112!3!!
n n y k y k y k y k y k u k k n αβαβαβαβγε--+---++-=-+
因为 ,后面()1y k -的高阶项都可以扔掉(只作为寻找输入信号使用), 所以系统可以化为下式:
此时不妨设系统输出()y k 的最后的极限为A , 从式1.2得0.75A =。 那么应该满足
()()lim lim 1k k y k y k A →∞
→∞
=-= (1.5)
从而有 ()()()11A u k k αβγε-=-+ (1.6)
同时为了抵消系统的部分噪声,这里采用MA TLAB 软件编程产生另一服从同一分布的均匀噪声()1k ε,将式1.6变形得:
()()()0111
1u k u k k αβ
εγ
γ
--=
-
(1.7)
式1.7中()0u k 是一个最后收敛于系统平衡点0.75的基本信号,这里可以采用一阶线性系统的阶跃响应曲线作为基本信号()0u k ,同时考虑系统的平衡点,即设计为:
()/00.75k T
u k e
-=- (1.8)
T 是一阶线性系统对应的时间常数,
反应到输入基本信号()0u k 上就是过零点作()0u k 对应()()()()11y k y k u k k αβγε--=-+01αβ<(1.3)
(1.4)
曲线的切线的斜率
1
K
T =。
图1 基本信号产生框图
很显然有()
lim0.75
t
u k
→∞
=(1.9)
从而最后的输入信号设计为:
()()()
01
11
11
u k u k k
αβ
ε
γγ
-
=+-+(1.10)
式1.10中,,
αβγ题中已知,()
1
k
ε满足:()
1
E k
ε=
⎡⎤
⎣⎦,()
1
0.01
D k
ε=
⎡⎤
⎣⎦,
()
u k 的产生参照图1。
代入式1.8得:
()()
(1)/
1
11
(0.75)1
k T
u k e k
αβ
ε
γγ
-+
-
=--+(1.11)
产生()
u k过程中的时间常数T由仿真效果决定,如果从系统的性能指标而言,T尽可能小,仿真如下:
图2 噪声随机抵消情况下的原系统响应曲线
系统输入基本信号()
u k
阶跃信号1
1
Ts+
图3噪声完全抵消情况下的原系统响应曲线
仿真分析:
图2与图3中都是原非线性系统的响应曲线图,两者的输入信号有差别,分别为
()()12,u k u k ,如下式表示:
()()()10111
11u k u k k αβ
εγγ-=
+-
+ (1.12)
()()()201111u k u k k αβεγγ
-=+-+ (1.13)
()0u k 参照式1.8。
式1.12中()11k ε+是MA TLAB 中产生的符合同一均匀分布的给定随机噪声,从而式1.12中输入信号()1u k 实现噪声随机抵消,结果系统的响应()y k 呈现出很大的噪声干扰,这是符合对未知系统认识的逻辑过程的,如果要得出理想的响应曲线,也就是要求系统最终在平
衡点附近趋于稳定,那么需要设计相应的滤波器,这里不再讨论,后续会尝试设计滤波器滤波。
式1.13中()1k ε
+是系统给定的噪声,那么设计的输入信号()u k 实现了对噪声的完全抵消,得到的理想响应曲线如图3所示,从图3中可以看出,()y k 很快的收敛于0.75附近,且上升时间以及超调量等性能指标均符合理想响应要求,这里就没有具体计算,显然符合控
制系统的快稳准的三要素。
(2) 最小二乘法辨识模型
通过MATLAB 编程从原非线性系统中采集一些输入输出数据,利用最小二乘法辨识出
系统近似的线性模型,实现框图如图4。
时不变SISO 系统动态过程的数学模型为
()()()()()11A z y k B z u k k ε--=+ (2.1)
其中()u k 是系统的输入,()y k 是系统的输出,()()
11,B A z z --的展开式分别如下:
()
112
121a a n n A z a z a z a z ----=+++ (2.2) ()112
12b b n n B z b z b z b z ----=++ (2.3)
参数1212,,
,,,,,a b n n a a a b b b 待辨识。
式2.1写成最小二乘格式
()()()T
y k h
k k θε=+ (2.4)
式2.4中:
()()()()()[y 1,,y ,u 1,
,u ]T a b h k k k n k k n =------ (2.5)
1212,,
,,,,
,a b T
n n a a a b b b θ⎡⎤=⎣⎦ (2.6)
对于1,2,
,,k L =方程2.4构成一个线性方程组,可以把它写成式2.7,
L L L Y H E θ=+ (2.7)
其中
()()()1,y 2,,y T
L Y y L =⎡⎤⎣⎦ (2.8) ()()()1,2,
,T
L E L εεε=⎡⎤⎣⎦ (2.9)
()()()()()()()()()()()()()()()101011212211T a b T a b L T a b h y y n u u n y y n u u n h H y L y L n u L u L n h L ⎡⎤----⎡⎤⎢⎥⎢⎥
----⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥
------⎣⎦⎣⎦ (2.10)