找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 321|回复: 0

[原创]:基于虚拟仪器的虚拟实验室构建(我的毕业设计)

[复制链接]
发表于 2005-4-21 19:56:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
基于虚拟仪器的虚拟实验室构建
----集成运放组成的负反馈放大器虚拟实验构建
摘 要
提说起虚拟仪器,实质上它就是一种创新的仪器设计思想,而非一种具体的仪器,而虚拟实验室的构建其实就是运用多媒体技术和一些编程语言来进行虚拟创建。本次设计的课题是虚拟仪器对集成运放组成的负反馈放大器电路的测量,在了解了虚拟仪器和图形化编程语言LabVIEW的一些基本概念的基础上。运用LabVIEW进行了虚拟信号发生器和虚拟示波器的设计,并且通过实验加深理解负反馈对改善放大器性能方面所起的作用,研究电压串联负反馈以及负反馈电路性能指标的测试方法。
关键字:  负反馈;虚拟仪器;LabVIEW
Abstract
Raiseing teachings gets up the fictitious apparatus ,It is that the one kind of innovation apparatus is designed idea in essence ,But non- one kind of concrete apparatus ,But fictitious laboratory is formed to construct utilizing the multi-medium technique to come to be underway the fictitious creating with some programmings language in fact quite right 。This the design task is the measurement that the fictitious apparatus was transporied placeeing the component negative feedbacks amplifier electric circuits to the integration ,Being living comprehends on some basics concept of fictitious apparatus and the figure programming language LabVIEW base 。The producer that application LabVIEW has carried on fictitiously the signal and fictitious oscilloscope design ,Moreover deepen to comprehend the negative feedback toto the action that the improvement amplifier performance respect is taked by means of the test ,Research tension series negative feedback along with the negative feedback electric circuit performance index quiz means 。
Keyword :   Negative feedback ;Fictitious apparatus ;LabVIEW


















第1章        绪论
   20多年前,美国国家仪器公司NI(National Instruments)提出“软件即是仪器”的虚拟仪器(VI)概念,引发了传统仪器领域的一场重大变革,使得计算机和网络技术得以长驱直入仪器领域,和仪器技术结合起来,从而开创了“软件即是仪器“的先河。
1.1 虚拟仪器的基本概念
所谓虚拟仪器,实际上就是一种基于计算机的自动化测试仪器系统。虚拟仪器通过软件将计算机硬件资源与仪器硬件有机的融合为一体,从而把计算机强大的计算处理能力和仪器硬件的测量,控制能力结合在一起,大大缩小了仪器硬件的成本和体积,并通过软件实现对数据的显示、存储以及分析处理。从发展史看,电子测量仪器经历了由模拟仪器、智能仪器到虚拟仪器,由于计算机性能以摩尔定律(每半年提高一倍)飞速发展,已把传统仪器远远抛到后面,并给虚拟仪器生产厂家不断带来较高的技术更新速率。

与传统仪器一样,它同样划分为数据采集、数据分析处理、显示结果三大功能模块。虚拟仪器以透明方式把计算机资源和仪器硬件的测试能力结合,实现仪器的功能运作。
应用程序将可选硬件 ( 如GPIB、VXI、RS-232、DAQ ) 和可重复使用源码库函数等软件结合起来实现模块间的通信、定时与触发,源码库函数为用户构造自己的虚拟仪器系统提供了基本的软件模块。当用户的测试要求变化时,可以方便地由用户自己来增减软件模块,或重新配置现有系统以满足现有系统的测试要求。
    所以,虚拟仪器是由用户自己定义、自由组合的计算机平台、硬件、软件以及完成系统所需的附件,而这在由供应商定义、功能固定、独立的传统仪器上是达不到的。
1.2 虚拟仪器的构成及其分类
虚拟仪器的组成包括硬件和软件两个基本要素。虚拟仪器中硬件的主要功能是获得真实世界中的被测信号,而软件的作用是控制实现数据采集、分析、处理、显示等功能,并将其集成为仪器操作与运行的命令环境。
1.虚拟仪器的硬件平台,构成虚拟仪器的硬件平台有两大部分。
①.计算机
它一般为一台PC机或者工作站,是硬件平台的核心。
②.I/O接口设备
I/O接口设备主要完成被测输入信号的采集、放大、模/数转换。不同的总线有其相应的I/O接口硬件设备,如利用PC机总线的数据采集卡/板(简称为数采卡/板,DAQ)、GPIB总线仪器、VXI总线仪器模块、串口总线仪器等。虚拟仪器的构成方式主要有5种类型,如图1.1所示。

