电磁场与微波技术多媒体动画教学研究

时间:2022-07-03 03:37:48

电磁场与微波技术多媒体动画教学研究

一软件设计工具与相关技术

本套教学演示软件采用面向对象语言Python进行编写与开发,调用了Python自带的软件库及Numpy、WxPython、Matplotlib等对其进行设计,并使用wxFormBuilder、FlashCS6、pyinstaller、enigmavirtualbox等应用软件对程序进行辅助设计[8]。系统实现功能的重点包括:GUI布局、仿真程序的代码编写、素材的制作以及程序的易用性[9]。针对以上的功能实现,使用辅助工具wxFormBuilder和手动编写WxPython代码对整体GUI进行结构上的布局,使用Numpy和Matplotlib对仿真过程中的无耗传输线方程进行计算求解,以及传输线上电压和电流波形的动态演示,使用FlashCS6对素材进行整合和裁剪,利用pyinstaller和enigmavirtualbox对源代码文件和素材进行打包,并封装成单独可执行文件,以达到易用性的目的[10]。

二软件需求分析与设计流程

在电子信息类课程的教学中,电磁场与微波技术的教学是其中一个重点也是难点。目前的微波技术教学主要采用文字、静态图像资料或PPT来进行教学,从而导致教学过程中存在以下难点:(1)教学资源稀少,目前书本中提供的电磁场与微波图例较少且抽象;(2)图案不够形象,传统书本教材所提供的图例都为静态图片,如果没有对电磁学有一定深入的理解,很难从静态图片中体会到电磁学中物理量的动态变化,而这一缺点是采用书本教学无法避免的。(3)电磁学的理论较为抽象,并且复杂,单纯的使用图像和文本板书的形式不仅加大了学生对这些理论的认知难度,同时也难以提高学生的兴趣。采用多媒体技术辅助教学是有效提高教学效果的重要途径,通过播放电磁场与微波技术课程中的演示动画,理论与实践相结合,使学生自发地理解和掌握课本知识。同时,有利于提升学生的学习效率,深入理解课程内容。基于以上考虑,对电磁场与微波技术多媒体动画演示软件的开发需求就显得十分重要,通过整理微波技术的教学资源,并利用动态图像,动画,视频等多媒体资源来对枯燥的电磁学公式进行解释,把课本上一些复杂的理论知识,通过多媒体的形式表现出来,从而有利于加深学生对相关理论的直观感受,从而帮助学生对微波技术专业知识的理解,取得更好的教学效果。因此,基于多媒体技术的电磁场与微波技术教学软件的开发,具有十分重要的现实意义。(一)演示界面切换需求。在电磁场与微波技术多媒体教学演示软件系统中,主界面为微波技术理论中的传输线仿真界面。界面的按键主要分成三种:一种是转换传输线类型的按键,一种是显示和隐藏电压、电流波形的按键,另一种则是控制仿真程序启动和暂停的按键。软件具备的按键控制功能为:根据用户点击的转换按键分别展示不同的传输线电路图和不同的参数输入框;根据用户点击的显示和隐藏按键,分别展示所要求展示的波形;根据用户点击的启动和暂停按键,决定动态波形的演示和暂停。(二)参数输入输出控制需求。参数输入控制是结合按键控制功能中“传输线类型转换按键”来设计的。根据设定不同的传输线类型更换不同的参数输入控制,默认只允许用户自定义输入输出阻抗,并且选择性地根据传输线类型开放和锁定输出阻抗的不同输入框。默认锁定禁止用户定义传输线的特征参数的输出结果,并且初值为空。当输入参数完毕后,按下开始按键,软件会根据给定的输入参数计算得到输出结果,并将计算结果反馈到输出框上。(三)菜单控制需求。在该软件系统中,菜单的主要作用是控制Flash动画的窗口弹出,为下一步播放作准备。菜单内容主要分为五个部分:波导、波投射、极化波、其他应用及版权信息等。波导菜单用来演示不同波导形式内部电磁场分布的动态效果;波投射用来演示均匀平面波在不同介质中的反射、透射情况,以及平面电磁波在介质中的传播和衰减情况;极化波用来演示不同极化波的合成过程,及其在空间的动态传播过程动画;其他菜单用来演示电磁场与微波技术在现实生活当中的应用领域,以及展示软件的作者和版权信息。(四)图形图像需求及Flash动画需求。图形和图像抽象化程度相比于文字较低,它能通过丰富的图案和层次感表达出有用信息,具有能够反应客观世界的属性,并且能够承载更多的信息量。本文的目标是通过所设计软件的主界面电路示意图,能够清晰地确定正在仿真的传输线类型。Flash动画能够模拟客观事件的变化及运动过程,从而突出变化的事物在运动过程中的本质规律,更加生动形象地展示和传递信息。同时,使用Flash动画能够提高学生的兴趣,获得较好的教学效果。本设计中,Flash动画素材占据大多数的多媒体演示,包括波导的场分布,均匀平面波的投射,极化波的动态展示,以及微波技术在实际生活当中的应用等。基于以上需求分析,本文所采用的软件设计流程及思路如图2所示。

