胡天立 肖培 宮鶴 穆葉



摘 ?要: 為解決現有嵌入式教學實驗平臺擴展性和通用性差、僅適用于實驗教學等問題,設計基于總線結構的模塊化嵌入式實驗平臺。平臺整合了物聯網四層模型中的感知層和網絡層硬件單元,將硬件單元按照功能模塊化,提出基于CAN總線的模塊化架構,并設計適用于該架構的通信協議,使平臺在滿足實驗教學的同時,可應用于科研及實際項目。在實驗教學應用中,平臺訓練了學生的基礎技能和實踐能力,培養了學生的協同創新能力、團隊合作意識。在科研項目應用中,基于平臺設計的模塊化采集節點和網關節點經過性能測試和穩定性測試后,已投入實際使用。
關鍵詞: 嵌入式實驗平臺; 總線結構; 模塊化架構; 通信協議; 實驗教學; 技能訓練
中圖分類號: TN914?34 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼: A ? ? ? ? ? ? ? ? ? ? 文章編號: 1004?373X(2020)24?0075?04
Design and implementation of modular embedded experimental
platform based on bus structure
HU Tianli1,2,3, XIAO Pei1,2,3, GONG He1,2,3, MU Ye1,2,3
(1. School of Information Technology, Jilin Agricultural University, Changchun 130118, China;
2. Jilin Internet of Things Technology Collaborative Innovation Center, Changchun 130118, China;
3. Jilin Intelligent Environmental Engineering Research Center, Changchun 130118, China)
Abstract: A modular embedded experimental platform based on bus structure is designed to solve the problems that the existing embedded teaching experiment platform has poor scalability and versatility, and is only suitable for experimental teaching. The hardware units of the sensing layer and network layer in the four?layer model of the Internet of Things are integrated on the platform, and the hardware units are modularized according to their functions. The modular architecture based on CAN bus is proposed, and the communication protocol suitable for the architecture is designed, so that the platform can be applied to the scientific research and practical projects while meeting the experimental teaching requirements. In the application of experimental teaching, students′basic skills and practical abilities are trained, and students′collaborative innovation abilities and teamwork awareness are cultivated on the platform. In the application of scientific research projects, the modular acquisition nodes and gateway nodes designed based on the platform have been put into practical application after performance testing and stability testing.
Keywords: embedded experimental platform; bus structure; modular architecture; communication protocol; experimental teaching; skill training
0 ?引 ?言
實驗教學是教學的重要組成部分,是培養學生理論聯系實際、分析和解決實際問題、創新意識和創新能力必不可少的環節[1?2]。物聯網作為一門將通信技術、傳感器網絡和智能系統等綜合在一起的交叉學科[3],對實驗教學有著更高的要求。
目前,教研人員為解決市場上物聯網教學實驗平臺的結構不合理,設備穩定性差、效率低下、價格昂貴、維修困難、設計實驗復雜等問題,提出了許多解決方案[1?10]。但仍存在一些不足,如未充分考慮學生協同創新能力的構建、團隊合作意識和基礎技能教育的培養、模塊化思想的形成,且方案僅適用于實驗教學,擴展性和通用性差,不能運用于科研及實際項目。對此,本文通過整合物聯網模型的感知層和網絡層硬件單元,將硬件單元按照功能模塊化,設計了基于總線結構的模塊化嵌入式實驗平臺。
1 ?實驗平臺總體架構
物聯網四層模型包括感知層、網絡層、平臺層和應用層[11]。其中,感知層負責數據采集,網絡層負責數據傳輸,平臺層負責數據存儲,應用層提供各種應用服務。圖1為本文設計的實驗平臺三層模型示意圖。模型將物聯網四層模型中的感知層和網絡層合并為感知網絡層,分為感知網絡層、平臺服務層、分析應用層三層,并在感知網絡層中將傳感器、執行器和通信模塊等硬件單元按照功能劃分為各個模塊,提出了一種基于總線結構的模塊化架構。
架構中各模塊運行獨立任務,基于控制局域網(Control Area Network,CAN)總線通信[12],通過不同模塊的組合,可實現采集節點、控制節點、網關節點等角色的轉換,架構中各類模塊及其功能如下:
1) 數據采集模塊(Data Acquisition Module,DAM):負責數據采集,支持采用RS 485、RS 232、USART、模擬輸入、數字輸入等接口協議的傳感器。
2) 設備控制模塊(Device Control Module,DCM):負責設備控制,可控制采用模擬量、數字量、PWM、RS 485等接口協議的設備。
3) 數據傳輸模塊(Data Transmission Module,DTM):負責數據傳輸,支持ZigBee、Lora、BlueTooth、GSM、WiFi、4G、NB?IoT等通信方式,通過配置可接入上層平臺。
4) 電源時鐘模塊(Power Clock Module,PCM):負責系統供電和提供系統時鐘,根據現場電源環境,可選用不同輸入的電源時鐘模塊。
5) 數據存儲模塊(Data Storage Module,DSM):負責總線數據存儲,如存儲傳感器數據、設備狀態數據等,存儲介質支持SD卡、FLASH等。
6) 人機交互模塊(Human Interaction Module,HIM):負責人機交互,支持LCD等方式顯示信息、語音播報信息、按鍵輸入等。
7) 邊緣計算模塊(Edge Calculation Module,ECM):負責邊緣計算,減輕服務器負擔,如通過分析采集數據進行自動控制、可作為區塊鏈中的區塊、對上傳的數據進行加密和解密等。架構中其他模塊也可將剩余資源用于邊緣計算。
2 ?實驗平臺硬件設計
實驗平臺及各模塊使用ST公司的STM32F103CBT6作為微控制單元(Microcontroller Unit,MCU),通過10?pin歐氏插座實現CAN通信、程序下載、總線喚醒及供電,CAN收發器芯片型號為JTA1050,圖2為實驗平臺框圖,主要功能如下:
1) 板載8路歐氏插座接口,通過設計的串口下載切換電路能向接入的指定模塊下載程序,便于模塊間調試;
2) 板載的RS 485、RS 232、SD卡、撥碼開關、LED等電路連接方式與各模塊一致,基于實驗平臺開發的程序可直接下載至對應模塊;
3) 平臺支持JTAG和串口兩種下載程序方式,JTAG下載只能用于實驗平臺,串口下載可用于實驗平臺和接入的模塊;
4) 平臺引出主控所有I/O口,具有4路3.3 V和5 V電源接口,便于擴展使用。
設計的各模塊分為CAN收發器、MCU、外設三部分,CAN收發器和MCU為基本部分,外設為擴展部分,依據模塊類型而定。
3 ?實驗平臺軟件設計
3.1 ?嵌入式軟件
為了提高模塊間的高效通信,結合RTOS[13]任務間通信和CANopen[14]分布式通信思想設計了適用于該架構的IoT?CAN通信協議。IoT?CAN的設計目標與RoboCAN一致,旨在擁有一個集中的、輕量的、可拓展的和開放的系統,通過基本功能接口快速地將任何傳感器、執行器和通信模塊等硬件單元集成到系統架構中[15],支持設備熱拔插、設備可拓展、數據透傳、總線配置等功能。
圖3為模塊設備結構圖,分為通信層、接口層、硬件層、驅動層和任務層。通信層負責CAN總線通信的報文管理,接口層封裝了實現總線通信的接收、發送、中斷事件等接口,各模塊通過接口層接口進行通信和協作,這兩層為IoT?CAN協議所在層。硬件層為模塊外設,如傳感器、執行器等硬件單元;驅動層為硬件層提供驅動,如模塊的初始化、控制等;任務層根據模塊實際需求運行獨立任務,如傳感器數據采集、設備控制、數據上傳與下發、邊緣計算等任務。
3.2 ?固件下載管理軟件
固件下載管理軟件使用C#編寫,結合模塊化架構特點設計,具有固件下載、固件管理、入網序列號管理三個功能模塊。固件下載功能使用串口向平臺或模塊下載程序;固件管理功能用于管理實驗平臺各類型固件,基于FTP協議實現固件的更新和上傳;入網序列號管理功能主要為架構中的數據傳輸模塊設計,入網序列號是系統通信唯一編碼,由軟件根據地區編碼、固件類型等信息分配。軟件還具有權限管理、軟件升級、設置保存等功能。
4 ?平臺實現及應用
圖4a)為設計的實驗開發平臺和各模塊,模塊1~模塊3分別為數據采集模塊中的RS 485協議板、I2C協議板和RS 232協議板;模塊4為程序下載板,用于向架構中各模塊下載程序;模塊5為總線板,用于連接各模塊,實現模塊間通信;模塊6為數據傳輸模塊中的ZigBee通信板,用于同其他設備通信;模塊7為5 V電源時鐘板,可為總線提供電源以及系統時鐘;模塊8為設備控制板中的通用I/O板,可輸出數字信號和模擬信號;模塊9為實驗開發平臺。圖4b)為基于實驗平臺開發的環境參數采集節點,經過測試驗證后,現已投入使用,節點可采集1路環境溫濕度、1路環境光照度、1路環境CO2濃度和3路土壤溫濕度,通過Lora通信板通信,數據經由模塊化網關節點上傳至服務器。圖5為PC端固件下載管理軟件界面,用于平臺固件下載和固件管理。
在實驗教學中,按照難度將實驗劃分為初級實驗、中級實驗、高級實驗、綜合實驗和拓展實驗五類。初級實驗包括實驗環境搭建、固件燒寫、跑馬燈實驗、按鍵讀取實驗等,引導學生熟悉開發平臺以及開發流程;中級實驗包括AD/DA實驗、SHT11實驗、DS18B20實驗等,使學生熟悉開發工程結構,了解協議通信原理;高級實驗包括ZigBee通信實驗、TCP通信實驗、MQTT通信實驗等,讓學生明白平臺與平臺、平臺與服務器之間如何通信;綜合實驗包括IoT?CAN通信實驗、采集節點實驗、控制節點實驗、網關節點實驗、計算節點實驗等,通過綜合實驗讓學生了解本平臺的模塊之間通信機制和物聯網中各節點工作原理;拓展實驗為學生自主發揮部分,學生可以基于協議接口,將其他硬件單元接入平臺,還可以根據提供的基本電路模板設計新模塊。
5 ?結 ?語
本文設計的總線結構模塊化嵌入式實驗平臺,解決了現有物聯網教學實驗平臺的一些不足之處,可同時用于實驗教學和科研項目。該平臺整合了物聯網四層模型中的感知層和網絡層硬件單元,將各硬件單元按照功能模塊化,提出了基于CAN總線的模塊化架構,并結合RTOS任務間通信和CANopen分布式通信思想設計了適用于該架構的IoT?CAN通信協議,平臺中各模塊通過協議基本接口進行通信及協作。
該平臺通過在信息技術學院電子信息科學與技術專業單片機實驗教學中的實踐,訓練了學生的基礎技能和實踐能力,培養了學生的協同創新能力、團隊合作意識。同時,該平臺也用于科研項目,縮減了項目研發周期,設計的模塊化采集節點、網關節點經過性能和穩定性測試后,已投入實際使用。
參考文獻
[1] 王琳霖,王偉,曹國強,等.基于單片機的機電控制實訓平臺設計[J].實驗技術與管理,2018(4):82?85.
[2] 陶沖,李宏.遠程控制數字系統實驗平臺設計與實現[J].實驗技術與管理,2018(1):104?108.
[3] 趙建敏,李琦,陳波.物聯網綜合實驗系統設計[J].實驗室研究與探索,2018,37(12):147?150.
[4] 杜海龍,王琦,李娟.基于C8051F單片機的綜合實驗平臺設計[J].實驗技術與管理,2018,35(6):50?53.
[5] 王海珍,廉佐政,滕艷平.cc2530單片機多點溫度采集實驗設計[J].實驗室研究與探索,2018,37(12):98?101.
[6] 羅鈞,李華,付麗,等.基于MSP432的多傳感器數據采集與動態顯示實驗設計[J].實驗技術與管理,2018,35(10):32?36.
[7] 崔業梅,李元熙,楊國華.嵌入式實訓教學設備的研制與教學改革[J].實驗室研究與探索,2017,36(9):66?69.
[8] 陳顯明,劉書煥.基于物聯網的農業環境數據收集系統設計[J].實驗室研究與探索,2018,37(7):66?68.
[9] 邢娟,秦丹,戰麗波.基于WiFi的智能實驗室環境監測和監控系統設計[J].實驗室研究與探索,2019,38(3):265?268.
[10] 閆亞玲,李博,劉偉杰.基于ZigBee的實驗室防火遠程監控系統設計[J].實驗室研究與探索,2019,38(5):282?285.
[11] 李冬月,楊剛,千博.物聯網架構研究綜述[J].計算機科學,2018,45(z2):27?31.
[12] PENON Ptrick.A controller area network: U.K., EP1069733 [P]. [2001?01?17].
[13] 張美玉,張倩穎,孟子琪,等.實時嵌入式雙操作系統架構研究綜述[J].電子學報,2018,46(11):2787?2796.
[14] 賈鵬飛,王容川,徐林森,等.基于ROS和CANopen協議的控制器實時通信系統構建[J].中國科學技術大學學報,2018,48(9):703?710.
[15] DIEGO P L, JOAQU?N L F, ENRIQUE P, et al. Distributed and modular can?based architecture for hardware control and sensor data integration [J]. Sensors, 2017, 17(5): 201?205.
作者簡介:胡天立(1985—),男,吉林長春人,博士,主要從事農業物聯網研究。
肖 ?培(1996—),男,湖南邵陽人,碩士,主要從事農業物聯網研究。