高琪琪
(1.中鋼集團馬鞍山礦山研究總院股份有限公司;2.金屬礦山安全與健康國家重點實驗室)
長期以來,爆破設計主要依靠工程技術人員基于個人經驗進行,使得爆破工程設計具有不確定性,這就為日后的誤差埋下了隱患。而爆破作為采礦作業的核心工藝,人們已經在諸如巖體、炸藥、爆破器材、爆破工藝等方面積累了大量的技術和經驗,卻依然只是單獨的模塊,未能匯成一個系統。從智能化礦山角度來看,將這些技術和經驗與現代計算機技術、人工智能技術相結合,實現爆破的自動化、智能化是完全有可能的[1-2],事實上,國內外在爆破設計智能化方面也已進行了有益的嘗試與探索[3-6],并取得了一定的進展[7-8]。
通過調研發現,在爆破技術與計算機技術發展如此迅速、智能手機應用如此廣泛的今天,以App 形式出現的爆破輔助設計軟件還很少見,因此,本項目以計算機技術和爆破設計理論為研究基礎,嘗試開發一款露天礦爆破輔助設計App。
App基于Android系統,計劃用于露天礦山垂直深孔臺階爆破設計。在較為成熟的礦山,臺階已基本形成,巖石堅固性系數f、炸藥單耗q等參數均已根據礦山實際條件,由前期試驗論證而確定。由技術人員在平臺上進行布孔,鉆孔人員實施鉆孔作業,繼而由測孔人員進行測孔,將坡頂線測點GPS 數據、炮孔位置GPS數據、臺階高度、孔深、抵抗線等基礎參數反饋給爆破設計人員,以此為依據在該App平臺上自動進行爆破設計,得到炮孔布置圖、爆破網路圖、孔距、排距、單孔裝藥量、裝藥高度、填塞高度等參數。工程技術人員結合現場實際情況擁有調整數據的權限,使其經濟成本和破碎效果均達到最佳狀態,且可將設計結果進行保存,便于日后快速查閱及爆破設計報告的編寫。
對比C++、PHP、Java 及JavaScript 語言的應用權限及優劣勢,選用JavaScript 語言、Webapp 的開發方式,在virtual studio code編輯器上進行編程。
雖然JavaScript 語言與Java 有類似的語法,但其并不是Java 語言的分支,是一種動態類型語言,學習難度相對較低,適合初學者。不同的是,Java 在使用領域范圍內是后臺編程語言,與PHP 相似,JavaScript卻是在前端后臺都可以使用;從兼容性分析,JavaScript語言可以嵌入HTML,XML和AJAX,而PHP只能嵌入HTML,它不能與XML 一起使用,所以在前端開發JavaScript 比PHP 更有優勢。JavaScript 利用DOM模型,提供大量預編制的功能性對象代碼,使得開發一個滿足用戶需要的腳本變得較為容易。此外,它和其他語言可以很好地交互,并且廣泛應用于各個領域。
爆破技術人員可以利用此App 在已布好孔的平臺上進行爆破設計,通過已知的基礎參數輸入,得到爆破網路聯結示意圖及爆破參數設計表,作為爆破設計文件的重要組成部分。在此流程中,集成了炮孔布置、網路聯結、參數輸出、設計結果與保存的四大模塊,確保App設計結果輸出的完整性。
在實際生產爆破中,工地現場工作人員對已鉆好的炮孔進行測孔,反饋的重要數據之一就是炮孔GPS 位置數據。各炮孔GPS 數據、坡頂線各測點GPS輸入App 后(圖1),經內部圖形轉化程序形成炮孔布置示意圖。圖形轉化程序思路為將手機屏幕視為寬一定、高可以自適應的視圖,根據GPS 的X、Y、Z值計算出大地坐標與屏幕坐標換算的比例尺scale;以scale 為轉換系數,使用svg 繪制,具體如下:取所有炮孔中X最小的值為minX,所有炮孔中Y最大的值為maxY,炮孔在示意圖上的橫軸坐標X=(X-minX)×scale,縱軸坐標Y=(maxY-Y)×scale。

