劉 晨, 鄧慶緒, 陳郭成, 鮑玉斌
(東北大學計算機科學與工程學院,沈陽 110819)
物聯網工程專業是東北大學針對國家戰略性新興產業需求,于2011年全國第一批全新開設的信息技術類專業。其專業課程涵蓋多個領域,在注重理論知識體系架構的同時,著力加強學生工程實踐能力的培養[1-5]。“嵌入式系統實驗”是物聯網工程專業的核心課程之一,現行的教學內容難度較低、實驗中缺乏層次和貫通,難以適應工程實際的快速發展[6-8]。
《新工科研究與實踐項目指南》中明確指出,要以問題為導向,驅動學生運用計算思維解決復雜工程問題,推進信息技術與工程教育深度融合,創新“互聯網+”環境下工程教育教學方法[9-12]。依據《指南》要求和課程實際,我校計算機國家級實驗教學示范中心基于典型物聯網架構,結合ZigBee 無線通信技術和云平臺設計了系列教學實驗,強化學生對于嵌入式系統的理解,提升學生動手實踐能力。本文將對實驗教學的設計思路和實現過程進行具體闡述。
課程采用武漢中智訊科技有限公司的xLab 未來實驗平臺,平臺核心芯片是美國德州儀器(TI)公司生產的系統級芯片CC2530,它是一款工業標準增強型8051MCU,帶有系統內可編程的閃存,適用于在實驗中學生對于芯片中的程序擦除與改寫[13]。同時,CC2530 自帶ZigBee 無線收發功能,便于開展節點間無線通信實驗,幫助學生掌握無線收發原理,理解信號傳輸過程[14-15]。實驗中還會用到光敏傳感器、步進電動機等器件,用于信號的采集與反饋。
編程部分使用的軟件是IAR 公司的IAR Embedded Workbench for 8051,該軟件是帶有C/C ++編譯器和調試器的集成開發環境,支持對CC2530 的開發,適用于有一定編程基礎的學生進行單片機硬件開發及調試[16]。在不同難度的實驗教學中,還會用到串口調試助手、無線匯集節點、智云圖形化組態軟件等輔助軟件。
本文設計的嵌入式系統系列實驗以智慧農業系統為背景,指導學生逐步完成其中智能光照部分的搭建。實驗教學內容包括:基于光敏傳感器的光強檢測實驗、基于ZigBee通信的光強檢測-電動機控制實驗、基于物聯網架構的智能光照系統設計實驗。通過實驗難度的逐步提升,滿足不同層次學生的個性化學習需求,提升學生動手實踐能力和解決復雜工程問題的水平。
本實驗利用CC2530 和光敏傳感器,指導學生設計光照度檢測系統,使學生初步掌握IAR 開發環境的使用方法和CC2530 芯片的工作過程。實驗要求能自動連續讀取光敏傳感器采集的光照強度測量值,通過串口傳輸至上位機設備顯示。實驗過程中,將CC2530連接光敏傳感器后通過串口與上位機連接,使用IAR開發環境編寫撰寫光照度采集及串口打印輸出程序,如圖1 所示。在程序編寫階段要求學生完成主函數的編寫,初始化函數直接進行調用。調試無誤后將程序下載至CC2530 中,打開串口調試助手開啟串口功能,在串口調試助手中觀察光照值的變化,如圖2 所示。

圖1 光照強度打印程序

圖2 實驗結果
一個典型的智能溫室不僅需要實時獲取光照強度,還需要根據不同光照條件,動態調整遮光簾的位置。實驗中,以搭建的光照強度采集系統為傳感器端,進行信號發送,以配有CC2530 芯片的步進電動機作為執行器端,進行信號接收。利用芯片自帶的ZigBee無線通信功能,將光照強度值實時發送,從而使步進電動機執行正轉、反轉和靜止操作,模擬遮光簾的位置調整。器件工作示意圖如圖3 所示。

