賀躍幫 王天雷 李興春 楊敏
摘 要:針對應(yīng)用型教育要求,考慮現(xiàn)階段大學(xué)教育中應(yīng)用MATLAB語言仿真輔助教學(xué)缺乏實踐能力培養(yǎng)問題,提出了基于MATLAB的案例教學(xué)方法,以三軸電子羅盤數(shù)據(jù)分析與參數(shù)辨識為例,從介紹案例背景、算法原理、編程與調(diào)試以及結(jié)果分析著手,向?qū)W生講述了MATLAB語言的應(yīng)用和實際問題的求解,加深了學(xué)生對課堂知識的理解,培養(yǎng)了學(xué)生的實踐能力。
關(guān)鍵詞:MATLAB 案例教學(xué) 參數(shù)辨識
中圖分類號:G423 文獻(xiàn)標(biāo)識碼:A 文章編號:1674-098X(2017)05(a)-0226-03
MATLAB是由美國MathWorks公司于1984年推出的一種科學(xué)計算語言。該編程語言采用解釋執(zhí)行的方式,涵蓋了高等數(shù)學(xué)、數(shù)理統(tǒng)計、數(shù)字信號處理、控制系統(tǒng)模擬以及系統(tǒng)辨識等領(lǐng)域,能夠有效輔助大學(xué)自動化專業(yè)《自動控制原理》《信號處理》《計算機控制技術(shù)》等專業(yè)課程的教學(xué),成為本科生需要掌握的必不可少的編程語言之一[1]。然而,利用MATLAB語言輔助其他專業(yè)課程的教學(xué),以解決其他專業(yè)課程傳統(tǒng)實驗耗時大、成本高等問題,其本身只是一種仿真實驗[2-5],不滿足應(yīng)用型教育要求。解決此問題的一種有效方法是在MATLAB語言教學(xué)過程中,不僅講解如何利用MATLAB語言輔助其他專業(yè)知識的仿真,而且講解解決如何利用MATLAB語言輔助其他專業(yè)知識解決實際問題。這樣,在其他專業(yè)課利用MATLAB語言仿真輔助教學(xué)時,學(xué)生可以輕松聯(lián)系上實際問題,避免出現(xiàn)學(xué)會但不會應(yīng)用的問題。基于此,筆者在近幾年MATLAB的教學(xué)過程中,充分利用本身科研項目和學(xué)生競賽項目中存在的實際問題,采用案例教學(xué)法,培養(yǎng)學(xué)生利用MATLAB解決實際問題的能力,有效激發(fā)了學(xué)生的學(xué)習(xí)興趣,獲得了較好的教學(xué)效果。
1 案例教學(xué)舉例
傳統(tǒng)MATLAB語言教學(xué)一般遵循數(shù)據(jù)類型介紹、數(shù)值運算介紹、程序設(shè)計與函數(shù)編寫等步驟,循序漸進(jìn),能夠較好地向?qū)W生傳授MATLAB語言知識。但學(xué)生在學(xué)習(xí)過程中容易陷入只見樹木不見森林的境地,即能夠掌握所有編程細(xì)節(jié)和方法,但缺乏將所學(xué)知識整合在一起解決實際問題的能力。鑒于此,筆者在講述《MATLAB與控制系統(tǒng)仿真實踐》教材第4章MATLAB語言的程序設(shè)計的課堂中[6],以電子羅盤數(shù)據(jù)分析與參數(shù)辨識為例,向?qū)W生展示MATLAB應(yīng)用于實際問題求解和代碼編寫的整個過程。
2 電子羅盤數(shù)據(jù)分析與應(yīng)用背景介紹
三軸電子羅盤可用于測量地球磁場方向,被廣泛應(yīng)用于無人機的航向測量中。但是,由于電子羅盤安裝位置受到導(dǎo)磁物質(zhì)和電流影響,使得測量受到常值干擾,另外三軸安裝也可能存在誤差需要補償,整個量測方程可由下式描述。
2.1 編程和調(diào)試
課堂教學(xué)中,可根據(jù)以上理論分析,現(xiàn)場一行一行MATLAB代碼實現(xiàn)。實現(xiàn)過程中可對MATLAB語言進(jìn)行詳細(xì)講解,如while,if以及mean,std函數(shù)的用法介紹以完成教學(xué)任務(wù)。同時需注意與學(xué)生的互動,充分引領(lǐng)學(xué)生進(jìn)入案例情景,理解程序?qū)崿F(xiàn)流程,掌握實際問題求解步驟。三軸電子羅盤數(shù)據(jù)分析與參數(shù)辨識整體程序如下:
在編寫過程中,可以故意編錯或編寫不完整,從而引領(lǐng)學(xué)生調(diào)試程序,分析數(shù)據(jù)。如去掉while循環(huán),則在分析數(shù)據(jù)時會發(fā)現(xiàn)有些點誤差較大,按照統(tǒng)計學(xué)理論可歸為疏忽誤差或人為誤差,需要去掉,從而引入while循環(huán)。
2.2 結(jié)果分析
運行以上程序,可得圖2和圖3結(jié)果。從中可以看出擬合誤差非常小,說明采用1.2所示方案是可行的。課堂中也可以通過work工作區(qū)間查看變量i、A、C以及std_error變量,向?qū)W生闡述結(jié)果的可靠性。
通過以上案例介紹,理論分析,編程實現(xiàn)以及結(jié)果分析可以看出,在講解案例過程中,不僅僅可以講述MATLAB編程語言,還可以讓學(xué)生了解運用MATLAB實現(xiàn)實際問題求解的整個過程,極大地促進(jìn)了學(xué)生對理論指導(dǎo)實踐、實踐檢驗理論的認(rèn)識,加深了學(xué)生對課堂知識的理解,培養(yǎng)了學(xué)生的實踐能力,滿足了應(yīng)用型教育要求。
3 結(jié)論
該文針對應(yīng)用型教育要求,在MATLAB教學(xué)過程中采用案例教學(xué)法,以三軸電子羅盤數(shù)據(jù)分析和參數(shù)辨識為例,在講述MATLAB編程語言的同時,通過實際問題理論介紹、MATLAB求解編程與調(diào)試、結(jié)果分析等步驟讓學(xué)生全面了解運用MATLAB求解實際問題的整個過程,極大地促進(jìn)了學(xué)生對課堂知識的理解和實踐能力的提高。
參考文獻(xiàn)
[1] 王燕平.控制系統(tǒng)仿真與CAD[M].北京:機械工業(yè)出版社,2011.
[2] 李占英,張明君,于曉海,等.應(yīng)用型人才培養(yǎng)的“自動控制原理”教學(xué)改革[J].中國電力教育,2013(7):82-83.
[3] 姚芝鳳,徐鳳霞,于穎.控制系統(tǒng)CAD與仿真教學(xué)的案例教學(xué)模式[J].高師理科學(xué)刊,2013,33(3):92-93.
[4] 彭金柱,劉燕.基于案例的控制系統(tǒng)輔助設(shè)計課程教學(xué)改革與實踐[J].科技創(chuàng)新導(dǎo)報,2013(31):103-104.
[5] 馮肖亮,宋強,閆晶晶.“控制系統(tǒng)仿真與CAD”教學(xué)改革與探索[J].高教學(xué)刊,2015(19):108-109.
[6] 趙廣元.MATLAB與控制系統(tǒng)仿真實踐[M].3版.北京航空航天大學(xué)出版社,2016.