图1.1 虚拟仪器的构成方式
虚拟仪器有多种分类方法,既可以按应用领域分,也可以按测量功能分,但是最常用的还是按照构成虚拟仪器的接口总线不同,分为数据采集插卡式(DAQ)虚拟仪器、RS232/RS422虚拟仪器、并行接口虚拟仪器、USB虚拟仪器、GPIB虚拟仪器、VXI虚拟仪器、PXI虚拟仪器和最新的IEEE1394接口虚拟仪器。 独立的一起操作界面,必须依赖仪器驱动器
GPIB、VXI和PXI总线都是专门为程控仪器设计的计算机接口总线,其中GPIB一起具有独立的仪器操作界面,可以脱离计算机独立使用,也可以通过标准GPIB电缆连接计算机实施程序控制;而VXI和PXI仪器提供的虚拟操作界面。
•GPIB系统
GPIB系统是以GPIB标准总线仪器与计算机为仪器硬件平台组成的 虚拟仪器测试系统。
•VXI系统
VXI系统是以VXI标准总线仪器模版与计算机为仪器硬件平台组成的 虚拟仪器测试系统
•PXI系统
PXI系统是以PXI标准总线仪器模版与计算机为仪器硬件平台组成的 虚拟仪器测试系统
2、虚拟仪器的软件
开发虚拟仪器必须有合适的软件工具,目前的虚拟仪器软件开发工具有如下两类:
(1).文本式编程语言:如Visual C++, Visual Basic, LabWindows/CVI 等。
(2).图形化编程语言:如LabVIEW, HPVEE等。
这些软件开发工具为用户设计虚拟仪器应用软件提供了最大的方便条件与良好的开发环境。
虚拟仪器软件有两部分构成,即应用程序和I/O接口仪器驱动程序。
虚拟仪器的应用程序包含两个方面功能的程序:
①.实现虚拟面板功能的软件程序;
②.定义测试功能的流程图软件程序。
I/O接口仪器驱动程序完成特定外部硬件设备的扩展、驱动与通信。
1.3  虚拟仪器的特点
虚拟仪器特点可以归纳概括为以下四个方面
①.丰富和增强了传统仪器的功能。虚拟仪器将信号分析、显示、储蓄、打印和其他管理集中交由计算机处理,充分利用了计算机强大的数据处理、传输、和发布能力,使得组建系统变得更加灵活、简单。
②.突出“软件就是仪器”的新概念。传统仪器的某些硬件在虚拟仪器中被软件所代替,由于减少了许多随时间可能漂移、需要定期校准的分立式模拟硬件,加上标准化总线的试用,使仪器的测量精度、测量速度和可重复性都大大提高。
③.仪器由用户自己定义。虚拟仪器通过给用户组建自己仪器的可重复用源代码库。可以很方便地修改仪器功能和面版,设计仪器的通信、定时和触发功能,实现与外设。网络以及其他应用的连接,给了用户一个充分发挥自己能力和想象力的空间。
④.开放的工业标准。虚拟仪器硬件和软件都制定了开放的工业标准,因此用户可以将仪器的设计、使用和管理统一到虚拟仪器标准,使资源的可重复利用率提高,功能易于扩展,管理规范,生产、维护和开发费用降低。
其优点可以有:
①.扩展性强
NI的软硬件工具使得工程师和科学家们不再圈囿于当前的技术中。得益于NI软件的灵活性,只需更新您的计算机或测量硬件,就能以最少的硬件投资和极少的、甚至无需软件上的升级即可改进您的整个系统。在利用最新科技的时候,您可以把它们集成到现有的测量设备,最终以较少的成本加速产品上市的时间。
②.开发时间少
在驱动和应用两个层面上,NI高效的软件构架能与计算机、仪器仪表和通讯方面的最新技术结合在一起。NI设计这一软件构架的初衷就是为了方便用户的操作,同时还提供了灵活性和强大的功能,使您轻松地配置、创建、部署、维护和修改高性能、低成本的测量和控制解决方案。
③.完美的集成
虚拟仪器技术从本质上说是一个集成的软硬件概念。随着产品在功能上不断地趋于复杂,工程师们通常需要集成多个测量设备来满足完整的测试需求,但是这些不同设备间的连接和集成总是耗费大量时间,不是轻易可以完成的。NI的虚拟仪器软件平台为所有的I/O设备提供了标准的接口。
1.4 虚拟仪器的发展和发展方向
电子测量仪器发展至今,大体可分为四代:模拟仪器、分立元件式仪器、数字化仪器、智能仪器和虚拟仪器。
目前,微电子技术和计算机技术飞速发展,测试技术与计算机深层次的结合正引起测试仪器领域里一场新的革命,一种全新的仪器结构概念导致了新一代仪器——虚拟仪器的出现。它是现代计算机技术、通信技术和测量技术相结合的产物,是传统仪器观念的一次巨大变革,是仪器产业发展的一个重要方向。它的出现使得人类的测试技术进入一个新的发展纪元。
与传统仪器相比,虚拟仪器在智能化程序、处理能力、性能价格比、可操作性等方面都具有明显的技术优势,具体表现为:
  (1)智能化程度高,处理能力强。虚拟仪器的处理能力和智能化程度主要取决于仪器软件水平。用户完全可以根据实际应用需求,将先进的信号处理算法、人工智能技术和专家系统应用于仪器设计与集成,从而将智能仪器水平提高到一个新的层次。
  (2)复用性强,系统费用低。应用虚拟仪器思想,用相同的基本硬件可构造多种不同功能的测试分析仪器,如同一个高速数字采样器,可设计出数字示波器、逻辑分析仪、计数器等多种仪器。这样形成的测试仪器系统功能更灵活、系统费用更低。通过与计算机网络连接,还可实现虚拟仪器的分布式共享,更好地发挥仪器的使用价值。
    (3)可操作性强。虚拟仪器面板可由用户定义,针对不同应用可以设计不同的操作显示界面。使用计算机的多媒体处理能力可以使仪器操作变得更加直观、简便、易于理解,测量结果可以直接进入数据库系统或通过网络发送。测量完后还可打印,显示所需的报表或曲线,这些都使得仪器的可操作性大大提高。
