(1.西安科技大學 通信與信息工程學院, 西安 710054; 2.西安科技大學 電氣與控制工程學院,西安 710054;3.句容市博遠電子有限公司,江蘇 鎮(zhèn)江 212400)
隨著城市化進程的加速,城市覆蓋面積不斷擴大,井蓋的數(shù)量與日俱增。井蓋不僅數(shù)量多,而且屬于不同的部門監(jiān)管,造成市政部門監(jiān)管難度大。井蓋被盜以及爆炸等安全事故時有發(fā)生,直接威脅行人和車輛通行安全,影響城市道路平整和市容環(huán)境[1]。目前,城市井蓋的巡查基本都需要人力,井蓋出現(xiàn)故障后,需要巡視人員或者市民上報,所以維修人員不能及時到達現(xiàn)場來解決問題,使市民的安全性大大降低。因此,加強城市井蓋的維護和安全管理工作,已成為當前市政部門重視和解決的現(xiàn)實問題。
隨著物聯(lián)網(wǎng)技術的發(fā)展,低功耗廣域網(wǎng)(LPWAN)技術明顯優(yōu)于傳統(tǒng)的物聯(lián)網(wǎng)技術[2]。目前主流的低功耗廣域網(wǎng)有NB-IoT、LoRa和Sigfox等。2017年6月《關于全面推進移動物聯(lián)網(wǎng)(NB-IoT)建設發(fā)展》的發(fā)布,物聯(lián)網(wǎng)行業(yè)尤其是NB-IoT產(chǎn)業(yè)得到了國家政策的大力支持。NB-IoT工作在授權頻段,相較于LoRa和Sigfox具有干擾性強、安全性高、實時性好的優(yōu)點。并且,在相同的頻段下,基于NB-IoT的窄帶物聯(lián)網(wǎng)技術,增益超過20dB,形成深度覆蓋、海量連接的優(yōu)良架構[3]。通過NB-IoT與傳感器連接,解決了城市井蓋下傳感器信號回傳以及信號質(zhì)量的問題。
史瑞剛等[4]采用ZigBee無線通信技術設計了一種道路井蓋監(jiān)測系統(tǒng),終端傳感器采集到的數(shù)據(jù)通過ZigBee組網(wǎng)傳輸至協(xié)調(diào)器,然后再通過RS485總線與上位機進行通信,從而實現(xiàn)了對窨井蓋的遠程監(jiān)測。趙士鵬等[5-6]利用無線通信技術和無線傳感技術,設計了一款基于ZigBee和GPRS的智能井蓋監(jiān)控系統(tǒng),提高了對城市井蓋的管理效率。雖然基于ZigBee和GPRS的井蓋監(jiān)測系統(tǒng)在某種程度上實現(xiàn)了對城市井蓋的集中管理,但在后期維護和系統(tǒng)穩(wěn)定性方面存在一定的缺陷。因此,本文結合NB-IoT技術設計了一種智慧井蓋監(jiān)測系統(tǒng),管理人員和維修人員可在地圖和列表上清楚地掌握井蓋的分布以及在線狀態(tài),對故障井蓋進行自動報警、精確定位,使井蓋管理智能化、故障檢修便捷化,以減少城市井蓋安全事故的發(fā)生。
以往的城市井蓋管理存在很多問題,例如井蓋巡查、維護基本要人力;井蓋發(fā)生故障時,維修人員無法確定井蓋的精確位置;井蓋的種類分為燃氣、電力、通信等,屬于不同的部門,管理方式不同導致管理不善、工作效率低下[7]。針對以上問題,本文設計的智慧井蓋監(jiān)測系統(tǒng)有以下幾個功能:
1)井蓋故障自動報警,精確定位,可從平臺web界面以及手機App界面顯示故障信息和實現(xiàn)定位;
2)每個井蓋都有屬于自己的ID,可從平臺和APP隨時查看井蓋的運行狀態(tài)和在線狀態(tài);
3)井蓋的工作記錄,歷史查詢。
本文所設計的智慧井蓋監(jiān)控系統(tǒng)是由數(shù)據(jù)采集層、通信層、應用服務層和用戶層組成的,系統(tǒng)的總體架構如圖1所示。
圖1 系統(tǒng)總體架構圖
數(shù)據(jù)采集層主要對井蓋的壓力、位移和井下的甲烷濃度和水位進行在線監(jiān)測和異常情況上報,完成井蓋相關信息的采集;通信層主要是采集終端通過NB-IoT模塊將采集到的數(shù)據(jù)上傳到至NB-IoT基站,進而上傳到服務器;應用服務層主要負責將采集到的數(shù)據(jù)進行處理、存儲和發(fā)布;用戶層主要通過PC端或者手機端從服務器獲取數(shù)據(jù),進行顯示、異常報警等。
智能井蓋監(jiān)測終端設計是系統(tǒng)硬件設計的重要組成部分,其設計影響整個系統(tǒng)的高效性和可靠性。監(jiān)測終端硬件設計包括3個部分分別是:主控制模塊、通信模塊、傳感器模塊。以一個監(jiān)測節(jié)點為例進行介紹,系統(tǒng)的硬件結構如圖2所示。智慧井蓋監(jiān)測終端主控制器與傳感器模塊、NB-IoT模塊之間均采用UART通信方式。同時使用鋰電池給監(jiān)測終端提供8 V直流電源。采集終端開機完成初始化后,主控芯片STM32進入待機模式等待定時器喚醒,同時BC26模塊在設定時間內(nèi)無任何操作,會自動進入PSM模式。定時器時間到達后,主控芯片STM32退出待機模式,開始采集井蓋的位移和壓力以及井下水位和甲烷濃度,然后將這些數(shù)據(jù)發(fā)送給NB-IoT模塊,此時STM32再次進入待機模式,NB-IoT模塊收到數(shù)據(jù)后退出PSM模式,主控芯片發(fā)送AT指令將數(shù)據(jù)經(jīng)射頻天線發(fā)送給NB-IoT基站,然后再與服務器建立連接傳輸數(shù)據(jù)。
圖2 系統(tǒng)硬件組成框圖
考慮到STM32與傳感器可方便地進行數(shù)據(jù)傳輸,并且能滿足系統(tǒng)功能的要求,故選用STM32F103C8T6單片機作為該系統(tǒng)的主控制器。STM32F103C8T6工作頻率最高達到72 MHz,內(nèi)核使用的是高性能的ARM CortexTM-M3 32位的RISC內(nèi)核,內(nèi)置高速存儲器(高達512 K字節(jié)的閃存和64 K字節(jié)的SRAM),具有豐富的I/O端口和聯(lián)接到兩條APB總線的外設。STM32F103C8T6包含2個PWM定時器、3個12位的ADC和4個通用16位定時器,還包含標準和先進的通信接口:多達2個I2C接口和SPI接口、3個USART接口、一個USB接口和一個CAN接口[8]。該芯片工作溫度范圍為-40~+105 ℃,以及它的省電模式也完全符合本系統(tǒng)的設計需要。
以STM32F103C8T6為核心的智慧井蓋監(jiān)測終端主要完成以下功能:
1)數(shù)據(jù)的采集:利用甲烷傳感器監(jiān)測井下是否有燃氣泄漏現(xiàn)象;液位傳感器用來監(jiān)測井下水位是否超標;壓力和位移傳感器用來監(jiān)測井蓋是否被移動或被盜取。
2)數(shù)據(jù)的傳輸:主控制器負責將傳感器采集到的數(shù)據(jù)打包發(fā)送給通信模塊,BC26模組接收到主控芯片的指令退出PSM狀態(tài),進入連接狀態(tài),NB-IoT卡立即將數(shù)據(jù)通過射頻天線將井蓋的數(shù)據(jù)經(jīng)NB-IoT核心網(wǎng)發(fā)送到服務器。
NB-IoT無線通信模塊是由BC26模組以及NB卡卡座、串口電路、濾波天線、復位電路組成,由電源模塊供電。BC26模塊硬件電路如圖3所示。
圖3 BC26模塊電路圖
在設計方面,兼容移遠通信GSM/GPRS系列的M26模組采用LCC封裝,便于2 G客戶快捷地切換到NB-IoT網(wǎng)絡。BC26模塊與STM32單片機采用串口通信,STM32通過向BC26模塊發(fā)送AT指令,完成對BC26的設置和相關信息的發(fā)布。BC26工作電壓范圍在3.1~4.2 V之間,該模組具有3種工作模式:CONNECT、IDLE和PSM,根據(jù)實際需求切換工作模式極大地降低了系統(tǒng)的功耗。IDLE狀態(tài)下電流為6 mA,PSM狀態(tài)下電流僅為5 μA,這種模式更適合NB-IoT技術的應用場景。
為了降低功耗,當STM32進入待機模式時,單片機會給無線通信模塊發(fā)送關機脈沖,關閉無線通信模塊[9]。當定時器到達時間或者某一傳感器給單片機發(fā)出喚醒信號需要上傳信息時,單片機喚醒后給BC26模塊發(fā)送開啟指令使其退出PSM模式,然后將接受到的數(shù)據(jù)發(fā)送至服務器。過一段時間后仍未收到主控芯片發(fā)來的指令,BC26模塊會自動進入休眠模式,等待下一次喚醒。
本設計對傳感器進行選擇和電路設計均依據(jù)低功耗和安全穩(wěn)定原則。
本系統(tǒng)液位傳感器采用的是壓差式液位傳感器AS-136,當傳感器檢測到井下水位發(fā)生變化時,會產(chǎn)生一個電壓差,根據(jù)此變化來監(jiān)測水位的變化。
由于井蓋承受的壓力具有一定的限度,故當井蓋長期被重物掩埋時,會對井蓋造成傷害,影響井蓋的使用壽命,故需要對井蓋壓力進行檢測。壓力檢測模塊主要由兩個部分組成:壓力傳感器模塊和數(shù)據(jù)轉換模塊。壓力傳感器(HL-8)經(jīng)過數(shù)據(jù)轉換模塊(HX711)連接至STM32處理器,STM32通過I2C通信方式讀取數(shù)據(jù)轉換模塊中的數(shù)據(jù)。
本設計選用甲烷傳感器MQ-4對窨井下甲烷氣體是否泄漏進行監(jiān)測。該傳感器工作方式為當檢測到甲烷氣體時,產(chǎn)生相應的電壓值,由模擬信號輸出端口(AO)輸出,甲烷濃度增大時,輸出端口的電壓值成比例增長。由STM32端口內(nèi)置A/D轉換進行對AO出輸出的電壓值檢測,測定甲烷氣體濃度。
為防范“井蓋吃人”或被惡意盜取,本設計采用ADLX345三軸加速度傳感器來監(jiān)測井蓋是否發(fā)生偏移。ADXL345功耗低,具有閾值可調(diào)的睡眠和喚醒工作模式。當監(jiān)測終端處于待機狀態(tài)時,安裝在井蓋上的加速度傳感器發(fā)生偏移并且監(jiān)測到的值大于閾值,ADLX345傳感器會主動喚醒單片機使其進入工作模式,此時傳感器測量20次的加速度值并發(fā)送給STM32內(nèi)部。在單片機內(nèi)部計算20次的平均值,如果平均值大于閾值,則立即將報警信息上傳到服務器;如果平均值小于閾值,單片機和加速度傳感器都進入待機模式,等待下一次被喚醒。因此,選用ADLX345三軸加速度傳感器來監(jiān)測井蓋是否發(fā)生偏移。該傳感器靈敏度高,可以起到實時動態(tài)監(jiān)測井蓋位移的功能。
上述4個傳感器在數(shù)據(jù)采集時經(jīng)過與STM32處理器通信后,完成對數(shù)據(jù)的原始采集,但需要對數(shù)據(jù)進行二次處理,對于液位傳感器與甲烷傳感器,由于其使用了STM32內(nèi)置的12位AD轉換模塊,故采用均值濾波的方式來保持數(shù)據(jù)的穩(wěn)定準確性。而對于HX711模塊與ADLX345傳感器,其內(nèi)置芯片完成了相應數(shù)據(jù)的運算,故STM32通過傳感器采集的數(shù)據(jù)可以直接進行使用。
智慧井蓋監(jiān)控系統(tǒng)軟件設計主要包括井蓋控制終端主控制器的軟件設計、智慧井蓋管理平臺以及手機終端軟件設計。
井蓋監(jiān)控終端軟件設計主要包括:主程序、終端服務程序、串口接收服務程序。主程序流程圖如4所示。主程序首先對STM32串口以及定時器進行初始化,然后對NB-IoT模塊進行初始化,初始化完成后STM32和NB-IoT模塊都進入休眠模式。定時器設定的時間到達后,向采集端發(fā)送運行狀態(tài)查詢命令,完成井蓋狀態(tài)參數(shù)的定時采集,并按規(guī)定的協(xié)議將井蓋狀態(tài)數(shù)據(jù)上傳至服務器。
圖4 主程序流程圖
智慧井蓋管理系統(tǒng)軟件采用B/S(瀏覽器/服務器)模式進行設計,數(shù)據(jù)庫采用MySQL,系統(tǒng)服務端采用J2EE技術架構。管理軟件在整個智慧井蓋管理系統(tǒng)中起著承前啟后的作用,一方面管理軟件采用MQTT協(xié)議與服務器進行數(shù)據(jù)傳輸,管理軟件接收到來自服務端的數(shù)據(jù),解析數(shù)據(jù)并存儲在數(shù)據(jù)庫中;另一方面,管理軟件從MySQL數(shù)據(jù)庫中獲取數(shù)據(jù)。智慧井蓋管理系統(tǒng)分為:智能井蓋管理模塊、區(qū)域與巡檢員管理模塊、智能井蓋日志、APP消息模塊、平臺參數(shù)管理模塊和系統(tǒng)權限管理模塊。智慧井蓋管理系統(tǒng)軟件設計流程圖如圖5所示。
圖5 智慧井蓋管理系統(tǒng)軟件設計流程圖
系統(tǒng)的手機終端主要針對巡檢員而設計,采用Android系統(tǒng)開發(fā),實現(xiàn)了對異常信息的接收并實現(xiàn)了和服務器端數(shù)據(jù)交互。在井蓋發(fā)生異常時,實現(xiàn)定位及導航功能。具體的手機終端軟件設計流程圖如圖6所示。
圖6 手機終端軟件設計流程圖
該系統(tǒng)已經(jīng)進行了現(xiàn)場測試,通過多次長時間測試運行結果表明該系統(tǒng)穩(wěn)定可靠,達到了很好的預期效果。由圖7中可以直觀地掌握各個區(qū)域井蓋數(shù)量以及在線狀態(tài)。在列表方式中,以列表的方式顯示每個井蓋的具體信息,包括井蓋的ID(每個井蓋的唯一識別號)、名稱、地址、藍牙密碼(新增井蓋初始化應用)、水位、壓力、燃氣濃度、位移等信息,并且可以對井蓋進行啟/停(廢棄井蓋或者啟用井蓋)操作,在操作欄中可以對井蓋信息修改、刪除與修改藍牙密碼,在搜索欄里面可以查詢?nèi)我庖粋€井蓋信息。在地圖方式中,以更加直觀的形式顯示了每個區(qū)的井蓋數(shù)、離線數(shù)、異常數(shù)。通過放大地圖則會顯示出每個地方井蓋的具體信息。
圖7 智能井蓋管理系統(tǒng)主界面
圖8 手機終端主界面
圖8左圖表明在手機終端可以在地圖模式下清楚地查看各個井蓋的分布以及井蓋的具體信息;右圖表明手機終端在列表模式下,顯示了每個井蓋的基本信息,包括ID號、名稱、位移、濃度、水位、壓力等。當有異常情況發(fā)生時,管理平臺和手機終端都會收到報警信息,減少了人工巡檢和維護的成本,通過手機精確定位故障點,以減少故障檢修的時間。
針對城市井蓋所出現(xiàn)的管理弊端和安全問題,本文結合嵌入式技術、窄帶物聯(lián)網(wǎng)技術和數(shù)據(jù)庫技術,提出并實現(xiàn)了基于NB-IoT的智慧井蓋監(jiān)測系統(tǒng)的設計。實現(xiàn)了對城市井蓋的智能化管理,降低了管理人員和檢修人員的勞動壓力,并且一定程度上預防了安全事故的發(fā)生。該系統(tǒng)為智慧市政做出了貢獻,推動了智慧城市的發(fā)展[10]。長時間的數(shù)據(jù)收集為大數(shù)據(jù)建立了基礎,為建立智能決策系統(tǒng)提供了條件。