前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇数控仿真系统范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
OpenGL是SGI研发的一种三维图形接口,通过该接口获得的三维图形效果更为逼真,质量更高,这也是目前交互式图形处理的一个衡量标准。Win32下OpenGL是一种与硬件、窗口系统以及操作系统独立的API具有过程性特点,其命令解释模式的命令由客户发出,被服务器解释并处理,其中含有上百个库函数,在运行时只需添加相应的动态库便能够实现对OpenGL的支持。OpenGL的功能可以概括为以下几点:①几何建模。除点、线、多边形绘制函数外,OpenGL图形库还提供了椎体、多面体等复杂三维物体以及曲线、曲面绘制函数。②坐标变换。通常坐标变换主要有视图变换、造型变换、视口变换和投影变换四种,OpenGL还能完成矩阵变换以及附加剪裁面变换。③光照与材质。光照分为辐射光、镜面光、环境光和漫反射光,可设置8个光源,用光反射率表示材质。④设置颜色模式。包括颜色索引模式和RGBA颜色模式。此外还具有纹理映射、位图显示和图像增强以及双缓存实时动画和人机交互技术功能。
2.1加工仿真系统各功能模块
在数控切削加工过程中,实时三维仿真可根据输入的NC代码要求进行动态过程仿真,这一过程可分为数据收集和输入、几何实体模型构造、图形仿真结果交互等阶段,各阶段都赋予了相应的定义,为使动态过程仿真达到交互性、准确性和有效性的要求,应对各功能模块进行优化。系统以软件用户界面和内部计算检查过程为主体,软件用户界面由公共模块、NC代码编辑模块、仿真显示模块和加工控制模块构成,其中,公共模块对CFild类的成员函数有所继承,其功能显示在File下拉菜单;NC代码编辑模块具有强大的文本编辑功能,对于一些较为简单的加工零件无需预先编程,除一般记事本基本功能外,还设有互锁功能,可对编辑后的代码进行读写切换,更好地保护代码,保证加工顺利进行;仿真显示模块将图像和数据信息呈现在计算机屏幕上,实现动态显示,通过调节窗口便能够观察到加工工件,图像和数据信息由OpenGL收集,其处理过程为:图像操作/逐个顶点操作光栅化各片段操作帧缓冲区仿真图像显示;加工控制模块根据代码检查解释加工进给信息,整个路线为:回参考点对刀开始加工暂停加工退出加工[2]。内部计算检查过程包括内部模块和外部数据输入,内部模块由NC代码检查和解释模块、代码过滤以及内部仿真计算构成。
2.2三维模型在OpenGL中的实现
在Windows平台下,基于OpenGL的应用程序要通过RC来完成绘制工作,系统图形仿真界面通过C++定义的类CRenderView来表示,其中定义了一系列三维实体绘制函数,能够完成坐标的旋转、缩放、平移等操作,动态仿真过程的运动关系取决于加工数据的即时变换,而空间切换的实现则通过矩阵元进出栈操作来实现,系统的几何建模包括刀具、机床、加工工件等实体建模,需要对零部件之间的组装关系以及几何信息的拓扑关系、描述坐标关系进行定义,因此,该系统应用于数控加工仿真的重点就是对各实体进行建模,这在实现起来存在一定的难度,需要对系统进行进一步的优化升级[3]。
3结论
近年来,国家大力扶持汽车工业、航空工业和船舶制造业的发展,三维曲面零件的应用越来越广泛。飞机构建、发动机涡轮等零件的加工,通常要用到多轴数控机床进行加工。特别是螺旋桨是舰船推进系统中最为关键的一种零件,其制造精度及表面质量将直接影响到推进系统的出力、效率、运行稳定性、机组寿命和制造成本,研制高性能的舰船螺旋桨对舰船的发展起着重要作用。五轴数控加工技术作为一种先进的加工方法,在复杂曲面(如螺旋桨叶面)加工中在国外已得到广泛的应用,它能大大提高加工的效率和曲面的加工质量。多轴数控技术的研究对国家整体科技力量和综合国力的提高具有重要意义。
多轴加工,特别是五轴多联动加工技术相对于三轴加工具有以下一些优点:更好的柔性、更快的材料移除速率、更高的表面加工质量、更低的手工精加工处理。由于在给定的精度下,五轴加工可以有更大的加工量和较短的总刀具路径长度,可以比三轴加工提高10%-20%的生产效率。但在提高柔性的同时,由于多了两个旋转自由度,给刀具路径生成、图形仿真增加了难度和复杂性。
数控加工是数控机床在数控代码(NC)的控制下完成零件的加工过程,它是CAD/CAM技术作用最直接和最明显的环节。对于需要特别形状的工件,或者更高的加工精度,数控加工的优越性就越容易得到发挥。在CAD/CAM过程中,特别是多轴数控,在数控机床加工中,零件程序的正确与否直接决定了加工的质量和效率,而且不正确的加工程序将导致生产事故。NC代码在加工过程中是否因为不合理而产生过切,刀具的走刀路线、进退刀方式是否合理,刀具与非加工面是否干涉等都很难预料,往往需要花费大量的财力物力进行修正。由于零件形状的多变,且在刀具轨迹生成过程中一般不考虑具体机床结构和工件装夹方式,因此,生成的零件的NC程序也并不一定能够适合实际加工情况。因此零件加工NC程序在投入实际加工之前,通常必须进行试切这一环节,来检验NC程序的正确性和零件设计与加工过程中的缺陷。
为了解决复杂零件加工的矛盾,加工出高品质的零件,传统的方法是在加工前采用试切的办法进行。但这种方法生产成本较高,且降低了生产效率。如果需要更为苛刻的条件,对试切的材料的选择会提出更高的要求,增加了成本。另一种方案则使用了数控仿真方法,它是利用计算机来模拟和验证数控加工的实际过程和结果,从而达到验证数控代码正确性的目的。由于仅仅使用计算机进行模拟,没有材料的损耗,所以可以节约成本,降低生产成本,提高生产效率。但由于计算机模拟加工目前还没有考虑切削变形等因素,所以模拟加工不能完全表现试切的真实情况,还需要再机床上进行试切。但总体成本降低,节约了时间。
目前广泛使用的多轴数控铣床属于材料的切削,还有针对特殊行业应用的多轴数控设备,例如应用于航空、船舶等的针对管料进行进行形变的多轴数控弯管机。后者通用仿真软件应用较少,需要针对其行业特点进行单独开发。从数控的系统来看,仿真系统可分为几何仿真和力学仿真系统。几何仿真系统分析刀具和工件模型的运动几何关系,仅考虑物体的变形或者材料的切除,将刀具和机床视为刚性体,用图形的方式来表达及验证数控代码的正确性。这种仿真能够应用于绝大多数场景,能够检测到大多数数控代码的缺陷,防止机床刀具的损坏,虽不能完全避免试切,但可以在很大程度上减少加工之前的时间及物力消耗,减少投产时间,降低成本。
[关键词]数控仿真软件;数控机床;教学实践
中图分类号:H319 文献标识码:A 文章编号:1009-914X(2014)18-0227-01
主要内容:
工业化和自动化已经成为制造生产领域的发展主题,随着智能加工理念和自动化加工需求的不断深化,以数控机床为代表的新一代自动加工设备开始在制造业中普及开来。我们可以看到数控机床在集成了柔性加工、多维加工、曲面加工和多轴联动等最新加工技术的同时,还兼容了数字编程和辅助设计等功能,这使得每一个数控机床都能成为一个不同规模的加工中心,满足不同的加工需求。但是正是由于数控机床的功能多样性,使得数控机床的操作要求十分严格,操作者不仅需要具备扎实的机械加工基础知识和操作技能,还需要对数控编程技巧、数控加工技术原理和加工工艺制定等具备一定的知识储备,这就对当前的数控机床操作人才的培训模式提出了很高的要求,如何进一步强化数控机床操作人才培训的有效性和成材率,这将是本文要集中探讨的话题。
一、数控仿真软件概述
从技术层面来看,数控仿真软件集成了虚拟现实技术和计算机图形学技术,并且能够实现虚拟现实的数控机床操作试练。虚拟现实技术通过量化实际系统的系统参数、系统环境、声光电等现象,能够真实的还原系统操作环境,给与操作者以极高的真实体验;可以对设备进行操纵,可以查看生产过程、实验过程、施工图过程、供应过程等活动的各种技术参数的动态值,从而确认现实系统是否有能力完成预定的任务和如何去完成,也可从中发现运动过程的缺陷和问题,予以改进。
目前来看,数控仿真软件主要包括了两种,一种是模拟数控机床加工环境和加工过程的虚拟数控机床仿真软件,另一种就是以零件设计和加工程序为主线的CAD/CAM一体化软件。数控机床仿真软件能够让操作者快速熟悉数控机床的结构组成、工作流程和操作要领,通过外接数据库,能够对当前主要的数控机床进行针对性培训,效果十分突出;零件加工仿真软件则将重心主要集中在零部件设计、零部件加工工艺设置、数控加工程序编制等环节上,目前常见的零部件仿真软件主要有solid edge、Pro/engineer、MasterCAM、Solidworks、CAXA等,这些仿真软件能够让操作者快速熟悉机械加工过程,培养机械专业技能。
二、数控仿真系统在数控机床教学实践中的应用
在目前的数控机床操作人才培训中,主要也是针对上述两种仿真软件形式,进行针对性极强的教学实践培训,详细应用内容如下所述:
1)数控机床仿真软件在数控机床实践教学中的应用
数控机床仿真软件是基于虚拟现实系统平台而搭建起来的操作系统,它可以在虚拟现实数控机床数据库的支持下,完美的再现当前主要数控机床的结构组成和工作环境,在数控机床的教学实践过程中,首要科目是要熟悉数控机床的结构组成,受到经济条件的限制,多数数控机床加工学校很难对当前的各种类型的数控机床进行现场拆装,数控机床仿真软件中的模块分解过程能够实现全息装配过程,仿照真实数控机床零部件尺寸,进行的实际工业化装配流程的演练,能够进一步加深学生对于数控机床的进给系统、多轴联动系统、曲面加工系统的空间形象的理解;其次是典型加工工艺的教学实践,数控机床仿真软件能够对工件毛胚定位、工件装夹、夹具工作原理、压板安装流程、加工基准对刀原则、刀具安装和选用规范、机床手动操作和自动操作指令条码等,进行逐一的繁复讲解,而且允许学生在课后进行温习和尝试;再者是完善的图形数据和加工标准数据库资料,使得学生可以在仿真软件自带的典型数控机床编程程序的指导下,进行实际编程,并且在虚拟加工平台上,对自定义的工件进行工艺设定,并且检查加工工件的尺寸误差和质量达标情况;该仿真软件系统结合自动化考核系统,能够实现教学、实践和考核一体化的培训模式。
2)零部件加工仿真软件的教学实践应用
熟知零部件的造型原理和加工工艺流程是保证数控机床操作者能够进行复杂加工过程的技术基础,零部件加工仿真软件为学习者提供了一个高仿真度的零部件数模设计,包括了曲面造型设计和参数化设计这两种主要的形式,对于简单曲面造型和复杂曲面的造型原理都能有一个清晰的理解过程;其次是对零部件加工工艺的熟悉过程,工件加工的第一道工序是要进行基准对刀,不同的零件对刀的原则和位置选择都大相径庭,比如轴对称零部件、杆件、板件、螺旋件以及内内孔加工等等,这都需要学生们在平时的学习过程中熟练的分析不同类型零部件的加工工艺选择准则;再者是对数控加工刀具的走刀过程和走刀程序进行针对性的讲解,这种直观的培训模式有助于学生养成数控加工思维,结合实践性极强的零部件金工实习,使得学生们在自己动手加工典型零部件时,对于零部件造型保持的关键性因素、令不加加工失效的主要原因以及加工过程的重点注意事项都能有一个直观而且亲身经历的过程,经过这种培训模式所培养出来的数控机床操作人才将兼具专业知识背景和机床操作技能,能够适应快节奏、高技术含量的操作需求。
总结:
随着自动化技术和机械加工技术的不断发展,数控加工已经成为机械加工领域使用最为广泛的技术形式。数控机床的使用需要一定的专业知识背景和操作编程经验,相关操作技术人员已经成为当前机械加工市场的稀缺人才。本文概述了数控加工仿真系统在数控机床教学领域的应用现状,并就完善数控仿真软件的教学价值提供了新的思路。
参考文献
关键词:数控加工;自动编程;仿真实验系统;建立模型;绘制模式;模型重构 文献标识码:A
中图分类号:TG659 文章编号:1009-2374(2015)21-0023-02 DOI:10.13535/ki.11-4406/n.2015.21.012
所谓数控加工,主要指的是一个零件按照图纸的要求进行加工的整个过程,在这个加工过程中,需要根据图纸上零件的所有数字化的定义来制定相应的指令,而且能够有效的保障零件在加工中具有较高的精度,对于最终加工成的零件来说,在对这一零件进行检验时,能够更加方便地对零件的整体形状与尺寸进行控制,提高整体的精度。就实际情况来看,当需要进行加工的零件复杂程度与精度要求都十分高时,数控加工便能够更好地发挥出其特点与优势。在实际的操作过程中,无论数控程序编写的多么精细,仍然会有着较多的问题,而且传统的手动编写程序不仅容易出错,而且需要消耗较多的时间。由此可以看出,将自动编程技术引入到数控加工程度中具有较高的意义,能够有效的提高整体数控系统的精度与效率,再加上仿真性的实验,便可以根据不同零件的要求进行模拟加工,具有十分高的实用性。
1 数控加工自动编程系统的构建
1.1 数控加工中自动编程的要求
在数控系统中应用自动编程技术,主要便是将数控技术与计算机技术进行有效结合,通过计算机的思想将数控加工中的各个环节都紧密地结合在一起,所以,在实际应用中一定要将所有的计算机辅助加工软件都联系在一起,比如CAD、CAM等。在数控加工编程中,首先需要做的便是能够有效地识别图纸,对于图纸识别的软件目前应用最广泛的便是AUTOCAD软件,通过使用这一软件来为整体系统进行服务是十分合适的。之后,需要通过这一软件将零件所有的特征进行总结,与数控机床进行结合,所以在加工过程中需要对数制机床有一定的认识与了解,能够熟练地使用数控机床,特别是对于G代码应当有相当清楚的理解。
1.2 数控加工自动编程技术不同模块的功能
在自动编程技术中,需要对整体系统细分成不同的模块,通过这些模块的共同工作来完成整体的工作。
第一,对图形进行分析。这一部分主要指的是通过使用计算机软件对需要加工的零件进行分析,总结出这一零件所具有的特征,将所有的特征进行分类,在加工的时候便可以根据这些特征编写相应的加工工序。
第二,对数据进行相应的处理。在完成对零件特征与信息的收集与整理之后,便需要建成的数据库对这些特征进行分析处理,通过相应的算法生成刀具的运动
轨迹。
第三,将需要的工艺进行输入与分析。对于不同零件的加工来说所需要的工艺也有着一定的差别,所以,需要根据加工工艺的不同将所需要的工艺输入到自动编程的程度当中,以此来确定在加工过程中切削的用量等必需的参数。而且这些参数都需要是临时的,因为每次加工的条件不同所对应的加工参数也不同。
第四,整体自动编程数据库的建立。在自动编程过程中,需要对零件所具有的信息进行处理,而处理的时候便需要从数据库当中得到相应的信息,将这些信息进行重新的组合便能够生成加工零件所对应的加工程序,才能够进行整体的数控加工。
2 数控加工仿真实验系统的构建
在数控加工技术中,通过使用NC来进行切削的仿真主要可以分成两个部分,分别是几何方面的与力学方面的。对于前者切削技术来说,主要是需要考虑一些物理量,这些物理量主要指的便是切削参数与切削力,这两个参数对于走刀来说是十分重要的,可以有效地验证NC程序所具有的正性。对于整个切削技术来说,其需要物理仿真的一种,它的工作过程可以被看作是通过使用动态力学来完成对刀具的预测,以此来完成对各个参数的控制作用,最终完成整体加工过程的优化处理,提高整体加工的精度。
而所谓的几何仿真,则主要是通过使用几何建模的方面来进行的,这种方法最重要的便是利用几何方面的空间与离散的方法来进行计算的,最终达到提高加工精度的效果。
通过对这两个加工技术的比较,通过使用几何的技术能够有效地将零件进行模拟化,并且将模拟化生成的零件的模型输入到整体加工系统当中去,这样一来就能够有效地提高整体加工的效果,使得最终得到的仿真结果与实际要求仅具有较小的差别。本次研究工作便是通过使用这种技术,在原有的CNC的基础上进行了二次开发,从而为工作人员提供一套具有较高操作性与可视性的软件,并且通过相应的算法与模型的建立以提高整体数控加工的精度。另外,本次二次开发所得到的程度具有较高的美观,能够给使用者提供一定的真实感,下文便对这一系统进行介绍。
数控加工仿真模型的建立有以下三个方面:
2.1 建立模型
在计算机图形学中,一般常用三角形网络模型来描述物体。随着零件加工精度要求的提高和加工设备的完善化,三角形网络模型就需要上万个,甚至几十万个三角形面片构成,为了进一步简化数控加工零件模型的动态仿真计算过程、节省大量的存储空间、更好地实现仿真绘制,本文选取零件表面规则三角片化的方法,这样一来,每一个三角片所占的内存空间大大减少,平均每个仅占一个内存空间。
2.2 绘制模型
采用零件表面规则三角片化方法将零件模型建立好以后,利用OpenGL图形函数将所有的三角片进行绘制,加工零件的外观就显现出来了。三角形的顶点就是网络的节点,各节点高度值就是高度缓冲区存储的数值,因此这种建模方法具有方便遍历到每个网络节点的优点,能够快速将所有的三角片绘制完成,能节约一定的实验时间。
2.3 动态仿真的模型重构算法
车削过程就是模型的重构。在车削的系统动态仿真进行车削过程时,先将车削模型转化为铣削模型,就是钢板(宽为2πR、厚为R)冲压成钢柱(半径为R)的一个逆过程,如此就完成车削模型与铣削模型的转化了。要注意,在转化的过程中,也要将车刀的运动轨迹作相同的转换。车削模型与铣削模型统一在一起后,其算法也就是由具体变为一般,代码也得到简化,更易于
实现。
3 结语
在基于通用计算机辅助机械设计软件的平台上,开发面向加工设备的数控自动编程系统,使设计CAD直接面向加工CAM,同时面向加工设备的思想使CAM有了与CAPP、CAE联系的桥梁,使得CAD、CAM、CAPP、CAE能很好地统一起来,有利于计算机集成制造系统的实现。数控加工仿真系统的实现不仅可以用作数控编程人员的培训,让受训人员可以进行实践操作,增强他们的实践能力,减少昂贵的设备投入,还可以在制造企业内部使用,实现快速、精确的数控加工程序仿真,应用价值非常高。
参考文献
[1] 刘晓玮.浅谈数控技术发展趋势[J].科技咨询,2008,(3).
[2] 吴义荣.我国数控技术与产业的现状、发展趋势及对策[J].CMET液压装备与制造技术,2005,(2).
[3] 蒋杨永.基于仿真技术的数控实验平台构建及应用
[J].计算机仿真,2003,23(11).
[4] 清宏计算机工作室.VisualC++编程技巧[M].北京:机械工业出版社,2001.
[5] JonBates,TimTompkins.实用VisualC++6.0 [M].北京:清华大学出版社,2000.
【关键词】虚拟操作;数控车床;Virtools
一、引言
近年来,虚拟现实与计算机仿真技术已在煤矿[1-2]、石油等领域取得了较好的应用。虚拟机床是随着虚拟现实和机床技术不断发展而提出的一个新研究领域,运用三维虚拟交互技术进行数控机床内部结构拆装与仿真是虚拟机床系统的一个重要组成部分,它能全方位表达和展示机床结构及其工作原理。本文首先对虚拟拆装系统的开发流程进行了阐述,给出了系统的技术路线和开发环境,从构建机床三维模型和管理模型数据、人机交互原理与实现、运动控制与实现、碰撞检测等方面对拆装与仿真系统进行详细研究。最后在Virtools环境下完成了数控车床内部结构的虚拟拆装与仿真系统,效果良好。
二、系统开发平台与技术流程
系统开发在WindowsXP平台下进行,运用三维交互图形软件Virtools进行虚拟拆装的交互设计与仿真,利用VisualStudioC++编程工具进行软件系统整合设计。系统技术路线如图1所示。
Virtools是法国达索公司开发的一套虚拟现实仿真软件[3],该软件具备丰富的互动行为模块,可以开发出许多不同用途的3D产品,如计算机游戏、多媒体、建筑设计、交互式电视、教育训练、仿真与产品展示等。
仿真系统的开发流程是:
(1)运用三维建模软件对机床内部各结构进行几何建模,然后通过数据优化软件对模型数据进行约减,将模型转换成三角网格的格式,再导入虚拟交互软件Virtools中进行交互拆装开发。
(2)导入Virtools以后,需要对模型数据进行管理,设置机床各部件的层次关系,将各个模块分类进行管理,同时对光照、材质、纹理、行为模块等数据类型进行分类管理。为后续的程序开发奠定基础。
(3)根据数据车床内部结构的拆装脚本和顺序,运用运动控制行为模块对各部件进行人机交互控制开发。在开发过程中,主要涉及运动控制、模型显隐、动画控制、实时渲染等。
三、数控车床拆装系统开发过程
1.三维模型的构建与管理
数控车床三维模型的构建是系统开发的基础,采用Pro/e三维建模软件对CK6140数控车床进行三维建模。将机床分为:X轴系统、Z轴系统、六工位刀架、四工位刀架、尾座等几个大部分。对这几部分的各个零部件进行详细测绘与建模,形成装配体。最后汇总进行装配,形成整装配体。装配体如图2所示。为了提高渲染速度,降低模型数据量,需要对模型几何数据进行优化处理[4]。
为了便于虚拟场景的管理和模型运动控制,需要对三维模型数据型层次管理,对机床各部件进行父子级关系设置,对灯光位置、材质和纹理映射、交互传感器等资源进行分类管理。如图3所示。
2.人机交互的实现
在Virtools环境下,人机交互的实现过程是通过鼠标、键盘或其他输入设备首先发起一个交互事件,虚拟环境中的虚拟传感器监听到事件后响应的对应事件,控制响应的行为模块动作来响应输入事件,直到事件完成后再返回。在人机交互编程中,可以采用Virtools自带的BB进行行为编程,也可以用Script脚本节点进行编程,考虑交互过程中各个动作之间是一个有序的紧密的衔接过程,在这里采用消息驱动机制来链接每个行为模块。
任何一个模块设计都需要对参数进行设置。在每个行为模块中,模块参数由名字(pName)、类型(pType)和数值(pvalue)三部分组成。输入参数通过BB、BG或者paramOp顶部的小三角来表示。参数输入特别是本地参数有一个源点,作为它的pValue。输出参数通过BB,BG,或一个paramOp底部的小三角来表示。参数输出能够有一个或者更多个目的地,目的地在参数值改变时立即被更新。
行为模块之间动作的输出和输入端用直线相连接,这条连线称之为bLink,bLink表达了模块间的运行顺序。当行为模块被触发激活时,就会执行它的功能,显示它的效果。行为模块的输入端接收以事件为基础的讯号,负责触发该行为模块。当行为模块完成它所负责的任务后,就会输出一个事件讯号,再作为另外一个行为模块的输入,触发下一行为模块进行动作,直到整个事件完成为止。图4为键盘控制事件的行为模块图。
3.运动的控制
三维虚拟模型的实时控制是通过对机床部件的无干涉运动路线进行分析后,确定各运动部件的自由度,再运用位置控制模块对三维虚拟模型的六个自由度来进行控制。在虚拟环境中,将模型定义为X、Y、Z、H、P、R六个运动类型。其中XYZ分别表示选着XYZ移动,HPR表示绕XYZ转动。对于模型之间存在关联运动的部件,系统采用矩阵换算和基于旋转角度的方法来进行求解运算。系统采用Translate、Rotate、Script等行为模块来进行联合编程开发。实现对虚拟零部件的拆装控制。
在Virtools软件平台中,对物理进行运动控制的行为模块BB主要有TranslateBB和RotateBB。其中TranslateBB有四个输入参数,第一个参数Targete是目标参数,用来指定该BB所要控制的物体,参数的类型是三维实体;第二个参数TranslateVector是三维向量参数,该参数有三个值,分别是X、Y、Z,三个值分别用来控制三个方向上的运动矢量;第三个参数Referential是一个参考值,即在移动时所参考的物体,因此也是一个三维实体类型的参数,第四个参数是一个用来设置是否在移动时影响该物体的子级物体。
RotateBB有五个参数,第一个参数Targate为目标参数用法与TranslateBB中的该参数相同;第二个参数AxisofRotation是一个三维向量参数,因此也有三个参数需要设置,分别是X、Y、Z,它们的作用是来控制物体将要绕着哪个轴转动,第三个参数是AngleOfRotation是一个角度参数,用来设置旋转的角度,其他参数跟TranslateBB中的参数用法相同。
4.碰撞检测
在虚拟环境中,由于人机交互和物体的运动,数控机床各部件间经常发生碰撞反应。碰撞检测是数控行为仿真中的一个难点,它需要具有实时性和精确性两个特点。
本系统采用基于层次包围盒的方法对机床部件进行碰撞检测。借助一个耗费函数来分析碰撞检测算法的合理性[5]。
其中T是碰撞检测的总耗费时间。Nv是参与重叠测试的包围盒的对数,Cv是为一对包围盒做重叠测试的耗费,Np是参与求交测试的几何元的对数,Cp是为一对几何元做求交测试的耗费,Nu是物体运动后其包围盒层次中需要修改的结点的个数,Cu是修改一个结点的耗费。
在Virtools软件中,碰撞检测模块有三个模式:Automatic、BoudingBox和Faces。每个模式的碰撞检测的精度不同,其中Automatic模式在碰撞检测中各物体采用自身的精度;BoudingBox模式采用六面体的包围盒;Face模式是在面与面之间进行的碰撞检测,这种精度最大。
四、系统实现
采用Pro/e进行三维几何建模和整体模型装配,然后通过RightHemisphere进行三维模型数据的分类管理,进行数据转换后通过Virtools控件将模型数据导入虚拟环境中,运用行为模块对交互事件进行编程开发,最后用VC++打包完成系统开发。系统界面如图5所示,图6为数控车床中四工位刀架的拆装图。
五、结束语
从机床三维建模与模型数据管理、人机交互与运动控制、碰撞检测等方面对机床内部结构虚拟拆装系统的开发进行了阐述。基于Virtools开发的虚拟机床拆装可以进行网络,因此,也适合在网络上传播,系统可以全方位任意视角对机床内部结构进行展示,可以人工进行虚拟拆装,非常适合于数控机床原理与结构的教学。
参考文献
[1]王长平,张志强,张晓强.基于Virtools 以及WinCC的采煤机远程监控平台构建[J].煤矿机械,2009,30(12):202-204.
[2]张文磊,郑晓雯,陈宝峰等.基于虚拟现实的液压支架工作状态研究[J].煤矿机械,2012,33(10):72-74.
[3]徐英欣,杨建文,张安鹏.Virtools虚拟互动设计实例解析[M].北京航空航天大学出版社,2012.