第48卷第3期2017年3月SafetyinCoalMinesVol.48No.3Mar.2017SafetyinCoalMines目前,矿井提升机司机和相关人员操作培训主要靠课堂讲授、“传帮带”方式以及靠投资修建的实操基地等方式。其中,理论培训主要靠教师课堂教学,脱离井下环境,内容较为抽象,培训效果较差;“传帮带”方式,学习过程中存在安全隐患,设备误操作甚至会带来严重的安全事故,该学习方式效率不高且容易受到师傅的水平和素质影响;修建实操基地的方式投资大,只适合单一、小型系统,对于煤矿提升系统实操基地的建设是不经济和不现实的。文献[1]以PLC作为主控器制作的模拟实验装置,可以模拟交流或直流矿井提升机的运行工况,达到培训和学习的目的。文献[2]开发出PLC控制矿井提升机教学实训装置,可以模拟矿井提升机的工业控制情况,并能任意出题进行考核和竞赛。文献[3]以可编程控制器为核心,为煤矿电气操作维护人员的培训、实验、科研搭建了一个方便快捷高效的平台。文献[4]将Web3D虚拟现实技术引入维修仿真业务培训中,开发了提升机虚拟维修仿真系统。上述应用虽然取得了一定的效果,但也存在功能单一、成本较高、临场感差和培训效果有限等缺点。在上述文献收集和分析的基础上,研究并实现了一种基于Unity3D的矿井提升机虚拟实训装置。该装置由矿井提升机虚拟仿真软件、模拟操作台和信号台以及通信模块组成。虚拟仿真软件具有矿井提升机虚拟场景,同时提供提升机启动、运行、停机等仿真操作,模拟操作台和信号台为实训者提供与虚拟仿真软件进行交互的输入接口,二者通过RS-232通信协议实现数据传输,从而实现培训提升机司机和相关人员安全操作技能的目的。1系统总体方案矿井提升机虚拟实训装置主要由矿井提升机虚拟仿真软件、模拟操作台和信号台以及通信模块组成,系统组成框架如图1。DOI:10.13347/j.cnki.mkaq.2017.03.031基于Unity3D的矿井提升机虚拟实训装置史艳楠1,刘建功1,刘扬1,王晶2,王毅颖1(1.中国矿业大学(北京)机电与信息工程学院,北京100083;2.郑州大学远程教育学院,河南郑州450001)摘要:研究了一种基于Unity3D的矿井提升机虚拟实训装置,装置主要由矿井提升机虚拟仿真软件、模拟操作台和信号台以及通信模块组成。虚拟仿真软件通过三维引擎Unity3D进行开发,首先使用3dsMax建立矿井提升机虚拟场景,然后利用Unity3D对虚拟场景进行再开发,并对相应地设备模型进行驱动;以STC12C5A60S2单片机为控制核心制作模拟操作台和信号台,实现对输入信号的检测、处理和传输;二者通过RS-232通信协议实现数据传输。关键词:矿井提升机;虚拟现实;实训装置;三维引擎;STC12C5A60S2中图分类号:TD679文献标志码:B文章编号:1003-496X(2017)03-0114-04VirtualTrainingDeviceofMineHoistBasedonUnity3DSHIYannan1,LIUJiangong1,LIUYang1,WANGJing2,WANGYiying1(1.MechanicalElectronic&InformationEngineering,ChinaUniversityofMiningandTechnology(Beijing),Beijing100083,China;2.SchoolofDistanceLearning,ZhengzhouUniversity,Zhengzhou450001,China)Abstract:WedevelopakindofvirtualtrainingdeviceforminehoistbasedonUnity3D.Thedevicemainlyconsistsofvirtualsimulationsoftware,simulationplatform,signalstationandcommunicationmodule.ThevirtualsimulationsoftwareisdevelopedbyUnity3D.Firstly,avirtualsceneofminehoistisestablishedby3dsMax.Then,thecorrespondingequipmentmodelisdrivenbyUnity3D.ThesimulationplatformandsignalstationaremadebytakingSTC12C5A60S2singlechipascontrolcoretorealizethedetection,processingandtransmissionoftheinputsignals.ThedatatransmissionisrealizedthroughRS-232communicationprotocol.Keywords:minehoist;virtualreality;trainingdevice;3Dengine;STC12C5A60S2114··中国煤炭期刊网 www.chinacaj.net
Vol.48No.3Mar.2017第48卷第3期2017年3月SafetyinCoalMinesSafetyinCoalMines图1系统组成框架通过三维建模软件3dsMax建立矿井提升机虚拟场景、完成材质贴图,并将文件导出为.FBX格式,然后将.FBX文件导入三维引擎Unity3D中,进而实现对矿井提升机结构原理、加速减速、启动停止、报警、通信、紧急制动等三维仿真,最后发布输出虚拟仿真软件。模拟操作台和信号台以STC12C5A60S2为核心,主要用于实现提升机司机对矿井提升机的操作功能、以及显示矿井提升机的工作状态。虚拟仿真软件安装在主控计算机中,通过RS-232通信协议实现与模拟操作台和信号台进行数据传输,最终实现模拟操作台和信号台操控矿井提升机虚拟场景。2提升机虚拟仿真软件矿井提升机虚拟仿真软件的开发主要包括三维建模及优化、矿井提升机运动仿真和音响控制及其实现等步骤。2.1三维建模及优化建立矿井提升机系统虚拟模型所使用的方法有多边形建模、放样建模和球B样条曲线曲面建模[5-6]。根据系统实现的需求,需要构建的模型有矿工、矿车、井筒、罐笼、提升机井上部分和井下部分,其中井上部分包含井架、天轮、机房、阻车器、安全门和操车设备;井下部分包含井下巷道、井架、消防设施、阻车器、安全门、以及操车设备。除井下巷道和矿工外,其余均属于机械类型,因此可采用多边形建模方法,该方法是最基本、最常用的方法,其使用小平面来模拟曲面,所编辑的对象通常是三角面或更多边面,然后将它们组合成三维模型。井下巷道的建模使用放样建模的方法,可以通过先建立一个放样路径,然后在路径上插入“C”字形的截面,由此可得到井下巷道的三维模型。矿工的建模使用球B样条曲线曲面建模方法,该方法以骨架为基础,利用人体测量学根据骨骼长度计算出关节点处的半径,然后通过插值关节点和半径生产球B样条曲线曲面表示矿工模型[7]。系统中需要建立的模型很多,为了提高系统的运行流畅性和提高用户体验,需要在建立模型时减少布尔命令的应用,这样不仅可以减少面的个数,还可以避免运算错误;对建立好的模型进行优化,要删除看不见的面及合理使用贴图,使用贴图可以大量减少面的数量,还可以使制作出来的模型更加的逼真[8]。2.2提升机运行仿真三维建模及优化完成以后,在3dsMax中将文件导出为.FBX格式,然后将.FBX文件导入Unity3D[9]软件中对虚拟场景进行再开发,并对相应地设备模型进行驱动。涉及到的运动有罐笼的上升、下降,安全门的打开、关闭,操车设备的前进、后退,瑶台的升起、落下,罐帘的打开、关闭,及阻车器的打开、关闭等。物体的移动、旋转主要通过Translate和Rotate函数实现:transform.Translate(floatx,floaty,floatz,SpacerelativeTo);transform.Rotate(floatx,floaty,floatz,SpacerelativeTo);其中x、y、z表示每一帧画面更新之前物体在3个轴向的变化量,改变这些数值,就可以改变虚拟设备的移动速度和旋转速度等;relativeTo参数指定物体是以自身坐标系运动还是以世界坐标系运动,本文中都以物体自身坐标系为参考。2.3音响控制及其实现音响是该系统中的重要组成部分,为了增加学员的体验和沉浸感,需要添加矿工行走音效,设备动作音效和背景音效等。Unity3D支持WAV、AIFF、MP3等格式,可根据具体需要来选择不同的格式,通过脚本实现对音效的控制,例如播放、暂停、停止等。部分脚本程序如下所示:VoidOnGUI(){if(GUI.Button(newRect(0,60,100,50),"Play"))audio.Play();if(GUI.Button(newRect(0,120,100,50),"Pause"))audio.Pause();if(GUI.Button(newRect(0,180,100,50),"Stop"))115··中国煤炭期刊网 www.chinacaj.net
第48卷第3期2017年3月SafetyinCoalMinesVol.48No.3Mar.2017SafetyinCoalMines图3数码管显示驱动电路audio.Stop();}3模拟操作台和信号台的制作3.1硬件电路模拟操作台和信号台采用STC12C5A60S2单片机作为控制核心,实现对输入信号的检测、处理和传输[10]。模拟操作台和信号台的结构框图如图2。图2模拟操作台和信号台的结构框图模拟操作台和信号台电路主要包括开关量输入板、模拟量输入板、信号灯指示输出板和打点信号输出板。其中开关量输入板用来采集旋钮和按钮的输入信号;模拟量输入板用来采集主令控制器手把和制动手把的输入信号;信号灯指示输出板用来控制指示灯的点亮和熄灭;打点信号输出板用来显示提升机的运行状态。由于需要采集的信号较多,单片机无法完全采集全部输入信号,因此系统将输入信号以4×4矩阵键盘的形式进行组合输入。信号灯指示电路用来驱动模拟操作台和信号台上的发光二极管和指示灯,发光二极管和指示灯用来指示系统的性能和设备的运行状态。直接驱动发光二极管时,会有驱动能力差、影响系统稳定性等缺点,因此采用了光电耦合的方法来驱动发光二极管。打点信号输出板用来显示打点信号的上信号和下信号,通过点数来获得提前约定的功能。由于单片机直接驱动数码管的驱动电流较小,因此使用UNL2803为数码管提供足够的驱动电流。数码管显示驱动电路如图3。3.2单片机软件系统上电后,首先要进行初始化操作,包括设定串口模式、波特率、单片机定时器T1工作方式等。初始化完成之后,系统循环检测单片机的I/O口,如果检测到有输入信号,根据输入端口号,单片机发送相应的数据帧给虚拟仿真软件,虚拟仿真软件根据接收到的数据执行相应的动作,单片机软件设计流程图如图4。图4单片机软件流程图3.3串口通信虚拟仿真软件与模拟操作台和信号台通过RS-232通信协议实现数据传输,最终实现模拟操作台和信号台操控矿井提升机虚拟场景。虚拟仿真软件的数据接收通过System.IO.Ports来实现,首先实例化一个SerialPort类SPStart,需要设置串口号、波特率、数据位、校验位等参数,这些参数应与单片机的串口参数一致;然后开启ReceiveData和DealData2个线程,在ReceiveData线程内,使用SPStart的Read函数读取单片机发送到串口接收缓冲区的数据,根据数据帧的起始位和停止位判断数据,然后将数据交给DealData进行解析处理,虚拟仿真软件根据DealData接收到的数据,执行相应地动作;最后在退出系统时,要用Close函116··中国煤炭期刊网 www.chinacaj.net
Vol.48No.3Mar.2017第48卷第3期2017年3月SafetyinCoalMinesSafetyinCoalMines数关闭串口,以免出现异常,影响系统运行。由于主控计算机的RS-232逻辑电平范围为-15~15V,而单片机的电平输出范围为0~5V,两者电平的不兼容使其无法直接通信。因此采用了以MAX232为核心的通信电路进行电平转换,经电平转换后的RXD0和TXD0分别接单片机的P3.0和P3.1脚,从而实现通信功能,电平转换电路如图5。图5电平转换电路4系统效果将模拟操作台和信号台与主控计算机连通,运行Unity3D发布的.exe格式文件,便可进行矿井提升机的虚拟实训。学员可以选择提人慢下、提人慢上、提物慢下和提物慢上4种模式,进入操作界面后会一步步的提示学员进行操作,若没有按照提示操作,则相应部分没有动作响应,而且会提示学员进行正确操作。提人慢上操作效果如图6。图6提人慢上操作效果图6中分别从井口北马、井口南马、井底北马、井底南马和实际运行5个视图进行显示,可以实时显示井口、井底和提升位置等信息。同时也可对5个视图进行循环切换,单独显示一个视图窗口。5结语根据煤矿上对提升机司机进行技能培训的需求,以Unity3D为虚拟仿真平台,实现了煤矿提升机虚拟仿真软件,并设计了模拟操作台和信号台,两者相互配合实现了提升机虚拟实训的目的。实训装置软件界面友好、可操作性强;硬件电路设计合理、操作灵活可靠;能够增强培训的效率和效果。参考文献:[1]杨柳,阎有运,邓君,等.基于PLC的矿井提升机模拟实验装置的研究与设计[J].郑州大学学报(工学版),2012,33(3):40-43.[2]王海群,贺海清,李红英.PLC控制矿井提升机教学装置的开发[J].河北能源职业技术学院学报,2013,13(2):55-57.[3]殷鹏.矿用可编程控制器及提升机模拟教学实训平台研制[J].自动化技术与应用,2012,31(1):93-95.[4]段子晔,魏勇,夏恒报.基于Web3D的提升机虚拟维修仿真系统的研究与开发[J].能源技术与管理,2011(5):146-148.[5]毕硕本,张国建,侯荣涛,等.三维建模技术及实现方法对比研究[J].武汉理工大学学报,2010(16):26-30.[6]李晔,张保威.基于过程优化的三维建模流程优化方法[J].信阳师范学院学报(自然科学版),2013(3):432-435.[7]徐欣,武仲科,周明全,等.基于球B样条的3D人物角色建模与动画[J].计算机应用,2008,29(8):2053-2055.[8]王大虎,史艳楠,陈文博.基于3DMAX和Premiere的煤矿安全培训系统[J].煤矿安全,2014,45(12):230-232.[9]孙宇.支持Unity3D的多Kinect人机交互技术与软件[D].杭州:浙江大学,2015.[10]罗浩,刘尚武,王书易,等.基于STC12C5A60S2多路温度监控系统设计[J].信阳师范学院学报(自然科学版),2014(1):106-110.作者简介:史艳楠(1988—),男,河南焦作人,在读博士研究生,研究方向为煤矿设备虚拟仿真、故障诊断。(收稿日期:2016-06-23;责任编辑:李力欣)117··中国煤炭期刊网 www.chinacaj.net