楊延濤,李飛龍,王虎
(安徽理工大學 電氣與信息工程學院,安徽 淮南 232001)
隨著我國經濟社會的迅猛發(fā)展和現代化程度的不斷提高,各種各樣的機器人逐步進入并且改變著人們的生活。近年來,消防機器人也被應用到人們的生產和生活中,越來越多地出現在各種火災救援現場。消防機器人在滅火過程中發(fā)揮著十分重要的作用,可以作為消防人員的重要輔助手段,甚至可以完全代替消防人員進入有毒、缺氧、易爆等惡劣環(huán)境中進行滅火和救援,在一定程度上保障了消防人員在火災救援過程中的生命安全[1],因此,對于自主消防機器人的研究具有十分重要的意義。
目前的室內消防,主要是以固定的消防噴頭配合在室內安裝的各種傳感器為主,這種方法成本較低、便于實現,但也存在消防噴頭噴水面積較大且難以控制,火場火源的定位準確度不高,無法對火場煙氣進行探測等一系列問題[2]。其他的室內消防設備,如滅火器、室內消火栓等設備自主化和智能化程度較低,完全依靠人工進行操作,存在安全隱患,并且無法進行火災實時監(jiān)測,缺點較多。
本文針對目前室內消防存在的問題,設計開發(fā)了一款以MiniPC和STM32F103作為控制系統(tǒng),結合光照傳感器、氣敏式煙霧傳感器、溫度傳感器和紅外熱成像模組等模塊的室內自主消防機器人。基于WIFI信道狀態(tài)信息(CSI),通過建立的指紋庫和KNN算法,實時監(jiān)測室內是否發(fā)生火災,并且CSI數據處理計算機與消防機器人的上位機聯(lián)網,將火災發(fā)生的位置信息發(fā)送給消防機器人;消防機器人通過UWB定位技術和全局(RRT)、局部(A*)路徑規(guī)劃算法實現了自身定位導航和自主移動;根據紅外熱成像模組拍攝的圖像,采用YOLO算法,實現了火焰的快速識別和準確定位;多種傳感器可對消防機器人所在的火場環(huán)境(如:溫度、煙氣等)進行探測,并及時反饋給遠程客戶中心。
該自主消防機器人由火災位置感知系統(tǒng)、機器人定位系統(tǒng)、消防機器人本體和遠程客戶中心四部分組成,整個系統(tǒng)結構如圖1所示。
圖1 機器人系統(tǒng)結構圖
火災位置感知系統(tǒng)由兩臺配置Intel 5300NIC無線網卡的計算機和路由天線組成,用于收集處理WIFI的信道狀態(tài)信息(CSI),火災位置感知系統(tǒng)采用監(jiān)控模式,對收集到的CSI信號進行處理分析,可得到火災發(fā)生的位置信息。
消防機器人定位系統(tǒng)由室內的無線基站(Anchor)和安裝于機器人本體的定位標簽(Tag)組成,通過UWB技術的TDOA定位分析可對機器人進行定位。
遠程客戶中心用于接收機器人發(fā)送的火場環(huán)境信息(如溫度、光照強度、煙氣濃度等)。
消防機器人本體包括紅外熱成像模組、多種傳感器、消防水槍、電氣開關、電源、水泵驅動模塊、UWB模塊、DC電機和DC電機驅動模塊??刂颇K由上位機MiniPC與下位機STM32F103兩部分組成,控制模塊將該消防機器人協(xié)調成一個完整的系統(tǒng),通過相關算法對模塊及功能進行控制實現,機器人本體設計如圖2所示。
圖2 系統(tǒng)總體設計框圖
如上圖所示:消防機器人依靠UWB模塊對自身進行定位,結合室內地圖信息并通過RRT算法規(guī)劃出合理行駛路徑,下位機STM32F103通過L298N模塊驅動電機運轉,閉環(huán)自動控制技術 PID 算法控制消防機器人的運動方向和行駛速度;消防機器人上位機接收到火災位置感知系統(tǒng)發(fā)送的位置信號后,立刻從待機休眠狀態(tài)中被喚醒,并啟動報警裝置,發(fā)出蜂鳴聲;機器人在行駛途中通過超聲波傳感器不斷檢測周圍障礙物信息,通過A*避障算法實現局部避障,最后到達著火點;消防機器人到達著火點后便停止行進,利用紅外熱成像模組拍攝的火焰圖像,通過YOLO算法的卷積神經網絡對火焰圖像進行特征提取,從而實現對目標火焰的精準快速定位[3]。鎖定火焰之后主控芯片發(fā)出指令,通過PID算法控制水槍對火焰準確地噴水。
該自主消防機器人的控制系統(tǒng)由上位機和下位機兩部分組成,上位機采用MiniPC,裝載Ubuntu16.04系統(tǒng),配置ROS Kinetic運行環(huán)境,主要用于圖像處理、路徑規(guī)劃、自主導航等功能。下位機采用嵌入式芯片STM32F103,主要用于傳感器數據的接收處理以及對電機、水泵等模塊的驅動控制。上位機與下位機之間通過串口數據線相連,實現了數據的傳輸。
STM32F103芯片作為各功能部件的直接控制核心,具備較高的實時處理速度和處理能力。該芯片以ARM構架的cortex-M3為核心,CPU的頻率可達72MHz,供電電壓2.0V~3.6V,內部集成了2I C總線、SPI總線、USART接口、USB接口,擁有多個I/O口及大容量的片內FLASH存儲器[4],I/O口作為輸入可用于讀取檢測端口和各傳感器的數據,作為輸出可用于驅動電機和水泵。只需通過編譯器對程序進行燒寫,就可以實現對整個系統(tǒng)的控制功能,具有接口簡單、成本低、功耗低等多重優(yōu)點,STM32F103芯片的引腳如圖3所示。
圖3 ST M32F103引腳圖
本設計借助于廣泛應用的Wi-Fi技術,基于信道狀態(tài)信息(CSI)對室內火災位置進行感知,其無源定位算法不需要目標攜帶相關設備即可實現定位,成本較低且容易實現。該技術的原理是,在離線階段需要對目標區(qū)域內已知位置的樣本數據進行采集和預處理,將其位置信息和特征情況作為指紋信息,這些指紋信息構成一個指紋地圖,在線定位階段只需將采集待測點特征值與指紋中的信號特征值進行比對,然后通過數據處理和相關算法即可獲得位置信息。
在室內布置兩臺計算機作為信號的接收端和發(fā)送端,該計算機必須配置Intel 5300NIC無線網卡,操作系統(tǒng)為Ubuntu11.04,兩臺計算機均需安裝CSI-tools工具,用于收集WiFi信號。并且配置三個路由天線用于接收信號,一個路由天線用于發(fā)送信號,系統(tǒng)工作采用監(jiān)控模式,發(fā)送端工作在2.4GHz頻段,以每秒100個數據包的發(fā)包頻率向接收端發(fā)送數據,接收端通過接收天線采集信號,并且由接收端的計算機處理數據。首先通過卡爾曼濾波去噪,然后基于信號的幅度對特征矩陣進行提取,最后將特征矩陣輸入至KNN分類器[5],實現火災位置的感知,系統(tǒng)工作方式如圖4所示。感知到火災位置后,計算機將位置信息發(fā)送給消防機器人上位機MiniPC,用于機器人自主規(guī)劃行駛路徑。
圖4 CSI 定位系統(tǒng)工作圖
本設計選用HC-SR04超聲波傳感器,可對距離2cm~400cm的障礙物進行非接觸式感知和測距,測距精度可達毫米級別。HC-SR04的電路原理如圖5所示,該模塊共有4個引腳,分別是:供電電源引腳VCC、控制端Trig、接收端Echo和公共接地端GND。該模塊采用I/O口觸發(fā)測距模式,通過Trig引腳發(fā)送一個脈沖寬度大于10sμ的高電平,在Echo接收口等待高電平輸出,有高電平輸出后即可啟動主控芯片內的定時器,待該端口電平變低時結束計時,根據所得時間差即可計算機器人與障礙物之間的距離。
圖5 超聲波傳感器電原理圖
STM32F103與超聲波傳感器直接相連,獲取到機器人障礙物信息后,STM32通過串口將信息上傳給上位機,上位機通過A*避障算法對機器人行駛路徑做出調整,并將指令發(fā)送給下位機;同時,下位機STM32通過調整電機的轉向、轉速等實現消防機器人的轉向和調速。為提高避障能力,可在消防機器人車體適當位置安裝多個超聲波傳感器。
目前國內外的研究主流是通過視覺傳感器對火災進行檢測,紅外熱像儀被廣泛應用于各種火災檢測和火焰識別過程中。紅外熱像儀拍攝的是物體的紅外熱輻射分布,對高溫物體成像效果較好,具有較好的云霧穿透性能[6],不受光照條件影響,適合在光照較弱,煙氣較重的環(huán)境下對火災進行檢測。
該消防機器人配置1個紅外熱成像模組,安裝在機器人頂部靠前位置,選用美國FLIR公司生產的Lepton紅外熱成像模組,實物如圖6所示。該紅外熱成像模組水平視場角為57°,可輸出分辨率160 ×120熱成像圖,對于溫度的分辨率可達0.05℃,靈敏度較高。該模塊可以將拍攝到的紅外圖像上傳至上位機,上位機采用深度學習的目標識別框架YOLOv3可實現火焰的快速識別定位[7]。
圖6 Lept on紅外熱成像模組實物圖
煙霧傳感器。本設計采用MQ-2型煙霧傳感器,該傳感器是一種多氣體探測器,可用于煙霧、液化氣、丙烷、氫氣等氣體的檢測。MQ-2型煙霧傳感器可以將煙霧濃度這種非電信號轉換為電信號,當環(huán)境中的煙霧濃度增大時,傳感器中半導體材料的電導率下降,對應的輸出電阻減小、輸出電壓增大。但是需要將這種模擬信號通過A/D轉換電路轉化為能被STM32F103識別的數字信號,才可以輸出精確的煙霧濃度值。本設計選用ADC0832作為A/D轉換電路,MQ-2和ADC0832的電路連接如圖7所示,MQ-2的4號引腳和6號引腳輸出電壓值給ADC0832,經過A/D轉換后在輸出端DO將數據傳送給主控芯片STM32。
圖7 煙霧檢測模塊電原理圖
溫度傳感器。本設計采用DS18B20數字式溫度傳感器,測溫范圍可達–55℃~+125℃,滿足室內火災的測溫要求。該傳感器使用集成芯片,采用單總線技術,降低了其他因素的干擾,因此測量精度高,并且可以直接將溫度這種非電信號直接轉換為數字信號供主控芯片STM32F103處理,結構簡單。DS18B20的電路連接如圖8所示,該模塊共有3個引腳,分別是:供電電源引腳VCC、公共接地端GND、數字信號輸入/輸出引腳DQ。輸出端2號引腳與下位機STM32F103直接相連,用于傳送溫度信息。
圖8 溫度檢測模塊電原理圖
光照傳感器。本設計采用GY-30數字光照傳感器,GY-30內置ROHM公司原裝BH1750FVI芯片,內部集成了光電轉換、A/D轉換和2I C信號轉換等電路的芯片,工作電壓3~5V,能檢測0~65535Lx的光照強度,有較高的靈敏度。由于GY-30傳感器其內部自帶16位A/D轉換器,所以可以直接連接STM32芯片,并上傳檢測到的光照數據。GY-30的電路連接如圖9所示,該模塊共有5個引腳,分別是:供電電源引腳VCC、公共接地端GND、I2C總線時鐘引腳SCL、I2C總線數據引腳SDA、I2C地址線引腳ADDR[8],SCL、SDA引腳和STM32F103芯片直接相連,用于傳送光照強度信息。
圖9 光照檢測模塊電原理圖
煙霧傳感器、溫度傳感器和光照傳感器構成消防機器人的多傳感器模塊,該模塊安裝在機器人車體正前方,便于對著火點的煙霧濃度、溫度和光照情況進行探測。當消防機器人到達著火地點后,即可啟動該模塊,收集到相關的信息后直接傳送給STM32F103,STM32芯片再通過連接的WIFI模塊將信息發(fā)送給遠程客戶中心,便于消防人員或室內居民及時了解火災情況,可避免因有毒有害氣體對人體造成的不必要的傷害。
UWB技術又稱超寬帶技術,是一種新興的室內定位技術。相較于超聲波定位、紅外線定位和射頻定位等其他定位技術,UWB技術具有更高的精確性,其定位精度可達到厘米級別,非常適合室內靜止或移動物體的定位及追蹤。
本設計采用Decawave公司的DW1000芯片,該芯片是全球首款完全集成UWB芯片,定位精度可小于10cm,性能優(yōu)越。消防機器人需要安裝DW1000組成的定位標簽(Tag),并且在室內機器人活動區(qū)域安裝若干個DW1000組成的無線定位基站(Anchor),用于檢測“Tag”信號并從遠處發(fā)送,如圖10所示。STM32F103與DW1000芯片之間通過SPI接口連接,可以對該定位模塊進行配置并通訊[9],從而完成數據的記錄、收集和發(fā)送。STM32F103把收到的實時位置數據通過以太網發(fā)送到上位機進行TDOA定位分析計算,實現了消防機器人的自主定位。
圖10 UWB 定位系統(tǒng)圖
電機是消防機器人移動的動力來源,由于STM32F103的I/O輸出電流不足以驅動電機轉動,所以需要電機驅動這種功率放大模塊。本設計采用L289N雙H橋集成電路作為DC電機的驅動模塊,通過7V直流電源供電,能夠同時對兩個DC電機進行驅動,該驅動芯片輸出電流大、驅動能力強、性能優(yōu)越[10-11],其電路原理圖如圖11所示。其中,IN1-IN4均連接主控芯片,通過控制輸入端口IN1-IN4的信號高低來控制兩電機正轉、反轉和停止,輸出端口OUT1和OUT2連接電機1,OUT3和OUT4連接電機2,電機的正轉、反轉和停止實現了小車的前進、后退、轉向和制動。ENA、ENB分別是OUT1、OUT2和OUT3、OUT4的使能端,高電平有效,在ENA和ENB輸入PWM(脈沖寬度調制)信號即可實現對電機的調速,從而實現小車行駛速度的改變。
圖11 L 298N驅動電路圖
該機器人下位機系統(tǒng)程序設計采用Keil μVision5集成開發(fā)環(huán)境與STC-ISP程序下載工具,對消防機器人的各功能進行編程與調試。
消防機器人系統(tǒng)的工作流程如圖12所示。由圖可知,消防機器人上位機接收到火災位置感知系統(tǒng)的計算機發(fā)送的位置信號之后,立即啟動電機和報警系統(tǒng),發(fā)出蜂鳴聲。首先,上位機控制消防機器人根據火災位置調整大致的運動方向,上位機根據火災位置信息和室內地圖合理規(guī)劃出行駛路徑,電機驅動模塊驅動電機轉動,消防機器人開始運動。與此同時,下位機STM32開始監(jiān)控超聲波傳感器,若超聲波傳感器檢測到消防機器人前方存在障礙物,則消防機器人進入避障子程序,用以躲避障礙物,避障子程序流程如圖13所示,PID算法對機器人運動方向和行駛速度進行控制。到達火災發(fā)生位置后,停在安全距離,啟動紅外熱成像模塊,通過YOLO算法鎖定火焰位置,之后啟動水泵,PID算法控制水槍對準火焰進行噴水,直到火焰完全熄滅。機器人在啟動水泵滅火的同時,位于消防機器人車體前方的多傳感器模塊開始收集火災區(qū)域的各種環(huán)境信息,如溫度、光照強度、煙霧濃度等,并通過WIFI模塊發(fā)送到遠程客戶中心,當確認室內著火點全部被撲滅之后,機器人返回原地待命。
圖13 避障子程序設計流程圖
該消防機器人系統(tǒng)采用YOLO(You Only Look Once)算法實現對火焰的識別,YOLO算法是一種直接采用回歸(Regression)思想進行深度學習對目標的檢測方法,用一個單獨的卷積神經網絡(CNN)模型實現端到端(end-to-end)的目標檢測[12],YOLO算法目標識別過程如圖14所示。
圖14 YOL O算法目標識別過程圖
利用YOLO算法定位的基本思想是,將紅外熱像模組采集到的圖像先進行歸一化尺寸,然后卷積神經網絡(CNN)將其分割成S×S個相等的網格,當被檢測目標的中心恰好落入到某個網格中時,這個網格就用來負責預測該檢測目標。在檢測過程中,檢測目標落入的網格需要預測B個回歸邊框置信度Confidence最終值,Confidence的定義為[13]
其中,Pr(Object)用來衡量該網格中是否存在檢測目標,如果包含,則Pr(Object) = 1,反之Pr(Object) = 0,IOU用來衡量該網格回歸邊框和待檢測物體真實區(qū)域的重疊程度,重疊部分的面積數據用輸入圖像區(qū)域的像素面積歸一化至[0,1]區(qū)間。同時,檢測目標落入的網格還需要預測出C 個物體屬于某種類別的概率Pr(Classi|Object),Pr(Classi|Object)表示落入該網格中的物體屬于的類別及其概率。將回歸邊框置信度Confidence與概率值Pr(Classi|Object)相乘可以得出類別置信度(class-specific confidence scores)為
該消防機器人采用YOLO算法進行火焰定位的具體過程如圖15所示。
圖15 YOL O算法火焰定位流程圖
該消防機器人系統(tǒng)采用UWB的TDOA定位算法實現自主定位,TDOA定位算法是利用多個基站到標簽之間的距離差形成的雙曲線方程組來算出標簽的位置坐標,這種定位方法可以在基站和標簽時間不同步的情況下完成定位,因此TDOA定位算法相較于其他算法有更強的實用性。
UWB的TDOA定位算法原理如圖16所示(以三個定位基站為例),在某區(qū)域中有Q個基站,其中的某個基站(假設為基站1)作為參考基站,并且已知基站i(i=1,2,3,…,Q)的位置為(xi,yi),假設移動標簽(Tag)的位置為(x,y),基站i與移動標簽的距離為di。根據信號到達參考基站1和其他基站的時間差值Δt及信號在空氣中傳播的速度vUWB算出求出移動標簽與各個基站之間的距離差,以這個距離差為長軸,兩個基站為焦點,可以建立雙曲線方程來求解移動標簽的位置,實現消防機器人的自主定位。
圖16 T DOA定位原理圖
在學校實驗室對該消防機器人進行了實驗測試,在實驗室配備了本文所述的相關設備,采用蠟燭模擬著火點,并且隨機在室內設計一些障礙物,對機器人自主定位導航、自主避障、火災位置感知、火焰鎖定及遠程客戶端協(xié)同工作進行了多次測試,測試內容及結果如表1所示。
表1 測試例及結果
測試結果表明,該機器人各模塊正常協(xié)調工作,可實現自動定位導航移動、自主避障規(guī)劃路徑、自主感知火源位置、自主鎖定火焰并進行噴水滅火,能更加智能、快速地完成室內消防滅火。
本文設計了一種新型室內自主消防機器人系統(tǒng),該機器人以MiniPC 和STM32F103 為控制核心,采用HC-SR04超聲波傳感器、Lepton紅外熱成像模組、L298N電機驅動芯片和DW1000芯片作為實現各功能的主要元器件。該機器人創(chuàng)新性地應用了計算機視覺、UWB室內定位技術和WIFI的CSI算法等技術,可實現對室內火災的及時監(jiān)測、自主導航移動、及時探測火場信息、準確定位火焰位置、自動噴水滅火等功能,在一定程度上彌補了當前室內消防存在的缺點和問題,提高了室內消防滅火的實時性、準確性、高效性和智能化程度,能夠在消防過程中起到重要的輔助作用,極大地保障了消防人員及室內居民的生命安全,具有一定的實用價值和推廣價值。