MATLAB信号与系统

àì夳堔傛蜴生んèń 2023-10-04 15:46 155阅读 0赞

目录

  • 1.基本信号的MATLAB表示
    • 1.1.指数信号
    • 1.2.指数序列
    • 1.3.正弦型信号
    • 1.4.抽样函数Sa(t)
    • 1.5.矩形脉冲函数
    • 1.6.三角波脉冲信号
    • 1.7.单位采样序列
    • 1.8.单位阶跃序列
  • 2.信号基本运算的MATLAB实现
    • 2.1.信号的尺度变换、翻转、时移(平移)
    • 2.2.信号的相加与相乘
    • 2.3.离散序列的差分与求和
    • 2.4.连续信号的微分与积分
  • 3.利用MATLAB对LTI系统进行分析
    • 3.1.连续时间系统零状态响应的求解
    • 3.2.连续系统冲激响应和阶跃响应求解
  • 4.利用MATLAB对DTS系统进行分析
    • 4.1.离散时间系统单位脉冲响应的求解
    • 4.2.离散卷积的计算
  • 5.3/4案例分析
    • 1.零状态响应
    • 2.冲激响应
    • 3.滑动平均系统的响应
    • 4.求单位脉冲响应
    • 5.计算x[k]* y[k]并画出卷积结果
  • 6.利用MATLAB进行信号的频域分析
    • 6.1.画出图示周期三角波信号的频谱
    • 6.2.用数值积分分析非周期信号频谱
      • 6.2.1.用数值方法近似计算三角波信号的频谱
  • 7.利用MATLAB进行系统频域分析
    • 7.1.连续系统频率响应的计算
    • 7.2.离散系统频率响应的计算
  • 8.利用MATLAB进行连续系统的复频域分析
    • 8.1.部分分式展开的MATLAB实现
    • 8.2.H(s)的零极点与系统特性的MATLAB计算
  • 9.利用MATLAB进行离散系统的z域分析
    • 9.1.部分分式展开的MATLAB实现
    • 9.2.H(z)的零极点与系统特性的MATLAB计算

1.基本信号的MATLAB表示

1.1.指数信号

  1. %指数信号A*exp(a*t)
  2. t = 0:0.1:10;
  3. A = 1;
  4. a = -0.4;
  5. ft = A * exp(a *t );
  6. plot(t,ft)

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70

1.2.指数序列

  1. %指数序列b^k使用.^实现
  2. k = 1:0.1:10;
  3. b = 3;
  4. ft1 = b.^k;
  5. plot(ft1)

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 1

1.3.正弦型信号

注意信号是弧度制(sin)或角度值(sind)

  1. %正弦信号sin,sind
  2. m = 0:0.01:2*pi;
  3. n = 0:1:360;
  4. ft2 = sin(m);
  5. ft3 = sind(n);
  6. figure(3)
  7. subplot(2,1,1)
  8. plot(ft2)
  9. title('弧度制')
  10. subplot(2,1,2)
  11. plot(ft3)
  12. title('角度制')

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 2

1.4.抽样函数Sa(t)

Sinc(t)

  1. clear all
  2. clc
  3. t = -10:0.01:10;
  4. y = sinc(t);
  5. plot(t,y);
  6. xlabel('时间/s');ylabel('振幅'); title('抽样函数')

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 3

1.5.矩形脉冲函数

rectpuls(t,width)

产生一个幅值为1,宽度为2,相对于t=0点左右对称的矩形波信号,该函数的横坐标范围由向量t决定,是以t=0为中心向左右各展开width/2的范围,width的默认值为1
ylim([yl yr]);:限定y轴上限值,yl:下限,yr:上限
axis( [xmin xmax ymin ymax] ):设置当前坐标轴 x轴 和 y轴的限制范围

  1. %矩形脉冲
  2. width=2;
  3. t=-2:0.001:3;
  4. ft=rectpuls(t,width);
  5. plot(t,ft)
  6. %ylim([-1 2])
  7. axis([-2,2,-1,2])

20210608125243116.png

1.6.三角波脉冲信号

y=tripuls(T, w, s)

T是一个数组,表示信号时间
w是三角波的宽度(默认值为1)
s是三角波是斜率(-1<s<1)

  1. %三角波脉冲
  2. t=-3:0.001:3;
  3. ft1=tripuls(t,4,0);
  4. ft2=tripuls(t,4,1);
  5. subplot(2,1,1)
  6. plot(t,ft1)
  7. subplot(2,1,2)
  8. plot(t,ft2)

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 4

