?

基于Matlab GUI的“信號與系統”課程教學仿真系統開發

2016-03-21 05:06姚宇鳳
河北民族師范學院學報 2016年2期
關鍵詞:信號與系統

于 建 姚宇鳳

(河北民族師范學院 物理系,河北 承德10098)

?

基于Matlab GUI的“信號與系統”課程教學仿真系統開發

于建姚宇鳳

(河北民族師范學院 物理系,河北 承德10098)

摘要:一直以來,“信號與系統”課程的教學都由于其理論性強、概念抽象,對學生的數學水平要求高等原因,無法達到預期的教學效果。因此為了提升課程的教學效果,本文采用Matlab軟件,開發針對此課程的教學仿真系統,并且以典型非周期信號的傅里葉分析、離散時間信號卷積和的計算為具體實例,說明教學仿真系統的使用。在課堂教學中,同步使用此仿真系統對不易理解的知識點進行仿真驗證,使學生容易消化對應的內容。同時,生動的演示也提升了學生學習本門課程的熱情,為后續相關內容的學習提供動力。

關鍵詞:信號與系統;Matlab GUI;卷積和;傅里葉分析

一、引 言

“信號與系統”是電子與通信類專業的主要技術基礎課之一。課程要求學生初步了解如何建立信號與系統的數學模型,如何利用數學方法進行求解,并對所得結果給出相應的物理解釋,賦予物理意義[1]。同時,“信號與系統”的基本概念和基本分析方法已經滲透到了電路與系統、集成電路工程、物理電子學、生物醫學工程、電磁場與微波技術、電氣工程、動力工程、環境工程等多個領域?!靶盘柵c系統”課程的主要任務是:(1)在“時域”和“頻域”下研究連續時間信號和離散時間信號的表示方法;(2)在“時域”和“頻域”下研究系統特性的各種描述方式;(3)在“時域”和“頻域”下研究激勵信號通過系統時所得到的響應。由于受到諸多因素的影響,如課程所分配的課時數不足以及實踐教學中實驗設施不完善等,最終導致很難完成“信號與系統”課程所制定的教學要求。為了解決上述課程教學過程中所存在的問題,國內外的教育工作者都紛紛開始將Matlab作為輔助教學工具應用到“信號與系統”的教學中,不但解決了課時不足的問題,同時也降低了課程的教學難度,讓學生易于接受。文獻[2][3]中,提到利用Matlab GUI制作相關教學仿真系統,然而這些系統都不具有教學仿真平臺管理模塊,直接通過點擊界面相關的控件進入到具體的仿真實例,降低了教學仿真系統的安全性。同時,涉及的教學仿真內容多是一些課程教學的基礎知識點,對于課程教學的綜合性知識點的仿真驗證部分并無涉及。

本文在Matlab開發環境下,通過對不同版本“信號與系統”課程教材(包括國內、外的經典教材)的分析整理,篩選出具有代表性的基礎性知識點以及綜合性知識點作為平臺設計的對象,利用其可視化用戶界面GUI及簡單易用的繪圖程序語言,完成此教學仿真系統的開發。在課堂教學中,充分發揮教學仿真系統的優勢,針對難以理解的概念,進行圖形化演示,激發學生的學習熱情,提升教學質量。

二、基于Matlab GUI的教學仿真系統結構框架

Matlab是一種高級計算機語言,有著“演算草稿紙”的稱號,由此可知其編程語言語法簡單易學。利用其高效的數值運算能力,把學生從繁瑣的計算中解脫出來,使其聚焦到對結果的解析上,更加深入地了解數學公式和物理概念的內在聯系。用戶界面是指人與機器之間交互作用的工具和方法,如多種多樣的外設:攝像頭、觸摸屏、游戲手柄等都可成為與計算機交換信息的接口。圖形用戶界面GUI(Graphical User Interface)是目前計算機應用程序界面的主要形式,Matlab為users提供了功能十分強大的集成用戶界面開發環境,通過在command window(命令窗口)輸入GUIDE命令進入到開發環境,開發自己所需的應用程序。利用GUIDE命令設計一個完整的GUI流程如下[4]:

(1) 采用面向對象的方法,確定GUI所需使用的對象,并添加到GUI中;

(2) 充分使用GUIDE提供的布局工具,完成GUI開發中各個對象控件的布局,布局時要充分考慮到用戶的使用習慣,做到界面簡潔,實用;

(3)利用屬性檢閱(Property Inspector)選項,設置對應控件的相應屬性;

(4) 為GUI對象控件編寫回調函數(Call Back),保證所設計的GUI能正確響應用戶所需的操作;

(5) 利用相關編譯,生成的獨立運行程序,方便用戶使用。

