王麗萍,劉 磊,曾 聰,肖思維
(1.鄭州輕工業(yè)大學 計算機與通信工程學院,河南 鄭州 450002;2.中國輕工業(yè)長沙工程有限公司,湖南 長沙 410114)
隨著窄帶物聯(lián)網(NB-IoT)應用的蓬勃發(fā)展,其逐漸成為了5G時代物聯(lián)網的核心技術。利用NB-IoT技術將感知層獲取到的狀態(tài)信息接入云平臺,推動著人與物之間和物與物之間的相互連接和通信[1-2]。本系統(tǒng)構建了一個基于NBIoT技術且可接入云平臺的智慧城市窨井蓋安全監(jiān)測系統(tǒng)。傳統(tǒng)井蓋無法分辨出每個井蓋所處的具體位置,與傳統(tǒng)井蓋不同的是,本系統(tǒng)每個井蓋都有自己單獨的ID,能夠便捷地確定井蓋的實時位置。系統(tǒng)利用NB-IoT模組、采集控制器信息服務器和相關應用程序,通過傳感器感知井蓋的振動移位信息以及井下的甲烷濃度情況。通過感知節(jié)點,將收集到的數據發(fā)送到云平臺,工作人員可以隨時隨地通過云平臺查詢井蓋的狀態(tài),從而做出判斷。
圖1所示為智慧城市窨井蓋系統(tǒng)接入云平臺的網絡架構設計思路。系統(tǒng)可分為4層:
圖1 系統(tǒng)設計思路
(1)井蓋狀態(tài)感知層由主控芯片、傳感器組成;
(2)通信層基于窄帶物聯(lián)網技術,信息經由通信模塊和數據中心上傳至基站和服務器;
(3)應用服務層通過物聯(lián)網云平臺將采集的數據進行分析、處理和存儲;
(4)用戶層通過電腦端或手機端顯示相應的狀態(tài)數據。
窨井蓋狀態(tài)感知終端節(jié)點包括主控制模塊、通信模塊以及感知模塊。如圖2所示,采用STM32單片機作為整個硬件部分的主控制器。STM32主要用于完成與傳感器模塊和通信模塊之間的數據接收和傳輸。傳感器模塊選用兩類傳感器,分別是傾斜角度傳感器和可燃氣體(甲烷)傳感器。通信模塊用于感知模塊信息的無線上傳與定位。
圖2 窨井蓋狀態(tài)感知節(jié)點硬件組成
1.2.1 主控制模塊電路設計
感知終端節(jié)點主控制系統(tǒng)需要一個低功耗、低成本、較高性能的芯片作為主控制器[3]。結合本設計場景,最終采用了以ARM Cortex-M為內核的STM32系列中的STM32F103C8T6芯片作為本系統(tǒng)的微控制器。該芯片程序儲存器容量為64 KB,工作電壓為2~3.6 V,可在-40~85 ℃的環(huán)境下工作;具有低耗電、低電壓的特點,對工作環(huán)境要求低,適用于智慧城市的復雜道路環(huán)境。
1.2.2 傾斜角度傳感器模塊的設計
傾斜角度傳感器模塊采用的是GY-25和MPU6050,該模塊尺寸小、性價比高,是串口輸出格式;同時測量范圍大,能適應復雜的環(huán)境。
該模塊命令字節(jié)有5種由外部控制器發(fā)送至模塊(十六進制)的模式,分別是:查詢模式、自動模式、輸出模式、校正模式、結束模式。在模塊保持水平時能校正;在傾斜時,能夠返回其角度值,還可以清零[4]。
1.2.3 可燃氣體傳感器模塊的設計
由于井下可燃氣體主成分是甲烷,本系統(tǒng)采用的是甲烷傳感器MQ-4。傳感器的電導率隨周圍環(huán)境中可燃氣體濃度的變化而變化,濃度越高電壓越高,具有信號輸出指示,TTL輸出有效信號為低電平[5]。該傳感器需要搭配ADC0809芯片使用,它的內部具有轉換起停控制端、一個5 V供電電源和8位分辨率模數轉換器。
為了能夠及時獲取井蓋的相關信息,便于管理者及時到達井蓋的所處位置進行排障處理,需要對其進行追蹤。系統(tǒng)選擇SIM7000C模塊,該模塊自帶電源,基于高通MDM9206平臺,支持NB-IoT,功耗超低,采用小型化封裝。支持自彈式Micro SIM卡座及SIM卡,無需增加轉換電路,模塊自帶網絡狀態(tài)指示燈。SIM7000C的配套天線是有源GPS天線,使用USB接口,用于測試AT和獲取定位信息。
選擇由中國移動打造的PaaS物聯(lián)網開放平臺OneNET作為本系統(tǒng)的云平臺。OneNET 平臺能快速完成產品的注冊,實現(xiàn)設備接入;開發(fā)模板豐富,案例充足;支持多種協(xié)議,能夠接入各類物聯(lián)網設備,滿足各種跨平臺服務需求[6-8]。
獲取數據、存儲獲取的數據、處理和傳輸數據是節(jié)點終端需要實現(xiàn)的主要軟件需求[9]。具體軟件要求如下:
(1)數據收集:需要收集井蓋傾斜程度以及井下的甲烷濃度信息。
(2)數據存儲:先將數據存儲一段時間,簡單分析處理后直接上傳到云平臺,減少傳輸的數據量,有利于提高數據傳輸的速度。
(3)數據處理:根據不同傳感器傳輸的不同數據,分別進行處理。
(4)數據傳輸:節(jié)點終端中主控芯片STM32F103C8T6通過串口對通信模塊進行配置,當它連接到網絡時,按照EDP協(xié)議連接到OneNET云平臺服務器。
(5)數據顯示:每一個終端節(jié)點也就是井蓋的相關信息都會在云平臺和手機APP中顯示,包括每一個井蓋歷史狀態(tài)數據和實時數據信息。
將模組接入OneNET平臺時,需要完成如下平臺側和模組側的對接配置工作:
(1)平臺側流程—產品創(chuàng)建與設備注冊。首先創(chuàng)建EDP(Embedded,嵌入式DisplayPort)產品,然后創(chuàng)建EDP設備,最后進行設備管理。
(2)模組側流程—初始化模組及實體配置模組側設備。首先初始化模組駐網,創(chuàng)建實體設備,進行對象和資源設置,之后請求登錄,從而上報結果,實現(xiàn)平臺數據收發(fā)。
平臺利用數據流與數據點來組織設備上行數據,設備須以Key-Value的格式上傳數據;用戶可以將相關性較高的數據歸類為一個數據流,并自定義其數據范圍,數據流中的數據在存儲的同時可以“流向”后續(xù)服務[10-11]。平臺會默認以時序存儲數據流中的數據,從而可以查詢不同時間的數據點的值。用戶通過采用MIPLNOTIFY指令進行數據上報。數據上報流程如圖3所示。
圖3 數據上報流程
數據下發(fā)流程:平臺下發(fā)操作指令,模組接收到指令后發(fā)給 MCU,MCU執(zhí)行響應和實現(xiàn)相關操作流程。本流程需要傳感器、MCU、模組、平臺相互配合進行操作。如果下發(fā)數據后,規(guī)定時間內平臺沒有收到數據回復,將會反饋操作超時,須及時響應反饋操作。
在設備管理流程中可以使用的幾種操作分別是:Discover操 作、Read操 作、Write操 作、Execute操 作、Write-Attributes操作以及Observe操作。如圖4所示,操作設備發(fā)送請求到平臺側,平臺側接收信息并做出回應,發(fā)送對應操作請求,設備收到指令后,執(zhí)行操作,用戶檢查執(zhí)行結果。
圖4 設備管理流程
本系統(tǒng)的節(jié)點終端通電之后,甲烷傳感器模塊、通信模塊和主控制模塊的報警指示燈會亮;NB-IoT模塊通過報警指示,可觀測數據傳輸的速率。同時在登錄OneNET云平臺之后,通過開發(fā)者中心可以看到聯(lián)網設備上線,圖5為設備狀態(tài)云平臺查詢界面。
圖5 云平臺查詢界面
可燃氣體測試系統(tǒng)如圖6所示,在手機APP端可以看到關于氣體指示的圖標由綠色變成了紅色。最終,在電磁干擾和模擬惡劣天氣條件下,系統(tǒng)經過測試,性能穩(wěn)定,可以適應日常智慧城市應用場景。
圖6 可燃氣體測試
根據當前智慧城市窨井蓋安全檢測的需求,本設計盡可能實現(xiàn)終端節(jié)點的低功耗優(yōu)化。根據系統(tǒng)要求,從低成本、高能效等方面考慮,選擇主控芯片并進行外圍接口電路設計。在功能上,系統(tǒng)通過NB-IoT模組接入OneNET云平臺,進行窨井蓋危險狀態(tài)監(jiān)控,便于用戶查看;遇到異常情況,及時通知路政管理人員排除危險,促進智慧城市重要設施的安全管理。