1、第 4 1 卷 2 0 1 0年 1 月 石培科 , 高明, 黄罡 ( 三一重工股份有限公司) 摘 要 : 基于虚拟现实技术开发的混凝土泵车虚拟培训系统不仅大大降低了培训成本 , 而且使培训变得更方便 、 更安全。采用 Mu l t i G e n C r e a t o r 软件平台进行泵车、 场景等三维建模; : 通过 v e g a P r i m e 软件平台实现模型的驱动; 基于 M F C实现实物遥控器与虚拟系统接口连接 、 : 培训流程控制以及特效模拟。经过泵车操作手的试用证明该系统有很好的培训效果。 - t IIlItIIIItIIIIIltIIlIIltIIIltIltldK
2、 9 K 4 K 4 K 4 K 4 1 tIIllIIlIlI 关键词 : 虚拟现实 ; 泵车 ; 培i J i I ; Mu l t i Ge n C r e a t o r ; V e g a P r i me 虚拟现实( v R V i n u a 1 R e a l i t y ) 技术是近几年 发展起来的新兴技术。它利用计算机技术生成一个 逼真的, 具有视 、 听、 触等多种感知的虚拟环境 , 用户 通过使用各种交互设备 ,同虚拟环境 中的实体相互 作用 ,使之产生身临其境感觉的交互式视景仿真和 信息交流, 是一种先进的数字化人机接 口技术。目前 主要应用于游戏开发 、场景演示及一
3、些设备的操作 培训 。 在培训方面 , 该技术 以其独有的特点( 临场性 、 自主性、 多感受性 、 功能替代性 、 交互性和安全性 ) 为 人们开启了一种新思路。 毋庸置疑 , 虚拟现实技术以 其无可比拟的优势 ,必将对未来人类社会的教育培 训产生不可估量的影响。本文基于 Mu l t i G e n C r e a t o r 和 Ve g a P r i me 软件平台开发出一套适用于培训泵车 操作手的虚拟系统。 l 基于 Mu l t i G e n C r e a t o r 的建模技术 M u h i G e n C r e a t o r 是一个交互式的、 三维的 、 实时 的建
4、模软件 , 可创建 、 编辑和浏览视觉仿真的三维场 景。M u l t i G e n的图形数据格式是 O p e n F l i g h t , 它是一 种层次结构的可视化数据库。 C r e a t o r 提供了一种“ 所 见即所得” 的工作环境 , 包含了一整套建造层次结构 数据库的强大_T具集【 I j 。 一 , 一 1 1 场景建模 1 1 1 层次细节( L OI 卜kv e l o f D e t a i l ) 技术 L O D方法的基本思想是 :对场景中的不 同物体 或物体的不同部分 , 采用不 同的细节描述方法, 在绘 制时, 如果一个物体离视点 比较远 , 或者这个物
5、体 比 较小 , 就可以用较粗的 L O D模型绘制 。 反之, 如果一 个物体离视点比较近, 或者物体比较大, 就必须用较 精确的 L O D模型来绘制【2 J 。这样处理的好处是, 既不 影响三维仿真的效果,又可以减小整个场景的数据 量。通常采用 3种层次细节的 L O D模型较为适宜。 当物体在视点范围 0 8 0 0 m时使用细节程度最高的 原始模型 ,视点范围在 8 0 0 2 0 0 0 m时采用中等细 节的 L O D模 型, 2 0 0 0 m 以外使用最低层 次细节的 L O D模型。 I 1 2 实例( I n s t a n c e ) 技术 在复杂场景 中,由于会使用到
6、大量相同的几何 体( 如路灯 、 树) 而使几何体数量迅速增加 , 这将大大 增加存储空间。 实例技术可以解决这个问题 , 相同的 几何体可以共享同一个模型数据 ,通过矩阵变化安 置在不同的地方 ,这时只需要一个几何体数据的存 贮空间3 1 。 1 1 3 纹理贴图技术 纹理贴图是 C r e a t o r 里面非常重要的一个环节, 学兔兔 w w w .x u e t u t u .c o m 第4 1 卷2 0 1 0 年1 月 工程机械 它不仅降低 了建模的复杂程度 ,而且提高了模型的 逼真度 。 所需的纹理素材根据虚拟场景的需求 , 在真 实场景 中通过数码相机进行采集 ,是一项较费
7、时间 和精力 的工作 。 C r e a t o r 提供 了 3点 、 4点 、 放射 、 球面贴图等贴 图工具, 并且提供了强大的纹理库, 有 1 2 8 个格可以 放置纹理 , 每个格又可以放 2 5 6个纹理。同时, C r e a t o r 还提供 了 8个纹理层和一个混合纹理层的功能, 即一个面可以同时应用 8种纹理并实现混合效果而 不需要增加任何面。在贴图的过程 中应注意 以下事 项 :纹理图片的单位尺寸采用 2的 次方依据图片 内容 、 表现细节程度, 自行设定尺寸 ; 纹理贴 图的色 彩模式应使用 RG B模式, 而不能采用灰度 、 双色调 、 索引 、 C MY K等其它
8、色彩模式; 在纹理色彩方面不应 有明显的明暗反差, 色调应控制在 中调偏上, 避免现 实 中数码相片因 自然光照带来 的深浅不一的效果 ; 在贴图过程中多采用 3点贴图方式 ;不同的多边形 贴相同纹理时, 应注意基本单位大小一致 ; 不同贴图 在 f 坐标上应符合现实世界的比例尺度, 注意 比例 协调, 以此增强真实感 ; 明显有方 向性的贴图应和多 边形的走向相一致。 1 1 4 公告牌( B i l l b o a r d ) 技术 公告牌技术是场景建模 中常见 的技巧 , 它能通 过给一个面赋以纹理 ,使这个面永远朝 向视点 , 随 着视点的转动而转动 。 这样就 以一个面实现 了立体
9、的效果 , 以很少 的具有纹理的多边形模拟出了复杂 的躯体。 场景中规则 的模型( 如树木 、 花草等) 应采用 此法 。 图 1 是本文建模场景中的一角 ,其中的路灯使 用了实例技术 , 楼的窗户通过贴图来实现 , 有些树木 图 1 厂 区一角 采用了公告牌技术 ,而楼上的护栏则使用了层次细 节技术。 1 2 泵车建模 首 先在 P r o E中建立混凝土泵车 的三维模型 , 保存为 o b j 格式 ,然后导入 C r e a t o r 中。在视景仿真 中, 帧刷新频率与场景的复杂度成反比。 为保持一定 的帧刷新频率 , 体现实时l 生, 需要对模 型进行简化 。 在保持视觉效果 的前提
10、下, 合并 、 删减 多余 的平 面。 混凝土泵车虚拟培训系统 中,需要通过外设和遥控 器对泵车的支腿和臂架等进行控制 ,所 以需要设置 自由度。在 C r e a t o r中, D O F( D e g r e e s o f F r e e d o m) 节 点能够通过属性定义其下属几何体 的平移和旋转范 围,这种平移和旋转相对于节点几何体的局部坐标 系, 并 自动施加于下属所有节点 , 确保数据库层次上 多 自由度计算的效率。该泵车模 型中共设有 2 9个 D O F , 图 2是泵车 D O F模型示意图。 图 2 泵车 DOF模型 示意 图 2 基于 Ve g a P r i me
11、 的视景仿真 Ve g a P r i me (以下 简 称 v P )是 美 国 Mu l t i G e n - P a r a d i g m公司推 出的先进的软件环境 ,主要用 于实时视景仿真 、声音仿真和科学计算可视化等领 域。V P包括 L y n X P r i me图形用户界面配置工具和 V P的基础 V S G ( V e g a S c e n e G r a p h ) 高级跨平 台场景 渲染 A P I 。此外 , v P还提供了多个针对不同应用领 域的可选模块 , 使其能满足特殊行业仿真的需要 , 还 提供 了用户开发 自己模块 的功能。 视景仿真 的基本过程是在 C
12、 r e a t o r中完成模型 的建立 , 然后在 L y n X P r i me 中完成基本场景设计 、 环 境参数设置以及初始化所需信息等的配置,最后基 于 v c利用 V e g a P r i me A P I 函数进行视景仿真程序 驱动的设计4 1 。视景仿真基本框架如图 3所示。 2 1 L y n X P r i me的参数设置 L v n X P r i m e是一种可扩展的 、 跨平台的、 单一的 一 j一 目同圉日口曩 学兔兔 w w w .x u e t u t u .c o m y n X P ri 仃 1 图像界面 C r e a t o r建 立模型 设置初始
13、 参数 场景模型 fi t 泵车模型 fl t 生成 A C F 文件 I外设输入 【 。 主 v c 平台下; ; 开发程序 调用 v P 的 接口 函 数 场景渲染 皇 培训系统 图 3基于 v P的视景仿真基本框架图 G U I 工具,为用户提供了一个简单 、直接的开发界 面, 用于增加不同种类的模型, 为模型定义参数 。这 些参数都存贮于应用配置文件( A C F ) 中的一个模型 结构内, A C F文件包含了 V P在初始化和运行时所需 的信息荫 。本虚拟培训系统中 L V n X P r i m e 设置如下 : ( 1 )新建一个 A C F文件 , 命名为 P U MP a
14、c f 。 ( 2 )在 m y S c e n e面板的 C h i l d r e n栏中添加多个 O b j e c t s 模块,在其相应 F i l e 栏读入混凝土泵车及场 景等的 O p e n F l i g h t 模型文件。 ( 3 )设 置 Wi n d o w s ( 窗 口 ) 、 C h a n n e l ( 通 道 ) 、 O b s e r v e r ( 观察者 ) 、 E n v i r o n me n t E f f e c t s ( 环境特效 ) 、 I s e e t o r s ( 碰撞检测 ) 、 L i g h t s ( 光源 ) 、 F
15、 x E x p l ,D s i o ( 颗粒 特效 ) 、 A u d i o S o u n d A b i e n t ( 声音特效 ) 等面板参数。 ( 4 )在 V p Mo t i o n面板中设置运动模式 , 本系统 中设置为 Mo t i o n D r i v e ,并进一步设定泵车的行驶速 度的上下限以及转弯半径。 ( 5 )定义其 相关参数。 所有参数设置完毕后 , 保存文件。 2 2自由度( D oF) 的驱 动 在虚拟泵车 中支腿的打开以及臂架控制都要通 过对相应的 D O F驱动来实现。 首先要通过 v s N o d , fin d n a m e d 0 函数
16、找到待驱动的 D O F , 例如 : my Do f= s t a t i c c a s t ( c h e 一 f in d n a me d ( “ z ) ) ; 然后利用 v s D O F类下面的函数 s e t R 0 t e ( ) 和 s e t T r a n d a t e 0 来实现 自由度的旋转和平移: b j l _ D o f - s e t R o t a t e R ( a n g l e 1 , f a l s e ) ; 臂架 1 旋转 4 到 a n g l e l 角度 b j l D o f - s e t R o t a t e R ( a n
17、g l e l ,,t u r e ) ; 臂架 1 旋转 累加 a n g l e l 角度。 2 3 视角控制 在视景仿真中视角的控制非常重要, V P提供了 s e t R o t a t e 0 、 s e t T r a n s l a t e O 、 s e t L o o k A t 0 和 s e t L o o k F r o m 0 4 个函数来对视角进行控制。 s e t R o t a t e 0 和 s e t T r a n s l a t e 0 实现视角的转动和平移 ; s e t l mo k A t 0 和 s e t L o o k F r o m 0 实
18、现视角看 向某一位置还是从某一位置看过来 。在 本文开发的培训系统中 , 不仅有几个固定的视角 , 还 有一个通过鼠标控制的 自由视角,该视角的视点位 于一个可调半径的球面上 , 以泵车模型为球心, 通过 鼠标在屏幕的拖拉实现经 向和纬向的移动。鼠标的 信息控制基于 V P提供的类 M o u s e 。 s t r u c t Mo u s e b o o l m _l e f t B u n o n ; 鼠标左键按下为 t u r e b o o l m _m i d d l e B u t t o n ; 鼠标中键按下为 t u r e b o o l m _r i g h t B u
19、t t o n ; 鼠标右键按下为 t u r e i n t m _w h e e l ; 鼠标滚轮的滚动次数 i nt m x , m _y ; 鼠标在屏幕中的位置 flo a t m n x , m _n y ; 把屏幕按( 一 l , 1 ) 划分后 鼠标的位置l 。 2 4 碰 撞检测 培训的 目的就是让操作手能够通过遥控器准确 的控制软管末端的位置 ,所以软管末端 的碰撞检测 尤为重要。L y n X P r i m e中提供的碰撞检测难以满足 系统需求 ,本文采用包围盒的方式来实现软管末端 的碰撞检测。 v u V e c 3 v l ( x 1 , y l , z 1 ) ,
20、v 2 ( x 2 , y 2 , z 2 ) : v u B o x b o x ( v l , v 2 ) ; 创建 1 个盒子 I l l i s e c t o r =n e w v p I s e c t 0 r u s e r 0 ; 创建 1 个指针 m i s e c t o r - 一 s e t B o x ( b o x ) ; 创建包围盒 m _i s e c t o r -一 s e t E n a b l e ( t r u e ) ; 使碰撞有效 m i s e e t o r -一 s e t T a r g e t ( v p S c e n e : : e
21、m p t y 0 7 N U L L: 术 v p S c e n e : : b e g i n 0 ) ; m i s e c t o r - 一 r e f 0 ; 在类 v p I s e c t o r U s e r 中通过 s e t S e g m e n t ( ) 函数来 实现包围盒边界的创建。 3 实现效果 该混凝土泵车虚拟培训系统实现了遥控器与虚 ( 下转第 2 9页 ) 日同胃同口 l f 学兔兔 w w w .x u e t u t u .c o m 便 、 工作寿命 较长 、 安全便捷 等特 点 , 其 可靠性 、 适 应性较高 , 特别是性价 比较高 , 经济
22、性较好 , 所 以 C 公 司需要针对产品存在的问题进行改进 , 并应提高 系列 化程度 , 满足各层 面的使用要求 , 以扩大销售 范围。 3 结束语 以某型混凝土搅拌运输车为例 , 将复杂的技术 评估分解为简单且容易表示 的技术 因素 ,并利用 A H P软件构建矩阵的方法给出技术评价体系, 通过 国内外 同类 型产品之 间的 比较 , 完成 了对搅拌运输 车的技术评估。该方法可把技术评估结果量化, 对 搅拌运输车的技术分析和产 品改进有一定 的指导 作用 , 对其他工程机械的技术分析也有一定的参考 价值 。 评价结果为 国内 C公 司的产 品改进提供 了参 考 ,该公司将产品薄弱环节改进
23、以后 , 2 0 0 8年上半 年的销售量已经 回升。 参考文献 【 1 田利芳 混凝土搅拌运输车【 D 】 西安建筑科技大学硕 士学位论文 , 2 0 0 5 【 2 D i r b a s A ,D e m i r b a s S A , D e mi r b a s H A B r i q u e t t i n g P r o p e r t i e s o f B i o ma s s Wa s t e Ma t e ri a l s J 】 E n e r g y S o u r c e s , 2 0 0 4 ( 1 ) : 8 3 9 1 【 3 】 J G f F 5 0 9
24、 4 -1 9 9 7混凝土搅拌运输车【 s 】 北京 : 中国 标准出版社 , 1 9 9 7 4 陈宜通 混凝土机械【 M 】 北京 : 中国建材工业出版社, 20 02 【 5 邓爱民 商品混凝土机械【 M 】 北京 : 人民交通出版社, 1 9 9 9 6 6 王晓元, 刘福智 层次分析法在项 目风险中的应用【 J 职业 圈 , 2 0 0 7 ( 1 6 ) : 1 9 7 1 9 8 通信地址 : 陕西省西安市南二环路中段长安大学工程机械 学院( 7 1 0 0 6 4 ) ( 收稿 日期: 2 0 0 9 1 0 0 4 ) ( 上接第 4页 ) 拟系统的接 口通讯 , 视角的随
25、意调节 , 臂架与实际泵 车的同速控制,误操作 的文字提示 ,精确的碰撞检 测, 声音事件的模拟以及浇注特效的模拟等。 图 4 为 虚拟培训系统中泵车施工场景。 图 4 虚拟泵车施工场景 4 结论 基于虚拟现实技术开发的混凝土泵车虚拟培 系统不仅画面精美,而且臂架操作的感觉与实际泵 车相差无几 , 再加上友好 的可控视角 , 精确的碰撞检 测 , 醒 目的文字提示 , 使得泵车操作手的培训轻松而 且有效 。 随着虚拟现实技术的不断发展 , 虚拟培训将 会得到更大的应用空间。 参考文献 【 1 王乘, 周均清 C r e a t o r 可视化视景仿真建模技术MI 武 昌: 华中科技大学出版社
26、, 2 0 0 5 : 1 3 7 1 4 1 【 2 翟丽平 基于 Mu l t i G e n的虚拟现实三维建模技术研究 与实现 D 重庆: 重庆大学, 2 0 0 5 【 3 吴义明, 齐欢 导弹对抗的视景仿真【 J 】 计算机仿真, 2 0 0 5 , 2 2 ( 8 ) : 2 8 3 1 【 4 唐胜景, 汪群山 基于 V i s u a l C+ +和 V e g a的导弹虚拟 飞行仿真 系统 f J 】 北京理工大学学报 , 2 0 0 7 , 2 7 ( 5 ) : 41 3 - - 41 6 f 5 M u l t i G e n - P a r a d i g m I n c L y n x p ri me u s e r s g u i d e I n U S A : Mu l t i Ge n - P a r a d i g m I n c, 2 0 0 3 、 通信地址 : 湖南长沙三一重工股份有限公 司( 4 1 0 1 0 0) ( 收稿日期: 2 0 0 9 - 0 7 1 0 ) 一 2 9 学兔兔 w w w .x u e t u t u .c o m