資料介紹
描述
?
2019 年 10 月 5 日更新,添加桌面應(yīng)用程序。
名為 Azure Sphere Desktop 的 .NET 應(yīng)用程序是為消息顯示和反饋控制而構(gòu)建的,如下所示。請(qǐng)參閱第 6.6 節(jié)了解更多詳細(xì)信息。
一、簡(jiǎn)介
隨著物聯(lián)網(wǎng) (IoT) 的快速發(fā)展,越來越多的網(wǎng)絡(luò)設(shè)備參與其中,為互聯(lián)汽車 [1]、工業(yè)物聯(lián)網(wǎng) [2, 3]、互聯(lián)醫(yī)療 [4, 5]、智能互聯(lián)鋪平道路從基礎(chǔ)設(shè)施的角度來看城市 [6] 和智能家居 [7]。同時(shí),面對(duì)來自網(wǎng)絡(luò)攻擊者的激進(jìn)攻擊,這些大型系統(tǒng)中對(duì)安全和隱私的考慮已成為一個(gè)不容忽視的巨大挑戰(zhàn)[8]。目前,現(xiàn)有工作中主要有兩個(gè)安全研究領(lǐng)域。第一個(gè)是資源受限物聯(lián)網(wǎng)系統(tǒng)的安全方案和策略研究,第二個(gè)是物聯(lián)網(wǎng)應(yīng)用安全解決方案的設(shè)計(jì)和實(shí)現(xiàn)。
第一個(gè)的研究目前針對(duì)四個(gè)關(guān)鍵領(lǐng)域,包括訪問控制方案、異常檢測(cè)、安全模型和密鑰管理,以實(shí)現(xiàn)高級(jí)別的安全性。首先,對(duì)于物聯(lián)網(wǎng)中的訪問控制方案,大量深入的研究工作致力于訪問控制架構(gòu)、用于保護(hù)通信通道的密鑰類型、訪問控制通道和訪問控制邏輯 [9]。此外,這種訪問控制方案廣泛應(yīng)用于植入式醫(yī)療設(shè)備[10]、體域網(wǎng)[11]、可再生能源智能電網(wǎng)[12]、智能家居[13]和工業(yè)網(wǎng)絡(luò)系統(tǒng)[14]。其次,為了實(shí)現(xiàn)資源耗盡和未授權(quán)訪問的自動(dòng)識(shí)別,提出了異常檢測(cè),通常分為三種不同的方式,即無監(jiān)督異常檢測(cè)[15]、監(jiān)督異常檢測(cè)[16]和半監(jiān)督異常檢測(cè)[17]。第三,安全模型是創(chuàng)建可信賴和可互操作的物聯(lián)網(wǎng)系統(tǒng)應(yīng)注意的關(guān)鍵促成因素。從這個(gè)意義上講,在實(shí)際物聯(lián)網(wǎng)應(yīng)用中,通常從感知、傳輸和應(yīng)用層面考慮硬件安全、數(shù)據(jù)加密、安全路由、風(fēng)險(xiǎn)評(píng)估、入侵檢測(cè)、反惡意軟件解決方案、防火墻和信任管理等安全策略。設(shè)計(jì) [18, 19]。最后,密鑰管理非常重要,它涉及在輕量級(jí)、資源受限的物聯(lián)網(wǎng)設(shè)備中創(chuàng)建、更新、傳輸和計(jì)算加密項(xiàng)目 [20]。
最近,對(duì)物聯(lián)網(wǎng)解決方案的研究已經(jīng)在不同層面考慮了安全性。[23] 總結(jié)了支持工業(yè)物聯(lián)網(wǎng)的信息物理系統(tǒng)的安全挑戰(zhàn),強(qiáng)調(diào)了思科物聯(lián)網(wǎng)框架下數(shù)據(jù)挖掘和大數(shù)據(jù)的安全性。[24] 中設(shè)計(jì)并實(shí)施了一個(gè)醫(yī)療保健監(jiān)控框架,其中使用信號(hào)增強(qiáng)、水印和其他相關(guān)分析來避免身份盜用。文獻(xiàn)[25]研究了身份驗(yàn)證、隱私加密和安全數(shù)據(jù)包轉(zhuǎn)發(fā),并在三層物聯(lián)網(wǎng)架構(gòu)下提出了幾種策略。[26] 中概述了安全原則、安全挑戰(zhàn)和建議的對(duì)策。[27] 中給出了有關(guān)物聯(lián)網(wǎng)協(xié)議和應(yīng)用程序的安全問題摘要,這是基于五層物聯(lián)網(wǎng)框架。[28] 中提供了包括邊緣節(jié)點(diǎn)、通信和邊緣計(jì)算在內(nèi)的三層漏洞和對(duì)策的完整列表。在某種程度上,這些研究已經(jīng)實(shí)現(xiàn)了特定層或多層的安全和隱私目標(biāo)。然而,據(jù)我們所知,真正的物聯(lián)網(wǎng)解決方案仍然存在兩個(gè)具有挑戰(zhàn)性的問題。第一個(gè)是現(xiàn)有的解決方案很少考慮從設(shè)備到云端的全程安全。第二個(gè)是,由于開發(fā)成本和設(shè)備功能有限,目前低估了將高價(jià)值安全性納入每個(gè)低成本(比 10 美元便宜得多)聯(lián)網(wǎng)物聯(lián)網(wǎng)設(shè)備的需求 [29, 30] . 受此事實(shí)的鼓舞,
為了解決這一具有挑戰(zhàn)性的問題,Microsoft 發(fā)布了一種名為 Azure Sphere 的新型價(jià)格敏感應(yīng)用程序平臺(tái),它將實(shí)時(shí)處理能力與安全的互聯(lián)網(wǎng)連接操作系統(tǒng) [31] 集成在一起。除了用于應(yīng)用程序開發(fā)的 Azure Sphere MCU SDK 工具外,還包括用于安全云和 Web 連接的 Azure Sphere 安全服務(wù)。
Azure Sphere 的目標(biāo)是使 IoT 設(shè)計(jì)人員能夠?qū)⒆罡呒?jí)別的安全性納入每個(gè)具有網(wǎng)絡(luò)連接的低成本 MCU 設(shè)備。基于在設(shè)備安全軟件設(shè)計(jì)方面的豐富經(jīng)驗(yàn),微軟將高度安全的聯(lián)網(wǎng)設(shè)備的七個(gè)必要屬性確定為基于硬件的信任根、小型可信計(jì)算基礎(chǔ)、縱深防御、隔離、基于證書的身份驗(yàn)證、安全更新和故障報(bào)告 [32]。為了實(shí)現(xiàn)物聯(lián)網(wǎng)生態(tài)系統(tǒng)中七個(gè)必要屬性的目標(biāo),Azure Sphere MCU、Azure Sphere OS 和 Azure Sphere 安全服務(wù)被設(shè)計(jì)為在一個(gè)和諧的整體中協(xié)同工作以降低風(fēng)險(xiǎn)。Azure Sphere 的架構(gòu)如圖 1 所示。首先,Azure Sphere MCU 由多個(gè) ARM Cortex 內(nèi)核、網(wǎng)絡(luò)連接子系統(tǒng)、多路復(fù)用 I/O 外圍設(shè)備、集成 RAM 和閃存、硬件防火墻以及 Pluton 安全子系統(tǒng)組成,從硬件角度提供內(nèi)置安全性。其次,基于 Linux 的自定義內(nèi)核、安全監(jiān)視器和托管應(yīng)用程序容器的操作系統(tǒng)服務(wù)從軟件角度添加了四層防御、深度安全環(huán)境。最后,與基于證書的身份驗(yàn)證、及時(shí)更新和故障報(bào)告相結(jié)合的 Azure Sphere 安全服務(wù)更新了安全性,以從服務(wù)的角度應(yīng)對(duì)新出現(xiàn)的威脅 [33]。從硬件角度提供內(nèi)置安全性。其次,基于 Linux 的自定義內(nèi)核、安全監(jiān)視器和托管應(yīng)用程序容器的操作系統(tǒng)服務(wù)從軟件角度添加了四層防御、深度安全環(huán)境。最后,與基于證書的身份驗(yàn)證、及時(shí)更新和故障報(bào)告相結(jié)合的 Azure Sphere 安全服務(wù)更新了安全性,以從服務(wù)的角度應(yīng)對(duì)新出現(xiàn)的威脅 [33]。從硬件角度提供內(nèi)置安全性。其次,基于 Linux 的自定義內(nèi)核、安全監(jiān)視器和托管應(yīng)用程序容器的操作系統(tǒng)服務(wù)從軟件角度添加了四層防御、深度安全環(huán)境。最后,與基于證書的身份驗(yàn)證、及時(shí)更新和故障報(bào)告相結(jié)合的 Azure Sphere 安全服務(wù)更新了安全性,以從服務(wù)的角度應(yīng)對(duì)新出現(xiàn)的威脅 [33]。
在芯片合作伙伴聯(lián)發(fā)科的幫助下,首款通過 Azure Sphere 認(rèn)證的 MCU MT3620 于 2017 年底發(fā)布 [34]。MT3620 的價(jià)格不到 8.65 美元,包括物理 MCU 芯片、芯片許可證、Azure Sphere 操作系統(tǒng)和 Azure Sphere 安全服務(wù)。MT3620包括ARM Cortex-A7應(yīng)用處理器和ARM Cortex-M4F I/O子系統(tǒng),分別為運(yùn)行Azure Sphere OS和片上外設(shè)的實(shí)時(shí)控制需求而設(shè)計(jì)。除了高性能 ARM 內(nèi)核之外,MT3620 還嵌入了 Pluton 安全子系統(tǒng)和板載 Wi-Fi 子系統(tǒng),以處理安全啟動(dòng)、安全系統(tǒng)操作和高吞吐量網(wǎng)絡(luò)連接。2019年5月,
基于當(dāng)前的物聯(lián)網(wǎng)趨勢(shì),我們提出了一個(gè)包括Azure Sphere設(shè)備和Azure云服務(wù)的集成解決方案,以應(yīng)對(duì)整體安全、成本和設(shè)備管理的挑戰(zhàn)。
參考
1. 庫蒂,S.;法拉,S。Katsaros, K.;迪亞納蒂,M。麥卡洛,F(xiàn).;Mouzakitis, A. 對(duì)最先進(jìn)的定位技術(shù)及其在自動(dòng)駕駛汽車應(yīng)用中的潛力的調(diào)查。IEEE 物聯(lián)網(wǎng)期刊 2018, 5, 829-846。
2. 卡里亞斯,JF;拉巴卡,L。薩列吉,JM;Hernantes, J. 在工業(yè)物聯(lián)網(wǎng)背景下定義網(wǎng)絡(luò)彈性投資策略。傳感器 2019, 19, 138。
3. Yan, H.;張,Y。龐,Z。Xu, LD 物聯(lián)網(wǎng)環(huán)境下工業(yè) wsn 的時(shí)隙 mac 超幀規(guī)劃和訪問延遲。IEEE 工業(yè)信息學(xué)匯刊 2014, 10, 1242-1251。
4. 阿拉姆,MM;馬利克,H。汗,密歇根州;帕迪,T。庫西克,A.;Moullec, YL 關(guān)于通信技術(shù)在基于物聯(lián)網(wǎng)的個(gè)性化醫(yī)療應(yīng)用中的作用的調(diào)查。IEEE 訪問 2018, 6, 36611-36631。
5. 楊,P。斯坦克維修斯,D.;Marozas, V.;鄧,Z。劉,E。盧科塞維修斯,A.;董,F(xiàn)。徐,L。Min, G. 用于物聯(lián)網(wǎng)的生命記錄數(shù)據(jù)驗(yàn)證模型實(shí)現(xiàn)了個(gè)性化醫(yī)療保健。IEEE Transactions on Systems, Man, and Cyber??netics: Systems 2018, 48, 50-64。
6. 公園,S。上海公園;公園,LW;公園,S。李,S。李,T。李 SH;張,H。金,SM;張,H。Park, S. 智能城市基礎(chǔ)設(shè)施中基于智能物聯(lián)網(wǎng)的建筑和城鎮(zhèn)災(zāi)害管理系統(tǒng)的設(shè)計(jì)與實(shí)施。申請(qǐng) 科學(xué)。2018 年 8 月 2239 日。
7. 瓦拉蒂 C.;維迪斯 A.;明戈齊 E.;Stea G. MEC 回家!使用 LTE D2D 通信連接未來智能家居中的事物。IEEE 消費(fèi)電子雜志 2016, 5, 77-83。
8. 阿里亞斯,O。沃姆,J。黃,K。Jin, Y. 物聯(lián)網(wǎng)和可穿戴設(shè)備中的隱私和安全。IEEE Transactions on Multi-Scale Computing Systems 2015, 1, 99-109。
9. 吳,L。杜,X。Guizani, M.;Mohamed, A. 植入式醫(yī)療設(shè)備的訪問控制方案:一項(xiàng)調(diào)查。IEEE 物聯(lián)網(wǎng)期刊 2017, 4, 1272-1283。
10. 阿爾塔維,R.;Youssef, AM 網(wǎng)絡(luò)物理系統(tǒng)中的安全權(quán)衡:植入式醫(yī)療設(shè)備的案例研究調(diào)查。IEEE 訪問 2016, 4, 959-979。
11. 小江,D.;Dapeng, W. 用于移動(dòng)自組織網(wǎng)絡(luò)的自適應(yīng)小區(qū)中繼路由協(xié)議。IEEE 車輛技術(shù)交易 2006, 55, 278-285。
12. 關(guān) Z.;李,J。朱,L。張,Z。杜,X。Guizani, M. 面向具有可再生能源的智能電網(wǎng)的延遲容忍靈活數(shù)據(jù)訪問控制。IEEE 工業(yè)信息學(xué)匯刊 2017, 13, 3216-3225。
13.拉斯AT;Colin J. 在智能家居中帳戶被盜的情況下加強(qiáng)訪問控制。在 WiMob 2017 IEEE 國際無線和移動(dòng)計(jì)算、網(wǎng)絡(luò)和通信會(huì)議記錄中,意大利羅馬,2017 年 10 月 9 日至 11 日。
14. Cheminod, M.;杜蘭特,L。塞諾,L。Valenzano, A. 工業(yè)網(wǎng)絡(luò)系統(tǒng)中訪問控制實(shí)施的半自動(dòng)驗(yàn)證。IEEE 工業(yè)信息學(xué)匯刊 2015, 11, 1388-1399。
15. 穆尼爾,M。南澳大利亞州西迪基;登格爾,A.;Ahmed, S. Deepant:一種用于時(shí)間序列中無監(jiān)督異常檢測(cè)的深度學(xué)習(xí)方法。IEEE 訪問 2018,1-1。
16. 加達(dá)姆,SR;波哈,VV;Balagani, KS K-means+id3:一種通過級(jí)聯(lián) k-means 聚類和 id3 決策樹學(xué)習(xí)方法進(jìn)行監(jiān)督異常檢測(cè)的新方法。IEEE 知識(shí)與數(shù)據(jù)工程交易 2007, 19, 345-354。
17. 侯賽因,B。杜,問。Ren, P. 基于半監(jiān)督學(xué)習(xí)的移動(dòng)無線網(wǎng)絡(luò)中大數(shù)據(jù)驅(qū)動(dòng)的異常檢測(cè)。中國交通 2018, 15, 41-57.
18. Frustaci, M.;佩斯,P。阿洛伊,G.;Fortino, G. 評(píng)估物聯(lián)網(wǎng)世界的關(guān)鍵安全問題:當(dāng)前和未來的挑戰(zhàn)。IEEE 物聯(lián)網(wǎng)期刊 2018, 5, 2483-2495。
19. 阿里,B。Awad,基于物聯(lián)網(wǎng)的智能家居的人工智能網(wǎng)絡(luò)和物理安全漏洞評(píng)估。傳感器 2018、18、817。
20.崔Z。呂浩;超Y。高 G.;Zhou C. 云中物聯(lián)網(wǎng)所有者的高效密鑰管理。在 2015 年 IEEE 大數(shù)據(jù)和云計(jì)算國際會(huì)議論文集中,中國大連,2015 年 8 月 26 日至 28 日。
21. Naoui S.;Elhdhili 我;Saidane LA 現(xiàn)有物聯(lián)網(wǎng)密鑰管理協(xié)議的安全分析。在 2016 年 IEEE/ACS 計(jì)算機(jī)系統(tǒng)和應(yīng)用國際會(huì)議記錄中,摩洛哥阿加迪爾,2016 年 11 月 29 日至 12 月 2 日。
22. 周,J。曹,Z。董,X。Vasilakos,基于云的物聯(lián)網(wǎng)的 AV 安全和隱私:挑戰(zhàn)。IEEE 通信雜志 2017, 55, 26-33。
23. He H.; 楓 C.;Watson T. 物聯(lián)網(wǎng)中的安全挑戰(zhàn)使網(wǎng)絡(luò)物理系統(tǒng)成為可能,并為進(jìn)化計(jì)算和其他計(jì)算智能提供了機(jī)會(huì)。在 2016 年 IEEE 進(jìn)化計(jì)算大會(huì)論文集中,加拿大溫哥華,2016 年 7 月 24 日至 29 日。
24. 侯賽因,碩士;Muhammad, G. 云輔助工業(yè)物聯(lián)網(wǎng) (iiot) 支持的健康監(jiān)測(cè)框架。計(jì)算機(jī)網(wǎng)絡(luò) 2016, 101, 192-202。
25. 周,J。曹,Z。董,X。Vasilakos,基于云的物聯(lián)網(wǎng)的 AV 安全和隱私:挑戰(zhàn)。IEEE 通信雜志 2017, 55, 26-33。
26. 馬哈茂德,R.;優(yōu)素福,T。阿盧爾,F(xiàn)。Zualkernan, I. 物聯(lián)網(wǎng) (iot) 安全:現(xiàn)狀、挑戰(zhàn)和前瞻性措施。在 2015 年第十屆互聯(lián)網(wǎng)技術(shù)和安全交易國際會(huì)議記錄中,英國倫敦,2015 年 12 月 14 日至 16 日。
27. Al-Fuqaha, A.;Guizani, M.;穆罕默迪,M。Aledhari, M.;Ayyash, M. 物聯(lián)網(wǎng):關(guān)于支持技術(shù)、協(xié)議和應(yīng)用程序的調(diào)查。IEEE 通信調(diào)查與教程 2015, 17, 2347-2376。
28. 莫塞尼亞,A.;Jha, NK 物聯(lián)網(wǎng)安全綜合研究。IEEE 新興計(jì)算主題交易 2017, 5, 586-602。
29. 王,N。江,T。李,W。Lv, S. 基于壓縮感知和頻率選擇的物聯(lián)網(wǎng)物理層安全。IET 通訊 2017, 11, 1431-1437。
30. Jing, Q.; 瓦西拉科斯,AV;萬,J。盧,J。Qiu, D. 物聯(lián)網(wǎng)的安全性:觀點(diǎn)和挑戰(zhàn)。無線網(wǎng)絡(luò) 2014, 20, 2481-2501。
31. Azure Sphere 文檔。在線提供:https ://docs.microsoft.com/en-us/azure-sphere/ 。
32. 亨特 G.;萊蒂 G.;Nightingale E. 高度安全設(shè)備的七個(gè)屬性。技術(shù)。報(bào)告 MSR-TR-2017-16。在線提供:https ://www.microsoft.com/en-us/research/publication/seven-properties-highly-secure-devices 。
33. Azure Sphere 架構(gòu)。在線提供:https ://docs.microsoft.com/en-us/azure-sphere/product-overview/architecture/ 。
34. MT 3620 產(chǎn)品信息。在線提供:https ://www.mediatek.com/products/azureSphere/mt3620 。
35. Azure Sphere 入門套件。https://www.element14.com/community/community/designcenter/azure-sphere-starter-kits/ 。
2. 系統(tǒng)設(shè)計(jì)
2.1. 概述
整個(gè)系統(tǒng)如圖2所示,分為設(shè)備層、云層和應(yīng)用層三個(gè)不同的層次。首先,包括 ZigBee 終端設(shè)備和 ZigBee 協(xié)調(diào)器在內(nèi)的 ZigBee WSN 以及 Arduino 設(shè)備代表傳統(tǒng)物聯(lián)網(wǎng)系統(tǒng)。其次,MT3620 入門套件用作 Azure Sphere 設(shè)備和網(wǎng)關(guān)的替代品。第三,利用Azure IoT Hub、Azure Stream Analytics、Azure Device Provisioning Service、Azure Storage Table等存儲(chǔ)服務(wù)作為數(shù)據(jù)處理和管理單元。最后,Power BI 和 Native App 分別用作 UX 解決方案和業(yè)務(wù)集成。
2.2. 硬件設(shè)計(jì)
根據(jù)設(shè)計(jì)的解決方案,Avnet Azure Sphere MT3620 入門套件是建議系統(tǒng)的重要組成部分。MT3620是首款通過Azure Sphere認(rèn)證的MCU,內(nèi)嵌三核微控制器,一個(gè)ARM Cortex-A7內(nèi)核作為應(yīng)用處理器運(yùn)行頻率高達(dá)500 MHz,兩個(gè)ARM Cortex-M4F內(nèi)核作為通用處理器運(yùn)行頻率高達(dá)200 MHz處理器。在建議的系統(tǒng)中,MT3620 套件用作 Azure Sphere 設(shè)備,以在與 UART、I2C、SPI 和 ADC 片上外圍設(shè)備接口時(shí)支持實(shí)時(shí)和安全要求。MT3620 入門套件由可充電鋰離子電池供電,旨在用作傳統(tǒng)節(jié)點(diǎn)的直接連接設(shè)備或網(wǎng)關(guān)。對(duì)于前一種情況,板載傳感器包括 3 軸加速度計(jì)、陀螺儀和溫度傳感器 (LSM6DSO),壓力/氣壓傳感器 (LPS22HH) 和環(huán)境光傳感器足以應(yīng)對(duì)普通的物聯(lián)網(wǎng)場(chǎng)景。并且可以通過 2.4/5 GHz 雙頻 Wi-Fi 模塊實(shí)現(xiàn)與 Azure IoT Hub 的消息傳輸。對(duì)于后一種場(chǎng)景,借助UART接口,可以將ZigBee、Arduino等網(wǎng)絡(luò)設(shè)備等遺留物聯(lián)網(wǎng)系統(tǒng)連接到MT3620網(wǎng)關(guān)進(jìn)行消息處理,然后再上傳到Azure IoT Hub。在這個(gè)項(xiàng)目中,ZigBee 無線傳感器網(wǎng)絡(luò) (WSN) 以及 Arduino 設(shè)備被建立為用于環(huán)境感知的遺留物聯(lián)網(wǎng)系統(tǒng)。ZigBee 終端設(shè)備配備了溫度和濕度傳感器、光傳感器、氣體傳感器和被動(dòng)紅外 (PIR) 傳感器。4/5 GHz 雙頻 Wi-Fi 模塊。對(duì)于后一種場(chǎng)景,借助UART接口,可以將ZigBee、Arduino等網(wǎng)絡(luò)設(shè)備等遺留物聯(lián)網(wǎng)系統(tǒng)連接到MT3620網(wǎng)關(guān)進(jìn)行消息處理,然后再上傳到Azure IoT Hub。在這個(gè)項(xiàng)目中,ZigBee 無線傳感器網(wǎng)絡(luò) (WSN) 以及 Arduino 設(shè)備被建立為用于環(huán)境感知的遺留物聯(lián)網(wǎng)系統(tǒng)。ZigBee 終端設(shè)備配備了溫度和濕度傳感器、光傳感器、氣體傳感器和被動(dòng)紅外 (PIR) 傳感器。4/5 GHz 雙頻 Wi-Fi 模塊。對(duì)于后一種場(chǎng)景,借助UART接口,可以將ZigBee、Arduino等網(wǎng)絡(luò)設(shè)備等遺留物聯(lián)網(wǎng)系統(tǒng)連接到MT3620網(wǎng)關(guān)進(jìn)行消息處理,然后再上傳到Azure IoT Hub。在這個(gè)項(xiàng)目中,ZigBee 無線傳感器網(wǎng)絡(luò) (WSN) 以及 Arduino 設(shè)備被建立為用于環(huán)境感知的遺留物聯(lián)網(wǎng)系統(tǒng)。ZigBee 終端設(shè)備配備了溫度和濕度傳感器、光傳感器、氣體傳感器和被動(dòng)紅外 (PIR) 傳感器。ZigBee 無線傳感器網(wǎng)絡(luò) (WSN) 以及 Arduino 設(shè)備被建立為用于環(huán)境感知的遺留物聯(lián)網(wǎng)系統(tǒng)。ZigBee 終端設(shè)備配備了溫度和濕度傳感器、光傳感器、氣體傳感器和被動(dòng)紅外 (PIR) 傳感器。ZigBee 無線傳感器網(wǎng)絡(luò) (WSN) 以及 Arduino 設(shè)備被建立為用于環(huán)境感知的遺留物聯(lián)網(wǎng)系統(tǒng)。ZigBee 終端設(shè)備配備了溫度和濕度傳感器、光傳感器、氣體傳感器和被動(dòng)紅外 (PIR) 傳感器。
2.3 安全設(shè)計(jì)
為了確保物聯(lián)網(wǎng)系統(tǒng)各層的安全性,將安全策略和規(guī)則分為四類,如表1所示,即設(shè)備安全、連接安全、云安全和應(yīng)用程序安全。
對(duì)于設(shè)備安全,本系統(tǒng)中使用的MT3620 MCU被確定為關(guān)鍵組件,根據(jù)七種最高級(jí)別的安全屬性進(jìn)行設(shè)計(jì)。同時(shí),在與云服務(wù)器通信時(shí),使用基于證書的身份驗(yàn)證而不是密碼來證明身份。此外,為了確保應(yīng)用程序及其數(shù)據(jù)的安全,實(shí)施了限制訪問外部資源、應(yīng)用程序能力、簽名圖像和設(shè)備能力四種策略。
對(duì)于連接安全,MT3620 和云網(wǎng)關(guān)之間的通信由 wolfSSL 保護(hù),這是一個(gè)針對(duì)物聯(lián)網(wǎng)、嵌入式和 RTOS 環(huán)境的行業(yè)標(biāo)準(zhǔn)傳輸層安全 (TLS) 庫。具體來說,HTTP Secure (HTTPS) 和消息隊(duì)列遙測(cè)傳輸 (MQTT) 協(xié)議不僅用于高效的資源使用,還用于可靠的消息傳遞。
對(duì)于云安全,Azure Active Directory (AAD) 用于用戶身份驗(yàn)證和授權(quán)。Azure Stream Analytics 通過了 ISO 27001 和 ISO 27018 認(rèn)證,這意味著云中的信息安全管理和個(gè)人數(shù)據(jù)保護(hù)得到保障。寫入 Azure 表存儲(chǔ)的所有數(shù)據(jù)都使用 256 位高級(jí)加密標(biāo)準(zhǔn) (AES) 加密進(jìn)行加密,這被認(rèn)為是可用的最強(qiáng)大的塊密碼之一。
為了應(yīng)用安全,設(shè)計(jì)的解決方案實(shí)現(xiàn)了 128 位 AES 算法,用于 CC2530 ZigBee 節(jié)點(diǎn)之間的數(shù)據(jù)加密。具體來說,CC2530 芯片組利用 AES-CCM(帶有 CBC-MAC 的計(jì)數(shù)器)模式來加密和解密數(shù)據(jù)。配置文件“f8wConfig.cfg”中的全局??變量 zgPreConfigKeys 和 DSECURE 分別設(shè)置為 TRUE 和 1,以啟用 AES 安全性。其次介紹了應(yīng)用能力、設(shè)備能力和簽名部署,以保證MT3620上運(yùn)行的應(yīng)用安全。具體來說,應(yīng)用程序功能在應(yīng)用程序清單文件中定義,以聲明給定應(yīng)用程序所需資源的授權(quán)使用。Azure Sphere 設(shè)備的設(shè)備能力由 Azure Sphere 安全服務(wù)授予并存儲(chǔ)在閃存中。部署到 Azure Sphere 設(shè)備的所有圖像包都必須使用 SDK 簽名密鑰進(jìn)行簽名。在通過側(cè)載或無線 (OTA) 方法將應(yīng)用程序上傳到芯片之前,應(yīng)對(duì)包進(jìn)行簽名以確保其安全性。
3.硬件設(shè)置
3.1 所需硬件項(xiàng)目
- Avnet Azure Sphere MT3620 入門套件
- 128x64 黃藍(lán) SSD1306 I2C OLED 顯示屏 [可選]
- CC2530 ZigBee 板
- 阿杜諾UNO
- PIR 運(yùn)動(dòng)傳感器
- DHT11溫濕度傳感器
- MQ2氣體傳感器
- 光敏電阻
3.2 將 OLED 顯示器連接到 Azure Sphere 入門套件
可選 OLED 128x64 顯示器 (I2C) 的接口在板上留空。此入門套件上的 OLED 顯示連接器的引出線列于下圖 3 中。
我們可以在板上焊接四個(gè) 2.54mm 引腳,以幫助連接 OLED 顯示器,如圖 4 所示。
3.3 將傳感器連接到 CC2530 ZigBee 終端設(shè)備
MQ2氣體傳感器和光敏電阻將模擬信號(hào)提供給CC2530的P0.7和P0.6,由CC2530進(jìn)行模數(shù)轉(zhuǎn)換并發(fā)送數(shù)字信號(hào)。DHT11是單線溫度傳感器,我們把它的信號(hào)線接到CC2530的P1.1。PIR 運(yùn)動(dòng)傳感器連接到 CC2530 的 P0.5。所有傳感器均由模塊上的 5V 直流電壓供電。如圖 5 所示。
3.4 將 CC2530 ZigBee 協(xié)調(diào)器連接到 Avnet Azure Sphere 套件
在這個(gè)項(xiàng)目中,我們使用 CC2530 ZigBee 協(xié)調(diào)器的 Uart0。因此,P0.2、P0.3 和 GND 用作 Uart 通信的 Rx、Tx 和 GND。對(duì)于 Avnet Azure Sphere 套件,“Mikrobus Click 1”上的 Uart0 如下使用。
請(qǐng)確保 ZigBee Coordinator 的 Rx 與 Avnet Azure Sphere Kit 的 Tx 相連,ZigBee Coordinator 的 Tx 與 Avnet Azure Sphere Kit 的 Rx 相連。
3.5 將傳感器連接到 Arduino Uno 設(shè)備
MQ2氣體傳感器和光敏電阻將模擬信號(hào)送給Arduino Uno的A0和A1,進(jìn)行模數(shù)轉(zhuǎn)換,將數(shù)字信號(hào)通過串口發(fā)送出去。DHT11是一個(gè)單線溫度傳感器,我們將它的信號(hào)線連接到Arduino的數(shù)字引腳2。PIR 運(yùn)動(dòng)傳感器連接到數(shù)字引腳 3。所有傳感器均由模塊上的 5V 直流電壓供電。如圖 7 所示。
3.6 將 Arduino Uno 連接到 Avnet Azure Sphere 套件
在這個(gè)項(xiàng)目中,我們使用 Arduino Uno 的 Uart0。因此,Pin 0、Pin 1 和 GND 用作 Uart 通信的 Rx、Tx 和 GND。對(duì)于 Avnet Azure Sphere 套件,“Mikrobus Click 1”上的 Uart1 如下使用。
請(qǐng)確保 Arduino 的 Rx 與 Avnet Azure Sphere Kit 的 Tx 相連,Arduino 的 Tx 與 Avnet Azure Sphere Kit 的 Rx 相連。
4. 軟件設(shè)計(jì)
4.1 所需軟件
如表 2 所示,使用帶有 IAR Embedded Workbench for 8051、Visual Studio 2017 Community 或 Visual Studio 2019 Community 和 Arduino IDE 的 Windows 10 PC 分別為 CC2530 ZigBee 節(jié)點(diǎn)、MT3260 入門套件和 Arduino Uno 開發(fā)應(yīng)用程序。Azure Sphere 軟件開發(fā)工具包 (SDK) 版本 19.05 也作為 Visual Studio Community 不可或缺的擴(kuò)展安裝。
4.2 ZigBee 無線傳感器網(wǎng)絡(luò)軟件
在本項(xiàng)目中,Z-Stack用于無線傳感器節(jié)點(diǎn)的管理和數(shù)據(jù)傳輸。在帶有 Z-Stack 的 CC2530 ZigBee 節(jié)點(diǎn)中運(yùn)行的程序執(zhí)行如下。初始化過程完成后,操作系統(tǒng)層執(zhí)行主循環(huán),在主循環(huán)中將按順序訪問和檢查任務(wù)列表。只要滿足條件,就會(huì)立即執(zhí)行指定的任務(wù)。對(duì)于本項(xiàng)目中的ZigBee Coordinators,主要有兩個(gè)任務(wù),分別是UART消息處理任務(wù)和ZigBee無線網(wǎng)絡(luò)傳入包處理任務(wù)。一方面,UART 消息處理任務(wù)處理來自 MT3620 的傳入數(shù)據(jù),然后通過 Z-Stack 協(xié)議消息將消息中繼到 ZigBee 終端設(shè)備。另一方面,無線網(wǎng)絡(luò)傳入包處理任務(wù)負(fù)責(zé)處理來自 ZigBee 終端設(shè)備的 Z-Stack 協(xié)議消息,并將有效數(shù)據(jù)通過 UART 接口傳輸?shù)?MT3620。對(duì)于配備不同類型傳感器的 ZigBee 終端設(shè)備,也有兩個(gè)主要任務(wù)。首先,在用戶定義的時(shí)間間隔內(nèi),在數(shù)據(jù)發(fā)送處理程序事件中完成從傳感器讀取數(shù)據(jù)并將消息傳輸?shù)?ZigBee 協(xié)調(diào)器。其次,通過 Z-Stack 協(xié)議來自 ZigBee 協(xié)調(diào)器的下行鏈路消息在 Message Process 事件中處理。從傳感器讀取數(shù)據(jù)并將消息傳輸?shù)?ZigBee 協(xié)調(diào)器是在用戶定義的時(shí)間間隔內(nèi)的數(shù)據(jù)發(fā)送處理程序事件中完成的。其次,通過 Z-Stack 協(xié)議來自 ZigBee 協(xié)調(diào)器的下行鏈路消息在 Message Process 事件中處理。從傳感器讀取數(shù)據(jù)并將消息傳輸?shù)?ZigBee 協(xié)調(diào)器是在用戶定義的時(shí)間間隔內(nèi)的數(shù)據(jù)發(fā)送處理程序事件中完成的。其次,通過 Z-Stack 協(xié)議來自 ZigBee 協(xié)調(diào)器的下行鏈路消息在 Message Process 事件中處理。
上行鏈路消息的有效負(fù)載如圖9所示。有效負(fù)載以兩個(gè)字節(jié)的傳感器ID為前綴,緊隨其后的是兩個(gè)字節(jié)的溫度數(shù)據(jù)、兩個(gè)字節(jié)的濕度數(shù)據(jù)、兩個(gè)字節(jié)的光數(shù)據(jù)、兩個(gè)字節(jié)的氣體數(shù)據(jù)和一個(gè)字節(jié)的 PIR 傳感器數(shù)據(jù)。
4.3 Arduino Uno 軟件
在這個(gè)項(xiàng)目中,Arduino Uno 作為一種傳統(tǒng)的物聯(lián)網(wǎng)系統(tǒng),由 Avnet Azure Sphere Start 套件保護(hù)以實(shí)現(xiàn)消息收發(fā)。
在程序的初始化中,設(shè)置了輸入和輸出引腳。串口波特率配置為9600。在主循環(huán)中,采集傳感器值并轉(zhuǎn)換成一個(gè)11字節(jié)的報(bào)文,其順序與圖9相同。讀取和發(fā)送傳感器將每 5 秒執(zhí)行一次。
4.4 Avnet Azure Sphere 入門套件軟件
感謝Peter Fenn和Brian Willess ,Avnet Azure Sphere Start Kit 的程序是在他們的工作“ Avnet Azure Sphere Starter-Kit:高級(jí)教程”的基礎(chǔ)上構(gòu)建的。" MT3620 可以配置為網(wǎng)關(guān),讓遺留物聯(lián)網(wǎng)系統(tǒng)連接到互聯(lián)網(wǎng)和 Azure IoT Hub。Azure Sphere 設(shè)備的 UART 接口用于與 ZigBee 無線傳感器網(wǎng)絡(luò)通信,即遺留物聯(lián)網(wǎng)系統(tǒng)。同時(shí),UART 外設(shè)應(yīng)包含在應(yīng)用程序清單文件中,其中列出了應(yīng)用程序需要的所有資源。需要注意的是,應(yīng)用程序清單將由 Azure Sphere 運(yùn)行時(shí)訪問,以確定允許使用哪些功能一旦應(yīng)用程序被旁加載或部署到設(shè)備。任何訪問清單中未描述的資源的嘗試都將被運(yùn)行時(shí)拒絕。因此,添加了兩個(gè) UART 和允許連接到 Azure 云服務(wù)作為基本功能。它如圖 10 所示。
需要注意的是“AllowedConnections”要改成你自己的Azure IoTHub。
在作為網(wǎng)關(guān)的 MT3620 中運(yùn)行的應(yīng)用程序的流程圖如圖 11 所示。基本上,應(yīng)用程序的初始化過程與作為直接連接設(shè)備的 MT3620 中的應(yīng)用程序的初始化過程幾乎相同,只是配置了 UART 外設(shè)并且打開與 ZigBee 協(xié)調(diào)器和 Arduino Uno 的通信。在主循環(huán)中,調(diào)用 UART 事件處理程序進(jìn)行入站消息接收、數(shù)據(jù)有效性檢查和本地參數(shù)更新。
5. Azure 云集成
Azure 云提供的服務(wù),在數(shù)據(jù)收集、數(shù)據(jù)處理、數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)可視化方面發(fā)揮著關(guān)鍵作用。本小節(jié)包含在 Azure 云上運(yùn)行的所有服務(wù)。
5.1 Azure 物聯(lián)網(wǎng)中心
Azure IoT 中心起著核心作用。它充當(dāng) Azure Sphere 設(shè)備和 Azure 云服務(wù)之間的橋梁。一方面,Azure IoT Hub 不僅收集設(shè)備到云的消息以了解 MT3620 設(shè)備的實(shí)時(shí)狀態(tài),而且可靠地發(fā)送云到設(shè)備的命令和通知以更新策略存儲(chǔ)在 MT3620 設(shè)備中的傳感器數(shù)據(jù)收集。另一方面,在設(shè)備配置服務(wù)的幫助下實(shí)現(xiàn)了零接觸、及時(shí)配置,這意味著可以在無需人工干預(yù)的情況下以安全且可擴(kuò)展的方式配置數(shù)百萬臺(tái)設(shè)備。
在 Azure 門戶 ( https://portal.azure.com)中,單擊左側(cè)的“新建”圖標(biāo)以查看所有服務(wù),然后單擊“物聯(lián)網(wǎng)”項(xiàng)并選擇“IoT 中心”。
填寫“名稱”、“定價(jià)層”、“IoT 中心單元”、“設(shè)備到云分區(qū)”、“資源組”和“位置”字段,然后單擊“創(chuàng)建”按鈕。應(yīng)該注意的是,“F1 Free”定價(jià)對(duì)于這個(gè)項(xiàng)目來說已經(jīng)足夠了。而且我們最好選擇服務(wù)的本地位置。
等待新的 IoT 中心顯示為“在線”。準(zhǔn)備就緒后,打開新 IoT 中心的邊欄選項(xiàng)卡,記下 URI 并選擇頂部的鑰匙圖標(biāo)以訪問共享訪問策略設(shè)置。
選擇名為 iothubowner 的共享訪問策略,并記下右側(cè)邊欄中的主鍵和連接字符串。我們可能會(huì)將這些復(fù)制到文本文件中以備將來使用。
有關(guān)更多信息,我們可以在線參考此文檔:使用 Azure 門戶創(chuàng)建物聯(lián)網(wǎng)中心 ( https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-create-through-portal ) 。
5.2 使用 Device Explorer 驗(yàn)證 Avnet Start Kit
Azure IoTHub 和設(shè)備之間的通信是安全的。在 Windows 上,我們可以使用 Device Explorer 應(yīng)用程序來完成此身份驗(yàn)證過程。單擊此鏈接可下載適用于 Windows 的設(shè)備資源管理器應(yīng)用程序的預(yù)構(gòu)建版本:https://github.com/Azure/azure-iot-sdk-csharp/releases/tag/2019-1-4(滾動(dòng)下載 SetupDeviceExplorer.msi)。此應(yīng)用程序的默認(rèn)安裝目錄是“C:\Program Files (x86)\Microsoft\DeviceExplorer”。
打開 Device Explorer 應(yīng)用程序并使用我們創(chuàng)建的 IoT 中心的連接字符串填充 IoT 中心連接字符串字段,然后單擊更新。轉(zhuǎn)到“管理”選項(xiàng)卡,然后單擊“創(chuàng)建”按鈕。將顯示創(chuàng)建設(shè)備彈出窗口。使用您的設(shè)備(例如 AvnetStarterKit)的新 ID 填寫設(shè)備 ID 字段,然后單擊創(chuàng)建,如下所示。
創(chuàng)建設(shè)備標(biāo)識(shí)后,它將顯示在網(wǎng)格中。右鍵單擊我們創(chuàng)建的標(biāo)識(shí),選擇復(fù)制所選設(shè)備的連接字符串并通過復(fù)制到剪貼板來保存值,因?yàn)樾枰獙⒂布B接到 IoT 中心。
5.3 更新 Azure IoTHub 連接字符串
從 GitHub 存儲(chǔ)庫 ( https://github.com/shijiong/AzureSphereSecurityGateway)下載源代碼。使用 Visual Studio 打開解決方案,導(dǎo)航到“connection_strings.h”,更新連接字符串。
5.4 創(chuàng)建 Azure 存儲(chǔ)帳戶和 Azure 存儲(chǔ)表
在此項(xiàng)目中,我們將需要 Azure 存儲(chǔ)表來存儲(chǔ)來自傳感器設(shè)備的數(shù)據(jù)。因此,我們可以按如下方式創(chuàng)建它。在 Azure 門戶中,單擊左側(cè)的“存儲(chǔ)”圖標(biāo)以查看現(xiàn)有存儲(chǔ)帳戶(如果有),然后單擊左下角的“+新建”按鈕。在“NEW”面板中,選擇“STORAGE” | “存儲(chǔ)帳戶”按鈕。等待新存儲(chǔ)帳戶的狀態(tài)顯示為“在線”。選擇新創(chuàng)建的存儲(chǔ)帳戶,然后單擊頁面底部的管理訪問密鑰。復(fù)制存儲(chǔ)帳戶名稱和其中一個(gè)訪問密鑰。
我們使用 Microsoft Azure 存儲(chǔ)資源管理器 ( https://azure.microsoft.com/en-us/features/storage-explorer/)創(chuàng)建 Azure 存儲(chǔ)表“AvnetAzureSphere”。
5.5 創(chuàng)建 Azure 流分析作業(yè)
本項(xiàng)目使用 Azure Stream Analytics 過濾 IoTHub 收集的傳感器數(shù)據(jù),并將數(shù)據(jù)流式傳輸?shù)?PowerBI 和 Azure Storage Table。新的流分析創(chuàng)建如下。
在 Azure 門戶 ( https://portal.azure.com ) 中,單擊左側(cè)的“新建”圖標(biāo)以查看所有服務(wù),然后單擊“物聯(lián)網(wǎng)”項(xiàng)并選擇“流分析作業(yè)”。
填寫“作業(yè)名稱”、“資源組”和“位置”字段,然后單擊“創(chuàng)建”按鈕。等待新的流分析顯示為“在線”。
現(xiàn)在,是時(shí)候配置流分析作業(yè)了。首先,在 Inputs 窗口中,我們選擇 IoT Hub,然后在 IoT Hub Settings 屏幕中,我們完成以下信息:
- 輸入別名:AvnetData
- 訂閱:使用當(dāng)前訂閱中的 IoT 中心
- 選擇 IoT Hub:輸入創(chuàng)建 IoT Hub 時(shí)使用的名稱
- IoT 中心共享訪問策略名稱:iothubowner
- 物聯(lián)網(wǎng)中心消費(fèi)者組:powerbi
單擊下一步,然后單擊完成(保留序列化設(shè)置不變)。
要設(shè)置輸出,請(qǐng)轉(zhuǎn)到流分析作業(yè)的輸出選項(xiàng)卡,然后單擊添加輸出鏈接。在 Add an output to your job 彈出窗口中,選擇 POWER BI 選項(xiàng)并單擊 Next 按鈕。在以下屏幕中,您將設(shè)置 Power BI 帳戶的憑據(jù)以允許作業(yè)連接并向其發(fā)送數(shù)據(jù)。單擊立即授權(quán)鏈接。
要設(shè)置查詢配置,請(qǐng)轉(zhuǎn)到 Stream Analytics Job QUERY 選項(xiàng)卡并將查詢替換為以下語句:
SELECT
*
INTO
[AvnetStartKit]
FROM
[MT3620]
SELECT
*
INTO
[AvnetAzureSphere]
FROM
[MT3620]
需要注意的是,我們只是選擇了從 IoTHub 到 PowerBI 和 Azure Storage Table 的所有數(shù)據(jù)。在確認(rèn)對(duì)話框中單擊“保存”按鈕和“是”。現(xiàn)在作業(yè)已配置,啟動(dòng)按鈕已啟用。單擊按鈕開始作業(yè),然后在“開始輸出”彈出窗口中選擇“作業(yè)開始時(shí)間”選項(xiàng)。單擊“確定”后,作業(yè)將開始。作業(yè)啟動(dòng)后,它會(huì)創(chuàng)建與給定訂閱關(guān)聯(lián)的 Power BI 數(shù)據(jù)源。
5.6 配置 PowerBI 儀表板
現(xiàn)在數(shù)據(jù)源已創(chuàng)建,返回 Power BI 會(huì)話,并通過單擊 Power BI 鏈接找到我的工作區(qū)。作業(yè)運(yùn)行幾分鐘后,您將看到您配置為作業(yè)輸出的數(shù)據(jù)集現(xiàn)在顯示在 Power BI 工作區(qū)數(shù)據(jù)集部分中。
請(qǐng)注意,Power BI 數(shù)據(jù)集只會(huì)在作業(yè)正在運(yùn)行并且正在從 IoT 中心輸入接收數(shù)據(jù)時(shí)創(chuàng)建,因此請(qǐng)檢查硬件是否正常工作并將數(shù)據(jù)發(fā)送到 Azure 以確保創(chuàng)建數(shù)據(jù)集。要檢查流分析作業(yè)是否正在接收和處理數(shù)據(jù),您可以檢查 Azure 管理流分析監(jiān)視器。
一旦數(shù)據(jù)源可用,您就可以開始創(chuàng)建報(bào)告。要?jiǎng)?chuàng)建新報(bào)表,請(qǐng)單擊 Power BI 數(shù)據(jù)源。
報(bào)表設(shè)計(jì)器將打開,顯示可用于所選數(shù)據(jù)源的字段列表以及該工具支持的不同可視化效果。這里我們選擇實(shí)時(shí)傳感器日期和處理時(shí)間。現(xiàn)在報(bào)告差不多準(zhǔn)備好了。單擊“保存”按鈕并將“校園環(huán)境”設(shè)置為報(bào)告的名稱,如下所示。
5.7 隨時(shí)隨地瀏覽環(huán)境數(shù)據(jù)
使用 Power BI Desktop ( https://powerbi.microsoft.com/en-us/desktop/ ),我們可以從 Power BI Web 獲取數(shù)據(jù),并在桌面 PC 上顯示我們上面創(chuàng)建的數(shù)據(jù)報(bào)表。
通過iOS或Android上的Power BI應(yīng)用程序,我們可以從Power BI Web獲取數(shù)據(jù),并在手機(jī)端展示數(shù)據(jù)報(bào)表。
六、附錄
6.1 構(gòu)建和監(jiān)控應(yīng)用程序
從 Github 下載源項(xiàng)目:https://github.com/shijiong/AzureSphereSecurityGateway/tree/master/AvnetAzureSphereSK_OLED。感謝 Peter Fenn和Brian Willess,Avnet Azure Sphere Start Kit 的程序是在他們的工作“ Avnet Azure Sphere Starter-Kit: Advanced Tutorial ”的基礎(chǔ)上構(gòu)建的。確保以下配置。
1. 在此 IDE 的編輯器中打開 build_options.h 文件并檢查:
第 5 行:必須注釋掉(即,如果注釋字符出現(xiàn)在 //#define IOT_CENTRAL_APPLICATION 的行首,則刪除注釋字符)。
第 8 行:必須啟用(即#define IOT_HUB_APPLICATION)
2.connection_strings.h中的connection string要換成你自己的device connection string。
3. 在 app_manifest.json 文件中,“ISU0”、“ISU1”應(yīng)在“Uart”部分設(shè)置,“****.azure-devices.net”(您自己的 IoTHub)應(yīng)在“AllowedConnections”部分配置。
6.2 監(jiān)控 Visual Studio IDE 的輸出
調(diào)試信息將顯示在 Visual Studio 的輸出窗口中。原始 UART 信息如圖 17 所示。
6.3 使用 Device Explorer 監(jiān)控消息
一旦消息通過 Avnet Start Kit 成功發(fā)送到 Azure IoTHub,就可以通過Device Explorer監(jiān)控信息。原始消息如圖 18 所示。
6.4 用于 Uart 信息的 OLED 顯示屏
一旦應(yīng)用程序運(yùn)行,信息就會(huì)顯示在 OLED 顯示屏上。在《 Avnet Azure Sphere Starter-Kit: Advanced Tutorial》的基礎(chǔ)上增加了四個(gè)畫面。源碼可以在oled.c中找到,包括update_uart_data1和update_uart_data2的方法。信息將從原始消息中提取并顯示在 OLED 上,如圖 19 所示。
6.5 Azure 表存儲(chǔ)
訪問 Azure 表存儲(chǔ)不僅速度快,而且對(duì)于用戶應(yīng)用程序而言也具有成本效益。表的實(shí)體如表 3 所示,其中包含多個(gè)屬性,包括分區(qū)鍵、行鍵、時(shí)間戳、設(shè)備 ID、事件排隊(duì)的 UTC 時(shí)間、事件處理的 UTC 時(shí)間、氣體、濕度、光照、PIR 和溫度。分區(qū)鍵、行鍵和時(shí)間戳是為表中的每個(gè)實(shí)體自動(dòng)生成的,它們代表實(shí)體主鍵的第一部分、實(shí)體主鍵的第二部分和實(shí)體最后一次修改的時(shí)間。
為了評(píng)估Azure Table Storage的性能,Azure提供了成功請(qǐng)求的平均端到端延遲(AverageE2ELatency)和平均服務(wù)器延遲(AverageServerLatency)。AverageE2ELatency 包括 Azure 表存儲(chǔ)中讀取請(qǐng)求、發(fā)送響應(yīng)和接收響應(yīng)確認(rèn)所需的處理時(shí)間。AverageServerLatency 代表 Azure 表存儲(chǔ)用于處理請(qǐng)求的平均延遲,不包括失敗的請(qǐng)求。此值不包括 AverageE2ELatency 中包含的網(wǎng)絡(luò)延遲。Azure 表存儲(chǔ)的延遲評(píng)估如圖 20 所示。
根據(jù)圖 20 中的曲線,AverageServerLatency 和 AverageE2ELatency 的值分別為 11.25 ms 和 77.27 ms,這意味著平均整個(gè)延遲小于 100 ms。大多數(shù)物聯(lián)網(wǎng)應(yīng)用程序都可以接受。
6.6.NET應(yīng)用
從 Github 下載應(yīng)用程序并從 Azure IoT 中心門戶復(fù)制必要的連接字符串信息。此連接字符串不是特定于設(shè)備的,而是特定于 IoT 中心單元的。有關(guān)詳細(xì)信息,請(qǐng)參見圖 21。
使用此連接字符串,您可以訪問在此 IoT 中心單元中創(chuàng)建的所有設(shè)備。粘貼連接字符串,如圖 22 所示。
七、總結(jié)
在這個(gè)項(xiàng)目中,我們研究了物聯(lián)網(wǎng)解決方案與大規(guī)模、低成本和安全終端設(shè)備的集成。我們重點(diǎn)關(guān)注了以下三個(gè)方面。首先,以Azure Sphere設(shè)備和Azure云服務(wù)為特色,設(shè)計(jì)、部署和測(cè)試了硬件、軟件和服務(wù)的集成。其次,設(shè)計(jì)并實(shí)現(xiàn)了包括Avnet Azure Sphere Starter Kit直連設(shè)備和網(wǎng)關(guān)設(shè)備在內(nèi)的硬件原型。第三,設(shè)計(jì)并測(cè)試了硬件設(shè)備的程序、云服務(wù)的配置以及PowerBI應(yīng)用程序。
特別感謝
感謝Peter Fenn和Brian Willess,Avnet Azure Sphere Start Kit 的程序是在他們的工作“ Avnet Azure Sphere Starter-Kit:高級(jí)教程”的基礎(chǔ)上構(gòu)建的。
感謝 Avnet 和 Microsoft,你們?yōu)槲姨峁┝?Azure Sphere 初學(xué)者工具包,幫助我將這個(gè)項(xiàng)目變?yōu)楝F(xiàn)實(shí)!
- Azure?物聯(lián)網(wǎng)的門鎖示例
- 基于Microsoft Azure Sphere的AI家庭安全系統(tǒng)
- 構(gòu)建結(jié)合Azure Sphere安全性和FreeRTOS的漫游者
- Azure Sphere I2C掃描儀
- 使用Azure KeyVault和Azure Sphere安全自動(dòng)登錄
- Azure物聯(lián)網(wǎng)農(nóng)業(yè)
- 使用Azure Sphere和D6T構(gòu)建疏散
- 在Avnet Azure Sphere上創(chuàng)建BurnerOn示例應(yīng)用程序
- 基于Azure Sphere的安全防盜設(shè)備
- 如何使用AVNET Azure Sphere套件
- 使用Azure Sphere監(jiān)控警報(bào)安全面板
- 適用于Azure Sphere的WS2812B LED燈帶驅(qū)動(dòng)器
- UM2043_用于微軟Azure云服務(wù)器的WiFi和傳感器的ODE功能包
- 微軟 Azure Sphere MCU技術(shù)、生態(tài)探析
- 高性能嵌入式堆棧Azure PTOS USBX概述 10次下載
- Azure Kinect Body Tracking For LabVIEW更新預(yù)覽 570次閱讀
- IntelliJ上Azure Event Hubs全新支持來了 379次閱讀
- 使用MM32F3270基于Azure RTOS定時(shí)器組的應(yīng)用 1477次閱讀
- 使用MM32F3270基于Azure RTOS動(dòng)態(tài)內(nèi)存管理的應(yīng)用 792次閱讀
- 使用MM32F3270基于Azure RTOS信號(hào)量的應(yīng)用 866次閱讀
- Azure Percept DK的硬件介紹與設(shè)置使用 945次閱讀
- Azure Kinect Senser DK套件簡(jiǎn)介 3433次閱讀
- 防護(hù)嵌入式安全的方法有哪些 1555次閱讀
- 分布式工業(yè)物聯(lián)網(wǎng)云平臺(tái)是怎樣的 1694次閱讀
- 經(jīng)過對(duì)72個(gè)所謂物聯(lián)網(wǎng)平臺(tái)的梳理,初步將其按功能分成了三類 6487次閱讀
- 你知道怎樣在Azure machine learning中使用異常檢測(cè)的方法? 2236次閱讀
- 混合云的主要優(yōu)勢(shì)和最佳實(shí)踐介紹 5556次閱讀
- 云計(jì)算與物聯(lián)網(wǎng)的關(guān)系_云計(jì)算和物聯(lián)網(wǎng)的優(yōu)勢(shì) 1.3w次閱讀
- 淺談云災(zāi)難恢復(fù)與備份之Azure Site Recovery服務(wù) 1834次閱讀
- 物聯(lián)網(wǎng)環(huán)境下的云存儲(chǔ)安全技術(shù)研究 689次閱讀
下載排行
本周
- 1Keysight B1500A 半導(dǎo)體器件分析儀用戶手冊(cè)、說明書 (中文)
- 19.00 MB | 4次下載 | 免費(fèi)
- 2使用TL431設(shè)計(jì)電源
- 0.67 MB | 2次下載 | 免費(fèi)
- 3BT134雙向可控硅手冊(cè)
- 1.74 MB | 2次下載 | 1 積分
- 4一種新型高效率的服務(wù)器電源系統(tǒng)
- 0.85 MB | 1次下載 | 1 積分
- 5LabVIEW環(huán)形控件
- 0.01 MB | 1次下載 | 1 積分
- 6PR735,使用UCC28060的600W交錯(cuò)式PFC轉(zhuǎn)換器
- 540.03KB | 1次下載 | 免費(fèi)
- 751單片機(jī)核心板原理圖
- 0.12 MB | 1次下載 | 5 積分
- 8BP2879DB支持調(diào)光調(diào)滅的非隔離低 PF LED 驅(qū)動(dòng)器
- 1.44 MB | 1次下載 | 免費(fèi)
本月
- 1開關(guān)電源設(shè)計(jì)原理手冊(cè)
- 1.83 MB | 54次下載 | 免費(fèi)
- 2FS5080E 5V升壓充電兩串鋰電池充電管理IC中文手冊(cè)
- 8.45 MB | 23次下載 | 免費(fèi)
- 3DMT0660數(shù)字萬用表產(chǎn)品說明書
- 0.70 MB | 13次下載 | 免費(fèi)
- 4UC3842/3/4/5電源管理芯片中文手冊(cè)
- 1.75 MB | 12次下載 | 免費(fèi)
- 5ST7789V2單芯片控制器/驅(qū)動(dòng)器英文手冊(cè)
- 3.07 MB | 11次下載 | 1 積分
- 6TPS54202H降壓轉(zhuǎn)換器評(píng)估模塊用戶指南
- 1.02MB | 8次下載 | 免費(fèi)
- 7STM32F101x8/STM32F101xB手冊(cè)
- 1.69 MB | 8次下載 | 1 積分
- 8基于MSP430FR6043的超聲波氣體流量計(jì)快速入門指南
- 2.26MB | 7次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935119次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420061次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191367次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73807次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65987次下載 | 10 積分
評(píng)論
查看更多