劉斌 陳剛 袁浩 李志海 陳磊 馬俐
(1.湖北物資流通技術(shù)研究所,湖北 襄陽 441002;2.襄陽市交通物流發(fā)展服務中心,湖北 襄陽 441099)
當前我國危化品倉庫大多采用堆垛碼放的方式進行存儲,雖然《常用危險化學品貯存通則》和《易燃易爆性商品儲藏養(yǎng)護技術(shù)條件》對危險化學品儲存堆垛的安全距離有嚴格的限制[1-2],然而在執(zhí)行中缺乏實時有效的監(jiān)管手段,倉儲過程中如果出現(xiàn)違規(guī)操作、存放位置錯誤等問題,很容易發(fā)生泄漏、爆炸、中毒等危害,對人力、財力、物力造成嚴重后果。
目前,針對?;穫}庫堆垛的距離監(jiān)測技術(shù)主要有視頻監(jiān)控、激光掃描和室內(nèi)定位3種[3]。視頻監(jiān)控技術(shù)價格低廉、易于安裝、應用廣泛,但視頻數(shù)據(jù)量大,人員易疲勞、很難實時監(jiān)控每路視頻[4]?;诩す鈷呙璧谋O(jiān)測方案需要大量的激光掃描裝置,設(shè)備安裝復雜,一旦激光被人員或貨物遮擋就會產(chǎn)生誤報數(shù)據(jù)[5-6]?;谑覂?nèi)定位的監(jiān)測技術(shù)可以通過在每個堆垛安裝定位標簽來獲取堆垛的位置信息,再結(jié)合堆垛位置及尺寸信息進行建模,從而判斷堆垛安全距離是否符合標準,實時監(jiān)測效果良好。
在各種室內(nèi)定位技術(shù)中超寬帶[7](UWB)定位技術(shù)復雜度低,頻譜功率密度小,定位精度高,是解決?;范讯馕恢帽O(jiān)測的有效手段。但是在?;穫}庫復雜的信道環(huán)境中,高頻信號衰減影響很大,定位誤差較高。
針對上述問題,本文首先提出了一種基于神經(jīng)網(wǎng)絡的Chan-Taylor混合定位算法來抑制危化品倉儲環(huán)境的非視距誤差及多徑傳播因素的影響,提高UWB定位精度,再結(jié)合堆垛的位置和尺寸信息實時還原?;穫}庫中貨物的擺放狀態(tài),最后搭建基于UWB的?;分悄軅}儲管理系統(tǒng)平臺,從而實現(xiàn)?;穫}庫堆垛距離的實時監(jiān)控、出入庫及信息管理等功能。
UWB定位系統(tǒng)主要有定位標簽、定位基站和定位引擎3部分組成。定位基站布設(shè)在?;穫}庫中固定位置,并使得任意時刻都有4個基站能接受到標簽發(fā)出的脈沖信號。?;啡霂鞎r綁定定位標簽,定位標簽向基站發(fā)送納秒級脈沖信號,基站接收到脈沖信號后通過相關(guān)運算得到信號的定位測量信息,定位引擎根據(jù)基站坐標和測量信息使用TDOA[8]算法計算出標簽的準確位置?;赨WB的?;穫}儲管理系統(tǒng)可通過定位標簽實現(xiàn)倉庫貨物、人員、設(shè)備的實時定位管理,?;范讯膺\動軌跡及距離的實時監(jiān)測,系統(tǒng)結(jié)構(gòu)如圖1所示。
UWB系統(tǒng)定位模塊采用STM32F105RCT6主控制器和DWM1000定位測距模塊搭建。DWM1000模塊是符合IEEE802.15.4-2011標準的UWB無線收發(fā)器模塊,時鐘可高達63.897 6 GHz,一個計數(shù)時間戳對應15.65 ps,具有極高的測距精度。
硬件電路包括STM32F105RCT6主控芯片最小系統(tǒng)電路、電源電路以及DWM1000模塊、WiFi數(shù)據(jù)傳輸模塊等外圍設(shè)備的連接電路,系統(tǒng)硬件框圖如圖2所示。
系統(tǒng)中DWM1000主要負責模塊間通信和時間戳的標記。待測節(jié)點通過輪詢方式與基站通信,完成測距功能。每次測量完成后,主基站通過網(wǎng)絡通信模塊將原始測量數(shù)據(jù)發(fā)送到主機,主機根據(jù)本文提出的定位算法完成對目標節(jié)點的定位。OLED模塊通過SPI接口與主控單元通信,并按照特定格式顯示標簽位置坐標。
在現(xiàn)有的UWB定位算法中,基于信號到達時間差(TDOA)的定位算法在室內(nèi)復雜環(huán)境下可以獲得更好的定位效果,并且只需要定位標簽發(fā)射一次UWB信號就可以完成系統(tǒng)定位,系統(tǒng)功耗低、精度高、容量大。然而,危險化學品倉庫中存在著大量如柱子、墻壁、堆垛等障礙物,導致庫內(nèi)的非視距和多徑傳播增加,降低了系統(tǒng)的定位精度。考慮到危險化學品倉庫的應用場景、超寬帶定位精度和危險化學品存放距離的要求,本文提出了一種基于神經(jīng)網(wǎng)絡的Chan-Taylor混合定位算法來抑制危化品倉儲環(huán)境的非視距誤差及多徑傳播因素的影響,提高UWB復雜環(huán)境下的定位精度。該算法流程圖如圖3所示。
該算法首先利用神經(jīng)網(wǎng)絡的非線性映射能力校正TDOA中的非視距誤差,然后利用Chan和Taylor混合定位算法估計標簽的位置,然后再次通過神經(jīng)網(wǎng)絡對標簽位置估計的結(jié)果進行最后修正,確保其在非視距環(huán)境下具有更高的定位精度。
本文首先通過BP神經(jīng)網(wǎng)絡[9]對基站TDOA測量值中的非視距誤差進行修正,使TDOA的測量值更接近視距環(huán)境下的測量值。圖4給出了在非視距環(huán)境下對4個基站提供的TDOA測量值進行校正的網(wǎng)絡模型。
輸入層由3個TDOA測量值構(gòu)成,神經(jīng)元數(shù)量為3,輸入向量表示為:
增加隱含層神經(jīng)元的數(shù)量可以提高系統(tǒng)精度,但系統(tǒng)復雜性也隨之增加。綜合考慮精度和系統(tǒng)復雜性的問題,根據(jù)Kolmogorov定理確定隱含層神經(jīng)元數(shù)量為7,隱含層傳遞函數(shù)采用值域位于-1和+1之間的雙曲正切函數(shù)tanh,即:
輸出層由3個經(jīng)過校正的TDOA值組成,神經(jīng)元數(shù)量為3,在輸出層采用Purelin線性函數(shù)輸出校正后的TDOA值,Purelin函數(shù)和輸出向量表示為:
網(wǎng)絡訓練采用批量學習方式,步驟如下:
1)通過線性函數(shù)將樣本輸入和輸出數(shù)據(jù)歸一化處理在[-1,1]區(qū)間。
2)網(wǎng)絡初始化,在[-1,1]區(qū)間隨機給定各層連接權(quán)值和閾值,并確定期望誤差和學習速率。
3)將歸一化的樣本輸入網(wǎng)絡,計算各層輸入和輸出。
4)根據(jù)網(wǎng)絡實際輸出和期望輸出計算網(wǎng)絡誤差,根據(jù)期望誤差判斷網(wǎng)絡誤差是否滿足要求,若滿足要求訓練結(jié)束,否則繼續(xù)。
5)誤差反向傳播,依次修正輸出層和隱含層的連接權(quán)值和閾值,返回步驟Ⅲ進行下一輪學習。
修正后的TDOA測量值需代入定位算法進行精確定位。Chan算法具有解析表達式解,在噪聲服從高斯分布的情況下,計算量小,定位精度高,可以達到克拉美羅下限[10](CRLB),用于室內(nèi)3維定位效果較好,但在非視距環(huán)境下,定位精度顯著降低。
泰勒級數(shù)展開算法(Taylor)是一種需要初始值的迭代算法,它使用前一次的計算結(jié)果作為本次迭代的初始值,并使用最小二乘法獲得的誤差解對迭代值持續(xù)修正,直到誤差低于設(shè)定閾值[11]。與Chan算法相比,泰勒算法在一定噪聲水平下可以獲得更準確的定位結(jié)果,但必須指定迭代初始值。如果初始值選擇不恰當,則算法可能無法收斂,無法進行定位。
在非高斯噪聲環(huán)境下,雖然Chan算法的定位精度大大降低,但算法定位結(jié)果在一定程度上反映了標簽位置和信號的一些特征,可以為泰勒算法提供更有價值的初始值。因此,本文首先使用Chan算法獲得初步位置結(jié)果,然后將初步定位結(jié)果作為泰勒算法的初始值,重新進行定位計算,以獲得更精確的定位結(jié)果。
系統(tǒng)最后再次利用BP神經(jīng)網(wǎng)絡對Chan-Taylor混合定位算法的定位結(jié)果進行修正,進一步提升定位精度。圖5顯示了對3維定位結(jié)果修正的BP神經(jīng)網(wǎng)絡模型。
輸入層由Chan-Taylor 3維定位結(jié)果組成,輸入向量可表示為:
輸入層隱含層神經(jīng)元數(shù)量和傳遞函數(shù)同TDOA測量值校正網(wǎng)絡。
輸出層由經(jīng)過校正的3維坐標值構(gòu)成,神經(jīng)元數(shù)量為3,采用Purelin線性輸出函數(shù),輸出向量為:
算法訓練步驟和TDOA測量值校正網(wǎng)絡相同。
為檢驗該算法定位性能,選取一間大小為10 m×5.4 m×3.2 m的小型庫房進行定位測試。在庫房中參考危化品倉庫區(qū)域中的堆垛區(qū)域與通道,以貨箱疊放作為堆垛模型進行算法測試。選取測試點后將UWB定位標簽放置在測試點上,利用激光測距儀得到測試點的實際坐標,然后經(jīng)系統(tǒng)定位算法計算得到測試點測量值,將測試坐標與實際坐標比較,評估該算法的定位精度和可靠性。
其中,誤差為實際坐標和測量坐標之間的歐氏距離。由表1可見,坐標誤差可穩(wěn)定在12 cm,可滿足?;穫}儲堆垛距離監(jiān)測的定位要求。
?;穫}庫管理系統(tǒng)不僅要包括基礎(chǔ)數(shù)據(jù)維護、進庫管理、出庫管理和庫存管理的功能,還要包括對危化品儲存環(huán)境和堆放間距的實時監(jiān)測功能。系統(tǒng)主要包括:系統(tǒng)管理模塊、基礎(chǔ)數(shù)據(jù)管理模塊,出入庫管理模塊、庫存管理模塊,信息查詢模塊、數(shù)據(jù)采集監(jiān)測模塊和報表管理模塊幾個部分,各個模塊的功能見下圖6。
表1 定位性能測試
系統(tǒng)管理模塊主要完成用戶信息管理,用戶權(quán)限管理、數(shù)據(jù)的恢復和備份、登錄日志等功能。
基礎(chǔ)數(shù)據(jù)管理模塊包括?;坊拘畔ⅲòㄎ;访Q、生產(chǎn)廠家、生產(chǎn)日期、有效期限、產(chǎn)品特性、注意事項、貯存要求等)、堆垛屬性信息、倉庫設(shè)置、貨位管理等基本信息的錄入功能。
出入庫管理模塊包括危化品信息采集、貨位分配、入庫管理、出庫設(shè)置等功能。
庫存管理模塊主要用來檢測?;返脑趲鞝顩r,以確定?;窋?shù)量、儲存參數(shù)等是否符合相關(guān)要求,并定時盤點?;返脑趲鞝顩r。
信息查詢模塊包括?;穫}庫的環(huán)境參數(shù)、安全距離監(jiān)控等數(shù)據(jù)的查看,以及?;烦鋈霂煨畔⒉樵兊裙δ?,并協(xié)助作業(yè)人員隨時了解?;穫}庫貯存情況。
數(shù)據(jù)采集監(jiān)測模塊負責危化品倉庫環(huán)境參數(shù)采集、堆垛距離監(jiān)測、標簽信息采集等功能,并按照設(shè)定閾值預警,以保證?;穫}儲的安全性。
報表管理模塊可以根據(jù)時間、類別等參數(shù)對?;烦鋈霂煊涗涍M行查詢統(tǒng)計,并統(tǒng)計危化品在庫信息情況。
危化品倉庫管理系統(tǒng)采用SQL Server數(shù)據(jù)庫設(shè)計,主要實現(xiàn)基礎(chǔ)信息管理、用戶信息管理、?;坊A(chǔ)信息管理、?;穬Υ嬉?、庫位設(shè)置等,部分數(shù)據(jù)庫邏輯關(guān)系設(shè)計表如下表2—表5。
表2 用戶信息
表3 危化品信息
系統(tǒng)采用C++語言基于Visual Stdio 2018環(huán)境編寫,系統(tǒng)堆垛距離監(jiān)測界面如圖7所示。在工具欄點擊堆垛監(jiān)測時,在界面右邊將實時顯示倉庫環(huán)境參數(shù)、堆垛的定位信息及堆垛的存儲要求,并將計算出的堆垛“五距”與服務器設(shè)置的“五距”閾值對比,當有堆垛貨物擺放方式不合格,超出了服務器中預設(shè)的危險品安全距離時,系統(tǒng)通過現(xiàn)場聲光報警和遠程短信報警等多種方式第一時間向倉庫管理人員或監(jiān)管部門發(fā)出預警信息,有效避免潛在事故的發(fā)生。
表4 存儲距離要求
表5 存儲環(huán)境要求
本文針對當前?;穫}儲過程中存在的問題,以DWM1000模塊為基礎(chǔ)構(gòu)建了UWB系統(tǒng)定位硬件平臺,提出了一種基于神經(jīng)網(wǎng)絡的Chan-Taylor混合定位算法來抑制?;穫}庫中的非視距誤差及多徑傳播因素的影響,提高了UWB系統(tǒng)的定位精度,最后基于Visual Stdio 2018環(huán)境采用C++語言完成了基于UWB的?;分悄軅}儲管理系統(tǒng)的開發(fā)。系統(tǒng)可通過定位標簽實現(xiàn)倉庫貨物、人員、設(shè)備的實時定位管理,?;范讯膺\動軌跡及距離的實時監(jiān)測,不僅可以有效提高危險化學品的安全管理水平,還可以有效減少?;吩趥}儲時安全事故的發(fā)生,有利于企業(yè)的管理和政府的監(jiān)管。