1 引言
所谓虚拟仪器,就是在以计算机为核心的硬件平台上,配合以相应的输入/输出接口,具有计算机显示器的虚拟面板,测试功能由测试软件来实现的一种计算机仪器系统[1-2]。自美国国家仪器公司(National Instruments,NI) 在1986年提出虚拟仪器的概念之后,虚拟仪器技术便一直成为发达国家自动测控领域的研究热点和应用前沿。目前,最著名的虚拟仪器系统是NI的LabVIEW,其最广泛的应用领域是测控领域[3-4],而文章将要探讨的,是将该系统应用于数字逻辑电路的教学、实验的问题。文章认为,由于虚拟仪器的自身特点及数字与模拟电路的差异性,虚拟仪器系统并不适用于模拟电路系统的教学或实验,但对于数字电路系统,则有较强的、特殊的优势。
2 问题的引出
虚拟仪器LabVIEW具有典型的图形化语言风格,其程序(后面板)的编制过程就是将不同的图标(VI)进行选择、组合并连线的过程。其不同图标(VI)相当于具有不同功能的“子程序”,图标间的连线指定了数据的流向,相当于代码语言的“赋值”语句[5]。在LabVIEW的函数选板中,既包含了大量专用的信号处理、信号运算等VI图标,也包含了各种数值运算、逻辑运算的基本VI图标。其中的逻辑运算VI,其图标就是标准的逻辑运算符号,LabVIEW中相应的逻辑运算VI选板如图1所示。
不难看出,利用这些图标编制的逻辑运算程序(LabVIEW后面板),也就是一个规范的数字逻辑电路的逻辑图。就信号的输入/输出来说,LabVIEW亦提供了丰富的输入控件和输出控件,如各种形式的开关、按钮、指示灯、波形显示器等等,这些“器件”可直接用简单的拖动方式拖放到相应位置即可使用。
图1 LabVIEW中的布尔VI选板
更重要的是,虚拟仪器系统不同于虚拟现实技术或仿真技术,后两者只不过是对现实系统的一种模拟而已,而虚拟仪器虽称为“虚拟”,但其实质是一种基于计算机软、硬件系统作为支撑,通过采用一定的数学模型和算法来完成处理过程的真实仪器系统,一句话,虚拟仪器系统并非“虚拟”仪器,而是“真实”仪器,它是要完成真实仪器系统功能的。也就是说,基于虚拟仪器系统进行的相应实验或教学过程,通过配置相关的A/D或DAQ接口,即成为能完成实际仪器功能的仪器,故基于虚拟仪器进行教学、实验,比基于虚拟现实技术或仿真技术的教学实验更具有实际意义!
由于虚拟仪器LabVIEW中提供的布尔运算VI比较完备,再加上系统本身图形化的语言风格,完全可以做到将“程序——逻辑图——实验过程——输入输出”等过程的结合,使过程简单明晰,可以完成数字逻辑电路中几乎所有的实验及演示,如:编码器、译码器、数据选择器/分配器、加法器、各类计数器等等,而且,具体的实验或演示过程,还可运用LabVIEW中程序执行过程的“高亮度单步执行”模式,充分地观察到信号的动态流程和逻辑电路的运算过程,甚至可以将某种逻辑运算过程单独开发为专门的用户VI,形成一独特功能的新型概念的“虚拟芯片”,供需要时直接调用。下面就以一简单的七段数码显示译码器为例,来讨论运用虚拟仪器LabVIEW实现数字电路实验的过程。
3 数字电路教学实验的设计
数码显示器是常用的显示器件,七段显示译码器逻辑是数字逻辑电路教学中常用典型的设计范例,下面就以设计七段显示译码器为例,来说明虚拟仪器LabVIEW在数字逻辑电路中的应用。
3.1 设计要求
要求的数字显示字形如图2所示,设输入I3 I2 I1 I0为四位二进制数,a-g为相应的七段显示输出,其逻辑关系式则为方程组1。
图2 七段数码显示字形
3.2 设计过程及实验
使用虚拟仪器LabVIEW构建程序,按方程组1构建的后面板如图3所示。
图3 七段显示译码器的LabVIEW后面板(程序)
从图3可以看出,LabVIEW后面板(程序)和相应的逻辑电路在形式上完全对应,即LabVIEW的程序其实就是逻辑图的具体体现了。若采用“高亮度单步执行”方式,还可以直观地观察到信息(信号)的流动及每一环节的中间运算结果,这是其它数字逻辑实验所不及的,这也正是基于虚拟仪器LabVIEW进行数字逻辑实验所表现出的直观性、简洁性和实用性。
相应的程序前面板(输出/操作界面)如图4所示。
图4 七段显示译码器实验的前面板
实验中用4个开关I0~I3分别作为四位代码产生的逻辑器件,用a~g七个发光指示灯分别作为七段数码显示器的显示单元,这些“器件”都是LabVIEW提供的现成的输入/输出控件,直接运用即可。
图中当前显示的是输入为“1001”时的译码显示“9”,实验或演示时只须用鼠标操纵水平摇杆开关I0~I3即可得到相关的输入代码,对应的输出(译码显示)则在右端显示出来;当然,也可用“CTRL+E”组合键调出程序后面板窗口图3,运用单步高亮度执行的方式来观察译码器的工作过程。
4 虚拟仪器应用于数字电路实验教学的优点
引入虚拟仪器进行实验和教学,除了具备上述容易实现,过程简单和效果明显的特点之外,还可以达到以下目标:
先进仪器的低成本化
缩短新型仪器的开发周期
降低仪器的维护、配置成本
容易实现基于网络的交互式实验和教学
强化学习、实验过程的自主性和自创性
而达到上述目标,就可以改善相应的教学模式,将为培养适应新世纪的创新人才创造十分有利的条件,也为高校自身实力的提升和教学成本的降低提供了理想的发展空间。可以预见,虚拟仪器技术将是今后仪器科学发展在相当一段时期内的重要方向[6-7]。
5 结论
虚拟仪器系统应用于实验或教学,是虚拟仪器系统在测试领域之外的又一应用领域,而应用于数字逻辑电路的实验教学,能充分发挥虚拟仪器系统的优越性,使教学过程变得更加直观,使实验过程能充分体现学生的参与度、加强自创实验的设计和实践,而且虚拟仪器在数字逻辑电路实验中的应用面广、包含范围宽,加上适当的A/D或DAQ,可方便地将这类系统升级为具有实际意义的基于虚拟仪器的实验/分析系统。
将虚拟仪器应用于数字逻辑电路的教学、实验,具有较好的实际意义,也是虚拟仪器在测试领域之外得到应用的又一重要补充。
参考文献
[1] 张毅刚,虚拟仪器技术介绍[J],国外电子测量技术,2006,Vo1.25,No.6,1-6
[2] 陆绮荣:基于虚拟仪器技术个人实验室的构建[M],电子工业出版社,北京,2006
[3] 戴鹏飞,王胜开,王格芳等 《测试测试工程与LabVIEW的运用》[M],电子工业出版社,北京,2006.5
[4] http://www.ni.com/labview/
[5] 王磊,陶梅:《精通LabVIEW8.0》[M],电子工业出版社,2006
[6] 李 震,柯旭贵,汪云祥:虚拟仪器的发展历史、研究现状与展望[J],安徽工程科技学院学报,2005,Vol.18,No.4,1-4;
[7] 李纪欣, 虚拟仪器技术及其发展趋势[J],电子材料与电子技术,2005年第3期,41-46