圖3 器件工作示意圖
實驗中,學生利用發送函數rfSendData()和接收函數rfRecvData()實現芯片間的通信,根據接收到的pRxData[]數組判斷并控制電機工作狀態,代碼如圖4所示。實驗設計以芯片間點對點通信方式,實現信號的實時傳輸和反饋,旨在使學生掌握ZigBee 點對點通信的信號收發程序設計方法和芯片數據輸出過程。

圖4 發送端和接收端程序
綜合前面的實驗內容,增加云平臺和組態化系統界面,構建一個基于典型物聯網“端-管-云”架構的智能光照系統。
(1)系統總體設計。系統主要分為前端和后端2部分,其中前端主要用來實現系統展示及控制,后端包括云服務器、傳感器端和執行器端,完成數據交互和請求發送等功能,系統結構見圖5。同時,在傳感器和執行器端預留接口,支持學生進行實驗拓展,完成二次開發。

圖5 系統結構圖
(2)云服務器端設計。傳感器端采集信號完成后,利用無線匯集節點將具備ZigBee 無線通信協議的數據接入到上位機并轉發到云服務器中,執行器端也可通過無線匯集節點接收云端的指令,成功接入后可在網絡拓撲結構圖中顯示相應設備并傳輸實時數據,如圖6 所示。該過程旨在讓學生理解信號從終端節點傳輸到云端的實現過程。

圖6 網絡拓樸圖
(3)組態化系統界面設計。通過智云圖形化組態軟件進行系統界面設計,實現數據可視化,完成一個完整智能光照系統的搭建,提高學生嵌入式系統開發能力。學生通過界面設計、控件設置和MAC地址通道映射等操作完成實驗。系統開啟后可觀察到儀表盤數值隨光照強度值變化而改變,除根據光照強度自動控制步進電動機動作外,用戶還可通過開關手動停止步進電動機轉動,系統界面如圖7 所示。

圖7 組態化系統界面
隨著物聯網與人工智能技術的不斷發展,以嵌入式設備為基礎的智能系統已經在生產生活中獲得應用。在實驗教學中針對現實應用場景的系統開發,更容易激發學生的學習興趣。利用光照度監測系統的搭建,讓學生完成教學軟、硬件初識;通過步進電動機實時控制實驗,增強學生對于ZigBee 無線通信傳輸知識的掌握,強化編程水平;最終完成光照度智能監測系統的設計,掌握小型嵌入式系統設計方法,提升動手實踐能力。
嵌入式系統是物聯網重要的技術組成,深入理解嵌入式系統的相關理論與方法,是學好物聯網專業課的前提。課程設計的系列實驗,通過代碼的編寫和硬件的連接,展現嵌入式系統設計和通信的全過程,將抽象的概念具象化,幫助學生理解與掌握,為后續物聯網系統開發、解決復雜工程問題奠定基礎。
新工科建設指南要求培養具有科學的思維方法和創新意識,能夠提出創新性的方法并用于解決實際問題的創新型人才。實驗在系統設計過程中預留了豐富的拓展接口,鼓勵有能力的學生深入探索,豐富傳感器和執行部件類型,對實驗項目進行完善與提升,培養學生的創新精神。
結合新工科人才培養的要求,對嵌入式系統設計實驗教學進行改革,設計了一系列由淺入深、功能不斷完善的實驗。將物聯網典型的“端-管-云”架構引入實驗教學,以智慧農業為背景物聯網工程實際為導向設計實驗內容,學生通過參與嵌入式系統設計的全過程,體會嵌入式系統的復雜度和重要性,提升實踐能力和系統設計能力。實驗還可通過改變傳感器和執行器類型,改變實驗結果呈現形式,克服傳統教學實驗形式單一問題,提高學生參與實驗教學的積極性。
·名人名言·
我以為人們在每一時期都可以過有趣而有用的生活。我們應該不虛度一生,應該能夠說,“我們已經作了我能作的事”,人們只能要求我們如此,而且只有這樣我們才能有一點快樂。
——居里夫人