河南省30码期期必中科技有限公司欢迎您!   30码期期必中服务热线:13409999881(贺经理)
30码期期必中 > 动态 > 秸秆粉碎机新闻动态 > 矿山设备虚拟现实系统的实现

矿山设备虚拟现实系统的实现 木屑颗粒机|秸秆颗粒机|秸秆压块机|木屑制粒机|生物质颗粒机|30码期期必中 / 13-11-08

    矿山设备一般工况较差,受环境场地的影响很大,通过现有的CAD方法无法预知设计的设备是否适合某些工作环境。当生成物理样机后,进行现场操作时,发现设计缺陷,再修改设计,必将造成人力、物力和财力的浪费、开发周期的延长。为了弥补已有的CAD设计的不足,在集成现有数字仿真程序和视景仿真平台,再充分发挥视景仿真直观逼真效果的基础上,结合计算机图形学,设计了一套矿山设备虚拟现实系统。在矿山设备虚拟现实系统中,可以模拟各种工况,及早地发现不足,在设计时及时进行修改。矿山设备虚拟现实系统不仅是降低风险和生产成本的有效途径之一,而且对进一步的分析和研究也有着非常重要的意义。
1、矿山设备虚拟现实系统的结构与功能分析
    从结构上分析,矿山设备虚拟现实系统包括多个功能模块,其中有立体显示、运行模拟、各零部件的信息查询和虚拟装配等。先做好系统框架,然后自下而上逐步实现各项子功能。该系统主要实现矿山设备的交互式虚拟可视化显示和操作,可以加深使用者对生产制造过程的认识和理解,更好地指导实际设计生产,可以及时发现问题并做出正确决策。
1.1矿山设备的立体显示
    立体显示是虚拟实现系统中基本而又独特的功能.在该系统中包括:矿山设备被动式立体显示,即输出至e - desk硬件系统,通过立体眼镜即可观看到立体的矿山设备;各种显示方式以及相互叠加、切换,如线框方式,光照效果,是否带纹理显示等;键盘、鼠标或操纵杆交互操作,从不同的视角浏览矿山设备按照系统预设的路径自动在场景中漫游导航;环境声音的应用;任意零部件的显示和隐藏。
1.2矿山设备的运行模拟功能
    运行模拟功能是指系统模拟设备在工作时的运转状况并且可以进行人机交互控制,鼠标或操纵杆交互控制整个设备的运行和停止;对于一些自由度没有完全限制,但设备运行时不参与的零部件,需要对其进行单独的交互仿真,比如使用鼠标左键点击门以模拟检修门的打开与关闭等。
1.3各零部件的信息查询功能
    利用数据库原理实现信息的查询功能。将设备中的零部件的信息、如零部件的介绍、作用、机械性能、材料、数量等记录在数据库中,系统将图形界面与数据库连接以实现信息查询功能。而且,一旦零部件的信息改变,只需改变数据库中的相关内容即可,方便日后数据的维护和更新。
1.4虚拟装配功能
    虚拟装配在虚拟设计和虚拟制造中有着举足轻重的作用。虚拟装配可以更直观地表达矿山设备的内部结构,各个零部件的相对位置以及装配关系,模拟出装配过程中的各种状态,可以使设计工程师更好地理解产品,及时发现装配过程中可能出现的问题,以便正确地制定出合理的装配工艺,缩短设计周期;使用产品时,配合系统中的信息查询功能,能很好地理解产品的结构和性能,并可以作为产品调试和维修的依据。
2、矿山设备三维交互仿真系统的实现
    从实际应用出发,以一种经典的颚式破碎机为例,将原有的Solidworks模型转化为MultiGen Crea-tor支持的VR模型(Openflight格式),以Vega和Visual C++作为软件平台,实现了其三维交互仿真系统。
