劉 晨, 鄧慶緒, 陳郭成, 鮑玉斌
(東北大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,沈陽(yáng) 110819)
物聯(lián)網(wǎng)工程專業(yè)是東北大學(xué)針對(duì)國(guó)家戰(zhàn)略性新興產(chǎn)業(yè)需求,于2011年全國(guó)第一批全新開(kāi)設(shè)的信息技術(shù)類專業(yè)。其專業(yè)課程涵蓋多個(gè)領(lǐng)域,在注重理論知識(shí)體系架構(gòu)的同時(shí),著力加強(qiáng)學(xué)生工程實(shí)踐能力的培養(yǎng)[1-5]?!扒度胧较到y(tǒng)實(shí)驗(yàn)”是物聯(lián)網(wǎng)工程專業(yè)的核心課程之一,現(xiàn)行的教學(xué)內(nèi)容難度較低、實(shí)驗(yàn)中缺乏層次和貫通,難以適應(yīng)工程實(shí)際的快速發(fā)展[6-8]。
《新工科研究與實(shí)踐項(xiàng)目指南》中明確指出,要以問(wèn)題為導(dǎo)向,驅(qū)動(dòng)學(xué)生運(yùn)用計(jì)算思維解決復(fù)雜工程問(wèn)題,推進(jìn)信息技術(shù)與工程教育深度融合,創(chuàng)新“互聯(lián)網(wǎng)+”環(huán)境下工程教育教學(xué)方法[9-12]。依據(jù)《指南》要求和課程實(shí)際,我校計(jì)算機(jī)國(guó)家級(jí)實(shí)驗(yàn)教學(xué)示范中心基于典型物聯(lián)網(wǎng)架構(gòu),結(jié)合ZigBee 無(wú)線通信技術(shù)和云平臺(tái)設(shè)計(jì)了系列教學(xué)實(shí)驗(yàn),強(qiáng)化學(xué)生對(duì)于嵌入式系統(tǒng)的理解,提升學(xué)生動(dòng)手實(shí)踐能力。本文將對(duì)實(shí)驗(yàn)教學(xué)的設(shè)計(jì)思路和實(shí)現(xiàn)過(guò)程進(jìn)行具體闡述。
課程采用武漢中智訊科技有限公司的xLab 未來(lái)實(shí)驗(yàn)平臺(tái),平臺(tái)核心芯片是美國(guó)德州儀器(TI)公司生產(chǎn)的系統(tǒng)級(jí)芯片CC2530,它是一款工業(yè)標(biāo)準(zhǔn)增強(qiáng)型8051MCU,帶有系統(tǒng)內(nèi)可編程的閃存,適用于在實(shí)驗(yàn)中學(xué)生對(duì)于芯片中的程序擦除與改寫[13]。同時(shí),CC2530 自帶ZigBee 無(wú)線收發(fā)功能,便于開(kāi)展節(jié)點(diǎn)間無(wú)線通信實(shí)驗(yàn),幫助學(xué)生掌握無(wú)線收發(fā)原理,理解信號(hào)傳輸過(guò)程[14-15]。實(shí)驗(yàn)中還會(huì)用到光敏傳感器、步進(jìn)電動(dòng)機(jī)等器件,用于信號(hào)的采集與反饋。
編程部分使用的軟件是IAR 公司的IAR Embedded Workbench for 8051,該軟件是帶有C/C ++編譯器和調(diào)試器的集成開(kāi)發(fā)環(huán)境,支持對(duì)CC2530 的開(kāi)發(fā),適用于有一定編程基礎(chǔ)的學(xué)生進(jìn)行單片機(jī)硬件開(kāi)發(fā)及調(diào)試[16]。在不同難度的實(shí)驗(yàn)教學(xué)中,還會(huì)用到串口調(diào)試助手、無(wú)線匯集節(jié)點(diǎn)、智云圖形化組態(tài)軟件等輔助軟件。
本文設(shè)計(jì)的嵌入式系統(tǒng)系列實(shí)驗(yàn)以智慧農(nóng)業(yè)系統(tǒng)為背景,指導(dǎo)學(xué)生逐步完成其中智能光照部分的搭建。實(shí)驗(yàn)教學(xué)內(nèi)容包括:基于光敏傳感器的光強(qiáng)檢測(cè)實(shí)驗(yàn)、基于ZigBee通信的光強(qiáng)檢測(cè)-電動(dòng)機(jī)控制實(shí)驗(yàn)、基于物聯(lián)網(wǎng)架構(gòu)的智能光照系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)。通過(guò)實(shí)驗(yàn)難度的逐步提升,滿足不同層次學(xué)生的個(gè)性化學(xué)習(xí)需求,提升學(xué)生動(dòng)手實(shí)踐能力和解決復(fù)雜工程問(wèn)題的水平。
本實(shí)驗(yàn)利用CC2530 和光敏傳感器,指導(dǎo)學(xué)生設(shè)計(jì)光照度檢測(cè)系統(tǒng),使學(xué)生初步掌握IAR 開(kāi)發(fā)環(huán)境的使用方法和CC2530 芯片的工作過(guò)程。實(shí)驗(yàn)要求能自動(dòng)連續(xù)讀取光敏傳感器采集的光照強(qiáng)度測(cè)量值,通過(guò)串口傳輸至上位機(jī)設(shè)備顯示。實(shí)驗(yàn)過(guò)程中,將CC2530連接光敏傳感器后通過(guò)串口與上位機(jī)連接,使用IAR開(kāi)發(fā)環(huán)境編寫撰寫光照度采集及串口打印輸出程序,如圖1 所示。在程序編寫階段要求學(xué)生完成主函數(shù)的編寫,初始化函數(shù)直接進(jìn)行調(diào)用。調(diào)試無(wú)誤后將程序下載至CC2530 中,打開(kāi)串口調(diào)試助手開(kāi)啟串口功能,在串口調(diào)試助手中觀察光照值的變化,如圖2 所示。
圖1 光照強(qiáng)度打印程序
圖2 實(shí)驗(yàn)結(jié)果
一個(gè)典型的智能溫室不僅需要實(shí)時(shí)獲取光照強(qiáng)度,還需要根據(jù)不同光照條件,動(dòng)態(tài)調(diào)整遮光簾的位置。實(shí)驗(yàn)中,以搭建的光照強(qiáng)度采集系統(tǒng)為傳感器端,進(jìn)行信號(hào)發(fā)送,以配有CC2530 芯片的步進(jìn)電動(dòng)機(jī)作為執(zhí)行器端,進(jìn)行信號(hào)接收。利用芯片自帶的ZigBee無(wú)線通信功能,將光照強(qiáng)度值實(shí)時(shí)發(fā)送,從而使步進(jìn)電動(dòng)機(jī)執(zhí)行正轉(zhuǎn)、反轉(zhuǎn)和靜止操作,模擬遮光簾的位置調(diào)整。器件工作示意圖如圖3 所示。
圖3 器件工作示意圖
實(shí)驗(yàn)中,學(xué)生利用發(fā)送函數(shù)rfSendData()和接收函數(shù)rfRecvData()實(shí)現(xiàn)芯片間的通信,根據(jù)接收到的pRxData[]數(shù)組判斷并控制電機(jī)工作狀態(tài),代碼如圖4所示。實(shí)驗(yàn)設(shè)計(jì)以芯片間點(diǎn)對(duì)點(diǎn)通信方式,實(shí)現(xiàn)信號(hào)的實(shí)時(shí)傳輸和反饋,旨在使學(xué)生掌握Z(yǔ)igBee 點(diǎn)對(duì)點(diǎn)通信的信號(hào)收發(fā)程序設(shè)計(jì)方法和芯片數(shù)據(jù)輸出過(guò)程。
圖4 發(fā)送端和接收端程序
綜合前面的實(shí)驗(yàn)內(nèi)容,增加云平臺(tái)和組態(tài)化系統(tǒng)界面,構(gòu)建一個(gè)基于典型物聯(lián)網(wǎng)“端-管-云”架構(gòu)的智能光照系統(tǒng)。
(1)系統(tǒng)總體設(shè)計(jì)。系統(tǒng)主要分為前端和后端2部分,其中前端主要用來(lái)實(shí)現(xiàn)系統(tǒng)展示及控制,后端包括云服務(wù)器、傳感器端和執(zhí)行器端,完成數(shù)據(jù)交互和請(qǐng)求發(fā)送等功能,系統(tǒng)結(jié)構(gòu)見(jiàn)圖5。同時(shí),在傳感器和執(zhí)行器端預(yù)留接口,支持學(xué)生進(jìn)行實(shí)驗(yàn)拓展,完成二次開(kāi)發(fā)。
圖5 系統(tǒng)結(jié)構(gòu)圖
(2)云服務(wù)器端設(shè)計(jì)。傳感器端采集信號(hào)完成后,利用無(wú)線匯集節(jié)點(diǎn)將具備ZigBee 無(wú)線通信協(xié)議的數(shù)據(jù)接入到上位機(jī)并轉(zhuǎn)發(fā)到云服務(wù)器中,執(zhí)行器端也可通過(guò)無(wú)線匯集節(jié)點(diǎn)接收云端的指令,成功接入后可在網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖中顯示相應(yīng)設(shè)備并傳輸實(shí)時(shí)數(shù)據(jù),如圖6 所示。該過(guò)程旨在讓學(xué)生理解信號(hào)從終端節(jié)點(diǎn)傳輸?shù)皆贫说膶?shí)現(xiàn)過(guò)程。
圖6 網(wǎng)絡(luò)拓樸圖
(3)組態(tài)化系統(tǒng)界面設(shè)計(jì)。通過(guò)智云圖形化組態(tài)軟件進(jìn)行系統(tǒng)界面設(shè)計(jì),實(shí)現(xiàn)數(shù)據(jù)可視化,完成一個(gè)完整智能光照系統(tǒng)的搭建,提高學(xué)生嵌入式系統(tǒng)開(kāi)發(fā)能力。學(xué)生通過(guò)界面設(shè)計(jì)、控件設(shè)置和MAC地址通道映射等操作完成實(shí)驗(yàn)。系統(tǒng)開(kāi)啟后可觀察到儀表盤數(shù)值隨光照強(qiáng)度值變化而改變,除根據(jù)光照強(qiáng)度自動(dòng)控制步進(jìn)電動(dòng)機(jī)動(dòng)作外,用戶還可通過(guò)開(kāi)關(guān)手動(dòng)停止步進(jìn)電動(dòng)機(jī)轉(zhuǎn)動(dòng),系統(tǒng)界面如圖7 所示。
圖7 組態(tài)化系統(tǒng)界面
隨著物聯(lián)網(wǎng)與人工智能技術(shù)的不斷發(fā)展,以嵌入式設(shè)備為基礎(chǔ)的智能系統(tǒng)已經(jīng)在生產(chǎn)生活中獲得應(yīng)用。在實(shí)驗(yàn)教學(xué)中針對(duì)現(xiàn)實(shí)應(yīng)用場(chǎng)景的系統(tǒng)開(kāi)發(fā),更容易激發(fā)學(xué)生的學(xué)習(xí)興趣。利用光照度監(jiān)測(cè)系統(tǒng)的搭建,讓學(xué)生完成教學(xué)軟、硬件初識(shí);通過(guò)步進(jìn)電動(dòng)機(jī)實(shí)時(shí)控制實(shí)驗(yàn),增強(qiáng)學(xué)生對(duì)于ZigBee 無(wú)線通信傳輸知識(shí)的掌握,強(qiáng)化編程水平;最終完成光照度智能監(jiān)測(cè)系統(tǒng)的設(shè)計(jì),掌握小型嵌入式系統(tǒng)設(shè)計(jì)方法,提升動(dòng)手實(shí)踐能力。
嵌入式系統(tǒng)是物聯(lián)網(wǎng)重要的技術(shù)組成,深入理解嵌入式系統(tǒng)的相關(guān)理論與方法,是學(xué)好物聯(lián)網(wǎng)專業(yè)課的前提。課程設(shè)計(jì)的系列實(shí)驗(yàn),通過(guò)代碼的編寫和硬件的連接,展現(xiàn)嵌入式系統(tǒng)設(shè)計(jì)和通信的全過(guò)程,將抽象的概念具象化,幫助學(xué)生理解與掌握,為后續(xù)物聯(lián)網(wǎng)系統(tǒng)開(kāi)發(fā)、解決復(fù)雜工程問(wèn)題奠定基礎(chǔ)。
新工科建設(shè)指南要求培養(yǎng)具有科學(xué)的思維方法和創(chuàng)新意識(shí),能夠提出創(chuàng)新性的方法并用于解決實(shí)際問(wèn)題的創(chuàng)新型人才。實(shí)驗(yàn)在系統(tǒng)設(shè)計(jì)過(guò)程中預(yù)留了豐富的拓展接口,鼓勵(lì)有能力的學(xué)生深入探索,豐富傳感器和執(zhí)行部件類型,對(duì)實(shí)驗(yàn)項(xiàng)目進(jìn)行完善與提升,培養(yǎng)學(xué)生的創(chuàng)新精神。
結(jié)合新工科人才培養(yǎng)的要求,對(duì)嵌入式系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)教學(xué)進(jìn)行改革,設(shè)計(jì)了一系列由淺入深、功能不斷完善的實(shí)驗(yàn)。將物聯(lián)網(wǎng)典型的“端-管-云”架構(gòu)引入實(shí)驗(yàn)教學(xué),以智慧農(nóng)業(yè)為背景物聯(lián)網(wǎng)工程實(shí)際為導(dǎo)向設(shè)計(jì)實(shí)驗(yàn)內(nèi)容,學(xué)生通過(guò)參與嵌入式系統(tǒng)設(shè)計(jì)的全過(guò)程,體會(huì)嵌入式系統(tǒng)的復(fù)雜度和重要性,提升實(shí)踐能力和系統(tǒng)設(shè)計(jì)能力。實(shí)驗(yàn)還可通過(guò)改變傳感器和執(zhí)行器類型,改變實(shí)驗(yàn)結(jié)果呈現(xiàn)形式,克服傳統(tǒng)教學(xué)實(shí)驗(yàn)形式單一問(wèn)題,提高學(xué)生參與實(shí)驗(yàn)教學(xué)的積極性。
·名人名言·
我以為人們?cè)诿恳粫r(shí)期都可以過(guò)有趣而有用的生活。我們應(yīng)該不虛度一生,應(yīng)該能夠說(shuō),“我們已經(jīng)作了我能作的事”,人們只能要求我們?nèi)绱耍抑挥羞@樣我們才能有一點(diǎn)快樂(lè)。
——居里夫人