蔡植善 ,陳木生,吳仲龍,朱成全
(1.泉州師范學(xué)院 物理與信息工程學(xué)院,福建 泉州 362000;2.泉州師范學(xué)院 信息功能材料福建省高校重點實驗室,福建 泉州 362000)
現(xiàn)代電子電路系統(tǒng)的設(shè)計與實現(xiàn),離不開硬件和軟件的配合。硬件電路主要由單片機或嵌入式芯片及其外圍電路構(gòu)成;軟件部分主要是系統(tǒng)軟件和應(yīng)用軟件。本文所指的系統(tǒng)軟件主要是指按鍵掃描、顯示和音頻驅(qū)動、傳感器數(shù)據(jù)采集和通信接口等底層硬件的驅(qū)動程序,應(yīng)用軟件主要指數(shù)據(jù)存儲和管理、控制算法的實現(xiàn)、數(shù)據(jù)輸出和發(fā)布等功能程序。
應(yīng)用軟件的功能在很大程度上由上位機界面的人機互動功能體現(xiàn)出來。LabVIEW軟件具有強大的數(shù)據(jù)分析和管理功能,方便設(shè)計出友好的人機界面,把LabVIEW技術(shù)和單片機技術(shù)相結(jié)合,可以發(fā)揮軟、硬件各自的優(yōu)點。如何在高校電類相關(guān)專業(yè)的單片機教學(xué)、課程設(shè)計、畢業(yè)設(shè)計以至科研項目中,把單片機技術(shù)、Proteus仿真技術(shù)與LabVIEW技術(shù)進行有機結(jié)合與訓(xùn)練,在應(yīng)用與實踐活動中提高學(xué)生素質(zhì),是值得探討的問題。把課堂教學(xué)與實踐教學(xué)結(jié)合起來,以培養(yǎng)創(chuàng)新創(chuàng)業(yè)型人才作為高等教育的目標和任務(wù),使大學(xué)生能主動適應(yīng)創(chuàng)新型國家建設(shè)發(fā)展需要,成為高素質(zhì)創(chuàng)新人才[1-4]。
單片機原理是電類專業(yè)的一門重要專業(yè)基礎(chǔ)課程,單片機技術(shù)在現(xiàn)代電子電路中具有無可替代的作用,沒有哪種智能儀器或智能設(shè)備可以離得開單片機。對于沒有開設(shè)微機原理課程的專業(yè)來說,單片機原理也是學(xué)習(xí)計算機原理的一門課程。單片機原理課程的主要教學(xué)目的有以下4點:
1)學(xué)習(xí)和掌握單片機、微機的硬件結(jié)構(gòu)原理;
2)學(xué)習(xí)和掌握單片機的匯編語言和C語音的編程和調(diào)試;
3)掌握單片機集成調(diào)試軟件 (如Keil軟件、Proteus軟件)的調(diào)試方法;
4)掌握電子電路系統(tǒng)的設(shè)計和調(diào)試過程,培養(yǎng)學(xué)生發(fā)現(xiàn)、分析和解決問題的能力。
硬件原理和軟件原理的學(xué)習(xí)是基礎(chǔ),會應(yīng)用才是最主要的目的。如圖1所示,單片機原理學(xué)習(xí)最終目的是要讓學(xué)生掌握單片機技術(shù)的設(shè)計和開發(fā)能力[5]。
從多年的教學(xué)、學(xué)生參加的各種競賽與科研活動中,體會到單片機技術(shù)的教學(xué)有以下4個特點。
1.2.1 實踐性
單片機應(yīng)用技術(shù)是一門很感性的知識。單片機 “長”什么樣,傳感器電路、執(zhí)行機構(gòu)是什么模樣,都要讓學(xué)生在學(xué)習(xí)過程中有直觀的印象。應(yīng)用程序如何編寫,集成調(diào)試環(huán)境IDE如何使用,單片機運行程序過程中存儲器狀態(tài)怎么觀察等操作,都要讓學(xué)生動手。所以,在理論教學(xué)時提倡實踐性教學(xué),在課堂上盡可能采用多媒體教學(xué)、實物教學(xué)和實例教學(xué)。增加實踐課時,讓學(xué)生在完成理論知識學(xué)習(xí)的同時,完成相應(yīng)的實驗和實踐作品。
學(xué)生在教室里的時間應(yīng)盡量縮短,盡可能避免去背那些枯燥乏味的知識片斷,應(yīng)多安排應(yīng)用實踐課時。參加過電子設(shè)計比賽和參與過教師科研課題的學(xué)生都會對實踐有不一樣的體會,因為實踐的過程可以讓他在不知不覺中掌握了知識。
這說明,一方面,只掌握純粹的理論知識已經(jīng)無法滿足實際應(yīng)用要求;另一方面,課程的學(xué)時數(shù)和現(xiàn)有的模式又無法使教師在課堂上有充分的時間拓展新的知識。學(xué)校為學(xué)生提供了諸如“大學(xué)生科研基金”“開放性實驗”,提倡教師增加“綜合性、設(shè)計性實驗”在實驗項目中的比例,都為學(xué)生多角度、多方位參與實踐和創(chuàng)新活動提供了很多機會。教師也可以讓學(xué)生更多地參與科研項目[6-8]。
1.2.2 培養(yǎng)學(xué)生的自主學(xué)習(xí)能力
自主學(xué)習(xí)能力在單片機課程中顯得尤為重要。學(xué)生在學(xué)習(xí)單片機硬件原理、調(diào)試程序過程中,會遇到很多問題。這些問題和困難是否能得到及時解決,很大程度上取決于學(xué)生個體自主學(xué)習(xí)的能力是否足夠強。問題的解決需要學(xué)生自主思考、查閱資料,甚至積極加入相關(guān)的學(xué)習(xí)群去請教“大俠”。如果學(xué)習(xí)問題無法得到及時解決,會影響學(xué)習(xí)效率,也會影響信心的建立,嚴重的話會讓學(xué)生失去學(xué)習(xí)的信心。
反之,如果沒有老師的指導(dǎo)和幫助,學(xué)生能夠一點一滴自行解決問題,可以使學(xué)生提高效率,建立信心,達到熟能生巧、觸類旁通的效果。在軟硬件的調(diào)試過程中往往會遇到很多在教材、說明書上都無法找到的問題,需要學(xué)生依靠自主學(xué)習(xí)的能力來解決[9]。
1.2.3 認識和使用基本元器件
在接觸單片機的初期,大多數(shù)同學(xué)對基本的元器件都認識不多,對貼片元件更是知之甚少。認識基本的元器件有助于把電路的理論原理與實際功能對應(yīng)起來。如學(xué)習(xí)到7段數(shù)碼管的動態(tài)顯示編程時,如果不認識雙聯(lián)、四聯(lián)數(shù)碼管的結(jié)構(gòu)和引腳分布,對動態(tài)顯示原理就沒有感性的認識,就不易掌握編程。又如學(xué)習(xí)到繼電器控制時,學(xué)會用萬用表測量常閉、常開引腳,就有助于理解弱電控制強電的原理。
1.2.4 小組討論互相配合、取長補短
由于生理和心理的不同,男生和女生的興趣和特長、能力特點各有不同。女生勤奮、細心,男生大局觀感強、邏輯思維相對縝密。在學(xué)習(xí)過程中,鼓勵男女生互相搭配,以3~5個為單位組成學(xué)習(xí)團隊,有利于提高學(xué)習(xí)效率[10-12]。
市場上主流的單片機不但包含著豐富的數(shù)字外設(shè),如可交叉分配的I/O端口,標配的I2C、UART和SPI通信接口、可編程定時器/計數(shù)器陣列(PCA)、PWM驅(qū)動、看門狗(WDT),而且有多種模擬外設(shè),如ADC、DAC、比較器、放大器甚至部分傳感器,所以單片機就是個片上系統(tǒng)(SoC)。因此,其在電路中的分工有如下5點:
1)通過傳感器對輸入?yún)?shù)的數(shù)據(jù)采集;
2)與執(zhí)行機構(gòu)的信號連接與驅(qū)動;
3)芯片級或模塊電路之間的數(shù)據(jù)通信;
4)與上位機之間的通信;
5)按鍵掃描和液晶顯示。
單片機起到輸入數(shù)據(jù)的采集、板上硬件電路的處理與協(xié)調(diào)和數(shù)據(jù)通信的作用。
LabVIEW(laboratory virtual instrument engineering workbench)程序被稱為VI(virtual instrument),即虛擬儀器。其核心思想就是 “軟件即是儀器”,即把計算機強大的計算能力與外圍硬件資源有機的整合成一個整體,充分發(fā)揮軟件作用,同時也使硬件資源得到充分應(yīng)用。
LabVIEW的數(shù)學(xué)計算和分析功能強大,便于建模和數(shù)據(jù)管理,兩者結(jié)合,可以達到良好的控制效果。其在電路系統(tǒng)中的分工有如下5點:
1)對傳感器采集的數(shù)據(jù)進行濾波處理和曲線擬合;
2)虛擬信號發(fā)生器;
3)數(shù)學(xué)建模,數(shù)據(jù)分析;
4)設(shè)計友好的人機界面;
5)接入互聯(lián)網(wǎng)。
軟件提供的子程序使得程序開發(fā)更方便[13]。大量的數(shù)據(jù)計算、存儲和分析盡量由它處理。一個由LabVIEW和單片機的應(yīng)用電路系統(tǒng)如圖2所示。
圖2 LabVIEW和單片機組成的應(yīng)用系統(tǒng)框圖
本實驗項目的意義更多在于基礎(chǔ)訓(xùn)練,包括單片機C語言和LabVIEW的編程和調(diào)試。方案與圖2相似,單片機采用STC89C52,電機速度和方向采用霍爾傳感器采集 (或光電傳感器),電機驅(qū)動采用L298N模塊。通信接口采用RS232C,無需遠程傳送。
單片機把電機速度和方向數(shù)據(jù)通過串口發(fā)送給LabVIEW上位機,上位機經(jīng)PID算法算出調(diào)速控制信號返回給單片機,由單片機經(jīng)驅(qū)動電路調(diào)整電機速度,使電機速度快速達到設(shè)定的速度值并穩(wěn)定,實現(xiàn)過程的閉環(huán)控制。PID算法是直流電機(或步進電機)調(diào)速控制及溫度控制的一種經(jīng)典控制算法,如果P、I、D參數(shù)整定合適的話,可以達到很好的控制效果。實際上,單純由單片機完成PID控制也是一種常用方法,但對初學(xué)者來說,調(diào)試PID算法及整定合適的控制參數(shù),是一個難點,過程長、花費時間多,效果還不一定好。如果把PID算法由LabVIEW承擔(dān),利用軟件自帶的PID工具很快就能編好控制程序。把P、I、D這3個參數(shù)通過前面板窗口進行設(shè)定和調(diào)整,可以使整個調(diào)試過程來得直觀和高效,提高學(xué)生的學(xué)習(xí)興趣。本實踐案例中,單片機的程序不會太復(fù)雜,LabVIEW程序也不大,比較適合基礎(chǔ)訓(xùn)練。
這是一個有多位學(xué)生參與的科研項目,其成果已經(jīng)得到了初步應(yīng)用[14]。系統(tǒng)組成如圖3所示。
圖3 一種基于單片機和LabVIEW的應(yīng)用案例
每個傳感器節(jié)點終端都由測溫傳感器和一氧化碳傳感器組成,ZigBee網(wǎng)絡(luò)由傳感器節(jié)點終端、路由器和協(xié)調(diào)器組成。一個網(wǎng)絡(luò)中協(xié)調(diào)器只能有唯一一個,起組織和建立網(wǎng)絡(luò)的作用;路由器視實際需要可以有若干個,主要起數(shù)據(jù)傳遞作用;傳感器節(jié)點終端個數(shù)視實際需要監(jiān)測的房間而定,每個終端監(jiān)測的房間面積為30~40 m2,終端節(jié)點既可以采集數(shù)據(jù),也可起數(shù)據(jù)傳遞作用。協(xié)調(diào)器負責(zé)接收各傳感器節(jié)點采集的數(shù)據(jù),并把匯集來的監(jiān)測現(xiàn)場的數(shù)據(jù),經(jīng)過 RS232發(fā)送給 GPRS DTU,GPRS DTU通過GPRS無線網(wǎng)絡(luò)把數(shù)據(jù)傳輸?shù)絀nternet上指定的服務(wù)器,主控上位機經(jīng)虛擬串口從上述服務(wù)器實時取回數(shù)據(jù)并進行數(shù)據(jù)融合,及時作出火災(zāi)危險性評價直至發(fā)出報警信號。方案中的溫度值和CO濃度值由單片機采集,單片機把采集的數(shù)據(jù)通過ZigBee透傳網(wǎng)絡(luò)送到上位機濾波和存儲處理。上位機軟件由LabVIEW開發(fā)而成,如圖4所示。方案中,傳感器數(shù)據(jù)的濾波處理及關(guān)鍵的數(shù)據(jù)融合計算由LabVIEW完成。應(yīng)用案例中,充分發(fā)揮了LabVIEW和單片機的各自優(yōu)點,使報警系統(tǒng)的報警準確、及時,系統(tǒng)界面友好,易于使用。
圖4 一種基于單片機和LabVIEW的應(yīng)用案例
主流單片機都含有豐富的模擬外設(shè)和數(shù)字外設(shè),便于數(shù)據(jù)采集、執(zhí)行機構(gòu)驅(qū)動和組成靈活的通信方式;LabVIEW軟件平臺易于編程,含有豐富的數(shù)學(xué)分析和信號處理功能,便于建模和程序?qū)崿F(xiàn)。人機界面友好,網(wǎng)絡(luò)功能多樣。在本科二年級到四年級學(xué)生中,都可以引入單片機與Lab-VIEW技術(shù)相結(jié)合的訓(xùn)練項目,可以更高效地學(xué)習(xí)和開發(fā)創(chuàng)新、創(chuàng)業(yè)項目。
[1]王瓊,盛德策,陳雪梅.項目驅(qū)動下的大學(xué)生創(chuàng)新創(chuàng)業(yè)教育[J].實驗技術(shù)與管理,2013,30(6):99-101.
[2]梁勇.虛擬仿真技術(shù)在項目式綜合測控系統(tǒng)教學(xué)中的應(yīng)用[J].實驗技術(shù)與管理,2013,30(3):82-85.
[3]戴一平.LabVIEW平臺在教育技術(shù)學(xué)科實驗教學(xué)中的應(yīng)用分析[J].現(xiàn)代教育技術(shù),2012,22(8):113-117.
[4]江敏,錢平.單片機教學(xué)向嵌入式教學(xué)轉(zhuǎn)型的幾點研究[J].電氣電子教學(xué)學(xué)報,2005,27(1):33-34.
[5]蘇檢德,何富運,殷嚴剛,等. “單片機應(yīng)用設(shè)計”課程教學(xué)改革與實踐[J].實驗技術(shù)與管理,2011,28(12):148-150.
[6]唐煒.基于 “項目驅(qū)動”的單片機類課程實踐教學(xué)改革[J].實驗室研究與探索,2010,29(5):130-132.
[7]陳森,張師平,吳平.基于課題型的研究性實驗教學(xué)模式探索與實踐[J].實驗室研究與探索,2013,32(7):171-174.
[8]鄭志遠,樊振軍,董愛國,等.設(shè)立實驗室開放基金提高學(xué)生創(chuàng)新能力[J].實驗技術(shù)與管理,2011,38(4):97-99.
[9]伍亞泰,徐聰聰,陳曉.高校學(xué)生自主學(xué)習(xí)能力培養(yǎng)的策略研究——以華南農(nóng)業(yè)大學(xué)農(nóng)學(xué)院為例[J].科教導(dǎo)刊,2015(11):38-39.
[10]賀雯.性別差異的研究及其對教育的啟示作用[J].上海師范大學(xué)學(xué)報 (哲學(xué)社會科學(xué)版),2005(4):21-24.
[11]劉艷,閆國棟,孟威,等.創(chuàng)新創(chuàng)業(yè)教育與專業(yè)教育的深度融合[J].中國大學(xué)教學(xué),2014(11):35-37.
[12]胡桃,沈莉.國外創(chuàng)新創(chuàng)業(yè)教育模式對我國高校的啟示[J].中國大學(xué)教學(xué),2013(2):90-94.
[13]劉晉霞,胡仁喜,康士廷.LabVIEW2012中文版虛擬儀器從入門到精通[M].3版.北京:機械工業(yè)出版社,2013.
[14]蔡植善,陳木生.多傳感器數(shù)據(jù)融合的火災(zāi)探測報警系統(tǒng)設(shè)計[J].泉州師范學(xué)院學(xué)報,2015,33(2):72-77.