訊號與系統上機實驗指導書

2023-02-09 05:51:10 字數 5435 閱讀 5212

《訊號與系統》

上機實驗指導書

山東建築大學

資訊與電氣工程學院

電子資訊教研室

實驗一、連續訊號的時域描述與運算3

實驗二、離散訊號的時域描述與運算14

實驗三、連續訊號的頻域分析19

實驗四、離散訊號的頻域分析

實驗五、連續線性時不變系統分析22

一、 實驗目的

1, 通過繪製典型訊號的波形,了解這些訊號的基本特徵;

2, 通過繪製訊號運算結果的波形,了解這些訊號運算對訊號所起的作用。

二、 實驗原理及方法

1. 基於matlab的訊號描述方法

如果乙個訊號在連續時間範圍內(除有限個間斷點外)有定義,則稱該訊號為連續時間訊號,簡稱為連續訊號。從嚴格意義上講,matlab數值計算方法並不能處理連續訊號,但是可以利用連續訊號在等時間間隔點的取樣值來近似表示連續訊號,即當取樣間隔足夠小時,這些離散取樣值能夠被matlab處理,並且能夠較好地近似表示連續訊號。

(1)向量表示法

對於連續時間訊號f(t),可以定義兩個行向量f和t來表示,其中向量t是形如t=t1:△t:t2的matlab命令定義的時間範圍向量,t1為訊號的起始時間,t2為終止時間,△t為時間間隔;向量f為連續時間訊號f(t)在向量t所定義的時間點上的取樣值。

例如對於連續正弦訊號,可以用向量表示式表示為:

t=-8:1:8;

y=sin(pi*t/4);

plot(t,y);

grid on;

axis([-8 8 -1.1 1.1]);

繪製的訊號波形如實驗圖1-1所示,當把時間間隔△t取得更小(如△t=0。01)時,就可以得到f(t)較好的近似波形,如實驗圖1-2所示。

(2)符號運算表示法

如果訊號可以用乙個符號表示式來表示,則可用ezplot命令繪製出訊號的波形。例如對於連續訊號,可以用符號表示式表示為:

f=sym(『sin(pi/4*t)』);

ezplot(f,[-8 8]);

該命令繪製的訊號波形如實驗圖1-3所示。

2. 常用連續訊號的matlab表示

(1) 單位階躍訊號u(t)

實驗圖1-1 時間間隔為1時的訊號波形實驗圖1-2 時間間隔為0.01時的訊號波形

實驗圖1-3 符號表示法繪製的訊號波形

實驗圖1-4 單位階躍訊號

matlab中用he**iside()表示,如實驗圖1-4所示。

matlab源程式:

he**iside()函式定義:

function f=he**iside(t)

f=(t>=0);

函式he**iside(t)的使用

t=-1:0.01:1;

y=he**iside(t);

plot(t,y);

grid on;

axis([-1 1 -0.1 1.1]);

(2) 單位衝激訊號δ(t)

matlab中用dirac()表示,如實驗圖1-5所示。

matlab源程式:

衝激函式定義:

function dirac(t1,t2,t0)

dt=0.01;

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.2/dt])

title('單位衝擊訊號δ(t)');

衝激函式的呼叫

dirac(-4,4,0);

實驗圖1-5 單位衝激訊號

(3) 符號函式sgn(t)

matlab中用sign()表示,如實驗圖1-6所示。

matlab源程式:

t=-1:0.01:1;

y=sign(t);

plot(t,y);

grid on;

實驗圖1-6 符號函式

(4) 取樣函式sa(t)

如實驗圖1-7所示。

matlab源程式:

t=-10*pi:0.1:10*pi;

y=sinc(t/pi);

plot(t,y);

grid on;

axis([-10 10 -0.3 1.1]);

(5) 門函式gτ(t)

運用matlab的內部函式rectpuls,呼叫格式為:

y=rectpuls(t) % 產生幅度為1,門寬為1,對稱中心在t=0的門函式

y=rectpuls(t,w) %產生幅度為1,門寬為w,對稱中心在t=0的門函式

y=rectpuls(t,t0,w) % 產生幅度為1,門寬為w,對稱中心在t=t0的門函式

實驗圖1-7 取樣函式

實驗圖1-8 單位斜坡訊號

(6) 單位斜坡訊號

單位斜坡訊號的數學表示式為

matlab源程式:

t=-3:0.01:3;

f=t.*he**iside(t);

plot(t,f);

axis([-3 3 -0.1 3.1]);

grid on;

3. 連續訊號的基本運算

(1)訊號的相加與相乘

已知訊號f1(t)、f2(t),訊號相加和相乘記為:

f(t)=f1(t)+f2(t)

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

訊號與訊號相加、相乘後的波形如實驗圖1-9所示。

matlab源程式:

t=0:0.01:3;

f1=he**iside(t)-he**iside(t-1);

f2=t.*(he**iside(t)-he**iside(t-1))+he**iside(t-1);

subplot(2,2,1);

plot(t,f1);grid on;axis([-1 2 -0.1 1.1])

subplot(2,2,2);

plot(t,f2);grid on;axis([-1 3 -0.1 1.1])

subplot(2,2,3);

plot(t,f1+f2);grid on;axis([-1 2 0 2.2])

subplot(2,2,4);

plot(t,f1.*f2);grid on;axis([-1 2 -0.1 1.1])

(2)訊號的微分與積分