三软件设计的功能实现与效果展示

电磁场与微波技术多媒体教学软件的开发目的是为了在教学过程中,充分发挥多媒体素材的直观性与交互性,动态画面的展示效果并且易于使用。因此,软件系统的设计内容主要包括系统的界面设计、交互设计以及设计等三个方面[11]。(一)界面设计。本文所设计的电磁场与微波技术多媒体教学演示软件的主界面如图3所示,主要由窗口、菜单、按钮、文本框等元素组成。界面的布局就是对系统组件的布置、摆放以及对不同的控件素材进行整合与设计,从而使得多媒体教学软件能够以合适、科学的运行状态被用户打开,并且展示整个软件的友好的交互界面[12]。界面的设计遵循简单、实用、风格统一的原则,程序的最顶部为功能菜单栏,用于完成主界面与副界面的交换。主界面为微波传输线的状态分析仿真界面,副界面为Flash动画的展示。在主界面中,将内容展示放在界面的正中心,以达到用户的视觉中心及主体突出的效果。内容展示分为两部分,上半部分为波形的动态仿真区域,用于显示传输线上电压和电流的波形仿真结果,即动态展示行波、驻波、行驻波的效果。下半部分为传输线电路示意图,可以通过该部分确定传输线的仿真类型以及波形与传输线位置的对应关系。在内容展示下方设置主要交互界面,用于对展示的内容进行操作,包括切换传输线的负载类型,输入负载参数,打开或关闭电压电流显示选项,启动和暂停波形仿真,满足用户的操作习惯[13]。(二)交互设计。电磁场与微波技术多媒体教学软件的交互设计主要体现在用户与仿真界面的交互,用户与参数输入输出框的交互,及用户与Flash动画的交互三个方面。用户可通过仿真界面上的按钮切换不同的传输线模型,从而进行不同类型的传输线仿真。仿真界面拥有四个控制按钮,分别用于仿真波形的启动、暂停,电压电流的显示开关,用户可通过这四个按钮进行与仿真界面的交互。在用户选择传输线类型之后,参数的输入输出框会随之改变以适应模型,用户可通过输入框输入合法参数,在点击启动按钮后程序会自动计算得出模型参数的计算结果并显示在输出框,从而达到用户与参数输入输出框的交互。另外,通过菜单栏可启用Flash动画演示功能,在弹出窗口中的Flash有内嵌必要的交互按钮,根据不同的Flash类型,交互按钮有所不同。其主要功能有开始和暂停动画演示,必要的参数输入输出,及控制动画的播放速度等,用户可通过这些按钮实现与Flash演示动画的交互。(三)设计。为了方便使用,本软件采用了打包单文件形式。将编写的程序源代码利用pyinstaller进行打包,生成单文件可执行程序。再将该可执行程序利用文件虚拟化技术,同所使用的资源文件一起再进行打包,最终形成一个可直接解压,无须依赖其他文件运行的可执行文件。Pyinstaller是一个用python编写的打包文件工具,它具有将python工程封装成单个文件的功能。由于python程序的运行依赖于python的环境,在其他的操作系统上可能未拥有相应的环境,再者本程序所使用的第三方工具包可能在不同环境下也有所不同,加之python系统版本差异等原因,所以要使python程序能在其他机器上运行,将其打包是必要的。(四)flash播放功能实现。在菜单栏中点击相应的菜单项目,软件能够从本地中获取同名flash资源对其进行播放。flash播放功能的实现,其过程为,按下按键后弹出一个wxpython新弹窗,加载系统的ActiveX控件播放相应的flash视频。窗口大小等依照传入参数即文件名进行读取并启用ActiveX进行播放。图4所示为椭圆极化波的flash动画演示,图5所示为平面电磁波投射到两层介质分界面上的flash动画演示。五结论本文设计和开发了一款电磁场与微波技术多媒体动画教学演示软件。首先,介绍了多媒体动画教学的发展历史与现状,同时根据所要实现的功能,分析软件的需求及重点与难点。其次,通过设计和实现该教学演示软件,比较直观地展现了如何将多媒体教学素材和相关专业知识点相结合,为其它的基于PC端的多媒体教学演示软件的设计和实现提供参考。再次,将源程序文件与多媒体素材二次打包封装,将原本依赖于编译环境和素材资源的程序工程文件夹转换成一个单文件的可执行程序,为今后将桌面多文件程序封装成单文件应用程序提供借鉴。最后,通过本次设计和实现,展现了采用Python语言开发的简便性;通过把电磁场与微波技术的抽象知识转化为具体动画演示的过程也显示了多媒体动画教学的优越性。

作者:张海 单位:华侨大学信息科学与工程学院