張小鳴 萬軍 何可人
(常州大學信息科學與工程學院,江蘇 常州 213164)
基于帕累托法則的單片機課程設計教學優化
張小鳴 萬軍 何可人
(常州大學信息科學與工程學院,江蘇 常州 213164)
為了改變單片機課程設計中普遍存在的學生動手能力差、教學效果欠佳的局面,應用帕累托法則,對課程設計課題的選題和實驗手段進行優化配置,教師的指導精力集中關注少數骨干學生,通過課題小組的分工合作,把創新知識傳遞放大,使學生在有限的時空中,利用有限的教學資源,學到更多的知識。教學實踐表明,考慮單片機課程設計選題與工程應用相結合、課題硬件設備成本與覆蓋課程知識面相結合、學生的精力投入與教師的精力投入相結合的多目標優化,可以得到帕累托最優解,使學生單片機技術的綜合應用能力和團隊合作能力都得到普遍的提高,并產生良好的教學效果,為培養工程應用型人才奠定了基礎。
單片機;課程設計;帕累托最優解;優化
普通高校電子信息類本科專業一般都在大三開設“單片機原理及應用”課程,并在該課程結束后的1~3周內,繼續開設單片機課程設計,以加強學生的單片機綜合開發應用能力。單片機課程設計的選題內容一般都是由代課指導教師自行擬定,教學方法也因人因學校存在差異,但總的來說,選題歸結為三類:第一類題源是從《無線電》、《電子報》和《電子制作》等專業期刊中提取,或從適于單片機初學者學習單片機制作等知識的單片機網站提取。[1]第二類題源來自單片機實驗系統平臺配套的綜合性實驗程序,學生主要是在單片機實驗系統平臺上編寫軟件,把實驗結果調出即可,基本上不接觸硬件設計。這類題型缺乏軟硬件相結合的綜合設計訓練,課程設計效果達不到使學生深入了解單片機作為微控制器在電子產品中發揮的檢測、控制、通信等核心作用。[2]第三類題源來自指導教師所完成科研項目的提煉,一般包括軟硬件相結合的綜合設計,這對提高課程設計效果大有益處,但指導教師的科研項目對題源的質量影響很大。[3]無論題源如何,目前單片機課程設計存在的兩大突出問題是:
1)單片機原理及應用課程涉及的理論內容涵蓋模擬電路、數字電路、微機接口技術、匯編語言程序及C語言設計等,知識面廣、概念多,大部分學生學完該課程理論教學后感覺很茫然,難以在短時間內形成完整的概念,獨立進行單片機課程設計,編寫代碼和硬件設計都非常困難,幾乎無從下手。[4]
2)學生抄襲現象較普遍,敷衍過關。[5]
為了改變這種狀況,國內許多高校開展了單片機課程設計改革實踐,主要從以下三方面入手:
1)改革單片機課程設計選題與設計內容,選題均為軟硬件綜合設計題型,設計中既包含硬件設計也有軟件設計,這樣讓學生參與單片機應用系統的整體開發過程,通過設計原理解讀、硬軟件設計、調試和實驗結果測試等環節,提高學生主動查閱資料、分析問題、解決問題的能力,培養硬件設計和軟件設計的綜合能力。[6]
2)針對單片機課程設計選題偏少、單一,不考慮學生的個體差異的問題,增大選題數量,分成幾級典型題目,由易到難,滿足不同學生的認知要求。[7]
3)采用先進的單片機仿真軟件proteus,利用其設計周期短、仿真快捷逼真、不用擔心誤操作損壞硬件、電路原理設計與軟件設計一氣呵成等特點,提供基于proteus的單片機課程設計題目,激發學生對單片機課程設計的興趣和熱情,有利于提高單片機課程設計的教學效果。[8-10]經過多年的實踐發現,在單片機課程設計中,應用帕累托法則,能夠很好地解決單片機課程設計出現的問題。
19世紀意大利著名經濟學家和社會學家弗雷多·帕累托(Vilfredo Pareto)研究發現,經濟社會擁有一種微妙的不平衡關系,即20%的人口擁有80%的財富,帕累托的這一研究成果被后人稱為帕累托法則(Pareto Principle),或稱為80/20法則。帕累托法則認為:以小的誘因、投入或努力,可以產生大的結果、產出或酬勞。[11]在單片機課程設計中存在的帕累托法則現象是:課程設計的成果主要來自全班20%左右的學生努力,而80%的學生是在20%左右的學生帶動下完成課程設計,通過團隊協作,分享課程設計的成果,并從20%左右的學生身上學到課堂無法學到的軟硬件設計知識,體驗課程設計帶來的實驗美、創造美。[12]用帕累托改進原理提升教學效果的研究成果并不多,主要集中在以下方面:
1)優化教學資源,用較少的教學資源,獲得較大的教學效率,包括課堂學時精簡,課外學時增加。[13]課程內容的民主決策等。[14]
2)優化教學投入,包括把20%左右的精力花在精心備課環節上,能獲得80%左右的教學效果。[15]學生花20%的時間,學習20%的重點知識,就可以掌握80%甚至更多的知識,等等。[16]
為此,在單片機課程設計中教學中應用了帕累托法則,其具體做法如下:主要采用科研項目提煉題源來強化訓練學生的單片機軟硬件設計能力,指導教師集中精力輔導20%左右的學生骨干,使他們脫穎而出,這些學生表現出的非凡創新能力不僅使指導教師贊嘆不已,而且受到指導教師的不斷鼓勵和贊許后,再帶動設計小組的其他學生順利完成單片機項目設計,取得很好的教學效果。
由于單片機課程設計涉及的因素較多,包括題源、組織形式、設計流程、指導方式、學生興趣、生源素質等諸多方面,采用單一目標優化已不能真實反映優化目標的可信度和有效性。隨著單片機課程設計改革的不斷深入,對優化目標要求也越來越高,追求多個目標同時優化已經成為單片機課程設計改革突破的關鍵問題。單片機課程設計的優化目標是以學生獲得最大知識與能力鍛煉為目標,同時兼顧投入成本最少,包括設備成本、教師與學生所花時間與精力成本等。多目標優化始終存在著目標之間的相互沖突和不可公度性,也存在決策者給予的各種主觀判斷和偏好信息,從眾多的帕累托最優解中找到最終解,是解決單片機課程設計優化的核心問題。
眾多的帕累托最優解(Pareto optimal)在工程技術中有許多求解方法,如,層次分析法(AHP)、模糊多準則決策算法、啟發式算法等。[17-21]帕累托最優解的概念常用于電力系統分布式配電線路的重構,實現負荷平衡優化。[22]但在教學改革中應用帕累托最優解原理來提高教學效率,是教育界迄今尚未涉及的研究課題,有必要開展單片機課程設計優化目標決策研究。
單片機課程設計的選題要從利用單片機的典型硬件資源(如,內存、定時器、中斷系統、串口等)、外圍電路的使用成本、軟硬件知識覆蓋面廣等方面進行優化。
單片機的串口通信涉及到兩套單片機系統的串口導線連接和通信協議的制訂等復雜因素,單片機課程設計小組每組只有一套單片機系統,要想通信就要兩組互連,連線空間受實驗室空間的限制,不易實現。如果采用自發自收又體現不出串口通信的真實含義,因此,優化51單片機的典型硬件資源應為內存、定時器、中斷系統。
外圍電路的使用成本應適中,調試方便。這就要求擴展電路不能太復雜,調試設備可用性高。對于模擬信號的檢測有A/D轉換器連續檢測和模擬信號閾值的檢測,對于后者可以省去A/D轉換器,用比較電壓器替代。比較電壓器比A/D轉換器價格更低,而且比較電壓器是接口電路中應用較為廣泛的一種模擬電路,學生可結合單片機接口電路來學習比較電壓器的應用。因此,對于模擬信號閾值信號的檢測優化為基于比較電壓器的檢測電路。外圍電路的調試手段一般分為顯示器顯示調試、示波器顯示調試和仿真器調試。擴展顯示器接口,尤其是LCD接口,不僅成本高,而且調試周期長,難度大,不適合短周期的單片機課程設計使用。示波器顯示是可用性高的設備,通常單片機實驗室均配備通用示波器和數字示波器,只要單片機系統能輸出脈沖信號,示波器就能連續直觀地顯示。仿真器調試手段是學生使用仿真器調試單片機應用程序的主要工具,只要設置斷點和觀察窗口,就能觀察中斷是否發生,程序運行結果是否正確等。可見,外圍電路的調試手段的優化應充分利用現有示波器和仿真器設備。
軟硬件知識覆蓋面應充分考慮單片機應用的特點是控制與檢測,選題應盡量覆蓋控制與檢測電路的應用范圍,而單片機的控制離不開中斷,因此,軟件設計的優化應至少包含一個外設中斷請求的中斷服務程序設計,與主程序設計構成完整的單片機前后臺應用程序架構。
由于單片機課程設計學時短,一般為1~3周,指導教師一般只有1人,如果把每位學生都指導1遍,不僅時間不允許,即便時間允許,指導教師的體力支出也很大,效果并不好,因為80%的學生對單片機課程設計的軟硬件設計很茫然,指導教師的三言兩語的個別指導很難使學生理解、接受并行動。根據帕累托法則的思想,指導老師在指導單片機課程設計的過程中,只要集中精力輔導勤學好問、主動肯干的20%左右的學生,并使其帶動其余80%的學生共同完成課程設計。
教師不需要親自指導每位學生,并不意味著每位學生都能自動掌握單片機課程設計的內容。還必須對課程設計組織形式進行優化,讓20%左右的學生骨干去帶動其余80%的學生。全班分成多組,3人1組,把每位學生都組織起來,明確組員分工,發揮學生骨干的帶頭作用,既能培養學生的團隊合作精神,又能使80%的學生消除茫然感,學有所依,學有所榜。
為了避免抄襲成風,蒙混過關的現象發生,在課程設計接近尾聲時,指導教師應組織全班學生分組答辯,規定每組每位學生必須回答1~2個答辯問題,答辯成績占課程設計總成績的30% ~40%,從而促使學生重視課程設計過程,防止在答辯中所答非問,保證課程設計實現絕大多數學生獲取最大知識點的目標。
鑒于單片機控制技術已廣泛應用于智能儀器儀表、機電一體化、家用電器、實時過程控制、辦公自動化設備、商業營銷設備、計算機網絡和通信、醫用設備、汽車電子、軍事航空等諸多領域,單片機課程設計課題與工程應用項目結合勢在必行,只有這樣,才能促使學生盡快了解單片機課程設計的實用價值,同時激發學生探索單片機軟硬件設計方法的主觀能動性。考慮到課程設計時間較短,學生單片機軟硬件設計能力有限,應采用選題優化方法與科研項目提煉相結合來確定選題方案,最終選擇一硬件投資較少、知識面覆蓋較廣、20%學生的知識夠用、教師不增加超額資源投入的單片機課程設計優化課題——“基于單片機89C2051的絕緣監視器的設計”。工業現場使用的一種高壓動力鎧裝電纜,最外層是金屬網,中間是三相交流電絕緣導線,周圍是橡膠絕緣層,為了監測橡膠絕緣的絕緣程度,在橡膠絕緣層中間加1根監視線,如圖1所示。所謂絕緣電阻是指最外層金屬網和監視線之間的等效電阻,正常應在3~5 kΩ之間,當其小于3 kΩ或大于5 kΩ時,都應報警。當絕緣電阻小于3 kΩ,表示監視線與鎧裝層之間的絕緣橡膠老化,絕緣電阻下降;當絕緣大于5 kΩ,表示監視線斷線。

