1.系统辨识基础,波,胡德文,中国水利水电出版社,2006,
2.系统辨识及其MATLAB仿真,侯媛彬
1. 已知用频率法实验测得系统的频率响应极坐标图如下,从中可以得到相应的传递函数模型,请写出推倒过程。
图2.1a
图2.1a
一阶环节:, 其中
图2.1b
二阶环节:,其中
图2.1c
一阶延迟环节:,其中
2. 系统真实模型如下图所示,试用增广递推最小二乘法辨识系统模型。
实验:是均值为0,方差为1的正态分布近似白噪声序列,由计算机随机数产生,噪声强度系数取为0.9。为输入序列,采用m序列,幅度为2。
选用如下模型结构:
.
Matlab编程实现增广递推最小二乘法,其中初始条件取。
要求:写出程序及注释,并给出结果:1)a1, a2, b1, b2, d1五个参数的辨识结果;2)用图形显示五个参数的收敛过程。
3. 如图3-1所示采用气体燃料的常压加热炉,炉膛温度受所加燃料量的影响,由于气体燃料流量受阀门压力的控制,取阀门压力作为炉温控制系统的输入控制变量。试用相关分析法建立系统模型,获得燃料量与炉温之间的动态关系。
实验:在热稳定工况(832度)的基础上 ,在阀门压力稳定值上再附加一人工扰动,即幅度为的M序列压力信号。加热炉的热惯性较大,过渡过程时间不大于50分钟,故可取M序列的周期。若去序列长度=15,则基本电平时间=4min。这样即使通过手动方式改变阀门压力来实现所要求的人工扰动也是可能的。当阀门压力波动范围不超过,炉膛温度有明显的输出响应,且波动范围不超过3度,因而控制对象不会进入非线性区。
图3-1
图3-2为M序列施加1小时后测得的3个周期的记录曲线。3个周期的温度曲线y(t)不完全重复,这是由于记录仪表误差以及工况本身也有随机性波动等原因造成的。为了获得温度响应的平稳过程,要在压力扰动加入1个循环周期后开始记录数据。
图3-2
图3-2对应的数据如表3-1所示。(扣除了恒定值830)。另外,输入信号M序列为(周期为15): -a, -a, -a, -a, a, a, a, -a, a, a, -a, -a, a, -a, a,
表3-1 相关分析法辨识加热炉动态特性的数据处理表
k | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
y(k) | 2.06 | 1.85 | 1.84 | 1.79 | 1.08 | 0.68 | 0.44 | 0.80 |
y(k+Np) | 1.82 | 1.82 | 2.03 | 2.03 | 1.03 | 0.68 | 0.52 | 0.86 |
y(k+2Np) | 2.01 | 1.67 | 1.70 | 1.82 | 1.04 | 0.59 | 0.38 | 0.81 |
k | 8 | 9 | 10 | 11 | 12 | 13 | 14 | |
y(k) | 1.91 | 2.38 | 2.47 | 2.51 | 3.05 | 2.69 | 1.94 | |
y(k+Np) | 1.78 | 2.50 | 2.50 | 2.32 | 3.28 | 2.82 | 2.04 | |
y(k+2Np) | 1.91 | 2.55 | 2.28 | 2.56 | 3.13 | 2.70 | 2.06 | |
1)利用表3-1计算互相关函数:
2)计算脉冲响应估计值:
其中取。计算结果填入表3-1。
3)由下式计算单位阶跃响应的离散值
4)求取系统传递函数模型
方法一:a) 画出的曲线,注意本例的诗句量纲取为分钟。
(由图看出,测系统具有纯时延=3.3min ,整个曲线形状接近于过阻尼二阶系统的阶跃响应,其传递函数的形式为:)
b) 根据单位阶跃响应曲线,用面积法求得各系数。
4. 用Matlab编程实现BP神经网络对二维非线性函数的辨识。其中,k1 = 0.05, k2 = 0.02,。神经网络选用3-6-1型,激发函数采用对称的sigmoid函数(双曲函数),即
输入,各层权值,阈值的初始值分别为
w10ij=[.01 .01 .02; .01 .01 .02; .01 0 .01; .001 .001 .002;.001 0 .002; .0011 .001 .001] ;
w11ij=[-.1 -.02 .11; -.21 .10 -.19; -.14 .15 -.16; .14 -.13 .17; -.13 .12 .21; -.16 -.23 .13];
w20j=[.01;.02;.1;.2;.1;.1];
w21j=[.18;.9;.9;.7;.8;.9];
q0j=[.5 .8 .4 .6 .1 .2 ];
q1j=[-.1 .02 .12 .14 -.02 .02];
p0=.2;
p1=.1;
xj=[0.5 0.3 0.2];