第一篇:電信專業級信號與系統實驗報告
《信號與系統》實驗報告
學 學
院: 信息科學與工程學院 專業 班級: 通信 1401 班 學 學
號: 201404163024 學生姓名: 嚴若茂 指導教師: 徐望明
2016年 06 月
歡迎下載 實驗一
連續時間信號的表示、連續時間 LTI 系統的時域分析
1.用 MATLAB命令產生如下信號,并繪出波形圖(1))(25.1t u et ?(2))42 sin(2?? ? t
(3)???? ?? ??1 , 0 01 0 2)(t ttt f
程序、實驗結果及解釋說明:
t=-5:0.01:5;
y=2*exp(-1.5*t).*(t>=0);
subplot(2,2,1)
plot(t,y);
y1=sin(2*pi*t+pi/4);
subplot(2,2,2)
plot(t,y1)
y2=2.*(t>=0&t<=1);
subplot(2,2,3)
plot(t,y2)
ylim([-3 4])
歡迎下載
2.已知信號 )(t f 的波形如圖所示,試用 MATLAB命令畫出)2(? t f、)3(t f、)(t f ?、)2 3(? ? t f 的波形圖。
t)(t f11 2 ? 0 程序、實驗結果及解釋說明:
function y=pp(x)
y=0*(x<-2|x>1)+1*(x>=-2&x<0)+(-x+1).*(x>=0&x<=1);
end
t=-5:0.01:5;
y1=pp(t-2);
y2=pp(3*t);
y3=pp(-t);
y4=pp(-3*t-2);
axis([-2 5 0 2])
subplot(2,2,1);
title(“2.1”);
plot(t,y1)
axis([-2 5 0 2])
subplot(2,2,2)
plot(t,y2)
title(“2.2”);
axis([-2 5 0 2])
歡迎下載 subplot(2,2,3)
plot(t,y3)
title(“2.3”);
axis([-2 5 0 2])
subplot(2,2,4)
plot(t,y4)
title(“2.4”)
axis equal
3.已知描述系統的微分方程和激勵信號如下)(3)()(4)(4)(t f t f t y t y t y ? ? ? ? ? ? ? ?,)()(t u e t ft ??
要求:(1)從理論上求解系統的沖激響應和零狀態響應,并根據求解結果用MATLAB 繪制其時域波形;(2)分別用 MATLAB的 impulse()函數和 lsim()函數繪制系統的沖激響應和零狀態響應,驗證(1)中的結果。
程序、實驗結果及解釋說明:
歡迎下載
figure(1)
a=[1 4 4];
b=[0 1 3];
subplot(2,1,1);
impulse(b,a)
t=0:0.01:3.5;
h=(1+t).*exp(-2*t);
subplot(2,1,2);
plot(t,h)
axis([0,3,5,0,1])
figure(2)
t=0:0.01:3.5;
subplot(2,1,1);
Isim(b,z,x,t)
y=2*exp(-t)-(2+t).*exp(-2*t);
subplot(2,1,2);
plot(t,y)
axis([0,3,5,0,1])
歡迎下載
歡迎下載
實驗二 周期信號的傅里葉級數分析
4.已知周期矩形脈沖信號 )(t f 的波形如圖所示,設脈沖幅度為 1,寬度為 ?,周期為 T,用 MATLAB 繪制信號的頻譜圖,并研究脈沖寬度 ? 變化時(分別取 4 ? ?、8 ? T ; 2 ? ?、8 ? T ; 1 ? ?、8 ? T),對其頻譜的影響。
tT12??T ?2?? 程序、實驗結果及解釋說明:
T=8;w=2*pi/T;
k=-15:15;
subplot(3,1,1)
t1=1;
m1=t1/T;
a1=m1*sinc(k.*m1);
stem(k*w,a1);
subplot(3,1,2)
t2=2;
m2=t2/T;
a2=m2*sinc(k.*m2);
stem(k*w,a2);
subplot(3,1,3)
t3=4;
m3=t3/T;
a3=m3*sinc(k.*m3);
stem(k*w,a3);
歡迎下載
5.設 系 統 的 頻 率 響 應 為2 3)(1)(2? ??? ??j jj H,若 外 加 激 勵 信 號 為)10 cos(2)cos(5 t t ?,用 MATLAB求其響應。
程序、實驗結果及解釋說明:
a=[1 3 2];
b=[0 0 1];
t=-10:0.01:10;
x=5*cos(t)+2*cos(10*t);
y=lsim(b,a,x,t);
plot(t,y,t,x)
歡迎下載
歡迎下載
實驗三 連續時間 LTI 系統的頻域分析
6.下圖是用 RLC 元件構成的二階低通濾波器。設 H L 8.0 ?,F C 1.0 ?,? ? 2 R,試用 MATLAB 的 freqs()函數繪出該系統的幅頻特性曲線和相頻特性曲線。(求模:abs()函數,求相角:angle()函數)
LCR??)(t f)(t y??
程序、實驗結果及解釋說明:
a=[0.08 0.4 1];b=[0 0 1];w=logspace(-1,1);freqs(b,a,w)
歡迎下載 7.假 設 基 帶 信 號 為)20 cos(2)10 cos(3)(t t t g ? ?,被 調 制 成)1 0 0 c o s()()(t t g t f ?,在接收端又被解調為)100 cos()()(0t t f t g ?,并通過低通濾波器 ??? ??其他 030 1)(?? j H
得到信號)(1t g。試用 MATLAB繪制上述各個信號的時域波形和頻譜。
程序、實驗結果及解釋說明:
clear;[t,omg,FT,IFT] = prefourier([-5,5],length(-5:0.01:5),[-250,250],1000);g=3*cos(10*t)+2*cos(20*t);f=g.*cos(100*t);g0=f.*cos(100*t);G0=FT*g0;H=(omg<30&omg>-30);G1=G0.*H;g1=IFT*G1;G=FT*g;F=FT*f;subplot(4,2,1)plot(t,g);ylabel(“g”);subplot(4,2,2)plot(t,f);ylabel(“f”);subplot(4,2,3)plot(t,g0);ylabel(“g0”);subplot(4,2,4)plot(t,g1);ylabel(“g1”);subplot(4,2,5)plot(omg,abs(G)),ylabel(“G”);subplot(4,2,6)plot(omg,abs(F)),ylabel(“F”);subplot(4,2,7)plot(omg,abs(G0)),ylabel(“G0”);subplot(4,2,8)plot(omg,abs(G1)),ylabel(“G1”);
function [t,omg,FT,IFT]=prefourier(Trg,N,OMGrg,K)%Trg 為時域起止范圍 %N 為時域抽樣點數 %OMGrg 為頻域起止范圍 %K 為頻域抽樣點數 %t 為抽樣時間點 %omg 為抽樣頻率點
歡迎下載 %FT 為傅里葉變換矩陣(將該矩陣左乘信號即得信號的傅里葉變換)
%IFT 為傅里葉反變換矩陣(將該矩陣左乘信號即得信號的傅里葉反變換)
T=Trg(2)-Trg(1);t=linspace(Trg(1),Trg(2)-T/N,N)“;OMG=OMGrg(2)-OMGrg(1);omg=linspace(OMGrg(1),OMGrg(2)-OMG/K,K)”;FT=T/N*exp(-j*kron(omg,t“));IFT=OMG/2/pi/K*exp(j*kron(t,omg”));
歡迎下載
歡迎下載
歡迎下載
實驗四
連續時間 LTI 系統的復頻域分析
8.已知某二階系統的零極點分別為 1001? ? p,2002? ? p,02 1? ? z z(二重零點),試用 MATLAB繪出該系統在 0 ~ 1kHz 頻率范圍內的幅頻特性曲線(要求用頻率響應的幾何求解方法實現),并說明該系統的作用。
程序、實驗結果及解釋說明:
clear;f=0:0.01:1000;w=2*pi*f;p1=-100;p2=-200;A1=abs(j*w-p1);A2=abs(j*w-p2);B1=abs(j*w);H=(B1.^2)./(A1.*A2);plot(w,H)xlabel(“ 頻率(rad/s)”)ylabel(“ 幅頻響應”)
歡迎下載
9.已知系統的系統函數為 2 73 4)(2 32? ? ?? ??s s ss ss H
試用 MATLAB命令繪出其零極點分布圖,并判定該系統是否穩定。
程序、實驗結果及解釋說明:
clear;b=[0 1 4 3];a=[1 1 7 2];sys=tf(b,a);pzmap(sys)grid
歡迎下載
《信號 與系統 》 實驗 小 結:
利用 matlab編程可以解決高次函數的零極點問題,很容易的繪制系統函數的特性曲線,從中可以看出系統是否穩定,并可以利用相關函數很容易的求解外加激勵通過系統時的響應。(對于極點、零點出現多重的現象,也可利用相關函數,或通過編程解決系統函數的特性曲線。)
通過實驗學習matlab 可以很清楚地驗證課本上的相關結論,練習各種常見函數圖形的畫法,可以很好地分析時域、頻域、復頻域的問題。說,總的來對于此次實驗,收獲很大。
第二篇:信號與系統仿真實驗報告
信號與系統
仿真
實 驗 報 告
班級: 學號: 姓名: 學院:
實驗一
一、實驗者姓名:
二、實驗時間:
三、實驗地點:
四、實驗題目:
5(s2?5s?6)求三階系統H(s)?3的單位階躍響應,并繪制響應波形圖。
s?6s2?10s?8
五、解題分析:要知道求單位階躍響應需知道所用函數,以及產生波形圖所需要用到的函數。
六、試驗程序:
num=[5 25 30];den=[1 6 10 8];step(num,den,10);title(‘Step response’)
七、實驗結果:
實驗所得波形圖如下:
Step response4.543.53Amplitude2.521.510.50012345Time(sec)678910
八、實驗心得體會:通過本次試驗了解學會了一些新的函數的應用。了解到了N階系統的單位階躍響應的計算方法,和系統的響應波形圖的函數應用和繪制方法。為后面的實驗打下基礎,并對信號仿真和《信號與系統》這門課程之間的聯系有所增加,對《信號與系統》這門課里的問題也有了更加深入地了解。
九、實驗改進想法:無。
實驗二
一、實驗者姓名:
二、實驗時間:
三、實驗地點:
四、實驗題目:
一個因果線性移不變系統y(n)?0.81y(n?2)?x(n)?x(n?2),求:(1)H(z);(2)沖激響應h(n);(3)單位階躍響應u(n);(4)H(ej?),并繪出幅頻和相頻特性。
五、解題分析:離散卷積是數字信號處理中的一個基本運算,MTLAB提供的計算兩個離散序列卷積的函數是conv,其調用方式為 y=conv(x,h)。其中調用參數x,h為卷積運算所需的兩個序列,返回值y是卷積結果。
MATLAB函數conv的返回值y中只有卷積的結果,沒有y的取值范圍。由離散序列卷積的性質可知,當序列x和h的起始點都為k=0時,y的取值范圍為k=0至length(x)+length(h)-2。
許多離散LTI都可用如下的線性常系數的差分方程描述
?ay[k?n]??bx[k?n]
nnn?0n?0NN其中x[k]、y[k]分別系統的輸入和輸出。在已知差分方程的N個初始狀態y[k],和輸入x[k],就可由下式迭代計算出系統的輸出
y[k]???(an/a0)y[k?n]??(bn/b0)x[k?n]
n?1n?0NM利用MATLAB提供的filter函數,可方便地計算出上述差分方程的零狀態響應。filter函數調用形式為 y=filter(b,a,x)。其中 a?[a0,a1,...,aN],b?[b0,b1,...,bM],分別表示差分方程系數。X表示輸入序列,y表示輸出序列。輸出序列的長度和序列相同。
當序列的DTFT可寫成ej?的有理多項式時,可用MATLAB信號處理工具箱提供的freqz函數計算DTFT的抽樣值。另外,可用MATLAB提供的abs、angle、real、imag等基本函數計算 DTFT的幅度、相位、實部、虛部。若X(ej?)可表示為
b0?b1e?j??...bMe?j?MB(ej?)X(e)??j??j??j?NA(e)a0?a1e?...?aNe則freqz的調用形式為 X=freqz(b,a,w),其中的b和 a分別是表示前一個
j?式子中分子多項式和分母多項式系數的向量,即a?[a0,a1,...,aN],w為抽樣的頻率點,向量w的長度至少為2。返回值X就是DTFTb?[b0,b1,...,bM]。在抽樣點w上的值。注意一般情況下,函數freqz的返回值X是復數。
六、實驗程序:
clc;clear;close;b=[1 0-1];a=[1 0-0.81];figure(1);subplot(2,1,1);dimpulse(b,a,20)subplot(2,1,2);dstep(b,a,50)w=[0:1:512]*pi/512;figure(2);freqz(b,a,w)
七、實驗結果:
沖擊響應圖及階躍響應圖:
Impulse Response1Amplitude0.50-0.50246810Time(sec)Step Response12141618201Amplitude0.500510152025Time(sec)3035404550 100Magnitude(dB)0-100-200-30000.10.20.30.40.50.60.70.8Normalized Frequency(?? rad/sample)0.91100Phase(degrees)500-50-10000.10.20.30.40.50.60.70.8Normalized Frequency(?? rad/sample)0.91
八、實驗心得體會:通過實驗我們知道了使用Matlab來繪出出一個線性移不變系統的幅頻和相頻曲線。并知道了在《信號與系統》中得一些差分方程和各種響應,譬如零輸入相應、零狀態響應、全響應、自由響應、強迫響應、沖擊響應、單位階躍響應等等各種響應在Matlab中的函數表達方式和他們的求法,以及系統的幅頻和相頻曲線的繪制都有了一定深刻的認識。
九、實驗改進想法:無。
實驗三
一、實驗者姓名:
二、實驗時間:
三、實驗地點:
四、實驗題目:
模擬信號x(t)?2sin(4?t)?5cos(8?t),求N?64的DFT的幅值譜和相位譜。
五、解題分析:在MATLAB信號處理工具箱中,MATLAB提供了4個內部函數用于計算DFT和IDFT,它們分別是:fft(x),fft(x,N),ifft(X),ifft(X,N)。
fft(x)計算M點的DFT。M是序列x的長度,即M=length(x)。
fft(x,N)計算N點的DFT。若M>N,則將原序列截短為N點序列,再計算其N點DFT;若M ifft(X)計算M點的IDFT。M是序列X的長度。 ifft(X,N)計算N點IDFT。若M>N,則將原序列截短為N點序列,再計算其N點IDFT;若M 六、實驗程序: clc;clear;close;N=64;n=0:63;t=d*n;q=n*2*pi/N;x=2*sin(4*pi*t)+5*cos(8*pi*t);y=fft(x,N);subplot(3,1,1);plot(t,x);title(‘source signal’);subplot(3,1,2);plot(q,abs(y));title(‘magnitude’);subplot(3,1,3);plot(q,angle(y));title(‘phase’); 七、實驗結果: ***0100806040200|F(k)|05101520Frequency253035 ***0100806040200|F(k)|05101520Frequency253035 4321|jW|0-1-2-3-405101520Frequency253035Step Response400020000-2000 Amplitude-4000-6000-8000-10000-12000-1400001234n(samples)5678 八、實驗心得體會:通過本次試驗我知道了求取模擬信號在N等于一定值時的的DFT的幅值譜和相位譜的求法。通過本次實驗,對幅值譜和相位譜有了更深的了解,并與課程《信號與系統》里的一些相關知識連接到了一起,使得學到的只是更加深刻、有意義。 九、實驗改進想法:無。 實驗四 一、實驗者姓名: 二、實驗時間: 三、實驗地點: 四、實驗題目: 將信號x(t)?sin(240?t)做離散序列,比較原序列與經過FFT和IFFT變換后的序列,并做出說明。 五、解題分析:此題需要對信號做離散序列,還要做FFT和IFFT變換,然后得到圖像進行比較。連續時間函數與離散時間函數在編程中的區別主要體現在如下兩個方面:第一,自變量的取值范圍不同,離散時間函數的自變量是整數,而連續時間函數的自變量為一定范圍內的實數;第二,繪圖所用的函數不同,連續函數圖形的繪制不止一個。本實驗中要求繪制離散時間信號圖,可以應用MATLAB中的函數來實現。用MATLAB表示一離散序列,可用兩個向量來表示。其中一個向量表示自變量的取值范圍,另一個向量表示序列的值。之后畫出序列波形。當序列是從0開始時,可以只用一個向量x來表示序列。由于計算機內寸的限制,MATLAB無法表示一個無窮長的序列。對于典型的離散時間信號,可用邏輯表達式來實現不同自變量時的取值。 六、實驗程序: t=0:1/255:1;x=sin(2*pi*120*t);y=real(ifft(fft(x)));subplot(2,1,1);plot(t,x);title(‘原波形’);subplot(2,1,2);plot(t,y); 七、實驗結果: 原波形10.50-0.5-100.10.20.30.40.50.60.70.80.91恢復的波形10.50-0.5-100.10.20.30.40.50.60.70.80.91 八、實驗心得體會:通過對做信號的離散序列以及經FFT和IFFT的變換,了解了相關特性。通過計算機做出的信號波形圖,我們能夠很直白的看出原波形和經過變換后的波形的差別。 九、實驗改進想法:無。 實驗五 一、實驗者姓名: 二、實驗時間: 三、實驗地點: 四、實驗題目: 2s,激勵信號22(s?1)?100x(t)?(1?cot)s?co1s0(t)0,求(1)帶通濾波器的頻率響應;(2)輸出穩態響應并繪制圖形。已知帶通濾波器的系統函數為H(s)? 五、解題分析:需要知道求頻率響應的方法,并繪制圖形。 六、實驗程序: clear;t=linspace(0,2*pi,1001);w=[99,100,101];U=[0.5,1,0.5];b=[2,0];a=[1,2,10001];u1=U*cos(w’*t+angle(U’)*ones(1,1001));H=polyval(b,j*w)./polyval(a,j*w);H=freqs(b,a,w);subplot(2,1,1),plot(w,abs(H)),grid;subplot(2,1,2),plot(w,angle(H)),grid;u21=abs(U(1)*H(1))*cos(99*t+angle(U(1)*H(1)));u22=abs(U(2)*H(2))*cos(100*t+angle(U(2)*H(2)));u23=abs(U(3)*H(3))*cos(101*t+angle(U(3)*H(3)));u2=u21+u22+23;figure(2);subplot(2,1,1),plot(t,u1);subplot(2,1,2),plot(t,u2); 七、實驗結果: 10.90.80.79910.50-0.5-19999.299.499.699.8100100.2100.4100.6100.810199.299.499.699.8100100.2100.4100.6100.8101 210-1-***222101234567 八、實驗心得體會:通過本次試驗,了解了頻率響應求法,加深了對輸出穩態響應的印象。 九、實驗改進想法:無。 長江大學電工電子實驗中心實驗報告 野外獲得的重力數據要作進一步處理和解釋才能解決所提出的地質任務﹐主要分3個階段﹕野外觀測數據的處理﹐并繪制各種重力異常圖﹔重力異常的分解(應用平均法﹑場的變換﹑頻率濾波等方法)﹐即從疊加的異常中分出那些用來解決具體地質問題的異常﹔確定異常體的性質﹑形狀﹑產狀及其他特征參數。解釋 解釋分為定性的和定量的兩個內容﹐定性解釋是根據重力圖并與地質資料對比﹐初步查明重力異常性質和獲得有關異常源的信息。除某些構造外﹐對一般地質體重力異常的解釋可遵循以下的一些原則﹕極大的正異常說明與圍巖比較存在剩馀質量﹔反之﹐極小異常是由質量虧損引起的。靠近質量重心﹐在地表投影處將觀測到最大異常。最大的水平梯度異常相應于激發體的邊界。延伸異常相應于延伸的異常體﹐而等軸異常相應于等軸物體在地表的投影。對稱異常曲線說明質量相對于通過極值點的垂直平面是對稱分布的﹔反之﹐非對稱曲線是由于質量非對稱分布引起的。在平面上出現幾個極值的復雜異常輪廓﹐表明存在幾個非常接近的激發體。定量解釋是根據異常場求激發體的產狀要素建立重力模型。一種常用的反演方法是選擇法﹐即選擇重力模型使計算的重力異常與觀測重力異常間的偏差小于要求的誤差。 由于重力反演存在多解性﹐因此﹐必須依靠研究地區的地質﹑鉆井﹑巖石密度和其他物探資料來減少反演的多解性。應用運用領域 在區域地質調查﹑礦產普查和勘探的各個階段都可應用重力勘探﹐要根據具體的地質任務設計相應的野外工作方法。應用條件 應用重力勘探的條件是﹕被探測的地質體與圍巖的密度存在一定的差別﹔被探測的地質體有足夠大的體積和有利的埋藏條件﹔干擾水平低。意義 重力勘探解決以下任務﹕ 1、研究地殼深部構造﹔研究區域地質構造﹐劃分成礦遠景區﹔ 2、掩蓋區的地質填圖﹐包括圈定斷裂﹑斷塊構造﹑侵入體等﹔ 3、廣泛用于普查與勘探可燃性礦床(石油﹑天然氣﹑煤)﹐ 4、查明區域構造﹐確定基底起伏﹐發現鹽丘﹑背斜等局部構造﹔ 5、普查與勘探金屬礦床(鐵﹑鉻﹑銅﹑多金屬及其他)﹐主要用于查明與成礦有關的構造和巖體﹐進行間接找礦﹔ 6、也常用于尋找大的﹑近地表的高密度礦體﹐并計算礦體的儲量﹔工程地質調查﹐如探測巖溶﹐追索斷裂破碎帶等。 院系: 年級: 姓名: 實驗時間: 實驗地點: MATLAB實驗報告 專業: 班號: 學號: 《信號與系統》 實驗一 連續時間信號的表示及可視化 實驗題目: f(t)??(t);f(t)??(t);f(t)?eat(分別取a?0及a?0); f(t)?R(t);f(t)?Sa(?t);f(t)?Sin(2?ft)(分別畫出不同周期個數的波形)。 解題分析: 以上各類連續函數,先運用t = t1: p:t2的命令定義時間范圍向量,然后調用對應的函數,建立f與t的關系,最后調用plot()函數繪制圖像,并用axis()函數限制其坐標范圍。 實驗程序: (1)f(t)??(t) t=-1:0.01:3 %設定時間變量t的范圍及步長 f=dirac(t)%調用沖激函數dirac()plot(t,f)%用plot函數繪制連續函數 axis([-1,3,-0.5,1.5])%用axis函數規定橫縱坐標的范圍(2)f(t)??(t) t=-1:0.01:3 %設定時間變量t的范圍及步長 f=heaviside(t)%調用階躍函數heaviside()plot(t,f)%用plot函數繪制連續函數 title('f(t)=heaviside(t)')%用title函數設置圖形的名稱 axis([-1,3,-0.5,1.5])%用axis函數規定橫縱坐標的范圍(3)f(t)?eat a=1時: t=-5:0.01:5 %設定時間變量t的范圍及步長 f=exp(t)%調用指數函數exp() plot(t,f)%用plot函數繪制連續函數 title('f=exp(t)')%用title函數設置圖形的名稱 axis([-5,5,-1,100])%用axis函數規定橫縱坐標的范圍 a=2時: t=-5:0.01:5 f=exp(2*t)%調用指數函數exp()plot(t,f)title('f=exp(2*t)')axis([-5,5,-1,100])a=-2時: t=-5:0.01:5 f=exp(-2*t)plot(t,f)title('f=exp(-2*t)')axis([-5,5,-1,100])(4)f(t)?R(t) t=-5:0.01:5 f=rectpuls(t,2)%用rectpuls(t,a)表示門函數,默認以零點為中心,寬度為a plot(t,f)title('f=R(t)')axis([-5 5-0.5 1.5])(5)f(t)?Sa(?t) ω=1時: t=-20:0.01:20 f=sin(t)./t %調用正弦函數sin(),并用sin(t)./t實現抽樣函數 plot(t,f)title('f(t)=Sa(t)')axis([-20,-20,-0.5,1.1])3 ω=5時: t=-20:0.01:20 f=sin(5*t)./(5*t)plot(t,f)title('f(t)=Sa(5*t)')axis([-20,-20,-0.5,1.1])(6)f(t)?Sin(2?ft) ω=1時: t=-10:0.01:10 f=sin(t)%plot(t,f);title('f=sin(t)')axis([-10,10,-2,2])ω=5時: t=-10:0.01:10 f=sin(5*t)plot(t,f);title('f=sin(5*t)')axis([-10,10,-2,2]) 實驗結果; (1) 調用正弦函數sin()4 1.510.50-0.5-1-0.500.511.522.532) f(t)=heaviside(t)1.510.50-0.5-1-0.500.511.522.533)((a=1時: f=exp(t)***3020100-5-4-3-2-1012345a=2時: f=exp(2*t)***3020100-5-4-3-2-1012345 a=-2時: f=exp(-2*t)***3020100-5-4-3-2-1012345(4) f=R(t)1.510.50-0.5-5-4-3-2-1012345 (5)ω=1時: f(t)=Sa(t)10.80.60.40.20-0.2-0.4-20-15-10-505101520ω=5時: f(t)=Sa(5*t)10.80.60.40.20-0.2-0.4-20-15-10-505101520(6)ω=1時: f=sin(t)21.510.50-0.5-1-1.5-2-10-8-6-4-20246810 ω=5時: f=sin(5*t)21.510.50-0.5-1-1.5-2-10-8-6-4-20246810 實驗心得體會:(1)在 MATLAB中,是用連續信號在等時間間隔點的樣值來近似地表示連續信號的,當取樣時間間隔足夠小時,這些離散的樣值就能較好地近似出連續信號。在 MATLAB 中t = t1: p: t2的命令定義時間范圍向量,t1為信號起始時間,t2為終止時間,p為時間間隔。 (2)plot()函數可用于連續函數的繪制。 (3)用axis()函數限制坐標范圍,可使圖像更加勻稱美觀。 改進想法: 本題中函數的表示方法都不只一種。如階躍函數可以借助符號函數來實現可視化。其程序和結果如下: t=-5:0.05:5 f=sign(t)%調用符號函數sign()axis([-5,5,-1.1,1.1]) ff=1/2+1/2*f %運用階躍函數與符號函數的關系,表示出階躍函數ff plot(t,ff)axis([-5,5,-0.1,1.1]) f=heaviside(t)10.80.60.40.20-5-4-3-2-1012345 實驗二 離散時間信號的表示及可視化 實驗題目: f(n)??(n);f(n)??(n);f(n)?ean(分別取a?0及a?0); f(n)?RN(n)(分別取不同的N值);f(n)?Sa(n?); f(n)?Sin(n?)(分別取不同的?值); 解題分析: 以上各類離散函數,可仿照連續函數的可視化,先運用n =n1: p: n2的命令定義自變量的范圍及步長,然后調用對應的函數,建立f與t的關系,最后調用stem()函數繪制圖像,并用axis()函數限制其坐標范圍。 實驗程序: (1)f(n)??(n) n=-5:0.5:5 %設定時間變量n的范圍及步長 f=dirac(n)stem(n,f)%調用stem()繪制離散函數 title('f=dirac(t)')axis([-5,5,-3,10])%用axis函數規定橫縱坐標的范圍(2)f(n)??(n) n=-5:0.5:5 f=heaviside(n)stem(n,f)title('f=Heaviside(t)')axis([-5,5,-0.5,1.5])(3)f(n)?ean a=1時: n=-5:0.5:5 f=exp(n)stem(n,f)title('f=exp(n)')a=2時: n=-5:0.5:5 f=exp(2*n)stem(n,f)title('f=exp(2*n)')a=-2時: n=-5:0.5:5 f=exp(-2*n)stem(n,f)title('f=exp(-2*n)')(4)f(n)?RN(n) n=-5:0.5:5 f=rectpuls(n,2)stem(n,f)title('f=R(n)')axis([-5,5,-0.5,1.5])(5)f(n)?Sa(n?) ω=1時: n=-20:0.5:20 f=sin(n)./(n)stem(n,f)title('f=Sa(n)')axis([-20,-20,-0.5,1.1])ω=5時: n=-20:0.5:20 f=sin(5*n)./(5*n)13 stem(n,f)title('f=Sa(5*n)')axis([-20,-20,-1,5])(6)f(n)?Sin(n?) ω=1時: n=-5:0.5:5 f=sin(n)stem(n,f)title('f=sin(n)')axis([-5,5,-2,2])ω=5時: n=-5:0.5:5 f=sin(5*n)stem(n,f)title('f=sin(5*n)')axis([-5,5,-2,2]) 實驗結果; (1) f=dirac(t)1086420-2-5-4-3-2-10123452) f=Heaviside(t)1.510.50-0.5-5-4-3-2-10123453)((a=1時: f=exp(n)150100500-5-4-3-2-1012345a=2時: 2.5x 104f=exp(2*n)21.510.50-5-4-3-2-1012345 a=-2時: 4f=exp(-2*n)2.5x 1021.510.50-5-4-3-2-1012345(4) f=R(n)1.510.50-0.5-5-4-3-2-1012345 (5)ω=1時: f=Sa(n)10.80.60.40.20-0.2-0.4-20-15-10-505101520ω=5時: f=Sa(5*n)0.250.20.150.10.050-0.05-0.1-0.15-0.2-20-15-10-505101520(6)ω=1時: f=sin(n)21.510.50-0.5-1-1.5-2-5-4-3-2-1012345 ω=5時: f=sin(5*n)21.510.50-0.5-1-1.5-2-5-4-3-2-1012345 實驗心得體會: 用plot()函數可以繪制離散序列,但是與連續序列有所不同,需要在括號內加上'.'。但是plot()畫出來的函數圖像不直觀,顯得很凌亂。 改進想法: (1)對于離散函數,如果使用stem(n,f, '.')函數,繪圖效果更好。如抽樣函數的程序: n=-20:0.5:20 f=sin(n)./(n)stem(n,f,'.')title('f=Sa(n)')axis([-20,-20,-0.5,1.1])繪圖結果如下: f=Sa(n)10.80.60.40.20-0.2-0.4-20-15-10-505101520 對比可知此法做出的圖像更加清晰美觀。 (2)MATLAB 可以自動地根據曲線數據的范圍選擇合適的坐標系,從而使得曲線盡可能清晰地顯示出來,一般情況下不必選擇坐標系。但是,如果對 MATLAB自動產生的坐標軸不滿意,可以利用 axis 命令對坐標軸進行調整。 實驗三 系統的時域求解 實驗題目: 1.設h(n)?(0.9)nu(n),x(n)?u(n)?u(n?10),求y(n)?x(n)*h(n),并畫出x(n)、h(n)、y(n)波形。 y(n)?0.81y(n?2)?x(n)?x(n?2)的單位 j?2.求因果線性移不變系統抽樣響應h(n),并繪出H(e)的幅頻及相頻特性曲線。 解題分析: 1.用heaviside()和exp()函數 表示出x(n)和h(n),然后調用conv()函數實現x(n)和h(n)的卷積y(n)。并且分別將三個函數圖像繪出。 2.通過給矩陣a,b賦值,建立系統差分方程,然后調用impz()函數求系統的沖激響應,再用函數freqs(b,a)進行系統頻率響應的分析。 實驗程序: (1) n=-10:20 %設置變量范圍,默認步長為1 f=heaviside(n)x=heaviside(n)-heaviside(n-10)%階躍函數直接相減 figure(1)%產生圖像窗口1 stem(n,x)%繪制函數x title('x(n)')h=0.9.^n.*f %函數h的表達式 figure(2)%產生圖像窗口2 stem(n,h)%繪制函數h title('h(n)')n1=-20:40 y=conv(h,x)%調用conv()函數求h和x的卷積 figure(3)%產生圖像窗口3 stem(y)%繪制函數y title('y(n)=x(n)*h(n)')(2) a=[1 0-0.81] %描述系統的差分方程的系數 b=[1 0-1] %描述系統的差分方程的系數 figure(1)h=impz(n,m,-10:10)%調用impz()函數求系統的沖激響應 stem(h)%繪制函數h的離散序列 title('h(n)')figure(2)freqs(b,a)%對連續系統頻率響應H(jw)進行分析的函數freqs() 實驗結果; (1) x(n)10.90.80.70.60.50.40.30.20.10-10-505101520 h(n)0.90.80.70.60.50.40.30.20.10-10-505101520y(n)=x(n)*h(n)***05060702) (h(n)1.210.80.60.40.20-0.20510152025 100.09udeti100.05agnM100.0110-210-1100101Frequency(rad/s)1)s0.5reeeg(d0e hasP-0.5-110-210-1100101Frequency(rad/s) 實驗心得體會: (1)計算離散序列的卷積時,應考慮其結果的橫坐標范圍的改變。(2)向量相乘時,注意用‘.’。 (3)借助MATLAB的內部函數conv()可以很容易地完成兩個信號的卷積運算,并且其完成的是兩個多項式的乘法運算,在MATLAB中它們的系數構成一個行向量來表示。 (3)表示系統的方法是用系統函數分子和分母多項式系數行向量來表示。 改進想法: (1)n=-10:20 %f=heaviside(n)x=heaviside(n)-heaviside(n-10)%figure(1)%axis([-10,20,0,1])stem(n,x)%title('x(n)')h=0.9.^n.*f %figure(2)%stem(n,h)%axis([-10,20,0,1])title('h(n)')n1=-20:40 y=conv(h,x)%figure(3)%stem(y)%axis([0,62,0,7])title('y(n)=x(n)*h(n)') 運行結果: 設置變量范圍,默認步長為1 階躍函數直接相減 產生圖像窗口1 繪制函數x 函數h的表達式 產生圖像窗口2 繪制函數h 調用conv函數求h和x的卷積 產生圖像窗口3 繪制函數y 26 x(n)10.90.80.70.60.50.40.30.20.10-10-505101520h(n)10.90.80.70.60.50.40.30.20.10-10-505101520 y(n)=x(n)*h(n)***405060 實驗四 信號的DFT分析 實驗題目: 計算余弦序列x(n)?cos(?8n)RN(n)的DFT。分別對N=10、16、22時計算DFT,繪出X(k)幅頻特性曲線,分析是否有差別及產生差別的原因。 解題分析: 用矩陣代替門函數給變量n賦值,并設定不同的N值,然后調用fft()函數實現函數的傅里葉變換,然后用subplot()和stem()函數繪圖。 實驗程序: (1)N=10時: N=10 %設定N的值為10 n=[0:N-1] %用矩陣代替門函數給n賦值 x=cos((pi/8).*n)%調用cos()函數 y=fft(x)%調用fft()函數求x的傅里葉變換 subplot(2,1,1),stem(n,y)%繪制y的離散圖 title('DFT[cos((pi/8)*n]')subplot(2,1,2),stem(n,abs(y))%繪制y的幅頻特性曲線 title('X(k)')(2)N=16時: N=16 %設定N的值為16 n=[0:N-1] %用矩陣代替門函數給n賦值 x=cos((pi/8).*n)%調用cos()函數 y=fft(x)%調用fft()函數求x的傅里葉變換 subplot(2,1,1),stem(n,y)%繪制y的離散圖 title('DFT[cos((pi/8)*n]')subplot(2,1,2),stem(n,abs(y))%繪制y的幅頻特性曲線 title('X(k)')(3)N=22時: N=22 %設定N的值為22 n=[0:N-1] %用矩陣代替門函數給n賦值 x=cos((pi/8).*n)%調用cos()函數 y=fft(x)%調用fft()函數求x的傅里葉變換 subplot(2,1,1),stem(n,y)%繪制y的離散圖 title('DFT[cos((pi/8)*n]')subplot(2,1,2),stem(n,abs(y))%繪制y的幅頻特性曲線 title('X(k)') 實驗結果; (1)N=10時: DFT[cos((pi/8)*n]3210-10123456789X(k)64200123456789(2)N=16時: DFT[cos((pi/8)*n]1050-5051015X(k)864200510153)N=22時: DFT[cos((pi/8)*n]6420-20510152025X(k)***1(實驗結果分析: 由圖可知,不同的N值所對應的DFT序列和幅頻響應不同,是因為N代表DFT的變換區間長度,當N取不同的值時,函數所對應的離散傅里葉變換和幅頻特性曲線也不同。 實驗心得體會: MATLAB是計算機運算,無法實現無限時間信號和無限大數量的計算,故而周期信號只能取有限個諧波分量近似合成,即N值有限,且N值越大,仿真結果越接近。所以手工求取的傅里葉變換系數與MATLAB求取存在差別。 實驗五 系統時域解的快速卷積求法 實驗題目: 用快速卷積法計算系統響應 y(n)?x(n)*h(n),已知: x(n)?sin(0.4n)R15(n),h(n)?0.9nR20(n)。要求取不同的L點數,并畫出x(n)、h(n)、y(n)波形,分析是否有差別及產生差別的原因。 解題分析: 根據離散序列卷積及傅里葉變換的性質,可先求出兩函數x(n)和h(n)的L點傅里葉變換,分別得到Xk和Yk,然后求Xk和Yk之積Hk的傅里葉反變換,即得到了x(n)和h(n)的卷積y(n)。 實驗程序: L=10時: n1=[0:14] %用矩陣代替門函數給n1賦值 x=sin(0.4.*n1)%寫出x的表達式 n2=[0:19] %給n2賦值 y=0.9.^n2 %寫出y的表達式 Xk=fft(x,10)%調用fft()函數求x的L(=10)點傅里葉變換 Yk=fft(y,10)%求y的L點傅里葉變換 Hk=Xk.*Yk %寫出Hk的表達式 h=ifft(Hk)%調用ifft()函數求Hk的傅里葉反變換 subplot(3,1,1),stem(x)%繪制x的離散圖 title('x(n)')subplot(3,1,2),stem(y)%繪制y的離散圖 title('y(n)')subplot(3,1,3),stem(h)%繪制h的離散圖 title('h(n)')xlabel('L=10')%橫坐標處做標注 (2)L=18時: n1=[0:14] x=sin(0.4.*n1)n2=[0:19] y=0.9.^n2 Xk=fft(x,18)Yk=fft(y,18)Hk=Xk.*Yk h=ifft(Hk)subplot(3,1,1),stem(x)title('x(n)')subplot(3,1,2),stem(y)title('y(n)')subplot(3,1,3),stem(h)title('h(n)')xlabel('L=18')(3)L=28時: n1=[0:14] x=sin(0.4.*n1)n2=[0:19] y=0.9.^n2 Xk=fft(x,28)Yk=fft(y,28)Hk=Xk.*Yk h=ifft(Hk)subplot(3,1,1),stem(x)title('x(n)')subplot(3,1,2),stem(y)title('y(n)')subplot(3,1,3),stem(h)title('h(n)')34 xlabel('L=28')(4)L=35時: n1=[0:14] x=sin(0.4.*n1)n2=[0:19] y=0.9.^n2 Xk=fft(x,35)Yk=fft(y,35)Hk=Xk.*Yk h=ifft(Hk)subplot(3,1,1),stem(x)title('x(n)')subplot(3,1,2),stem(y)title('y(n)')subplot(3,1,3),stem(h)title('h(n)')xlabel('L=35') 實驗結果; (1)L=10時: x(n)10-1051015y(n)10.***1820h(n)42012345678910L=102)L=18時: x(n)10-1051015y(n)10.***1820h(n)50-***8L=183)L=28時: 36((x(n)10-1051015y(n)10.***1820h(n)50-5051015202530L=284)L=35時: x(n)10-1051015y(n)10.***1820h(n)50-***L=35 37(實驗結果分析: 由圖可知,當L取不同的值時,對應的y(n)波形形狀相似,但是有所不同,產生這種差別的原因是L代表傅里葉變換區間長度,當L取不同的值時,所對應的函數波形也有所差別。 實驗心得體會:(1)計算離散序列的卷積,雖然本實驗的快速卷積方法看上去多次變換了變量的域,使過程變復雜了,但實際上減少了計算量,是一種快速而簡單的方法。(2)用subplot繪圖函數可將圖形窗口分成若干等份,便于將多個圖像進行分組或者比較。 改進想法: 當L取不同的值時,matlab自動生成的圖像的橫縱坐標范圍不同,不便于相互比較,因此可以自己規定坐標軸范圍,這樣可以更加直觀地看出各波形間的差別。 信號與系統實驗 實驗一常用信號的觀察 方波: 正弦波: 三角波: 在觀測中,虛擬示波器完全充當實際示波器的作用,在工作臺上連接AD1為示波器的輸入,輸入方波、正弦波、三角波信號時,可在電腦上利用軟件觀測到相應的波形,其縱軸為幅值可通過設置實現幅值自動調節以觀測到最佳大小的波形,其橫軸為時間,宜可通過設置實現時間自動調節以觀測到最佳寬度的波形。實驗四非正弦周期信號的分解與合成 方波DC信號: DC信號幾乎沒有,與理論相符合,原信號沒有添加偏移。 方波基波信號: 基波信號為與原方波50Hz信號相對應的頻率為50Hz的正弦波信號,是方波分解的一次諧波信號。 方波二次諧波信號: 二次諧波信號頻率為100Hz為原方波信號頻率的兩倍,幅值較一次諧波較為減少。 方波三次諧波信號: 三次諧波信號頻率為150Hz為原方波信號的三倍。幅值較一二次諧波大為減少。 方波四次諧波信號: 四次諧波信號的頻率為200Hz為原方波信號的四倍。幅值較三次諧波再次減小。 方波五次諧波信號: 五次諧波頻率為250Hz為原方波信號的五倍。幅值減少到0.3以內,幾乎可以忽略。 綜上可知:50Hz方波可以分解為DC信號、基波信號、二次、三次、四次、五次諧波信號…,無偏移時即無DC信號,DC信號幅值為0。分解出來的基波信號即一次諧波信號頻率與原方波信號頻率相同,幅值接近方波信號的幅值。二次諧波、三次諧波、四次諧波、五次諧波依次頻率分別為原方波信號的二、三、四、五倍,且幅值依次衰減,直至五次諧波信號時幾乎可以忽略??芍?,方波信號可分解為多個諧波。方波基波加三次諧波信號: 基波疊加上三次諧波信號時,幅值與方波信號接近,形狀還有一定差異,但已基本可以看出疊加后逼近了方波信號。 方波基波加三次諧波信號加五次諧波信號: 基波信號、三次諧波信號、五次諧波信號疊加以后,比基波信號、三次諧波信號疊加后的波形更加接近方波信號。 綜上所述:方波分解出來的各次諧波以及DC信號,疊加起來以后會逼近方波信號,且疊加的信號越多,越是接近方波信號。說明,方波信號可有多個諧波合成。 三角波DC信號: 三角波基波信號: 三角波二次諧波信號: 三角波三次諧波信號: 三角波四次諧波信號: 三角波五次諧波信號: 三角波基波加三次諧波信號: 三角波基波加三次諧波加五次諧波信號: 三角波信號的分析與方波信號的分析基本一致,可以看出三角波也可以分解為多個諧波,并且相應的多個多次諧波可以合成三角波信號,且參與合成的波形越多,合成波越是逼近三角波信號。 綜合兩個波形來看,可知任何周期性函數均可分解為相應的傅里葉展開式里所包含的直流分量和各次諧波項。且任何周期性函數均可由鎖對應的直流分量和各次諧波項所合成,參與合成的信號越多,結果越逼近周期性函數的圖形。 實驗思考題 1.什么樣的周期性函數沒有直流分量和余弦項; 答:無偏移的周期性函數沒有直流分量,當周期性函數為奇函數時沒有直流分量和余弦項。 2.分析理論合成的波形與實驗觀測到的合成波形之間誤差產生的原因。 答:理論合成的波形不能把所有無限個諧波合成起來,故必然產生誤差,且實驗設備、實驗方法也存在一定的誤差。 實驗二 零輸入、零狀態級完全響應 零輸入響應下降沿采樣: 零輸入響應上升沿采樣: 可見,零輸入響應按照指數形式下降,最終降為零。其規律符合-1tU(t)=RCc2e。第三篇:信號與系統實驗報告1
第四篇:信號與系統 MATLAB實驗報告
第五篇:信號與系統實驗報告總結