电磁场与电磁波实验仿真系统
2013-03-20杨明珊谭凤杰李志中孟小超邱志勇
杨明珊, 谭凤杰, 李志中, 孟小超, 邱志勇
(1.郑州大学 信息工程学院 河南 郑州450001;2.北京大学 数学系 北京100871)
0 引言
计算机辅助教学(CAI)在高等院校的教学实践中得到广泛的应用.普通计算机辅助教学多从文字、图像、音频、视频等方面改善教学效果,通常不能很好满足交互性要求很强的模拟实验.在郑州大学电磁场与电磁波实验的教学改革中,多年来一直尝试使用各种多媒体教学手段,达到了一定的教学效果,学生可以事先大致了解实验的操作步骤,但是由于交互功能欠缺,不能实现设备的虚拟调试等,这种计算机辅助教学软件距离真实实验还有较大的差距[1-3].
电磁场与电磁波实验仿真系统就是利用计算机仿真技术,把电磁场实验中用到的主要仪器DH926A型电磁波综合测试仪进行建模仿真,使得利用计算机仿真的虚拟仪器最大限度地代替实际仪器进行相关实验.实验仿真系统选择了5个有代表性的电磁场与电磁波实验,分别是单缝衍射和双缝干涉实验、电磁波参量研究实验、均匀无耗媒质参量的研究实验、电磁波的反射与折射实验、电磁波的极化实验等[4].
电磁场与电磁波实验仿真系统不仅可以方便学生提前了解和调试实验,还可以在实验后提供学生反复再现实验过程,深入探究实验中的知识重点和难点,提高学习的兴趣;更进一步,系统充分考虑到了可扩展性,可以开发新的模块拓展新的实验内容;另外,该仿真系统可以为没有实验条件的其他院校提供几近真实的虚拟实验室,具有较好的推广价值;再者,电磁场与电磁波实验仿真系统的探索对于类似交互式实验仿真软件的编写将有一定的参考价值.
1 设计目标和功能模块划分
电磁场与电磁波实验仿真系统的目标是尽可能真实地模拟实际实验条件.一般的商业仿真软件的重心在于数学相似,即通过计算机仿真得到相应的物理特性数值与实际值相符合,而作为实验教学目的的仿真系统的目标是,用户看到的虚拟仪器与实际的仪器外观相似,在虚拟仪器上的操作与实际操作类似,得到的实验结果符合真实的实验结果.
电磁场与电磁波实验仿真系统有4大功能模块:
1)三维显示模块:该模块负责三维场景的显示.实验仪器可以三维动态显示,还可以根据用户的观察高度和角度做出相应调整显示,与实际操作的场景相似.在系统中,三维实体建模选择专业的零件设计软件SolidWorks,部分工作由OSG来完成.
2)用户界面模块:该模块负责与用户的交互.它包括提供用户界面和获取用户指令.用户指令按作用可分为控制指令(如切换实验、退出程序等)和操作指令(如调整观察视角、调整仪器参数等).在得到相应指令后,此模块更新相应的变量或引发相关动作为反应.
3)数据处理模块:此模块负责实验算法的实现.在系统中,输入主要指仪器的各种参数,如发射天线角度、活动臂位置等,输出主要指电流表的示数.
4)控制模块:该模块负责协调上面3大模块间的协作.比如,用户调整活动臂转动角度,在用户界面模块更新角度变量后,控制模块负责计算模型对此动作的反应,并更新模型的位置和旋转等,从而在三维显示模块处理后能显示正确的图像.在系统实现中,此部分并非一个单独的实体,而是由不同部件分别提供的.比如OSG的仿真循环模型和回调设计等.
2 电磁场与电磁波实验仿真系统关键技术
2.1 电磁场与电磁波实验三维显示仿真仪器
电磁场实验中的主要仪器是DH926A型电磁波综合测试仪,该仪器有底盘、底盘附件、固定臂、信号源、转盘、电表、接收天线、金属支架、单缝板、水平金属网等27个零件.在实体建模时,首先对仪器的每个零件进行精确测量,使用SolidWorks完成每个零部件的三维模型,然后组装各零部件,保证每个零部件的独立动作和显示,以及各零部件间相互的联动和限制,最后对表盘的刻度、材质参数等细节部分调整到接近真实仪器.图1是DH926A型电磁波综合测试仪真实仪器和仿真仪器的整体比较.在外观上,仿真仪器和真实仪器外观非常相似,而且对每个零部件的操作与实验完全符合,各零部件间相互联动和相互制约也和实际操作完全一致.例如,活动臂可以在XY平面0°~180°任意旋转,而限制Z轴上的任意运动和在XY平面的任意平动,在实际操作上,
图1 DH926A型电磁波综合测试仪Fig.1 DH926A-electromagnetic field tester
仿真仪器可以根据实验者的观测角度和观测高度实时调整,更进一步,可以任意局部放大细节,细致观察实验操作结果.图2是仿真仪器的局部细节,不仅材质上与实际仪器相同,而且刻度的精细程度和放大后的效果超过了实际仪器.当旋转图2中微调旋钮,旋钮盘上的刻度A平滑转动,对应平尺上的刻度B产生相应的联动,这与真实仪器完全相似,刻度度数更精确.
2.2 电磁场理论与数学建模
图2 DH926A型电磁波综合测试仪局部细节Fig.2 Fine detail of DH926A-electromagnetic field tester
电磁场与电磁波实验的目的是为了加强对电磁场理论的验证和深刻理解,所以实验结果应符合电磁场相应理论,每个实验都单独进行数学建模,例如衍射现象、干涉现象、全折射、圆极化、线极化等实验.
以电磁波的反射与折射实验为例,发射天线发射电磁波,到达介质板后,发生反射和折射(透射)现象,使用接收天线进行测量.
首先,讨论反射,平行极化波和垂直极化波的反射系数分别为[4-5]:
其中,θ为入射角,ε1、ε2分别为空气和介质的介电常数.
其次,讨论透射,由于要穿过介质板的两个分界面,所以要进行两次折射.
其中,θ1是入射角,θ2是折射角.
对于平行极化波和垂直极化波,透射系数分别为:
有了这个模型,在仿真中,不论两个天线的角度、转盘的所在角度、活动臂的位置怎样变化,都能计算接收端的电场强度,即反映在电流表的示数上.
2.3 系统数据显示与误差分析
在一般的仿真系统中,通常是将数学计算的结果直接显示在屏幕,而且人们关心的也只是最终的数据.但应用于教学为目的的电磁场实验系统设计时,仿真系统应尽可能再现真实实验过程.所以,该系统创新地将计算结果精确还原在仪器的精细刻度上,用户通过读取系统仪器上的刻度得到相关的数据.图3表示电磁波反射与折射实验中加入介质板后,介质板位置和电流表发生相应偏转.
图3 电磁波反射与折射实验Fig.3 Reflection and refraction experiment of electromagnetic wave
系统的这种功能设计不仅满足实验操作上与真实实验相似,而且符合所有实验应有的误差分析的步骤.在真实的实验中,误差包括非人为误差(仪器误差、方法误差等)和人为误差(主要是读数的不确定性)[6].误差分析的目的就在于尽可能消除人为误差的影响.人为误差的原因一方面与观测者个人生理和心理上的特点有关,如在电表读数时,有人偏左而有人偏右;在估计读数时,有人习惯偏大而有人习惯偏小等.另一方面,是由于一些偶然的、不确定的因素引起的,例如,各次观察时仪器对得不准,调节平衡时平衡点确定不准,读数不准确等.这些人为误差在实际实验中都存在,因此仿真系统中将数学仿真计算后的结果再现在仪器的显示中,保留可造成人为误差这一特点,作为实验报告中误差分析的必要步骤.
3 结论
为了实现电磁场与电磁波仿真实验,依据计算机仿真理论,依次进行了建模、编程与验证,最终的效果达到了设计目标和要求.在仪器外观、操作步骤和数据读取等各方面都与真实实验非常相似.另外,此系统由于将模型显示、用户界面、数据处理3大模块分离开来,任何一模块的改动对其他模块的影响很小,这样,就很容易在此基础上扩充新的功能.例如,可以修改程序使之能够加载不同的仪器模型,这样的修改仅对三维显示的模块影响较大;可以增加网络模块,使之成为一个分部式仿真系统,即同一个实验场景,可以有多个用户同时在线参与.最后,电磁场与电磁波仿真系统给出了一个可行的实验仿真框架.对于类似的需要三维显示、用户交互、数据处理相结合的实验系统的设计提供了参考.
[1] 卢贤玲,杨艳,李景峰.计算机组成原理网上虚拟实验系统的建模与实现[J].郑州大学学报:理学版,2006,38(3):39-42.
[2] 赵忠芹,杨晓.计算机辅助教学(CAI)与物理教学改革[J].四川师范大学学报:自然科学版,1999,22(4):442-445.
[3] 朱新华.PBCD:一种基于演示的多媒体CAI课件开发方法[J].广西师范大学学报:自然科学版,2000,18(3):49-53.
[4] 邹澎,周晓萍.电磁场与电磁波教学指导:习题解答与实验[M].北京:清华大学出版社,2009:185-188.
[5] William H H,Jr John A B.Engineering Electromagnetics[M].New York:McGraw-Hill Higher Education,2002:187 -290.
[6] 钱政.测试误差分析与数据处理[M].北京:北京航空航天大学出版社,2008:7-10.