付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
桌面式虚拟仿真训练教学系统的开发与实现
基于专业技术的大型机械装置虚拟仿真系统研发方案三维虚拟模拟(3d虚拟模拟)是利用三维建模技术为现实世界创建三维场景的三维场景。在特定的软件环境中,整个三维场景被驱动,用户输入输入,用户根据不同的操作对应的反应,并显示在三维环境中。现代机械装置往往结构复杂,功能原理深奥,单纯依靠实物进行教学、训练,费用高且效率低,而利用开发的虚拟仿真系统,不需要借助实物就可在计算机上进行日常的教学、训练,费用低廉而且安全,在身临其境的人机交互中,原本复杂深奥的装置构造、原理、拆装、维修知识变得直观易懂。虽然此类虚拟仿真系统已经出现,但还存在诸多的不足,如文献中采用VB+VRML开发的仿真模型仅仅具有单调的颜色和简单的反光特性;三维模型浏览需借助于外部已有的浏览器,而外部的浏览器需要单独安装,这使得整个系统的移植性不强。文献中的VC+VRML系统交互方式单一,拆装、机构运动只能被动的进行动画浏览。文献中的Visproducts+VisMockupVisLab+VisJackVisVSA系统,对开发所需硬件水平要求高,昂贵的图形工作站、三维鼠标、立体眼镜等设备显然不利于其推广使用;文献中的Multigen+OpenGvs+Virtools+OpenGL+XML+ACESS+VC系统开发,开发难度大,周期长,成本高。本文为解决此类问题展开了研究,通过分析研究,提出了一种新的基于普通微机和简单交互设备(主要包括二维鼠标和普通彩色显示器)的大型机械装置虚拟仿真系统的开发方案:1-DEAS+OpenGL+VC++。桌面式虚拟仿真应用系统的开发一般有两种模式,如图1所示。一种模式是直接使用底层图形接口如OpenGL、Direct3D、Java3D等,另一种模式是使用位于底层图形接口之上的开发平台,如国外著名的商业产品OpenGVS、VEGA、Virtools和开源平台OSG,以及国内图形平台BH-Graph等。第一种模式的特点是可以完全自主控制应用系统的底层细节,灵活性强,可以较好体现应用系统需求方意愿,第二种模式需借助于已有仿真图形平台,系统开发自主性不高。同时,这些仿真平台软件的价格往往比较昂贵,系统开发经济性不高。本文系统开发选择第一种开发模式。桌面式虚拟现实系统相对沉浸式和增强型虚拟现实系统,对硬件要求要低得多,本虚拟仿真训练系统开发硬件环境为:(1)桌面式个人计算机(IntelPentiumII450或以上);软件环境为:(1)Windows操作系统;(2)OpenGL程序应用接口(API)。本方案选择I-DEAS软件作为建立三维仿真模型的平台。I-DEAS是世界上最著名的机械CAD设计自动化软件,革命性的VGXTM变数式几何系统技术,让使用者以更直觉的方式去雕塑三维实体模型;并直接在电脑三维实体原型上进行修改,如同以双手拼组真实的零件一样。运用VC++与OpenGL联合开发交互图形应用程序是因为:(1)同其它编程语言相比,VC对OpenGL的支持最好,能很方便地进行OpenGL编程,而且其功能十分强大。而Delphi不能对OpenGL提供很好的支持。(2)单纯用VC++很难设计出高性能的三维图形工具,目前图形开发包DirectX适于游戏开发以及加强多媒体性能等方面,而OpenGL则可以制作出更顺畅的3D效果,且OpenGL性能优于DirectX。(3)OpenGL可以与VC++建立紧密接口,便于实现有关计算和图形算法,可保证算法的正确性和可靠性。2场景仿真设计本系统采用模块化结构,模块定义和功能主要根据系统的各种功能需要,这些功能主要包括:(1)数据库支持获得接近最优的虚拟拆卸序列,用以指导、提示操作者正确完成拆卸过程;(2)三维场景显示模块(主要包括机械装置三维仿真模型、机构仿真动画、材质、光照等),对场景模型的编辑、控制、浏览等;(3)友好的用户图形界面(GUI)设计。相应的,设计出本系统的三个模块:拆卸序列规划;虚拟场景交互式浏览、编辑和动画仿真;用户图形界面,如图2所示。拆卸序列规划模块利用DCG(disassemblyconstraintgraph)序列生成法和遗传算法得到接近最优的拆卸序列。DCG法能够得到拆卸维修某一部件时的所有合理拆卸序列,然后由遗传算法来选择最优的序列,优化主要考虑拆卸所花的时间,主要影响因素有拆卸工具的变换和拆卸方位的变换。关于这部分功能的具体实现途径在文献中已有详细论述,这里不做讨论。虚拟环境模块包含了两个子模块,如图2所示:几何建模模块和场景显示模块。系统仿真对象几何模型的建立和驱动将在后文中详细介绍。GUI模块则用来将上述的模块集合在一起成为一个完整的系统。3系统的一些关键技术和实现3.1实时交互功能I-DEAS采用三维实体模型,该种模型文件通常非常大,在基于普通微机的硬件条件下不能满足实时交互的要求。所以,在本方案中,将I-DEAS实体模型转换为结构相对简单的表面(多边形)模型就成为了必要,在这里选择3DS格式,因为3DS是一种非常普遍的三维图形数据格式,结构相对简单清晰,易于加工处理,如在后文中将要提到的简化和用于程序读取。3.23基于sd软件的数据简化将仿真模型从I-DEAS实体格式转换为3DS多边形格式后,虽然文件有所减小,但对于大型复杂机械装置,在较低的图形硬件水平下,模型数据简化仍是必要的。3DS模型简化可以综合采用以下两种方法:方法一:由于多边形的数量取决于很多方面。比如由于零件的曲率,一个大部分是平面的5MB的3DS文件创建的三角形数量级会低于同样一个5MB的包含管道及螺杆的3DS文件,所以,在I-DEAS中通过修改原仿真模型来减少数据的大小是简化方法之一。方法二:通过Polytrans、3DSMAX等专业3DS文件处理软件进行修改简化。3.3定义各种封装完成简化并添加了材质、光照、纹理等信息的仿真对象几何模型3DS格式数据,实现OpenGL对其的读取的方法为:首先定义一系列的结构,如对象的材质、材质库、位置矢量、四元数等,然后通过定义各种类封装对3DS文件中各种对象的处理和读取操作。读入模型数据后就可利用OpenGL的常用绘图函数如glVertex3f()进行绘图显示了,而对于模型的放大、缩小、平移、旋转、拾取等交互控制则主要是利用矩阵堆栈和OpenGL的选择拾取和反馈机制来实现。3.4拉格朗日算法中的碰撞检测虚拟拆装是一个成功的虚拟仿真系统所不可或缺的功能,在1-DEAS+OpenGL+VC++开发方案中,用屏幕上的光标来代替拆装虚拟“手”,利用OpenGL的选择拾取机制和结合VC++编程实现整体装配中单个零部件的拾取和拖动。碰撞检测是提高虚拟交互式拆装真实性和实用性的最有效途径,碰撞检测的实现最重要的是研究选择碰撞检测算法的问题,由于现在虚拟物体模型大多采用多面体表示(1-DEAS+OpenGL+VC++方案中的3DS模型为三角形,三角面片模型能够很好地满足虚拟现实系统实时性的要求),碰撞检测实际上就是电脑计算判断多面体相交的问题,场景中海量的姿态、位置各异的多面体使得上述计算是一项十分复杂耗时的工作,I-DEAS+OpenGL+VC++开发方案基于普通计算机硬件,这就使得对碰撞检测算法的适当简化显得十分必要,其中建立装配约束关系被证明了是一种十分有效的方法,这里的装配约束是指装配体中零件间的位置约束关系,主要从几何方面考虑,如面贴合约束、对齐约束和定向约束等。装配约束本质上可归结为几何元素点、线、面之间的相互关系,它的具体建立由OpenGL编程实现,程序体的功能就是保证用虚拟“手”拖动某一零部件实现拆装时根据实际中该零部件与其他零部件的位置关系(也就是上面说所的点、线、面之间的相互关系)限定其运动的自由度。3.5运动仿真的过程OpenGL支持双缓存(DoubleBuffers)技术,该技术提供了一种生成平滑动画的机制。这使利用OpenGL生成动画非常简单。在利用OpenGL设计动画时,时间间隔起着十分重要的作用。时间间隔很大时,将浪费很多系统时间,时间间隔较小时,视频不能进行正确地刷新,将有可能产生帧信息的丢失。在确定时间间隔时,一般应综合考虑系统的视频刷新频率和计算的复杂度等因素。在进行机构的运动仿真时,首先要建立运动机构的三维几何模型,并对模型进行各种坐标变换,以确定这些模型在三维空间中的定位和取向,并选定有利的观察点。建立模型以后,接下来可以采用运动的动画显示技术,仿真机构运动,以模拟实际的机构运动情况。因为任何一个运动形式都是由平动和转动组成的,OpenGL正是提供了实现这两种分运动的函数,glRotatef()和glTranslatef(),只需将机构运动规律或各运动部件相互的运动约束写成程序语句(当然也可先在外部人工计算出各运动部件的绝对运动规律),然后调用上述两个函数,再添加交互控制函数即可制作出交互的机构运动动画,图3所示为调距桨的仿真调距原理动画其中的两帧。4装卸机构的设计系统的用户图形界面设计参考了当今在工业领域被广泛使用的CAD软件的界面设计,使操作者对其更觉友好和熟悉。以某型调距桨装置为例来验证该系统的功能,如图4所示。假定操作对象为该调距桨装置的桨壳体部件,在窗口1左上子窗口中的装配关系树上选定该部件,最优拆卸序列生成并显示在窗口3中。选择“开始拆卸”后,“实时拆卸信息显示”窗口给出拆卸每一步的状态,包括目标对象、正在拆卸对象、拆卸所需总步数、已进行步数。图4中正在拆卸对象为前活塞杆,选择主菜单栏上的“拆卸工具”为“工具4”,鼠标形状变化为“工具4”字样,点击选取并拖动拆卸对象实现拆卸动作(该功能主要根据OpenGL的选择拾取机制实现),同时,“实物图片显示”子窗口显示该拆卸对象实物图片,窗口3中显示该对象的功能、结构和下一步拆卸对象等文字信息,加深操作和观赏人员对装置整体及其部件拆卸知识的理解。在拆卸过程中,工具选择错误或拆装顺序错误都将使操作无法继续进行。拆卸完成后,通过点击“RESET”,可以从头开始反复练习拆卸过程。在拆卸过程中,还可以通过配合使用键盘、鼠标来实现对拆卸对象的放大、缩小、平移、旋转的导航控制;“场景编辑”和“显示模式”选择个性化的场景光照、模型材质和点、线框、实体显示模式。5机械cad仿真多通道设计技术VC++应用程序打包生成.exe文件或安装文件后可以脱离VC++环境独立安装运行,本文提出的I-DEAS+OpenGL+VC++虚拟仿真系统开发方案有着广泛的适用性;VC++和OpenGL底层开发法,还具有能够实现用户的个性化需求,满足计算机通讯实时性的优点,但它的缺点是要求用户掌握较深的编程知识;机械CAD三维实体模型数据的文件大且结构复杂,直接进行场景驱动对硬件水平要求高,编程困难,利用本文提出的几种方法实现了将机
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 肺癌护理中的健康教育
- 任职教育培训考试制度规定
- 天纳克绩效考核制度
- 审计局外勤经费管理制度
- 审计审核复核审理制度
- 审计薪酬日常管理制度
- 安装工程结算审计制度
- 乡食品安全教育培训制度
- 审计局重大项目督察制度
- 审计机关网络文明制度
- 2026山东省港口集团有限公司社会招聘笔试备考试题及答案解析
- 360人工智能安全团队2026年OpenClaw安全部署与实践指南360护航版
- 2026云南楚雄市司法局第一批司法协理员招聘10人考试参考试题及答案解析
- 外贸服装业务部管理制度
- 中央预算资金34个细分领域资金分布比例及项目申报实操
- 2026青海海东公安招录32名人民警察备考题库及答案详解(夺冠系列)
- 2026西藏自治区教育考试院招聘非编工作人员11人备考考试题库及答案解析
- 2026年政府采购培训试题200道及参考答案【新】
- 家长安全培训内容文案课件
- 肿瘤学课件教学
- 高级程序设计题库及答案
评论
0/150
提交评论