APP下载

基于Virtools的滚珠丝杠课件的开发与实现

2013-12-20郑培峰

福建开放大学学报 2013年2期
关键词:滚珠丝杠螺母

郑培峰

(福建广播电视大学,福建福州,350003)

滚珠丝杠螺母副在数控机床的进给传动装置中被广泛采用,因此在数控技术应用专业的《数控设备与编程》课程中作为重点内容进行介绍。[1]但由于滚珠丝杠螺母副种类多,结构及工作原理复杂,而且在实际数控设备中,滚珠丝杠是处于完全封闭状态的,不能观察其内部结构及工作过程,采用传统的图片加文字讲解的教学方法,学生难以理解,教学效果极差。因此,通过展示内、外循环滚珠丝杠螺母副的三维模型,让学生自行鼠标操作、动画演示展示滚珠丝杠螺母副的种类、工作过程及调隙方法,形象观察滚珠如何在丝杠、螺母中进行循环运动,对学生掌握各种滚珠丝杠螺母副的异同点有很大的帮助。这种直观、感性的学习,实现了让学生想学、爱学、会学的教学目标。

一、Virtools技术

Virtools是法国达索公司的一款虚拟现实开发软件,可以将现有常用的文档格式(如3D的模型、2D图形或音效等)整合在一起。它是一套具备丰富的互动行为模块的实时3D环境虚拟实境编辑软件,可以利用拖放的方式,将Building Blocks(行为交互模块,以下简称BB)赋予在适当的Object(对象)或是Character(虚拟角色)上,以流程图的方式,决定BB的前后处理顺序,从而实现可视化的交互脚本设计,逐渐编辑成一个完整的交互式虚拟世界。与C、C++等传统程序语言相比,模块化的程序指令能大大降低学习门坎,适合没有编程基础的3D设计人员。目前,Virtools在三维游戏设计、工业仿真、建筑漫游、数字艺术、互动多媒体等诸多领域得到广泛应用,己经成为国际主流的虚拟现实研发平台。[2]

采用Virtools技术开发本课件,能够模拟真实的课件场景和真实的设备,让学生产生强烈的现场感,并且开发难度小,易于实现。

二、课件功能模块的设计及关键技术的实现

(一)课件功能模块综述

1.外循环滚珠丝杠模块

该模块包含两个子模块:插管式和螺旋槽式。用户将鼠标移到外循环滚珠丝杠的任一位置上,则显示该位置对应部件的名称;用户点击相应的按钮,可以显示/隐藏外循环滚珠丝杠的内部滚珠,可以观察外循环滚珠丝杠内部滚珠的运动过程。

2.内循环滚珠丝杠模块

与上一模块相似,用户将鼠标移到内循环滚珠丝杠的任一位置上,则显示该位置对应部件的名称;用户点击相应的按钮,可以显示/隐藏内循环滚珠丝杠的内部滚珠,可以观察内循环滚珠丝杠内部滚珠的运动过程,还可以单独显示反向器的结构。

3.轴向间隙模块

该模块包含两个子模块:轴向间隙产生原因和轴向间隙消除方法。利用3DSMAX创建滚珠丝杠的内部运动动画视频,形象展示了轴向间隙产生的原因;通过自动演示两个丝杠螺母副的装配,并动画演示装配中内部运动过程,形象说明轴向间隙的消除方法。

4.解说和背景音乐模块

为了便于用户自学,用户进入某一模块时,课件会自动播放该模块的解说声音,当然也可以单击相应按钮关闭或重新播放解说声音与背景音乐。

(二)关键技术的实现

1.3 DSMAX建模时的注意点

(1)滚珠运动动画的制作

本课件所涉及到的三种滚珠丝杠的滚珠运动动画,都是在3DSMAX中制作的。制作思路是:画一个滚珠的运动路径的样条线,利用间隔工具沿运动路径复制出多个滚珠,对每一个滚珠,添加路径约束的位置控制器,添加的路径为所创建的样条线,同时设置好滚珠的起始帧和终止帧的路径百分比,使得各个滚珠能依次运动(如图3-1)。本课件涉及的三种滚珠丝杠螺母副,需要分别建模,存为不同文件,注意不要把三种模型放在同一3DSMAX文件中,否则在导入Virtools后,会造成模型难以区分,不利于BB的设置。

图3-1 滚珠路径约束动画设置

(2)从3DSMAX中输出NMO文件

利用3DSMAX的导出功能将模型输出为Virtools能够识别和处理的NMO格式,要完成该格式的输出,必须要在系统中安装针对3DSMAX的输出插件Virtools Exporters for 3DSMAX。由于之前制作的模型带有动画,最好对每个3DSMAX模型文件分别输出两次,第一次输出为Export as a Character(输出虚拟角色),设好Character Name(角色名称),第二次输出为Export Animation Only(只输出动画),设好Animation Name(动画名),这样做的目的是便于在Virtools中对动画进行单独设置BB。

2.课件的交互设计

模型导入Virtools后,利用它提供的BB及其组合对模型赋予脚本,完成交互功能的实现。该模块是整个课件中最重要,最关键的模块,主要完成三维物体的交互功能。

(1)旋转缩放视图