2.1破碎机VR模型的建立
    虚拟现实系统中建模包括几何建模、运动建模、物理建模和行为建模。本系统需要的是颚式破碎机VR模型的建立。
    (1)利用原有的CAD资源,将Solidworks的三维模型通过中间格式转换成Creator支持的Open-flight格式的VR模型,并将其模型数据库简化、优化和完善,包括添加纹理映射、灯光、材质、场景模型等。
    (2)在MultiGen Creator软件中进行运动建模,如观察者Observer的视角等;物理建模,如碰撞检测等;行为建模和模型管理,包括构造LOD层次,设定DOF和Switch节点等。生成flt格式的模型数据库。
    (3)将优化的模型(.nt格式)导入Vega提供的图形化的用户界面Lynx中,并在Lynx中建立系统所必需的对象,包括场景、窗口、通道、运动方式、观察者、碰撞方式等,建立对象之间的相互联系,生成一个ADF( Application Definition File)格式的文件。
    (4)将生成的ADF文件在DOS窗口中使用命令“objconvert  -A crusher. adf -s fst  -i”转化成FST格式的文件。FST文件格式是Vega的Fast格式,包含场景中模型的纹理等信息,为系统快速加载模型到场景中提供了有效的途径,可提高运行效率。
    具体方案如图2所示。
2.2系统应用程序框架
    在Windows NT平台上的Vega应用,主要有3种类型,即控制台程序、传统的Windows应用程序和基于MFC( Microsoft Foundation Classes)的应用。无论是哪一种Vega应用程序,都有3个必需的步骤:
    (1)初始化。这一步初始化Vega系统并创建共享内存以及信号量等。
    (2)定义。通过.ADF应用定义文件创建三维模型或是通过显式的函数调用来创建三维模型。
    (3)配置。通过调用配置函数来完成配置设置完Vega系统后,就开始了Vega应用的主循环,主循环的作用是对三维视景进行渲染驱动。它主要分2步:①对于给定的帧速进行帧同步;②对当前的显示帧进行必要的处理。
    为了便于开发者能容易地开发出基于MFC的Vega应用程序,Vega通过继承MFC中的CView类而派生出一个子类zsVegaView。其类层次结构如图3所示。
    因此,创建基于MFC的Vega应用程序的具体步骤如下:
    (1)创建基于单文档的MFC应用程序,视图类的基类确定为CView类;
    (2)将zsVegaView的.h和.cpp文件引入到工程;
    (3)修改单文档的视图基类,即将CView类修改为zsVegaView类;
    (4)重载必要的虚函数;
    (5)使用vzsVegaView::runVega()启动Vega。
2.3  Vega API和OpenCL混合编程实现交互仿真功能
    从底层实现来看,Vega实际上是基于场景图(Scene Craph)之上的,而场景图管理系统本身又建立在OpenGL标准图形库之上。Vega提供的一个图形界面的应用程序定义文件工具-LynX,可以大大降低视景仿真应用开发难度。但要完成比较复杂的功能还是必须通过Vega API编程实现,更复杂的功能或一些特殊操作则需要使用更底层的OpenGL编程实现。
    Vega与OpenCL进行混合编程时,OpenGL所要实现的功能一般都是在Vega的回调函数中来实现的,但因为两者坐标系的不一致,所以必须要将场景融合。
    (1)在VC中首先要配置编译系统为多线方程式,因为Vega本身就是基于多线程的。
    (2)在Vega中混合OpenCL代码主要是使用回调函数AddFunc,在MyFun函数中,进行OpenGL的代码加入.
    (3)回调函数在主循环之前调用,在系统配置之后调用。
    使用Vega API提供的函数库,结合进行Open-GL编程技术实现系统的各项子功能。如:使用Vg-Picker类实现系统中对象的拾取;调用vgSyncFrame()和vgFrame()函数控制场景中对象的运动;使用OpenGL实现汉字的绘制等。将这些功能模块添加到系统应用程序框架中即可生成完整的矿山设备虚拟现实系统。
2.4矿山设备三维交互仿真系统的运行界面
    矿山设备三维交互仿真系统的运行界面如图4所示。
3、结论
    对虚拟现实技术应用于破碎机进行了研究,提出了一套开发矿山设备三维交互仿真系统的有效方法。所实现的虚拟现实系统具有通用性和可移植性。这一技术适用于各种产品,其应用和推广必将大大缩短设计周期和减少设计费用。

  • 上一篇:老屋基选煤厂原煤系统的技术改造
  • 下一篇:垃圾破碎机故障诊断方法综述
  • 更多
    30码期期必中
    木屑颗粒机