對於連續時間訊號,其微分運算是用diff函式來完成的。其語句格式為:

diff(function,』variable』,n);

其中function表示需要進行求導運算的訊號,或者被賦值的符號表示式;variable為求導運算的獨立變數;n為求導的階數,預設值為一階導數。

實驗圖1-9 訊號與訊號相加與相乘的波形

連續訊號的積分運算用int函式來完成,其語句格式為:

int(function,』variable』,a,b);

其中function為被積訊號,或者被賦值的符號表示式,variable為積分變數,a,b為積分上、下限,a和b省略時求不定積分。

對實驗1-9中的訊號f2(t)求微分,其波形如實驗圖1-10所示;對實驗圖1-9中的訊號f1(t)求積分,其波形如實驗圖1-11所示。

matlab源程式:

syms t f2;

f2=t*(he**iside(t)-he**iside(t-1))+he**iside(t-1);

f=diff(f2,'t',1);

t=-1:0.01:2;

ezplot(f,t);

grid on;

matlab源程式:

syms t f1;

f1=he**iside(t)-he**iside(t-1);

f=int(f1,'t');

t=-1:0.01:2;

ezplot(f,t);

grid on;

實驗圖1-10 訊號的微分

實驗圖1-11 訊號的積分

三、 實驗內容及步驟

1, 上機實驗前,認真閱讀實驗原理,掌握訊號表示和訊號運算方法。

2, 利用matlab命令畫出下列連續訊號的波形圖。

(1) (2-e-t)*u(t2) u(cos(t))

(3) 產生幅度為1,週期為1,占空比為0.5的週期矩形訊號。

3, 已知f(t)的波形如實驗圖1-12所示,作出f(t)+f(t)、f(t)*f(t)、f(t)的微分、f(t)的積分的波形。

實驗圖1-12

四、 思考題

1, 討論f(t+t0)與f(-t+t0)平移的方向是否相同,為什麼?

2, 講訊號f(t)程式設計f(-2t+4)共有多少中方法,請列舉出來。

五、 實驗報告要求

1, 簡述實驗目的和實驗原理。

2, 程式設計實現實驗內容,要求附上源程式。

3, 回答思考題。

4, 總結試驗中的主要結論、收穫和體會。

一、 實驗目的

1, 掌握常用時域離散訊號的matlab表示方法。

2, 掌握離散訊號的基本運算,包括訊號相加、相乘、平移、反轉、差分與累加和等。

二、 實驗原理及方法

離散時間訊號是指在離散時刻才有定義的訊號,簡稱離散訊號或者序列。離散訊號的繪製一般用stem函式,matlab只能表示一定時間範圍內有限長度的序列,而對於無限長序列,只能在一定範圍內表示出來。

常用離散訊號的matlab表示

(1) 單位階躍序列u(n)

如實驗圖2-1所示。

實驗圖2-1 單位階躍序列

matlab源程式:

n=-3:5;x=u(n);

stem(n,x,'fill');xlabel('n');ylabel(『u(n)』);grid on;axis([-3 5 -0.1 1.1]);

function f=u(n)

f=(n>=0);

(2) 單位脈衝序列

如實驗圖2-2所示。matlab源程式:

n=-3:3;x=delta(n);

stem(n,x,'fill');xlabel('n');grid on;axis([-3 3 -0.1 1.1]);

function f=delta(n)

f=(n==0);

實驗圖2-2 單位脈衝序列

(3) 矩形序列rn(n)

如實驗圖2-3所示。matlab源程式:

n=-2:8;

x=u(n)-u(n-4);

stem(n,x,'fill');xlabel('n');grid on;axis([-2 8 -0.1 1.1]);

實驗圖2-3 矩形序列

(4) 單邊指數序列f(n)=anu(n)

如實驗圖2-4所示。matlab源程式:

n=0:10;

a1=1.2;a2=-1.2;a3=0.8;a4=-0.8;

f1=a1.^n;f2=a2.^n;f3=a3.^n;f4=a4.^n;

subplot(2,2,1);stem(n,f1,'fill');xlabel('n');grid on;

訊號與系統實驗指導書

前言一 概述 訊號與系統 是電子資訊工程 通訊工程 無線電技術 自動控制 生物醫學 電子工程等專業的重要基礎課,也是各院校相應專業的主幹課程。由於這門課程系統性 理論性很強,為此非常有必要開設實驗課程,使學生通過實驗課鞏固和加深對基礎理論和基本概念的理解,培養學生分析問題和解決問題的能力,同時使抽象...

訊號與系統實驗指導書

訊號與系統 實驗指導書 天津大學精儀學院 感測技術與測控電學實驗室 2010 實驗一二階有源電路濾波系統設計以及頻率響應特性分析 一 實驗目的 通過定性觀察不同輸入訊號下的電路輸出,理解輸入訊號的頻譜分布與系統頻率響應的相對關係對訊號的影響 通過二階系統頻率響應特性的定量測試,考察系統引數對典型二階...

《數字訊號處理》上機實驗指導書

一 引言 數字訊號處理 是一門理論和實驗密切結合的課程,為了深入地掌握課程內容,應當在學習理論的同時,做習題和上機實驗。上機實驗不僅可以幫助學生深入地理解和消化基本理論,而且能鍛鍊初學者的獨立解決問題的能力。所以,根據本課程的重點要求編寫了四個實驗。第一章 二章是全書的基礎內容,抽樣定理 時域離散系...