信號與系統(tǒng)課程是電子信息類專業(yè)重要的專業(yè)基礎課,,它以高等數(shù)學、線性代數(shù),、電路分析以及工程數(shù)學等課程為基礎,,同時又是后續(xù)如通信原理、數(shù)字信號處理以及研究生階段現(xiàn)代數(shù)字信號處理,、隨機信號分析等專業(yè)課程的基礎,,在整個專業(yè)教育體系中起著承上啟下的作用。該課程理論性強,、概念抽象且難以理解,、公式推導復雜計算繁瑣、實驗內(nèi)容豐富等特點,,使得其成為一門數(shù)學方法,、專業(yè)理論和工程應用密切相結(jié)合的課程。因此,,教學效果成敗的關(guān)鍵不在于學生認識和記憶了多少定義定理的條文,,而應注重正確引導學生運用數(shù)學工具分析典型的實際問題,。
實驗教學是該課程理論學習中必不可少的部分。但是,,在實驗教學中面臨很多問題,,諸如高校需要花費大量的經(jīng)費購置實驗儀器;硬件實驗儀器易于損壞,、操作復雜,、中間過程可視性差等。虛擬實驗技術(shù)的出現(xiàn)使上述問題迎刃而解,。虛擬實驗是指借助于多媒體,、仿真和虛擬現(xiàn)實等技術(shù)在計算機上營造可輔助、部分替代甚至全部替代傳統(tǒng)實驗各操作環(huán)節(jié)的相關(guān)軟硬件操作環(huán)境,,實驗者可以像在真實的環(huán)境中一樣完成各種實驗項目,,所取得的實驗效果等價于甚至優(yōu)于在真實環(huán)境中所取得的效果。虛擬實驗建立在一個虛擬的實驗環(huán)境(平臺仿真)之上,,并且注重實驗操作的交互性和實驗結(jié)果的仿真性,。虛擬實驗是現(xiàn)代實驗教學的發(fā)展模式,它能夠有效地補充和完善硬件實驗,,緩解實驗設備不足和滯后等問題,;允許出現(xiàn)誤操作,獲得“零”維護保障,,便于開展設計型,、綜合型實驗;二次開發(fā)和維護容易,。因此,,研究信號與系統(tǒng)虛擬實驗技術(shù)能夠有效地補充完善課程的實驗教學。
1 開發(fā)工具MATLAB簡介
MATLAB作為虛擬實驗仿真最常用軟件之一,,在進行實驗項目開發(fā)時能夠有效彌補某些傳統(tǒng)硬件實驗箱的不足,利用其圖形用戶界面設計技術(shù)和強大的仿真功能完成原來在物理設備上所要完成的理論實驗,,不僅可將抽象理論知識運用圖形,、文字、數(shù)據(jù)等多種形式展現(xiàn),,更為實驗教學提供一個界面友好,、操作簡便的虛擬環(huán)境。
MATLAB是英文MATrix LABoratory(矩陣實驗室)的縮寫,,是美國MathWorks公司推出的商業(yè)化科技應用軟件,,是一套適合多學科的、功能強大的工程計算和系統(tǒng)仿真軟件,。它也是一種面向?qū)ο蟮慕换ナ匠绦蛟O計語言,,具有友好的用戶界面及接近數(shù)學表達式的自然化語言,、高效的數(shù)值計算及符號計算功能、完備的圖形處理功能以及功能豐富的應用工具箱等特點,。在利用其進行工程計算和系統(tǒng)仿真時,,可以略去復雜的理論推導過程,使得編程快捷方便,,易于實現(xiàn),。
MATLAB的GUI工具是一種包含多種圖形對象的界面,主要包括圖形顯示,、功能按鈕控件以及用戶自定義的功能菜單等,,利用屬性、事件過程,、菜單等編輯器,,可以構(gòu)建一個功能完善,界面良好的交互式操作平臺,,實現(xiàn)人機信息的交互,。在設計界面內(nèi),用戶可以根據(jù)提示完成整個工程,,而不必關(guān)心工程內(nèi)部如何進行工作,。GUI設計主要依附于MATIAB環(huán)境提供的基本科學計算,同時也可利用GUIDE進行設計,,方便的穿件各種圖形句柄對象,,實現(xiàn)仿真平臺的
用戶界面設計。
2 虛擬實驗系統(tǒng)設計
筆者借助于MATLAB軟件及其GUI工具,,開發(fā)設計可視化的信號與系虛擬實驗平臺,,通過簡單友好的交互式界面,完善實驗教學,。
2.1 系統(tǒng)模塊結(jié)構(gòu)
從信號與系統(tǒng)的理論教學內(nèi)容著手分析,,結(jié)合傳統(tǒng)的信號與系統(tǒng)硬件實驗箱實現(xiàn)的實驗項目,將信號與系統(tǒng)虛擬實驗系統(tǒng)分為信號實驗和系統(tǒng)實驗兩大部分,,然后針對每部分實驗再分別從連續(xù)時間和離散時間兩個方面進行虛擬仿真實現(xiàn),。信號實驗方面主要包括:信號的表示和仿真、信號的時域運算,、信號的變換(傅里葉變換,、拉普拉斯變換、Z變換),;系統(tǒng)實驗方面主要包括系統(tǒng)的時域分析,、頻域分析、S域分析以及Z域分析,。同時兼顧連續(xù)和離散兩種特性,,對虛擬實驗系統(tǒng)進行模塊劃分逐一實現(xiàn),,系統(tǒng)模塊結(jié)構(gòu)劃分如圖1所示。
2.2 系統(tǒng)GUI界面設計
GUI界面是由窗口,、菜單,、按鈕、文字說明等對象構(gòu)成的用戶界面,,用戶通過一定的方法激活這些圖形對象,,使計算機產(chǎn)生某些動作或變化。本系統(tǒng)的GUI界面設計主要是利用MATLAB中的GUIDE工具進行設計,。設計中用到的控件有:靜態(tài)文本框(Static text),、可編輯文本框(Editabletext)、框架(Frames),、命令按鈕(Push buttons),、列表框(Listboxes)等;設計中涉及到的GUI界面主要包括虛擬實驗平臺主界面,、每一個具體實驗項目界面以及對應的仿真實例子界面等,,其中進入虛擬實驗系統(tǒng)主界面如圖2所示。
3 仿真實例分析
3.1 實例一:信號波形仿真
在該課程的理論學習中,,對常用的連續(xù)信號和離散信號一直沒有比較直觀的認識,,很多只是停留在信號的數(shù)學表達式層面,并對由硬件實驗箱實現(xiàn)的信號波形持有懷疑態(tài)度,。虛擬實驗仿真平臺的設計,,使得可以選擇想要觀察學習的信號,通過輸入相關(guān)參數(shù)進行計算仿真,,便可以直觀地觀察到信號的波形,。以正弦信號f(t)=Asin(ωt+θ)和正弦序列f(k)=Asin(wk+n)為例,對兩種信號分別輸入相應的參數(shù)值,,計算輸出的信號仿真波形分別如圖3和圖4所示,,并且從兩圖中能直觀地看出信號的三要素,即幅值A,、頻率ω和初相θ(或n),。
3.2 實例二:系統(tǒng)時域分析
對于線性時不變系統(tǒng),連續(xù)時間系統(tǒng)以常系數(shù)微分方程來描述,,離散時間系統(tǒng)以常系數(shù)差分方程來描述。如果系統(tǒng)的輸入信號及初始狀態(tài)已知,,通過數(shù)學方法便可以很容易求出系統(tǒng)的沖激響應,、階躍響應、零輸入響應和零狀態(tài)響應,。由于運用數(shù)學工具進行求解,,得出的結(jié)果仍為數(shù)學表達式,,學生很難直觀地認識系統(tǒng)的激勵和響應之間的關(guān)聯(lián)。在本虛擬實驗系統(tǒng)中,,可以對激勵和響應進行仿真輸出,,這樣使得我們對其具有實時性、直觀性和逼真性認識和理解,。
以二階LTI連續(xù)時間系統(tǒng)為例,,其微分方程為:
取C0=1,C1=7,,C2=10,,E0=1,E1=1,,E2=2,,系統(tǒng)的激勵e(t)=2sin(πt),起始狀態(tài)r(0)=-6/5,,r’(0)=2,,輸入相應參數(shù),系統(tǒng)輸出仿真結(jié)果如圖5所示,。
4 結(jié)論
主要介紹了基于MATLAB的信號與系統(tǒng)虛擬實驗系統(tǒng)的設計思路和方法,,并對具體實例虛擬仿真實現(xiàn)。該系統(tǒng)的實現(xiàn)對信號與系統(tǒng)課程的理論教學起到很好的輔助作用,,通過虛擬仿真實現(xiàn),,擺脫了抽象的數(shù)學公式,加深了對復雜理論的理解和掌握,,并且系統(tǒng)操作簡單快捷,,大大地提高了實驗教學效果。