高琪琪
(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、装药长度、填塞长度等参数,并以炮孔参数设计表的形式展示每孔的爆破设计参数。设计人员可结合现场实际情况,对参数在一定范围内进行调整,同时装药长度、填塞长度也将发生变化。
本模块主要提供对历史记录进行查看、删除、导出及分享的功能。点击“下一步”按钮,呈现出此次爆破设计的设计结果(炮孔布置与网路联结示意图、炮孔参数设计表、爆破器材统计表及单个炮孔装药量提示单)。爆破设计完成后,设计结果自动保存返回主界面,点击“历史记录”按钮,会显示保存过的所有爆破设计文件,每份文件分别具有“导出”、“查看”、“删除”的功能按钮。“导出”功能是将爆破设计图表结果上传至电脑或分享至其他第三方软件的的唯一路径,增加此功能后,图表可更加直观清晰,并可进行进一步处理,形成爆破设计报告,便于上交与存档。
将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/m³,普氏硬度系数为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 设计结果经实际应用,爆破效果良好且可控,若广泛应用于爆破工程现场,可释放爆破技术人员部分劳动力,提高爆破管理的标准化、高效化和规范化;同时,爆破设计自动化可作为重要一环,协助推进数字矿山建设。