虚 拟 仪 器
结 课 作 业
班级:自动化10-2
学号:1067106235
姓名:范丽媛
摘 要
虚拟仪器技术是现在计算机系统和仪器系统相结合的产物,是当今计算机辅助测试领域的一项重要技术。它推动着传统仪器朝着数字化,智能化,模块化,网络化的方向发展。
本文所设计出的虚拟仪器成本低、通用性强,在对采样频率要求不高的情况下,可以用声卡取代数据采集卡进行采样,充分利用了价格低廉的声卡进行数据采集。文章阐述了虚拟仪器的概组成及特点,重点介绍了采用图形化编程软件LabVIEW设计虚拟示波器方法以及他的波形显示、参数显示等功能。
本文所设计的虚拟示波器经过测试可以对信号正确的采集和显示,达到了本次虚拟示波器的设计要求。
关键词:LabVIEW、虚拟仪器、示波器
目 录
摘 要................................................................................................................. 2
设计题目:虚拟示波器....................................................................................... 4
第1章 虚拟仪器的概述................................................................................................... 4
1.1虚拟仪器的概念................................................................................................... 4
1.2虚拟仪器的构成................................................................................................... 4
1.3虚拟仪器的优点................................................................................................... 6
第2章 虚拟示波器的原理................................................................................................ 7
2.1 示波器的基本原理............................................................................................ 7
2.2 实现过程............................................................................................................ 7
2.2.1前面板设计............................................................................................... 7
2.2.2程序框图.................................................................................................... 8
2.2.3设计while循环........................................................................................... 9
心得体会.......................................................................................................... 11
设计题目:虚拟示波器
第1章 虚拟仪器的概述
1.1虚拟仪器的概念
虚拟仪器是指通过应用程序将计算机、软件的功能模块和仪器硬件结合起来,用户可以通过友好的图形界面(通常叫做虚拟前面板,简称前面板)来操作这台计算机就像在操作自己定义、自己设计的一台个人仪器一样,从而完成对被测信号的采集、分析、判断、显示、数字存储等。虚拟仪器以透明的方式,通过软件对数据的分析处理、表达以及图形化用户接口,把计算机资源(如微处理器、显示器等)和仪器硬件(如A/D、D/A、数字I/O、定时器、信号调理等)的测试能力和控制能力结合起来。虚拟一起突破了传统仪器以硬件为主体的模式,实际上使用者是在操作具有测试软件的电子计算机进行测量,犹如操作一台虚设的电子仪器。
虚拟仪器技术的实质是充分利用最新的计算机技术来实现和扩展传统仪器的功能。软件是虚拟仪器的关键,当基本硬件确定以后,就可以通过不同的软件实现不同的功能。用户可以根据自己的需要,设计自己的仪器系统,满足多种多样的应用要求。利用计算机丰富的软、硬件资源,可以大大突破传统仪器的数据的分析、处理、表达、传递、存储等方面的限制,达到传统仪器无法比拟的效果。它不仅可以用于电子测量、测试、分析、计量等领域,而且还可以用于进行设备的监控以及工业过程自动化。虚拟仪器还可以广泛用于电力工程、物矿勘探、医疗、振动分析、声学分析、故障诊断及教学科研等多个方面。
1.2虚拟仪器的构成
虚拟仪器从构成要素上讲,由计算机、应用软件和仪器硬件等构成;从构成分式上讲则由以DAQ板和信号调理为仪器硬件而组成的PC-DAQ测试系统,或已GPIB,VXI,Serial和Field bus等标准总线仪器为硬件组成的GPIB系统、VXI系统、串口系统和现场总线系统等多种形式。
(1) PC-DAQ插卡式的VI
这种方式用数据采集卡配以计算机平台和虚拟仪器软件,便可构成各种数据采集和虚拟仪器系统。它充分利用了计算机的总线、机箱、电源以及软件的便利,其关键在于A/D转换技术。这种方式受PC机机箱、总线限制,存在电源功率不足,机箱内噪声电平较高、无屏障,插槽数目不多、尺寸较小等缺点。随着基于PC的工业控制计算机技术的发展,PC-DAQ方式存在的缺点已经和正在被克服。因个人计算机数目非常庞大,插卡式仪器价格便宜,因此其用途广泛,特别适用于工业测控现场、各种实验室和教学部门使用。
(2) 并行口式的VI
最新发展的可连接到计算机并行口的测试装置,其硬件集成在一个采集盒里或探头上,软件装在计算机上,可以完成各种VI功能。它的最大好处是可以与笔记本计算机相连,方便野外作业,又可与台式PC相连,实现台式和便携式两用,非常方便。
(3) GPIB总线方式的VI
GPIB技术可以用计算机实现对仪器的操作和控制,代替传统的人工操作方式,很方便的把多台机器组合起来,形成大的自动测试系统。GPIB测试系统的结构和命令简单,造价较低,主要市场在台式仪器市场。适用于精确度要求高,但对计算机速率要求和总线控制实时性要求不高的场合应用。
(4) VXI总线方式的VI
VXI总线是VMEbus eXtension for Instrumentation的缩写,是高速计算机总线VME在VI领域的扩展,有稳定的电源,强有力的冷却能力和严格的RFI/EMI屏蔽。由于它的标准开放,且具有结构紧凑、数据吞吐能力强、定时和同步精确、模块可重复利用、众多仪器厂家支持的优点,得到广泛的应用。经过多年的发展,VXI系统的组建和使用越来越方便,有其他仪器无法比拟的优势,适用于组建大、中规模自动测量系统以及对速度、精度要求高的场合,但VXI系统要求有专用的机箱、零槽管理器及嵌入式控制器,造价比较高。
(5) PXI总线形式的VI
PXI总线是PCI eXtension for Instrumentation 的缩写,是PCI在VI领域的扩展。这种新型模块化仪器系统是在PCI总线内核技术上增加了成熟的技术规范和要求形成的,具有多板同步触发、精确定时的星形触发、相邻模块间高速通讯的局部总线以及高度的可扩展性等优点,适用于大型高精度集成系统。
(6) 网络接口方式的VI
尽管Internet 技术最初并没有考虑如何将嵌入式智能仪器设备连接在一起,不过NI等公司已经开发了通过Web浏览器观测这些嵌入式仪器设备的产品,使人们可以通过Internet 操作仪器设备。根据虚拟仪器的特性,我们能够方便的将虚拟仪器组成计算机网络。利用计算机网络将分散在不同地理位置不同功能的设备联系在一起,使昂贵的硬件设备、软件在网络上得以共享,减少了设备重复投资。现在,有关MCN(Measurement and Control Networks )方面的标准正在积极进行,并取得一定的进展。由此可见,网络化虚拟仪器将具有广泛的应用前景。
(7) USB接口方式的VI
Universal Serial Bus(USB)因为其在PC机上的广泛使用、即插即用的易用性和USB2.0高达480Mbits/s的传输速率,逐渐的成为仪器控制的主流总线技术。现在计算机上的USB接口越来越多,也使得工程师可以很方便的将基于USB的测量仪器连接到整个系统中。但是USB在仪器控制方面上亦有一些缺点。比如说USB的排线没有工业标准的规格,在恶劣的环境下,可能造成数据的丢失,此外,USB对排线的距离也有一定的限制。
1.3虚拟仪器的优点
一台性能优良的虚拟仪器不仅可以实现传统仪器的大部分功能,而且在许多方面有传统仪器无法比拟的优点,如使用灵活方便、功能丰富、价格低廉、可一机多用、可重复开发等。与传统仪器相比虚拟仪器主要有以下几个优点:
(1)融合了计算机强大的硬件资源,突破了传统仪器在数据处理、显示、存储等方面的限制,大大增强了传统仪器的功能。而且高性能处理器、高分辨率显示器、大容量硬盘等已成为虚拟仪器的标准配置。
(2)利用计算机丰富的软件资源,一方面,实现了部分仪器硬件的软件话,节省了物质资源,增加了系统的灵活性;一方面,通过软件技术和相应的数值算法、实时、直接的对测量数据进行各种分析和处理;另一方面,通过图形用户界面(Graph User Interface)技术,真正做到界面友好,人机交互。
(3)基于计算机总线和模块化仪器总线,使仪器的硬件实现了模块化、系列化,大大缩小了系统的尺寸,可方便的构建模块化仪器(Instrument on a Card)。
(4)基于计算机网络技术和接口技术,使VI系统具有方便、灵活的互联能力,广泛支持诸如CAN,Field Bus,PROFIBUS等各种工业总线标准。因此,利用VI技术可方便的构建自动测试系统(ATS,Automatic Test System),实现测量、控制过程的网络化。
(5)基于计算机的开放式标准体系结构。虚拟仪器的硬、软件都具有开放性、模块化、可重复使用及互换性等特点。因此,用户可以根据自己的需要选择不同厂家的产品,使仪器系统的开发更为灵活、效率更高,缩短了系统组建和维修的时间。
下表是虚拟仪器与传统仪器的比较。
表1-1 虚拟仪器与传统仪器的比较
第2章 虚拟示波器的原理
2.1 示波器的基本原理
示波器是利用电子射线的偏转,来显示电信号瞬时值图象(常成为时间波形)的一种仪器。它能快速的把肉眼不能直接看见的电信号的时变规律,以可见的形式,形象的显示出来。目前,示波器在信号测试、信号比较、逻辑分析等领域得到了广泛的应用。
虚拟示波器主要由软件来完成信号的采集、处理和输出。系统软件包括前面板生成框图程序和图标连接端口。仪器主要功能包括:通道选择、时基幅值控制、滤波器、信号发生器、数据存储与回放等。在完成各个功能时其实示波器就是利用电子射线的偏转,来显示电信号瞬时值图像(时间波形)的一种仪器。它能快速的把肉眼不能直接看见的电信号的时变规律,以可见的形式,形象的显示出来。
2.2 实现过程
2.2.1前面板设计
在前面板中右键选择新式—修饰,选择自己喜欢的方框,圆形框图进行修饰。
前面板的设计如下图:
图2.1前面板
2.2.2程序框图
图2.2为真时程序框图
程序框图为假时:
图2.3为假时程序框图
2.2.3设计while循环
启动LabVIEW8.5,进入程序运行界面,进入程序框图,击右键进行选择。打开程序框图,在框图中的面板上单击鼠标右键弹出功能选板,在编程结构中选中While循环,拖动鼠标至一定的大小完成循环。通过一个While循环无限循环运行,然后通过一个条件选择结构判断程序是否运行,条件结构里面通过条件结构选择输出波形通道,由数据采集系统采集信息送至波形显示控件及数据统计分析进行动态显示,由读取测量文件和写入测量文件及一个波形显示控件对数据进行显示、存储、回放,回放波形由另一个波形输出控件进行显示。
图2.4 while循环
while循环里完成数据采集系统的部分:
图2.5单通道方波
图2.6单通道正弦波
图2.7多通道方波
图2.8多通道正弦波
心得体会
通过这次设计,课堂的中学习到的知识得到运用,在设计的过程中我发现,课堂学的东西远远不能满足实际应用,必须自己再自学一些知识才能比较好的完成相关要求。由于本人的学习能力所限,与真实的示波器相比有些功能无法实现,设计出来的简单虚拟示波器只能实现示波器的一部分功能。但是在设计的过程中所学到的实际应用知识是无价的,我想在以后的学习生活中应该多学习些实际应用的东西,增加动手能力,以更好的适应社会发展。
第二篇:LabView虚拟示波器实验报告
一、实验目的
1、掌握虚拟仪器的设计思想和方法;
2、掌握labVIEW编程、调试等技能;
3、学习“波形图”控件各种复杂功能的使用;
4、学习数据采集卡的使用。
二、 实验设备
1、计算机;
2、labVIEW8.5软件;
3、PLC-6221数据采集卡及集线盒;
三、 实验步骤
1、硬件设计
计算机、PLC-6221、集线盒、导线等
2、软件设计
数据连续采集(AI)、数据处理、显示
主要功能:
1、运行、停止;
2、可显示两路以上波形,X,Y轴调整;
3、显示模式:单通道、多通道模式、运行模式;
4、测量:频率、周期、幅值:
5、高级功能:FFT、储存、网络等。
基于LABVIEW的虚拟示波器设计
1 LabVIEW软件及其基本设计原理简介
1.1 LabVIEW简介
LabVIEW(Laboratory Virtual instrument Engineering)与 C 和BASIC 一样,LabVIEW也是通用的编程系统,有一个完成任何编程任务的庞大函数库。LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据。LabVIEW标志显示及数据存储,等等。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子VI)的结果、单步执行等等,便于程序的调试。
LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种用图标代替文本行创建应用程序的图形化编程语言。传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而 LabVIEW 则采用数据流编程方式,程序框图中节点之间的数据流向决定了VI及函数的执行顺序。VI指虚拟仪器,是 LabVIEW 的程序模块。
LabVIEW 提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。用户界面在 LabVIEW 中被称为前面板。使用图标和连线,可以通过编程对前面板上的对象进行控制。这就是图形化源代码,又称G代码。LabVIEW 的图形化源代码在某种程度上类似于流程图,因此又被称作程序框图代码。
1.2 LabVIEW软件设计基本原理
我们把用LabVIEW实现的一个完整的LabVIEW应用程序成为一个虚拟仪器,称为VI。所有的VI,它包括前面板、程序框图图以及图标/连结器三部分。
1)前面板。前面板是图形用户界面,也就是VI的虚拟仪器面板,前面板直接面向用户,是用户使用虚拟仪器的基本操作面板。这一界面上有用户输入和显示输出两类对象,具体表现有开关、旋钮、图形以及其他控制和显示对象。一个典型实现正弦波显示和幅值调节的前面板。
2) 程序框图提供VI的图形化源程序。它的功能是对前面板上的控件进行定义、操作和连线以实现虚拟仪器的功能,是LabVIEW程序设计的核心。在程序框图中存在着对VI编程,以控制和操纵定义在前面板上的输入和输出。它包括前面板上的控件和控件的连线端子,还有一些前面板上没有,但编程必须有的东西,例如函数、结构和连线等。如果将VI与标准仪器相比较,那么前面板上的东西就是仪器面板上的东西,而流程图上的东西相当于仪器箱内的东西。在许多情况下,使用VI可以仿真标准仪器,不仅在屏幕上出现一个惟妙惟肖的标准仪器面板,而且其功能也与标准仪器相差无几。
上述正弦波的程序框图如图1。
图1 正弦波显示及幅值调节VI程序框图
3)图标/连接器。VI具有层次化和结构化的特征,一个VI可以作为子程序,这里称为子VI,被其他VI调用。图标与连接器在这里相当于图形化的参数。LabVIEW的强大功能归因于它的层次化结构,用户可以把创建的VI程序当作子程序调用,以创建更复杂的程序,而这种调用的层次是没有限制的。
在VI设计过程中,可以利用工具选板、前面板中的控件选板、程序框图中的函数选板进行设计。这些选板的详细功能及用法通过不断的学习设计VI的过程逐渐地掌握。
2 关于虚拟示波器的设计思路及方案的实现
2.1 设计思路
本设计的想法是尽量与现实中的面板相一致,实现示波器最基本的显示和调节功能。所以本设计我设计了包含CH1和CH2的双通道示波器,即双踪示波器。设计时考虑的是分几个部分:
1)CH1和CH2通道设计及选择。设置两个开关控制CH1和CH2选通状况,开即显示波形,关不显示,同时选择了开就在波形图上同时显示两个波形。
2)波形产生。由于没有外界信号输入设备,所以不能用外部数据采集的方法输入信号波形,那么自己设计一个建议信号发生器,使两个通道都能实现基本模拟信号正弦波、三角波、方波、锯齿波的输入。
3)波形显示。采用波形图控件。
4)波形控制部分。包括CH1信号幅度调节和幅度偏移、CH2信号幅度调节和幅度偏移、时间扫描速率、同时开的时候两个信号叠加开关。
5)停止示波器。通过while循环的停止按钮设置示波器停止工作。
2.2 方案的实现
2.2.1 前面板的设计
根据设计思路,设计成的前面板如图2所示。
图2 虚拟双踪示波器前面板
2.2.2 设计的基本原理和设计步骤
1)通道CH1和CH2选择即波形产生。在程序框图上创建两个条件结构。把CH1和CH2的开关控制(布尔开关)分别接到这两个条件结构的条件输入端,然后在每个“真”条件下,并且通过再添加条件结构,在这个子条件结构里面,并在分置里面选择产生相应的波形,这样就产生了大条件结构的“真”操作,也即在CH1或CH2通道开的情况下,通过文本下拉列表控制波形产生。然后将外部条件结构的输出隧道在“假”的条件下,设为“未连接时使用默认”并且处理“假”分支,这样,当通道选择开关“关”时就不输出波形。如图3所示。
图3
2)波形显示控制部分。这部分是控制波形在波形图上更好的显示出来。控制CH1、CH2通道幅值,调节波形图上每单位表示多少电压值;控制时间扫描速率,调节时间轴上每单位表示多少时间。这些都是为了让波形以最直观、最清楚的方式显示在波形图上。如图4、5所示。
图4 波形显示控制部分前面板
图5 波形显示控制部分程序框图
3)输入信号测量值的显示部分。通过“获取单频信息”子VI获取波形频率;通过“幅值和电平测量”子VI获取波形幅值电压。设计的前面板如图6所示,程序框图如图7所示。
图6 测量参数显示
图7 测量参数模块程序框图
4) 停止测量部分。通过while循环的STOP按钮停止测量。程序框图如图8所示。
图8 while循环以及STOP按钮
5)整个程序框图的设计图图9所示。至此为止设计全部完成。
图9 虚拟双踪示波器的整个程序框图
3 设计心得
此次labVIEW虚拟示波器的设计,首先我看了几本介绍虚拟仪器和LabVIEW方面的书籍,随即对这个软件强大的仿真功能产生了极大的兴趣,并且自己动手做了一些简单的仿真程序,比如利用调用for循环和移位寄存器计算数学递归公式、产生数字波形、建立数学计算的子VI等。做的程序渐渐从简单到难,学的东西也越来越多。直到这个设计完毕,除了这个设计里面的知识外,我还了解了公式节点的用法;滤波器的用法;图形编辑器的用法和子VI的建立过程及调用;掌握了while循环、for循环、条件结构循环的用法;初步了解了顺序结构的用法;了解了数据采集的基本知识;熟悉了写入测量文件及保存数据的基本操作、程序调试过程中的单步执行、断点设置以及探针工具的使用方法、延时程序的调用方法等等。刚开始我还觉得做能力拓展耽误了自己学习的时间,后来感觉到学了LabVIEW之后也很充实。也为自己能做出这个“不简单”的虚拟示波器而感到骄傲。在此过程中,班上的同学给了我不少帮助,比如他们把借的的资料给我看,还有一起动脑动手实现了某个困难的操作,这让我深深体会到团队协作的重要性和同学之间友谊的可贵。
4 参考
Search Examples》Demonstrations》Instrument I/O》 Two-Channel Oscilloscope
5 程序调试过程中发现的问题和解决办法
1)完成了一部分并查看波形的时候,发现波形向左移动的非常快,这样很不利于观察波形信号。通过查资料发现可以通过在前面板上添加时间延迟Express VI,设置程序循环延时时间可以解决这一问题。但是要在程序框图上添加并设置,这很不方便,后来发现模板上的VI波形图都可以均匀的慢速的向左移,经过对比发现,只要修改配置仿真信号的属性即可,具体操作时将定时区域的“以可达到的最快速度运行”取消,并勾选中“仿真采集时钟”。
2)在选择CH1条件结构的“假”分支时,因为不用输出波形,所以我没有连接输出隧道,这是幸运星出现错误,这个错误是因为条件结构中多个分支的输出隧道公用输出。仅执行结构的某一帧时,各个帧必须给所有的输出赋值,不赋值时要使用默认。解决办法是右键单击隧道并选择“未连线时使用默认”,即可以满足该要求。
3)幅值测量用模拟波形-波形测量里面的“幅值和电平”函数时发现,当北侧通道处于关的状态时发生了错误,显示的是“输入波形的大小为0”,这是因为这个函数测量模块当波形输入为0时就会发生错误。解决办法是将它替换为波形测量里面的“幅值和电平测量”子VI,这个子VI在输入波形为0时满足了输出幅值电平是0。
虚拟仪器课程设计
报告
题目:双通道虚拟示波器
姓名:张彦吉
学号:1067106210
班级:10自动化2班
指导教师:肖俊生