利用相关分析法辨识脉冲响应
基于相关分析法的脉冲响应辨识实验设计
基于相关分析法的脉冲响应辨识实验设计
刘恒;孙晋;邰凡彬;张易晨
【摘要】In combination with the knowledge points of the curriculum and by using the 555 timer,dual D flip-flop, NAND gate and operational amplifier,the m sequence signal generation is realized.The two-order identification system is designed through the operational
amplifier,capacitors and resistors.The Multisim software simulation verifies the correctness of the circuit design.The Matlab software is used to simulate the identification of impulse response with the correlation analysis,and the effectiveness of the algorithm is verified.The identification circuit with the correlation analysis is constructed by using the level lifting circuit,STM32F103 SCM and TFT screen.The experimental test shows that the six-order m sequence signal can correctly stimulate the two-order system,and the hardware circuit can realize the identification of the impulse response curve and identify the error of 2%.This experiment can
基于C语言的利用相关分析法辨识脉冲响应
#define N 253 #define a 1
//比生成随机数数目大1的值 //M序列的幅值
#define time_interval 1.0 //采样时间间隔 #define K 120 #define T1 8.3 #define T2 6.2 #define T0 1.0
系统辨识实验报告30288
一、相关分析法
(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}。程序如下:
② 生成白噪声序列: 程序如下:
③ 过程仿真得到输出数据:
实验一 利用相关辨识法辨识脉冲响应
《系统辨识基础》第11讲要点
实验一 利用相关分析法辨识脉冲响应
一、实验目的
通过仿真实验掌握利用相关分析法辨识脉冲响应的原理和方法。 二、实验内容
下图为本实验的原理框图。过程传递函数为)(s G ,其中Sec 26T Sec,3812021..,===T K ;)()(k z k u 和分别为过程的输入和输出变量;)(k v 为过程测量白噪声,服从正态分布,均值为
零,方差为2v σ,记作),(~)(20v N k v σ;)(k g 0为过程的脉冲响应理论值,)(ˆ
k g 为过程脉冲响
应估计值,)(~k g
为过程脉冲响应估计误差。 过程的输入驱动采用M 序列,输出受到白噪声)(k v 的污染。根据过程的输入和输出数据
{})(),(k z k u ,利用相关分析算法根据出过程的脉冲响应值)(ˆ
k g ,并与过程脉冲响应理论值
)(k g 0比较,得到过程脉冲响应估计误差值)(~k g
,当∞→k 时,应该有0→)(~k g 。
1
模拟过程传递函数)(s G ,获得过程的输入和输出数据{})(),(k z k u (采样时间取1秒)。
下面介绍的三种仿真方法都可以用。
(1) 惯性环节 其中,T 为惯性环节的时间常数,K
为惯性环节的静态放大倍数。若采样时间记作0T ,则惯性环节的输出可写成:
[]
011111000T k u k u T e T TK k u e TK k y e k y T T T T T T )()()
)()
()()()(///--+-+--+-=---
(2) 传递函数)(s G 仿真(串联)
系统辨识
相关分析法通常采用类似白噪声的伪随机信号作为输入测试信号,这种信号对系统的正常工作干扰不大。通常不加专门的输入测试信号,仅利用正常工作状态下测量的输入及输出信号,就可得到良好的辨识效果。相关分析法辨识抗干扰能力强、数据处理简单、辨识精度高,因此应用比较广泛,尤其是在需要在线辨识的场合。
相关分析法辨识具有最小二乘法辨识的统计特性,即使在有色噪声干扰下,也可以得到无偏估计,这是它和一般最小二乘法相比最大的优点。
在采用相关分析法进行系统辨识时,系统的脉冲响应函数可由系统的输入及输出数据的相关函数来描述,因此,输入信号的选择及相关函数的估计是相关分析法的关键所在。
持续激励输入信号的要求。更进一步的要求是输入信号必须具有较好的“优良性”,即输入信号的选择应能使给定问题的辨识模型精度最高。
在具体工程应用中,选择输入信号时还应考虑以下因素:
输入信号的功率或幅度不宜过大,以免使系统工作在非线性区,但也不应过小,以致信噪比太小,直接影响辨识精度。
工程上要便于实现,成本低。
相关分析法是属于统计分析的方法,它的理论基础就是著名的维纳-霍甫积分方程。这个方程为积分方程,不易求解,但如果采用白噪声作为系统输入,则可方便的求出系统的脉冲响应。
但是运用白噪声求系统响应,理论上需要无限长时间上的观测数据,这是不希望和不允许的,因此具有人工可以复制的、有规律的、周期性的伪随机信号是更适合应用的。这种信号具有类似白噪声的性质,目前最常用的是伪随机二位式序列,它
们主要有M序列和逆重复M序列,它们可由计算机
或线性反馈寄存器产生。
第六章脉冲响应函数
第6章 脉冲响应函数的辨识
6.1辨识问题的提法
下图所示,、将作用在系统上的一切随机干扰和噪声,用一个作用于系统输出的等效随机干扰源)t (v 来代替。其中,输入信号)(u t 是过程的运行操作信号,
是可以直接观测的确定性变量;)(y u t 是过程的实际输出,是不能被观测到的;y(t)
是过程的观测输出,混有随机噪声)t (v 。
由此可以提出辨识问题:
在已知输入、输出的观测量)(u t 、y(t)以及f t (f t 可以根据脉冲响应过渡历程时间的先验知识作粗略估计)的情况下,要求估计出脉冲响应函数)(g t 。
下面介绍两种辨识脉冲响应函数的常用方法:相关分析法和最小二乘法。 6.2用相关分析法辨识脉冲响应函数
相关函数是基于一种统计的描述,是由输出信号)(y t 同其余变量之间的关系确定脉冲响应函数。假定噪声)t (v 是一个零均值平稳随机过程,并与)(u t 不相关,且过程是线性时不变的、因果性的系统,过程的未知脉冲响应函数为)(g t ,则过程的输入、输出和脉冲响应函数之间的基本关系如下:
⎰∞
-=0)()()(y λλλd u t g t u (6.1)
⎰+-=f
t t v d u t g t 0
)()()()(y λλλ (6.2)
把变量t 用τ+t 代换,得
⎰++-+=+f
t t v d t u g t 0)()()()(y τλλτλτ (6.3)
由于已经假设)t (v 与输入信号)(u t 不相关,因此对应的相关系数0)(uv =τR ,是可得维纳-霍夫方程。
λλλτd t R g R f
系统辨识的经典方法
G( jω) = Y ( jω) = Re(ω) + j Im(ω) U ( jω)
¾ 系统的频率特性与系统传递函数之间有着简单而直接的关系:
G( jω) = G(s) s= jω
频率响应法-2
; 李沙育图形法测量系统的频率特性
信号发生器
被测环节
¾ 输入端加一个频率为正弦信号,待稳定后,测量输出信号的振幅与 相角,并与输入信号的振幅与相角做比较,便可得出对应频率的幅 频特性|G(jω)|和相频特性φ(ω)。如果不断的改变输入信号的角 频率ω,重复上述实验步骤,便可得到不同频率时的频率特性。
¾ 通常使用的非周期激励信号有不同波形的脉冲信号、阶跃信号、斜 坡信号等。
¾ 通常使用的周期激励信号有简单的正弦波信号,二位式信号等。
; 但是,倘若仅仅利用被识对象在正常运行时自然波动的输入输出 信号作为激励信号,则往往只能得到不太精确的结果。
¾ 这是由于系统内部的扰动信号的功率谱可能太窄,而且实际所能得 到的输入输出信号的记录总是有限的,利用这些有限的数据来计算 相关函数,从而获得系统的模型,所得到的精度往往是不高的。
¾ 所以,如果系统允许的话,可人为地输入激励信号,这样做有利于 提高系统辨识精度或者缩短所需的辨识总时间。
引言-4
; 注意2 当向被识对象施加非周期输入激励信号时,原来处于平衡
系统辨识课件-经典的辨识方法
T1 S2 T3 U2 0 U4
S 2 T3 T3 S4 S 4 T5 0 U4 U4 0 0 U6
ˆ b0 S 0 ˆ T b1 1 ˆ S2 b2 ˆ 0 a ˆ 1 U 2 a 2 0 ˆ a3
● 在频率 i 点上,估计的频率响应与实测的频率响应的误差记作:
( ji ) Re (i ) j Im(i )
● 误差准则
N ( ji ) D( ji )
J= ( ji )
i 1
L
2
● 修正的误差准则
J= D( jwi ) ( ji )
i 1
L
2
ˆ (t ) Ru (t )dt Ruz ( ) g
0
此为辨识过程脉冲响应的理论依据
2 Ru ( ) u ( ) 白噪声输入时 ˆ 1 g ( ) Ruz ( ) 2 u
4.5.2 用M序列作输入信号的离散算法
第4章 经典的辨识方法
4.1 引言 ● 辨识方法的分类 ▲ 经典的辨识方法 (Classical Identification) :首先获得系统的非参数模型(频 率响应,脉冲响应,阶跃响应),通过特定方法,将非参数模型转化成参数 模型 (传递函数)。 ① 阶跃响应辨识方法 (Step Response Identification) ② 脉冲响应辨识方法 (Impulse Response Identification) ③ 频率响应辨识方法 (Frequency Response Identification) ④ 相关分析辨识方法 (Correlation Analysis Identification) ⑤ 谱分析辨识方法 (Spectral Analysis Identification) ▲ 现代的辨识方法 (Modern Identification):假定一种模型结构,通过模型与过 程之间的误差准则来确定模型的结构参数)。 ① 最小二乘类辨识方法 (Least Square Identification) ② 梯度校正辨识方法 (Gradient Correction Identification) ③概率逼近辨识方法(Probability Approximation Identification) 经典的辨识方法 1)首先得到系统的非参数模型; 2)由非参数模型转换成参数模型。
利用相关分析法辨识脉冲响应
实验一 利用相关分析法辨识脉冲响应
一、实验目的
通过仿真实验掌握利用相关分析法辨识脉冲响应的原理和方法。 二、实验原理
下图为本实验的原理框图。过程传递函数为)(s G ,其中Sec 26T Sec,3812021..,===T K ;)()(k z k u 和分别为过程的输入和输出变量;)(k v 为过程测量白噪声,服从正态分布,均值为零,方差为2v σ,记作
),(~)(20v N k v σ;)(k g 0为过程的脉冲响应理论值,)(ˆ
k g 为过程脉冲响应估
计值,)(~k g
为过程脉冲响应估计误差。 过程的输入驱动采用M 序列,输出受到白噪声)(k v 的污染。根据过程
的输入和输出数据{})(),(k z k u ,利用相关分析算法估计出过程的脉冲响应值)(ˆ
k g ,并与过程脉冲响应理论值)(k g 0比较,得到过程脉冲响应估计误
差值)(~k g
,当∞→k 时,应该有0→)(~k g 。
三、实验步骤
(1) 掌握相关分析辨识方法的基本原理。 (2) 设计实验方案。 (3) 编制实验程序。
(4) 调试程序,研究实验问题,记录数据。
k g =)(ˆ]
2
T t k /∆
(5) 分析实验结果,完成实验报告。 四、实验报告
(1) 实验对象及参数
对于传递函数212111
11T s T s T T K s G //)(++=
初始数据为:K=200,T1=10,T2 = 8,T=1 (2) 程序代码: a.主程序如下:
function correlationAnalysis %数据初始化 K=200; T1=10; T2=8; a=1;
系统辨识综述
系统辨识课程综述
作者姓名:王瑶
专业名称:控制工程
班级:研硕15-8班
系统辨识课程综述
摘要
系统辨识是研究建立系统数学模型的理论与方法。虽然数学建模有很长的研究历史,但是形成系统辨识学科的历史才几十年在这短斩的几十年里,系统辨识得到了充足的发展,一些新的辨识方法相继问世,其理论与应用成果覆盖了自然科学和社会科学的各个领域。而人工神经网络的系统辨识方法的应用也越来越多,遍及各个领域。本文简单介绍了系统辨识的基本原理,系统辨识的一些经典方法以及现代的系统辨识方法,其中着重介绍了基于神经网络的系统辨识方法:首先对神经网络系统便是方法与经典辨识法进行对比,显示出其优越性,然后再通过对改进后的算法具体加以说明,最后展望了神经网络系统辨识法的发展方向。
关键字:系统辨识;神经网络;辨识方法
0引言
辨识、状态估计和控制理论是现代控制理论三个相互渗透的领域。辨识和状态估计离不开控制理论的支持,控制理论的应用又几乎不能没有辨识和状态估计技术。随着控制过程复杂性的提高,控制理论的应用日益广泛,但其实际应用不能脱离被控对象的数学模型。然而在大多数情况下,被控对象的数学模型是不知道的,或者在正常运行期间模型的参数可能发生变化,因此利用控制理论去解决实际问题时,首先需要建立被控对象的数学模型。所以说系统辨识是自动化控制的一门基础学科。
图1.1 系统辨识、控制理论与状态估计三者之间的关系
随着社会的进步 ,越来越多的实际系统变成了具有不确定性的复杂系统 ,经典的系统辨识方法在这些系统中应用 ,体现出以下的不足 :
(1) 在某些动态系统中 ,系统的输入常常无法保证 ,但是最小二乘法的系统辨
系统辨识的常用方法
系统辨识的常用方法
系统辨识是根据系统的输入输出时间函数来确定描述系统行为的数学模型,是现代控制理论中的一个分支。对系统进行分析的主要问题是根据输入时间函数和系统的特性来确定输出信号。
传统的系统辨识方法
(1)脉冲响应
脉冲响应一般是指系统在输入为单位冲激函数时的输出(响应)。对于连续时间系统来说,冲激响应一般用函数h(t)来表示。对于无随机噪声的确定性线性系统,当输入信号为一脉冲函数δ(t)时,系统的输出响应 h(t)称为脉冲响应函数。辨识脉冲响应函数的方法分为直接法、相关法和间接法。
①直接法:将波形较理想的脉冲信号输入系统,按时域的响应方式记录下系统的输出响应,可以是响应曲线或离散值。②相关法:由著名的维纳-霍夫方程得知:如果输入信号u(t)的自相关函数R(t)是一个脉冲函数kδ(t), 则脉冲响应函数在忽略一个常数因子意义下等于输入输出的互相关函数,即
h(t)=(1/k)Ruy(t)。实际使用相关法辨识系统的脉冲响应时,常用伪随机信号作为输入信号,由相关仪或数字计算机可获得输入输出的互相关函数Ruy(t),因为伪随机信号的自相关函数 R(t)近似为一个脉冲函数,于是
h(t)=(1/k)Ruy(t)。这是比较通用的方法。也可以输入一个带宽足够宽的近似白噪声信号,得到h(t)的近似表示。③间接法:可以利用功率谱分析方法,先估计出频率响应函数H(ω), 然后利用傅里叶逆变换将它变换到时域上,于是便得到脉冲响应h(t)。
(2)最小二乘法
最小二乘法(LS)是一种经典的数据处理方法, 但由于最小二乘估计是非一致的、有偏差的, 因而为了克服它的不足, 形成了一些以最小二乘法为基础的辨识方法:广义最小二乘法(GLS)、辅助变量法(IVA)和增广矩阵法(EM), 以及将一般的最小二乘法与其它方法相结合的方法,有相关分析———最小二乘两步法(COR -LS)和随机逼近算法。
脉冲响应和单位脉冲响应
脉冲响应和单位脉冲响应
脉冲响应(Impulse Response)和单位脉冲响应(Unit Impulse Response)是信号处理中常用的概念。在本文中,我们将详细讨论这两个概念的含义、应用以及它们在信号处理中的作用。
脉冲响应函数通常用h(t)表示,其中t表示时间。脉冲响应函数可以是连续时间的,也可以是离散时间的,分别对应于连续时间系统和离散时间系统。脉冲响应函数描述了系统对单位脉冲信号的时域响应特性,包括振幅和相位的变化。
在信号处理中,脉冲响应函数是非常重要的,它可以用来计算系统对任意输入信号的响应。通过将输入信号与脉冲响应函数进行卷积运算,可以得到系统的输出信号。这个过程可以用数学公式表示为:y(t) = x(t) * h(t)
其中,x(t)表示输入信号,y(t)表示输出信号,*表示卷积运算。通过脉冲响应函数,我们可以了解系统对不同频率的输入信号的响应特性,从而分析系统的滤波性能和频率响应。
单位脉冲响应是脉冲响应的一种特殊情况,它是一个幅度为1、持续时间极短的单位脉冲信号。单位脉冲响应函数通常用δ(t)表示,在连续时间系统中,δ(t)表示连续时间单位脉冲信号;在离散时间系统中,δ(n)表示离散时间单位脉冲信号。单位脉冲响应函数描述了
系统对单位脉冲信号的响应特性。
单位脉冲响应函数在信号处理中的应用非常广泛。通过将输入信号与单位脉冲响应函数进行卷积运算,可以得到系统的输出信号。由于单位脉冲信号是一个理想的信号,它包含了所有频率的成分,因此通过单位脉冲响应函数可以分析系统的频率响应,了解系统对不同频率的输入信号的响应特性。
系统辨识第二章2
系统辨识:
模型类 输入输出数据 等价准则
数学模型分类:
① 静态与动态模型
② 线性与非线性模型 ③ 参数与非参数模型 ④ 确定与随机模型 ⑤ 连续时间模型与离散时间模型 ⑥ 定常模型与时变模型 ⑦ 时间域模型与频率域模型
A( z 1 ) y(k ) D( z 1 ) (k )
④ 自回归(AR)模型
(2-9)
A( z 1 ) y(k ) (k )
⑤ 滑动平均(MA)模型
(2-10)
y(k ) D( z 1 ) (k )
⑥ Box-Jenkins模型(简称BJ模型)
(2-11)
B( z 1 ) C ( z 1 ) y (k ) u (k ) (k ) 1 1 F (z ) D( z )
假定 u(t ) 和 y(t ) 被一个采样周期为 T 的采样器周期性采样,且设
T 足够小,逐段常值逼近可将 u (t ), y(t ) 和 g (t ) 用阶梯信号近似
代替:
u(t )
kT
T
(k 1)T
u (t ) u (kT ) y (t ) y(kT ) kT t (k 1)T g (t ) g (kT ) k 0,1,2,
1)从输入 u(t ) 和输出 y(t ) 求脉冲响应 g (t )
系统辨识实验报告
一、相关分析法
(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}。程序如下:
过程仿真
得到理论输出数据()z k
计算脉冲响应估计值
计算互相关函数,得到脉冲响应估计值
系统辨识综述
系统辨识课程综述
作者姓名:王瑶
专业名称:控制工程
班级:研硕15-8班
系统辨识课程综述
摘要
系统辨识是研究建立系统数学模型的理论与方法。虽然数学建模有很长的研究历史,但是形成系统辨识学科的历史才几十年在这短斩的几十年里,系统辨识得到了充足的发展,一些新的辨识方法相继问世,其理论与应用成果覆盖了自然科学和社会科学的各个领域。而人工神经网络的系统辨识方法的应用也越来越多,遍及各个领域。本文简单介绍了系统辨识的基本原理,系统辨识的一些经典方法以及现代的系统辨识方法,其中着重介绍了基于神经网络的系统辨识方法:首先对神经网络系统便是方法与经典辨识法进行对比,显示出其优越性,然后再通过对改进后的算法具体加以说明,最后展望了神经网络系统辨识法的发展方向。
关键字:系统辨识;神经网络;辨识方法
0引言
辨识、状态估计和控制理论是现代控制理论三个相互渗透的领域。辨识和状态估计离不开控制理论的支持,控制理论的应用又几乎不能没有辨识和状态估计技术。随着控制过程复杂性的提高,控制理论的应用日益广泛,但其实际应用不能脱离被控对象的数学模型。然而在大多数情况下,被控对象的数学模型是不知道的,或者在正常运行期间模型的参数可能发生变化,因此利用控制理论去解决实际问题时,首先需要建立被控对象的数学模型。所以说系统辨识是自动化控制的一门基础学科。
图1.1 系统辨识、控制理论与状态估计三者之间的关系
随着社会的进步,越来越多的实际系统变成了具有不确定性的复杂系统,
经典的系统辨识方法在这些系统中应用,体现出以下的不足:
(1) 在某些动态系统中,系统的输入常常无法保证,但是最小二乘法的系统辨识法一般要求输入信号已知,且变化较丰富。
3.1传递函数的时域辨识
M
M (1)
M (0)
M (N 2)
M (N 1) M (N 2)
M (0)
R yM
1 N
MY
于是有
2 1 1
g
1 a2 (N 1)
1
2
1 MY
1 1 2
利用上式可以在计算机上离线计算,一次求得系统脉冲响应的N个离散值
3. 用M序列作为输入信号辨识脉冲响应的步骤
1)估计系统过渡过程时间Ts和系统的最高工作频率fmax,作为选择M序列
的传递函数的阶次 ,其关系见表1。
一般来说,二阶对象满足: 0.32 t1 t2 0.46
因为:
t1 t2 0.32 T2 0,
t1 t2 0.46 T2 T1
二阶环节正是位于这两种情况之间。
表1
高阶惯性对象
(Ts
1 1)n
中阶数n与比值t1/t2的关系
n
t1/t2
1
0.32
2
0.46
由离散的Wiener-Hopf方程可得
N 1
RyM ( ) gˆ ( j)RM (t j)t j0
记
g(0)
g
g(1)
,
RyM (0)
R yM
RyM (1)
g(N 1)
RyM (N 1)
RM (0)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
利用相关分析法辨识脉冲响应
1 生成输入数据和噪声
用M 序列作为辨识的输入信号,噪声采用标准正态分布的白噪声。 生成白噪声时,首先利用乘同余法生成U[0,1]均匀分布的随机数,再利用U[0,1]均匀分布的随机数生成标准正态分布的白噪声。白噪声循环周期为
15232768=。 2 过程仿真
模拟过程传递函数)(s G ,获得输出数据y(k)。)(s G 采取串联传递函数仿真,
2
12111
11)(T s T s T T K s G ++=
,用M 序列作为辨识的输入信号。()G s 采样时间0T 设为
1Sec ,12120, 8.3Sec, 6.2Sec K T T ===
(1) 惯性环节
其中,T 为惯性环节的时间常数,K 为惯性环节的静态放大倍数。若采样时
间记作0T ,则惯性环节的输出可写成:
[]
011111000T k u k u T e T TK k u e TK k y e k y T T T T T T )()()
)()
()()()(///--+-+--+-=---
(2) 传递函数()G s 仿真(串联)
21211111T s T s T T K s G //)(++=
令112
K
K T T =,则()G s 的表达框图为:
[]
011111000T k u k u T e T TK k u e TK k y e k y T
T T T T T )()()
)()
()()()(///--+-+--+-=---
编程语句可写成:
[][][][]};
);()();()();()(;
/)()(*)(**)(*)(*)(*)(;/)()(*)(***)(*)(**)(*)({)
;;(;
)(;)();/();/();*/(k y k y k x k x k u k u T k x k x T E T T k x E T k y E k y T k u k u T E T K T k u E K T k x E k x k k k y x T T E T T E T T K K =-=-=---+-+--+-=--+-+--+-=++<===-=-==11111111111112521for 0000EXP EXP 002222220011111111202101211
3、白噪声生成
● 利用乘同余法生成U[0,1]均匀分布的随机数
)
(,)(mod )
(,,],[~)(mod ,奇数循环周期其中118317923276821002151=====⎪⎩⎪⎨⎧==-+x A M U M
x M Ax x k i i i i ξ
● 利用U[0,1]均匀分布的随机数生成正态分布的白噪声
)
,(~)(212106v i i v N k v σξσ⎪⎭⎫
⎝⎛-=∑= 其中,标准差v σ分别取0,0.1,0.5。 ● 编程语句
};
);.(*};
);();;
*{);;(;
{)
,;(06FLOAT ,MOD(121for 02521for -=+===++<==++<=ksai Sigm a v(k)xi/M ksai ksai M xi xi xi A xi i i i ksai k k k 4、M 序列生成
● 用M 序列作为辨识的输入信号,N 序列的循环周期取62163P N =-=,时
钟节拍1Sec t ∆=,幅度1a =,逻辑“0”为a,逻辑“1”为-a ,特征多项式自选,如65()1F s s s =⊕⊕。
● 生成M 序列的结构图
● 编程语句
};
;)()(;)()(};
);()({);;(;)()();
()()({),;(a k u M a k u M i M i M i i P i for M M M M M k k k -======-=-->====+=++<=then 10if then 00if 1000then 20if 2102521for 5、互相关函数的计算
∑++=-=
P
P N r N i P
Mz i z k i u rN k R )()()()(11
1
其中,r 为周期数,1P i N =+表示计算互相关函数所用的数据是从第二个周期开始的,目的是等过程仿真数据进入平稳状态。 6、c 的补偿
补偿量c 应取(1)Mz P R N --,不能取()Mz P R N -。因为()Mz R k 是周期函数,则有()(0)Mz P Mz R N R =,故不能取()Mz P R N -。 7、计算脉冲响应估计值
● 脉冲响应估计值 []2
ˆ()()(1)P
Mz P N g
k R k c N a t
=++∆ ● 脉冲响应理论值[]
21//2
10)(T t k T t k e e T T K
k g ∆-∆---=
● 脉冲响应估计误差
()()∑∑==-=
p
p
N k N k g k g k g
k g
1
2
01
2
)()(ˆ)(δ
8 源程序清单
8.1 均匀分布随机数生成函数
function sita=U(N)
%生成N个[0 1]均匀分布随机数
A=179; x0=11; M=2^15;
for k=1:N
x2=A*x0;
x1=mod(x2,M);
v1=x1/(M+1);
v(:,k)=v1;
x0=x1;
end
sita=v;
end
8.2 正态分布白噪声生成函数
function v=noise(aipi)
%生成正态分布N(0,sigma)
sigma=1; %标准差
for k=1:length(aipi)
ksai=0;
for i=1:12
temp=mod(i+k,length(aipi))+1;
ksai=ksai+aipi(temp);
end
v(k)=sigma*(ksai-6);
end
end
8.3 M序列生成函数
function [Np r M]=createM(n,a)
%生成长度为n的M序列,周期为Np,周期数为r x=[1 1 1 1 1 1]; %初始化初态
for i=1:n
y=x;
x(2:6)=y(1:5);
x(1)=xor(y(5),y(6));
U(i)=y(6);
end
M=U*a;