当用户单击并拖动鼠标左键时,视图会随着鼠标的拖动而旋转,以方便用户从各角度观察。此模块的思路如下:①设置好一个初始摄像机,作为观察物体的初始视图;②创建一个三维帧,作为摄像机视点的参考对象,该三维帧必须位于所观察物体的中心;③对此三维帧创建BB(如图3-2),Mouse Waiter控制鼠标的左键按下和弹出动作;Parameter Selector实现观察角度的变化,需要把对应的参数类型改为Angle(角度),值设为 30;Mouse Camera Orbit实现鼠标在有限的角度内控制摄像机环绕一个3D Entity(三维实体),将之前创建的三维帧作为参考目标。

图3-2 环绕摄像机BB设置

(2)鼠标移到物体上显示相应文字

当鼠标移到物体上,物体下方会显示相对应的部件名称。此模块的设计思路如下:①在物体的下方创建一个二维帧;②创建材质,材质的贴图是表示部件名称的图片,每个部件对应一个材质;③创建一个Array(阵列),该阵列有两列,列类型分别是3D Entity(3D实体)和Material(材质),列内容分别是部件名称及对应材质名,将课件所涉及的所有部件名及对应的材质名;④在Level层创建BB(如图3-3),其中2D Picking用于拾取鼠标选中的部件名,Iterator if用于对阵列进行循环判断,判断阵列中是否有满足条件的行(即是否有鼠标选中的部件名),如果条件满足,则用Set 2D Material把二维帧材质设为与选中部件相对应的材质。

图3-3 鼠标移到物体显示相应文字BB设置

(3)设置3D实体的直线运动

在观察两个滚珠丝杠螺母副的装配过程中,需要设置模型的直线运动BB(如图3-4),此BB的设计思路如下:①使用Bezier Progression(贝兹级数)设置运动时间;②使用Interpolator(内插运算)实现对部件在空间中坐标变换过渡;③使用Set Position(设定位置)实现部件从初始位置到目标位置的变换。[3]

图3-4 直线运动BB设置

(4)控制3DSMAX动画的播放

把在3DSMAX中做好的滚珠动画输出为NMO文件后,导入Virtools中,打开Level Manager(层级管理器),在Global Animations中可以查看到导入的动画名,使用Play Global Animation(全域动作播放)BB可以控制该动画的播放。

三、应用实践与反思

(一)课件相关功能界面展示

经过对相关功能模块的逐一实现,最终形成了关于滚珠丝杠螺母副的完整课件(如下图)。

图4-1 课件截图1

图4-2 课件截图2

(二)基于实践的反馈意见和不足之处

本课件制作完成后,邀请了专业教师和部分学生试用,他们对本课件评价较好,认为完全可以代替教学模型,甚至比教学模型更好用,具有较高的实用性,界面友好、易操作。原来只能通过模型、挂图、PPT中插入图片等方式对滚珠丝杠螺母副进行静态讲解,学生难以形成直观印象;现在通过本课件可以实时、全方位地观察其结构,观察内部滚珠的运动轨迹,学生感觉生动、形象,浅现易懂;原来讲解滚珠丝杠螺母副的工作原理,教师只能对着图片枯燥讲解,往往花了大量时间,得到的效果却不好;现在通过学生全方位观察其运动过程,教师再加以总结,学生就能很容易理解,学习效果得到大大提高。但同时他们也反映存在以下不足:(1)功能还不完善。本课件侧重于滚珠丝杠螺母副结构及工作过程介绍,对教材中螺纹调整法和齿差调隙法的内容没有涉及。今后要逐步完善本课件的功能,增加教学内容,满足教师教学和学生学习的需要。(2)解说内容偏少。学生反映课件的解说内容与老师讲课内容相比,明显偏少,不利于自学。今后要邀请专业教师针对本课件的内容重新撰写解说词,邀请学生重新试用,直到满足学生要求为止。(3)模型不够逼真,与实物还存在差距。这其中的原因一是本人制作3D模型时,绘制的贴图与真实环境相比,还存在差距,今后本人要提高技术水平,争取做出更真实的模型;二是Virtools软件本身功能所限,渲染出的场景与真实的环境相比,始终有差距,这只能寄希望随着今后软件版本的提高,渲染的功能越来越强大。

四、结语

通过本课件的开发,笔者感觉Virtools较适合制作三维仿真类课件,比如产品结构的展示、零件的装配、仿真实验等。与目前广泛使用的课件制作软件Flash相比,前者具有较强的场景真实感,就像有一个真实的场景显现在用户面前,用户可以从任意角度观察物体,对物体进行折解、装配,让物体运动,好像在操作一个真实的物体。而后者显然无法实现这样的功能。因此,Virtools在教育领域,特别是机械、电子方面的应用实践将不断增多,基于Virtools的课件开发与实现也将不断完善和发展。

[1]杨仲冈.数控设备与编程[M].北京:高等教育出版社,2009.

[2]刘明昆.三维游戏设计师宝典:virtools开发工具篇[M].芦山:四川电子音像出版中心,2005.

[3]王丹东,徐英欣,胥林.三维游戏设计师宝典virtools行为模块词典大全[M].重庆:电脑报电子音像出版社,2007.

猜你喜欢

滚珠丝杠螺母
双螺母防松原理分析及应用探讨
凸焊螺母免加焊免攻牙焊接工艺研究与应用
三种铆螺母紧固件的应用与对比
滚珠丝杠的热力耦合作用仿真
铆螺母安装工艺的研究
滚珠丝杠的四轴加工
精密滚珠丝杠副伺服加载试验台设计
高速滚珠丝杠副动态接触特性求解