• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

MATLAB信号与系统分析(三)——连续信号与系统的复频域分析及MATLAB实现 ...

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

一、系统的拉普拉斯变换和反变换

1、MATLAB函数

F=laplace(f)  %求拉氏变换
f=ilaplace(F) %求拉氏反变换

2、例子

clear all;clc;close all
f=sym(\'exp(-t)*sin(a*t)*heaviside(t)\')
F=laplace(f)  %求拉氏变换
F=sym(\'s^2/(s^2+1)\')
f=ilaplace(F) %求拉氏反变换

 

二、利用部分分式展开求解拉氏反变换(数学表达式):

1、MATLAB函数

[r,p,k]=residue(num,den)
%r为所得部分分式展开式的系数向量
%p为极点
%k为直流分量

2、例子

%shiyan3_2 用部分分式展开法求解拉氏反变换
clear all;clc;close all
num=[1 2];%分母多项式的系数向量,从高次幂往低次幂排列
den=[1 4 3 0];%分子多项式的系数向量,从高次幂往低次幂排列,不要忘记该补零的补零值
[r,p,k]=residue(num,den); %用esidue函数进行展开%
f=0;
syms t;
for i=1:length(p)
    f=f+r(i)*exp(p(i)*t);
end
f

 

三、 系统的零极点分布及其稳定性

1、稳定性的条件,系统的极点位于零极点图的左半平面。

2、利用matlab计算h(s)的零极点并分析系统稳定性。

3、画极点的例子

%shiyan3_3 求H(s)=(s-1)/(s^2+2s+2)的零极点及其分布图

%采用roots和plot函数
clear all ; clc; close all;
b=[1,-1];
a=[1 2 2];
zs=roots(b);ps=roots(a);
figure(1)
plot(real(zs),imag(zs),\'o\',real(ps),imag(ps),\'kx\',\'markersize\',12);
axis([-2,2,-2,2]);grid on;legend(\'零点\',\'极点\')

%利用pole和zero函数
num=[1,-1];
den=[1,2,2];
H = tf(num,den);%采用tf函数获得LTI系统模型sys
zs=zero(H);ps=pole(H);
figure(2)
plot(real(zs),imag(zs),\'o\',real(ps),imag(ps),\'kx\',\'markersize\',12);
axis([-2,2,-2,2]);grid on;legend(\'零点\',\'极点\')

%采用pzmap函数
num=[1,-1];
den=[1,2,2];
H = tf(num,den);%采用tf函数获得LTI系统模型sys
figure(3)
pzmap(H);

%采用tf2zp和zplane函数
A=[1,2,2];
B=[1,-1];
figure(4)
[z,p]=tf2zp(B,A)
zplane(z,p)

 

4、计算h(s)的零极点并分析系统稳定性

 

四、系统的零极点分布与系统冲激响应时域特性(P294)

1、例子

clear all;clc;close all;

a=[1,1,16.25];
b=[1];
impulse(b,a,5)

 

五、连续系统的频率响应

1、MATLAB提供了专门对连续系统频率响应H(jw)进行分析的函数freqs(),该函数可以求出系统频率响应的数值解,并可绘出系统的幅频和相频响应曲线

2、例子:

clear all;clc;close all;

b=[1];
a=[0.08 0.4 1];
[h,w]=freqs(b,a,100)
h1=abs(h);     %求幅频
h2=angle(h);    %求相频
figure(1)
subplot(211);
plot(w,h1);grid,xlabel(\'角频率(W)\');ylabel(\'幅度\');title(\'H(jw)的幅频特性\');
subplot(212);
plot(w,h2*180/pi);grid,xlabel(\'角频率(w)\');ylabel(\'相位(度)\');title(\'H(jw)的相频特性\');
figure(2)
freqs(b,a)

 

3、由连续系统零极点分布分析系统的频率特性

由连续系统零极点分布求系统的频率特性的步骤:

定义包含系统所有零点&极点的行向量z&列向量y

定义绘制系统频率响应曲线的频率起始值f1&终止值f2、频率取样间隔k(频率的变化步长),并产生频率等分点向量f;

求出系统所有零点&极点到这些等分点的距离;

l求出系统所有零点&极点到这些等分点的矢量的相角;

根据(1)式&(2)式求出f1到f2频率范围内各频率等分点的 & 的值

绘制f1到f2频率范围内的幅频响应&相频响应曲线

function pz_plxy(f1,f2,k,p,z)

%根据系统零极点分布绘制系统频率响应曲线程序
%f1、f2:绘制频率响应曲线的频率范围(即频率起始和终止点,单位为赫兹)
%p、z:系统函数极点和零点位置行向量
%k:绘制频率响应曲线的频率取样间隔

p=p\';   %变成列向量
z=z\'; 

f=f1:k:f2;                                    %定义绘制系统频率响应曲线的频率范围
w=f*(2*pi);
y=i*w; %虚数轴上

n=length(p);
m=length(z);

if n==0                                            %如果系统无极点
   yq=ones(m,1)*y; 
   vq=yq-z*ones(1,length(w));
   bj=abs(vq);
   bw=angle(vq);
   ai=1;
   aw=0;
elseif m==0                                    %如果系统无零点
   yp=ones(n,1)*y;
   vp=yp-p*ones(1,length(w));
   aw=angle(vp);
   ai=abs(vp);
   bj=1;
   bw=0;
else 
   yp=ones(n,1)*y;
   yq=ones(m,1)*y;
   vp=yp-p*ones(1,length(w));
   vq=yq-z*ones(1,length(w));
   ai=abs(vp);
   aw=angle(vp);
   bj=abs(vq);
   bw=angle(vq)
end

figure(1)
Hw=prod(bj,1)./prod(ai,1);
plot(f,Hw);
title(\'   系统幅频响应曲线\')
xlabel(\' 频率w(单位:赫兹)\')
ylabel(\'H(jw)\')

figure(2)
Anglew=sum(bw,1)-sum(aw,1);
plot(f,Anglew);
title(\'   系统相频响应曲线\')
xlabel(\' 频率w(单位:rad)\')
ylabel(\'angle(jw)\')

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
拉普拉斯变换的Matlab求解方法发布时间:2022-07-18
下一篇:
Matlab子函数如何进行单步调试发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap