教學課件-信號與系統(tǒng)實驗(MATLAB版)(黨宏社)_第1頁
教學課件-信號與系統(tǒng)實驗(MATLAB版)(黨宏社)_第2頁
教學課件-信號與系統(tǒng)實驗(MATLAB版)(黨宏社)_第3頁
教學課件-信號與系統(tǒng)實驗(MATLAB版)(黨宏社)_第4頁
教學課件-信號與系統(tǒng)實驗(MATLAB版)(黨宏社)_第5頁
已閱讀5頁,還剩609頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

一、實驗目的二、實驗原理三、涉及的MATLAB函數(shù)四、實驗內(nèi)容與方法五、實驗要求

六、思考題一、實驗目的

(1)了解連續(xù)時間信號的特點;

(2)掌握連續(xù)時間信號表示的向量法和符號法;

(3)熟悉MATLABPlot函數(shù)等的應用。

二、實驗原理

1.信號的定義

信號是隨時間變化的物理量。信號的本質(zhì)是時間的函數(shù)。

2.信號的描述

1)時域法

時域法是將信號表示成時間的函數(shù)f(t)來對信號進行描述的方法。信號的時間特性指的是信號的波形出現(xiàn)時間的先后,持續(xù)時間的長短,隨時間變化的快慢和大小,周期的長短等。

2)頻域(變換域)法

頻域法是通過正交變換,將信號表示成其它變量的函數(shù)來對信號進行描述的方法。一般常用的是傅里葉變換。信號的頻域特性包括頻帶的寬窄、頻譜的分布等。

信號的頻域特性與時域特性之間有著密切的關(guān)系。

3.信號的分類

按照特性的不同,信號有不同的分類方法。

(1)確定性信號:可以用一個確定的時間函數(shù)來表示的信號。

隨機信號:不可以用一個確定的時間函數(shù)來表示,只能用統(tǒng)計特性加以描述的信號。

(2)連續(xù)信號:除若干不連續(xù)的時間點外,每個時間點t上都有對應的數(shù)值的信號。

離散信號:只在某些不連續(xù)的時間點上有數(shù)值,其它時間點上信號沒有定義的信號。

(3)周期信號:存在T,使得等式f(t+T)=f(t)對于任意時間t

都成立的信號。

非周期信號:不存在使得等式f(t+T)=f(t)對于任意時間t都成立的信號。

絕對的周期信號是不存在的,一般只要在很長的時間內(nèi)信號滿足周期性就可以了。

(4)能量信號:總能量有限的信號。

功率信號:平均功率有限且非零的信號。信號的總能量計算公式為

信號的平均功率計算公式為

(5)奇信號:滿足等式f(t)=-f(-t)的信號。

偶信號:滿足等式f(t)=f(-t)的信號。三、涉及的MATLAB函數(shù)

1.plot函數(shù)

功能:在X軸和Y軸方向都按線性比例繪制二維圖形。

調(diào)用格式:

plot(x,y):繪出x對y的函數(shù)的線性圖。

plot(x1,y1,x2,y2,...):繪出多組x對y的線性曲線圖。

2.ezplot函數(shù)

功能:繪制符號函數(shù)在一定范圍內(nèi)的二維圖形。簡易繪制函數(shù)曲線。調(diào)用格式:

ezplot(fun):在[-2π,2π]區(qū)間內(nèi)繪制函數(shù)。

ezplot(fun,[min,max]):在[min,max]區(qū)間內(nèi)繪制函數(shù)。

ezplot(funx,funy):定義為同一曲面的函數(shù),默認的區(qū)間是[0,2π]。

3.sym函數(shù)

功能:定義信號為符號變量。

調(diào)用格式:

sym(fun):fun為所要定義的表達式。

4.subplot函數(shù)

功能:產(chǎn)生多個繪圖區(qū)間。

調(diào)用格式:

subplot(m,n,p):產(chǎn)生m行n列的繪圖區(qū)間的第p個繪圖區(qū)間。四、實驗內(nèi)容與方法

1.驗證性實驗

連續(xù)信號的表示方法有兩種:符號推理法與數(shù)值法。即連續(xù)信號的表示既可以用MATLAB提供的用于符號推理的符號數(shù)學工具箱(SymbolicMath)表示,也可將連續(xù)信號離散化后加以表示,下面就分別用這兩種方法表示基本連續(xù)信號。常用的連續(xù)信號有直流信號、正弦信號、單位階躍信號、單位門信號、單位沖激信號、符號函數(shù)、單位斜坡函數(shù)、單邊衰減指數(shù)信號、抽樣信號、隨機信號等。參考給出的程序并觀察產(chǎn)生信號的波形,還可以通過改變相關(guān)參數(shù)(例如頻率、周期、幅值、相位、顯示時間段、步長、加噪等),進一步熟悉這些在工程實際與理論研究中常用信號的特征。

1)直流信號f(t)=A

(1)符號推理法生成直流信號。

MATLAB程序:

t=-10:0.01:10;

f=sym(′4′);

%將信號的大小定義為符號變量

ezplot(f,[-16,16]);

%繪制范圍在[-16,16]上f的圖形

title(′直流信號′);xlabel(′時間(t)′);ylabel(′幅值(f)′);

用符號法生成的直流信號如圖1.1所示。圖1.1符號法生成的直流信號

(2)數(shù)值法生成直流信號。

MATLAB程序:

t=-10:0.01:10;

a1=6;[DW]%信號的大小

plot(t,a1,′b′);title(′直流信號′);

xlabel(′時間(t)′);ylabel(′幅值(f)′);

用數(shù)值法生成的直流信號如圖1.2所示。圖1.2數(shù)值法生成的直流信號

2)正弦交流信號f(t)=sin(ωt+)

(1)符號推理法生成正弦交流信號。

MATLAB程序:

t=-0:0.001:1;

f=sym(′sin(2*pi*t)′);

ezplot(f,[0,1],′k′);

xlabel(′時間(t)′);ylabel(′幅值(f)′);title(′正弦交流信號′);

用符號法生成的正弦交流信號如圖1.3所示。圖1.3符號法生成的正弦交流信號(2)數(shù)值法生成正弦交流信號。

MATLAB程序:

t=-0:0.001:1;

y=sin(2*pi*t);

plot(t,y,′k′);

xlabel(′時間(t)′);ylabel(′幅值(f)′);title(′正弦交流信號′);

用數(shù)值法生成的正弦交流信號如圖1.4所示。圖1.4數(shù)值法生成的正弦交流信號3)單位階躍信號f(t)=ε(t)

MATLAB程序:

t0=0;t1=-1;t2=3;

dt=0.01;

t=t1:dt:-t0;

n=length(t);

t3=-t0:dt:t2;

n3=length(t3);

u=zeros(1,n);

u3=ones(1,n3);

plot(t,u);

holdon;

plot(t3,u3);

plot([-t0,-t0],[0,1]);

holdoff;

axis([t1,t2,-0.2,1.5]);

xlabel(′時間(t)′);ylabel(′幅值(f)′);title(′單位階躍信號′);

用數(shù)值法生成的單位階躍信號如圖1.5所示。圖1.5數(shù)值法生成的單位階躍信號4)單位沖激信號f(t)=δ(t)

(1)方法1。

MATLAB程序:

clear;

t0=0;t1=-1;t2=5;dt=0.1;

t=t1:dt:t2;

n=length(t);

x=zeros(1,n);

x(1,(t0-t1)/dt+1)=1/dt;

stairs(t,x);

axis([t1,t2,0,1/dt]);

xlabel(′時間(t)′);ylabel(′幅值(f)′);title(′單位沖激信號′);

用方法1生成的單位沖激信號如圖1.6所示。圖1.6方法1生成的單位沖激信號(2)方法2。

MATLAB程序:

t0=0;t1=-1;t2=3;dt=0.001;

t=t1:dt:t2;

n=length(t);

k1=floor((t0-t1)/dt);

x=zeros(1,n);

x(k1)=1/dt;

stairs(t,x);

axis([-1,3,0,22]);

xlabel(′時間(t)′);ylabel(′幅值(f)′);title(′單位沖激信號′);

用方法2生成的單位沖激信號如圖1.7所示。圖1.7方法2生成的單位沖激信號5)符號信號f(t)=sgn(t)

MATLAB程序:

clear

t1=-1;t2=5;dt=0.1;%可將精度調(diào)高,即d=0.01或0.001

t=t1:dt:t2;

n=sign(t);

plot(t,n);

axis([t1,t2,-1.5,1.5]);

xlabel(′時間(t)′);ylabel(′幅值(f)′);title(′符號信號′);

用數(shù)值法生成的符號函數(shù)信號如圖1.8所示。圖1.8數(shù)值法生成的符號函數(shù)信號6)斜坡信號f(t)=tε(t)

MATLAB程序:

clear

t1=-1;t2=5;dt=0.01;

t=t1:dt:t2;

a1=5;%斜率

n=a1*t;plot(t,n);

axis([t1,t2,-1.5,20]);%橫坐標及縱坐標的范圍

xlabel(′時間(t)′);ylabel(′幅值(f)′);title(′斜坡信號′);

用數(shù)值法生成的斜坡信號如圖1.9所示。圖1.9數(shù)值法生成的斜坡信號7)單邊衰減指數(shù)信號f(t)=e-αtε(t)

MATLAB程序:

clear

t1=-1;t2=10;dt=0.1;

t=t1:dt:t2;

A1=1;

%斜率

a1=0.5;

%斜率

n=A1*exp(-a1*t);

plot(t,n);

axis([t1,t2,0,1]);

xlabel(′時間(t)′);ylabel(′幅值(f)′);title(′單邊衰減指數(shù)信號′);用數(shù)值法生成的單邊衰減指數(shù)信號如圖1.10所示。圖1.10數(shù)值法生成的單邊衰減指數(shù)信號8)復指數(shù)信號f(t)=e-(α+jβ)t

MATLAB程序:

%實現(xiàn)f(t)=e-3t+4jt

t=0:0.01:3;

a=-3;b=4;

z=exp((a+i*b)*t);

subplot(2,2,1)

plot(t,real(z)),title(′實部′);xlabel(′時間(t)′);ylabel(′幅值(f)′);

subplot(2,2,2)

plot(t,imag(z)),title(′虛部′);xlabel(′時間(t)′);ylabel(′幅值(f)′);

subplot(2,2,3)

plot(t,abs(z)),title(′模′);xlabel(′時間(t)′);ylabel(′幅值(f)′);

subplot(2,2,4)

plot(t,angle(z)),title(′相角′);xlabel(′時間(t)′);ylabel(′幅值(f)′);

用數(shù)值法生成的復指數(shù)信號如圖1.11所示。圖1.11數(shù)值法生成的復指數(shù)信號9)連續(xù)時間虛指數(shù)信號f(t)=1

MATLAB程序:

%連續(xù)時間虛指數(shù)信號f(t)=a*exp(w*i*t)

%t1:繪制波形的起始時間

%t2:繪制波形的終止時間

%w:虛指數(shù)信號角頻率

%a:虛指數(shù)信號的幅度

a=1;

w=pi/2;%函數(shù)參數(shù)

t=t1:0.01:t2;

X=a*exp(i*w*t);

Xr=real(X);

Xi=imag(X);

Xa=abs(X);

Xn=angle(X);

subplot(2,2,1)

plot(t,Xr)axis([t1,t2,-(max(Xa)+0.5),max(Xa)+0.5])

title(′實部′);

xlabel(′時間(t)′);

ylabel(′幅值(f)′);

subplot(2,2,2)

plot(t,Xi)

axis([t1,t2,-(max(Xa)+0.5),max(Xa)+0.5])

title(′虛部′);

xlabel(′時間(t)′);

ylabel(′幅值(f)′);

subplot(2,2,3)

plot(t,Xa)

axis([t1,t2,0,max(Xa)+1])

title(′?!?;

xlabel(′時間(t)′);

ylabel(′幅值(f)′);

subplot(2,2,4)

plot(t,Xn)

axis([t1,t2,-(max(Xa)+1),max(Xa)+1])

title(′相角′);

xlabel(′時間(t)′);

ylabel(′幅值(f)′);

用數(shù)值法生成的連續(xù)時間虛指數(shù)信號如圖1.12所示。圖1.12數(shù)值法生成的連續(xù)時間虛指數(shù)信號10)Dirichlet函數(shù)

MATLAB程序:

x=linspace(0,4*pi,300);

y1=diric(x,7);

y2=diric(x,8);

subplot(121),plot(x,y1);

title(′Dirichlet函數(shù)′);xlabel(′時間(t)′);ylabel(′幅值(f)′);subplot(122),plot(x,y2);

title(′Dirichlet函數(shù)′);xlabel(′時間(t)′);ylabel(′幅值(f)′);用數(shù)值法生成的Dirichlet函數(shù)信號如圖1.13所示。圖1.13數(shù)值法生成的Dirichlet函數(shù)信號11)疊加隨機噪聲的正弦波信號

MATLAB程序:

t=(0:0.001:50);

y=sin(2*pi*50*t);

s=y+randn(size(t));

plot(t(1:50),s(1:50));

title(′隨機噪聲的正弦波′);xlabel(′時間(t)′);ylabel(′幅值(f)′);

用數(shù)值法生成的疊加隨機噪聲的正弦波信號如圖1.14所示。圖1.14疊加隨機噪聲的正弦波信號12)周期方波信號

MATLAB程序:

t=(0:0.0001:1);

y=square(2*pi*15*t);%產(chǎn)生方波

plot(t,y);axis([0,1,-1.5,1.5]);

title(′周期方波′);xlabel(′時間(t)′);ylabel(′幅值(f)′);用數(shù)值法生成的周期方波信號如圖1.15所示。圖1.15數(shù)值法生成的周期方波信號13)周期鋸齒波信號

MATLAB程序:

t=(0:0.001:2.5);

y=sawtooth(2*pi*30*t);%產(chǎn)生鋸齒波

plot(t,y),axis([0,0.2,-1,1]);

title(′周期鋸齒波′);xlabel(′時間(t)′);ylabel(′幅值(f)′);

用數(shù)值法生成的周期鋸齒波信號如圖1.16所示。圖1.16數(shù)值法生成的周期鋸齒波信號14)Sinc函數(shù)

MATLAB程序:

t=(0:0.001:2.5);

x=linspace(-5,5);

y=sinc(x);

plot(x,y);

title(′Sinc函數(shù)′);xlabel(′時間(t)′);ylabel(′幅值(f)′);用數(shù)值法生成的Sinc函數(shù)信號如圖1.17所示。圖1.17數(shù)值法生成的Sinc函數(shù)信號5)三角波信號

MATLAB程序:

t=(-3:0.001:5);

y=tripuls(t,4,0.5);

plot(t,y);title(′三角波′)

xlabel(′時間(t)′);ylabel(′幅值(f)′);

用數(shù)值法生成的三角波信號如圖1.18所示。圖1.18數(shù)值法生成的三角波信號

2.程序設(shè)計實驗

自己編制程序,生成如下信號:

sqrt(a*x),[1-2*abs(x)]/a,sin(x)/x,5exp(-x),3sinx,

u(t-3),u(t+5),r(t-4),r(t+3),u(t-3)+r(t+7),sint,sin2t,

sin3t,δ(t-1),δ(t+5),cos3t+sin2t等。五、實驗要求

(1)在MATLAB中輸入程序,驗證實驗結(jié)果,并將實驗結(jié)果存入指定存儲區(qū)域。

(2)對于程序設(shè)計實驗,要求通過對驗證性實驗的練習,自行編制完整的實驗程序,實現(xiàn)對信號的模擬,并得出實驗結(jié)果。

(3)在實驗報告中寫出完整的自編程序,并給出實驗結(jié)果。

六、思考題

(1)沖激信號與階躍信號各有什么特性?

(2)如何利用基本信號表示方波、三角波等信號?

(3)信號的時域分解有哪幾種方法?一、實驗目的二、實驗原理三、涉及的MATLAB函數(shù)四、實驗內(nèi)容與方法五、實驗要求六、思考題

一、實驗目的

(1)了解離散時間信號的特點;

(2)掌握離散時間信號表示的向量法和符號法;

(3)熟悉stem函數(shù)的應用;

(4)會用MATLAB語言表示常用基本離散信號。

二、實驗原理

信號是隨時間變化的物理量。離散信號是只在某些不連續(xù)的時間點上有信號值,其它時間點上信號沒有定義的一類信號。離散信號一般可以利用模數(shù)轉(zhuǎn)換由連續(xù)信號而得到。計算機所能處理的只是離散信號。三、涉及的MATLAB函數(shù)

stem函數(shù)

功能:繪制二維桿圖即離散序列圖。

調(diào)用格式:

stem(x,y):在x坐標上繪制高度為y的桿圖。

四、實驗內(nèi)容與方法

1.驗證性實驗

常用的離散信號有正弦信號序列、單位階躍序列、單位門序列、單位沖激信號、單位斜坡序列、單邊衰減指數(shù)序列、隨機序列等。參考給出的程序,產(chǎn)生信號并觀察信號的波形,通過改變相關(guān)參數(shù)(例如:頻率、周期、幅值、相位、顯示時間段、步長、加噪等),進一步熟悉這些在工程實際與理論研究中常用的信號。

1)離散時間信號

MATLAB程序:

k1=-3;k2=3;k=k1:k2;

f=[1,3,-3,2,3,-4,1];

stem(k,f,′filled′);

axis([-4,4,-5,5]);

title(′離散時間信號′)

xlabel(′時間(k)′);ylabel(′幅值f(k)′);

用數(shù)值法生成的離散時間信號如圖2.1所示。圖2.1數(shù)值法生成的離散時間信號2)單位脈沖序列

MATLAB程序:

k1=-3;k2=6;k=k1:k2;

n=3;%單位脈沖出現(xiàn)的位置

f=[(k-n)==0];

stem(k,f,′filled′);title(′單位脈沖序列′)

xlabel(′時間(k)′);ylabel(′幅值f(k)′);

用數(shù)值法生成的單位脈沖序列如圖2.2所示。圖2.2數(shù)值法生成的單位脈沖序列3)單位階躍序列

MATLAB程序:

k0=0;%單位階躍開始出現(xiàn)的位置

k1=-3;k2=6;k=k1:k0-1;

n=length(k);

k3=-k0:k2;

n3=length(k3);

u=zeros(1,n);

u3=ones(1,n3);

stem(k,u,′filled′);

holdon;

stem(k3,u3,′filled′);

holdoff;

axis([k1,k2,-0.2,1.5]);

title(′單位階躍序列′);

xlabel(′時間(k)′);ylabel(′幅值f(k)′);

用數(shù)值法生成的單位階躍序列如圖2.3所示。圖2.3數(shù)值法生成的單位階躍序列4)復指數(shù)序列

MATLAB程序:

clf;

c=-(1/12)+(pi/6)*i;

K=2;

n=0:40;

x=K*exp(c*n);

subplot(2,1,1);

stem(n,real(x));

ylabel(′幅值f(k)′);

title(′實部′);

subplot(2,1,2);

stem(n,imag(x));

xlabel(′時間(k)′);ylabel(′幅值f(k)′);

title(′虛部′);

用數(shù)值法生成的復指數(shù)序列如圖2.4所示。圖2.4數(shù)值法生成的復指數(shù)序列5)指數(shù)序列

MATLAB程序:

clf;

k1=-1;k2=10;

k=k1:k2;

a=-0.6;

A=1;

f=A*a.^k;

stem(k,f,′filled′);

title(′指數(shù)序列′);

xlabel(′時間(k)′);ylabel(′幅值f(k)′);

用數(shù)值法生成的指數(shù)序列如圖2.5所示。圖2.5數(shù)值法生成的指數(shù)序列6)正弦序列

MATLAB程序:

clf;

k1=-20;k2=20;

k=k1:k2;

f=sin(k*pi/6);

stem(k,f,′filled′);

title(′正弦序列′);

xlabel(′時間(k)′);ylabel(′幅值f(k)′);

用數(shù)值法生成的正弦序列如圖2.6所示。圖2.6數(shù)值法生成的正弦序列7)單位斜坡序列

MATLAB程序:

clf;

k1=-1;k2=20;

k0=0;

n=[k1:k2];

ifk0>=k2

x=zeros(1,length(n));

elseif(k0<k2)&(k0>k1)

x=[zeros(1,k0-k1),[0:k2-k0]];

else

x=(k1-k0)+[0:k2-k1];

end

stem(n,x);

title(′單位斜坡序列′);

xlabel(′時間(k)′);ylabel(′幅值f(k)′);

用數(shù)值法生成的單位斜坡序列如圖2.7所示。圖2.7數(shù)值法生成的單位斜坡序列8)隨機序列

MATLAB程序:

clf;

R=51;

d=0.8*(rand(R,1)-0.5);

m=0:R-1;

stem(m,d′,′b′);

title(′隨機序列′);

xlabel(′k′);ylabel(′f(k)′);

用數(shù)值法生成的隨機序列如圖2.8所示。圖2.8數(shù)值法生成的隨機序列9)掃頻正弦序列

MATLAB程序:

n=0:100;

a=pi/2/100;

b=0;arg=a*n.*n+b*n;

x=cos(arg);

clf;stem(n,x);

axis([0,100,-1.5,1.5]);

grid;axis;title(′掃頻正弦序列′);

xlabel(′k′);ylabel(′f(k)′);

用數(shù)值法生成的掃頻正弦序列如圖2.9所示。圖2.9數(shù)值法生成的掃頻正弦序列10)幅值調(diào)制序列

MATLAB程序:

clf;

n=0:100;

m=0.4;fH=0.1;fL=0.01;

xH=sin(2*pi*fH*n);

xL=sin(2*pi*fL*n);

y=(1+m*xL).*xH;

stem(n,y);grid;

title(′幅值調(diào)制序列′);

xlabel(′時間(k)′);ylabel(′幅值f(k)′);

用數(shù)值法生成的幅值調(diào)制序列如圖2.10所示。圖2.10數(shù)值法生成的幅值調(diào)制序列11)信號平滑

MATLAB程序:

clf;

R=51;

d=0.8*(rand(1,R)-0.5);%隨機噪聲

m=0:R-1;

s=2*m.*(0.9.^m);%正常信號

x=s+d;%加噪聲后的信號

xL=sin(2*pi*fL*n);

y=(1+m*xL).*xH;

stem(n,y);grid;

title(′幅值調(diào)制序列′);

xlabel(′時間(k)′);ylabel(′幅值f(k)′);

用數(shù)值法生成的幅值調(diào)制序列如圖2.10所示。subplot(2,1,1);

plot(m,d,′r-′,m,s,′g--′,m,x,′b-.′);

title(′信號平滑′)

xlabel(′n′);ylabel(′f(n)′);

legend(′d[n]′,′s[n]′,′x[n]′);

x1=[00x];x2=[0x0];x3=[x00];

y=(x1+x2+x3)/3;

subplot(2,1,2);

plot(m,y(2:R+1),′r-′,m,s,′g--′);

legend(′y[n]′,′s[n]′);

xlabel(′n′);ylabel(′f(n)′);

信號平滑結(jié)果如圖2.11所示。圖2.11信號平滑12)滑動平均

MATLAB程序:

n=0:100;

s1=cos(2*pi*0.05*n);

%低頻信號

s2=cos(2*pi*0.47*n);

%高頻信號

x=s1+s2;混合信號

M=input(′濾波器長度=′);

num=ones(1,M);

y=filter(num,1,x)/M;

clf;

subplot(2,2,1);

plot(n,s1);

axis([0,100,-2,2]);

xlabel(′時間n′);ylabel(′幅值′);

title(′信號#1′);

subplot(2,2,2);

plot(n,s2);

axis([0,100,-2,2]);

xlabel(′時間n′);ylabel(′幅值′);

title(′信號#2′);

subplot(2,2,3);

plot(n,x);

axis([0,100,-2,2]);

xlabel(′時間n′);ylabel(′幅值′);

title(′輸入信號′);

subplot(2,2,4);

plot(n,y);

axis([0,100,-2,2]);

xlabel(′時間n′);ylabel(′幅值′);

title(′輸出信號′);

axis;

信號的滑動平均如圖2.12所示。圖2.12信號的滑動平均

2.程序設(shè)計實驗

(1)編制程序,生成如下信號:

5exp(-k),3sin(k),u(k-3),u(k+5),r(k-4),r(k+3),

u(k-3)+r(k+7),sin(k),sin(2k),sin(3k),δ(k-1),δ(k+5),cos(3k)+sin(2k)等。

(2)尋找一些函數(shù),編制程序生成信號。五、實驗要求

(1)在計算機中輸入程序,驗證實驗結(jié)果,并將實驗結(jié)果存入指定存儲區(qū)域。

(2)對于程序設(shè)計實驗,要求通過對驗證性實驗的練習,自行編制完整的實驗程序,實現(xiàn)對信號的模擬,并得出實驗結(jié)果。

(3)在實驗報告中寫出完整的自編程序,并給出實驗結(jié)果。六、思考題

(1)單位沖激函數(shù)與單位脈沖函數(shù)有什么區(qū)別?

(2)信號的時域分解有哪幾種方法?一、實驗目的二、實驗原理三、涉及的MATLAB函數(shù)四、實驗內(nèi)容與方法五、實驗要求六、思考題

一、實驗目的

(1)掌握連續(xù)時間信號時域運算的基本方法;

(2)掌握相關(guān)函數(shù)的調(diào)用格式及作用;

(3)掌握連續(xù)信號的基本運算。

二、實驗原理

信號的基本運算包括信號的相加(減)和相乘(除)。信號的時域變換包括信號的平移、翻轉(zhuǎn)、倒相以及尺度變換。這里要介紹的信號處理之所以要強調(diào)“基本運算”,是為了與

后面將要介紹的信號的卷積、相關(guān)等復雜的處理方法相區(qū)別。(1)加(減):f(t)=f1(t)±f2(t)

(2)乘:f(t)=f1(t)·f2(t)

(3)延時或平移:f(t)→f(t-t0)

t0>0時右移;t0<0時左移

(4)翻轉(zhuǎn):f(t)→f(-t)

(5)尺度變換:f(t)→f(at)

|a|>1時尺度縮小;|a|<1時尺度放大;

a<0時,還必須包含翻轉(zhuǎn);(6)標量乘法:f(t)→af(t)

(7)倒相:f(t)→-f(t)

(8)微分:f(t)→

(9)積分:f(t)→

f(τ)dτ

三、涉及的MATLAB函數(shù)及實現(xiàn)

1.stepfun函數(shù)

功能:產(chǎn)生一個階躍信號。

調(diào)用格式:

stepfun(t,t0)

其中,t是時間區(qū)間,在該區(qū)間內(nèi)階躍信號一定會產(chǎn)生;t0是信號發(fā)生從0到1跳躍的時刻。2.diff函數(shù)

調(diào)用格式:

diff(f):求函數(shù)f對預設(shè)獨立變數(shù)的一次微分值。

diff(f,′t′):求函數(shù)f對獨立變數(shù)t的一次微分值。

3.int函數(shù)

調(diào)用格式:

int(f):函數(shù)f對預設(shè)獨立變數(shù)的積分值。

int(f,′t′):函數(shù)f對獨立變數(shù)t的積分值。四、實驗內(nèi)容與方法

1.驗證性實驗(直接利用符號法進行編程)

1)相加

實現(xiàn)兩個連續(xù)信號的相加,即f(t)=f1(t)+f2(t)

MATLAB程序:

clearall;

t=0:0.0001:3;

b=3;

t0=1;u=stepfun(t,t0);

n=length(t);

fori=1:n

u(i)=b*u(i)*(t(i)-t0);

end%產(chǎn)生一個斜坡信號

y=sin(2*pi*t);%產(chǎn)生一個正弦信號

f=y+u;

%信號相加

plot(t,f);

xlabel(′時間(t)′);ylabel(′幅值f(t)′);title(′連續(xù)信號的相加′);

兩個連續(xù)信號的相加結(jié)果如圖3.1所示。圖3.1兩個連續(xù)信號的相加2)相乘

實現(xiàn)兩個連續(xù)信號的相乘,即f(t)=f1(t)×f2(t)

MATLAB程序:

clearall;

t=0:0.0001:5;

b=3;

t0=1;u=stepfun(t,t0);

n=length(t);

fori=1:n

u(i)=b*u(i)*(t(i)-t0);

end

y=sin(2*pi*t);

f=y.*u;

plot(t,f);

xlabel(′時間(t)′);ylabel(′幅值f(t)′);title(′連續(xù)信號的相乘′);

兩個連續(xù)信號的相乘結(jié)果如圖3.2所示。圖3.2兩個連續(xù)信號的相乘結(jié)果3)移位

實現(xiàn)連續(xù)信號的移位,即[WTBX]f(t-t0),或者f(t+t0),常數(shù)t0>0。

[WTBZ]

MATLAB程序:

clearall;

t=0:0.0001:2;

y=sin(2*pi*(t));

y1=sin(2*pi*(t-0.2));

plot(t,y,′-′,t,y1,′--′);

ylabel(′f(t)′);xlabel(′t′);title(′信號的移位′);

信號及其移位結(jié)果如圖3.3所示。圖3.3信號及其移位4)翻轉(zhuǎn)

信號的翻轉(zhuǎn)就是將信號的波形以縱軸為對稱軸翻轉(zhuǎn)180°,將信號f(t)中的自變量t替換為-t即可得到其翻轉(zhuǎn)信號。MATLAB程序:

clearall;

t=0:0.02:1;t1=-1:0.02:0;

g1=3*t;

g2=3*(-t1);

gridon;plot(t,g1,′--′,t1,g2);

xlabel(′t′);ylabel(′g(t)′);

title(′信號的反折′);

信號及其反折結(jié)果如圖3.4所示。圖3.4信號及其反折5)尺度變換

將信號f(t)中的自變量t替換為at。

MATLAB程序:

clearall;

t=0:0.001:1;

a=2;

y=sin(2*pi*t);

y1=sin(2*a*pi*t);

subplot(211)

plot(t,y);

ylabel(′y(t)′);xlabel(′t′);

title(′尺度變換′);

subplot(212)

plot(t,y1);

ylabel(′y1(t)′);xlabel(′t′);

信號及其尺度變換結(jié)果如圖3.5所示。圖3.5信號及其尺度變換6)倒相

將信號f(t)以橫軸為對稱軸對折得到-f(t)。

MATLAB程序:

clearall;

t=-1:0.02:1;

g1=3.*t.*t;

g2=-3.*t.*t;

gridon;

plot(t,g1,′-′,t,g2,′--′);

xlabel(′t′);ylabel(′g(t)′);title(′倒相′);

信號及其倒相結(jié)果如圖3.6所示。圖3.6信號及其倒相7)微分

求信號的一階導數(shù)。

MATLAB程序:

clearall;

t=-1:0.02:1;

g=t.*t;

d=diff(g);

subplot(211);

plot(t,g,′-′);

xlabel(′t′);ylabel(′g(t)′);title(′微分′);

subplot(212)

plot(d,′--′);xlabel(′t′);ylabel(′d(t)′);

信號及其微分結(jié)果如圖3.7所示。圖3.7信號及其微分8)積分

求信號f(t)在區(qū)間(-∞,t)內(nèi)的一次積分。

MATLAB程序:

clearall;

t=-1:0.2:1;symst

g=t*t;

d=int(g);subplot(211);

ezplot(g);

xlabel(′t′);ylabel(′g(t)′);title(′積分′);

subplot(212)

ezplot(d);xlabel(′t′);ylabel(′d(t)′);

信號及其積分結(jié)果如圖3.8所示。圖3.8信號及其積分

9)綜合

已知信號f(t)=

×[ε(t+2)-ε(t-2)],分別求出下列信號的數(shù)學表達式,并繪制其時域波形。

f(t+2);f(t-2);f(-t);f(2t);-f(t)

MATLAB程序:

symst

f=sym(′(t/2+1)*(heaviside(t+2)-heaviside(t-2))′);

subplot(2,3,1);ezplot(f,[-3,3]);y1=subs(f,t,t+2);subplot(2,3,2);ezplot(y1,[-5,1]);y2=subs(f,t,t-2)subplot(2,3,3);ezplot(y2,[-1,5]);

y3=subs(f,t,-t);subplot(2,3,4);ezplot(y3,[-3,3]);

y4=subs(f,t,2*t);subplot(2,3,5);ezplot(y4,[-2,2]);y5=-f;subplot(2,3,6)ezplot(y5,[-3,3]);

注:在運行以上程序時,需先建立Heaviside的M文件函數(shù)。Heaviside的函數(shù)M文件如下:

function[x,n]=Heaviside(n0,n1,n2)

n=[n1:n2];x=[(n-n0)==0];

各個信號的波形如圖3.9所示。圖3.9各個信號的波形

2.程序設(shè)計實驗

(1)已知信號f1(t)=(-t+4)[ε(t)-ε(t-4)],f2(t)=sin(2πt),用MATLAB繪出下列信號的時域波形。要求寫出全部程序,并繪制出信號時域波形。

(a)f3(t)=f1(-t)+f1(t)(b)f4(t)=-[f1(-)+f1(t)]

(c)f5(t)=f2(t)×f3(t)

(d)f6(t)=f1(t)×f2(t)

(2)已知信號f(t)的波形如圖3.10所示。試畫出下列各函數(shù)對時間t的波形。

(a)f(-t)(b)f(-t+2)(c)f(-t-2)(d)f(2t)

(e)f

(f)f(t-2)(g)f

(h)

(i)

f(2-τ)dτ

圖3.10信號f(t)的波形五、實驗要求

(1)在計算機中輸入程序,驗證實驗結(jié)果,并將實驗結(jié)果存入指定存儲區(qū)域。

(2)對于程序設(shè)計實驗,要求通過對驗證性實驗的練習,自行編制完整的實驗程序,實現(xiàn)對信號的模擬,并得出實驗結(jié)果。

(3)在實驗報告中寫出完整的自編程序,并給出實驗結(jié)果。

六、思考題

(1)什么是信號的翻轉(zhuǎn)、尺度變換、平移?

(2)能否將信號f(2t+2)先平移后尺度變換得到信號f(t)?一、實驗目的二、實驗原理三、涉及的MATLAB函數(shù)四、實驗內(nèi)容與方法五、實驗要求六、思考題

一、實驗目的

(1)掌握離散時間信號時域運算的基本實現(xiàn)方法。

(2)熟悉相關(guān)函數(shù)的調(diào)用格式及作用。

(3)掌握離散信號的基本運算。

(4)掌握信號的分解,會將任意離散信號分解為單位脈沖信號的線性組合。

二、實驗原理

信號的基本運算包括信號的相加和相乘。信號的時域變換包括信號的平移、反折、倒相以及尺度變換。這里要介紹的信號處理之所以要強調(diào)“基本運算”,是為了與后面將要介紹的信號的卷積、相關(guān)等復雜的處理方法相區(qū)別。三、涉及的MATLAB函數(shù)

fliplr函數(shù)

功能:實現(xiàn)矩陣行元素的左右翻轉(zhuǎn)。

調(diào)用格式:

B=fliplr(A):其中A指要翻轉(zhuǎn)的矩陣。

四、實驗內(nèi)容與方法

1.驗證性實驗(參考程序)

1)序列的加法

MATLAB程序:

x1=-2:2;

%序列1的值

k1=-2:2;x2=[1,-1,1];%序列2的值

k2=-1:1;k=min([k1,k2]):max([k1,k2]);

f1=zeros(1,length(k));f2=zeros(1,length(k));

f1(find((k>=min(k1))&(k<=max(k1))==1))=x1;

f2(find((k>=min(k2))&(k<=max(k2))==1))=x2;

f=f1+f2;stem(k,f,′filled′);

axis([min(min(k1),min(k2))-1,max(max(k1),max(k2))+1,min(f)-0.5,max(f)+0.5

]);

兩個序列的加法如圖4.1所示。圖4.1兩個序列的加法2)序列的乘法

MATLAB程序:

x1=-2:2;%序列1的值

k1=-2:2;

x2=[1,-1,1];%序列2的值

k2=-1:1;k=min([k1,k2]):max([k1,k2]);

f1=zeros(1,length(k));f2=zeros(1,length(k));

f1(find((k>=min(k1))&(k<=max(k1))==1))=x1;

f2(find((k>=min(k2))&(k<=max(k2))==1))=x2;

f=f1*f2;stem(k,f,′filled′);

axis([min(min(k1),min(k2))-1,max(max(k1),max(k2))+1,min(f)-0.5,[JP]max(f)+0.5]);

兩個序列的乘法如圖4.2所示。圖4.2兩個序列的乘法

3)序列的翻轉(zhuǎn)

MATLAB程序:

x1=-2:2;%序列1的值

k1=-2:2;

k=-fliplr(k1);

f=fliplr(x1);

stem(k,f,′filled′);

axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]);

序列及其翻轉(zhuǎn)如圖4.3所示。圖4.3序列及其翻轉(zhuǎn)4)序列的倒相

MATLAB程序:

x1=-2:2;%序列1的值

k1=-2:2;k=k1;

f=-x1;

stem(k,f,′filled′);

axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]);

序列及其倒相如圖4.4所示。圖4.4序列及其倒相5)序列的平移

MATLAB程序:

x1=-2:2;%序列1的值

k1=-2:2;k0=2;

k=k1+k0;f=x1;

stem(k,f,′filled′);

axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]);

序列及其平移如圖4.5所示。圖4.5序列及其平移

2.程序設(shè)計實驗

已知序列f(k)={2,3,1,2,3,4,3,1},對應的k值為-3≤k≤4,分別繪出下列信號的圖形:

f1(k)=f(k-2),f2(k)=f(-k),f3(k)=f(k-1)ε(k),

f4(k)=f(-k+2),f5(k)=f(k+1),f6(k)=f(k-2)ε(k),f7(k)=f(k+2)ε(k)五、實驗要求

(1)在計算機中輸入程序,驗證并記錄實驗結(jié)果,經(jīng)過分析、比較來完成實驗報告。

(2)對于設(shè)計性實驗,應自行編制完整的實驗程序,重復驗證性實驗的過程,并在實驗報告中給出完整的自編程序。六、思考題

將信號分解為沖激信號序列有何實際意義?一、實驗目的二、實驗原理三、涉及的MATLAB函數(shù)四、實驗內(nèi)容與方法五、實驗要求六、思考題

一、實驗目的

(1)熟悉卷積的定義和表示;

(2)掌握利用計算機進行卷積運算的原理和方法;

(3)熟悉連續(xù)信號卷積運算函數(shù)conv的應用。

二、實驗原理

1.卷積的定義

卷積積分可以表示為

f(t)=f1(t)*f2(t)=

2.卷積計算的幾何解法

卷積積分的計算從幾何上可以分為四個步驟:翻轉(zhuǎn)→平移→相乘→疊加(積分)。

3.卷積積分的應用

卷積積分是信號與系統(tǒng)時域分析的基本手段,主要用于求系統(tǒng)零狀態(tài)響應,它避開了經(jīng)典分析方法中求解微分方程時需要求系統(tǒng)初始值的問題。

設(shè)一個線性零狀態(tài)系統(tǒng),已知系統(tǒng)的單位沖激響應為h(t),當系統(tǒng)的激勵信號為x(t)時,系統(tǒng)的零狀態(tài)響應為

也可簡單記為

yzs(t)=x(t)*h(t)由于計算機技術(shù)的發(fā)展,通過編程的方法來計算卷積積分已經(jīng)不再是冗繁的工作,并可以獲得足夠的精度。因此,信號的時域卷積分析法在系統(tǒng)分析中得到了廣泛的應用。

卷積積分的數(shù)值運算實際上可以用信號的分段求和來實現(xiàn),即:

f(t)=f1(t)*f2(t)=

f1(kΔ)·f2(t-kΔ)·Δ如果我們只求當t=nΔ(n為正整數(shù))時f(t)的值f(nΔ),則由上式可以得到:

f(nΔ)=

f1(kΔ)·f2(nΔ-kΔ)·Δ

f1(kΔ)·f2[(n-k)Δ]上式中的f1(kΔ)·f2[(n-k)Δ]實際上就是連續(xù)信號f1(t)和f2(t)經(jīng)等間隔Δ均勻抽樣的離散序列f1(kΔ)和f2(kΔ)的卷積和,當Δ足夠小時,f(nΔ)就是f1(t)和f2(t)卷積積分的數(shù)值近似。因此,在利用計算機求兩個連續(xù)信號的卷積時,實質(zhì)上是先將其轉(zhuǎn)化為離散信號,然后再計算,這樣可以利用離散信號的卷積的結(jié)論。三、涉及的MATLAB函數(shù)

conv函數(shù)

功能:實現(xiàn)信號的卷積運算。

調(diào)用格式:

w=conv(u,v):計算兩個有限長度序列的卷積。

說明:該函數(shù)假定兩個序列都從零開始。四、實驗內(nèi)容與方法

1.驗證性實驗

利用離散conv函數(shù)實現(xiàn)連續(xù)運算,并尋找其他方法。

1)函數(shù)卷積計算

若f1(t)=δ(t),f2(t)=u(t),試利用給出的參考程序,計算

f(t)=f1(t)*f2(t),f(t)=f1(t)*f1(t),f(t)=f2(t)*f2(t)(利用conv函數(shù))。MATLAB程序:

%連續(xù)函數(shù)卷積計算

a=1000;

t1=-5:1/a:5;

f1=stepfun(t1,0);

f2=stepfun(t1,-1/a)-stepfun(t1,1/a);

subplot(231);

plot(t1,f1);axis([-5,5,0,1.2]);%xlabel(′時間(t)′);

ylabel(′f1(t)′);title(′單位階躍函數(shù)′);

subplot(232);plot(t1,f2);ylabel(′f2(t)′);title(′單位沖激函數(shù)′);

y=conv(f1,f2);r=2*length(t1)-1;t=-10:1/a:10;

subplot(233);plot(t,y);axis([-5,5,0,1.2]);

title(′f1與f2的卷積′);

ylabel(′y(t)′);

f11=conv(f1,f1);f22=conv(f2,f2);

subplot(234);plot(t,f11);title(′f1與f1的卷積′);

ylabel(′f11(t)′);axis([-5,5,0,5000]);

subplot(235);plot(t,f22);title(′f2與f2的卷積′);ylabel(′f22(t)′);

連續(xù)函數(shù)卷積計算結(jié)果如圖5.1所示。圖5.1連續(xù)函數(shù)卷積計算結(jié)果2)連續(xù)函數(shù)卷積計算1(利用conv函數(shù))

MATLAB程序:

%計算連續(xù)信號的卷積積分

%f:函數(shù)的樣值向量

%k:對應時間向量

%s:采樣時間間隔

s=0.01;

k1=0:s:2;%生成k1的時間向量k2=k1;%生成k2的時間向量

f1=3*k1;%生成f1的樣值向量

f2=3*k2;%生成f2的樣值向量

f=conv(f1,f2);

f=f*s;

k0=k1(1)+k2(1);%序列f非零樣值的起點

k3=length(f1)+length(f2)-2;%序列f非零樣值的寬度k=k0:s:k3*s;

subplot(3,1,1);%f1(t)的波形

plot(k1,f1);

title(′f1(t)′);

subplot(3,1,2);%f2(t)的波形

plot(k2,f2);

title(′f2(t)′);

subplot(3,1,3);%f3(t)的波形

plot(k,f);

title(′f(t)′);

連續(xù)函數(shù)卷積計算(利用conv函數(shù))結(jié)果如圖5.2所示。圖5.2連續(xù)函數(shù)卷積計算結(jié)果(利用conv函數(shù))3)連續(xù)函數(shù)卷積計算2(不利用conv函數(shù))

MATLAB程序:

%f為第一個信號的樣值序列,h為第二個信號的樣值序列,T為采樣間隔

clearall;

T=0.1;t=0:T:10;f=sin(t);

h=0.5*(exp(-t)+exp(-3*t));Lf=length(f);Lh=length(h)

fork=1:Lf+Lh-1y(k)=0;

fori=max(1,k-(Lh-1)):min(k,Lf)

y(k)=y(k)+f(i)*h(k-i+1);

end

yzsappr(k)=T*y(k);

end

subplot(3,1,1);%f(t)的波形

plot(t,f);title(′f(t)′);

subplot(3,1,2);%h(t)的波形

plot(t,h);title(′h(t)′);

subplot(3,1,3);%卷積近似計算結(jié)果的波形

