陳杰,姚娜,呂海芳
(1.塔里木大學信息工程學院通信工程系,阿拉爾843300;2.塔里木大學信息工程學院計算機系,阿拉爾843300)
各高校針對通信工程及相關專業開設的《通信原理》課程不但實用性強,而且涉及面非常廣闊,該課程對通信電子類學生的專業學習非常重要[1]。但是,教師在《通信原理》課程授課過程中,容易出現因理論知識深奧、公式復雜而導致的學生接受困難的現象[2]。而此課程的實驗部分,一般都是在實驗箱上進行,這就造成了實驗課和理論課分離授課的現象,而且通信原理實驗設備昂貴、折舊速度快、維護費用較高[3]。為此,利用MATLAB 各種函數庫和GUI 圖形界面設計一款實驗軟件。教師可以利用該軟件進行輔助教學和實驗演示,使課堂講授與仿真軟件相結合,不僅能達到更好的教學效果。而且對于一些較難講解的內容、一些抽象的概念、難以觀察的某些現象及發展過程,利用MATLAB的計算功能和圖形處理功能,可使其準確、形象、直觀地表現出來,從而加深了學生對所學知識的理解,起到了事半功倍的教學效果[4]。
MATLAB 中的GUI 即圖形用戶界面,是Graphical User Interface 簡稱,是由各種圖形對象,如圖形窗口、圖軸、菜單、按鈕、文本框等構建的用戶界面,是人機交互的有效工具和方法[5]。用戶通過GUIDE 可以很方便地設計出各種符合要求的圖形用戶界面,給人非常直觀、清晰易懂的特點,在界面設計上被廣泛采用[6]。
本系統是基于MATLAB 的GUI 進行設計的,MATLAB 是通信類專業學生必須掌握的一門語言,學生在操作方面有一定的基礎,相對于實驗箱更容易接受。在通信原理實驗平臺的整個系統設計過程中,設計每個子系統時,都需要遵循以下步驟:
(1)GUI 界面設計。首先,根據配套的《通信原理》書籍,針對需要實現的功能,設計并手動繪制草圖;然后使用MATLAB 自帶的用戶界面開發環境GUI 提供的眾多對象創建出用戶所需要的圖形用戶界面,將設計好的主界面和各個子界面都制作出來;最后,對界面進行對象排列、間距調整、界面美化以及背景設置。
(2)界面中各個對象的回調函數的設計。根據前面所設計好的圖形用戶界面,對各個對象分別進行程序和函數回調,讓界面能夠實現之前所設計的各個功能。
根據上述原則和步驟,本文根據實際需要對系統平臺進行了界面設計,設計流程如圖1 所示。

圖1 系統設計流程圖
該系統主要由1 個一級界面、四個二級子界面和10 個三級子界面組成。在該系統中能實現主界面對各子界面的調用,各個子界面也能夠通過相關的按鈕逐步返回到主界面。本系統平臺基本包括了《通信原理》課程所需要的所有的必做實驗。
主界面的設計中,主要選取了一個“List box”對象,添加一個“Push Button”對象。其中,把“List box”里面的String 改為四個二級子界面的名字:模擬調制、數字基帶傳輸、數字頻帶傳輸、模擬信號的數字化;在“Push Button”對象的屬性中,FontSize 設置為10,String 改為“結束系統”;設計并添加背景圖片,運行后界面如圖2所示。

圖2 《通信原理》實驗系統主界面
本子部分要實現的功能為在圖形界面輸入各參數,輸出該時段的信號波形、解調信號與輸入信號的比較和信號功率譜。本界面設計了一個說明部分,里面對調制和解調參數進行了簡單的說明,對于理論知識不牢固的學生起到提醒和注釋的作用;幅度調制區有載波信號、調制信號、DSB-SC 信號、AM 信號、VSB 信號、和SSB 上邊帶信號,幅度調制區的參數手動輸入數據框,進行設置以后,通過點擊對應的按鈕可以在左邊的圖區看到相應的圖形;角度調制區設置了調頻信號的按鈕,對角度參數設置之后,可以通過此按鈕在左邊對應的圖形區域查看相應的調頻曲線;左下角的返回按鈕可以直接回到系統主界面。圖3 所示為設置了參數之后的顯示SSB 相關信號的波形模擬調制子系統的界面。