1.7.单位采样序列

直接生成:

  1. %单位采样序列
  2. k=-50:50;
  3. delta=[zeros(1,50),1,zeros(1,50)];
  4. stem(k,delta)

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 5

函数生成:

  1. function [f,k]=unitimpuls(k0,k1,k2)
  2. %产生 f[k]=delta(k-k0);
  3. %k1<=k<=k2
  4. k=k1:k2;
  5. f=(k-k0)==0;
  6. end
  7. k0 =0;k1=-50;k2=50;
  8. [f,k]=unitimpuls(k0,k1,k2);
  9. stem(k,f)

2021060813464235.png

1.8.单位阶跃序列

直接生成:

  1. %单位阶跃序列
  2. k=-50:50;
  3. uk=[zeros(1,50), ones(1,51)];
  4. stem(k,uk)

v

函数生成:

  1. function [f,k] = unitstep(k0,k1,k2)
  2. %产生 f[k]=u(k-k0);k1<=k<=k2
  3. k=k1:k2;
  4. f=(k-k0)>=0;
  5. end
  6. k0=0;k1=-50;k2=50;
  7. [f,k]=unitstep(k0,k1,k2);
  8. stem(k,f)

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 6

2.信号基本运算的MATLAB实现

2.1.信号的尺度变换、翻转、时移(平移)

压缩: 横坐标*n(n>1压缩,n<1扩展)
翻转: 横坐标*-1
平移: 横坐标+-n(左+右-)

  1. %信号的尺度变换、翻转、时移(平移)
  2. t=-4:0.001:4;
  3. ft=tripuls(t,4,0.5); % 原始信号
  4. subplot(2,2,1); plot(t,ft); title('x(t)')
  5. ft1=tripuls(2*t,4,0.5); % 压缩
  6. subplot(2,2,2); plot(t,ft1); title('x(2t)')
  7. ft2=tripuls(-t,4,0.5); % 翻转
  8. subplot(2,2,3); plot(t,ft2); title('x(-t)')
  9. ft3=tripuls(t+1,4,0.5); % 平移
  10. subplot(2,2,4); plot(t,ft3); title('x(t+1)')

2.2.信号的相加与相乘

相加: +
相乘: .*

在这里插入图片描述

  1. %绘制信号波形
  2. t=0:0.01:8;
  3. A=1; a=-0.4;
  4. w0=2*pi;phi=0;
  5. ft1=A*exp(a*t).*sin(w0*t+phi);
  6. plot(t,ft1)

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 7

2.3.离散序列的差分与求和

差分: y=diff(f);

y = [f(2)-f(1) f(3)-f(2) … f(m)-f(m-1)]

求和: y=sum(f(k1:k2))

y = f(k1)+f(k1+1)+…+f(k2)

2.4.连续信号的微分与积分

微分: y=diff(f)/h;

h为数值计算所取时间间隔

定积分: integral(function_handle,a,b);

function_handle被积函数句柄,a和b定积分区间

例子: 已知三角波x(t),画出其微分与积分的波形

  1. %已知三角波x(t),画出其微分与积分的波形
  2. % 原始信号
  3. h=0.01;
  4. t=-4:h:4;
  5. ft=tripuls(t,4,0.5);
  6. subplot(2,1,1);
  7. plot(t,ft);
  8. title('x(t)');
  9. grid on
  10. % 微分
  11. y1=diff(ft)*1/h;
  12. subplot(2,2,3)
  13. plot(t(1:length(t)-1),y1);
  14. title('dx(t)/dt')
  15. grid on
  16. % 积分
  17. for x=1:length(t)
  18. y2(x)=integral(@(t) tripuls(t,4,0.5),t(1),t(x));
  19. end
  20. subplot(2,2,4)
  21. plot(t,y2)
  22. title('\intx(t)dt')
  23. grid on

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 8

3.利用MATLAB对LTI系统进行分析

线性时不变系统(LTI): 参数不随时间改变,且满足叠加性时不变性的系统

分析方法: 时域方法或变换域方法,如傅立叶变换、拉普拉斯变换和Z变换
系统分类: 连续时间系统和离散时间系统
描述方法: 常系数微分方程、系统的传递函数或状态方程

3.1.连续时间系统零状态响应的求解

y = lsim(sys,x,t)

t: 计算系统响应的抽样点向量
x: 系统输入信号向量
lsim: 针对线性时不变模型,给定任意输入,得到任意输出
sys: LTI系统模型

  1. sys = tf(b,a)
  2. b和a分别为微分方程右端(分子)和左端(分母)各项的系数向量

3.2.连续系统冲激响应和阶跃响应求解

冲激响应: y = impulse(sys,t)
阶跃响应: y = step(sys,t)

4.利用MATLAB对DTS系统进行分析

4.1.离散时间系统单位脉冲响应的求解

单位脉冲响应: h = impz(b,a,k)

sys: LTI系统模型
t: 计算系统响应的抽样点向量
k: 输出序列的取值范围
b, a: 分别是差分方程右、左端的系数向量

4.2.离散卷积的计算

离散卷积: c = conv(a,b)

a,b: 待卷积两序列的向量表示

conv函数也可用于计算两个多项式的积

5.3/4案例分析

1.零状态响应

求系统 y”(t)+2y’(t)+100y(t)=10x(t) 的零状态响应,已知x(t)=sin(2pt) u(t)

  1. %连续时间系统零状态响应
  2. ts=0;te=5;dt=0.01;
  3. sys=tf([10],[1 2 100]);
  4. t=ts:dt:te;
  5. x=sin(2*pi*t);
  6. y=lsim(sys,x,t);
  7. plot(t,y);
  8. xlabel('Time(sec)')
  9. ylabel('y(t)')

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 9

  1. ts=0;te=5;dt=0.01;
  2. sys=tf([10],[1 2 100]);
  3. t=ts:dt:te;
  4. x=sin(2*pi*t);
  5. lsim(sys,x,t);
  6. grid on

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 10

2.冲激响应

求系统 y” (t)+2y ’ (t)+100y(t)=10x(t) 的冲激响应,已知x(t) =d (t)

  1. %连续时间系统的冲激响应
  2. ts=0;te=5;dt=0.01;
  3. sys=tf([10],[1 2 100]);
  4. t=ts:dt:te;
  5. y=impulse(sys,t);
  6. plot(t,y);
  7. xlabel('Time(sec)')
  8. ylabel('h(t)')

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 11

  1. ts=0;te=5;dt=0.01;
  2. sys=tf([10],[1 2 100]);
  3. t=ts:dt:te;
  4. impulse(sys,t)

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 12

3.滑动平均系统的响应

分析噪声干扰的信号x[k]=s[k]+d[k]通过M点滑动平均系统的响应
在这里插入图片描述
其中s[k]=(2k)0.9^k是原始信号,d[k]是噪声

  1. %离散时间系统零状态响应
  2. R =51 ; d = rand(1,R) - 0.5;
  3. k=0:R-1;
  4. s=2*k.*(0.9.^k); x=s+d;
  5. figure(1);
  6. plot(k,d,'r-.',k,s,'b--',k,x,'g-');
  7. M =5; b = ones(M,1)/M; a = 1;
  8. %滤除向量x中的数据,向量bx[k]、x[k-1]、…的系数,向量ay[k]、y[k-1]、…的系数
  9. y = filter(b,a,x);
  10. figure(2);
  11. plot(k,s,'b--',k,y,'r-');

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 13
watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 14

4.求单位脉冲响应

求系统y[k]+3y[k-1]+2y[k-2]=10x[k]的单位脉冲响应

  1. % 离散系统的单位脉冲响应
  2. k=0:10;
  3. a=[1 3 2];
  4. b=[10];
  5. h=impz(b,a,k);
  6. stem(k,h)

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 15

5.计算x[k]* y[k]并画出卷积结果

计算x[k]* y[k]并画出卷积结果,已知x[k]={1,2,3,4; k=0,1,2,3},y[k]={1,1,1,1,1; k=0,1,2,3,4}

  1. % 卷积
  2. x=[1,2,3,4];
  3. y=[1,1,1,1,1];
  4. z=conv(x,y);
  5. N=length(z);
  6. stem(0:N-1,z);

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 16

6.利用MATLAB进行信号的频域分析

频谱Fn一般为复数,可分别利用abs和angle函数获得其幅频特性和相频特性
x = abs(Cn)
y = angle(Cn)

周期信号的频谱Cn为离散信号,可以用stem画出其频谱图

6.1.画出图示周期三角波信号的频谱

