信号与线性系统翻转课堂笔记20——系统函数与信号流图
The Flipped Classroom20 of Signals and Linear Systems
对应教材:《信号与线性系统分析(第五版)》高等教育出版社,吴大正著
一、要点
(1)了解信号流图的组成及其基本术语的含义;
(2,重点)掌握信号流图的化简方法(含梅森公式的用法),对于规范形式的信号流图,能够不经化简,直接写出其对应的系统函数或者微分/差分方程;
(3,重点)能够熟练完成各种系统模型的转换;
(4)了解系统直接实现、级联实现、并联实现的原理及其各自特点。
二、问题与解答
(*2)说明梅森公式的含义(并解释其中的前向通路、回路、不接触等概念)及其用法,并举例说明利用梅森公式,求解该信号流图对应的系统函数。
(*3)写出习题7.28所示信号流图对应的系统函数,总结由规范形式信号流图(系统框图)直接写出系统函数的方法。将题7.28图(b)中增益为3的支路反向,重新求该信号流图对应的系统函数。
(*4)下面给出的MATLAB程序,是针对不同的系统模拟结构,分析系统模型参数的误差(漂移)对系统特性的影响。首先设计(设计方法暂不要求掌握)了一个10阶的连续系统(滤波器),然后分别采用直接结构和级联结构进行系统模拟。在直接模拟时,改变了(用于模拟系统参数的误差或者漂移)系统分母多项式的一个系数(变化量1%);在级联模拟(每一级均为2阶系统,共5级)时,对每一级分母多项式的中间系数都进行了改变(变化量10%)。最后,绘制了系数改变前后的幅频响应和极点图。①看懂该程序,了解其中用到的一些MATLAB函数的功能和用法(系统设计部分除外),观察并理解程序运行的一些结果(包括各波形图和一些中间计算结果,如系统设计结果、级联结构描述矩阵sos的结构和含义);②尝试用不同的参数变化量,或者改变分母多项式的其他某一个或者多个参数,对比参数改变对两种模拟结构的系统特性的影响(即幅频响应和极点图的变化情况);③对所得结果进行总结分析,讨论:对于阶数比较高的系统,相对于直接结构,采用级联结构来进行系统模拟具有何优势?
clear;
%系统设计部分,暂不要求了解
wp=2*pi*3000;ws=2*pi*4000;rp=2;as=60;
[NN,wpo]=cheb1ord(wp,ws,rp,as,'s');
[B,A]=cheby1(NN,rp,wpo,'s') %设计结果
%设计结果中,B为系统函数分子多项式的系数向量,A为分母多项式的系数向量
length(A) %A向量的长度为11,即设计的系统是一个10阶的系统
%画出所设计系统的幅频响应(直接实现)
figure(1)
k=0:511;fk=0:10000/512:10000;wk=2*pi*fk;
Hk=freqs(B,A,wk);
plot(fk/1000,20*log10(abs(Hk)));grid on
xlabel('频率(kHz)');ylabel('幅度(dB)')
title('直接实现的幅频响应');
grid off
%画出所设计系统的极点图
figure(2)
zplane(1,A)
title('系统的极点分布');
A1=A;
A1(6)=0.99*A1(6); %微量改变分母多项式的一个系数
%画出系数改变之后系统的幅频响应(直接实现)
figure(3)
Hk=freqs(B,A1,wk);
plot(fk/1000,20*log10(abs(Hk)));grid on
xlabel('频率(kHz)');ylabel('幅度(dB)')
title('改变直接实现一个分母系数之后的幅频响应');
grid off
%画出系数改变之后系统的零极点图(直接实现)
figure(4)
zplane(1,A1)
title('改变直接实现一个分母系数之后的极点分布');
[sos,g]=tf2sos(B,A) %系统改为用5个二阶系统级联实现
sos(:,5)=0.9*sos(:,5);%改变级联结构中每一级分母多项式的一个系数(中间那个)
[B2,A2]=sos2tf(sos,g);%为了绘图方便,把改变系数之后的级联结构重新转换为直接结构
%画出系数改变之后系统的幅频响应(级联实现)
figure(5)
Hk=freqs(B2,A2,wk);
plot(fk/1000,20*log10(abs(Hk)));grid on
xlabel('频率(kHz)');ylabel('幅度(dB)')
title('改变级联实现各级分母系数之后的幅频特性');
grid off
%画出系数改变之后系统的零极点图(级联实现)
figure(6)
zplane(1,A2)
title('改变级联实现各级分母系数之后的极点分布');
(5)举例说明什么是信号流图的转置(必须给出互为转置的信号流图实例)?基于梅森公式,解释为什么互为转置的两个信号流图,它们所对应的系统函数是相同的。
1、系统框图和信号流图
LTI连续系统框图组成部分:数乘器(标量乘法器),加法器,积分器,积分器(零状态)
信号流图组成部分:结点和支路
信号流图的上半部分结构对应系统函数的分子部分和时域微分方程的右半部分(原因部分)
信号流图的下半部分结构对应系统函数的分母部分和时域微分方程的左半部分(结果部分)
讨论:
(1)
(2)
2、梅森公式
说明梅森公式的含义(并解释其中的前向通路、回路、不接触等概念)及其用法,并举例说明利用梅森公式,求解该信号流图对应的系统函数。
梅森公式:
例子:
3、由信号流图写出系统函数
写出习题7.28所示信号流图对应的系统函数,总结由规范形式信号流图(系统框图)直接写出系统函数的方法。将题7.28图(b)中增益为3的支路反向,重新求该信号流图对应的系统函数。
反向后,分子s前的系数由3变为-3。
4、系统模型误差对系统特性的影响
下面给出的MATLAB程序,是针对不同的系统模拟结构,分析系统模型参数的误差(漂移)对系统特性的影响。首先设计(设计方法暂不要求掌握)了一个10阶的连续系统(滤波器),然后分别采用直接结构和级联结构进行系统模拟。在直接模拟时,改变了(用于模拟系统参数的误差或者漂移)系统分母多项式的一个系数(变化量1%);在级联模拟(每一级均为2阶系统,共5级)时,对每一级分母多项式的中间系数都进行了改变(变化量10%)。最后,绘制了系数改变前后的幅频响应和极点图。①看懂该程序,了解其中用到的一些MATLAB函数的功能和用法(系统设计部分除外),观察并理解程序运行的一些结果(包括各波形图和一些中间计算结果,如系统设计结果、级联结构描述矩阵sos的结构和含义);②尝试用不同的参数变化量,或者改变分母多项式的其他某一个或者多个参数,对比参数改变对两种模拟结构的系统特性的影响(即幅频响应和极点图的变化情况);③对所得结果进行总结分析,讨论:对于阶数比较高的系统,相对于直接结构,采用级联结构来进行系统模拟具有何优势?
clear;
%系统设计部分,暂不要求了解
wp=2*pi*3000;ws=2*pi*4000;rp=2;as=60;
[NN,wpo]=cheb1ord(wp,ws,rp,as,'s');
[B,A]=cheby1(NN,rp,wpo,'s') %设计结果
%设计结果中,B为系统函数分子多项式的系数向量,A为分母多项式的系数向量
length(A) %A向量的长度为11,即设计的系统是一个10阶的系统
%画出所设计系统的幅频响应(直接实现)
figure(1)
k=0:511;fk=0:10000/512:10000;wk=2*pi*fk;
Hk=freqs(B,A,wk);
plot(fk/1000,20*log10(abs(Hk)));grid on
xlabel('频率(kHz)');ylabel('幅度(dB)')
title('直接实现的幅频响应');
grid off
%画出所设计系统的极点图
figure(2)
zplane(1,A)
title('系统的极点分布');
A1=A;
A1(6)=0.99*A1(6); %微量改变分母多项式的一个系数
%画出系数改变之后系统的幅频响应(直接实现)
figure(3)
Hk=freqs(B,A1,wk);
plot(fk/1000,20*log10(abs(Hk)));grid on
xlabel('频率(kHz)');ylabel('幅度(dB)')
title('改变直接实现一个分母系数之后的幅频响应');
grid off
%画出系数改变之后系统的零极点图(直接实现)
figure(4)
zplane(1,A1)
title('改变直接实现一个分母系数之后的极点分布');
[sos,g]=tf2sos(B,A) %系统改为用5个二阶系统级联实现
sos(:,5)=0.9*sos(:,5);%改变级联结构中每一级分母多项式的一个系数(中间那个)
[B2,A2]=sos2tf(sos,g);%为了绘图方便,把改变系数之后的级联结构重新转换为直接结构
%画出系数改变之后系统的幅频响应(级联实现)
figure(5)
Hk=freqs(B2,A2,wk);
plot(fk/1000,20*log10(abs(Hk)));grid on
xlabel('频率(kHz)');ylabel('幅度(dB)')
title('改变级联实现各级分母系数之后的幅频特性');
grid off
%画出系数改变之后系统的零极点图(级联实现)
figure(6)
zplane(1,A2)
title('改变级联实现各级分母系数之后的极点分布');
figure 创建图窗窗口,plot 画图,xlabel 标签,title 加标题,grid 显示或隐藏坐标区网格线
zplane
绘制离散时间系统的零极点图(连续:pzmap)
为什么可以用zplane?因为离散连续无区别
z平面(z,p)在当前地物窗口中绘制列向量z中指定的零和列向量p中指定的极点。符号“o”表示零,符号“x”表示极。该图包括供参考的单位圆。
如果z和p是矩阵,则zplane以不同的颜色绘制z和p列中的极点和零点。
Z平面(b,a),其中b和a是行向量,首先使用根来查找由分子系数b和分母系数a表示的传递函数的零和极点。
[hz,hp,ht]=zplane(\u)将句柄向量返回到零线hz和极线hp。ht是指向轴/单位圆线和文本对象的句柄向量,当存在多个零或极时,这些对象就会出现。
zplane(d)找到数字滤波器d表示的传递函数的零点和极点。使用designfilt根据频率响应规范生成d。零极点图显示在fvtool中。
[vz,vp,vk]=zplane(d)返回数字滤波器d对应的零(向量vz)、极点(向量vp)和增益(标量vk)。
sos2tf
将数字滤波器传递函数数据转换为二阶数据段形式
Convert digital filter second-order section data to transfer function form
[sos,g]=tf(直接)2sos(级联)(b,a,‘order’)指定sos中行的阶次,其中“order”是
2:to(方向性)
“向下”,对各部分进行排序,以便sos的第一行包含最靠近单元圆的极点
“向上”,对截面进行排序,使sos的第一行包含距离单位圆最远的极点(默认)
[sos,g]=tf2sos(b,a,‘order’,‘scale’)指定所有二阶截面的增益和分子系数的所需比例,其中“scale”为:
“无”,不应用缩放(默认)
“inf”,应用无穷范数缩放
“2”,应用2-范数缩放
将无穷范数缩放与向上排序结合使用,可将实现中的溢出概率降至最低。使用2-范数缩放和降阶将峰值舍入噪声降至最低。
freqs 模拟滤波器的频率响应
h=freqs(b,a,w)
返回由系数向量b和a指定的模拟滤波器的复频率响应。freqs在实向量w中指定的角频率(以rad/s为单位)下沿复平面中的虚轴评估频率响应,其中w是包含多个频率的向量。
[h,w]=频率(b,a,n)
使用n个频点来计算频率响应h,其中n是一个实的标量值。频率向量w是自动生成的,长度为n。如果省略n作为输入,则使用200个频率点。如果不需要返回生成的频率向量,可以使用形式h=freqs(b,a,n)仅返回频率响应h。
无输出参数的freqs在当前图形窗口中绘制幅值和相位响应与频率的关系。
freqs仅适用于实际输入系统和正频率。
(2)将A的大小改为原来的0.9倍,得出图7图8,并与之前的进行对比,如下图:
补充代码:
A3=A;
A3(6)=0.9*A3(6); %微量改变分母多项式的一个系数
%画出系数改变之后系统的幅频响应(直接实现)
figure(7)
Hk=freqs(B,A3,wk);
plot(fk/1000,20*log10(abs(Hk)));grid on
xlabel('频率(kHz)');ylabel('幅度(dB)')
title('改变直接实现一个分母系数之后的幅频响应');
grid off
%画出系数改变之后系统的零极点图(直接实现)
figure(8)
zplane(1,A3)
title('改变直接实现一个分母系数之后的极点分布');
幅频响应
图5为级联系统微调参数产生的结果,图3、图7为直接系统微调参数产生的结果,由此可见,在受到微小扰动导致参数值上下波动时,级联系统的幅频特性几乎与原幅频特性一致,而直接系统变化较大。
极点图
图6为级联系统微调参数产生的结果,图3、图7为直接系统微调参数产生的结果,由此可见,在受到微小扰动导致参数值上下波动时,级联系统的极点分布情况几乎与原极点分布情况一致,而直接系统变化较大。
(3)
对于阶数比较高的系统,相对于直接结构,采用级联结构来进行系统模拟,会增强系统的抗干扰能力,提高系统的鲁棒性。
原因:一阶二阶系统的零极点对多项式系数的变化不敏感。
5、信号流图的转置
举例说明什么是信号流图的转置(必须给出互为转置的信号流图实例)?基于梅森公式,解释为什么互为转置的两个信号流图,它们所对应的系统函数是相同的。
根据梅森公式,互为转置的两信号流图源点到汇点间第i条前向通路增益P_i不变且在去除与i条前向通路想接触的环路后,第i条前向通路特征行列式的余因子(△i)不发生改变,各路之间的关系也不改变,△也不变,因此系统函数H也不发生改变。
三、反思总结
暂无