计算机应用
Computer Applications
1999年 第19卷　第8期 Vol.19　No.8 1999



虚拟现实及其在机械工程中的应用
魏国前　范　勤
　　摘　要　本文论述了虚拟现实的基本特征、典型应用及其发展趋势，例举了常用的虚拟现实软件和硬件产品，并在此基础上以起重机为例，分析了虚拟现实技术在机械工程中的应用。
　　关键词　虚拟现实，CAD
　　1989年，美国的VPL Research 公司的创始人Jaron Lanier首次正式提出“Virtual Reality（VR）”这个名词，意指“计算机产生的三维交互环境，在使用中用户是‘投入’到这个环境中去的。”近年来，由于各种相关技术和硬件的发展，虚拟现实技术的发展也十分迅猛。VR有4个特征：沉浸感；交互性；多感知；自主性。
　　由于VR是在人类为改善与计算机的交互方式，提高计算机的可操作性所进行的努力中产生的，因而其本质上是为了提供一种高度融洽的人机关系。从广义上说，只要达到此目的，即使没有完全达到上述的4个特征，我们也认为是虚拟现实。
1　虚拟现实的软硬件状况分析
　　虚拟现实系统中的计算机主要要完成三项任务：虚拟境界的生成与管理，数据输入，数据输出。为了使系统拥有较好的交互性能，不同的任务要使用一些特殊的软硬件。与虚拟现实有关的软硬件更新很快，因此，我们有必要简单讨论这些现代化的设备。
1.1　建模软件
　　虚拟现实发展至今，已有了许多的建模软件，它们使用的机制各有不同，对用户的要求也有高低，当然，其功能上的差异也是很大的。其典型代表为：
　　Rend386是一个免费的程序库和世界播放器，功能较弱，适于DOS环境；
　　World Tool Kit for Windows 是Sense8 公司以 Windows动态连接库的形式发布的虚拟现实程序库，在标准SVGA下运行，可以在窗口中显示带纹理映射的虚拟世界，也可全屏显示。该程序支持DDE，因而可以通过电子表格、数据库或其它程序来控制虚拟世界；
　　虚拟现实建模语言VRML(Virtual Reality Modeling Language)是HTML的3D模型，其目的是提供一种用于网上的虚拟世界的描述方法。目前已有VRML1.0、VRML2.0、VRML97等几种版本；
　　OpenGL（开放式图形语言）是Silicon Graphics开发的一种建立图形库的语言，该语言功能强大，是实现虚拟现实的较好工具，但由于其编程量大，又较难掌握，因此目前只在专业人员中有较广的应用。
1.2　输入数据的软硬件设备
　　语音信号的输入　语音输入为用户与虚拟环境交互提供了一种方便的方法。提供语音输入功能需要一个普通的麦克风和某种语音识别软件。语音识别技术发展至今，已经能在货架上见到待出售的语音识别软件。这种软件有：SoundBlaster 公司的 Voice-Assist 软件,Command 公司的IN　TM　○ Voice 软件,以及Dragon 系统的DragonDictate　TM　○ 软件。
　　肌肉信号的输入　生物控制器是用于捕捉特性命令的输入设备。它能够捕捉活动，如肌肉的运动，并且产生电子信号。例如：位于眼睛附近的皮肤上的电极能够捕捉到眼部肌肉的活动，从而允许我们能够通过眼部肌肉的运动而遨游于虚拟世界。这种设备仍然处于实验阶段。
　　手部运动信号的输入　用于捕捉设计者的手势和手部运动的输入设备可分为三种：跟踪设备，点输入设备，手套型设备。跟踪设备用于捕捉设计者的手或头的位置和方向，以或机械的，或超声波的，或磁学的，或光学的系统为基础的捕捉传感器都是可选用的。这种设备的一个例子是 Ascension技术公司的 Flock of Birds　TM　○。点输入设备包括六自由度鼠标和力矩球。手套型设备是用含电线的布料做的手套，戴在手上就象一般的手套一样。其中包有或纤维光学式的，或电子式的，或电阻式的传感器，这些传感器可以测量手指关节的位置。在虚拟环境中手套被用作为手势输入设备。
1.3　输出数据的软硬件设备
　　可听信号的输出　可听输出有一个优势，即它是可以与可视信息同时存在的交流渠道。3D声音可以用不同的声音表现不同的位置，因此给我们一种更加接近真实的虚拟体验。
　　可视信号的输出　3D可视反馈可以使用两种类型的技术。第一种是头戴式显示（HMD），它一般使用两支液晶显示（LCD）屏幕，给每一只眼睛都提供独立的图像。第二种是使用立体形象监视器和 LCD 保护眼镜。在这种系统中，虚拟景象的两个形象（一只眼睛看一个）在监视器中以非常高的速率交替显现，从而产生一个立体感的形象。
　　可触信号的输出　这种类型的反馈设备使用户能感觉到虚拟环境中的力，并能感觉到与物体接触时受物体的阻碍。模拟不同情况下触觉反馈的一个方法是使用电信号或手上不同方向的振动。另一个途径是在手套中使用可充气的袋子提供触觉反馈。对于力的反馈，一些机械设备（臂）可以在用户试图操作虚拟环境下的物体时提供阻力的反馈。
1.4　虚拟现实在当前的典型应用
　　a) 遥控机器人
　　b) 医学
　　c) 建筑
　　d) 训练残疾人
　　e) 科学可视化
　　f) 娱乐
　　g) 作为一种新型人机交互界面
2　虚拟现实在机械工程中的应用前景
　　机械制造业是一个古老的行业，同时也是国民经济发展中一个不可缺少的行业。下面我们假设有一个用户需要一种非标的起重机，而且时间要求十分紧迫，以此为例来探讨一下VR在机械制造业中的应用。
2.1　初步设计阶段
　　在这一阶段有两个模块可以调用：一个为物件库模块，其中包括了起重机所有零部件的各种型号、尺寸的实体造型(包括其属性信息)等，若事先把所有实体一个个地造好，并存储起来，则费时费力又浪费存储空间，因此我们采用AutoCAD中的ADS或ARX进行参数化造型；另一个模块为方法库模块，这个模块实质上是包含所有起重机设计步骤，设计准则以及一些专家的经验的数据库，使用这个模块，只要用户输入主要设计参数，如类型、吨位等，系统就可以自动或半自动生成缺省的设计方案，该模块还允许用户按需调整起重机的配置，甚至可以交互式地进行一些非标准件的设计，以达到用户的要求，这一部分用VC++5.0编制。
　　运用这一系统，设计者可得到起重机设计的初步配置。
2.2　建模仿真阶段
　　在这个系统中，设计者将在CAD中生成的实体造型信息输入到虚拟环境中进行实时的装配，若发现不合适的地方，如位置上发生干涉，运动学性能不符合要求等，允许设计者在虚拟环境中进行修改或更换，并将修改的信息返回至CAD的图形数据库中。虚拟环境采用VRML建立，其交互方法也采用VRML编制。信息的交换直接采用DFX文件和wrl文件转换技术。这一部分主要是通过视觉效果，并辅以听觉感受，给设计者以感官认识，如起重机的外形，工作运动情况等，并使设计者在虚拟环境中与起重机模型进行直接交互。
2.3　完善设计阶段
　　针对起重机的性能特点，这一部分集成了有限元，动态仿真，最优化设计，可靠性分析等模块。给初步设计完成的起重机加上某种载荷信息，使计算机自动对此起重机结构进行应力，应变，疲劳，强度，振动等计算，并将计算结果可视化，通常的方法是使用颜色来显示不同大小数字的分布。在虚拟环境中，我们还允许用户动态的看到起重机在载荷作用下的工作情况：当鼠标移至结构上某一点时，动态显示计算值的大小；若此处计算值超过许用值时，计算机会发出警告声响，用户还能切开此处看断面损坏情况；若超载，用户还能看到起重机损坏情况的动态过程。通过这些数字在感官上的反映，促使用户不断的修改设计参数，使起重机的设计质量达到最高。
　　总之，这一部分能使用户得到比较完善的设计结果，并且计算机会把设计结果向后传给CAD系统，自动生成二维图。
2.4　加工制造阶段
　　传统的计算机辅助设计（CAD）和计算机辅助制造（CAM）之间有一个鸿沟，即数据信息的传递问题，用计算机辅助工艺过程（CAPP）来填补这个鸿沟有着诸多困难。由于虚拟制造技术是以在计算机上制造数字化产品为目的的一种软件技术，因此用此技术克服这个鸿沟比较容易。在这一部分可进行热加工工艺模拟，加工过程仿真，产品装配仿真等工作。
2.5　产品的广告与漫游
　　为了适应市场竞争的要求，设计厂家不应该坐等用户来找自己，而应该主动把自己厂家的产品推向市场。将虚拟现实制作的广告与网上漫游技术结合起来，使用户通过网络能在设计厂家设计的产品中漫游，并能直接在虚拟环境中对产品的需求方面进行实时交互，这样可提高设计厂家的竞争力，为设计厂家谋得更多的市场份额。
　　虚拟现实是一项新兴的技术，它还有很多不完善的地方，如：大规模数据的图形适时现实；触觉感知的有效实现；头戴式显示对人体健康的影响等等。但是，虚拟现实技术在各行各业中都有着广阔的应用前景，尤其在机械工程行业中，虚拟现实技术将给我们的机械工程行业带来一个崭新的天地。
作者简介：魏国前　硕士。主要研究方向：CAD、虚拟现实技术。　范　勤　副教授。主要研究方
　　　　　向：机械CAD/CAPP、虚拟现实技术及其在机械领域中的应用。
作者单位：魏国前　范　勤　武汉冶金科技大学机械工程系　湖北．武汉(430081)
　　收稿日期:1999-02-03