plot(t,yzsappr(1:length(t)));title(′卷積的近似計算結(jié)果)′);xlabel(′時間′);

連續(xù)函數(shù)卷積計算(不利用conv函數(shù))結(jié)果如圖5.3所示。圖5.3連續(xù)函數(shù)卷積計算結(jié)果(不利用conv函數(shù))2.程序設(shè)計實驗

(1)若f1(t)=δ(t),f2(t)=u(t),f3(t)=u(t)-u(t-4),試證明卷積滿足如下結(jié)論:

①f1(t)*f2(t)=f2(t)*f1(t);

②f1(t)*[f2(t)+f3(t)]=f1(t)*f2(t)+f1(t)*f3(t)。

(2)自己尋找兩個不同的函數(shù),重復上述操作,比較所得結(jié)果。五、實驗要求

(1)在計算機中輸入程序,驗證實驗結(jié)果,并將實驗結(jié)果記錄下來,經(jīng)過分析、比較來完成實驗報告。

(2)對于設(shè)計性實驗,應自行編制完整的實驗程序,重復驗證性實驗的過程,并在實驗報告中給出完整的自編程序。六、思考題

(1)函數(shù)conv既不給出也不接受任何時間信息,怎樣才能得到卷積以后的時間信息(即卷積的起點和終點)?請利用卷積函數(shù)編寫一個可以得到時間信息的改進程序。一、實驗目的二、實驗原理三、涉及的MATLAB函數(shù)四、實驗內(nèi)容與方法五、實驗要求六、思考題

一、實驗目的

(1)熟悉連續(xù)LTI系統(tǒng)在典型激勵信號下的響應及其特征;

(2)掌握連續(xù)LTI系統(tǒng)單位沖激響應的求解方法;

(3)重點掌握用卷積法計算連續(xù)時間系統(tǒng)的零狀態(tài)響應;

(4)熟悉MATLAB相關(guān)函數(shù)的調(diào)用格式及作用;

(5)會用MATLAB對系統(tǒng)進行時域分析。二、實驗原理

連續(xù)時間線性非時變系統(tǒng)(LTI)可以用如下的線性常系數(shù)微分方程來描述:

any(n)(t)+an-1y(n-1)(t)+…+a1y′(t)+a0y(t)

=bmf

(m)(t)+…+b1f′(t)+b0f(t)

其中,

n≥m,系統(tǒng)的初始條件為y(0-),y′(0-),y″

(0-),…,y(n-1)(0-)

系統(tǒng)的響應一般包括兩個部分,即由當前輸入所產(chǎn)生的響應(零狀態(tài)響應)和由歷史輸入(初始狀態(tài))所產(chǎn)生的響應(零輸入響應)。對于低階系統(tǒng),一般可以通過解析的方法得到響應。但是,對于高階系統(tǒng),手工計算就比較困難,這時MATLAB強大的計算功能就能比較容易地確定系統(tǒng)的各種響應,如沖激響應、階躍響應、零輸入響應、零狀態(tài)響應、全響應等。

1.直接求解法

涉及到的MATLAB函數(shù)有:impulse(沖激響應)、step(階躍響應)、roots(零輸入響應)、lsim(零狀態(tài)響應)等。在MATLAB中,要求以系數(shù)向量的形式輸入系統(tǒng)的微分方程,

因此,在使用前必須對系統(tǒng)的微分方程進行變換,得到其傳遞函數(shù)。其分別用向量a和b表示分母多項式和分子多項式的系數(shù)(按照s的降冪排列)。

2.卷積計算法

根據(jù)系統(tǒng)的單位沖激響應,利用卷積計算的方法,也可以計算任意輸入狀態(tài)下系統(tǒng)的零狀態(tài)響應。設(shè)一個線性零狀態(tài)系統(tǒng),已知系統(tǒng)的單位沖激響應為h(t),當系統(tǒng)的激勵信號為f(t)時,系統(tǒng)的零狀態(tài)響應為

yzs(t)=

f(τ)h(t-τ)dτ=

f(t-τ)h(τ)dτ也可簡單記為

yzs(t)=f(t)*h(t)

由于計算機采用的是數(shù)值計算,因此系統(tǒng)的零狀態(tài)響應也可用離散序列卷積和近似為

yzs(k)=

f(n)*h(k-n)T=f(k)*h(k)

式中yzs(k)、f(k)和h(k)分別對應以T為時間間隔對連續(xù)時間信號yzs(t)、f(t)和h(t)進行采樣得到的離散序列。三、涉及的MATLAB函數(shù)

1.impulse函數(shù)

功能:計算并畫出系統(tǒng)的沖激響應。

調(diào)用格式:

impulse(sys):其中sys可以是利用命令tf、zpk或ss建立的系統(tǒng)函數(shù)。

impulse(sys,t):計算并畫出系統(tǒng)在向量t定義的時間內(nèi)的沖激響應。

Y=impulse(sys,t):保存系統(tǒng)的輸出值。

2.step函數(shù)

功能:計算并畫出系統(tǒng)的階躍響應曲線。

調(diào)用格式:

step(sys):其中sys可以是利用命令tf、zpk或ss建立的系統(tǒng)。

step(sys,t):計算并畫出系統(tǒng)在向量t定義的時間內(nèi)的階躍響應。

3.lsim函數(shù)

功能:計算并畫出系統(tǒng)在任意輸入下的零狀態(tài)響應。

調(diào)用格式:

lsim(sys,x,t):其中sys可以是利用命令tf、zpk或ss建立的系統(tǒng)函數(shù),x是系統(tǒng)的輸入,t定義的是時間范圍;

lsim(sys,x,t,zi):計算出系統(tǒng)在任意輸入和零狀態(tài)下的全響應,sys必須是狀態(tài)空間形式的系統(tǒng)函數(shù),zi是系統(tǒng)的初始狀態(tài)。4.roots函數(shù)

功能:計算齊次多項式的根。

調(diào)用格式:

r=roots(b):計算多項式b的根,r為多項式的根。四、實驗內(nèi)容與方法

1.驗證性實驗

(1)求系統(tǒng)y(2)(t)+6y(1)(t)+8y(t)=3x(1)(t)+9x(t)的沖激響應和階躍響應。MATLAB程序:

%求系統(tǒng)的沖激響應

b=[39];a=[168];

sys=tf(b,a);

t=0:0.1:10;

y=impulse(sys,t);

plot(t,y);

xlabel(′時間(t)′);ylabel(′y(t)′);title(′單位沖激響應′);系統(tǒng)的沖激響應如圖6.1所示。圖6.1系統(tǒng)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論