1. 引言
实验是培养工科学生动手能力的重要途径。在选矿实验中,磁选选矿工艺和指标研究扮演着关键角色。随着互联网技术的不断进步,虚拟现实(VR)技术在实验教学中的应用越来越受到关注。VR技术通过在计算机中建立高度仿真的虚拟空间,并提供身临其境的人机交互体验,为使用者带来全新的感受。由于其成本低、风险小、仿真度高等特点,VR技术已经被广泛运用于医疗、制造、化工、航天、教育、军事、海洋和能源等领域的技能培训和实践教学中。
在国内外,已经有不少研究关注虚拟现实技术在各个领域的应用。比如,赵剑锟等人设计了基于Unity3D的核事故后放射性物质大气、水体扩散虚拟仿真实验教学系统[1]。陆文捷等则开发了基于MATLAB和Unity3D的重介质选煤过程控制虚拟仿真平台,利用动态数学模型和典型的过程控制算法来实现研究目标[2]。贺保卫等人设计了可燃冰开采环境监测模拟系统,以解决实际开采中可能存在的环境安全隐患[3]。这些案例生动地展示了虚拟仿真系统的优势。另外,曹小华等人提出了一种基于数字孪生的多关节机器人实验平台搭建方法,通过Unity3D构建机器人的虚拟模型,并利用Socket通讯接口实现虚实数据的同步,从而实现了远程控制平台的搭建[4]。
本文聚焦于半逆流型湿式永磁圆筒式磁选机,基于Unity3D虚拟仿真技术构建了多功能一体化的综合性教学实验平台,以满足虚拟仿真实验教学项目建设的基本要求。该平台结合了便携性和功能性,并采用了第一人称视角的操作模式,充分发挥了虚拟仿真的沉浸体验优势,让操作者获得真实的代入感。此操作模式已被广泛应用于国内外各类电脑游戏和虚拟现实项目中。将这种操作视角引入教学实验平台,最大限度地发挥了虚拟仿真的优势,对于学生掌握控制理论相关课程的内容具有重要的促进意义。
2. 虚拟磁选实验室系统整体架构
2.1. 虚拟实验室系统整体架构
基于选矿实验的需要,磁选实验室系统采用了3D仿真技术、多媒体技术和网络技术,并以半逆流型湿式永磁圆筒式磁选机选矿实验为核心内容,构建了面向服务的软件架构。该系统集实物仿真、创新设计、智能操作和虚拟实验结果于一体。图1展示了虚拟仿真平台的整体架构,具体说明如下:
应用层:这个模块主要用于面向用户的仿真功能外在应用层面,旨在将仿真系统中的各种功能和信息进行有效封装。它使得用户可以在系统场景中进行可视化实验,并通过PC终端操作界面进行交互。
仿真层:这个模块是基于物理实体的孪生数据在信息空间中的虚拟刻画[5],主要针对虚拟实验系统进行相应的器材建模、实验室场景构建、虚拟仪器开发以及提供实验结果数据的格式化输出。
Figure 1.Overall architecture diagram
图1.整体架构图
逻辑层:这个模块是虚拟实验系统运行时,Unity3D引擎的底层逻辑,包括UI交互、粒子系统、碰撞检测、模型渲染等开发技术。
数据层:这个模块是用来分别设置虚拟实验的用户信息、磁场强度、矿石位置、矿石运动轨迹、试验参数等,通过物体的位置、速度等属性来获取相关数据。
支撑层:这个模块包含开发和运行本平台的硬件、软件与网络环境[6]。
2.2. 工艺简述
半逆流型湿式永磁圆筒式磁选机对象装置的模块包括矿石进料计量控制单元、磁场强度控制单元、矿物分离控制单元和产品收集单元等。在磁选过程中,矿石通过进料装置被均匀地送入旋转的筒体。在筒体内,矿石受到永磁系统产生的高梯度磁场的影响,导致磁感应线穿透矿石并使其磁化。磁性矿物颗粒在永磁圆筒表面形成磁性产品层,随着永磁圆筒的旋转,磁性产品沿着永磁圆筒的表面逐渐移动,并最终被收集到磁选机的出料口处。非磁性矿物颗粒则随着矿浆的流动,穿过永磁圆筒表面,最终从磁选机的底部排出,形成非磁性产品,从而实现对磁性矿石的有效选别和回收。
3. 仿真实验系统开发与关键技术实现
3.1. 三维数字化建模及虚拟场景构建
实验时的沉浸感直接受到三维模型和场景的影响[7]。在磁选实验室场景建模中,主要包括半逆流型湿式永磁圆筒式磁选机建模和环境建模两个部分。主要使用3DS Max和SolidWorks建模软件来构建实验装置的虚拟模型。首先,根据半逆流型湿式永磁圆筒式磁选机磁选实验流程,对整个实验设备装置进行分级划分,包括进料出料口、永磁系统、外围支架、外部驱动等。然后根据设备的具体需求和规格,并参照实体设备的结构、尺寸、材料等真实参数,对磁选实验的主体装置进行整体描绘。针对具体的实验设备、器材进行模型元素解构;在二维平面上创建设计的轮廓,包括线条、弧线、圆形等几何元素并使用拉伸、旋转、挤压、剪切、倒角、挤出等建模技术组建细分的模型元素;根据物理实体结构,对其进行修剪、切割和合并操作;为组件添加纹理和材质球,修改着色器参数,确保模型符合设计要求和标准,使用Photoshop绘制磁选机贴图,最后在3DS Max中对模型进行面片优化和贴图渲染处理,并导入Unity3D中得到虚拟仿真模型。主要实验对象模型如图2所示。
Figure 2.Schematic diagram of the structure of semi-countercurrent wet permanent magnet cylindrical magnetic separator
图2.半逆流型湿式永磁圆筒式磁选机结构示意图
3.2. 虚拟湿式永磁圆筒式磁选机功能仿真
3.2.1. 磁场数学仿真
本系统通过使用Unity3D虚拟仿真引擎完成实时实验运动仿真。半逆流型湿式永磁圆筒式磁选设备工作受到磁场强度的影响,在满足基本物理属性的前提下,我们可以根据设备单元之间的操作逻辑和实验反应机理来编写相应的操作脚本。在Unity3D中,圆筒内部创建一个磁场区域,模拟磁选机内部的磁场,使用MonoBehavior基类进行封装绑定这些脚本,用来模拟磁场对磁性物质的吸引力或排斥力。
根据磁力公式和相关变量,编写脚本来计算磁力。将这个计算过程封装在一个方法,以便在需要时调用。根据计算得到的磁力大小和方向,使用Unity提供的物理引擎方法来施加力到游戏对象上,模拟磁场对磁性物质的作用力。
磁性产品中的磁性矿粒的运动轨迹在磁场作用下受到磁力吸附到磁极上,从而被有效地分离出来,并且吸附效果取决于磁力强度、矿物本身的磁性以及矿浆的流动速度等因素。相反,非磁性产品中的非磁性矿粒的运动路径则主要受到施加在它们身上的机械力的影响,如离心力、重力或水流的冲击[8]。为确保有效分离磁性强弱的矿粒,必须满足以下条件:
式中,
为作用在磁性强的矿粒上的磁力,
为作用在磁性弱的矿粒上的磁力,
为与磁力方向相反的机械力的合力。
确保磁性矿物颗粒被吸附于磁极上,以便顺利分离具有较大磁性差异的易处理矿物。
确保在分离磁性差异较小的难选矿石时,获得高质量的磁性成分。在磁场的作用下,具有较大磁性差异的矿物将被吸附到磁极上,而磁性较弱或非磁性的矿物则会受到其他力的作用被冲走。通过磁性矿物颗粒在运动过程中所获得的位能,可以推导出回收磁性矿粒所需的磁力计算公式。
按磁场的空间分布分类,可以划分为两种类型:均匀磁场和非均匀磁场。均匀磁场的强度和方向受到产生磁场的磁源特性的影响,例如磁体的大小、形状、磁性材料的种类等。非均匀磁场源的布局和形状会直接影响磁场的分布情况,例如磁极的位置、形状、数量等。在均匀场中,各点的磁场强度是
相等的,而在非均匀场中则各点的磁场强度存在差异。磁场的非均匀性可以通过导数
来描述,即磁
场强度H在L方向上对距离的变化率。
在不同的磁场中,矿物颗粒的受力会有所不同。在均匀的磁场中,矿物颗粒受到磁力的作用。如果矿物颗粒具有磁性,它们将在磁场中受到磁力的作用而被吸引或排斥[9]。磁性颗粒会沿着磁力线的方向移动,直至受到其他力的平衡;而在非均匀磁场中,磁场的强度存在空间上的变化,即磁场梯度。矿物颗粒在不同位置受到的磁力大小不同,导致矿物颗粒在磁场中受到的力也不同。正因为这些力的存在,有可能将磁性矿粒从实际上被认为是无磁性的矿粒中分离出来。
在半逆流型圆筒式磁选机磁场中,作用于磁性物质颗粒(磁性矿物粒子)的磁力可以通过其在磁化过程中获得的位能来确定。磁性物质颗粒在磁化时所获得的位能可以通过以下公式计算:
(1)
式中,
为被磁化颖粒的磁位;
为真空的磁导率;
为颗粒的物质体积磁化率;
为颗粒的体积元;
为颗粒体积中的磁场强度。
根据力学定律,颗粒所受到的力可以使用
的负梯度来表示。因此,作用在颗粒上的磁力又可写成:
(2)
式中,负号表示磁力
吸引颗粒所做的功导致位能的降低。
结合物料物性数据和上述公式,建立反应单元的微分方程。根据计算结果,使用刚体组件向磁性物质对象施加力,模拟磁场对其的影响。通过使用泛型方法GetComponent<>(),通过绑定矿物颗粒和磁系结构单元组件,我们可以获得包括实时实验参数在内的信息。根据欧拉法将反应物料和条件等信息进行离散化处理,以满足反应守恒方程的要求。在每一帧更新过程中,根据力的作用,更新磁性物质对象的位置和运动状态。
3.2.2. 矿石运动模拟仿真
在磁选过程中,磁性矿石颗粒会受到磁场的吸引力,导致其向磁场强度更强的区域运动,并最终被吸附到磁极或磁性滚筒上。当矿石颗粒受到磁力吸附到筒壁上时,可能会发生与筒壁的碰撞。运用碰撞检测这个方法可以确保物料在圆筒内的运动过程中不会穿过圆筒壁或产生异常碰撞。
Unity中的两个物体要想发生碰撞,必须依赖于自身的碰撞器组件(Collider),并且至少其中一个物体必须附有刚体组件(Rigidbody),其中附带碰撞检测脚本的物体必须有刚体组件[10]。本系统功能模块主要用于模拟矿石颗粒在圆筒内是否产生碰撞,采用碰撞信息检测方式。首先在矿石和圆筒模型上添加刚体组件,以便它们受到物理引擎的控制和模拟圆筒转动,然后分别在它们身上添加碰撞器,考虑到精准性问题,选择网格碰撞器(Mesh Collider),通过编写脚本用于控制圆筒的旋转以及矿石的运动,使用“Update()”方法来控制圆筒的旋转,根据水平输入轴来实现,获取圆筒的中心点和半径,并获取场景中所有矿石对象。对于每个矿石,计算它受到的磁力,并将其应用到矿石的刚体上。
3.2.3. 粒子系统模拟仿真
粒子系统用于创建各种视觉效果,如火焰、爆炸、烟雾、雨、雪等。它允许开发者在游戏中添加各种动态效果,以增强游戏的真实感和视觉吸引力[11]。在模拟半逆流型湿式永磁圆筒式磁选机工作时,粒子系统可以用来模拟一组具有流动液体纹理的粒子,并使用纹理动画使它们呈现出流动的效果。通过调整粒子的运动速度和方向,可以模拟液体流动的外观。创建一个主发射器来发射液体粒子,然后创建多个粒子发射器,用于模拟液体流动的细节效果,如波浪、泡沫等。粒子系统模拟的水流特效如图3所示。
Figure 3.Particle system water flow effect
图3.粒子系统水流特效
3.3. 实验流程仿真
用户在本系统的实验流程仿真中扮演着交互主体和核心需求的角色。在虚拟环境中模拟操作实验流程时,用户需要与虚拟孪生设备进行交互[12]。通过交互界面,用户可以对矿物进行前处理,调整磁场强度和给矿浓度等参数。同时,用户可以通过动画实时观察当前的运行工况。根据实验任务和操作规程,用户进行一系列实验仿真交互,从而实现实验流程的仿真模拟。
整个实验流程逻辑如下:① 用户登录实验系统之后,可以浏览整个实验室布局、仪器和设备。实验的目的与原理、方法与步骤、安全与注意事项均可以点击相应模块进行显示,文字说明及浏览的方式可以使学生充分了解该实验。② 用户点击前处理按钮对矿物进行粉碎和研磨,然后选择磁选设备会进入到试运行步骤,点击“开始实验操作”按钮,通过调节磁场的强度和方向,可以更精确地控制磁性矿物和非磁性矿物的分选效果。③ 用户根据操作流程逻辑进行反应流程的操作,并通过设备运行状态的变化记录操作过程。其中,用户可以点击“查看试验记录”按钮,系统会根据上一次的操作判断当前进度,并基于流程信息和操作流程脚本为用户展示当前实验的具体实验记录,实验完成后,点击“查看实验结果”,界面会显示品位率、回收率和产率。实验室仿真流程如图4所示。
Figure 4.Flowchart of virtual lab simulation
图4.虚拟实验室仿真流程图
3.4. 虚拟实验数据管理和存储
本文通过使用MySQL数据库完成对Unity3D之间的数据对接。前台Unity3D以Windows提供的ActiveX控件为基础,在Unity中编写脚本来实时采集试验过程中的各种数据,包括磁场强度、矿石位置、矿石运动轨迹、试验参数等,通过物体的位置、速度等属性来获取相关数据。然后在服务器端用C#脚本建立一个应用程序,该应用程序负责连接MySQL数据库,并提供RESTful API或其他形式的接口供Unity客户端访问。在服务器端应用中使用相应的数据库连接库来连接MySQL数据库,并执行SQL查询和操作[13]。最后在Unity中接收服务器端应用的响应,并根据需要处理返回的数据。数据库流程如图5所示。
Figure 5.Database flowchart
图5.数据库流程图
4. 系统实现
4.1. 实验结果
本虚拟实验以半逆流型湿式永磁圆筒式磁选机为实验工具,以硫精矿为例,目的是分离选出含砷较低、含铁较高的磁性产品及含砷较高的非磁性产品。首先分别给矿物颗粒模型添加物理属性,分为磁性矿物和非磁性矿物,并且对矿物颗粒进行分组,模拟实验对象主要为硫精矿,然后根据硫精矿的化学成分为其矿物模型添加不同的元素属性,包括硫、铁、砷元素,将他们分别设置并且跟踪每个矿物组的数量,设置原料进料时的总量,并根据原始进料和分离后的产物计算产率、品位和回收率。产率是目标矿物的总量和原始进料的总量百分比,品位是所含目标矿物的重量百分比,回收率是成功提取目标矿物的百分比。最后设置不同的磁场参数,如磁场强度、方向等。对模拟的硫精矿进行了多组实验,在相同的实验条件下进行重复操作,并比较了不同实验之间的结果差异。计算了得到的矿物产率、品位和回收率数据,在不同磁场强度实验结果如表1所示。
Table 1.Measurement results of virtual experiments
表1.虚拟实验测定结果
磁场强度/OE |
产率/% |
硫 |
铁 |
砷 |
品位/% |
回收率/% |
品位/% |
回收率/% |
品位/% |
回收率/% |
1600 |
18.65 |
36.54 |
18.52 |
55.62 |
19.68 |
0.496 |
1.05 |
1800 |
19.53 |
36.21 |
22.46 |
55.60 |
21.54 |
0.598 |
2.05 |
2000 |
21.85 |
19.56 |
35.45 |
55.79 |
22.05 |
0.795 |
2.96 |
同时,在现场实验室按磁场强度分别为1600、1800、2000奥斯特磁场条件下进行试验,实验结果如表2所示。通过对比实验测定结果发现,虚拟实验和现场实验在相同的磁场强度下都能够有效选别出含砷品位小于1%、含铁品位大于50%的磁性产品以及含砷品位较高的非磁性产品。随着磁场强度的提高,磁性产品的产率、硫的回收率及铁的回收率逐步升高,含砷品位也逐步提高。
Table 2.Measured results from real field experiments
表2.真实现场实验测定结果
磁场强度/OE |
产率/% |
硫 |
铁 |
砷 |
品位/% |
回收率/% |
品位/% |
回收率/% |
品位/% |
回收率/% |
1600 |
19.00 |
37.59 |
18.68 |
55.41 |
21.51 |
0.448 |
1.28 |
1800 |
20.54 |
36.24 |
22.52 |
55.30 |
23.63 |
0.593 |
2.13 |
2000 |
21.68 |
21.66 |
34.99 |
56.72 |
23.81 |
0.706 |
3.11 |
4.2. 效果展示
使用PC终端平台登录磁选虚拟实验仿真系统时,利用UGUI面板组件来建立用户的仿真操作界面。同时,我们可以通过观察者摄像头挂载控制脚本,让用户通过操纵鼠标和键盘来实现视角的转换。这样,用户就可以在虚拟实验室中自由地移动并进行场景漫游。系统效果及部分功能模块图如图6所示。
Figure 6.System effects and some functional modules
图6.系统效果及部分功能模块
5. 结论
本系统利用Unity3D仿真技术,创建了磁选实验的虚拟仿真场景,利用虚拟现实技术,构建了逼真的虚拟实验环境,通过交互设备进行操作,模拟了磁选实验。在完成真实实验的前提下,通过对硫精矿在不同磁场强度下进行磁选实验,虚拟实验结果与实际磁选实验结果进行对比后,选出了含砷较低、含铁较高的磁性产品及含砷较高的非磁性产品,验证了虚拟磁选实验室的有效性和准确性。
学生可以提前学习实验的基础知识,并通过各种交互功能熟悉实验流程,从而提高对实验仪器组成部件的认识和操作技能,丰富学习内容,并且可以在任何时间、任何地点多次进行实验操作,从而加强实验学习,有效减少实验设备的损坏,并提高实验利用效率。因此,该系统具有很高的应用价值。