圖1 橡膠絕緣鎧裝與監視線示意圖


圖2 絕緣監視器工作原理框圖
轉換器來測量電阻值方案更經濟實用,其測量方案的比較如表1所示。

表1 采用不同測試方案測量電阻閥值的比較
絕緣監視器的輸入為絕緣電阻Rx,輸出為頻率。當絕緣電阻Rx在[3~5 kΩ]之間時,89C2051利用P1.3引腳經過三極管驅動輸出200 Hz方波,表示絕緣電阻正常。當絕緣電阻Rx<3 kΩ或Rx>5 kΩ時,輸出1 000 Hz方波,表示絕緣電阻異常。該絕緣監視器作為一種傳感器將絕緣電阻轉換為頻率供給數據采集系統采集處理,對橡膠電纜的絕緣電阻狀態進行實時檢測,一旦發現動力鎧裝電纜絕緣性能下降,就發出故障報警信號,提醒現場工作人員及時更換電纜,防止因動力鎧裝絕緣性能問題造成電力系統發生短路故障。
基于單片機89C2051的絕緣監視器電路成本,按目前市場價格計算約30元,但覆蓋的知識面較廣,包括模電、數電、光電耦合器、看門狗電路、單片機等,需要了解的主要知識點如下:
1)LM358運放構成的電壓比較器的工作特性,畫出輸入輸出特性曲線。
2)6N139光電耦合器在絕緣監視器的作用。
3)看門狗電路MAX813在絕緣監視器中的作用。
4)單片機89C2051產生方波頻率輸出的工作原理。
5)PNP型硅三極管9012構成達林頓三極管驅動器,對89C2051的P 1.3引腳輸出方波頻率進行驅動放大的作用。
6)穩壓二極管在絕緣監視器中的作用。
3.2.1 課程設計總體要求
根據任務書圖給出的絕緣監視器原理圖紙,用Protel 99SE繪制PCB圖。在了解絕緣監視器工作原理的基礎上,畫出單片機程序設計流程圖,包括初始化程序,主程序,INT0/與INT1/中斷服務程序。然后在Proteus仿真平臺上對絕緣監視器原理圖增加虛擬示波器,建立與Keil C51的仿真連接,分別采用單片機匯編、C5l語言來進行軟件設計與仿真。最后在51硬仿真器上,對絕緣監視器硬件樣機進行硬仿真,改變電位器,模擬可變絕緣電阻,用數字示波器觀察絕緣監視器輸出的頻率值。
3.2.2 課程設計過程
在指導學生繪制PCB設計過程中發現,學生繪制PCB圖時普遍存在與工程設計嚴重脫節問題,具體如下:
第一,元器件的布局不是按照元器件互相之間的連接關系,利用“航空飛線”將互連關系密切的元器件互相就近布局,而是本能地把所有的電阻、電容、IC芯片分別排成隊列,更談不上51單片機的外接晶振和振蕩電容應在51單片機晶振引腳附近就近布局的基本原則。
第二,絕緣監視器的輸入/輸出插座不是放在PCB板的邊沿上,而是隨意放在PCB板中間,有些學生是按老師的要求把輸入/輸出插座放在PCB板的邊沿上,但接線口沒有朝外,導致PCB板一旦做出來,無法對外接線。
第三,輸入/輸出插座PCB封裝的焊盤尺寸若按Protel 99SE庫中缺省的封裝,焊盤內外徑就太小,實際插座的引腳根本無法插入。通過精心指導,骨干學生很快掌握了PCB布局的基本原則,畫出的PCB圖不僅布局合理,而且PCB圖的布線實現了走線較短的優化。
PCB設計完成之后,指導學生繪制單片機程序設計流程圖。絕緣監視器的51單片機初始化程序和主程序流程圖如圖3所示。圖4為絕緣監視器的51單片機T0溢出中斷服務程序和INT0/INT1中斷服務程序流程圖。