基于Matlab GUI的“信號與系統”教學仿真系統在設計上務求做到簡潔,易操作,與用戶的交互友好。界面設計上,對教學仿真系統的管理界面、操作界面、各級子界面的布局進行合理規劃。在管理界面部分,將我校?;蘸托@美景合理放置在界面的核心位置,能對我校起到初步宣傳作用。將用戶注冊、修改密碼等放置在符合用戶習慣的右側供用戶進行操作;在仿真平臺的主界面部分利用Matlab GUI panel控件將同類內容進行分組合并,讓用戶一目了然;采用下拉菜單(popmenu)當作入口界面的選擇控件,使得用戶操作起來簡單方便。同時,合理分配界面空間,配合不同的仿真目的進行布局。在后臺程序設計上,為了更好的實時響應用戶的操作,對程序的代碼進行優化,比較實現同一功能的代碼,擇優選取執行效率高的代碼進行使用。為了引導學生利用Matlab軟件自主進行仿真設計,在此教學仿真系統提供范例仿真,以供學生參考使用,學生可以通過模仿范例的過程,最終設計出屬于自己的仿真實例,進一步培養了學生自主學習的能力。

本“信號與系統”教學仿真系統主要由以下分支組成:一、連續時間信號與系統分支:連續時間系統時域分析、傅里葉分析、連續時間系統S域分析;二、離散時間信號與系統分支:離散時間系統時域分析、離散時間系統Z域分析、離散序列的傅里葉變換DTFT;三、信號與系統綜合應用分支:音樂合成實驗、語音合成實驗、傅里葉變換在通信系統中的應用[5],其系統框架圖如圖1所示。同時,為保證系統的安全性以及統計用戶使用此平臺次數,設計仿真平臺管理系統。用戶可通過此管理系統進行如下操作:注冊新用戶、設置新密碼、登陸教學仿真系統、修改密碼、退出。同時,管理員可通過用戶管理對教學仿真系統的使用次數進行統計,記錄用戶的使用頻率。

圖1 基于Matlab GUI的“信號與系統”課程教學仿真系統結構層次圖

基于Matlab GUI的“信號與系統”課程教學仿真平臺系統的主界面如圖2所示。平臺的主界面我們利用GUI控件的“容器”Panel對三個分支的內容進行歸類,在三個Panel控件的左上角依次注明連續時間信號與系統、離散時間信號與系統、信號與系統綜合實驗(每個分支都包括相關的具體仿真內容),方便用戶按需使用。通過點擊每個Panel中具體仿真內容對應的“Push Button”控件進入到所要進行仿真與計算的界面,同時此平臺界面也提供了返回登陸界面按鈕可以回到初始的仿真系統管理界面。

三、基于教學仿真系統實例分析及使用

下面以此教學仿真系統中離散時間信號的卷積和、典型非周期信號傅里葉分析為例,介紹該系統的使用。

(一)離散時間信號的卷積和實例

卷積和運算是計算LTI離散系統零狀態響應以及離散信號分解的基本工具,針對離散時間序列卷積和的定義式為:

圖2 基于Matlab GUI的“信號與系統”課程教學仿真平臺系統的主界面

由卷積和定義式可知,其運算包括反褶、平移、相乘、求和的信號運算。信號運算是學習“信號與系統”課程中“信號”的基礎,許多運算都涉及到上述運算,如此例中的卷積和運算??梢岳肕atlab提供的conv()和filter()進行卷積和的求解。

通過選取平臺系統的子界面的入口界面離散時間系統時域分析下的卷積和,點擊運行,就可以進入卷積和的運算界面。操作子界面的入口界面如圖3所示。

圖3 離散時間系統時域分析操作子界面的入口界面

圖4所示就是卷積和計算界面,首先在輸入序列f(k)和h(k)編輯框內輸入要進行卷積和的函數表達式,然后點擊f(k)函數圖像按鈕就會在axes(GUI控件)里面顯示出用戶所輸入的表達式f(k)的函數圖像,同樣點擊h(k)函數圖像按鈕,在與其對應的axes里面顯示出用戶所輸入的表達式h(k)的函數圖像,若要對兩個函數進行卷積和運算,點擊命名為“兩序列卷積和”panel(GUI控件)中的卷積和運算按鈕就會得到所輸入兩序列卷積和結果的函數圖像(為了方便演示,選擇了f(k)=k和

h(k)=k進行卷積和的運算)。

圖4 離散信號卷積和計算界面

通過觀測兩個單位斜坡序列的卷積和結果,能夠非常清楚的了解卷積和運算的整體過程,幫助學生理解卷積和的意義,同時此仿真平臺的卷積和運算可以作為卷積和的計算器,輸入不同的離散時間序列,而得到兩個序列卷積和的結果。降低了對于學生計算能力的要求,也是“信號與系統”課程的教學的宗旨,不是讓學生困擾在數學計算和公式記憶上,而是要深刻理解本門課程的內涵,為后續課程以及本課程的信號運算本身的意義有更深入的理解。

(二)典型非周期信號的傅里葉分析

傅里葉變換(FT)是“信號與系統”課程中至關重要的概念,后續的變換:拉普拉斯變換、Z變換、DTFT、DFT、FFT都是在傅里葉變換的基礎上演變而來的。雙邊拉普拉斯變換其實就是廣義性質上的傅里葉變換;Z變換又是通過連續時間信號的采樣信號的拉氏變換,利用Z替換S算子所得到的;DTFT是離散序列的傅里葉變換,它是通過單位圓上的Z變換所得到的;而DFT(離散傅里葉變換)就是單位圓上的Z變換等間隔采樣所得到的;FFT是DFT快速計算方法,稱其為“快速傅里葉變換”[7]。所以由上述可知,傅里葉變換串聯著整個“信號與系統”課程的教學過程,深入理解傅里葉變換的內涵,對于掌握“信號與系統”這門課程的主要脈絡具有非常深遠的意義。

