1、基于虚拟仪器技术的数字电路实验系统的设计与实现张兢 李成勇 李雪梅 徐伟(重庆理工大学 电子信息与自动化学院,重庆, 400054 )摘要:为了适应现代实验教学的需要,提高实验的开放性和灵活性。运用基于 LabVIEW 的虚拟仪器技术,构建数字电路实验系统,充分体现了虚拟仪器在实验操作中的优势。通过分析虚拟仪器技术在数字电路实验中的实际运行效果,表明了 LabVIEW 设计的数字实验系统设计过程较其它一些语言设计过程简单、方便,而且具有性能相对稳定、实验中误差较小、使用方便灵活以及节约成本等特点,在实验教学中可以得到广泛的应用。不仅拓展了实验范围和空间,而且能够发挥学生的主动性和创造性。关键词
2、:虚拟仪器技术;LabVIEW;数字电路;实验系统中图分类号:Design and implementation of digital circuitexperiment system based on the virtual instrument technologyZhang Jing,Li Cheng-yong,Li Xue-mei,Xu Wei(Chongqing University of Technology ,college of electronic information and automation,chongqing,400050,China)Abstract:In or
3、der to meet the need of modern experimental teaching,improve experiment of openness and flexibility. Constructing digital circuit experiment system,fully embodies the virtual instruments in experimental operation of the advantage based on the virtual instrument technology, LabVIEW . Through the anal
4、ysis of digital circuit experiment in actual effect of virtual instrument technology, shows the digital experiment system LabVIEW design than some other language design process more simple and convenient, and some characteristics of relative stability and performance and experiments small errors and
5、 use convenient and save costs etc,so can be widely used in experiment teaching. Not only expanded experiment scope and space, but also can exert students initiative and creativity. Keyword:Virtual instrument technology ;LabVIEW;digital circuit;experiment system1 引言 随着科学技术的进步,社会对高校学生提出了越来越高的要求,不仅仅要求
6、学生具有扎实的理论知识,而且还要有比较强的实际动手能力。可是随着近几年来高校招生规模的不断扩大,在校学生人数也成倍增加。传统的实验仪器由于实验场地、实验设备、实验经费投入相对不足等因素已经不能满足需要,学生的实际实验训练因此也得不到满足,尤其是理工科学生,没有实验训练,抽象的理论知识很难理解。虚拟仪器技术为解决这一矛盾提供了可能,虚拟仪器把计算机技术、电子技术、传感器技术、信号处理技术、软件技术相结合,除继承传统仪器的常用功能外,还增加了许多传统仪器所不能及的先进功能。虚拟仪器的最大特点是灵活性,能充分利用计算机丰富的软硬件资源,用户在使用过程中可以根据需要添加或删除仪器功能,以满足不同的实验
7、需求环。它把计算机强大的计算处理能力和仪器硬件的测量、控制能力集合在一起,大大缩小了仪器硬件的成本和体积,并且突破了传统仪器在数据处理、显示、传送等方面的限制,使使用者可以方便的对其进行维护、扩展、升级等,这些特点是传统仪器所不能比拟的。数字电子技术已经广泛地应用于电视、雷达、通信、电子计算机、自动控制、航天等各个领域。例如,在通信系统中,应用数字电子技术的数字通信系统,不仅比模拟通信系统抗干扰能力强、保密性好,而且还能应用电子计算机进行信息处理和控制。数字电路作为电子信息类各专业的主要技术基础课程之一,其重要性不言而喻。其实践环节尤为重要,数字电路实验学时多、数量大,电路的类型和器件选择变化
8、都很大,用 LabVIEW 构建的数字电路虚拟实验平台完全可以满足这一要求。据此,本文以 LabVIEW 为开发平台,构造了一个实时性强、交互性强、使用方便灵活以及节约成本的数字电路虚拟实验系统,既克服了传统教学只有理论无法做实验的缺陷,又可以减少硬件投资,是一种低成本、高收益的实验系统,具有很大的现实意义。2 数字电路实验系统的结构设计2.1 LabVIEW 的使用LabVIEW 作为目前国际上唯一的编译型图形化语言,把复杂、繁琐、费时的语言编程简化成用菜单或图标提示的方法选择功能(图形),使用线条把各种功能连接起来的简单图形编程方式。LabVIEW 中编写的框图程序,很接近程序流程图。与
9、C 和 BASIC 一 样 , LabVIEW 也 是 通 用 的 编 程 系 统 , 有一 个 完 成 任 何 编 程 任 务 的 庞 大 函 数 库 。 函数 库 包 括 数 据 采 集 、 GPIB、 串 口 控 制 、 数据 分 析 、 数 据 显 示 及 数 据 存 储 等 等 。LabVIEW 也 有 传 统 的 程 序 调 试 工 具 , 如设 置 断 点 、 以 动 画 方 式 显 示 数 据 及 其 子 程序 ( 子 VI) 的 结 果 、 单 步 执 行 等 等 , 便 于程 序 的 调 试 。LabVIEW 中 的 程 序 查 错 不 需 要 先 编 译 , 若存 在 语
10、 法 错 误 , LabVIEW 会 马 上 告 诉 用 户 。只 要 用 鼠 标 点 两 三 下 , 就 可 以 很 快 地 查 到错 误 的 类 型 、 原 因 以 及 错 误 的 准 确 位 置 ,这 个 特 点 在 程 序 较 大 的 情 况 下 特 别 方 便 。LabVIEW 是一种用图标代替文本行创建应用程序的图形化编程语言。传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而 LabVIEW 则采用数据流编程方式,程序框图中节点之间的数据流向决定了 VI及函数的执行顺序。LabVIEW 提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。用户
11、界面在 LabVIEW 中被称为前面板。使用图标和连线,可以通过编程对前面板上的对象进行控制。LabVIEW 的图形化代码在某种程度上类似于流程图,因 此 又 被 称 作 程 序 框 图 代 码 。其主要特点有以下几点:(1)尽可能采用了通用的硬件,各种仪器的差异主要是软件;(2)可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器;(3)使用者可以根据自己的需要定义和制造各种仪器。(4)同传统的编程语言相比,采用 LabVIEW 图形编程方式可以节省大约80的程序开发时间,并且其运行速度几乎不受影响。2.2 数字电路课程实验分析数字电路中的物理量的变化在时间和数量上都是离散
12、的。也就是说,它们的变化在时间上是不连续的,总是发生在一系列离散的瞬间,这一类物理量也叫数字量。用数字量表示的信号就是数字信号,在数字电路课程所有的实验中都使用数字信号来实现其功能,这些信号通常是 0、1 表示的二进制序列。而 LabVIEW 中的布尔量正好符合这些特点,只需把二进制序列用布尔量的真假来表示即可,这为设计实验系统提供了方便。数字电路的实验可以分为两类:一类是基本逻辑电路实验,也是常用的数字电路实验,其中包括组合逻辑电路如编码器、译码器、选择器等,时序电路实验如触发器、寄存器、计数器等,这些是掌握数字电路的基础。另一类是综合设计实验如数字频率计、数字时钟、波形发生器等,本文在设计
13、的过程中主要选择了六种比较常用的综合电路,以数字时钟电路为例进行分析。这些实验由基本实验电路组合而成,原理相同,设计方法不尽相同。其它的综合实验都可以用 LabVIEW实现,主要是掌握基本原理和方法,本系统主要用于初学数字电路者掌握基本逻辑电路。2.3 实验系统总体结构设计对所有实验进行分类后,就可以用LabVIEW 设计整个实验总面板,整个面板的功能要求实现这些数字电路实验,根据LabVIEW 的特点,分前后两个面板,前面板相当于实物仪器中的外部控制面板,后面板是实现前面板功能的程序图,相当于实物仪器中的内部电路。如图 1 是数字电路实验系统总面板,图中的按钮都是布尔量控制,点下去实现其相应
14、的功能,和实物仪器按键功能一样,图 2 是数字电路实验系统的总程序图,整个程序框图中主要调用了事件结构(Event Structure) 、While 循环结构、条件结构(Case Structure)等典型函数模块完成了 16 个事件的响应和实现等功能。然后根据各个实验原理用 LabVIEW 分别进行模块编程,进行子程序调用,即可完成整个实验系统。整个系统都是界面化的,使用者只需点击相应的功能项就可以实现其功能,这样设计的总面板功能齐全,操作简单,使学生容易理解各个电路的功能,进行实践训练和自主学习,有利于学生的能力培养。图 1 数字电路实验系统总面板图 2 数字电路实验系统总程序图3 系统
15、模块结构设计本系统由基础实验模块和综合实验模块组成,下面就两个模块的功能和设计过程进行阐述。3.1 基础实验模块以译码器实验为例进行模块功能分析,译码器的逻辑功能是将每个输入的二进制代码译成对应的输出高、低电平信号。3-8 译码器电路是最常用的一种小规模集成电路,它有 3 个二进制输入端 A、B、C 和 8 个译码输出端 y0y7。对输入 A、B、C 的值进行译码,就可以确定输出端 y0y7 的哪一个输出端变为有效(低电平) ,从而达到译码的目的。译码器前面板如图 3,面板中只用到 15 个布尔量作为按钮进行控制,面板非常简单,程序面板如图 4,只调用了事件结构、While 循环结构、条件结构
16、函数模块就可以完成译码功能。译码器电路设计的时候用 LabVIEW 中的布尔量代替数字电路实验中的 1,0 来表示高低电平,使用简单,效果相同。本系统中G是选通端(低电平) ,通过操作本实验过程,可以让学生直观的看到译码器电路的工作性质,写出译码器电路的真值表,达到学习和实验的目的。图 3 译码器电路前面板图 4 译码器电路程序面板在此程序的基础上,可以进一步创新,只要进行小范围改动,就可以实现 BCD-七段显示译码器的功能,增加一个输入端 D,减少一个输出端,对应七段显示译码器的输出,编程思想和方法与 3-8 译码器一样,程序不变,只是把相应的布尔量进行真假确定,也就是真值表的确定。七段显示
17、译码器前面板如图5 所示,在 3-8 译码器面板的基础上,增加用布尔量组成具有七段数码管显示功能的LED,和平常使用的实物 LED 作用一样,布尔量用 0、1 控制真假,真(1)则亮,假(0)则不亮来进行译码。七段显示译码器程序面板如图 6 所示,在 3-8 译码器程序面板的基础上增加显示 9-15 的选择结构,原理一样。图 5 七段显示译码器前面板图 6 七段显示译码器程序面板3.2 综合实验模块以数字时钟实验为例进行模块功能分析,根据 LabVIEW 中布尔量真假变换,用布尔量组成具有七段数码管显示功能的 LED。一般的数字时钟具有时、分、秒计数显示功能,小时为 24 进制,分钟和秒为 6
18、0 进制显示,设置复位功能,本系统的复位时间是【12:00:00】 。设计原理与 EDA 设计数字时钟原理一样,都是数字信号 0,1 控制完成秒分时的计数任务,到相应的进制进位即可,EDA 是用 VHDL 语言编写,分时分秒各个模块,比较复杂,而 LabVIEW 用图标搭建,模块单一,功能一样,更有利于学生掌握数字时钟的基础设计思路。如图 7 是数字时钟显示面板,一个 LED 显示器用一个簇控件,一个簇用 7 个布尔量构建,和七段显示译码器原理一样,真假控制,6 个 LED 分别显示时分秒。图 8 是时钟程序面板,整个程序面板只用到 LabVIEW 中事件结构、for 循环结构和 case 选
19、择结构,根据计数器设计原理,秒分到 9 必须向前进一位,同时要归零。LabVIEEW 中有时钟延迟,这为设计提供了方便,用时钟控制计数器,只要搞清楚数字时钟的时间间隔,设计比较简单,实现的功能与其它语言设计的功能一样,而且是界面化的,使用者可以很清楚的看到结果,从而使抽象的问题简单化。图 7 数字时钟显示面板图 8 数字时钟程序面板4 结论(1)本文是基于 LabVIEW 技术开发的数字电路实验系统的设计,整个系统可以实现数字电路课程的基础实验和一些综合设计实验,设计过程较其它一些语言设计过程简单、方便,而且具有性能相对稳定、实验中误差较小、使用方便灵活以、节约成本以及实验结果清晰明了等特点,
20、在实验教学中可以得到广泛的应用。(2) 本系统开发周期短,成本低,同时又具有很强的兼容性和扩展性,易于升级和维护。在使用过程中实物损耗率低,能够大大提高仪器的使用效率。后续的工作是进一步完善模块功能,优化软件结构,将更多流行的网络技术应用到系统中,是系统功能更加强大,实验效果更加明显。(3) 实验过程操作简单,只需点击相应的功能菜单即可,使用者通过操作得出相应菜单功能,可以进一步探索创新。本系统设计的是 3-8 译码器,通过学习总结,学生可以进一步设计二-十进制译码器等相关电路。参考文献1 王海云, 周淑萍. 数字信号处理课程与虚拟仪器J. 高等理科教育, 2009,(03)2 刘灿涛,赵伟,
21、侯国屏. 基于虚拟仪器的电工教学实验J. 实验室研究与探索, 2001,(05)3 刘阳. 虚拟仪器的现状及发展趋势J. 电子技术应用, 1996,(04)4 卢超,任吉林,邬冠华. 测试技术与虚拟仪器综合性实验教学的探索与实践J. 实验技术与管理, 2006,(01) .5 韩兆福, 葛银茂, 陈遵银, 王锡仁. 虚拟仪器技术J. 中国电化教育, 2001,(07)6严文娟。LabVIEW在数字电路教学中的应用J。计算机与现代化,2009,7:123-125。(YAN Wen-juan. Application of LabVIEW in Teaching of Digital Circuits J. Computer and Modernization, 2009, 7 :123 - 125.) 作者简介:张兢(1965-) ,女,汉族,重庆市人,教授,硕导,主要从事电子信息技术应用方面的研究。李成勇(1987-)男,汉族,甘肃省白银市人,在读研究生,信号与信息处理专业。李雪梅(1984-)女,汉族,河北省衡水市人,在读研究生,信号与信息处理专业。Email:徐伟(1984-)男,汉族,江苏省南京市人,在读研究生,信号与信息处理专业。联系方式:(联系人:李成勇;通讯地址:重庆理工大学电子信息与自动化学院;邮编:400054;E-mail:;电话:15923397629)