在这里插入图片描述
周期信号的频谱为:
在这里插入图片描述

  1. N=8;
  2. %计算n=-N到-1Fourier系数
  3. n1= -N:-1;
  4. c1= -4*j*sin(n1*pi/2)/pi^2./n1.^2;
  5. %计算n=0时的Fourier系数
  6. c0=0;
  7. %计算n=1NFourier系数
  8. n2=1:N;
  9. c2= -4*j*sin(n2*pi/2)/pi^2./n2.^2;
  10. cn=[c1 c0 c2];
  11. n= -N:N;
  12. subplot(2,1,1);
  13. stem(n,abs(cn));ylabel('Cn的幅度');
  14. subplot(2,1,2);
  15. stem(n,angle(cn));
  16. ylabel('Cn的相位');
  17. xlabel('\omega/\omega0');

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 17

6.2.用数值积分分析非周期信号频谱

y = integral(function_handle,a,b)

计算非周期信号频谱
function_handle: 函数句柄
a,b: 定积分的下限与上限

6.2.1.用数值方法近似计算三角波信号的频谱

在这里插入图片描述
三角波表示为:
在这里插入图片描述
三角波信号频谱的理论值:X(jw)= Sa^2(w / 2)

  1. sf = @(t,w)(t>=-1 & t<=1).*(1-abs(t)).*exp(-j*w*t);
  2. % 三角脉冲信号傅里叶变换公式
  3. w=linspace(-6*pi,6*pi,512);
  4. N=length(w);X=zeros(1,N);
  5. % 数值积分计算频谱
  6. for k=1:N
  7. X(k)=integral(@(t) sf(t,w(k)),-1,1);
  8. end
  9. subplot(2,1,1);
  10. plot(w,real(X));title('')
  11. xlabel('\omega');ylabel('X(j\omega)');
  12. subplot(2,1,2);
  13. plot(w,real(X)-sinc(w/2/pi).^2);
  14. xlabel('\omega');title('计算误差');

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 19

7.利用MATLAB进行系统频域分析

7.1.连续系统频率响应的计算

H = freqs(b,a,w)

b: 分子多项式系数
a: 分母多项式系数
w: 需计算的H(jw)的抽样点(数组w中少需包含两个w的抽样点)
abs 幅频特性
angle 相频特性

例: 三阶归一化的Butterworth低通滤波器的系统函数为
在这里插入图片描述
画出|H(jw)| 和φ(w)

  1. w=linspace(0,5,200);
  2. b=[1];a=[1 2 2 1];
  3. h=freqs(b,a,w);
  4. subplot(2,1,1);
  5. plot(w,abs(h))
  6. grid on
  7. subplot(2,1,2);
  8. plot(w,angle(h))
  9. grid on

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 20

7.2.离散系统频率响应的计算

h = freqz(b,a,w)

b: 分子多项式系数
a: 分母多项式系数
w: 需计算的H(jw)的抽样点(数组w中少需包含两个w的抽样点)
abs 幅频特性
angle 相频特性

在这里插入图片描述

  1. b = 1;
  2. a1 = [1 -0.9];
  3. a2 = [1 0.9];
  4. w = linspace(0,2*pi,512);
  5. h1 = freqz(b,a1,w);
  6. h2 = freqz(b,a2,w);
  7. plot(w/pi,abs(h1),w/pi,abs(h2),':')
  8. legend('\alpha=0.9','\alpha=-0.9')

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 21

8.利用MATLAB进行连续系统的复频域分析

8.1.部分分式展开的MATLAB实现

[r,p,k] = residue(num,den)

num,den: 分别为X(s)分子多项式和分母多项式的系数向量
r: 部分分式的系数
p: 极点
k: 多项式系数(若为真分式,则k为零)

例: 用部分分式展开法求X(s)的反变换
在这里插入图片描述

  1. format rat %将结果数据以分数的形式输出
  2. num=[1 2];
  3. den=[1 4 3 0];
  4. [r,p]=residue(num,den)

20210609104205759.png

展开式:
在这里插入图片描述
反变换:
在这里插入图片描述

例: 用部分分式展开法求X(s)的反变换
在这里插入图片描述

  1. num=[2 3 0 5];
  2. den=conv([1 1],[1 1 2]);
  3. %将因子相乘的形式转换成多项式的形式
  4. [r,p,k]=residue(num,den)
  5. magr=abs(r) %求r的模
  6. angr=angle(r) %求r的相角

运行结果:
r =-2.0000 + 1.1339i, -2.0000 - 1.1339i, 3.0000
p =-0.5000 + 1.3229i, -0.5000 - 1.3229i, -1.0000
k =2
magr =2.2291, 2.2991, 3.0000
angr =2.6258, -2.6258, 0
展开式:
在这里插入图片描述
反变换:
在这里插入图片描述

8.2.H(s)的零极点与系统特性的MATLAB计算

r = roots(D)

计算多项式D(s)的根

