侯天陽,舒啟林
(沈陽理工大學(xué) 機(jī)械工程學(xué)院,遼寧 沈陽 110159)
隨著我國經(jīng)濟(jì)建設(shè)的飛速發(fā)展,隧道交通已經(jīng)變得越來越重要,而針對隧道消防安全問題,目前的研究仍存在不足[1]。周慶等研究發(fā)現(xiàn),在很多封閉環(huán)境,消防人員很難接近火源,若不能及時(shí)撲滅火源,大量濃煙在隧道內(nèi)積聚,將嚴(yán)重危及滅火人員和周圍居民的生命與財(cái)產(chǎn)安全,因此第一時(shí)間發(fā)現(xiàn)火情是控制和消滅火災(zāi)的最佳時(shí)機(jī)[2]。鮑明松等設(shè)計(jì)的消防偵查滅火機(jī)器人雖然可以進(jìn)入火災(zāi)現(xiàn)場,但應(yīng)用場景為隧道內(nèi)時(shí),該履帶式滅火機(jī)器人的效率低下,不能滿足時(shí)效性的要求[3]。在隧道監(jiān)測與控制方面,曹曉鈺等基于STM32主芯片設(shè)計(jì)了隧道內(nèi)實(shí)時(shí)監(jiān)控系統(tǒng),但該設(shè)計(jì)僅用于監(jiān)視,并未真正實(shí)現(xiàn)控制功能[4]。
本文以隧道懸掛式軌道滅火機(jī)器人為載體,以隧道內(nèi)滅火為應(yīng)用場景,基于物聯(lián)網(wǎng)[5-6],將軟件與硬件結(jié)合起來,對隧道懸掛式軌道滅火機(jī)器人遠(yuǎn)程控制和環(huán)境監(jiān)測系統(tǒng)的核心技術(shù)進(jìn)行研究,使用懸掛式軌道滅火機(jī)器人進(jìn)行遠(yuǎn)程滅火并對環(huán)境溫濕度進(jìn)行實(shí)時(shí)監(jiān)測,以提高火災(zāi)監(jiān)測救援的效率。
利用物聯(lián)網(wǎng)遠(yuǎn)程控制懸掛式軌道滅火機(jī)器人,可以實(shí)現(xiàn)實(shí)時(shí)滅火,提高隧道的安全性。其中:懸掛式軌道滅火機(jī)器人(圖1)懸掛在隧道上部的滑軌內(nèi);滑軌固定在隧道的頂部兩側(cè)。懸掛式軌道滅火器人所處環(huán)境一旦出現(xiàn)火情,報(bào)警系統(tǒng)會立即啟動(dòng),并將監(jiān)測數(shù)據(jù)傳向客戶端;客戶端可以根據(jù)隧道的長度控制懸掛式軌道滅火機(jī)器人沿著滑動(dòng)軌道快速移動(dòng);滅火機(jī)器人通過控制器調(diào)整火災(zāi)控制執(zhí)行器的側(cè)噴嘴位置和姿勢,進(jìn)行滅火,從而保證隧道滅火的及時(shí)、順利進(jìn)行。隧道懸掛式軌道滅火機(jī)器人在隧道內(nèi)的懸掛位置如圖2所示。
圖1 懸掛式軌道滅火機(jī)器人
圖2 機(jī)器人在隧道內(nèi)的懸掛位置
隧道消防遠(yuǎn)程控制和監(jiān)測系統(tǒng)基于物聯(lián)網(wǎng),對滅火機(jī)器人進(jìn)行控制并進(jìn)行環(huán)境監(jiān)測。相應(yīng)的物聯(lián)網(wǎng)框架由以下四部分組成:控制系統(tǒng)、監(jiān)測系統(tǒng)、服務(wù)器云平臺系統(tǒng)、個(gè)人電腦(Personal Computer,PC)端或手機(jī)端。物聯(lián)網(wǎng)體系架構(gòu)描述的是物聯(lián)網(wǎng)各部分的關(guān)聯(lián)關(guān)系,它是技術(shù)實(shí)施和系統(tǒng)實(shí)現(xiàn)的前提和基礎(chǔ)。對隧道現(xiàn)場的環(huán)境監(jiān)測過程可以描述為以隧道環(huán)境監(jiān)測數(shù)據(jù)為主線的物聯(lián)網(wǎng)基本架構(gòu)(圖3),即“物聯(lián)感知層-數(shù)據(jù)傳輸層-分析處理層-應(yīng)用服務(wù)層”。
圖3 以隧道環(huán)境監(jiān)測數(shù)據(jù)為主線的物聯(lián)網(wǎng)基本架構(gòu)
(1) 物聯(lián)感知層:在隧道環(huán)境中,根據(jù)隧道內(nèi)溫度的變化實(shí)時(shí)感知火源情況。通過物聯(lián)網(wǎng)接收隧道現(xiàn)場傳感器、監(jiān)控?cái)z像頭等感知設(shè)備反饋的數(shù)據(jù),實(shí)現(xiàn)對整體環(huán)境監(jiān)測要素的互聯(lián)互感與數(shù)據(jù)采集,以確保對隧道環(huán)境多源信息的實(shí)時(shí)獲取。
(2) 數(shù)據(jù)傳輸層:將隧道內(nèi)環(huán)境數(shù)據(jù)、設(shè)備運(yùn)行參數(shù)等上傳到服務(wù)器,實(shí)現(xiàn)對隧道現(xiàn)場監(jiān)測數(shù)據(jù)的穩(wěn)定傳輸與運(yùn)用。
(3) 分析處理層:針對信號強(qiáng)度低、存在遮擋與覆蓋的隧道特殊環(huán)境,分析處理層能實(shí)時(shí)進(jìn)行數(shù)據(jù)校驗(yàn)和平滑,及時(shí)跟蹤數(shù)據(jù)的變化,并能在數(shù)據(jù)超出設(shè)定范圍時(shí)中斷對原始數(shù)據(jù)的采集。
(4) 應(yīng)用服務(wù)層:利用監(jiān)控設(shè)備提供隧道的實(shí)時(shí)全息數(shù)字化展示、可視化管理、環(huán)境實(shí)時(shí)監(jiān)控等服務(wù),在多種可視化終端上實(shí)現(xiàn)對隧道環(huán)境現(xiàn)場透明化、實(shí)時(shí)化和準(zhǔn)確的管理與控制。
在隧道消防遠(yuǎn)程控制和監(jiān)測系統(tǒng)中,用戶客戶端指電腦或手機(jī)瀏覽器;服務(wù)器包括隧道內(nèi)的服務(wù)器和云端服務(wù)器;隧道客戶端為滅火機(jī)器人及其搭載的溫濕度傳感器、攝像頭等硬件設(shè)備??蛻舳?服務(wù)器-客戶端結(jié)構(gòu)如圖4所示。
圖4 客戶端-服務(wù)器-客戶端結(jié)構(gòu)
現(xiàn)場設(shè)備之間的通信通過訪問終端服務(wù)器的云平臺來實(shí)現(xiàn)。滅火機(jī)器人搭載的溫濕度傳感器和攝像頭用于檢測及收集實(shí)時(shí)數(shù)據(jù),并將數(shù)據(jù)通過服務(wù)器實(shí)時(shí)反饋給PC或手機(jī)客戶端瀏覽器,從而達(dá)到在客戶端上展示視頻信息、發(fā)送控制命令以及進(jìn)行遠(yuǎn)程操作的目的。
在監(jiān)測過程中,現(xiàn)場檢測系統(tǒng)通過所搭載溫濕度傳感器、攝像頭等硬件設(shè)備,將現(xiàn)場數(shù)據(jù)實(shí)時(shí)傳輸給STM32F103開發(fā)板;開發(fā)板通過搭建的物聯(lián)網(wǎng)框架將數(shù)據(jù)傳輸給用戶客戶端,并能通過網(wǎng)頁端顯示數(shù)據(jù)。數(shù)據(jù)傳輸層通過以太網(wǎng)傳輸數(shù)據(jù),能夠確保數(shù)據(jù)的安全性、完整性和準(zhǔn)確性。
隧道消防遠(yuǎn)程控制和監(jiān)測系統(tǒng)通過客戶端來遠(yuǎn)程控制滅火機(jī)器人的運(yùn)動(dòng)。現(xiàn)場有多種設(shè)備,數(shù)據(jù)量龐大,應(yīng)采取設(shè)定初值的方式進(jìn)行數(shù)據(jù)采集,即所檢測的溫濕度數(shù)據(jù)達(dá)到一定限值時(shí),系統(tǒng)應(yīng)啟用中斷程序,自動(dòng)發(fā)送一段已設(shè)置的指令,用以提醒操作人員手動(dòng)操控隧道懸掛式軌道滅火機(jī)器人。當(dāng)操作人員按下操作按鈕時(shí),客戶端和服務(wù)器能夠進(jìn)行網(wǎng)絡(luò)通信??蛻舳撕头?wù)器是通過寫入Socket(它是一種底層鏈接)字節(jié)流進(jìn)行通信的[7]。在操作人員按下操作按鈕時(shí),系統(tǒng)會利用所配備的設(shè)備將Socket指令發(fā)送到本地路由器,對本地路由器進(jìn)行配置,并通過485總線傳輸用于控制機(jī)器人的行動(dòng)指令,從而實(shí)現(xiàn)遠(yuǎn)程控制滅火機(jī)器人的移動(dòng)和滅火動(dòng)作。
本文整體系統(tǒng)的設(shè)計(jì)以Wifi模塊作為通信模塊。該模塊的主要功能是將傳感設(shè)備、控制設(shè)備和監(jiān)測設(shè)備接入互聯(lián)網(wǎng)[8]。采用AT(Attention)指令對Wifi模塊進(jìn)行的初始化實(shí)驗(yàn)證明,Wifi模塊能夠?qū)?shù)據(jù)進(jìn)行雙向傳輸。本文將網(wǎng)絡(luò)調(diào)試助手的服務(wù)端用搭建的服務(wù)器取代,利用客戶端瀏覽器發(fā)送相應(yīng)的控制指令,并通過服務(wù)器向Wifi模塊發(fā)送數(shù)據(jù);通過Keil5將控制指令轉(zhuǎn)化成控制電機(jī)驅(qū)動(dòng)的程序,實(shí)現(xiàn)對電機(jī)的驅(qū)動(dòng),進(jìn)而實(shí)現(xiàn)PC端或手機(jī)端對懸掛式軌道滅火機(jī)器人的遠(yuǎn)程控制?;谖锫?lián)網(wǎng)搭建的滅火機(jī)器人控制系統(tǒng)的結(jié)構(gòu)如圖5所示。
圖5 滅火機(jī)器人控制系統(tǒng)的結(jié)構(gòu)
物聯(lián)網(wǎng)運(yùn)行過程如圖6所示。物聯(lián)網(wǎng)設(shè)備的互聯(lián)和通信非常重要。物聯(lián)網(wǎng)系統(tǒng)需以無線通信方式收集和傳輸環(huán)境溫濕度信息,而隧道失火情況不可預(yù)測,在預(yù)先分配各種火災(zāi)探測傳感器的情況下,應(yīng)對物聯(lián)網(wǎng)通信路由進(jìn)行優(yōu)化,使物聯(lián)網(wǎng)系統(tǒng)能有效、及時(shí)地接收網(wǎng)絡(luò)數(shù)據(jù)。
圖6 物聯(lián)網(wǎng)運(yùn)行過程
本文利用Java軟件的Socket長鏈接技術(shù)實(shí)現(xiàn)客戶端-服務(wù)器-客戶端結(jié)構(gòu)的通信,首先利用IDEA軟件,以Tomcat打開Application Servers的方式啟動(dòng)服務(wù)器;然后輸入瀏覽器的地址,顯示遠(yuǎn)程調(diào)試助手界面;最后打開由上位機(jī)設(shè)置的串口調(diào)試助手,使串口調(diào)試助手通過上位機(jī)將參數(shù)設(shè)置成客戶端模式。
完成基本的軟件及硬件配置后,點(diǎn)擊鏈接服務(wù)器按鈕,通信系統(tǒng)通過Tomcat將以.jsp文件提交的信息傳輸給客戶端,指定窗口顯示“服務(wù)器啟動(dòng)、開始鏈接服務(wù)器、客戶端向服務(wù)器發(fā)起鏈接、服務(wù)端收到客戶端鏈接”。這說明客戶端瀏覽器與搭建的服務(wù)器鏈接成功。此時(shí),瀏覽器界面跳轉(zhuǎn)到鏈接成功界面(該界面上有6個(gè)控制按鈕和一個(gè)刷新界面按鈕)。
(1) 用網(wǎng)絡(luò)調(diào)試助手設(shè)置好IP地址和端口號(與Java軟件中設(shè)置的內(nèi)容相同)。隧道環(huán)境監(jiān)測需要將隧道環(huán)境數(shù)據(jù)傳遞到用戶客戶端,在通信實(shí)驗(yàn)時(shí),可采用網(wǎng)絡(luò)調(diào)試助手將一段數(shù)字如“1234”傳輸?shù)椒?wù)器,若服務(wù)器的運(yùn)行串口顯示出客戶端收到服務(wù)器返回的“1234”,則說明服務(wù)器返回成功。在數(shù)據(jù)傳輸?shù)椒?wù)器后,服務(wù)器利用Socket長鏈接功能再將數(shù)據(jù)傳遞到Web的JSP(Java Server Pages)動(dòng)態(tài)頁面上[9],點(diǎn)擊“0”刷新數(shù)據(jù),數(shù)據(jù)“1234”就呈現(xiàn)在界面上,表明客戶端與瀏覽器鏈接的模擬實(shí)驗(yàn)取得成功。
(2) 點(diǎn)擊任意按鈕,如點(diǎn)擊“1”按鍵,并預(yù)設(shè)按鍵數(shù)據(jù)為“001”??蛻舳藶g覽器將數(shù)據(jù)傳遞給搭建的服務(wù)器,服務(wù)器界面顯示“服務(wù)器:001”。在客戶端收到服務(wù)器的返回?cái)?shù)據(jù)“001”后,服務(wù)器通過以太網(wǎng)模塊將數(shù)據(jù)傳輸?shù)酱谡{(diào)試助手中。此時(shí),客戶端瀏覽器、搭建的服務(wù)器和串口調(diào)試助手會形成一個(gè)完整的系統(tǒng)。這證明軟件與硬件STM32F103開發(fā)板的鏈接成功。實(shí)驗(yàn)中多次點(diǎn)擊不同按鈕,相應(yīng)數(shù)據(jù)全部發(fā)送成功。
(3) 為說明JSP的典型應(yīng)用,本文建立了JSP的運(yùn)行環(huán)境(只需安裝支持JSP的Web服務(wù)器或應(yīng)用服務(wù)器即可),并以JSWDK12作為Web服務(wù)器。該服務(wù)器本身能支持JSP,不需另加JSP引擎。遠(yuǎn)程操控助手界面如圖7所示。
圖7 遠(yuǎn)程操控助手界面
(4) 在用Socket長鏈接功能在手機(jī)端或PC端實(shí)現(xiàn)服務(wù)器的啟動(dòng)以及遠(yuǎn)程控制時(shí),本文首先利用JSP和HTML(Hyper Text Markup Language)編寫制作網(wǎng)頁界面,然后通過點(diǎn)擊客戶端按鈕進(jìn)行數(shù)據(jù)的無線傳輸,完成遠(yuǎn)程控制。相應(yīng)的客戶端控制界面如圖8所示。利用手機(jī)端或PC端可以給Wifi模塊發(fā)送相關(guān)的控制指令。實(shí)驗(yàn)中,設(shè)置的指令“1”為打開應(yīng)急燈;“2”為關(guān)閉應(yīng)急燈;“3”為打開報(bào)警器;“4”為關(guān)閉報(bào)警器;“5”為步進(jìn)電機(jī)正轉(zhuǎn),滅火機(jī)器人向左移動(dòng);“6”為步進(jìn)電機(jī)反轉(zhuǎn),滅火機(jī)器人向右移動(dòng);“7”為滅火機(jī)器人停止移動(dòng)。至此,手機(jī)端或PC端利用物聯(lián)網(wǎng)無線控制硬件的系統(tǒng)功能已基本實(shí)現(xiàn)。
圖8 客戶端的控制界面
(5) 通過Java語言搭建服務(wù)器,利用Web和HTML制作系統(tǒng)的前端網(wǎng)頁,并以Wifi模塊實(shí)現(xiàn)數(shù)據(jù)和指令的無線傳輸??蛻舳艘员韱涡问綄?shù)據(jù)和指令發(fā)送到服務(wù)器,服務(wù)器接收數(shù)據(jù)和指令并通過網(wǎng)絡(luò)轉(zhuǎn)串口形式將之傳輸?shù)絊TM32F103開發(fā)板,開發(fā)板根據(jù)接收的信息向應(yīng)急燈、報(bào)警器和步進(jìn)電機(jī)發(fā)送控制指令,實(shí)現(xiàn)數(shù)據(jù)從客戶端瀏覽器到服務(wù)器再到開發(fā)板的正向傳輸。在溫濕度傳感器將采集的數(shù)據(jù)通過Wifi模塊發(fā)送到服務(wù)器后,服務(wù)器能根據(jù)相應(yīng)的指令,把這些數(shù)據(jù)反饋到客戶端瀏覽器,實(shí)現(xiàn)基于物聯(lián)網(wǎng)對滅火機(jī)器人的控制。
(6) 為了測試所設(shè)計(jì)隧道懸掛式軌道滅火機(jī)器人遠(yuǎn)程控制和監(jiān)測系統(tǒng)的性能,本文首先啟動(dòng)系統(tǒng)的服務(wù)器,進(jìn)入登錄界面;然后輸入賬號、密碼和選定區(qū)域的名稱;再點(diǎn)擊鏈接服務(wù)器按鈕;最后,服務(wù)器會收到相應(yīng)的消息,指定窗口中顯示服務(wù)器已收到客戶端鏈接內(nèi)容,數(shù)據(jù)接收成功。這說明系統(tǒng)通過手機(jī)端或PC端無線控制硬件的功能已經(jīng)實(shí)現(xiàn)。
(7) 在驗(yàn)證系統(tǒng)對隧道內(nèi)環(huán)境溫濕度的監(jiān)測功能時(shí),首先鏈接服務(wù)器,然后打開隧道懸掛式軌道滅火機(jī)器人遠(yuǎn)程控制和監(jiān)測系統(tǒng)的監(jiān)測界面,界面中THI(溫濕度指數(shù))位置會顯示現(xiàn)場測試數(shù)據(jù)(溫度:8 ℃,濕度:60%)。若對現(xiàn)場溫濕度數(shù)據(jù)進(jìn)行持續(xù)觀察,并嘗試改變現(xiàn)場的溫濕度,則溫度和濕度數(shù)據(jù)會及時(shí)地被返給服務(wù)器,同時(shí),服務(wù)器能成功地通過指定界面實(shí)時(shí)接收并顯示現(xiàn)場數(shù)據(jù)(圖9)。
圖9 服務(wù)器通過指定界面接收并顯示的現(xiàn)場返回溫濕度數(shù)據(jù)
本文設(shè)計(jì)的隧道懸掛式軌道滅火機(jī)器人遠(yuǎn)程控制和監(jiān)測系統(tǒng),不僅實(shí)現(xiàn)了對滅火機(jī)器人運(yùn)行狀態(tài)的多參數(shù)實(shí)時(shí)監(jiān)測,而且實(shí)現(xiàn)了利用客戶端對機(jī)器人的遠(yuǎn)程控制。本文方法融合了機(jī)器人技術(shù)、物聯(lián)網(wǎng)和計(jì)算機(jī)軟件開發(fā)技術(shù),通過實(shí)驗(yàn)證明了所設(shè)計(jì)系統(tǒng)在隧道滅火中的實(shí)用性。