虚拟仪器具有传统独立仪器无法比拟的优势,但它并不否定传统仪器的作用,它们相互交叉又相互补充,相得益彰。在高速度、高带宽和专业测试领域,独立仪器具有无可替代的优势。在中低档测试领域,虚拟仪器可取代一部分独立仪器的工作,但完成复杂环境下的自动化测试是虚拟仪器的拿手好戏,是传统的独立仪器难以胜任的,甚至不可思议的工作。
专家们指出,在这个计算机和网络时代,利用计算机和网络技术对传统的产业进行改造,已是大势所趋,而虚拟仪器系统正是计算机和网络技术与传统的仪器技术进行融合的产物,因此,在21世纪,虚拟仪器将大行其道,日渐受宠,将会引发传统的仪器产业一场新的革命。




















第2章 图形化编程语言LabVIEW
LabVIEW是NI推出的虚拟仪器开发平台软件,它们能够以其直观简便的编程方式、众多的源码级的设备驱动程序、多种多样的分析和表达功能支持,为用户快捷地构筑自己在实际生产中所需要的仪器系统创造了基础条件。
2.1 LabVIEW概述
abVIEW采用图形化编程语言--G语言,产生的程序是框图的形式,易学易用,特别适合硬件工程师、实验室技术人员、生产线工艺技术人员的学习和使用,可在很短的时间内掌握并应用到实践中去。特别是对于熟悉仪器结构和硬件电路的硬件工程师、现场工程技术人员及测试技术人员来说,编程就像设计电路图一样;因此,硬件工程师、现场工程技术人员及测试技术人员们学习LabVIEW驾轻就熟,在很短的时间内就能够学会并应用LabVIEW。也不必去记忆那眼花缭乱的文本式程序代码。
LabVIEW这么容易学习和使用,是不是LabVIEW的功能十分有限呢?不。像C或C++等其它计算机高级语言一样,LabVIEW也是一种通用编程系统,具有各种各样、功能强大的函数库,包括数据采集、GPIB、串行仪器控制、数据分析、数据显示及数据存储,甚至还有目前十分热门的网络功能。LabVIEW也有完善的仿真、调试工具,如设置断点、单步等。LabVIEW的动态连续跟踪方式,可以连续、动态地观察程序中的数据及其变化情况,比其它语言的开发环境更方便、更?有效。而且LabVIEW与其它计算机语言相比,有一个特别重要的不同点:其它计算机语言都是采用基于文本的语言产生代码行,而LabVIEW采用图形化编程语言--G语言。
LabVIEW程序又称为虚拟仪器,它的表现形式和功能类似于实际的仪器;但LabVIEW程序很容易改变设置和功能。因此,LabVIEW特别适用于实验室、多品种小批量的生产线等需要经常改变仪器和设备的参数和功能的场合,及对信号进行分析研究、传输等场合。
总之,由于LabVIEW能够为用户提供简明、直观、易用的图形编程方式,能够将繁琐复杂的语言编程简化成为以菜单提示方式选择功能,并且用线条将各种功能连接起来,十分省时简便,深受用户青睐。与传统的编程语言比较,LabVIEW图形编程方式能够节省85%以上的程序开发时间,其运行速度却几乎不受影响,体现出了极高的效率。使用虚拟仪器产品,用户可以根据实际生产需要重新构筑新的仪器系统。例如,用户可以将原有的带有RS232接口的仪器、VXI总线仪器以及GPIB仪器通过计算机,联接在一起,组成各种各样新的仪器系统,由计算机进行统一管理和操作。
可以预见,由于LabVIEW这些其他语言无法比拟的优势,已经成为该领域的一朵奇葩!最终将引发传统的仪器产业一场新的革命。
2.2  LabVIEW软件的特点
LabVIEW是一种程序开发环境,类似于BASIC开发环境;但LabVIEW与其它计算机语言相比,有一个特别重要的不同点:其它计算机语言都是采用基于文本的语言产生代码行;而LabVIEW使用图形化编程语言G编写程序,产生的程序是框图的形式。
像C或BASIC一样,LabVIEW也是通用的编程系统,有一个可完成任何编程任务的庞大的函数库。LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据显示及数据存储等。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其通过程序(子VI)的结果、单步执行等,便于程序的?调试。
LabVIEW易学易用,特别适合硬件工程师、实验室技术人员、生产线工艺技术人员的学习和使用,可在很短的时间内掌握并应用到实践中去。
LabVIEW在包括航空、航天、通信、汽车、半导体和生物医学等世界范围的众多领域内得到了广泛应用,从简单的仪器控制、数据采集到尖端的测试和工业自动化,从大学实验室到工厂,从探索研究到技术集成,都可以发现应用LabVIEW的成果和开发产品。
①.具有图形化的编程方式,设计者无需写任何文本格式的代码,是真正的工程师的语言。
②.提高丰富的数据采集、分析及存储的库函数。
③.提高传统的程序调试手段,如设置断点、单步运行,同时提供独具特色的执行工具,使程序动画式运行,利用设计者观察到程序运行的细节,使程序的调试和开发更为便捷。
④.32位的编译器生成32位的编译程序,保证用户数据采集、测试和测量方案的高速运行。
⑤.囊括了PCI,GPIB,PXI,VXI,RS-232/485,USB等各种仪器通信总线标准的所有功能函数,使得不懂的总线标准的开发者也能够驱动不同总线标准接口设备与仪器。
⑥.提供大量与外部代码或软件运行链接的机制,如DLL,DDE,ActiveX等。
⑦.具有强大的Internet功能,支持常用的网络协议,方便网络、远程测控        仪器的开发。
2.3虚拟仪器软件平台——Lab VIEW
讲到虚拟仪器,不能不提革命先锋美国国家仪器公司(National Instruments,以下简称NI),NI提出“软件就是仪器”的口号,彻底打破了传统仪器由厂家定义,用户无法改变的模式,该公司已研究及制作数以百计的综合软件与硬件产品,在配合标准电脑使用时,即可取代传统仪器(或与之连接通讯),及监控工序流程。NI目前正致力于发扬新的解决方案,协助工程师、科学家以更快、更好、更低于预算达到他们的目标。这里提出介绍的都是NI研制的虚拟仪器产品,让各位深入认识其优点。
软件是虚拟仪器系统的关键。所以,提高软件编程效率也就成了一个非常现实的问题。根据微软件及其他电脑应用软件工业家的观点,在当今这个信息时代,提高软件编程效率的关键是采用面向对象的编程技术,但是,仅有面向对象的编程技术还是不够的,因为不可能让所有人都去学习复杂的C/C++语言,同时成为行业专家和编程专家。为此,在这里特地为你推荐两种虚拟仪器的开发平台Lab VIEW和Lab VIEW RT,这两种编程语言以简单直观的编程方式,配合众多的设备驳动程序,把复杂、烦琐、费时、难学的语言编程简化成用功能方框图、或实体图形,通过简单的连线方式,这样便完成程式设计。并设有自动除错及测试功能,令程式开发时间大为缩短。
首先,Lab VIEW是根据G编程语言,为数据采集与控制、数据分析,及数据呈示而设计的一个革命性图形编程开发环境,这个强大的编程程式对工程师及科学家不存在任何的困难及复杂,因为其图形编程方法正就是与他所熟悉的流程图式设计方法及思维方式非常相似。
你可利用Lab VIEW控制你的系统,并且透过互动式图形面板呈示结果。Lab VIEW支援多系统平台,在Windows NT/95/98/3.1、Mac OS、Sun SPARC和HP-UX这些平台上NI公司都提供了相应的Lab VIEW版本。你可以从数以千计的仪器设备上采集数据,包括GPIB、VXI、PXI、串行装置、PLC、以及插入式数据集合(DAQ)板。你也可以通过Internet、或者如Active X、动态数据交换(DDE)及结构化询问语言(SQL)数据库连结与其他数据源头连接。还有,在Lab VIEW的开放式开发环境当中的安全灵活的表现,你可以把Active X物件嵌入Active X里,从其他环境召唤Lab VIEW程式码,并在Windows之下以动态连结库(DLL)的形式或者在其他平台之下的共享库出Lab VIEW召唤现有的程式码使用。
当应用上需要理发时。Lab VIEW模拟仪器系统灵活应变,不需添置新的仪器使用Lab VIEW,每一个用户已经有一个完备的仪器实验室,其价钱比一件商信仪器还要低,Lab VIEW也是跨平台兼容的,令你总是可以把系统接至最佳的平台上。还有,NI保证往后兼容。使到你今天部署的仪器也能与将来的科技兼容。
Lab VIEW使用“所见即所得”的礼堂化技术建立人机界面,针对测试、测量及过程控制领域,NI公司在Lab VIEW中提供了大量的仪器面板中的控制物件,如表头、旋钮、图表、温度计等,用户不可以通过编辑器将现有的控制物件修改成为适合自己工作领域的控制物件。
根据调查所得,目前Lab VIEW在工业界同行使用中是最多软件平台,他们利用Lab VIEW平台已成功地开发出各种的应用系统,这此系统大部分成为商品。据厂家表示,Lab VIEW节省开发时间,比起传统编程,快至少4至10倍。LAB VIEW的模件式及阶层式架构,给他们在短时间内迅速完成系统的原型、基本设计。
Lab VIEW在美国已经取得四项专利,目前发展至第11版本,新的版本继承了一贯以来方便灵活的开发环境,在多方面作出了增强及提高,比如改善了跨接Internet上的连接性,在Lab VIEW5.1内新添上网工具,用户不需作编程便可以将虚拟仪器面板印在网页上,藉著Iab VIEW5.1内的新NI Bata Socler技术,用户即可与其Intemet启动应用程式共用数据,不用担心网络协议或数据格式。
崭新的模件应用架构给用户建立细小的执行程式档案,养活记忆体的使用量,改善系统的效能,Lab VIEW5.1继续结合新的Active X(COM)技术,现更支援Active事件模型,又将之扩展至把the Math Works MATHLAB的数学与相互分析能力结合,用户可以从Lab VIEW虚拟仪器直接召唤CATHLAB MScript档案,实行使用其现有的数学运算程式。
在开发专业用户界面时,Lab VIEW5.1国人多项强化,帮助用户提高生产力,包括新的3D图形控制,为用户执行模拟及视觉化时增添灵活性;仪器面板可作扩大,以至用户可以把其应用程式在不同屏幕之间移植,再不用人手作调校屏幕的大小;改良报告制作,迅速将结果按照格式打印成报告;加强图表演示,包括SmithH及plorplot等图表。
2.4 LabVIEW 的基本开发环境
设计一个虚拟仪器在两个窗口中进行,第一个是前面版板开发窗口,所有虚拟仪器前面板的设计都在这个窗口中进行并完成;第二个窗口是流程编辑窗口。下面对它们分别加以介绍。
1.前面板开发窗口
前面板开发窗口如图2-1所示。窗口中包含主菜单栏和快捷工具栏。

