慶賀, 馬 峻, 殷賢華, 許川佩
(桂林電子科技大學(xué) 電子工程與自動化學(xué)院, 廣西 桂林 541004)
?
分層遞進式“數(shù)字信號處理”實驗系統(tǒng)的開發(fā)與實現(xiàn)
慶賀, 馬峻, 殷賢華, 許川佩
(桂林電子科技大學(xué) 電子工程與自動化學(xué)院, 廣西 桂林541004)
針對普通高校生源、學(xué)生基礎(chǔ)水平存在較大差異的問題,提出一種層次遞進式實驗教學(xué)方案,即根據(jù)學(xué)生的能力水平設(shè)計不同的教學(xué)任務(wù),引導(dǎo)學(xué)生由淺入深、由基礎(chǔ)到應(yīng)用逐層遞進。遵循此原則設(shè)計開發(fā)了基于Matlab GUI的“數(shù)字信號處理”實驗系統(tǒng),分為“基礎(chǔ)篇”、“拓展篇”和“應(yīng)用篇”,以使不同層次的學(xué)生在知識和能力上都能得到提高和發(fā)展。實踐表明,該教學(xué)形式深受學(xué)生喜歡,取得了良好的教學(xué)效果。
分層遞進; 實驗系統(tǒng); GUIDE; 數(shù)字信號處理
為適應(yīng)社會發(fā)展的需要,我國自1999年開始了大規(guī)模的擴招,更多的學(xué)生獲得了接受高等教育的機會,原來的精英教育也開始向大眾教育轉(zhuǎn)變[1]。但師資和基礎(chǔ)設(shè)施的相對短缺,致使幾乎所有的高校都采取了大班制教學(xué),與此同時普通高校生源素質(zhì)不斷下滑,學(xué)生基礎(chǔ)水平參差不齊,傳統(tǒng)上整齊劃一的教學(xué)任務(wù)和要求使得一部分學(xué)生“吃不飽”,一部分學(xué)生又“消化不了”[2],不能滿足不同層次水平學(xué)生的知識需求?!皵?shù)字信號處理”理論性強、內(nèi)容抽象,含有大量的公式推導(dǎo)或性質(zhì)的證明,被公認為大學(xué)課程中最難學(xué)的課程之一[3]。傳統(tǒng)實驗采取“一刀切”的方式,即無論實驗難易都必須完成,使得部分學(xué)生產(chǎn)生畏懼心理[4]。在學(xué)生基礎(chǔ)知識存在明顯差異的情況下,本文依托于Matlab圖形化用戶界面GUIDE,設(shè)計開發(fā)了一個實驗系統(tǒng),通過在界面直接輸入?yún)?shù)就可觀察波形,從而降低了知識的起點,并有區(qū)別地設(shè)計教學(xué)內(nèi)容,逐級深入,以滿足不同層次學(xué)生的學(xué)習(xí)需求,激發(fā)其學(xué)習(xí)的興趣。
教育的理想是使所有的學(xué)生都接受適合于他們的教育。根據(jù)差異性原則,實驗系統(tǒng)采用分層遞進式教學(xué)模式,即在學(xué)生基礎(chǔ)知識存在明顯差異的情況下,通過針對不同類型學(xué)生的接受能力與特點設(shè)計不同層次的教學(xué)目標、教學(xué)內(nèi)容和教學(xué)方法,以及利用不同的教學(xué)手段,分類指導(dǎo)、逐級深入,以充分調(diào)動學(xué)生學(xué)習(xí)的積極性,使不同層次的學(xué)生都各有所得,全面提高教學(xué)質(zhì)量,達到教育的共同發(fā)展[5-6]。
“數(shù)字信號處理”課程開設(shè)在大學(xué)三年級上學(xué)期,先修課為“信號系統(tǒng)與分析”、“Matlab及應(yīng)用”和“線性代數(shù)”等,經(jīng)過兩年的學(xué)習(xí),學(xué)生之間已存在明顯的差異。本著“既要讓好學(xué)生吃好,又讓差學(xué)生吃飽、消化好,跟上隊伍”的目標,遵循低起點、層次遞進的設(shè)計原則,將實驗系統(tǒng)分為基礎(chǔ)篇、拓展篇和提高篇,見表1。
表1 實驗分層的應(yīng)用人群和側(cè)重方向
教師通過綜合考慮學(xué)生的基礎(chǔ)知識結(jié)構(gòu)和動手能力而將學(xué)生劃分為初級、中級和高級,劃分的主要依據(jù)是學(xué)生的課程考試成績、軟件編程能力等。一般來說,初級是指基礎(chǔ)課考試成績較差者或有多次補考、重修記錄者,中級指成績一般者,高級指學(xué)習(xí)成績較好、動手能力強的學(xué)生。當然對于分級的結(jié)果,教師要做到自己心中有數(shù),并不向班級公布,以防傷害學(xué)生的自尊心[7]。實驗系統(tǒng)針對不同層次的學(xué)生設(shè)置不同的實驗任務(wù)和要求,以彌補大班教學(xué)無法兼顧學(xué)生學(xué)習(xí)能力差異的不足,提高因材施教的可操作水平。
實驗系統(tǒng)在基于Matlab軟件的GUIDE環(huán)境下開發(fā)完成。
2.1GUIDE簡介
Matlab是由美國Mathworks公司于1982年推出的高性能數(shù)值計算和可視化軟件,其內(nèi)含有信號處理工具箱和大量的數(shù)學(xué)函數(shù),并為用戶開發(fā)圖形界面提供了一個方便高效的集成開發(fā)環(huán)境GUIDE(graphics user interface, GUIDE)。利用此開發(fā)環(huán)境,用戶不需編寫大量的代碼,只需采用拖拉的形式將所需控件有序地放置于界面即可,界面設(shè)計方便簡單,而且圖形用戶界面是由按鍵pushbutton、靜態(tài)文本text、編輯框edit、坐標軸axes等組成[8]。
首先打開GUIDE開發(fā)環(huán)境,用鼠標將所需的控件移至界面編輯面板,在屬性編輯器(property inspector)中修改各控件的屬性,如string、tag、fontsize、title、Name等,然后調(diào)整控件位置或利用控件對齊工具(align objects)調(diào)整控件間的距離,以使界面美觀。之后保存運行即可顯示圖形界面,并產(chǎn)生一個包含GUI初始化和組件界面布局控制代碼的M文件。進入對應(yīng)的M文件編輯器中編寫程序,也就是在相應(yīng)控件的回調(diào)函數(shù)中添加代碼以響應(yīng)控件的行為。
2.2系統(tǒng)總實現(xiàn)方案
圖1為實驗系統(tǒng)的總界面,包含了所有實驗項目的鏈接控件和實驗系統(tǒng)使用說明。點擊控件“實驗系統(tǒng)使用說明”,可打開一個PDF文檔(設(shè)其文件名為readme.pdf),用于介紹所有實驗項目的內(nèi)容和要求。具體實現(xiàn)方法為在該控件所對應(yīng)的回調(diào)函數(shù)Callback中添加如下代碼:open(‘readme.pdf’);點擊控件“退出實驗系統(tǒng)”可退出系統(tǒng),實現(xiàn)方法為在其回調(diào)函數(shù)中添加代碼:close all。
圖1 實驗系統(tǒng)設(shè)計總界面
除此之外的其他控件均鏈接到各實驗項目的圖形子界面,子界面也在GUIDE環(huán)境下開發(fā)完成。若子界面的文件名為analog_spectrum.m和analog_spectrum.fig,則實現(xiàn)鏈接的方法只需在其回調(diào)函數(shù)中添加代碼analog_spectrum即可。注意該文件必須是在當前目錄下,否則代碼中應(yīng)添加文件路徑。
function pushbutton2_Callback(hObject, eventdata, handles)
% hObjecthandle to pushbutton2 (see GCBO)
% eventdatareserved - to be defined in a future version of MATLAB
% handlesstructure with handles and user data (see GUIDATA)
analog_spectrum
實驗系統(tǒng)包括3個部分:基礎(chǔ)實驗、拓展實驗和綜合設(shè)計實驗。
3.1基礎(chǔ)實驗
基礎(chǔ)實驗面向所有學(xué)生,幫助學(xué)生分析和驗證信號處理相關(guān)理論和算法。為避免學(xué)生對編寫程序的恐懼心理,實驗系統(tǒng)一律采用圖形化用戶界面,用戶只需按要求輸入?yún)?shù)就可顯現(xiàn)信號波形,從而降低了該課程學(xué)習(xí)的起點,促使學(xué)生將更多的精力放在對基礎(chǔ)理論知識的理解和掌握上。對于中高級學(xué)生,需在此基礎(chǔ)上進行Matlab軟件編程能力的訓(xùn)練。
基礎(chǔ)實驗有4項:離散時間信號的基本運算、模擬信號的頻譜分析、濾波器設(shè)計與應(yīng)用、抽取和內(nèi)插信號的頻譜分析。具體的實驗要求、參考程序等信息可點擊各子界面中的“實驗要求”控件進行查閱。
(1) 離散時間信號的基本運算。在文本框中輸入具體序列的幅值x和時間n,點擊控件即可完成離散時間信號的加法、減法、乘法、反折、移位、采樣和內(nèi)插等基本運算,在圖形區(qū)觀察運算結(jié)果的信號波形,加深對離散信號的理解。學(xué)習(xí)impseq、sigadd、sigfold、sigshift等典型函數(shù)文件的調(diào)用,對于中高級學(xué)生則需利用這些函數(shù)編寫程序完成指定序列的運算。
(2) 模擬信號的頻譜分析。對給定的模擬正弦疊加信號進行頻譜分析,通過修改參數(shù)(采樣頻率、時域采樣點、頻域采樣點)觀察頻譜波形的變化,理解采用DFT對模擬信號進行頻譜分析這種近似化處理產(chǎn)生的誤差和抽樣間隔對信號頻譜的影響[9]。
(3) 濾波器設(shè)計與應(yīng)用。學(xué)習(xí)Matlab自帶的濾波器設(shè)計及分析工具FDATool進行濾波器設(shè)計,并通過對頻率為6 500Hz、7 000Hz和9 000Hz的正弦疊加信號濾波,如圖2所示。通過觀察濾波前后的頻域波形,理解和掌握濾波器參數(shù)的設(shè)置(類型、截止頻率、通帶紋波、阻帶衰減等)對濾波效果的影響。對于初級者只要求學(xué)習(xí)FDATool、SPtool、WVtool等濾波工具的使用[9],學(xué)習(xí)濾波參數(shù)的選?。粚τ谥懈呒壵咭軌蛴镁唧w的Matlab函數(shù)(如firl、hamming、kaiser、butter、filter等)編程設(shè)計實現(xiàn)濾波過程。
圖2 模擬信號的濾波實驗界面
(4) 抽取與內(nèi)插信號的頻譜分析。如圖3所示,首先裝載數(shù)據(jù)畫出其對應(yīng)的頻譜,而后分別進行抽取和內(nèi)插分析,移動滑動條改變抽樣(內(nèi)插)的比率,其頻譜也會發(fā)生對應(yīng)的改變。通過觀察波形的變化,理解產(chǎn)生的失真類型、原因和消除方法。中高級者要求掌握load、upsampling、resample等函數(shù)的使用及編程實現(xiàn)抽取內(nèi)插。
圖3 抽取與內(nèi)插頻譜分析界面
3.2拓展性實驗
古人云:“教人未見其趣,必不樂學(xué)?!币虼苏{(diào)動學(xué)生的學(xué)習(xí)興趣關(guān)系到教學(xué)的成敗與否。系統(tǒng)引入數(shù)字音頻信號,借助圖形、聲音的形式將理論知識與實際應(yīng)用有機結(jié)合,拓展實驗的深度和廣度,增強工程實踐意識,以激發(fā)學(xué)生的學(xué)習(xí)興趣和學(xué)習(xí)動力。
拓展性實驗作為基礎(chǔ)實驗項目的延伸,適用于所有感興趣的學(xué)生,目的主要是為了拓寬學(xué)生視野,讓其從枯燥的理論知識的學(xué)習(xí)中體會到學(xué)習(xí)的樂趣。項目包括語音信號的頻譜分析、加噪語音信號的濾波、語音信號抽取和內(nèi)插頻譜變換、DTMF電話撥號音的合成與識別。對于中高級或感興趣的學(xué)生,給出部分參考程序引導(dǎo)學(xué)生編程實現(xiàn)部分功能,以培養(yǎng)學(xué)生利用計算機解決實際問題的能力。實驗說明如下:
(1) 語音信號的頻譜分析。打開音頻文件,可顯示其時域波形圖和信號的采樣頻率,點擊控件可顯示信號頻譜圖。添加噪聲信號后可顯示加噪后音頻信號的時域和頻域波形圖,其中噪聲信號采用下拉列表的形式,分正弦信號、均勻分布噪聲信號和高斯正態(tài)分布噪聲,參見文獻[10]。
(2) 語音信號的濾波分析。設(shè)計濾波器對加噪后的音頻文件進行濾波,并觀察濾波前后的時域和頻域波形,同時通過聆聽前后音頻效果來理解和掌握參數(shù)設(shè)置對濾波效果的影響。
(3) 語音信號抽取和內(nèi)插分析。改變采樣或內(nèi)插變化倍數(shù),觀察其對應(yīng)的頻譜變化,播放音頻,感受采樣率變化對聲音信號的影響。如圖4給出了內(nèi)插前后的頻譜圖,從中可知信號發(fā)生了鏡像失真,聆聽音頻效果時會發(fā)現(xiàn)聲音中混有尖尖的咝咝聲。若點擊采用抗混疊濾波后再進行內(nèi)插,即可消除這種失真,聲音恢復(fù)原樣。
圖4 語音信號抽取與內(nèi)插頻譜分析
(4) DTMF電話撥號音的合成。雙音多頻DTMF(dual tone multi-frequency)信號是由兩個特定的高頻和低頻正弦信號的組合來代表某數(shù)字或功能鍵,如圖5所示,可模擬撥電話號碼的聲音。
圖5 DTMF電話撥號音的合成
3.3綜合設(shè)計性實驗
學(xué)習(xí)的目的是能夠“為我所用”和“學(xué)以致用”。針對那些學(xué)習(xí)興趣濃厚、動手能力強且學(xué)有余力的學(xué)生,實驗系統(tǒng)以工程應(yīng)用為背景,提供了若干個應(yīng)用性綜合設(shè)計性實驗項目,如加噪語音信號處理、多抽樣率語音信號處理、數(shù)字語音變聲系統(tǒng)設(shè)計、數(shù)字均衡器、基于FPGA的FIR/IIR數(shù)字濾波器設(shè)計等。
為保證實驗的順利進行,在明確實驗項目的具體要求后,對于部分能力欠佳但感興趣的學(xué)生,教師可根據(jù)學(xué)生能力水平的高低混合編組,引導(dǎo)學(xué)生有針對性地收集文獻資料、提出合理可行的設(shè)計方案、指導(dǎo)實現(xiàn)并提交完整的設(shè)計說明書[11]。驗收時可采取逐個驗收或分組答辯的形式。對于成績評定不能搞“一刀切”,要綜合全面地考慮。通過學(xué)生參與設(shè)計、編程實現(xiàn)和撰寫文檔,可有效培養(yǎng)學(xué)生文獻檢索能力,加深對理論知識的系統(tǒng)性理解和掌握,鍛煉軟件編程能力。這樣不僅有助于提高學(xué)生獨立分析和解決問題的能力,也培養(yǎng)了學(xué)生的自我學(xué)習(xí)能力、科研寫作能力和相互交流協(xié)作的團隊精神[12],為其今后的學(xué)習(xí)和工作奠定堅實的基礎(chǔ)。
教學(xué)應(yīng)面向全體,力爭讓所有學(xué)生在學(xué)習(xí)過程中都能有所收獲,各得其所。實驗系統(tǒng)采用人機交互界面,通過讓參數(shù)具有可調(diào)性使得信號分析過程變得簡單直觀,降低了入門的起點,并引入了工程實踐應(yīng)用實例,激發(fā)了學(xué)生學(xué)習(xí)的興趣。針對不同層次的學(xué)生,實驗要求層層遞進,并鼓勵低層的學(xué)生向高層次升遷,使不同層次的學(xué)生都能得到提高和發(fā)展,體驗學(xué)習(xí)的樂趣,避免了高不成低不就的現(xiàn)象。
References)
[1] 陳艷蓮.高校大班教學(xué)存在的問題及教學(xué)方法的優(yōu)化[J].教育與職業(yè), 2011 (12):164-165.
[2] 蔣蘭玲,張愛國,宋平.大學(xué)計算機基礎(chǔ)分級教學(xué)模式的探討[J].高等農(nóng)業(yè)教育,2011(9):53-55.
[3] 劉大年,史旺旺,孫貴根,等. “數(shù)字信號處理”課程的形象化教學(xué)方法探索[J].電氣電子教學(xué)學(xué)報, 2006,8(4):104-107.
[4] 王秋生,袁海文.《數(shù)字信號處理》課程的分層實驗教學(xué)方法[J].北京航空航天大學(xué)學(xué)報:社會科學(xué)版, 2011,24(5):109-112.
[5] 張曉云.基于差異性的分層教學(xué)理論與實踐[J].重慶科技學(xué)院學(xué)報:社會科學(xué)版,2007 (增刊1): 39-41.
[6] 程艷紅,朱汝葵. “分層遞進教學(xué)”研究綜述[J]. 內(nèi)蒙古師范大學(xué)學(xué)報:教育科學(xué)版,2005,18(6):29-32.
[7] 王先榮.大學(xué)英語隱性分層教學(xué)實驗研究[J].山東外語教學(xué),2005(1): 51-53.
[8] 施曉紅,周佳. 精通GUI圖形界面編程[M].北京:北京大學(xué)出版社,2003.
[9] 董慶賀.數(shù)字信號處理的教學(xué)改革探索與實踐[J].教育教學(xué)論壇, 2012(34): 42-44.
[10] 董慶賀, 殷賢華,李偉,等.面向卓越工程師的課程教學(xué)研究與探索[J].實驗技術(shù)與管理, 2014,31(7): 169-171.
[11] 沈媛媛.基于MATLAB的數(shù)字信號處理綜合性實驗設(shè)計[J].實驗室研究與探索,2009,28(8):60-61.
[12] 張小林,周美華,李茂康.綜合性、設(shè)計性實驗教學(xué)改革探索與實踐[J].實驗技術(shù)與管理, 2007,24(7):94-96.
Development and realization of experimental system based on hierarchy ladder model for digital signal processing
Dong Qinghe, Ma Jun, Yin Xianhua, Xu Chuanpei
(School of Electronic Engineering and Automatic Technology, Guilin University of Electronic Technology, Guilin 541004, China)
In view of the students’ differences about source structure and basic level, one hierarchy and ladder mode is proposed. In this mode, teaching objectives are clarified into different layers from the simple to the difficult and from the basic to the applicble according to the difference of the students’ ability. Following this principle, one experimental system based on the digital signal processing is realized using Matlab GUI, which is divided into the following three sections: foundation, development and application, in order that different students can improve their knowledge and abilities. Practice shows that this system is favorable to the students and has obtained the good teaching effect.
hierarchy ladder; experimental system; GUIDE; digital signal processing
10.16791/j.cnki.sjg.2016.03.051
2015- 01- 06修改日期:2015- 03- 16
廣西教育科學(xué)“十二五”規(guī)劃課題(2013C023);廣西高等教育教學(xué)改革工程項目(2013JGB147,2014JGA136);桂林電子科技大學(xué)教育教學(xué)改革項目(JGA201404)
董慶賀(1978—),女,河南泌陽,碩士,講師,主要從事信號處理方面的理論教學(xué)與實驗教學(xué)研究.
E-mail:daphny@guet.edu.cn
TP319;G642.0
A
1002-4956(2016)3- 0202- 04