论文部分内容阅读
[摘 要] 基于Unity 3D,开发了汽车发动机构造与维修AR教学软件,产品形态上表现为APP,分为安卓版和IOS版。开发本教学软件,关键技术主要包括跟踪注册技术、显示技术、人机交互技术。在跟踪注册技术方面,采用基于计算机视觉的跟踪注册技术;在显示技术方面,适配透视式头盔显示器和智能移动终端;在人机交互技术方面,采用蓝牙输入(透视式头盔显示器)和触控(智能移动终端)。底层识别算法由Vuforia SDK提供;屏幕识别技术采用FingerGestures插件实现。应用效果表明,所开发的教学软件具备新形态一体化教材的所有优点;此外,该教学软件能够在最贴近自然的交互形式下为学习者搭建一个自主探索的空间,进而改变教育方式,改变阅读方式。除了提供汽车发动机构造与维修AR教学软件,还为后续增强现实教育教学软件开发者提供方法论指引和技术指引。
[关 键 词] Unity 3D;发动机;构造;维修;增强现实
[中图分类号] TP391.9 [文献标志码] A [文章编号] 2096-0603(2021)15-0106-03
汽车发动机构造与维修课程是普通高校、高职高专、中职学校汽车类各专业的主干课程之一。该课程教学包括理论教学和实践教学。理论教学系统讲解发动机的总体构造、发动机的基本工作原理;实践教学通过拆、装发动机,增进学生对发动机结构的感性认知,获得检测、拆装、维修发动机的基本技能,并对发动机各部分原理进行分析、验证[1]。可见,汽车发动机构造与维修课程是一门与实践环节紧密联系的课程,这对相关教学资源的质量和形态提出了极高的要求。
目前,汽车发动机构造与维修课程的相关教学资源在形态上主要表现为新形态一体化教材及相关多媒体教学资源库、实物实验资源、虚拟仿真实验资源等[1-3]。这些教学资源,虽然能够有效支撑教师开展“翻转课堂”“混合式教学”等教学活动,但也存在较大的改进空间。例如,目前新形态一体化教材的电子素材主要包括PPT、视频、音频、CAD三维构图、Flash动画等,主要靠声、光、电的综合运用吸引学生的注意力,提高学习興趣。各种媒体资源的相互作用比较简单,学生面对的是其简单联合、合作,不同媒体形式之间还存在一定的隔阂,有时候不得不面对单选题,比如数字阅读与纸质阅读[4]。
增强现实(Augmented Reality,AR)技术的发展为改进上述不足提供了一条现实路线。AR是对真实环境的增强,将计算机生成的虚拟信息实时、准确地叠加到真实场景中,创造出一种全新的体验和交互方式,实现虚拟现实与人们生活的零距离接触[5]。将AR技术与云平台融合,设计、开发汽车发动机构造与维修AR教学软件,能够在最贴近自然的交互形式下为学生搭建一个自主探索的空间,进而改变教育方式,改变阅读方式[6]。
基于上述观点,本文设计并实现汽车发动机构造与维修AR教学软件。在下文中,如无特别说明,将汽车发动机构造与维修AR教学软件简称为“发动机AR教学软件”。
一、发动机AR教学软件设计
(一)发动机AR教学软件的结构、资源和内容
发动机AR教学软件的内容非常广泛,大体上分为三个部分[3]:(1)汽车发动机的总体构造。(2)发动机在汽车上的布置以及各机构和各系统的装配关系。(3)现代发动机的新技术、新结构和新材料。这就要求发动机AR教学软件在设计阶段,必须统筹兼顾,既要涵盖所有讲授内容,又要做到突出重点、力求实效,有效帮助学生掌握发动机结构原理知识和相关技术技能。因此,发动机AR教学软件采用理实一体化的教学设计[7],根据学生的特点和职业工作需求,采用任务驱动方式安排教学内容。例如,内燃机汽车四冲程汽油机由两大机构(曲柄连杆机构和配气机构)、五大系统(燃料供给系、点火系、润滑系、冷却系、起动系)组成。相应的,发动机AR教学软件由10个单元、24个工作任务构成。根据实际情况,每个工作任务又被细分成若干个工作子任务。最终,发动机AR教学软件由10个单元、24个工作任务、58个工作子任务构成。
(二)发动机AR教学软件的功能
1.发动机AR教学软件的功能性需求
发动机AR教学软件在产品形态上表现为APP,分为安卓版和IOS版。发动机AR教学软件适配的显示技术包括透视式头盔显示器和智能移动终端[8]。对于两种显示技术,发动机AR教学软件在功能性方面的需求大同小异,区别主要表现在人机交互技术方面。限于篇幅,本文仅给出适配智能移动终端的发动机AR教学软件的功能性需求,如下表所示。
2.发动机AR教学软件的体系结构
根据上表,确定发动机AR教学软件的体系结构如图1所示。发动机AR教学软件包括两个基本功能模块:AR扫描、资源库。
(1)AR扫描
学习者使用AR扫描模块扫描纸质上或网页上的图片,可以获取与图片对应的模型资源。发动机AR教学软件的显著优点是:支持下载资源离线使用。利用这一特性,学习者可以提前下载好下次需要学习的资源,避免在线下载等待时间过长而出现卡顿现象。资源下载后,学习者可以对资源模型进行相应的操作,包括但不限于拆装、放大、缩小、旋转等。
(2)资源库
资源库界面为资源下载界面,分为资源管理和资源列表,资源列表以表格形式陈列可供下载的资源;资源管理对已下载或在下载的资源进行管理,可对资源进行删除,资源在删除后可以再次下载。 二、发动机AR教学软件实现
(一)关键技术
AR的关键技术主要包括跟踪注册技术、显示技术、人机交互技术等[8]。
1.跟踪注册技术
发动机AR教学软件采用基于计算机视觉的跟踪注册技术,使用标定的摄像机利用单幅图像中已知点的位置实现跟踪注册。在实现方式上,采用基于人工标志的方法[8],将包含有特定人工标志(例如拐点、孔洞、人为放置的标志点)的物体放置在真实场景中,通过对摄像机采集到的图像中的已知模板进行识别获得摄像机位置,之后经过坐标系的变换,将虚拟物体叠加到真实场景中。发动机AR教学软件采用的跟踪注册技术,利用图像处理和计算机视觉的方法协助注册,优点是:对硬件要求较低;使得测量误差局限在图像空间范围(以像素为单位)。
2.显示技术
显示技术,即AR的视觉通道,是AR系统的重要组成部分。发动机AR教学软件适配两类显示技术,即:透视式头盔显示器和智能移动终端。实现思路如下:启动APP,进入AR扫描界面,扫描图片加载对应模型,显示在智能移动终端屏幕上或透视式头盔显示器上;若扫描一张图片对应多个模型或资源时,可在资源库界面中点击对应模块按钮实现相互切换,不用再重新扫描。
3.人机交互技术
人机交互是AR的核心问题。传统的人机交互方式包括鼠标、键盘、麦克风等。随着技术的发展,近年来不断出现一些更加自然的交互方式,例如语音、触控、眼动、手势、体感等。考虑到便携性、移动性等因素,发动机AR教学软件在适配透视式头盔显示器时,采用蓝牙输入交互方式;在适配智能移动终端时,采用触控交互方式。在扫描图片并加载模型后,学习者可以“身临其境”地与模型进行交互。例如,在智能移动终端,学习者单点触摸屏幕,可实现模型的上下左右旋转;多点触摸屏幕,可实现模型的放大与缩小。
(二)开发环境
概括地说,发动机AR教学软件在开发阶段需要完成3项任务:3D建模、底层识别算法设计、应用开发。
3D建模任务在3ds Max 2019环境下完成,建模内容为四冲程汽油机的两大机构和五大系统,建模对象为四冲程汽油机相关的全部零部件。发动机AR教学软件的核心目标是:用户将在AR场景中完成全部学习任务,包括完成放大、缩小、旋转、拆装、检测、清洗、测量、移动等操作。这就需要美术工程师在3ds Max 2019环境下完成相关动画、特效的设计与建模。
发动机AR教学软件没有特别设计底层识别算法,而是由AR开发插件提供。目前,主流的AR开发插件有Vuforia、Metaio、Wikitude、Easy AR、Hiar、ARToolkit、ARVR云设计等[9]。AR教程选择Vuforia SDK,底层识别算法由Vuforia SDK提供。集成陀螺仪、GPS等功能模块实现AR教程的相关功能。
应用开发在Unity 2018.2.9f1 (64-bit) 引擎上完成,脚本编辑器为Visual Studio 2017,程序设计语言采用C#。智能移动终端屏幕识别技术可以采用Unity原生的触控API实现,也可以采用目前成熟的Unity屏幕触控插件,例如FingerGestures插件、Touch Script插件等进行开发。在发动机AR教学软件中,為提高开发效率,屏幕识别技术采用FingerGestures插件实现。
(三)网络模块视图
发动机AR教学软件的服务器部署在云端,为此,需要设计、开发独立的网络模块,网络模块视图如图2所示,各组件功能描述如下:
1.Upload Handler组件
处理数据到服务器的传输。
2.Download Handler组件
处理从服务器收到的数据的接收、缓冲和后处理。
3.UnityWebRequest组件
管理另外两个对象,并处理HTTP流量控制。
4.User-Authored Scripts组件
处理相关业务逻辑的脚本。
三、发动机AR教学软件发布与测试
(一)发动机AR教学软件发布技术
发动机AR教学软件APP包括IOS版和安卓版。面向IOS平台发布*.ipa文件,发布步骤比较简单,只需两个步骤:通过Unity导出工程文件到XCode编辑器;然后,通过XCode编辑器生成最终软件包。面向Android 平台发布*.apk文件,步骤较为繁琐:首先,需要安装与配置java SDK;其次,需要安装与配置Android SDK;最后,需要在Unity中配置各类SDK的路径。
发动机AR教学软件支持智能移动终端和透视式头盔显示器。针对不同的虚拟现实硬件设备,需要在APP发布过程中,通过Unity引擎分别配置不同的支持虚拟现实的参数。
(二)发动机AR教学软件测试
手持安卓手机,点击打开APP,默认加载AR扫描界面;以AR扫描二维码、纸质教材或网页上的图片,加载对应的模型;触摸手机屏幕,可以对虚拟场景的模型进行各类操作,包括缩放、旋转、移动、拆装等,犹如身临其境。加载模型后的效果如图3所示。测试结果表明:发动机AR教学软件基本满足设计、开发目标。
四、结语
针对普通高校、高职高专、中职学校汽车类各专业的主干课程汽车发动机构造与维修或相近课程,设计、开发了发动机AR教学软件,产品形态为APP,分为安卓版和IOS版。通过该APP,用户穿戴透视式头盔显示器或手持智能移动终端,可以随时随地、“身临其境”地学习汽车发动机构造、检测、拆装、维修等相关知识,并获取相关技术技能。与现行的新形态一体化教材相比,发动机AR教学软件的显著优势是:对硬件要求低,支持资源下载离线使用,从而保障应用和资源模型流畅运行;在虚拟现实场景中完成相关实验实训,用户能够获得较好的“沉浸式”体验,犹如身临其境。
参考文献:
[1]杨燕红,杨建军,彭忆强,等.现实与虚拟技术结合的汽车发动机构造实验课程设计[J].实验技术与管理,2017,34(12):210-213.
[2]孙薇.新形态一体化教材助力智慧课堂:以职业教育专业教学资源库配套教材研发和设计为例[J].中国编辑,2018(4):61-63,69.
[3]谭满志,苏岩,李小平,等.汽车发动机结构实验室建设与实践[J].实验技术与管理,2018,35(1):249-251.
[4]张志军.VR出版将改变图书出版发行模式吗[N].中华读书报,2017-05-10(06).
[5]程云,黄瑞,蒋俊锋,等.基于增强现实的产品质量信息传递方法[J].计算机辅助设计与图形学学报,2019,31(5):859-868.
[6]蔡苏,张晗,薛晓茹,等.增强现实(AR)在教学中的应用案例评述[J].中国电化教育,2017(3):1-9,30.
[7]张建国.论职业教育“理实一体化”教学的内涵及其特征[J].中国职业技术教育,2018(14):48-53.
[8]王宇希,张凤军,刘越.增强现实技术研究现状及发展趋势[J].科技导报,2018,36(10):75-83.
[9]李婷婷.Unity 3D虚拟现实游戏开发[M].北京:清华大学出版社,2018:334-347.
◎编辑 鲁翠红
[关 键 词] Unity 3D;发动机;构造;维修;增强现实
[中图分类号] TP391.9 [文献标志码] A [文章编号] 2096-0603(2021)15-0106-03
汽车发动机构造与维修课程是普通高校、高职高专、中职学校汽车类各专业的主干课程之一。该课程教学包括理论教学和实践教学。理论教学系统讲解发动机的总体构造、发动机的基本工作原理;实践教学通过拆、装发动机,增进学生对发动机结构的感性认知,获得检测、拆装、维修发动机的基本技能,并对发动机各部分原理进行分析、验证[1]。可见,汽车发动机构造与维修课程是一门与实践环节紧密联系的课程,这对相关教学资源的质量和形态提出了极高的要求。
目前,汽车发动机构造与维修课程的相关教学资源在形态上主要表现为新形态一体化教材及相关多媒体教学资源库、实物实验资源、虚拟仿真实验资源等[1-3]。这些教学资源,虽然能够有效支撑教师开展“翻转课堂”“混合式教学”等教学活动,但也存在较大的改进空间。例如,目前新形态一体化教材的电子素材主要包括PPT、视频、音频、CAD三维构图、Flash动画等,主要靠声、光、电的综合运用吸引学生的注意力,提高学习興趣。各种媒体资源的相互作用比较简单,学生面对的是其简单联合、合作,不同媒体形式之间还存在一定的隔阂,有时候不得不面对单选题,比如数字阅读与纸质阅读[4]。
增强现实(Augmented Reality,AR)技术的发展为改进上述不足提供了一条现实路线。AR是对真实环境的增强,将计算机生成的虚拟信息实时、准确地叠加到真实场景中,创造出一种全新的体验和交互方式,实现虚拟现实与人们生活的零距离接触[5]。将AR技术与云平台融合,设计、开发汽车发动机构造与维修AR教学软件,能够在最贴近自然的交互形式下为学生搭建一个自主探索的空间,进而改变教育方式,改变阅读方式[6]。
基于上述观点,本文设计并实现汽车发动机构造与维修AR教学软件。在下文中,如无特别说明,将汽车发动机构造与维修AR教学软件简称为“发动机AR教学软件”。
一、发动机AR教学软件设计
(一)发动机AR教学软件的结构、资源和内容
发动机AR教学软件的内容非常广泛,大体上分为三个部分[3]:(1)汽车发动机的总体构造。(2)发动机在汽车上的布置以及各机构和各系统的装配关系。(3)现代发动机的新技术、新结构和新材料。这就要求发动机AR教学软件在设计阶段,必须统筹兼顾,既要涵盖所有讲授内容,又要做到突出重点、力求实效,有效帮助学生掌握发动机结构原理知识和相关技术技能。因此,发动机AR教学软件采用理实一体化的教学设计[7],根据学生的特点和职业工作需求,采用任务驱动方式安排教学内容。例如,内燃机汽车四冲程汽油机由两大机构(曲柄连杆机构和配气机构)、五大系统(燃料供给系、点火系、润滑系、冷却系、起动系)组成。相应的,发动机AR教学软件由10个单元、24个工作任务构成。根据实际情况,每个工作任务又被细分成若干个工作子任务。最终,发动机AR教学软件由10个单元、24个工作任务、58个工作子任务构成。
(二)发动机AR教学软件的功能
1.发动机AR教学软件的功能性需求
发动机AR教学软件在产品形态上表现为APP,分为安卓版和IOS版。发动机AR教学软件适配的显示技术包括透视式头盔显示器和智能移动终端[8]。对于两种显示技术,发动机AR教学软件在功能性方面的需求大同小异,区别主要表现在人机交互技术方面。限于篇幅,本文仅给出适配智能移动终端的发动机AR教学软件的功能性需求,如下表所示。
2.发动机AR教学软件的体系结构
根据上表,确定发动机AR教学软件的体系结构如图1所示。发动机AR教学软件包括两个基本功能模块:AR扫描、资源库。
(1)AR扫描
学习者使用AR扫描模块扫描纸质上或网页上的图片,可以获取与图片对应的模型资源。发动机AR教学软件的显著优点是:支持下载资源离线使用。利用这一特性,学习者可以提前下载好下次需要学习的资源,避免在线下载等待时间过长而出现卡顿现象。资源下载后,学习者可以对资源模型进行相应的操作,包括但不限于拆装、放大、缩小、旋转等。
(2)资源库
资源库界面为资源下载界面,分为资源管理和资源列表,资源列表以表格形式陈列可供下载的资源;资源管理对已下载或在下载的资源进行管理,可对资源进行删除,资源在删除后可以再次下载。 二、发动机AR教学软件实现
(一)关键技术
AR的关键技术主要包括跟踪注册技术、显示技术、人机交互技术等[8]。
1.跟踪注册技术
发动机AR教学软件采用基于计算机视觉的跟踪注册技术,使用标定的摄像机利用单幅图像中已知点的位置实现跟踪注册。在实现方式上,采用基于人工标志的方法[8],将包含有特定人工标志(例如拐点、孔洞、人为放置的标志点)的物体放置在真实场景中,通过对摄像机采集到的图像中的已知模板进行识别获得摄像机位置,之后经过坐标系的变换,将虚拟物体叠加到真实场景中。发动机AR教学软件采用的跟踪注册技术,利用图像处理和计算机视觉的方法协助注册,优点是:对硬件要求较低;使得测量误差局限在图像空间范围(以像素为单位)。
2.显示技术
显示技术,即AR的视觉通道,是AR系统的重要组成部分。发动机AR教学软件适配两类显示技术,即:透视式头盔显示器和智能移动终端。实现思路如下:启动APP,进入AR扫描界面,扫描图片加载对应模型,显示在智能移动终端屏幕上或透视式头盔显示器上;若扫描一张图片对应多个模型或资源时,可在资源库界面中点击对应模块按钮实现相互切换,不用再重新扫描。
3.人机交互技术
人机交互是AR的核心问题。传统的人机交互方式包括鼠标、键盘、麦克风等。随着技术的发展,近年来不断出现一些更加自然的交互方式,例如语音、触控、眼动、手势、体感等。考虑到便携性、移动性等因素,发动机AR教学软件在适配透视式头盔显示器时,采用蓝牙输入交互方式;在适配智能移动终端时,采用触控交互方式。在扫描图片并加载模型后,学习者可以“身临其境”地与模型进行交互。例如,在智能移动终端,学习者单点触摸屏幕,可实现模型的上下左右旋转;多点触摸屏幕,可实现模型的放大与缩小。
(二)开发环境
概括地说,发动机AR教学软件在开发阶段需要完成3项任务:3D建模、底层识别算法设计、应用开发。
3D建模任务在3ds Max 2019环境下完成,建模内容为四冲程汽油机的两大机构和五大系统,建模对象为四冲程汽油机相关的全部零部件。发动机AR教学软件的核心目标是:用户将在AR场景中完成全部学习任务,包括完成放大、缩小、旋转、拆装、检测、清洗、测量、移动等操作。这就需要美术工程师在3ds Max 2019环境下完成相关动画、特效的设计与建模。
发动机AR教学软件没有特别设计底层识别算法,而是由AR开发插件提供。目前,主流的AR开发插件有Vuforia、Metaio、Wikitude、Easy AR、Hiar、ARToolkit、ARVR云设计等[9]。AR教程选择Vuforia SDK,底层识别算法由Vuforia SDK提供。集成陀螺仪、GPS等功能模块实现AR教程的相关功能。
应用开发在Unity 2018.2.9f1 (64-bit) 引擎上完成,脚本编辑器为Visual Studio 2017,程序设计语言采用C#。智能移动终端屏幕识别技术可以采用Unity原生的触控API实现,也可以采用目前成熟的Unity屏幕触控插件,例如FingerGestures插件、Touch Script插件等进行开发。在发动机AR教学软件中,為提高开发效率,屏幕识别技术采用FingerGestures插件实现。
(三)网络模块视图
发动机AR教学软件的服务器部署在云端,为此,需要设计、开发独立的网络模块,网络模块视图如图2所示,各组件功能描述如下:
1.Upload Handler组件
处理数据到服务器的传输。
2.Download Handler组件
处理从服务器收到的数据的接收、缓冲和后处理。
3.UnityWebRequest组件
管理另外两个对象,并处理HTTP流量控制。
4.User-Authored Scripts组件
处理相关业务逻辑的脚本。
三、发动机AR教学软件发布与测试
(一)发动机AR教学软件发布技术
发动机AR教学软件APP包括IOS版和安卓版。面向IOS平台发布*.ipa文件,发布步骤比较简单,只需两个步骤:通过Unity导出工程文件到XCode编辑器;然后,通过XCode编辑器生成最终软件包。面向Android 平台发布*.apk文件,步骤较为繁琐:首先,需要安装与配置java SDK;其次,需要安装与配置Android SDK;最后,需要在Unity中配置各类SDK的路径。
发动机AR教学软件支持智能移动终端和透视式头盔显示器。针对不同的虚拟现实硬件设备,需要在APP发布过程中,通过Unity引擎分别配置不同的支持虚拟现实的参数。
(二)发动机AR教学软件测试
手持安卓手机,点击打开APP,默认加载AR扫描界面;以AR扫描二维码、纸质教材或网页上的图片,加载对应的模型;触摸手机屏幕,可以对虚拟场景的模型进行各类操作,包括缩放、旋转、移动、拆装等,犹如身临其境。加载模型后的效果如图3所示。测试结果表明:发动机AR教学软件基本满足设计、开发目标。
四、结语
针对普通高校、高职高专、中职学校汽车类各专业的主干课程汽车发动机构造与维修或相近课程,设计、开发了发动机AR教学软件,产品形态为APP,分为安卓版和IOS版。通过该APP,用户穿戴透视式头盔显示器或手持智能移动终端,可以随时随地、“身临其境”地学习汽车发动机构造、检测、拆装、维修等相关知识,并获取相关技术技能。与现行的新形态一体化教材相比,发动机AR教学软件的显著优势是:对硬件要求低,支持资源下载离线使用,从而保障应用和资源模型流畅运行;在虚拟现实场景中完成相关实验实训,用户能够获得较好的“沉浸式”体验,犹如身临其境。
参考文献:
[1]杨燕红,杨建军,彭忆强,等.现实与虚拟技术结合的汽车发动机构造实验课程设计[J].实验技术与管理,2017,34(12):210-213.
[2]孙薇.新形态一体化教材助力智慧课堂:以职业教育专业教学资源库配套教材研发和设计为例[J].中国编辑,2018(4):61-63,69.
[3]谭满志,苏岩,李小平,等.汽车发动机结构实验室建设与实践[J].实验技术与管理,2018,35(1):249-251.
[4]张志军.VR出版将改变图书出版发行模式吗[N].中华读书报,2017-05-10(06).
[5]程云,黄瑞,蒋俊锋,等.基于增强现实的产品质量信息传递方法[J].计算机辅助设计与图形学学报,2019,31(5):859-868.
[6]蔡苏,张晗,薛晓茹,等.增强现实(AR)在教学中的应用案例评述[J].中国电化教育,2017(3):1-9,30.
[7]张建国.论职业教育“理实一体化”教学的内涵及其特征[J].中国职业技术教育,2018(14):48-53.
[8]王宇希,张凤军,刘越.增强现实技术研究现状及发展趋势[J].科技导报,2018,36(10):75-83.
[9]李婷婷.Unity 3D虚拟现实游戏开发[M].北京:清华大学出版社,2018:334-347.
◎编辑 鲁翠红