陳杰,姚娜,呂海芳
(1.塔里木大學(xué)信息工程學(xué)院通信工程系,阿拉爾843300;2.塔里木大學(xué)信息工程學(xué)院計(jì)算機(jī)系,阿拉爾843300)
各高校針對(duì)通信工程及相關(guān)專業(yè)開設(shè)的《通信原理》課程不但實(shí)用性強(qiáng),而且涉及面非常廣闊,該課程對(duì)通信電子類學(xué)生的專業(yè)學(xué)習(xí)非常重要[1]。但是,教師在《通信原理》課程授課過(guò)程中,容易出現(xiàn)因理論知識(shí)深?yuàn)W、公式復(fù)雜而導(dǎo)致的學(xué)生接受困難的現(xiàn)象[2]。而此課程的實(shí)驗(yàn)部分,一般都是在實(shí)驗(yàn)箱上進(jìn)行,這就造成了實(shí)驗(yàn)課和理論課分離授課的現(xiàn)象,而且通信原理實(shí)驗(yàn)設(shè)備昂貴、折舊速度快、維護(hù)費(fèi)用較高[3]。為此,利用MATLAB 各種函數(shù)庫(kù)和GUI 圖形界面設(shè)計(jì)一款實(shí)驗(yàn)軟件。教師可以利用該軟件進(jìn)行輔助教學(xué)和實(shí)驗(yàn)演示,使課堂講授與仿真軟件相結(jié)合,不僅能達(dá)到更好的教學(xué)效果。而且對(duì)于一些較難講解的內(nèi)容、一些抽象的概念、難以觀察的某些現(xiàn)象及發(fā)展過(guò)程,利用MATLAB的計(jì)算功能和圖形處理功能,可使其準(zhǔn)確、形象、直觀地表現(xiàn)出來(lái),從而加深了學(xué)生對(duì)所學(xué)知識(shí)的理解,起到了事半功倍的教學(xué)效果[4]。
MATLAB 中的GUI 即圖形用戶界面,是Graphical User Interface 簡(jiǎn)稱,是由各種圖形對(duì)象,如圖形窗口、圖軸、菜單、按鈕、文本框等構(gòu)建的用戶界面,是人機(jī)交互的有效工具和方法[5]。用戶通過(guò)GUIDE 可以很方便地設(shè)計(jì)出各種符合要求的圖形用戶界面,給人非常直觀、清晰易懂的特點(diǎn),在界面設(shè)計(jì)上被廣泛采用[6]。
本系統(tǒng)是基于MATLAB 的GUI 進(jìn)行設(shè)計(jì)的,MATLAB 是通信類專業(yè)學(xué)生必須掌握的一門語(yǔ)言,學(xué)生在操作方面有一定的基礎(chǔ),相對(duì)于實(shí)驗(yàn)箱更容易接受。在通信原理實(shí)驗(yàn)平臺(tái)的整個(gè)系統(tǒng)設(shè)計(jì)過(guò)程中,設(shè)計(jì)每個(gè)子系統(tǒng)時(shí),都需要遵循以下步驟:
(1)GUI 界面設(shè)計(jì)。首先,根據(jù)配套的《通信原理》書籍,針對(duì)需要實(shí)現(xiàn)的功能,設(shè)計(jì)并手動(dòng)繪制草圖;然后使用MATLAB 自帶的用戶界面開發(fā)環(huán)境GUI 提供的眾多對(duì)象創(chuàng)建出用戶所需要的圖形用戶界面,將設(shè)計(jì)好的主界面和各個(gè)子界面都制作出來(lái);最后,對(duì)界面進(jìn)行對(duì)象排列、間距調(diào)整、界面美化以及背景設(shè)置。
(2)界面中各個(gè)對(duì)象的回調(diào)函數(shù)的設(shè)計(jì)。根據(jù)前面所設(shè)計(jì)好的圖形用戶界面,對(duì)各個(gè)對(duì)象分別進(jìn)行程序和函數(shù)回調(diào),讓界面能夠?qū)崿F(xiàn)之前所設(shè)計(jì)的各個(gè)功能。
根據(jù)上述原則和步驟,本文根據(jù)實(shí)際需要對(duì)系統(tǒng)平臺(tái)進(jìn)行了界面設(shè)計(jì),設(shè)計(jì)流程如圖1 所示。
圖1 系統(tǒng)設(shè)計(jì)流程圖
該系統(tǒng)主要由1 個(gè)一級(jí)界面、四個(gè)二級(jí)子界面和10 個(gè)三級(jí)子界面組成。在該系統(tǒng)中能實(shí)現(xiàn)主界面對(duì)各子界面的調(diào)用,各個(gè)子界面也能夠通過(guò)相關(guān)的按鈕逐步返回到主界面。本系統(tǒng)平臺(tái)基本包括了《通信原理》課程所需要的所有的必做實(shí)驗(yàn)。
主界面的設(shè)計(jì)中,主要選取了一個(gè)“List box”對(duì)象,添加一個(gè)“Push Button”對(duì)象。其中,把“List box”里面的String 改為四個(gè)二級(jí)子界面的名字:模擬調(diào)制、數(shù)字基帶傳輸、數(shù)字頻帶傳輸、模擬信號(hào)的數(shù)字化;在“Push Button”對(duì)象的屬性中,F(xiàn)ontSize 設(shè)置為10,String 改為“結(jié)束系統(tǒng)”;設(shè)計(jì)并添加背景圖片,運(yùn)行后界面如圖2所示。
圖2 《通信原理》實(shí)驗(yàn)系統(tǒng)主界面
本子部分要實(shí)現(xiàn)的功能為在圖形界面輸入各參數(shù),輸出該時(shí)段的信號(hào)波形、解調(diào)信號(hào)與輸入信號(hào)的比較和信號(hào)功率譜。本界面設(shè)計(jì)了一個(gè)說(shuō)明部分,里面對(duì)調(diào)制和解調(diào)參數(shù)進(jìn)行了簡(jiǎn)單的說(shuō)明,對(duì)于理論知識(shí)不牢固的學(xué)生起到提醒和注釋的作用;幅度調(diào)制區(qū)有載波信號(hào)、調(diào)制信號(hào)、DSB-SC 信號(hào)、AM 信號(hào)、VSB 信號(hào)、和SSB 上邊帶信號(hào),幅度調(diào)制區(qū)的參數(shù)手動(dòng)輸入數(shù)據(jù)框,進(jìn)行設(shè)置以后,通過(guò)點(diǎn)擊對(duì)應(yīng)的按鈕可以在左邊的圖區(qū)看到相應(yīng)的圖形;角度調(diào)制區(qū)設(shè)置了調(diào)頻信號(hào)的按鈕,對(duì)角度參數(shù)設(shè)置之后,可以通過(guò)此按鈕在左邊對(duì)應(yīng)的圖形區(qū)域查看相應(yīng)的調(diào)頻曲線;左下角的返回按鈕可以直接回到系統(tǒng)主界面。圖3 所示為設(shè)置了參數(shù)之后的顯示SSB 相關(guān)信號(hào)的波形模擬調(diào)制子系統(tǒng)的界面。
圖3 模擬調(diào)制系統(tǒng)
在該子系統(tǒng)中,分為基帶信號(hào)眼圖、升余弦滾降系統(tǒng)和數(shù)字基帶信號(hào)三個(gè)子界面。如圖4 所示。在基帶信號(hào)眼圖界面中,通過(guò)區(qū)域已可以觀察滾將系數(shù)為1的基帶信號(hào)及其眼圖;在區(qū)域2 中進(jìn)行了精簡(jiǎn)的說(shuō)明提按鈕示信息,并可以設(shè)置兩路濾波器,通過(guò)點(diǎn)擊本區(qū)的“眼圖”按鈕,可以觀看經(jīng)過(guò)兩路濾波之后的眼圖。在升余弦滾降系統(tǒng)中,設(shè)計(jì)了一個(gè)參數(shù)區(qū),可以同時(shí)輸入兩個(gè)滾降系數(shù),通過(guò)“輸出”按鈕可以輸出升余弦滾降頻譜和波形;如果不輸入滾降系數(shù),就會(huì)以系數(shù)為0的方式輸出滾降波形及其頻譜。在所設(shè)計(jì)的數(shù)字基帶信號(hào)系統(tǒng)中,手動(dòng)輸入信號(hào)抽樣值(量化單位),通過(guò)點(diǎn)擊單極性不歸零碼(NRZ)、單極性歸零碼(RZ)、雙極性不歸零碼(BNRZ)和雙極性歸零碼(BNZ)相關(guān)按鈕就可以在對(duì)應(yīng)的圖形窗口觀察波形,抽樣值所對(duì)應(yīng)的PCM 編碼值也在相應(yīng)的窗口生成。為了讓學(xué)生能更好更直觀地理解實(shí)驗(yàn)過(guò)程里面添加一部分說(shuō)明信息,這部分也可以根據(jù)授課需要添加實(shí)驗(yàn)報(bào)告的整個(gè)過(guò)程和理論說(shuō)明。
圖5 圖6 和圖7 分別為基帶信號(hào)眼圖、升余弦滾降系統(tǒng)和數(shù)字基帶信號(hào)系統(tǒng)的運(yùn)行界面。
圖5 基帶信號(hào)眼圖界面
圖6 升余弦滾降系統(tǒng)界面
圖7 數(shù)字基帶信號(hào)系統(tǒng)界面
數(shù)字頻帶信號(hào)也稱數(shù)字調(diào)制信號(hào),它的信號(hào)頻譜一般為帶通型的,主要適應(yīng)于帶通信號(hào)信道中傳輸[5]。此處主要對(duì)2ASK、2FSK、2PSK 進(jìn)行了子系統(tǒng)的設(shè)計(jì)。
在2ASK 的設(shè)計(jì)界面,對(duì)載波信號(hào)進(jìn)行說(shuō)明,學(xué)生可以很直觀地了解到載波頻率對(duì)整個(gè)載波起到什么樣的影響;在參數(shù)設(shè)置區(qū),學(xué)生通過(guò)輸入?yún)?shù)載波頻率來(lái)查看輸出輸入信號(hào)及其對(duì)應(yīng)的功率譜密度波形、2ASK信號(hào)以及其對(duì)應(yīng)的功率譜密度波形。2PSK 與2ASK設(shè)計(jì)界面完全一樣,內(nèi)部關(guān)聯(lián)函數(shù)稍有區(qū)別。在2FSK的系統(tǒng)設(shè)計(jì)中,“2FSK”按鈕能直接觀察基帶及其反碼的波形,通過(guò)在“參數(shù)設(shè)置區(qū)”設(shè)置兩路參數(shù),可以觀察原碼及其反碼、兩路載波和2FSK 的波形;另外在“說(shuō)明”區(qū)對(duì)兩路載波進(jìn)行了說(shuō)明。
圖8 數(shù)字頻帶傳輸子系統(tǒng)界面
圖9 2ASK調(diào)制子系統(tǒng)界面
圖10 2PSK調(diào)制系統(tǒng)界面
圖11 2FSK調(diào)制系統(tǒng)界面
模擬信號(hào)的數(shù)字化子系統(tǒng)設(shè)計(jì)了抽樣和非均勻量化。在抽樣子系統(tǒng),輸入低通信號(hào)的幅度、頻率和抽樣速度,就可以在繪圖區(qū)觀察到原始信號(hào)、抽樣信號(hào)和抽樣恢復(fù)信號(hào)的波形。在非均勻量化子系統(tǒng),對(duì)量化區(qū)間和壓縮特性進(jìn)行了說(shuō)明,通過(guò)“輸出”按鈕,可以觀察A 律和U 律壓縮特性曲線。圖12-14 分別為數(shù)字化子系統(tǒng)界面、抽樣定理仿真界面和非均勻量化界面。
圖12 模擬信號(hào)的數(shù)字化子系統(tǒng)
圖13 抽樣界面
圖14 非均勻量化界面
此平臺(tái)建立后通過(guò)一定的步驟可將其轉(zhuǎn)換成可執(zhí)行安裝文件EXE 格式,在沒(méi)有安裝MATLAB 的計(jì)算機(jī)上仍然可以進(jìn)行演示。
此實(shí)驗(yàn)平臺(tái)基本囊括了學(xué)生通過(guò)通信原理試驗(yàn)箱所要完成的所有實(shí)驗(yàn),并且可以根據(jù)需要可以隨時(shí)增加實(shí)驗(yàn)。事實(shí)證明,基于MATLAB GUI 的通信原理實(shí)驗(yàn)平臺(tái)加入實(shí)際教學(xué)中解決了通信原理課程實(shí)驗(yàn)完全依賴實(shí)驗(yàn)箱的現(xiàn)狀,對(duì)學(xué)生理解理論知識(shí)起到很好的輔助作用;由于系統(tǒng)所展示的波形和曲線比實(shí)驗(yàn)箱直觀和可操作性,更容易激發(fā)學(xué)生的學(xué)習(xí)興趣,而且節(jié)省時(shí)間也節(jié)省力氣;通過(guò)分析程序代碼,對(duì)學(xué)生本編程興趣和編程能力也有一定的提高,得到教師和學(xué)生的一致認(rèn)可。