□石连栓 孙文苑
职业教育主要是为企业培养技能型人才,不仅要求学生掌握基本的理论知识, 更要提高技术技能,培养学生在实际工作中解决问题的能力。 实验实训教学在职业院校的教学中占有非常重要的地位,各职业院校都非常重视实验实训教学,不断增加对实验和实训的投入。
传统的教学实验在实验室中完成, 受实验设备的台套数、实验耗材的数量、指导教师的人数、实验学时等的限制, 学生接触实验设备和仪器的机会比较少。同时大部分职业院校实验室建设由于受到经费的限制,一些先进的设备无力购买,从而导致实验室的设备总是落后于企业的设备,实验内容也因此无法得到及时更新,实验实训教学质量难以保障[1-3]。
虚拟实验室是利用虚拟现实技术仿真实的实验实训环境和操作过程, 供学生观察、操纵、建构其中的对象, 使他们犹如身临其境, 获得真实实验的感觉。 虚拟实验室一般应该具备以下特征:与真实实验的一致性( 或是真实实验的扩展和延伸)、高度交互性和实时的信息反馈[4]。 由于虚拟实验不受时间和空间的限制, 可以克服传统实验实训的不足,对提高实验实训教学质量具有重要的辅助作用。
近年来, 随着模具行业在国内的飞速发展,模具技术人才的需求量也大幅增加。 在模具教学中,实验教学占了很大的比重,模具实验的一个重要的环节是拆装实训,主要目的是了解模具各部分的结构以及模具运动过程。目前大多数学校采用的是实物拆装或是用替代模型,其优点是直观、形象,但是实物模型一般都较昂贵,加之学生人数多,所以不是每个学生都能亲自做完实验。同时由于学校资金问题,实验模型的管理、维护、更新都比较困难。 为了解决上述问题,提高学校模具教学效果,可以通过计算机技术、虚拟现实技术把这些模具的拆装实验虚拟化和数字化,也就是用虚拟实验来辅助我们模具实验教学[5-6]。
Virtools 是法国达索公司开发的三维设计软件,具有可视化接口,通过图形化编程,快速建立3D 应用程序,大大降低了开发难度。针对专业编程人员,Virtools 还提供了一种解释性的脚本语言VSL( Virtools Scripting Language)和一个SDK 软件开发工具包。可以根据开发人员的具体需求开发出新的BB,从而提升了程序员开发软件的效率。
因此,本研究以Virtools 为主要开发工具,并结合三维建模软件3ds max 和图像处理软件Photoshop,构建了冲孔模拆装虚拟实验系统。
本实验分为四个模块,即实验介绍、实验室漫游、虚拟实验、实验报告,其中虚拟实验分为自主拆卸和分组装配子模块,冲孔模拆装虚拟实验功能模块如图1。
图1 冲孔模拆装虚拟实验功能模块图
该模块包括有实验目的、实验原理、实验设备及仪器的使用方法,实验方法、实验步骤等方面的内容,介绍实验之前的注意事项,为学生预习实验提供了帮助, 以减少学习者实验过程中的失误,这部分可用文字、图片等实现。
该模块要让学习者进入到设计好的逼真的三维虚拟实验室环境中,实验室里包括实验台、实验仪器展示柜、文件柜等。学习者可以通过鼠标、键盘等输入设备对虚拟角色(学习者的虚拟化身)进行控制,让其在虚拟实验环境中任意走动参观,并通过多视角摄像机的切换,给予学习者不同的视角感受,体验实验环境,从而对虚拟实验环境有感性的认识。
该模块包括自主分解和分组装配两部分,是根据真实的冲孔模拆装实验,用计算机技术和虚拟现实技术设计开发,它包括实验操作的全过程。 在这个模块中,学习者可以使用鼠标拖动来观看仪器设备,也可以导入Flash 动画或是教学视频让学生先了解实验步骤,从而加深对所做实验的理解。 虚拟实验的具体操作可通过点击按钮响应来实现。
实验报告是实验教学中非常重要的一个环节,促使学生认真完成实验,且通过写实验报告,可以加强学生对实验中的理论知识的理解和记忆,提高学生逻辑思维能力和实验能力。本实验系统中采取当场书写实验报告,实验报告以图片文件的形式存储在本地计算机中,学生可以把实验报告以邮件的形式发给教师,也可以打印出来交给教师;教师可以给每个学生创建一个文件夹,里面存放学生的实验报告, 以电子档案袋形式管理学生的实验报告,从而实现对实验报告的一个半自动化管理。
Virtools 的开发步骤可分为三个阶段: 建模、交互制作、发布。 Virtools 本身不具有三维建模的功能,鉴于3ds max 是目前使用最多的三维建模、动画、 渲染软件, 其功能强大, 可以外挂很多插件来弥补本身的功能不足[7]。 因此, 采用3ds max 建模,然后导入到Virtools 中完成交互式拆装。
本研究所选的冲孔模是一个简化的模型,主要零件包括下模座、导柱、凹模固定板、凹模、螺钉、定位销、上模座、导套、冲头、冲头压板、弹簧、压料板、限位拉杆。其零件对象的建模采用了基本几何体、扩展几何体、Boolean(布尔运算)、Loft(放样)等基本建模方式来完成。
Virtools 中采用的是图形化编程, 使用模块化编程语言Buliding Blocks(BB 模块)编写交互控制程序。在本实验中,界面采用类似网页导航,交互操作都是通过使用鼠标点击按纽来实现。
1.实验介绍模块的实现。 本模块主要是由文字和图片来实现, 但是由于操作界面大小的限制,内容不能一次性呈现,所以设计一个翻页按钮用来切换到下一页的内容。 在看完实验介绍后,学习者可以点击“返回”按钮回到实验主界面,然后再进行其他的操作。
创建一个阵列有来存放实验介绍的文字与图片,再通过如图2 所示的PuttButton、Move Row(移动行)、Get Cell(获取单元格)、Set Texture(设置纹理)等模块来实现,当点击下一页,系统就会自动从头到尾检索所创建的实验介绍的阵列中的每个单元格, 并把内容以图片纹理的形式显示在二维帧中。
图2 “下一页”按钮脚本图
当点击“返回”按钮时,通过PussButton、Hide(隐藏)模块实现隐藏“实验介绍”界面,从而回到实验主界面,脚本如图3 所示。
图3 “返回”按钮脚本图
2.实验室漫游的实现。 实验室漫游模块通过对虚拟角色的控制, 分别使用main camera (主摄像机)、camera01(第三视角摄像机)和camera02(第一视角摄像机)三个不同视角的摄像机,让学习者熟悉实验环境,对实验室布局有个大体的认识。 为了增强交互性,三个摄像机之间的切换是通过键盘来实现的。 如图4 所示,利用Switch On Key,Set Position,Set Orientation 等模块实现摄像机切换。
3.虚拟实验模块实现。 (1)冲孔模部件自主分解。本模块的设计思想是按冲孔模部件对象序列建立“冲孔模”群组(Group)及“冲孔模”阵列(Array),通过获取群组里的对象,把所获取的对象的空间坐标传给阵列,并以相同的方式获取到对象分解时的空间坐标,再实现由部件对象的初始坐标位置过渡移动到分解坐标位置,最终完成部件对象的自主分解。 如图5 所示为分解演示脚本图。
图5 分解演示脚本图
(2)分组装配。 本模块的设计思想是将冲孔模按组显示,通过鼠标点选冲孔模部件对象,使所被选取的部件对象跟随鼠标移动。 设置辅助参考对象,并设置其原有材质为蓝色,当鼠标拖拽部件对象到达与辅助参考对象一定距离时,辅助对象的材质变成红色,当部件对象的名称与参考对象名称一致时,两者自动融合,从而实现冲孔模的分组装配。如图6 所示为分组装配演示脚本图。
4.实验报告模块的实现。 本模块的设计思路是通过二维帧显示实验报告模板,学生做完实验后可以当场书写实验报告,写完后点击“提交”按钮,实验报告就会以图片的形式存储在本地计算机中。
5.调试、修改与发布。 在虚拟实验软件开发过程中, 须严格按照软件工程规范进行设计开发,各环节包括概要设计、详细设计、编码、测试等,这些环节为该软件系统质量提供了保证。最后还要进行用户的测试,测试对象分别为职校教师、职业学校的学生等。 根据测试后出现的问题再进行修改,修改之后还要进行多次的测试、修改,最后才能进行正式的发布。
图6 分组装配演示脚本图
基于Virtools 的冲孔模拆装虚拟实验包括有实验介绍、实验室漫游、虚拟实验和实验报告四个部分,它是对传统实验教学的有效补充和完善,把它应用于中职学校的模具实验教学中,符合中职学校学生知识建构、认知规律,让他们在自己亲身体验中学习,根据多种知识表征方式主动建构自己的知识,从而提高了学生的学习效率和学习的主动性。
虚拟实验和实训只能是实体实验和实训的一个补充和扩展,主要是解决各职业学校实验实训存在的一些缺陷, 但是它不能完全替代实体实验实训, 只能尽可能多的给学生提供了解设备使用、模拟实验和实训的机会。虚拟实验实训与实体实验实训各有特点和优势,只要很好的利用,必将为职业学校提高学生的技能发挥更大的作用。
[1]陈劲松.虚拟实验室在实验教学中的应用研究[J].大众科技,2010(3):147-148.
[2]张伟党,唐国钢.虚拟化学实验室的应用[J].广州化工,2011,39(14):172-173.
[3]薛琳,章学静.基于Web 的虚拟实验室技术及其应用[J].北京联合大学学报,2009,23(2):11-13.
[4]王海鹏. 虚拟实验室.牡丹江师范学院学报(自然科学版),2005(4):53-54.
[5]赵悦.模具教学虚拟实验室的研究与开发[D].杭州:浙江大学,2011.
[6]冯桂珍,池建斌.模具虚拟实验系统的开发[J].河北省科学院学报,2011,28(2):21-25.
[7]吴纬纬.模具结构认知虚拟实验系统的设计与实现[D].杭州:浙江大学,2009.