图2-1 前面板开发窗口
设计制作虚拟仪器前面板就是用工具模板中相应的工具去取用控制模板上的有关控件,并摆放到窗口中的适当位置上。
2.流程图编辑窗口
流程图是图形化的源代码,是VI测试功能软件的图形化表述。虚拟仪器通过软件编程来实现测试功能。LabVIEW采用图形化编程方式,如图2-2所示。选用工具模板中相应的工具去取用功能模板上的有关图标来设计制作虚拟仪器流程图,以完成虚拟仪器的设计工作。

图2-2 流程图编辑窗口
2.5 虚拟仪器设计步骤
通常,一个虚拟仪器的设计步骤如下:
(1)在前面板上设计窗口放置控件,在前面板开发窗口使用工具模板中的相应工具,从控制模板中取用和放置好所需控件,进行控件属性参数设置,标贴文字说明标签。
(2)在流程图编辑窗口,放置节点、图框,在流程图编辑窗口,使用工具模板中相应工具,从功能模板中取用并放置好所需图标,它们是流程图中的“节点”、“图框”。
(3)数据流程编程,使用连线工具按数据流的方向将端口、节点、图框依次相连,实现数据从源头按规定的运行方式送到目的终点。
    (4)运行检验,当完成步骤(1)、(2)、(3)后,前面板程序与流程图图形化程序的设计完毕,一个虚拟仪器已经基本建立,是否达到预期功能,还需运行检验。有如下两种检验方式。