[z,p,k] = tf2zp(b,a)

b、a: 分子多项式系数、分母多项式系数
z: 零点
p: 极点
k: 增益常数

pzmap(sys)

画出sys所描述系统的零极点图

例: 画出系统
20210609121644189.png
的零极点分布图,求其单位冲激响应h(t)和频率响应H(jw)

  1. num=[1];den=[1 2 2 1];
  2. sys=tf(num,den);
  3. poles=roots(den)
  4. figure(1);
  5. pzmap(sys);
  6. t=0:0.02:10;
  7. h=impulse(sys,t);
  8. figure(2);
  9. plot(t,h)
  10. title('Impulse Respone')
  11. [H,w]=freqs(num,den);
  12. figure(3);plot(w,abs(H))
  13. xlabel('\omega')
  14. title('Magnitude Respone')

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 22

  1. num=[1];den=[1 2 2 1];
  2. sys=tf(num,den);
  3. poles=roots(den)
  4. figure(1);pzmap(sys);
  5. figure(2)
  6. impulse(sys);
  7. figure(3)
  8. freqs(num,den)

在这里插入图片描述

9.利用MATLAB进行离散系统的z域分析

9.1.部分分式展开的MATLAB实现

[r,p,k] = residuez(num,den)

num、den: 分子多项式和分母多项式的系数向量
r: 部分分式的系数
p: 极点
k: 多项式系数,若为真分式,则k为零

例: 将X(z)用部分分式展开
20210609123528847.png

  1. num = [18];
  2. den = [18 3 -4 -1];
  3. [r,p,k] = residuez(num,den)

运行结果
r =0.3600 , 0.2400 , 0.4000
p =0.5000 , -0.3333 , -0.3333
k =[]
展开式:
在这里插入图片描述

9.2.H(z)的零极点与系统特性的MATLAB计算

[z,p,k] = tf2zpk(b,a)

b、a: 分子多项式和分母多项式的系数向量
z: 零点
p: 极点
k: 增益常数

zplane(b,a)

绘制零极点分布图

例: 画出系统
在这里插入图片描述
的零极点分布图,求其单位冲激响应h[k]和频率响应H(e^jΩ)

  1. b =[0 1 2 1];a =[1 -0.5 -0.005 0.3];
  2. figure(1);
  3. zplane(b,a);
  4. num=[0 1 2 1];
  5. den=[1 -0.5 -0.005 0.3];
  6. h=impz(num,den);
  7. figure(2);
  8. stem(h)
  9. xlabel('k')
  10. title('Impulse Respone')
  11. [H,w]=freqz(num,den);
  12. figure(3);
  13. plot(w/pi,abs(H))
  14. xlabel('Frequency \omega')
  15. title('Magnitude Respone')

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 24

  1. b =[0 1 2 1];a =[1 -0.5 -0.005 0.3];
  2. figure(1);
  3. zplane(b,a);
  4. num=[0 1 2 1];
  5. den=[1 -0.5 -0.005 0.3];
  6. figure(2);
  7. impz(num,den);
  8. figure(3);
  9. freqz(num,den);

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 25

例: 求出系统
在这里插入图片描述
的零极点的值,单位冲激响应和频率响应

  1. b=conv([1,-1],[2,3]); a=[1 -0.5 -0.3 0.5];
  2. [z,p1,k1]=tf2zpk(b,a)
  3. figure(1)
  4. zplane(b,a);
  5. figure(2)
  6. impz(b,a);
  7. figure(3)
  8. freqz(b,a)

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 26

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzU0MzU1MTcy_size_16_color_FFFFFF_t_70 27


发表评论

表情:
评论列表 (有 0 条评论,155人围观)

还没有评论,来说两句吧...

相关阅读

    相关 MATLAB语音信号处理系统GUI设计

    主要内容 运用matlab软件实现对声音的变声处理,利用离散付里叶变换进行频谱分析;设计数字滤波器组;通过时域和频域方法做出各种音效效果,实现变速(慢放、快放),变调(频

    相关 MATLAB语音信号处理系统

    一.设计任务及要求 1.1设计任务 作为智能计算机研究的主导方向和人机语音通信的关键技术,语音识别技 术一直受到各国科学界的广泛关注。以语音识别开发出的产品应用领域非常广泛

    相关 MATLAB语音信号处理系统GUI

    基于MATLAB的语音信号处理 【摘 要】 Matlab语音信号处理是指利用matlab软件对音频信号进行读取,并对音频信号进行采样分析及离散傅里叶变换,以方便对其在频域