承浩 李杰
NB-IoT物聯(lián)網(wǎng)大學(xué)生實(shí)踐創(chuàng)新計(jì)劃與教學(xué)方案設(shè)計(jì)探討
承浩 李杰
(沙洲職業(yè)工學(xué)院,江蘇 張家港 215600)
NB-IoT又稱(chēng)窄帶物聯(lián)網(wǎng),是由3GPP標(biāo)準(zhǔn)化組織定義的一種技術(shù)標(biāo)準(zhǔn),工作于授權(quán)頻譜上,是一種專(zhuān)為IoT設(shè)計(jì)的窄帶射頻技術(shù),不同于Zigbee、Bluetooth、Wi-Fi等短距離無(wú)線通信技術(shù),它屬于低功耗廣域網(wǎng)(LPWAN)范疇,通信距離可以達(dá)到15 km。LPWAN目前還有一種流行的通信方式LoRa,它工作在免授權(quán)的ISM頻段上,NB-IoT和LoRa極具發(fā)展前景,基于這2種通信方式的生態(tài)正在快速建立。NB-IoT大學(xué)生實(shí)踐創(chuàng)新項(xiàng)目以及該技術(shù)在教學(xué)應(yīng)用方面的方案設(shè)計(jì)值得探討。
窄帶物聯(lián)網(wǎng);低功耗廣域網(wǎng);大學(xué)生實(shí)踐創(chuàng)新;無(wú)線通信技術(shù)
2018年帶領(lǐng)學(xué)生成功申報(bào)NB-IoT(Narrow Band Internet of Things)物聯(lián)網(wǎng)的江蘇省大學(xué)生實(shí)踐創(chuàng)新項(xiàng)目,項(xiàng)目總體組成框圖如圖1所示。核心MCU采用低功耗芯片STM32L476[1],使用SH20常規(guī)溫濕度傳感器、環(huán)境光傳感器,結(jié)合GPS+BD雙模定位模塊、MicroSD卡,以及人機(jī)交互按鍵、LED/TFT屏,通過(guò)BC95 NB-IoT物聯(lián)網(wǎng)模塊進(jìn)行信息與云端的交互,移動(dòng)端與PC端可以通過(guò)訪問(wèn)云端數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)遠(yuǎn)程采集與控制。
由于物聯(lián)網(wǎng)教學(xué)平臺(tái)的多樣化,選擇合適的通信平臺(tái)非常重要。短距離通信有Zigbee、Bluetooth、Wi-Fi等,低功耗廣域網(wǎng)(LPWAN)有3G、4G、NB-IoT、LoRa等[2],由于NB-IoT[3]作為未來(lái)窄帶通信的重要模式之一,物聯(lián)網(wǎng)教學(xué)中采用NB-IoT平臺(tái)通信也是一種非常好的教學(xué)模式。本文探討基于NB-IoT的教學(xué)方案設(shè)計(jì)。
圖1 系統(tǒng)總體組成框圖
根據(jù)大學(xué)生實(shí)踐創(chuàng)新項(xiàng)目計(jì)劃的目標(biāo)需求以及研究NB-IoT在教學(xué)中的應(yīng)用,系統(tǒng)硬件平臺(tái)選用了合適的MCU、傳感器、定位模塊、NB模塊、人機(jī)交互等功能模塊。
硬件平臺(tái)除用于物聯(lián)網(wǎng)NB-IoT課程以外,還可以作為嵌入式MCU基礎(chǔ)課程的實(shí)訓(xùn)平臺(tái),故必須選用市場(chǎng)上主流而且使用率高的MCU。由于NB-IoT平臺(tái)一般需要低功耗,意法半導(dǎo)體STM32L系列作為首選,最終平臺(tái)選用STM32L476, 它屬于超低功耗Cortex-M4內(nèi)核的32-bit ARM處理器,外設(shè)資源豐富,網(wǎng)絡(luò)學(xué)習(xí)資源也較多。
可以用來(lái)做實(shí)訓(xùn)的傳感器[4]種類(lèi)很多,平臺(tái)設(shè)計(jì)了常規(guī)溫濕度傳感器SH20以及模擬量輸出光照度傳感器,其他傳感器或者模塊可以通過(guò)擴(kuò)展GPIO口接入,如加速度傳感器、人體紅外傳感器、應(yīng)變片傳感器等。
定位模塊主要有GPS定位以及北斗BD定位,基于目前的市場(chǎng)情況采用GPS+BD雙模模塊是比較經(jīng)濟(jì)可靠的設(shè)計(jì)方案。正點(diǎn)原子GPS+北斗雙模定位模塊ATK1218-BD采用SKYTRAQ公司的雙模定位芯片S1216,外接有源天線,在冷啟動(dòng)時(shí)30秒內(nèi)即可定位,定位精度為2.5 mCEP,更新速率1/2/4/5/8/10/20HZ,串口通信波特率4800-230400 bps,捕獲追蹤靈敏度-165 dBm,由于模塊有后備紐扣電池,可保存星歷數(shù)據(jù),掉電復(fù)位后可以在數(shù)秒內(nèi)迅速實(shí)現(xiàn)定位。
測(cè)試用人機(jī)交互采用128X128像素TFT彩色液晶顯示屏模塊, 刷新速度快,使用SPI接口通信,同時(shí)顯示屏也可替換為超低功耗電子墨水屏。板載有4個(gè)用戶(hù)按鍵與LED,用于相關(guān)功能測(cè)試與調(diào)試。可以通過(guò)USB轉(zhuǎn)串口與PC通信,通過(guò)串口助手或者其他PC端上位機(jī)應(yīng)用程序獲取數(shù)據(jù)或者控制模塊。數(shù)據(jù)保存采用MicroSD卡,支持FATFS文件系統(tǒng),可用于NB應(yīng)用中的固件/數(shù)據(jù)存儲(chǔ)。
目前NB模塊比較多,本項(xiàng)目采用上海移遠(yuǎn)通信的BC95系列NB-IOT模組。模組采用了華為海思NB芯片方案,BC95-B5是電信網(wǎng)絡(luò)模塊,BC95-B8是移動(dòng)/聯(lián)通網(wǎng)絡(luò)模塊,電信NB-IOT在2017年7月已經(jīng)實(shí)現(xiàn)商用和全國(guó)覆蓋,移動(dòng)雖然晚一些,但是已經(jīng)實(shí)現(xiàn)全國(guó)三線以上城市的覆蓋。目前電信需要綁定固定IP且只能訪問(wèn)電信平臺(tái),而移動(dòng)則沒(méi)有任何限制。本系統(tǒng)目前選用的是電信網(wǎng)絡(luò)BC95-B5模塊,工作在850MHZ頻段。
由于NB模塊使用門(mén)檻較高,云平臺(tái)接入需要資質(zhì)與一定時(shí)間,故創(chuàng)新項(xiàng)目系統(tǒng)暫時(shí)使用企業(yè)開(kāi)發(fā)的谷雨物聯(lián)網(wǎng)云平臺(tái)。云平臺(tái)支持UDP協(xié)議、COAP協(xié)議、TCP協(xié)議,且?guī)в蟹纸M透?jìng)鞴δ艿妮p量級(jí)的云透?jìng)鞴δ?,并支持NB模塊數(shù)據(jù)在線調(diào)試,支持設(shè)備之間或設(shè)備與計(jì)算機(jī)/服務(wù)器之間的數(shù)據(jù)透?jìng)?。平臺(tái)架構(gòu)如圖2企業(yè)云平臺(tái)結(jié)構(gòu)框圖所示。后期如果開(kāi)發(fā)產(chǎn)品可以自行接入華為、電信、移動(dòng)等云平臺(tái),更具有安全性和穩(wěn)定性的保障。
圖2 企業(yè)云平臺(tái)結(jié)構(gòu)框圖
系統(tǒng)設(shè)計(jì)方面的主要實(shí)踐操作流程如圖3所示。根據(jù)需求分析,研究目前的所有資源、設(shè)計(jì)原理圖與PCB,項(xiàng)目完成后,在電腦上建立Keil與STM32CubeMX開(kāi)發(fā)環(huán)境,在IDE上從基礎(chǔ)實(shí)驗(yàn)開(kāi)始。完成按鍵與LED控制、中斷、定時(shí)、ADC、串口、傳感器、TFT、GPS等一系列基礎(chǔ)實(shí)驗(yàn),在基礎(chǔ)實(shí)驗(yàn)過(guò)程中,了解STM32L476的硬件資源與基本電路,學(xué)會(huì)基本編程、查閱文檔、網(wǎng)絡(luò)搜索、代碼移植等技能,待有一定基礎(chǔ)后,了解NB-IOT的網(wǎng)絡(luò)附著,UDP通信以及COAP通信的基本原理,完成BC95-B5模塊的網(wǎng)絡(luò)基礎(chǔ)實(shí)驗(yàn),掌握NB模塊的通信過(guò)程,然后通過(guò)編程實(shí)驗(yàn)NB的高級(jí)實(shí)驗(yàn),完成云端溫濕度數(shù)據(jù)采集以及開(kāi)關(guān)量的采集與控制、GPS(或BD)定位信息上報(bào)等功能。
圖3 實(shí)踐創(chuàng)新實(shí)施操作流程
目前電子類(lèi)專(zhuān)業(yè)或者物聯(lián)網(wǎng)專(zhuān)業(yè)均可以開(kāi)設(shè)此類(lèi)課程,電子類(lèi)專(zhuān)業(yè)偏向于硬件與下位機(jī)程序的編寫(xiě),物聯(lián)網(wǎng)專(zhuān)業(yè)在下位機(jī)編程的基礎(chǔ)上增加上位機(jī)程序的編寫(xiě)。下位機(jī)開(kāi)發(fā)環(huán)境一般采用Keil+STM32CubeMX,而上位機(jī)可以基于JAVA+AS的體系,或者基于C++或者C#的編程。前者是在Android操作系統(tǒng)下的應(yīng)用編程,后者側(cè)重于Windows 操作系統(tǒng)上PC端的應(yīng)用編程。
該硬件平臺(tái)下可以實(shí)施的部分教學(xué)方案設(shè)計(jì)如下:
分析講解平臺(tái)硬件資源,根據(jù)原理圖與相關(guān)芯片手冊(cè)理解ARM系統(tǒng)架構(gòu),熟悉電路原理,特別是STM32L476的最小系統(tǒng)、時(shí)鐘外設(shè)等。
下載安裝Keil-MDK5以及STM32CubeMX的軟件,以及在此環(huán)境下的相關(guān)芯片庫(kù)軟件安裝包。STM32CubeMX是意法半導(dǎo)體公司近幾年來(lái)大力推薦的STM32芯片圖形化配置工具,方便允許用戶(hù)使用圖形化向?qū)苫贖AL庫(kù)的初始化代碼,然后在KEIL中修改完善代碼功能。
平臺(tái)基礎(chǔ)程序包含跑馬燈實(shí)驗(yàn)、按鍵輸入實(shí)驗(yàn)、串口通信實(shí)驗(yàn)、外部中斷實(shí)驗(yàn)、看門(mén)狗實(shí)驗(yàn)、定時(shí)器實(shí)驗(yàn)、ADC實(shí)驗(yàn)、PWM實(shí)驗(yàn)、TFTLCD實(shí)驗(yàn)、RTC實(shí)時(shí)時(shí)鐘實(shí)驗(yàn)、溫濕度傳感器實(shí)驗(yàn)、光環(huán)境傳感器實(shí)驗(yàn)、GPS定位實(shí)驗(yàn)等。通過(guò)這些基礎(chǔ)實(shí)驗(yàn)編程,學(xué)生可以基本掌握基于STM32L476的C語(yǔ)言編程方法,為后面網(wǎng)絡(luò)實(shí)驗(yàn)打下基礎(chǔ)?;A(chǔ)實(shí)驗(yàn)也可以作為嵌入式軟件開(kāi)發(fā)的課程實(shí)驗(yàn)。
基礎(chǔ)測(cè)試程序包括NB-IoT串口測(cè)試實(shí)驗(yàn)、按鍵觸發(fā)NB網(wǎng)絡(luò)附著實(shí)驗(yàn)、按鍵觸發(fā)UDP協(xié)議數(shù)據(jù)實(shí)驗(yàn)、按鍵觸發(fā)CoAP協(xié)議數(shù)據(jù)實(shí)驗(yàn),通過(guò)實(shí)驗(yàn)實(shí)訓(xùn)來(lái)理解NB-IoT的通信過(guò)程。
在NB-IoT網(wǎng)絡(luò)基礎(chǔ)實(shí)驗(yàn)后,結(jié)合傳感器與定位模塊,基于NB-IoT網(wǎng)絡(luò)做的實(shí)驗(yàn)可以有溫濕度上報(bào)云平臺(tái)實(shí)驗(yàn)、GPS定位數(shù)據(jù)上報(bào)云平臺(tái)實(shí)驗(yàn)、開(kāi)關(guān)量上報(bào)云臺(tái)實(shí)驗(yàn)、數(shù)據(jù)的周期性上報(bào)云平臺(tái)實(shí)驗(yàn)等。
上位機(jī)實(shí)驗(yàn)可以基于AS或者C++實(shí)施相關(guān)的云平臺(tái)數(shù)據(jù)采集與分析實(shí)驗(yàn),可以開(kāi)發(fā)PC端與移動(dòng)端應(yīng)用程序,這里不再詳述。
用UDP協(xié)議云透?jìng)魍ㄐ耪f(shuō)明NB模塊的通信過(guò)程,如圖4所示。實(shí)驗(yàn)前先用串口連接NB模塊或者編程用MCU通過(guò)串口與NB模塊通信。本文使用PC的USB轉(zhuǎn)串口直接控制NB模塊的方式進(jìn)行測(cè)試,使用工具為谷雨NBTool串口通信工具以及云平臺(tái)。
圖4 NB終端云透?jìng)骺蚣軋D
打開(kāi)NBTool工具,設(shè)置串口參數(shù)后,可以一鍵操作附著網(wǎng)絡(luò),內(nèi)部執(zhí)行一系列AT指令,也可以通過(guò)普通串口助手,查閱附著AT指令后,逐步完成附著,網(wǎng)絡(luò)顯示“Registered”表示網(wǎng)絡(luò)附著成功,這是所有實(shí)驗(yàn)的開(kāi)始。
UDP采用最簡(jiǎn)單、最原始的Socket連接,IP地址為115.29.240.46,端口號(hào)為6000;然后登陸谷雨云平臺(tái),注冊(cè)賬號(hào),登錄后新建設(shè)備,設(shè)置NB模塊設(shè)備編號(hào)、通信密碼以及設(shè)備名稱(chēng),過(guò)期時(shí)間設(shè)為0秒,添加成功后,在NBTool上的UDP功能塊上發(fā)送注冊(cè)包,內(nèi)容為ep=設(shè)備編號(hào)&pw=通信密碼,如“ep=WBPSGKPSHG5CW32X&pw=123456”,成功后,NBTool顯示“iotxx:ok”,然后NBtool與云端就可以互相發(fā)送與接收信息了。如圖5所示的UDP通信實(shí)驗(yàn),圖中左側(cè)為網(wǎng)頁(yè)云端,右側(cè)為NBTool本地NB端,實(shí)測(cè)通信效果甚佳。
圖5 UDP通信實(shí)驗(yàn)
在項(xiàng)目中可以通過(guò)STM32L476編程把附著AT指令通過(guò)串口發(fā)送給NB模塊,附著成功后可以把溫濕度數(shù)據(jù),GPS定位等數(shù)據(jù)通過(guò)NB發(fā)送到云端,從而實(shí)現(xiàn)完成NB-IoT通信。
與NB-IoT均屬于低功耗廣域網(wǎng),LoRa也在不斷推廣應(yīng)用,它理想的有效傳輸距離可達(dá)到15 km,雖然與NB-IoT在硬件上有所區(qū)別,但均屬于窄帶通信,而且工作在免費(fèi)頻段,NB-IoT和LoRa的學(xué)習(xí)與研究有助于它們?cè)诓煌瑘?chǎng)景下的應(yīng)用推廣。高職院校有責(zé)任有能力把它們應(yīng)用在教學(xué)中,為我國(guó)物聯(lián)網(wǎng)產(chǎn)業(yè)發(fā)展貢獻(xiàn)力量。目前筆者所在學(xué)校已與新大陸教育合作,成立了基于NB-IoT與LoRa的物聯(lián)網(wǎng)應(yīng)用技術(shù)實(shí)訓(xùn)室。該平臺(tái)為學(xué)生實(shí)踐創(chuàng)新提供了機(jī)會(huì),也有助于教師學(xué)習(xí)新知識(shí),更為學(xué)校推廣前沿技術(shù)應(yīng)用提供了良好的契機(jī),在多方努力下,基于該項(xiàng)目的教學(xué)方案也會(huì)持續(xù)不斷地更新與發(fā)展。
[1] 劉軍. 原子教你玩STM32 [M]. 北京: 航空航天大學(xué)出版社, 2015.
[2] 蔣建峰, 杜梓平. 廣域網(wǎng)技術(shù)精要與實(shí)踐[M]. 北京: 電子工業(yè)出版社, 2017.
[3] 黃宇紅, 楊光, 等. NB-IoT物聯(lián)網(wǎng)技術(shù)解析與案例詳解[M]. 北京: 機(jī)械工業(yè)出版社, 2018.
[4] 王化祥, 張淑英. 傳感器原理及應(yīng)用[M]. 天津: 天津大學(xué)出版社, 2014.
Discussion on the College Students’ Practice Innovation Plan and Teaching Plan Design of NB-IoT
Cheng Hao, Li Jie
( Shazhou Professional Institute of Technology, Zhangjiagang 215600, Jiangsu, China )
NB-IoT (Narrow Band Internet of Things), also known as the narrowband Internet of Things, is a technical standard defined by the 3GPP standardization organization. It works on the licensed spectrum and is a narrowband RF technology designed for IoT. It is different from Zigbee. Short-range wireless communication technologies such as Bluetooth and Wi-Fi, which belong to the low-power wide area network (LPWAN) category, and can reach a communication distance of 15km. LPWAN currently is of a popular communication method, LoRa, which works in the license-free ISM band. NB-IoT and LoRa enjoy great development prospects. The ecology based on these two communication methods is rapidly established. This paper mainly concerns some of the conclusions of leading students to participate in NB-IoT students' practical innovation projects and to explore the design of the technology in teaching applications.
NB-IoT; LPWAN; college students practice innovation; wireless communication technology
TP391.44
A
1009-8429(2019)01-0006-05
2019-02-27
2018年江蘇省高等學(xué)校大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目(201811288002Y)
承浩(1971-),男,沙洲職業(yè)工學(xué)院電子信息工程系高級(jí)工程師;
李杰(1997-),男,沙洲職業(yè)工學(xué)院電子信息工程系2016級(jí)電子信息工程技術(shù)專(zhuān)業(yè)學(xué)生。
沙洲職業(yè)工學(xué)院學(xué)報(bào)2019年1期