a.        仿真检验:不使用I/O接口硬件设备。对VI检验运行所需的信号数据采用由“数组”或“信号生成函数”产生的“仿真信号”。
b.        实测检验:它通过I/O接口硬件设备,采集输入标准信号,来检验虚拟仪器功能。仿真检验在实测检验之前进行,是虚拟仪器所特有的优势,因为它对反复检验,调试,不断完善改进虚拟仪器极为方便,是传统仪器无法采用的检验手段。
    (5)程序调试技术,利用快捷工具栏中的“运行”、“高亮执行”、“单步执行”、“断点设置”进行以下程序调试步骤。
     a.找出语法错误,如果存在语法错误,则当启动快捷工具栏的“运行”按钮时,该按钮变成一个折断的箭头,程序不能执行。鼠标单击该按钮,则将弹出错误清单窗口,窗口中列出错误的项目,然后单击其中任何一个所列出的错误,单击“Find”功能按钮,则出错的对象或端口就会变亮。
     b.慢速跟踪程序的运行,利用快捷工具栏中的“高亮执行”按钮,单击该按钮,该按钮图标变成高亮形式,再单击“运行”按钮,程序就以较慢的速度运行。没有被执行的代码灰色显示,执行后的代码高亮显示,并显示数据流上的数据值。这样,就可以根据数据流动状态,跟踪程序的执行。