圖3 模擬調制系統
在該子系統中,分為基帶信號眼圖、升余弦滾降系統和數字基帶信號三個子界面。如圖4 所示。在基帶信號眼圖界面中,通過區域已可以觀察滾將系數為1的基帶信號及其眼圖;在區域2 中進行了精簡的說明提按鈕示信息,并可以設置兩路濾波器,通過點擊本區的“眼圖”按鈕,可以觀看經過兩路濾波之后的眼圖。在升余弦滾降系統中,設計了一個參數區,可以同時輸入兩個滾降系數,通過“輸出”按鈕可以輸出升余弦滾降頻譜和波形;如果不輸入滾降系數,就會以系數為0的方式輸出滾降波形及其頻譜。在所設計的數字基帶信號系統中,手動輸入信號抽樣值(量化單位),通過點擊單極性不歸零碼(NRZ)、單極性歸零碼(RZ)、雙極性不歸零碼(BNRZ)和雙極性歸零碼(BNZ)相關按鈕就可以在對應的圖形窗口觀察波形,抽樣值所對應的PCM 編碼值也在相應的窗口生成。為了讓學生能更好更直觀地理解實驗過程里面添加一部分說明信息,這部分也可以根據授課需要添加實驗報告的整個過程和理論說明。
圖5 圖6 和圖7 分別為基帶信號眼圖、升余弦滾降系統和數字基帶信號系統的運行界面。

圖5 基帶信號眼圖界面

圖6 升余弦滾降系統界面

圖7 數字基帶信號系統界面
數字頻帶信號也稱數字調制信號,它的信號頻譜一般為帶通型的,主要適應于帶通信號信道中傳輸[5]。此處主要對2ASK、2FSK、2PSK 進行了子系統的設計。
在2ASK 的設計界面,對載波信號進行說明,學生可以很直觀地了解到載波頻率對整個載波起到什么樣的影響;在參數設置區,學生通過輸入參數載波頻率來查看輸出輸入信號及其對應的功率譜密度波形、2ASK信號以及其對應的功率譜密度波形。2PSK 與2ASK設計界面完全一樣,內部關聯函數稍有區別。在2FSK的系統設計中,“2FSK”按鈕能直接觀察基帶及其反碼的波形,通過在“參數設置區”設置兩路參數,可以觀察原碼及其反碼、兩路載波和2FSK 的波形;另外在“說明”區對兩路載波進行了說明。

圖8 數字頻帶傳輸子系統界面

圖9 2ASK調制子系統界面

圖10 2PSK調制系統界面

圖11 2FSK調制系統界面
模擬信號的數字化子系統設計了抽樣和非均勻量化。在抽樣子系統,輸入低通信號的幅度、頻率和抽樣速度,就可以在繪圖區觀察到原始信號、抽樣信號和抽樣恢復信號的波形。在非均勻量化子系統,對量化區間和壓縮特性進行了說明,通過“輸出”按鈕,可以觀察A 律和U 律壓縮特性曲線。圖12-14 分別為數字化子系統界面、抽樣定理仿真界面和非均勻量化界面。

圖12 模擬信號的數字化子系統

圖13 抽樣界面

圖14 非均勻量化界面
此平臺建立后通過一定的步驟可將其轉換成可執行安裝文件EXE 格式,在沒有安裝MATLAB 的計算機上仍然可以進行演示。
此實驗平臺基本囊括了學生通過通信原理試驗箱所要完成的所有實驗,并且可以根據需要可以隨時增加實驗。事實證明,基于MATLAB GUI 的通信原理實驗平臺加入實際教學中解決了通信原理課程實驗完全依賴實驗箱的現狀,對學生理解理論知識起到很好的輔助作用;由于系統所展示的波形和曲線比實驗箱直觀和可操作性,更容易激發學生的學習興趣,而且節省時間也節省力氣;通過分析程序代碼,對學生本編程興趣和編程能力也有一定的提高,得到教師和學生的一致認可。