圖3 絕緣監視器51單片機初始化程序和主程序流程圖


圖4 絕緣監視器51單片機T0和INT0/INT1中斷服務程序流程圖
圖3、圖4中的R0、R1是51單片機的片內工作寄存器,用于暫存絕緣監視器方波頻率對應半個周期的16位計數值。每當單片機在主程序或INT0/INT1中斷服務程序中檢測到絕緣電阻發生閾值變化(3 kΩ,5 kΩ)時,就將絕緣監視器方波頻率對應半個周期的計數更新值存入R0、R1。一旦T0溢出中斷發生時,在T0中斷服務程序中,用R0值裝載T0的低8位計數寄存器TL0T0,用R10值裝載T0的高8位的計數寄存器TH0。
3.2.3 仿真分析
用Proteus仿真實現絕緣監視器輸出頻率就更加簡便,調試更加直觀。調用一個虛擬示波器接在達林頓三極管輸出端,Proteus運行按照流程圖圖3、圖4編寫的絕緣監視器51應用程序,虛擬示波器就可以直觀顯示絕緣監視器輸出頻率。圖5、圖6分別為絕緣監視器監視絕緣電阻為5 kΩ(10 kΩ電位器調在短路50%的電阻位置,絕緣電阻正常)輸出200 Hz方波的仿真界面和絕緣電阻為5.1 kΩ(10 kΩ電位器調在短路50%的電阻位置,絕緣電阻異常)輸出1 000 Hz方波的仿真界面。

