王世民,楊永杰
(南通大學(xué) 電子信息學(xué)院,江蘇 南通 226019)
隨著城市建設(shè)迅速發(fā)展,城市交通日益復(fù)雜,城市路燈管理問題也隨之而來,相關(guān)部門如何有效且高效的實現(xiàn)對城市路燈管理成了急待解決的問題[1]。而現(xiàn)今的城市路燈又以太陽能路燈為未來發(fā)展方向,其不同于以往的以交流電供電的路燈,這就要求管理部門要以更多的人工操作,費時費力,浪費資源,難于管理。因此研究一套先進的城市道路集中監(jiān)控管理手段來減輕勞動強度、節(jié)約資源、降低成本,使城市道路照明管理提高到信息化、數(shù)字化、高效節(jié)能化水平已成為城市照明管理的急需[2]。
智慧路燈管理系統(tǒng)的系統(tǒng)框圖如圖1所示。系統(tǒng)的體系結(jié)構(gòu)為多層分布式結(jié)構(gòu),從下至上可分為底層監(jiān)控層、中間傳輸層和頂層管理層。其中傳輸層是系整個系統(tǒng)的通訊樞紐,它運行狀態(tài)的穩(wěn)定與否直接決定整個系統(tǒng)數(shù)據(jù)傳輸?shù)馁|(zhì)量。考慮到城市路燈通信容量大,路燈過多過于密集導(dǎo)致個別節(jié)點出現(xiàn)丟包的可能性,采用NB-IOT[3]通信方式接入頂層服務(wù)器終端,底層監(jiān)控層主要由監(jiān)控終端組成,而每個監(jiān)控終端作為一個路燈節(jié)點[4],并且每個路燈節(jié)點有一個唯一的標(biāo)識(IMEI),這些節(jié)點與頂層服務(wù)器終端進行數(shù)據(jù)傳輸。而NB-IOT是非實時在線的,服務(wù)器和其之間無法實時通信,這就存在丟包的可能性,必須有重傳和驗證機制。所以此次系統(tǒng)采用華為的CoAP機制,這樣可避免丟包和沖突,確保底層監(jiān)控端與服務(wù)器通信良好。所有路燈實現(xiàn)分布式控制,底層終端將采集到的狀態(tài)、電量、溫濕度、位置等信息以網(wǎng)絡(luò)方式上傳到服務(wù)器[5],上位機管理軟件通過讀取本地數(shù)據(jù)庫的信息進行對路燈信息的查詢與處理,若發(fā)現(xiàn)有路燈報錯提示,則將路燈的位置信息與可能的損壞信息打印給維修工人,維修工人可第一時間獲取路燈的位置,及時處理有問題的路燈,實現(xiàn)太陽能路燈管理的有效管理,提高城市管理的智慧化進程。
圖1 系統(tǒng)的系統(tǒng)框圖
系統(tǒng)的終端監(jiān)控層是整個系統(tǒng)硬件設(shè)計的主要部分。以一個監(jiān)控終端為例進行介紹,即一盞路燈的監(jiān)控。監(jiān)控終端的設(shè)計影響到整個系統(tǒng)的穩(wěn)定性與可執(zhí)行性,其中的設(shè)計包括對多個子模塊的實現(xiàn)。監(jiān)控終端由數(shù)據(jù)采集與電量管理兩個部分組成,兩者之間通過數(shù)據(jù)的相互交互,從而使整個系統(tǒng)穩(wěn)定高效的工作。
考慮到系統(tǒng)功能要求,采集部分的MCU采用ST公司的基于Cortex-M3架構(gòu)的增強型32位RISC內(nèi)核芯片-STM32F103C8T6,該芯片最高工作頻率為72 MHz,內(nèi)置高速存儲器(高達512 K字節(jié)的內(nèi)存和64 K字節(jié)的SRAM)[6],豐富的增強I/O口和連接到兩條APB總線的外設(shè),工作溫度范圍為-40℃至+105℃,以及一系列的省電模式完全符合本系統(tǒng)的設(shè)計所需。采集部分外圍硬件主要包括電量采集、狀態(tài)采集、GPS位置采集、故障采集等。處理器與各模塊的接口設(shè)計如圖2所示。
圖2 數(shù)據(jù)采集硬件結(jié)構(gòu)圖
以STM32F103C8T6為中心的監(jiān)控終端的數(shù)據(jù)采集部分主要包括以下功能:
(1)數(shù)據(jù)采集功能:利用光敏電阻、SHT20溫濕度傳感器實現(xiàn)對環(huán)境光照度與溫濕度的采集。通過基于ROM版本設(shè)計的L70-R GPS模塊,獲取當(dāng)前路燈的具體位置,便于維修人員快速實現(xiàn)路燈定位。故障檢測部分將在電量管理部分涉及,這里不做介紹。
(2)交互與傳輸功能:監(jiān)控終端部分采集到的數(shù)據(jù),處理器將數(shù)據(jù)通過NB-IOT發(fā)送到頂層服務(wù)器端,數(shù)據(jù)格式采用CJSON格式,通信波特率為115 200 bit/s[7]。考慮到數(shù)據(jù)沖突問題以及通信可能存在的不穩(wěn)定因素,當(dāng)出現(xiàn)以上的問題時,系統(tǒng)會將采集到數(shù)據(jù)暫存在SD卡中,待通信正常或者到了下一次發(fā)送周期時重新上傳SD卡中存儲的所有數(shù)據(jù)。
(3)其他功能:這里簡要說明一下電源管理部分中的供電功能。系統(tǒng)供電來自太陽能充電池,電池電壓為12 V,通過一塊LM2596電源芯片轉(zhuǎn)成5 V直流電,再通過一塊AMS1117-3.3 V電源芯片降壓,主芯片供電電壓為3.3 V。監(jiān)控終端的電量管理部分的硬件實現(xiàn)與功能將在下一小節(jié)進行介紹。
上一小節(jié)介紹了數(shù)據(jù)采集部分的硬件組成和相關(guān)功能,而電量管理的硬件設(shè)計是整個系統(tǒng) 的核心部分。
在智慧路燈管理系統(tǒng)中,電量管理部分采用BQ27542-G1電源管理芯片,該芯片采用Impedance Track 算法進行電量監(jiān)測,并提供電池剩余電量(mAh)、充電狀態(tài)(%)、續(xù)航時間、電池電壓(mv)以及溫度(℃)等消息,支持最高容量14 500 mAh的電池檢測,還可提供針對內(nèi)部短路或電池端子斷開事件的檢測功能,完全滿足系統(tǒng)的設(shè)計要求。若想獲得準(zhǔn)確的電量狀態(tài),需讓BQ27542-G1電源管理芯片進行學(xué)習(xí)周期,利用TI公司提供得Battery Management Studio軟件對電池進行充放電的周期學(xué)習(xí),采用IIC接口與軟件系統(tǒng)通信。周期學(xué)習(xí)步驟如圖3所示。
圖3 周期學(xué)習(xí)
電池的學(xué)習(xí)周期從一個電量半滿狀態(tài)開始(電池電壓穩(wěn)定且處于低電壓狀態(tài)),一般在3.0~3.3 V。然后將電池充電到滿(電池管理軟件必須檢測到電池充滿電),一旦充電停止,電池電壓在高電壓,通常在4.1~4.2 V之間,此時再次使電池放電,則電池管理軟件采用再次對電池進行測量,并確定它所代表的電荷狀態(tài),通過兩種已知的充放電狀態(tài)和通過的庫倫,量規(guī)計算出電池的最大容量[8]。
系統(tǒng)軟件主要由底層監(jiān)控終端與上位機管理軟件兩部分組成,下面將主要介紹管理軟件的設(shè)計流程。
底層監(jiān)控終端所需實現(xiàn)的功能較多,且在數(shù)據(jù)處理上面要求較高,這里主要以面向?qū)ο蟮乃枷脒M行程序的編寫,將各功能劃分為不同的對象函數(shù),其中包括SD卡子函數(shù)、FLASH模塊子函數(shù)、GPS模塊子函數(shù)、光照度模塊子函數(shù)以及溫濕度模塊子函數(shù)等其他常用子函數(shù)。監(jiān)控終端的軟件設(shè)計主要結(jié)構(gòu)如圖4所示。
圖4 監(jiān)控終端軟件設(shè)計
上位機管理軟件采用Visual Studio軟件作為開發(fā)平臺,使用C#語言編寫,管理軟件從功能劃分可分為數(shù)據(jù)查詢、人事管理、常用工具等;根據(jù)使用權(quán)限可劃分為:非內(nèi)部管理人員與內(nèi)部管理人員,非內(nèi)部管理人員只有查詢等基礎(chǔ)功能的使用權(quán),而內(nèi)部管理人員的權(quán)限則可使用所有功能。管理軟件在整個智慧路燈管理系統(tǒng)中起著承前啟后的作用,一方面管理軟件采用UDP協(xié)議與服務(wù)器進行數(shù)據(jù)傳輸,管理軟件接收到來自監(jiān)控終端的數(shù)據(jù),解析數(shù)據(jù)并存儲在數(shù)據(jù)庫中,另一方面,管理軟件從SQL SERVER數(shù)據(jù)庫中獲取數(shù)據(jù)。管理軟件采用類似廣播的方式與監(jiān)控終端進行通信,監(jiān)控終端會同時收到來自管理軟件的指令,只有檢測到與自己的設(shè)備ID相一致時,才會將指令存儲在監(jiān)控終端,并按照指令執(zhí)行動作,數(shù)據(jù)格式采用CJSON格式。管理軟件的設(shè)計如圖5所示。
圖5 管理軟件設(shè)計
該系統(tǒng)已經(jīng)在南通大學(xué)進行了現(xiàn)場測試。通過多次且長時間的現(xiàn)場測試,以及不斷的修改完善,系統(tǒng)能夠良好的實現(xiàn)預(yù)期效果。能夠按照系統(tǒng)設(shè)計要求采集電量、光照度、GPS位置等數(shù)據(jù)并上傳到服務(wù)器。路燈信息數(shù)據(jù)采集并上傳實現(xiàn)率達到98.23%,優(yōu)良的回傳機制能實現(xiàn)對路燈的有效控制,方便地實現(xiàn)了城市路燈的管理與監(jiān)控。管理部門可通過上位機管理軟件查看城市各區(qū)域的路燈狀況,和傳統(tǒng)的人工檢修與登記方法相比,實現(xiàn)了城市的路燈的智能管理,符合智慧城市的路燈管理要求。表1為現(xiàn)場測試的上位機軟件獲取到的路燈狀態(tài)信息。
表11 路燈狀態(tài)信息
地區(qū)編號光照/%濕度/%RH 狀態(tài)溫度/℃ 電量/%位置崇川區(qū)162.140.2良好26.180.3獲取崇川區(qū)261.545.3良好25.382.4獲取崇川區(qū)363.044.5良好27.586.1獲取崇川區(qū)435.557.6良好23.475.6獲取崇川區(qū)520.668.7良好20.573.5獲取
根據(jù)多次的現(xiàn)場測試結(jié)果可以看出,此系統(tǒng)運行穩(wěn)定,完全滿足系統(tǒng)的設(shè)計要求與城市路燈管理的智能化要求。路燈狀態(tài)信息能夠及時有效的上傳到上位機管理軟件,并被管理人員獲取。針對信息上傳中丟包的情況,后期將更改天線品質(zhì),并優(yōu)化上傳數(shù)據(jù)的防沖突工作,數(shù)據(jù)上傳成功率能達到100%。
本文首次提出并實現(xiàn)了基于NB-IOT通信的智慧路燈管理系統(tǒng)的設(shè)計,將嵌入式技術(shù)、窄帶物聯(lián)網(wǎng)技術(shù)和數(shù)據(jù)庫技術(shù)有機融合[9],實現(xiàn)了城市路燈的智能化管理,向智慧城市的進程邁出了一大步。本文提出的構(gòu)想旨在改善城市路燈管理方面的落后現(xiàn)象,同時也在智慧城市的其他基礎(chǔ)設(shè)施管理上面起到非常重要的標(biāo)桿作用[10]。