系统辨识实验1实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告

--实验1.基于matlab的4阶系统辨识实验

课程:系统辨识

题目:基于matlab的4阶系统辨识实验

作者:

专业:自动化

学号:11351014

目录

实验报告 (1)

1.引言 (2)

2.实验方法和步骤 (2)

3.实验数据和结果 (2)

4.实验分析 (4)

1、 引言

系统辨识是研究如何确定系统的数学模型及其参数的理论。而模型化是进行系统分析、仿真、设计、预测、控制和决策的前提和基础。

本次实验利用matlab 工具对一个简单的4阶系统进行辨识,以此熟悉系统辨识的基本步骤,和matlab 里的一些系统辨识常用工具箱和函数。

这次实验所采取的基本方法是对系统输入两个特定的激励信号,分别反映系统的动态特性和稳态特性。通过对输入和输出两个系统信号的比较,来验证系统的正确性。

2、 实验方法和步骤

2.1 实验方法

利用matlab 对一个系统进行辨识,选取的输入信号必须能够反映系统的动态和稳态两个方面的特性,才能更好地确定系统的参数。本次实验采取了两种输入信号,为反映动态特性,第一个选的是正弦扫频信号,由下面公式产生:

选定频率范围 ,w(t)是时间t 的线性函数,具有扫频性质,可以反映系统的动态特性。

为反映稳态特性,选的输入信号是阶跃信号。以上的到两组数据,利用matlab 的merge()函数,对两组数据融合,然后用matlab 系统辨识工具箱中的基于子空间方法的状态空间模型辨识函数n4sid()来对系统进行辨识

2.2 实验步骤

(1)建立一个4阶的线性系统,作为被辨识的系统,传递函数为

3243211548765

()125410865

s s s G s s s s s -+-+=++++

(2)产生扫频信号u1和阶跃信号u2

(3)u1、u2作为输入对系统进行激励,分别产生输出y1和y2 (4)画出稳态测试输入信号u1-t 的曲线,和y1-t 的曲线 画出动态测试输入信号u2-t 的曲线,和y2-t 的曲线

(5)使用merge()函数对u1-y1数据和u2-y2数据进行融合,并使用n4sid()函数对系统进行辨识。

(6)画出原系统和辨识出的系统的零极点图,画出原系统和辨识出的系统的阶跃响应特性曲线,通过对比,验证辨识出的系统的准确性。

3、 实验数据和结果

(1) 分别以扫频正弦函数、阶跃函数作为系统的激励,得到的输出:

(2) 原系统传递函数:

-11 s^3 + 54 s^2 - 87 s + 65 ----------------------------------

s^4 + 12 s^3 + 54 s^2 + 108 s + 65 系统辨识出的系统传递函数:

-10.71 s^3 + 55.03 s^2 - 86.49 s + 65.07

----------------------------------------

s^4 + 12 s^3 + 54 s^2 + 108 s + 65

(3) 原系统与辨识出的系统零极点位置对比:

通过结果(2)(3)可以看出辨识出的系统和原系统的极点是完全一致的,零点也很接近,此次辨识出的系统的准确性较高。

(4) 原系统和辨识出的系统的阶跃响应曲线对比:

-2-1012S w e p t F r e q u e n c y

-0.50

0.5

1T ime, Seconds

S t e p R e s p o n s e

From u1

T o y 1

T ime, Seconds

S t e p R e s p o n s e

观察到两个系统的两条阶跃响应曲线重合度很高,说明了辨识出的系统能够可靠的表示出原系统。

4、 探究过程和分析

4.1探究过程

(1)改变辨识系统阶数为3,在程序中改变位置为:order=3;其他不变。 原系统和辨识系统的零极点图如下:

原系统与辨识系统的阶跃响应曲线如下:

(2)再次改变系统阶数为5,结果出现错误提示:

Model cannot be transformed to continuous-time. Poles of the model could be near 0 极点非常接近零,不能转换成连续系统。 4.2实验分析

由于此次实验是已经给定原系统,所以诸如系统阶数一类的参数是已经知道了的,实验中能够很确定地确定辨识系统的阶数,实验过程也是比较顺利。经过实验可以看出,当辨识系统的阶数比原系统低时,辨识结果与实际情况会相差地比较大;而用高阶系统辨识低阶原系统,辨识出的系统将会出现极点趋于0的情况。所以,在辨识过程中,对原系统的模型结构的确定是非常重要的,在这里可以看出系统的阶数影响是比较大的,阶数不合适,得到的结果跟实际系统的误差就会比较大。

进一步也就说明了模型及其参数确定出来之后,对模型的验证也是必不可少的,一般实际辨识中,是利用阶跃响应来验证结果的,得到的结果很适合观察验证,在此次实验中就是采用了阶跃响应来验证。只有通过验证才能确定辨识系统的准确与否,若辨识

From u1

T o y 1

Time, Seconds

S t e p R e s p o n s e

出的系统不能很好地反映出实际系统的特性,就得重新进行辨识的过程,以得到恰当的模型。

相关文档
最新文档