圖5 絕緣電阻為5 kΩ時輸出200 Hz方波仿真界面

圖6 絕緣電阻為5.1 kΩ時輸出1 000 Hz方波仿真界面
最后在Medwin V3單片機開發環境下,用Insight硬仿真器真實仿真絕緣監視器樣機電路板,仿真運行基于89C2051的絕緣監視器應用源程序,絕緣監視器樣機電路板的頻率輸出接真實示波器。旋轉模擬絕緣電阻的電位器,使絕緣電阻在[3 kΩ,5 kΩ]之間變化,觀察示波器屏幕頻率波形的變化,當絕緣電阻為5 kΩ時,輸出波形為200 Hz方波;絕緣電阻值小于3 kΩ或大于5 kΩ時,輸出方波為1 000 Hz方波。
利用帕累托法則對單片機課程設計的選題、硬件資源配置、重點指導對象,調試手段等進行優化教學實踐,實現用較少的教學資源,獲得較大的教學效果。教學實踐證明,只要調動全班20%骨干學生的積極性和創造性,把他們指導到位,就能帶動其他80%的學生一起進步,培養學生理論聯系實際和解決工程實際問題的能力,順利完成單片機課程設計的既定目標。單片機課程設計選題與工程應用相結合,使學生深入了解了單片機系統在工程實踐中的應用價值,外圍設備選型應考慮性價比因素,解決什么問題需要采取什么最佳應對策略等等。單片機課程設計采用Proteus設計與仿真,有助于優化資源,合理應用,加快設計進度,節約硬件開發成本。單片機課程設計采用硬仿真器對單片機樣機板仿真,設置斷點觀察中斷請求發生,有助于提高學生對單片機程序運行方式的認識,培養學生的創新精神。
[1]馬金祥,陳倫瓊.單片機課程設計教學改革探討[J].常州工學院學報,2011,24(1):77 -79.
[2]曹暉,徐春輝,易結,等.采用Proteus提高單片機課程設計教學效果[J].華東交通大學學報,2006,(23):83 -85.
[3]陳倫瓊,范立旻.單片機課程設計教學改革的探討[J].常州工學院學報,2008,21(1):94 -96.
[4]胡瑞強,張毅剛,李成偉.單片機課程設計教學改革探討[J].實驗科學與技術,2010,8(3):46 -48,78.
[5]葛浩.Proteus在單片機課程設計中的應用研究[J].科技信息導報,2009(13):135.
[6]葛浩,林其斌.單片機課程設計教學改革與實踐[J].實驗技術與管理,2011,28(10):138 -140,143.
[7]王妍瑋,張艷麗,蘇曉宇.等.單片機課程設計實踐教學[J].科技資訊,2010(1):178-179.
[8]羅志會,劉一農.Proteus在單片機課程設計中的應用與實踐[J].實驗室科學,2009(6):76 -78,88.
[9]李雪蓮,時謙.基于軟件仿真和硬件電路聯調的單片機課程設計[J].中國電力教育,2011(26):83-84.
[10]曾燕,賈振國.Proteus仿真技術在單片機教學中的應用[J].長春工程學院學報,2011(1):132-133.
[11]莊云強,曾慶霞,鮑健梅.帕累托法則與圖書館管理[J].情報探索,2011(6):126 -127.
[12]李紅梅,許鳳,王海君.在醫學化學教學中貫穿美學教育理念培養創新型高素質醫學人才[J].西北醫學教育,2008,16(2):271-273.
[13]李吉續.帕累托改進原理在高校教學改革中的應用[J].運城學院學報,2010,28(4):67 -68.
[14]王英杰.用“帕累托最優”看課程資源開發中的教學民主[J].群文天地,2011(10):245.
[15]高玉潔.教學中的二八定律[J].江蘇教育,2010(10):59.
[16]于愛紅.80/20法則在高職學生培養中的應用[J].商業經濟,2010(8):120-121.
[17]黃茂生,楊春暉.基于帕累托法則的軟件測試策略優化[J].現代電子技術,2008(24):89-92.
[18]林俊,王釔,蘇迪.改進的模糊層次分析法在配電網規劃中的應用[J].高電壓技術,2008,34(6):1161 -1167.
[19]許昌林,魏立力.多準則模糊決策的Vague集方法[J].系統工程理論與實踐,2010,30(11):2019 -2025.
[20]許永平,朱延廣,楊峰,等.基于ANP和模糊積分的多準則決策方法及其應用[J].系統工程理論與實踐,2010,30(6):1099-1105.
[21]徐小來,雷英杰,戴文義.基于改進PSO的加權直覺模糊多目標規劃[J].系統仿真學報,2009,21(11):3280 -3282.
[22]Taher Niknam.An Efficient Multi-objective HBMO Algorithm for Distribution Feeder Reconfiguration[J],Expert Systems with Applications,2011,38:2878 -2887.
Teaching Optimization of Single Chip Microcontroller Curriculum Design Based on Pareto Principle
ZHANG Xiao-ming WAN Jun HE Ke-ren
(Information Science and Engineering College of Changzhou University,Changzhou 213164)
In order to improve the student's operating capability and the teaching effect in single chip microcontroller(SCM)curriculum design,the selection of curricular topics and laboratory facilities is optimized to enable the teacher to concentrate their attention on some key students and the limited teaching resources and teaching effect to be optimized in the given period.It is shown in the teaching practice that the pareto optimal solution can be obtained by optimizing the combination of SCM curricular topics and engineering application,the balance of hardware equipment costs and curricular knowledge so covered,and the efforts made by students and the teacher,thereby improving the student's capability of utilizing SCM technology and the teaching effect.
single chip microcontroller;curriculum design;Pareto optimal solution;optimization
G642
B
1671-0436(2012)06-0080-07
2012-10-22
張小鳴(1958— ),男,博士,教授。
責任編輯:張秀蘭