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