c.断点与单步执行,为了查找程序中逻辑错误,你也许希望框图程序一个节点一个节点地执行。使用断点工具可以在程序的某一地点中止程序执行,用探针或者单步执行方式查看数据。
d.设置探针,可以通过设置探针开查看框图程序经某一根连线的数据值。
(6)数据观察,当检查观察中发现有错误时,鼠标单击“Highlight Execution”按钮,观察数据流中各个节点的数值。
(7)命名存盘,保存设计好的VI。
2.6 数据采集系统
2.6.1 概述
LabVIEW的数据采集(Data Acquisition)程序库包括了许多NI公司数据采集(DAQ)卡的驱动控制程序。通常,一块卡可以完成多种功能 - 模/数转换,数/模转换,数字量输入/输出,以及计数器/定时器操作等。用户在使用之前必须DAQ卡的硬件进行配置。这些控制程序用到了许多低层的DAQ驱动程序。
2.6.2 数据采集VI程序
LabVIEW的DAQ程序包括模拟输入、模拟输出、计数器操作、或者数字输入、输出等。你可以在框图程序窗口下选择Data Acquisition。再在此子模板下,可以看到6个子模板:Analog Input, Analog Output, Digital I/O, Counter, Calibration and Configuration和Signal Conditioning。
    在上述6个子模板下,每个子模板又分成Easy I/O Vis, Intermediate Vis, Utility Vis和Advanced Vis。下面我们以Analog Input子模板为例进行解释。在其顶层是简单模拟量输入VI程序(Easy AI),中间层是中级模拟量输入VI程序(Intermediate AI),然后下面是两个图标,一个用于调用模拟输入应用程序(Utility AI),一个调用高级模拟量输入程序(Advanced AI)。
    简单I/O程序仅仅只是表面层接口程序,它能执行基本的模拟量输入、模拟量输出、数字I/O,以及计数器/定时器操作。它简单易用,并且包含一个简单的出错处理方法。当出错时,将弹出一个对话框,显示出错信息,而用户可以选择中止程序执行或者忽略错误。
    相对于简单程序而言,中级程序具备更多的硬件设置功能,灵活性,并且可以更有效地开发实用程序。它具有许多简单程序所缺乏的功能,如外部时钟等。它对出错的处理也更加灵活,可以把出错状态信息传递给其它的程序,编程处理出错情况。
2.6.3 模拟输入与输出
在Data Acquisition子模板下的Analog Input子模板程序执行模/数转换操作。而Analog Output程序库则执行数/模转换或多重转换。
    AI Sample Channel程序测量指定通道上信号的一个采样点,并返回测量值。Device是DAQ卡的设备编号,Channel是描述模拟输入通道号的字符串,High Limit和Low Limit指明输入信号的范围,缺省值为+10V和-10V。
AO Update Channel程序把一个给定电压值在一个模拟输出通道上输出。Device是DAQ卡的设备编号,Channel是输出通道号字符串Voltage是输出的电压值。
    在上述程序执行时,如果发生错误,则弹出一个对话框,显示错误代码,你可以选择中止程序或者继续程序执行。
2.6.4 波形的产生与采集
在许多应用场合,一次只采样一个数据点是不够的。另外,采样点之间的间隔很难保持恒定,因为它取决于很多因素,如循环的执行速度,子程序的调用时间等等。而使用AI Acquire Waveform和AO Generate Waveform程序,就可以以大于单点操作的速度进行多点的数据采集和波形产生,并且用户可以自定义采样速率。
2.6.5 连续数据采集
连续数据采集,或者说实时数据采集,是在不中断数据采集过程的情况下不断地向计算机返回采集数据。开始数据采集后,DAQ卡不断地采集数据并将它们存贮在指定的缓冲区中(circular buffer),然后LabVIEW每隔一段时间将一批数据送入计算机进行处理。如果缓冲区放满了,DAQ卡就会又重新从内存起始地址写入新数据,覆盖原来的数据。这个过程一直持续,直到采集到了指定数目的数据点,或者LabVIEW主动中止了采集过程,或者程序出错。这种工作方式对于需要把数据存入磁盘或者观察实时数据很有用。








第3章 系统硬件设计
3.1虚拟信号发生器

3.1.1虚拟信号发生器的概述
虚拟信号发生器可以提供各种波形周期信号函数,函数值为离散序列值。该离散值通过数模(D/A)转换,以模拟电压的形式输出,输出波形呈现台阶状,对模拟输出信号进行滤波即可获得光滑的波形。滤波时要选择合适的截止频率,使模拟输出的信号失真度最小。虚拟信号发生器产生的信号频率通过软件延时的方法实现,即在相邻两个离散函数值之间进行加数循环。
3.1.2虚拟信号发生器软件流程框图
虚拟信号发生器软件流程框图如图3-1所示。

图3-1 虚拟信号发生器软件流程框图
3.1.3虚拟信号发生器的功能描述
该信号发生器可产生正弦、余弦、三角波、方波等信号,这里着重介绍正弦信号的产生,指标如下:
频率范围:0.1HZ~10KHZ,可选;
波形方式:0~5,可选;
幅值:0.001V~10V,可选;
生成波形的总点数:N=8~20000,可选。
3.1.4虚拟信号发生器的设计步骤
1.前面板的设计
(1)五个输入型数字控件,五个输入型数字控件供使用者键入波形方式、幅值、总采样点数、生成正弦信号的频率和电源补偿。
操作Controls>>Numeric>>Digital Control五次,得到五个输入型数字控件,分别标记为“波形选择”、“采样点数”、“频率”、“幅值”和“电源补偿”。
(2)一个输出显示型图形控件,输出显示型图形控件用来显示所产生的正弦波形。
执行Controls>>Graph>>Waveform Chart操作,调入图形控件Chart。其横轴为时间轴,纵轴为电压轴。因为Waveform Chart主要用来完成信号的动态显示,即每接收到一个(或一组)数据,就立即显示一个(或一组)数据。但显示的所有数据的总个数或显示波形的长度是一定的。新数据不断淘汰旧数据而得以显示。因此,这种显示方式非常适用于描述数据动态变化的规律,使用于实时数据的动态观察。
(3)一个通道选择控件,在数据采集卡上设置一定的输入/输出通道,用来将输出的正弦波形送到具体的SC-2075通道端口。
执行Controls>>I/O>>Traditional DAQ Channel操作,调入选择通道控件。
如上设计的前面板如图3-2所示。