行進入到對應階躍信號的傅里葉變換運算界面,傅里葉分析子界面的入口界面如圖5所示。

圖5 典型非周期信號傅里葉變換子界面的入口界面

圖6所示就是典型非周期信號中階躍信號傅里葉變換的觀測界面,通過點擊幅度譜觀測按鈕、相位譜觀測按鈕分別觀測階躍信號的幅度譜圖像和相位譜圖像。

通過利用圖6的階躍信號頻譜函數的觀測界面,一方面提供給學生直觀的階躍信號幅度譜和相位譜的函數圖像,幫助學生記憶階躍信號的傅里葉變換表達式:;另一方面,提升了學生學習興趣,學生希望能夠自主完成類似的一個Matlab GUI的設計,通過后臺程序代碼的編寫,掌握Matlab工具,繼而可利用此工具對后續的通信原理、數字信號處理等課程進行分析學習,更好的掌握相應的知識要點。

圖6階躍信號傅里葉變換(頻譜函數)觀測界面

四、結 語

利用Matlab GUI開發出針對“信號與系統”課程的教學仿真系統,以交互的方式對課程中難以理解的重要內容進行了可視化的仿真,增強了課堂教學的互動。同時,在仿真系統開發過程中,指導學生獨立完成部分設計,使學生能夠比較熟練的掌握Matlab GUI的界面設計與程序設計,培養了學生自主學習的能力和學習興趣。同時,將Matlab作為后續相關課程的分析工具,為這些課程的學習提供了良好的平臺。在下一步的教學仿真系統建設中,將Simulink應用到仿真平臺的建設中,作為Matlab語言上的一個可視化建模平臺,采用方框圖建模形式,更加貼近工程習慣[9]。通過Matlab GUI中相關程序指令調用Simulink所設計的模型進行仿真演示,豐富“信號與系統”課程教學仿真系統的內容。

參考文獻:

[1]程耕國.信號與系統實驗教程(MATLAB版)[M].北京:機械工業出版社,2010.

[2]李秀梅,董文,賈中云.基于Matlab GUI的信號與系統課程GUI演示系統[J].大學教育,2014,(5):78-79.

[3]李強,明艷,吳坤君.基于Matlab的通信原理演示系統的設計與應用[J].實驗技術與管理,2008,(8):77-80.

[4]陳瑞峰,左曙光,郭偉.基于MatlabGUI的信號分析系統[J].佳木斯大學學報,2009,(5):645-647.

[5]谷源濤,應啟珩,鄭君里.信號與系統-Matlab綜合實驗[M].北京:高等教育出版社,2008.

[6]鄭君里,應啟珩,楊為理.信號與系統[M].北京:高等教育出版社,2000.

[7]羅華飛.Matlab GUI學習手記[M].北京:北京航空航天大學出版社,2011.

[8]Holly Moore著.高會生,劉童娜,李聰聰譯.Matlab實用教程(第二版)[M].北京:電子工業出版社,2013.

[9]紹玉斌.Matlab/Simulink通信系統建模與仿真實例分析[M].北京:清華大學出版社,2007.

[10]齊惠娟,李敏.基于Matlab GUI實現隨機信號的分析和處理[J].電子設計工程,2011,(12):11-14.

Development of “Signal and System” Teaching Simulation System Based on Matlab GUI

YU Jian, YAO Yu-feng
(Hebei Normal University for Nationalities, Chengde, Hebei 067000, China)

Abstract:The “signal and system” course has long been a subject hard to achieve the expected teaching effect because of its theoretical nature, abstract concepts and higher requirement of mathematics foundation. This paper uses Matlab to develop the teaching simulation system of this course. In the classroom teaching, the use of the teaching simulation system helps students to have a better understanding of the knowledge points through simulation verification. At the same time, the vivid demonstration promotes the students’ learning interest and enhances their capability for the further study.

Key words:signal and system; Matlab GUI; discrete signal convolution;fourier transform

基金項目:2015年度承德市科學技術研究與發展項目“基于Matlab GUI和Simulink的‘信號與系統’教學仿真平臺開發”(20153006)。

作者簡介:于建(1979-),男,河北承德人,河北民族師范學院講師,碩士,研究方向為虛擬儀器、計算機仿真;姚宇鳳(1978-),女,河北秦皇島人,河北民族師范學院講師,研究方向為藝術設計。

收稿日期:2015-11-13

中圖分類號:G420

文獻標識碼:A

文章編號:2095-3763(2016)02-0105-05

猜你喜歡
信號與系統
《信號與系統》課程教學的改革與實踐
基于MATLAB的“信號與系統”實驗教學改革
基于Matlab的“信號與系統”教學輔助平臺的設計
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合