李朋偉 趙翰超 張鑫啟 彭際豪 周立俊 盧菁



摘要:隧道激光測距技術可以實現對隧道斷面的檢測以及必要的預警,常用的激光測距分析技術使用曲線擬合來對數據進行處理,易造成誤差。針對該問題,研究設計了激光測距數據分析平臺,利用Pymon對激光測距儀采集并存儲于Excel表格中的數據進行提取并導入MysQL數據庫中進行結構化存儲。平臺可對存儲的數據進行處理并繪制折線圖,對不同測量數據進行差值計算,通過對比分析數據變化情況,定位高危位置,并觸發預警。
關鍵詞:激光測距;結構化存儲;數據分析;MySQL;Python
中圖分類號:TP319 文獻標識碼:A 文章編號:1006-8228(2020)07-37-03
0引言
隨著中國城市化進程的加快,城市地下交通發展迅速。然而,中國是一個多地形地貌的國家,其地質導致的隧道安全問題不容小覷。隧道下臥軟土層受到長期振動會不斷軟化,從而導致隧道內壁發生整體沉降以及局部形變,嚴重影響隧道安全。針對既有線網安全監測的迫切需求,國內外有關機構進行著各種創新技術嘗試。
隧道斷面檢測技術按技術原理可分為:接觸式測量和非接觸式測量。國內外現有的隧道斷面檢測技術無法同時兼顧高速動態測量、高測量精度與高采樣速率。目前主流的隧道斷面檢測技術為隧道激光測距技術,通過激光測距裝置對隧道斷面內壁測量,獲得激光發射點與斷面監測點之間的距離,進而對數據進行處理,對隧道斷面的位移、沉降、形變進行檢測,確保隧道安全。采用激光測距方法對隧道斷面檢測是為克服人工隧道檢測帶來的效率低下、精確度低、數據不夠完整等缺點。但需要處理的數據量極其龐大,目前的系統缺少有效的存儲和數據分析的手段。
常用的激光測距技術使用曲線擬合的方式對激光測距傳感器所得到的數據進行比較。即數據以線形圖顯示每次測量的數據,同時對相鄰兩次數據曲線進行重合分析,如差異顯著則會觸發報警信息。若對多組數據進行同時擬合,多條曲線重合后難以辨認,嚴重影響了預警能力。
本文基于對激光測距傳感器所得數據進行分析,設計了一個基于隧道激光測距技術的數據分析處理系統。該系統儲存標準情況下激光測距傳感器的測量值,并將后期采集的數據存儲在數據庫中。系統可從數據庫中取得數據,對每次測量的數據與標準值進行差值計算,繪制對比圖分析數據,從而快速篩選形變量較大的位置,迅速確認高危管片所在位置,直觀精確地顯示預警信息。每次數據處理結果以數字形式直接儲存在數據庫中,方便下一次提取使用。
1系統設計
1.1系統功能框架
(1)系統采用Python語言編寫,使用了Spyder開發環境。Spyder是一個用于科學計算的并使用Python編程語言的集成開發環境。
(2)數據庫架構方面,系統采用MySQL數據庫,用于結構化存儲激光測距儀返回的實驗數據以及分析處理后的數據。
(3)折線圖的繪制。主要采用了Python內置的matplotlib.pyplot函數集進行繪制。
(4)數據采集:激光測距儀采集的實驗數據存儲在Excel表中,每隔0.2mm激光測距儀采集一次數據,單位為mm,并存儲在Excel表中。由上海傲波技術有限公司提供實驗測量數據。
系統功能流程圖如圖1所示。
系統功能說明:①選擇實驗數據,刷新界面展現激光測距儀返回的數據列表;②導入數據文件,從Excel表格中,導入激光測距儀所得數據至數據庫并進行數據結構化存儲;③繪制對比圖,通過導入新的實驗數據與初始檢測所得數據進行對比,在激光測距儀的誤差范圍內,對兩次數據進行差值計算,并以折線圖形式展現,直觀得出數據變化情況。
1.2數據庫設計
激光測距儀測得的數據量巨大,且儲存在Excel文檔中,不利于進行數據的處理,為使數據合理地存儲在數據庫中,我們設計兩張數據表,見表1,表2。
2系統功能實現
2.1系統主界面展示
如圖2所示,主界面一共分為三個部分,左側上部為實驗數據選擇框,可以選擇需要處理的測距數據,左側下部為數據列表展示框,展示激光測距儀的導入數據,右側為功能區包括導入數據文件,繪制對比圖,刷新三個按鈕。
通過下拉框選擇要查看的導入數據,并點擊刷新按鈕,可實現主界面實驗數據展示列表的更新。導入數據文件按鈕實現了Excel表格數據文件導入數據庫的功能。繪制對比圖按鈕可根據選擇的實驗數據與距離區間展示標準數據與選擇數據以及兩次實驗數據的差值,并繪制折線圖,便于直觀分析處理數據。
2.2導入功能實現
如圖3所示,通過選擇Excel文檔提供的path路徑,利用函數importExcelToMysql()讀取Excel文件,獲取第一張工作表的內容,然后依次讀取表中每一行數據并存儲到sqlstr數組中,再利用sql語句插入到數據庫中,完成數據導入功能。
代碼中數據庫操作涉及到Python操作MySQL的基本方法。Python DB-API是Python訪問數據庫的統一接口規范。通過Python訪問數據庫的流程如圖4所示,利用cur=con.cursor()創建的操作游標,執行execute方法可實現sql語句的執行。
2.3繪圖功能實現
如圖5所示,通過讀取MySQL數據庫中存儲的measurement值,存入數組中,與標準數據進行差值運算后,將得到的數據結果進行繪圖操作,同時存入數據庫中dvalue字段中。實現了導入數據與標準數據的差值運算與繪圖比較功能。第三個折線圖為差值折線圖,繪制了兩條預警線。如圖6所示,當折線圖數據大部分都在預警線之外時,在該區間可能出現了隧道管壁的損壞或隧道整體沉降,需要及時地制定相關方案,避免由此帶來嚴重影響。
3結束語
本文對激光測距傳感器所得數據進行分析,設計了一個數據分析處理平臺,使數據更易管理、分析并精確地提供預警信息,在隧道斷面監測的后續數據處理上發揮著重要作用。目前該平臺已經在上海傲波光電技術有限公司使用,用于測距數據的處理以及數據分析,取得良好反響。隨著監測數據的不斷補充,數據分析處理平臺可以不斷擴充功能,最終實現對隧道斷面的監測數據長期動態地統計與分析。