江 旭
(中煤科工集團重慶研究院有限公司, 重慶 400037)
煤與瓦斯突出事故是煤礦安全的“第一殺手”,目前通過鉆孔獲得反映采掘工作面瓦斯突出危險性的量化指標則是煤與瓦斯突出預報預測的有效措施。在突出預測的多種指標[1]中,鉆孔瓦斯涌出初速度[2]被認為全面反映了煤層瓦斯壓力和含量、煤的滲透性能、力學性質(zhì)及地應力等因素的變化,是一個應用比較廣泛其可靠性很高的指標,已被列入我國《防止煤與瓦斯突出規(guī)定》。但是現(xiàn)有的鉆孔瓦斯初速度測定儀使用的技術相對落后,對于數(shù)據(jù)的儲存和處理已經(jīng)跟不上如今大數(shù)據(jù)時代的需求。對此,本文結(jié)合上述需求,設計了一款配套鉆孔瓦斯涌出初速度測定儀使用的APP。
結(jié)合井下測量時的實際情況,以及目前煤炭行業(yè)“互聯(lián)網(wǎng)+”的利用依托大數(shù)據(jù)技術多方面多角度地進行煤礦數(shù)據(jù)的挖掘與處理的需求,將鉆孔瓦斯涌出初速度測定儀APP的功能分為以下幾類,具體情況如圖1所示。
圖1 軟件功能分析框圖
客戶端需在井下測量時使用,包含有工作面管理、數(shù)據(jù)測量、數(shù)據(jù)管理和系統(tǒng)設置這四大功能。工作面管理可編輯工作面編號、名稱、類型等詳細信息;數(shù)據(jù)測量是通過藍牙通訊與鉆孔瓦斯涌出初速度測定儀連接,獲取壓力值計算出鉆孔瓦斯涌出初速度和衰減系數(shù);數(shù)據(jù)管理內(nèi)可查詢所有已保存的測量值,可連接藍牙打印機打印出小票,還能在連接網(wǎng)絡的情況下直接上傳至服務器端;系統(tǒng)設置主要用于設置配套APP使用的儀器和打印機的地址。服務器端的主要功能為云端存儲和數(shù)據(jù)分析。
鉆孔瓦斯涌出初速度測定APP的關鍵技術在于與設備的藍牙連接通訊和用于管理數(shù)據(jù)的輕量型數(shù)據(jù)庫SQLite建立。
藍牙BLE[3]的全名是Bluetooth LowEnergy,簡單解釋是低功耗藍牙的意思,最少需要API18(Android4.3)以上設備才能支持。相比于傳統(tǒng)藍牙,BLE設備的功耗極低,通過GATT協(xié)議[4]進行設備之間的通訊。
Android平臺下BLE開發(fā)流程如下頁圖2所示。
2.1.1 開啟權限
首先需要在AndroidManifes.xml文件中為APP申明低功耗藍牙操作權限,具體申明如下:
2.1.2 打開Android設備藍牙功能
首先需要通過藍牙管理器BluetoothManager獲得藍牙適配器BluetoothAdapter,然后判斷藍牙是否開啟,若為開啟則調(diào)用函數(shù)開啟,并可直接搜索周圍BLE設備。
2.1.3 搜索周圍BLE設備
搜索掃描BLE設備需要調(diào)用startLeScan(LeS-canCallback)方法,該方法調(diào)用參數(shù)BluetoothAdapter. LeScanCallback返回掃描結(jié)果。
圖2 Android平臺下BLE開發(fā)流程圖
2.1.4 連接GATT服務端
搜索到配套設備后需要和它連接,實際上就是和BLE設備上的GATT Server進行連接,需要調(diào)用connectGatt()方法。同搜索設備時有返回值一樣,連接后也會有返回值,返回值BluetoothGattCallback用于傳遞結(jié)果,例如連接狀態(tài),以及任何進一步GATT客戶端操作。
2.1.5 讀寫數(shù)據(jù)
APP連接到GATT服務端且發(fā)現(xiàn)services后,通常使用Characteristic屬性來描述廣播信息和數(shù)據(jù),調(diào)用相應的方法就可以讀、寫存儲在屬性里的信息和數(shù)據(jù)。
Android支持高效、快速的數(shù)據(jù)存儲方式,內(nèi)置了一款輕量級的關系型數(shù)據(jù)庫SQLite[5],它的運算速度非???,占用資源少,為本地持久化的功能提供了一個質(zhì)的飛躍。
訪問SQLite數(shù)據(jù)庫方面的主要功能有:工作面信息編輯;測量數(shù)據(jù)的管理。
為了實現(xiàn)上述功能,采用SQLite建立相應數(shù)據(jù)庫中的表。其中新建工作面表WorkFace,設置“id”、“礦井名稱”、“工作面編號”、“工作面名稱”、“工作面類型”和“日期”六個字段;新建測量結(jié)果表Result,設置“id”、“噴嘴系數(shù)”、“涌出初速度”、“衰減系數(shù)”和“日期”五個字段。
Android平臺已封裝了 SQLiteOpenHepler和SQLiteDatabase類,利用ContentValues類來代替復雜的SQL語句對數(shù)據(jù)庫進行增刪改查的操作。
在正式向市場推廣之前,需要測試APP的穩(wěn)定性和安全性,由于藍牙功能不能在虛擬機中測試,要將APP安裝在礦用Android手機上。打開APP后,如果配套設備已開啟,APP將自動連接設備,并在界面顯示設備連接成功,只有在連接成功的狀態(tài)下,才能使用測量數(shù)據(jù)功能。在開始界面點擊“測量”按鈕,在界面中將顯示當前的流量值,測量1 min后界面中將顯示鉆孔瓦斯涌出初速度的流量值,繼續(xù)測量4 min后界面中將顯示衰減系數(shù)。在數(shù)據(jù)管理界面中,選擇需要查詢的工作面和日期,點擊查詢即可查詢測量結(jié)果。程序運行結(jié)果如圖3和下頁圖4所示。
圖3 鉆孔瓦斯涌出初速度測量界面
本文將在物聯(lián)網(wǎng)中廣泛應用低功耗藍牙技術和小巧、全面的SQLite數(shù)據(jù)庫相結(jié)合,設計了一款配套鉆孔瓦斯涌出初速度測定儀使用的APP。主要應用于煤礦安全領域,不僅能夠獲得鉆孔瓦斯涌出初速度指標,為煤與瓦斯突出危險性預測和評價、礦井瓦斯災害危險程度評價提供重要參考,還為煤礦大數(shù)據(jù)分析、煤礦智能化、信息合理安全化提供了技術支撐,填補了煤與瓦斯突出危險預報在Android平臺下應用的空白。本文只是介紹了軟件的初步設計,還有更多的功能需要去完善,例如數(shù)據(jù)處理智能化、交互界面的友好程度、客戶端的多樣化等方面可以繼續(xù)改進。
圖4 APP數(shù)據(jù)管理界面