图3-2  虚拟信号发生器前面板
2.流程图的设计
在前面板设计完整的前提下,然后将数字型控件通过在Analyze的子模板中找到Signal Processing,然后在此子模板中找到Signal Generation,最后连线形成虚拟信号发生器的流程图如图3-3所示。

图3-3 虚拟信号发生器流程图
3.运行检验
设置正弦信号f=50HZ,幅值=0.005V,采样点数为20000,生成的正弦波形如图2-2所示。
3.2 虚拟示波器
3.2.1 示波器概述
示波器是一种显示波形的仪器。它不仅可以显示电信号的波形(如交流电、心电、脑电、肌电等),通过适当的换能装置,也可以显示非电信号的波形,如声波、心率、体温、血压等随时间变化的过程。信号的波形显示出来之后,我们就可以很直观地观察分析它们的变化规律,并测量它们的相关参数。例如,从交流信号的波形图上,可以很容易观察到交流信号随时间变化的规律,并且很容易从波形图上测出它的电压峰-峰值(Vp-p)、周期(T)、相位差(φ)等参数。
示波器显示信号波形的过程与绘图的过程类似:白纸对应荧光屏、画笔对应光点、控制画笔作上下左右运动的手对应控制光点上下左右运动的待测信号与扫描信号。所不同的是示波器显示出来的波形仅仅是光点在待测信号与扫描信号的控制之下的运动轨迹,只要光点的运动速度足够快,由于人眼的视觉暂留和荧光屏的余辉效应,我们就可以看到光点的运动轨迹呈现为一完整的待测信号波形。
1.光点在竖直方向的运动。光点在竖直方向的运动受到待测信号的控制,待测信号的电压瞬时值越大,光点在竖直方向上的位移就越大。光点在竖直方向的位移的大小反映了待测信号电压瞬时值的大小。
2.光点在水平方向的运动。光点在水平方向的运动受到由机器内部产生的扫描信号的控制,其运动规律为:光点从荧光屏的最左端,接着开始第二次扫描,当扫描速度足够快时,我们看到的就是一条水平扫描线。因为扫描是匀速进行的,所以光点在水平方向上的位移可以反映时间的长短。
3.光点的合成运动。在待测信号和扫描信号的共同控制之下,光点的运动将是前述两种运动的合成。只要保证光点在水平方向上的扫描运动与竖直方向上的运动同步,那么光点的运动轨迹就稳定地呈现出待测信号的波形。
3.2.2虚拟示波器软件流程框图
虚拟示波器软件流程框图如图3-4所示。

图3-4 虚拟示波器软件流程框图
3.2.3虚拟示波器的设计
1.前面板的设计:在前面板上主要设置了以下几个方面的控件:
(1)操作Controls>>Numeric>>Digital Control五次,得到五个输入型数字控件,分别标记为“通道选择”、“时间基准”、“电压基准”、“电流基准”和“记录速度”。
(2)操作 Controls>>Graph>>Waveform Chart,一个输出型显示控件,其横轴为时间轴,纵轴为电压轴。Waveform Chart主要用来完成信号的动态显示,即每接收到一个(或一组)数据,就立即显示一个(或一组)数据。但显示的所有数据的总个数或显示波形的长度是一定的。新数据不断淘汰旧数据而得以显示。因此,这种显示方式非常适用于描述数据动态变化的规律,使用于实时数据的动态观察。
   (3)四个输出显示型输出值控件,分别为“频率值”、“测量值”、“最大值”、“最小值”。
如上设计的示波器的前面板如图3-5所示

图3-5 虚拟示波器的前面板
2.流程图的设计:
在流程图设计之前,先简单介绍结构子模板中的Case结构,子模板中的Case结构类似于C语言中的Switch结构,是一个多分支选择结构。它根据输入值来决定程序进入不同的分支流。
Case 结构在使用时应注意以下几个方面的问题:
(1)Selector的取值,Selector的输入由前面板上的输入控制型控件决定,数据类型可以是整型、数字型、枚举、布尔量等。此外,它还可以是一段数据范围,它还可以是几个数的排列,Selector的数据类型必须与string的数据类型一致,否则会出错。
(2)默认分支的设置,如果所有分支标号都没有与输入Selector值相匹配的,就执行默认分支,以保证程序出错时,能返回正常运行状态。
了解了Case 结构,那么我们就可以将示波器的流程图分几块来进行设计,可以将时间基准、电压基准、电流基准以及显示输出的频率、测量值、最大值和最小值分成几小块来进行设计。从而我们得出:
  
时间基准子程序                电压基准子程序
  
电流基准子程序            通道选择子程序


输出显示子程序
综上所述,我们将得出整个虚拟示波器的流程图,如图3-6所示。