需要注意的是,由于svg 坐標系的Y軸從上至下是依次增大的,而我們實際需求的坐標系是由下至上依次增大的,故這里的縱軸坐標Y=(maxY-Y)×scale。
在輸出的炮孔布置示意圖上,點擊兩炮孔選定對象,分別設置起點和終點,選擇延期雷管的類別,繼而連線代表傳爆方向,重復該步驟直至網路聯結完成,不同的線型代表不同型號的雷管。除此之外,在對每個炮孔編輯時,可以重新編號、設定孔深、選擇炮孔類型及炮孔排數,若為首排孔,還需輸入首排抵抗線W賦值。
2.3.1 不同炮孔排距定義
在爆破網路聯結示意圖生成后,在界面輸入已知的臺階高度H、該區炸藥單耗q、裝藥長度系數等參數,App 依照設定的程序,根據前面計算得出的比例尺scale 及坐標轉換,自動計算出孔距a、排距b。App將炮孔類型歸為邊角炮孔、特殊炮孔、首排孔、普通炮孔4 類,以矩形或多邊形爆區為例,其定義及有關距離參數的說明如下:矩形或多邊形爆區各角上的炮孔為邊角炮孔,其孔距a為與其相鄰且在同排的炮孔之間的距離;特殊炮孔是指非矩形布孔的炮孔,可由該炮孔向前排炮孔延長線做垂足,垂直距離b則為排距;首排孔即為爆區鄰近坡頂線的一排孔,需為其確定抵抗線大??;普通炮孔可以根據與其相鄰兩炮孔之間的距離算出孔距,即為(a1+a2)/2。
2.3.2 其他參數的輸出與調整
在得到孔距a、排距b等參數后,App 根據公式分別計算每孔超深h、單孔設計裝藥量Q、裝藥長度、填塞長度等參數,并以炮孔參數設計表的形式展示每孔的爆破設計參數。設計人員可結合現場實際情況,對參數在一定范圍內進行調整,同時裝藥長度、填塞長度也將發生變化。
本模塊主要提供對歷史記錄進行查看、刪除、導出及分享的功能。點擊“下一步”按鈕,呈現出此次爆破設計的設計結果(炮孔布置與網路聯結示意圖、炮孔參數設計表、爆破器材統計表及單個炮孔裝藥量提示單)。爆破設計完成后,設計結果自動保存返回主界面,點擊“歷史記錄”按鈕,會顯示保存過的所有爆破設計文件,每份文件分別具有“導出”、“查看”、“刪除”的功能按鈕?!皩С觥惫δ苁菍⒈圃O計圖表結果上傳至電腦或分享至其他第三方軟件的的唯一路徑,增加此功能后,圖表可更加直觀清晰,并可進行進一步處理,形成爆破設計報告,便于上交與存檔。
將App應用于某次實際生產爆破,由爆破技術人員對各項輸出數據及爆破效果進行把關,以驗證該App是否適用于工程實際。
試驗爆區位于和尚橋鐵礦-48~-60 m 平臺西部方向,臺階高度H=12 m。以三角形布孔方式共布18個炮孔,炮孔孔徑d=200 mm,孔距a=8 m,排距b=5 m,爆區中心坐標分別為X=3 501 651,Y=504 543。已知該露天礦山所產巖石主要為磁鐵礦,密度為2.72~3.00 t/m3,普氏硬度系數為12~15,單耗q=0.5 kg/m3。本次穿孔深度根據地形高低而深淺不一,孔內基本無水。選用φ170 mm 乳化炸藥、澳瑞凱導爆管雷管,逐孔順序微差起爆,高能起爆器非電起爆,考慮前面各排孔的礦巖阻力作用的增加系數取1。裝藥長度系數取28(根據經驗所得),即每米炮孔可裝28 kg 炸藥。
將該App安裝包下載至安卓系統手機并安裝,打開后進入首頁,點擊“開始設計”按鈕,按操作提示進行設計。
首先,輸入6 組坡頂線處GPS 數據,待輸入完成后,進入炮孔參數輸入模塊,依次輸入18 組“孔號”、“GPS”數據及“孔深”。至此,點擊“炮孔布置示意圖”按鈕,生成炮孔布置示意圖。在此界面上完成爆破網絡的聯結工作,點擊1號炮孔,進入設計聯結界面。按照步驟提示進行操作,18 個炮孔均編輯完畢后,爆破網路示意圖形成,不同雷管類別用不同的線型表示,如圖2所示。

確認無誤后,點擊下一步,輸入爆破設計基礎參數:設計單耗q、考慮受前排孔的礦巖阻力作用的增加系數k、臺階高度H、藥卷規格(kg/支)及裝藥長度系數。輸入完畢后,點擊“生成炮孔參數設計表”按鈕,生成初始的爆破參數設計表,該表內參數經爆破技術人員一一確認,結合現場施工實際情況,除因現場施工原因造成的前排抵抗線變小,需要減少個別炮孔裝藥量外,其余各項參數均技術可靠,可直接應用于現場試驗爆破。
爆后對爆區效果指標進行評價,爆區效果如圖3所示。爆堆朝自由面方向拋擲,成型效果好,能量作用均勻,無局部隆起現象,平均后沖距離3.3 m,前沖距離控制在14.8 m以內,有利于后續鏟裝運輸工序順利開展;采用圖像分析技術對爆后大塊率進行統計,大塊破碎均勻,且控制在3%以內,無需進行二次破碎,降低了礦山破碎成本;爆堆開挖結束后,臺階坡面平整,未見爆破根底,有利于下部臺階穿孔工序的進行,減小穿孔誤差。

圖3 實驗爆區爆破效果
綜上,可以認定本次爆破各參數(單耗、單孔裝藥量、孔深、填塞高度等)、爆破網路設計合理。
(1)開發該App 選用的React-native 框架及JavaScript編程語言非常適合本次研究開發。JavaScript語言具有較好的交互性,可在用戶端執行任務,直接對用戶的輸入作出反應,不用經過服務器,這也正是用戶需求分析中所要求的。
(2)該App 應用范圍廣泛,可將各礦山的爆破設計數據資料收集并整合,加以分析,不斷優化爆破參數,推動爆破技術的進步與發展。
(3)App 設計結果經實際應用,爆破效果良好且可控,若廣泛應用于爆破工程現場,可釋放爆破技術人員部分勞動力,提高爆破管理的標準化、高效化和規范化;同時,爆破設計自動化可作為重要一環,協助推進數字礦山建設。