信號與系統(tǒng)實驗教案.doc_第1頁
信號與系統(tǒng)實驗教案.doc_第2頁
信號與系統(tǒng)實驗教案.doc_第3頁
信號與系統(tǒng)實驗教案.doc_第4頁
信號與系統(tǒng)實驗教案.doc_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

信 號 與 系 統(tǒng)實驗指導(dǎo)書(Matlab)董海兵湖南工學(xué)院電氣與信息工程系二一年三月一日26前 言信號與系統(tǒng)、數(shù)字信號處理是電子信息類專業(yè)的兩門主要技術(shù)基礎(chǔ)課程,是電子信息類專業(yè)本科生的必修課程,也是電子信息類專業(yè)碩士研究生入學(xué)必考課程。該課程的任務(wù)在于研究信號與系統(tǒng)理論的基本概念和基本分析方法,使學(xué)生初步認(rèn)識如何建立信號與系統(tǒng)的數(shù)學(xué)模型,如何經(jīng)適當(dāng)?shù)臄?shù)學(xué)分析求解,并對所得結(jié)果給予物理解釋,賦予物理意義。該課程的基本理論和方法大量用于計算機(jī)信息處理的各個領(lǐng)域,特別是通信、數(shù)字語音處理、數(shù)字圖像處理、數(shù)字信號分析等領(lǐng)域應(yīng)用更為廣泛。通過實驗,配合信號與系統(tǒng)和數(shù)字信號處理課程的教學(xué)、加強(qiáng)學(xué)生對信號與系統(tǒng)理論的感性認(rèn)識、提高學(xué)生的綜合能力具有重要的意義。長期以來,信號與系統(tǒng)和數(shù)字信號處理課程一直采用黑板式的單一教學(xué)方式,學(xué)生僅依靠做習(xí)題來鞏固和理解教學(xué)內(nèi)容,對課程中大量的應(yīng)用性較強(qiáng)的內(nèi)容不能實際動手設(shè)計、調(diào)試、分析,嚴(yán)重影響和制約了教學(xué)效果。由于黑板式教學(xué),課程中大量的信號分析結(jié)果缺乏可視化的直觀表現(xiàn),學(xué)生自己設(shè)計系統(tǒng)也不能直觀地得到系統(tǒng)特性的可視化測試結(jié)果,學(xué)生將大量的時間和精力用于繁雜的手工數(shù)學(xué)運算,而未真正理解所得結(jié)果在信號處理中的實際意義。近年來,計算機(jī)多媒體教序手段的運用逐步普及,大量優(yōu)秀的科學(xué)計算和系統(tǒng)仿真軟件不斷涌現(xiàn),為我們實現(xiàn)計算機(jī)輔助教學(xué)和學(xué)生上機(jī)實驗提供了很好的平臺。通過對這些軟件的分析和對比,我們選擇MATLAB語言作為輔助教學(xué)工具,借助MATLAB強(qiáng)大的計算能力和圖形表現(xiàn)能力,將信號與系統(tǒng)和數(shù)字信號處理中的概念、方法和相應(yīng)的結(jié)果,以圖形的形式直觀地展現(xiàn)給學(xué)生,大大的方便學(xué)生迅速掌握和理解教學(xué)內(nèi)容。為了使學(xué)生能夠較好的使用MATLAB語言完成相應(yīng)的實驗任務(wù),本指導(dǎo)書中詳細(xì)地給出了與信號與系統(tǒng)相關(guān)的眾多的MATLAB函數(shù)及其用法,同時給出了一些范例程序,說明針對某一具體問題進(jìn)行編程的方法等。學(xué)生們在實驗前,只要認(rèn)真閱讀、預(yù)習(xí)實驗的相關(guān)內(nèi)容,并在實驗中,嚴(yán)格按照實驗指導(dǎo)書中規(guī)定的實驗內(nèi)容和步驟進(jìn)行實驗,即可完成相應(yīng)的實驗報告。信號與系統(tǒng)實驗指導(dǎo)書中設(shè)計的實驗項目包括:1、信號與系統(tǒng)的時域分析;2、連續(xù)時間信號的頻域分析;3、連續(xù)時間LTI系統(tǒng)的頻域分析; 4、通信系統(tǒng)仿真;5、連續(xù)時間LTI系統(tǒng)的復(fù)頻域分析。所有這些實驗項目和所涉及到的實驗內(nèi)容基本上覆蓋了信號與系統(tǒng)這門課程的大部分主要內(nèi)容。和其他課程的實驗指導(dǎo)書有所不同的是,本實驗指導(dǎo)同時兼作實驗報告之用,目的是希望將學(xué)生從不是特別必要的實驗報告的文字撰寫中解脫出來,從而將主要精力和時間用到對問題的分析、算法的確定和程序的編寫之中。本實驗指導(dǎo)中所給出的全部范例程序,都在MATLAB6.5上運行,且是正確的。由于時間倉促和編者水平有限,本實驗指導(dǎo)在編寫和編輯的過程中,不可避免地存在錯誤和不當(dāng)之處,懇請老師和同學(xué)們批評指正。 湖南工學(xué)院電氣與信息工程系二一年三月一日目 錄實驗一:連續(xù)時間信號與系統(tǒng)的時域分析-6一、實驗?zāi)康募耙?6二、實驗原理-61、信號的時域表示方法-62、用MATLAB仿真連續(xù)時間信號和離散時間信號-73、LTI系統(tǒng)的時域描述-11三、實驗步驟及內(nèi)容-15四、實驗報告要求-26實驗二:連續(xù)時間信號的頻域分析-27一、實驗?zāi)康募耙?27二、實驗原理-271、連續(xù)時間周期信號的傅里葉級數(shù)CTFS-272、連續(xù)時間信號的傅里葉變換CTFT-283、離散時間信號的傅里葉變換DTFT -284、連續(xù)時間周期信號的傅里葉級數(shù)CTFS的MATLAB實現(xiàn)-295、用MATLAB實現(xiàn)CTFT及其逆變換的計算-33三、實驗步驟及內(nèi)容-34四、實驗報告要求-48實驗三:連續(xù)時間LTI系統(tǒng)的頻域分析-49一、實驗?zāi)康募耙?49二、實驗原理-491、連續(xù)時間LTI系統(tǒng)的頻率響應(yīng)-492、LTI系統(tǒng)的群延時-503、用MATLAB計算系統(tǒng)的頻率響應(yīng)-50三、實驗步驟及內(nèi)容-51四、實驗報告要求-58實驗四:通信系統(tǒng)仿真-59一、實驗?zāi)康募耙?59二、實驗原理-591、信號的抽樣及抽樣定理-592、信號抽樣過程中的頻譜混疊-623、信號重建- -624、調(diào)制與解調(diào)-645、通信系統(tǒng)中的調(diào)制與解調(diào)仿真-66三、實驗步驟及內(nèi)容-66四、實驗報告要求-75實驗五:連續(xù)時間LTI系統(tǒng)的復(fù)頻域分析-76一、實驗?zāi)康募耙?76二、實驗原理-761、連續(xù)時間LTI系統(tǒng)的復(fù)頻域描述-762、系統(tǒng)函數(shù)的零極點分布圖-773、拉普拉斯變換與傅里葉變換之間的關(guān)系-784、系統(tǒng)函數(shù)的零極點分布與系統(tǒng)穩(wěn)定性和因果性之間的關(guān)系-795、系統(tǒng)函數(shù)的零極點分布與系統(tǒng)的濾波特性-806、拉普拉斯逆變換的計算-81三、實驗步驟及內(nèi)容-82四、實驗報告要求-87實驗一 信號與系統(tǒng)的時域分析一、實驗?zāi)康?、熟悉和掌握常用的用于信號與系統(tǒng)時域仿真分析的MATLAB函數(shù);2、掌握連續(xù)時間和離散時間信號的MATLAB產(chǎn)生,掌握用周期延拓的方法將一個非周期信號進(jìn)行周期信號延拓形成一個周期信號的MATLAB編程;3、牢固掌握系統(tǒng)的單位沖激響應(yīng)的概念,掌握LTI系統(tǒng)的卷積表達(dá)式及其物理意義,掌握卷積的計算方法、卷積的基本性質(zhì);4、掌握利用MATLAB計算卷積的編程方法,并利用所編寫的MATLAB程序驗證卷積的常用基本性質(zhì);掌握MATLAB描述LTI系統(tǒng)的常用方法及有關(guān)函數(shù),并學(xué)會利用MATLAB求解LTI系統(tǒng)響應(yīng),繪制相應(yīng)曲線。基本要求:掌握用MATLAB描述連續(xù)時間信號和離散時間信號的方法,能夠編寫MATLAB程序,實現(xiàn)各種信號的時域變換和運算,并且以圖形的方式再現(xiàn)各種信號的波形。掌握線性時不變連續(xù)系統(tǒng)的時域數(shù)學(xué)模型用MATLAB描述的方法,掌握卷積運算、線性常系數(shù)微分方程的求解編程。二、實驗原理信號(Signal)一般都是隨某一個或某幾個獨立變量的變化而變化的,例如,溫度、壓力、聲音,還有股票市場的日收盤指數(shù)等,這些信號都是隨時間的變化而變化的,還有一些信號,例如在研究地球結(jié)構(gòu)時,地下某處的密度就是隨著海拔高度的變化而變化的。一幅圖片中的每一個象素點的位置取決于兩個坐標(biāo)軸,即橫軸和縱軸,因此,圖像信號具有兩個或兩個以上的獨立變量。 在信號與系統(tǒng)課程中,我們只關(guān)注這種只有一個獨立變量(Independent variable)的信號,并且把這個獨立變量統(tǒng)稱為時間變量(Time variable),不管這個獨立變量是否是時間變量。 在自然界中,大多數(shù)信號的時間變量都是連續(xù)變化的,因此這種信號被稱為連續(xù)時間信號(Continuous-Time Signals)或模擬信號(Analog Signals),例如前面提到的溫度、壓力和聲音信號就是連續(xù)時間信號的例子。但是,還有一些信號的獨立時間變量是離散變化的,這種信號稱為離散時間信號。前面提到的股票市場的日收盤指數(shù),由于相鄰兩個交易日的日收盤指數(shù)相隔24小時,這意味著日收盤指數(shù)的時間變量是不連續(xù)的,因此日收盤指數(shù)是離散時間信號。 而系統(tǒng)則用于對信號進(jìn)行運算或處理,或者從信號中提取有用的信息,或者濾出信號中某些無用的成分,如濾波,從而產(chǎn)生人們所希望的新的信號。系統(tǒng)通常是由若干部件或單元組成的一個整體(Entity)。系統(tǒng)可分為很多不同的類型,例如,根據(jù)系統(tǒng)所處理的信號的不同,系統(tǒng)可分為連續(xù)時間系統(tǒng)(Continuous-time system)和離散時間系統(tǒng)(Discrete-time system),根據(jù)系統(tǒng)所具有的不同性質(zhì),系統(tǒng)又可分為因果系統(tǒng)(Causal system)和非因果系統(tǒng)(Noncausal system)、穩(wěn)定系統(tǒng)(Stable system)和不穩(wěn)定系統(tǒng)(Unstable system)、線性系統(tǒng)(Linear system)和非線性系統(tǒng)(Nonlinear system)、時變系統(tǒng)(Time-variant system)和時不變系統(tǒng)(Time-invariant system)等等。 然而,在信號與系統(tǒng)和數(shù)字信號處理中,我們所分析的系統(tǒng)只是所謂的線性時不變系統(tǒng),這種系統(tǒng)同時滿足兩個重要的基本性質(zhì),那就是線性性和時不變性,通常稱為線性時不變(LTI)系統(tǒng)。1. 信號的時域表示方法1.1將信號表示成獨立時間變量的函數(shù)例如 x(t)=sin(t) 和 xn=n(0.5)nun分別表示一個連續(xù)時間信號和一個離散時間信號。在MATLAB中有許多內(nèi)部函數(shù),可以直接完成信號的這種表達(dá),例如:sin():正弦信號cos():余弦信號exp():指數(shù)信號1.2用信號的波形圖來描述信號用函數(shù)曲線表示一個信號,圖1.1就是一個連續(xù)時間信號和一個離散時間信號的波形圖。圖1.1 連續(xù)時間信號與離散時間信號的波形圖1.3將信號用一個數(shù)據(jù)序列來表示對于離散時間信號,還可以表示成一個數(shù)的序列,例如: xn=., 0.1, 1.1, -1.2, 0, 1.3, . n=0 在信號與系統(tǒng)和數(shù)字信號處理課程中,上述三種信號的描述方法是經(jīng)常要使用的。2 用MATLAB仿真連續(xù)時間信號和離散時間信號 在MATLAB中,無論是連續(xù)時間信號還是離散時間信號,MATLAB都是用一個數(shù)字序列來表示信號,這個數(shù)字序列在MATLAB中叫做向量(vector)。通常的情況下,需要與時間變量相對應(yīng)。 如前所述,MATLAB有很多內(nèi)部數(shù)學(xué)函數(shù)可以用來產(chǎn)生這樣的數(shù)字序列,例如sin()、cos()、exp()等函數(shù)可以直接產(chǎn)生一個按照正弦、余弦或指數(shù)規(guī)律變化的數(shù)字序列。2.1連續(xù)時間信號的仿真程序Program1_1是用MATLAB對一個正弦信號進(jìn)行仿真的程序,請仔細(xì)閱讀該程序,并在計算機(jī)上運行,觀察所得圖形。% Program1_1% This program is used to generate a sinusoidal signal and draw its plotclear, % Clear all variablesclose all, % Close all figure windowsdt = 0.01; % Specify the step of time variablet = -2:dt:2; % Specify the interval of timex = sin(2*pi*t); % Generate the signalplot(t,x) % Open a figure window and draw the plot of x(t)title(Sinusoidal signal x(t)xlabel(Time t (sec)常用的圖形控制函數(shù)axis(xmin,xmax,ymin,ymax):圖型顯示區(qū)域控制函數(shù),其中xmin為橫軸的顯示起點,xmax為橫軸的顯示終點,ymin為縱軸的顯示起點,ymax為縱軸的顯示終點。有時,為了使圖形具有可讀性,需要在所繪制的圖形中,加上一些網(wǎng)格線來反映信號的幅度大小。MATLAB中的grid on/grid off可以實現(xiàn)在你的圖形中加網(wǎng)格線。grid on:在圖形中加網(wǎng)格線。grid off:取消圖形中的網(wǎng)格線。x = input(Type in signal x(t) in closed form:)在信號與系統(tǒng)課程中,單位階躍信號u(t) 和單位沖激信號(t) 是二個非常有用的信號。它們的定義如下 1.1(a) 1.1(b)這里分別給出相應(yīng)的簡單的產(chǎn)生單位沖激信號和單位階躍信號的擴(kuò)展函數(shù)。產(chǎn)生單位沖激信號的擴(kuò)展函數(shù)為:function y = delta(t)dt = 0.01;y = (u(t)-u(t-dt)/dt;產(chǎn)生單位階躍信號的擴(kuò)展函數(shù)為:% Unit step functionfunction y = u(t)y = (t=0); % y = 1 for t 0, else y = 0 請將這二個MATLAB函數(shù)分別以delta 和u為文件名保存在work文件夾中,以后,就可以像教材中的方法使用單位沖激信號(t) 和單位階躍信號u(t)。2.2離散時間信號的仿真程序Program1_2用來產(chǎn)生離散時間信號xn=sin(0.2n)。% Program1_2% This program is used to generate a discrete-time sinusoidal signal and draw its plotclear, % Clear all variablesclose all, % Close all figure windowsn = -10:10; % Specify the interval of timex = sin(0.2*pi*n); % Generate the signalstem (n,x) % Open a figure window and draw the plot of xntitle (Sinusoidal signal xn)xlabel (Time index n) 請仔細(xì)閱讀該程序,比較程序Program1_1和Program1_2中的不同之處,以便自己編程時能夠正確使用這種方法方針連續(xù)時間信號和離散時間信號。 程序Program1_3用來仿真下面形式的離散時間信號: xn=., 0.1, 1.1, -1.2, 0, 1.3, . n=0% Program1_3% This program is used to generate a discrete-time sequence% and draw its plotclear, % Clear all variablesclose all, % Close all figure windowsn = -5:5; % Specify the interval of time, the number of points of n is 11.x = 0, 0, 0, 0, 0.1, 1.1, -1.2, 0, 1.3, 0, 0; % Generate the signalstem(n,x,.) % Open a figure window and draw the plot of xngrid on,title (A discrete-time sequence xn)xlabel (Time index n) 由于在程序的stem(n,x,.) 語句中加有.選項,因此繪制的圖形中每根棒條線的頂端是一個實心點。 如果需要在序列的前后補(bǔ)較多的零的話,可以利用函數(shù)zeros(),其語法為: zeros(1, N):圓括號中的1和N表示該函數(shù)將產(chǎn)生一個一行N列的矩陣,矩陣中的所有元素均為零。利用這個矩陣與序列xn進(jìn)行組合,從而得到一個長度與n相等的向量。 例如,當(dāng) xn= 0.1, 1.1, -1.2, 0, 1.3 時,為了得到程序Program1_3中的序列, n=0可以用這個MATLAB語句x = zeros(1,4) x zeros(1, 2) 來實現(xiàn)。用這種方法編寫的程序如下:% Program1_4% This program is used to generate a discrete-time sinusoidal signal% and draw its plotclear, % Clear all variablesclose all, % Close all figure windowsn = -5:5; % Specify the interval of timex = zeros(1,4), 0.1, 1.1, -1.2, 0, 1.3, zeros(1,2); % Generate the sequencestem (n,x,.) % Open a figure window and draw the plot of xngrid on,title (A discrete-time sequence xn)xlabel (Time index n) 離散時間單位階躍信號un定義為 1.2離散時間單位階躍信號un除了也可以直接用前面給出的擴(kuò)展函數(shù)來產(chǎn)生,還可以利用MATLAB內(nèi)部函數(shù)ones(1,N) 來實現(xiàn)。這個函數(shù)類似于zeros(1,N),所不同的是它產(chǎn)生的矩陣的所有元素都為1。 值得注意的是,利用ones(1,N) 來實現(xiàn)的單位階躍序列并不是真正的單位階躍序列,而是一個長度為N單位門(Gate)序列,也就是un-un-N。但是在一個有限的圖形窗口中,我們看到的還是一個單位階躍序列。 在繪制信號的波形圖時,有時我們需要將若干個圖形繪制在圖一個圖形窗口中,這就需要使用MATLAB的圖形分割函數(shù)subplot(),其用法是在繪圖函數(shù)stem或plot之前,使用圖形分割函數(shù)subplot(n1,n2,n3),其中的參數(shù)n1,n2和n3的含義是,該函數(shù)將把一個圖形窗口分割成n1xn2個子圖,即將繪制的圖形將繪制在第n3個子圖中。2.3信號的時域變換2.3.1 信號的時移 信號的時移可用下面的數(shù)學(xué)表達(dá)式來描述: 設(shè)一個連續(xù)時間信號為x(t),它的時移y(t) 表示為: y(t) = x(t - t0) 1.3其中,t0為位移量。若t0為正數(shù),則y(t)等于將x(t)右移t0秒之后的結(jié)果。反之,若t0為負(fù)數(shù),則y(t)等于將x(t)左移t0秒之后的結(jié)果。 在MATLAB中,時移運算與數(shù)學(xué)上習(xí)慣表達(dá)方法完全相同。 程序Program1_5對給定一個連續(xù)時間信號x(t) = e-0.5tu(t),對它分別左移2秒鐘和右移2秒鐘得到信號x1(t) = e-0.5(t+2)u(t+2)和x2(t) = e-0.5(t-2)u(t-2)。% Program1_5% This program is used to implement the time-shift operation% on a continuous-time signal and to obtain its time-shifted versions% and to draw their plots.clear,close all,t = -5:0.01:5;x = exp(-0.5*t).*u(t); % Generate the original signal x(t)x1 = exp(-0.5*(t+2).*u(t+2); % Shift x(t) to the left by 2 second to get x1(t)x2 = exp(-0.5*(t-2).*u(t-2); % Shift x(t) to the right by 2 second to get x2(t)subplot(311)plot(t,x) % Plot x(t)grid on,title (Original signal x(t)subplot (312)plot (t,x1) % Plot x1(t)grid on,title (Left shifted version of x(t)subplot (313)plot (t,x2) % Plot x2(t)grid on,title (Right shifted version of x(t)xlabel (Time t (sec)2.3.2 信號的時域反褶 對一個信號xn的反褶運算在數(shù)學(xué)上表示為 yn = x-n 1.4 這種反褶運算,用MATLAB實現(xiàn)起來也是非常簡單的。有多種方法可以實現(xiàn)信號的反褶運算。方法一,修改繪圖函數(shù)plot(t,x)和stem(n,x)中的時間變量t和n,即用-t和-n替代原來的t和n,這樣繪制出來的圖形,看起來就是原信號經(jīng)時域反褶后的版本。方法二,直接利用原信號與其反褶信號的數(shù)學(xué)關(guān)系式來實現(xiàn)。這種方法最符合信號反褶運算的實際意義。方法三,使用MATLAB內(nèi)部函數(shù)fliplr()來實現(xiàn)信號的反褶運算。其用法如下: y = fliplr(x):其中x為原信號x(t)或xn,而y則為x的時域反褶。需要說明的是,函數(shù)fliplr()對信號作時域反褶,僅僅將信號中各個元素的次序作了一個反轉(zhuǎn),這種反轉(zhuǎn)處理是獨立于時間變量t和n的。因此,如果信號與其時間變量能夠用一個數(shù)學(xué)函數(shù)來表達(dá)的話,那么建議將時間變量t和n的范圍指定在一個正負(fù)對稱的時間區(qū)間即可。2.3.3 信號的時域尺度變換 信號x(t)的時域尺度變換在數(shù)學(xué)描述為y(t) = x(at), 1.5其中a為任意常數(shù)。根據(jù)a的不同取值,這種時域尺度變換對信號x(t)具有非常不同的影響。 當(dāng)a = 1時,y(t) = x(t); 當(dāng)a = -1時,y(t) = x(-t),即y(t)可以通過將x(t)反褶運算而得到; 當(dāng)a 1時,y(t) = x(at),y(t)是將x(t)在時間軸上的壓縮而得到; 當(dāng)0 a 1時,y(t) = x(at),y(t)是將x(t)在時間軸上的擴(kuò)展而得到; 當(dāng) -1 a 0時,y(t) = x(at),y(t)是將x(t)在時間軸上的擴(kuò)展同時翻轉(zhuǎn)而得到; 當(dāng) a 0 時圖形右移,t 0時圖形左移。4. 計算兩個信號重疊部分的乘積x()h(t-);5. 完成相乘后圖形的積分。對于兩個時限信號(Time-limited signal),按照上述的五個步驟,作卷積積分運算時,關(guān)鍵是正確確定不同情況下的積分限。只要正確地確定了積分限都能得到正確定積分結(jié)果。盡管如此,在時域中計算卷積積分,總體上來說是一項比較困難的工作。借助MATLAB的內(nèi)部函數(shù)conv()可以很容易地完成兩個信號的卷積積分運算。其語法為:y = dt*conv(x,h)。其中x和h分別是兩個作卷積運算的信號,y為卷積結(jié)果。對于定義在不同時間段的兩個時限信號x(t),t0 t t1,和h(t),t2 t t3。 如果用y(t)來表示它們的卷積結(jié)果,則y(t)的持續(xù)時間范圍要比x(t)或h(t)要長,其時間范圍為t0+t2 t t1+t3。這個特點很重要,利用這個特點,在處理信號在時間上的位置時,可以很容易地將信號的函數(shù)值與時間軸的位置和長度關(guān)系保持一致性。根據(jù)給定的兩個連續(xù)時間信號x(t) = tu(t)-u(t-1)和h(t) = u(t)-u(t-1),編寫程序,完成這兩個信號的卷積運算,并繪制它們的波形圖。范例程序如下:% Program1_6% This program computes the convolution of two continuou-time signalsclear;close all;t0 = -2; t1 = 4; dt = 0.01;t = t0:dt:t1;x = u(t)-u(t-1);h = t.*(u(t)-u(t-1);y = dt*conv(x,h); % Compute the convolution of x(t) and h(t)subplot(221)plot(t,x), grid on, title(Signal x(t), axis(t0,t1,-0.2,1.2)subplot(222)plot(t,h), grid on, title(Signal h(t), axis(t0,t1,-0.2,1.2)subplot(212)t = 2*t0:dt:2*t1; % Again specify the time range to be suitable to the % convolution of x and h.plot(t,y), grid on, title(The convolution of x(t) and h(t), axis(2*t0,2*t1,-0.1,0.6), xlabel(Time t sec)在有些時候,做卷積和運算的兩個序列中,可能有一個序列或者兩個序列都非常長,甚至是無限長,MATLAB處理這樣的序列時,總是把它看作是一個有限長序列,具體長度由編程者確定。實際上,在信號與系統(tǒng)分析中所遇到的無限長序列,通常都是滿足絕對可和或絕對可積條件的信號。因此,對信號采取這種截短處理盡管存在誤差,但是通過選擇合理的信號長度,這種誤差是能夠減小到可以接受的程度的。若這樣的一個無限長序列可以用一個數(shù)學(xué)表達(dá)式表示的話,那么,它的長度可以由編程者通過指定時間變量n的范圍來確定。例如,對于一個單邊實指數(shù)序列xn = 0.5nun,通過指定n的范圍為0 n 100,則對應(yīng)的xn的長度為101點,雖然指定更寬的n的范圍,xn將與實際情況更相符合,但是,注意到,當(dāng)n大于某一數(shù)時,xn之值已經(jīng)非常接近于0了。對于序列xn = 0.5nun,當(dāng)n = 7時,x7 = 0.0078,這已經(jīng)是非常小了。所以,對于這個單邊實指數(shù)序列,指定更長的n的范圍是沒有必要的。當(dāng)然,不同的無限長序列具有不同的特殊性,在指定n的范圍時,只要能夠反映序列的主要特征就可以了。3.4 用線性常系數(shù)微分方程描述LTI系統(tǒng)線性常系數(shù)微分方程或差分方程是描述LTI系統(tǒng)的另一個時域模型。一個連續(xù)時間LTI系統(tǒng),它的輸入信號x(t)輸出信號y(t)關(guān)系可以用下面的微分方程來表達(dá) 1.12式1.12中,max (N, M)定義為系統(tǒng)的階。式1.12描述了LTI系統(tǒng)輸入信號和輸出信號的一種隱性關(guān)系(Implicit relationship)。為了求得系統(tǒng)響應(yīng)信號的顯式表達(dá)式(Explicit expression),必須對微分方程和差分方程求解。 在MATLAB中,一個LTI系統(tǒng)也可以用系統(tǒng)微分方程的系數(shù)來描述,例如,一個LTI連續(xù)時間系統(tǒng)的微分方程為 MATLAB則用兩個系數(shù)向量num = 1和den = 1 3 2來描述該系統(tǒng),其中num和den分別表示系統(tǒng)微分方程右邊和左邊的系數(shù),按照微分運算的降階排列。MATLAB的內(nèi)部函數(shù)impulse(),step(),initial(),lsim() 可以用來計算并繪制連續(xù)時間LTI系統(tǒng)的單位沖激響應(yīng),單位階躍響應(yīng),零輸入響應(yīng)和任意信號作用于系統(tǒng)的零狀態(tài)響應(yīng)。這些函數(shù)的用法描述如下:h= impulse(num, den, T) 和 impulse(num, den, T)s = step(num, den, T) 和 step(num, den, T)y = lsim(num, den, x, t) 和 lsim (num, den, x, t)函數(shù)impulse(),step()用來計算由num和den表示的LTI系統(tǒng)的單位沖激響應(yīng)和單位階躍響應(yīng),響應(yīng)的時間范圍為0T,其中den和num分別為系統(tǒng)微分方程左右兩邊的系數(shù)向量,T為指定的響應(yīng)的終點時間。h和s的點數(shù)默認(rèn)值為101點。由此可以計算時間步長為dt = T/(101-1)。不帶返回值的函數(shù)如impulse(num, den, T)和step(num, den, T)將直接在屏幕上繪制系統(tǒng)的單位沖激響和單位階躍響應(yīng)曲線。帶返回值的函數(shù)如y = lsim(num, den, x, t)和y = lsim(num, den, x, t),用來計算由num和den表示的LTI系統(tǒng)在輸入信號x作用下的零狀態(tài)響應(yīng)。其中t為指定的時間變化范圍,x為輸入信號,它們的長度應(yīng)該是相同的。如帶返回參數(shù)y,則將計算的響應(yīng)信號保存在y中,若不帶返回參數(shù)y,則直接在屏幕上繪制輸入信號x和響應(yīng)信號y的波形圖。例如,編寫程序,計算并繪制由下面的微分方程表示的系統(tǒng)的單位沖激響應(yīng)h(t),單位階躍響應(yīng)s(t)。 MATL

溫馨提示

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

評論

0/150

提交評論