图3-6 虚拟示波器流程图
3.运行检验
在虚拟信号发生的前面板上设置f=50HZ,幅值=5V,采样点数为20000的正弦信号,然后通过设置一定的通道,在输出到虚拟示波器的前面板上,观察输出波形。3.3集成运放组成的负反馈放大器设计
3.3.1 负反馈的概述
        如果反馈信号消弱外加输入信号的作用,使放大电路的放大倍数降低,称为负反馈。
  放大电路引入负反馈后,虽然放大倍数有所下降,但是提高了放大电路的稳定性。而且远远不止于此,采用负反馈还能够改善放大电路的其他各项性能。例如,减小非线形失真和抑制干扰,扩展频带以及根据需要灵活地改变放大电路的输入电阻和输出电阻等等。
放大电路引入负反馈以后得到的最直接,最显著的效果就是提高放大倍数的稳定性。在输入信号一定的情况下,当电路参数变化,电源电压波动或负载发生变化时,由于引入了负反馈,放大电路输出信号的波动将大大减小,也就是说放大倍数的稳定性提高了。
3.3.2集成运放组成的负反馈放大器的原理电路

3.3.3集成运放组成的负反馈放大器所需仪器与器材
一双路直流稳压电源
   二低频信号源
   三示波器
   四毫伏表
   五集成运放CF747,电阻,电容
   六电阻箱0-100欧姆




















第4章 系统联调
4.1 系统连接图

4.2对电压串联负反馈电路测试
线路是由两个集成运放组成的级间为电压串联负反馈的负反馈放大器。
实物图为:

4.3 用示波器观察输出波形
在面包板上按电路图接线。再按照设计框图,接入信号发生源,接入示波器,接上数据采集线。按照图接好系统连接图,然后打开虚拟信号发生器;其次是将直流电源接入放大器的电源端;再次将虚拟示波器接入放大器的输出端;最后开启直流电源,在不失真的情况下, 按设计步骤具体采集数据
利用可调电阻Rf,调至Rf=98KΩ时,接入RL=10KΩ时,测量出输出电压U0如图所示:

利用可调电阻Rf,调至Rf=48KΩ时,接入RL=10KΩ时,测量出输出电压U0如图所示:


整理成表格
       测试项目
Rf        Ui (mV)        Uo (mV)        Au=Uo/Ui
98k        50        1937        38
48        50        428        21

                                    










第5章方案改进
由于数据采集卡的采样点数只能达到20万,而信号发生器最大的采样点数只能达到2万,所以我们观察的波形就与理想的波形有差别。双极型单管放大器的设计,主要是采用sc-2075,在此面包板上将原理电路接好,然后将利用图形化编程语言LabVIEW设计的虚拟信号发生器输出一定的正弦信号(在sc-2075上设置模拟输出端通道1为模拟输出)那么就可以将信号从通道1输出的信号输入到放大器的输入端,(开启直流电源)经过放大器放大后(确定放大电路连接正确的情况下),在将输出信号输出到用图形化编程语言LabVIEW设计虚拟示波器上(在sc-2075上设置模拟输入通道0)。




































第6章 致谢
在近四个月的毕业设计中,我们得到了院系老师的大力支持,特别是陈东雷老师的悉心教导,在此,我表示忠心的感谢,同时对培育了我四年的母校表示深深的敬意!
毕业设计已进尾声,在这次设计工程中,我收获颇多。现在将这为期三个月的毕业设计做个总结。这不仅仅是为了完成毕业设计任务,也是为了进一不提高自己的理论水平和思想认识,为今后的学习和工作留下一些具有参考价值的东西。
在这次毕业设计过程中,我深深的感到:从学习书本知识到灵活运用知识,从而提高自己解决实际问题的能力这一过程是多么不容易。灵活运用知识提高自己解决实际问题的能力,这是我今后努力的方向。
另外,在设计过程中我看到了自身的一些不足:比如分配时间不平衡,不能充分利用时间等等。。现在,我很庆幸自己能看清自己的不足,在以后的学习和生活中我一定要改正自己的不足之处,更加努力地去学习。
虽然这次毕业设计就要结束了,但我想它对我今后学习工作的意义是长远的,我们将以此为鉴,克服自己的不足,发挥自己的长处,争取在以后的学习和工作中不断完善自己!
最后,再次感谢指导老师陈老师!



























参考文献:
[1]. 刘君华等编《虚拟仪器图形化语言LabVIEW教程》 西安电子科技大学出版社,2001.7
[2]. [美] Robert H.Bishop 著《LabVIEW 6i 实用教程》 电子工业出版社
[3]. 刘君华 主编《基于LabVIEW的虚拟仪器设计》 电子工业出版社
[4]. 清华大学电子学教研组 编 杨素行 主编《模拟电子技术基础简明教程(第二版)》  高等教育出版社
[5]. 潘莹玉《虚拟仪器及其应用》电力自动化设备 1999年第1期
[6]. 刘君华《现代检测技术与测试系统技术》西安交通大学出版社,1999
[7]. 彭勇 主编《办公软件应用中文PowerPoint XP培训教程》 电子工业出版社
[8]. 谢之明 等主编《PowerPoint 2000 中文版实例与疑难解答》 电子工业出版社
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2025-9-16 01:28 , Processed in 0.394082 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表