1、LabVIEW虚拟信号发生器和虚拟示波器-虚拟信号发生器与虚拟示波器摘要虚拟仪器技术是现在计算机系统和仪器系统相结合的产物,是当今计算机辅助测试领域的一项重要技术。它推动着传统仪器朝着数字化,智能化,模块化,网络化的方向发展。本次设计中,介绍了函数发生器和示波器的原理以及作用,着重介绍了基于LabVIEW8.6的虚拟函数发生器和虚拟示波器的设计与实现过程。虚拟函数发生器能够实现基本的功能,能够产生基本的信号波形,如正弦波、方波、锯齿波等。虚拟示波器能够实现双通示波器的基本功能,如:能够对不同频率的输入信号进行清晰的输出波形显示(单通道输出波形显示或两通道输出波形同时显示);能够选择触发器极性,
2、并能设置触发电位;能进行水平和垂直分度的调节,并能够随时控制波形显示的停止与开启。本次设计,基本达到了设计的要求。 关键词: LabVIEW,函数发生器,双通示波器目 录1 绪论 41.1 虚拟仪器简介 41.1.1虚拟仪器 41.1.2虚拟仪器的优点 51.2LabVIEW简介 52函数发生器 62.1函数发生器的简介 62.2函数发生器的原理和功能 63虚拟函数发生器的设计 73.1设计目的 73.2设计方案 93.2.1前面板的设计 93.2.2程序框图的设计 93.3虚拟函数发生器的运行结果及小结 123.3.1运行结果 123.3.2小结 144示波器 154.1数字示波器的简介 1
3、54.2示波器的工作原理及作用 155虚拟双通示波器的设计 165.1设计目的 165.2设计方案 165.2.1触发器功能块 165.2.2通道选择功能块 165.2.3水平分度调节 175.2.4幅值分度调节 175.2.5主体控制 175.2.6波形显示窗口 175.3双通道示波器VI控件的设计过程 175.3.1前面板的创建和设计 175.3.2程序框图的设计 185.4虚拟双通示波器的运行结果和小结 285.4.1虚拟双通示波器的运行结果如图所示 285.4.2 小结 306总结 30参考文献 311 绪论1.1 虚拟仪器简介1.1.1虚拟仪器 虚拟仪器技术是现在计算机系统和仪器系统
4、相结合的产物,是当今计算机辅助测试领域的一项重要技术。它推动着传统仪器朝着数字化,智能化,模块化,网络化的方向发展。 虚拟仪器是指通过应用程序将计算机、软件的功能模块和仪器硬件结合起来,用户可以通过友好的图形界面(通常叫做虚拟前面板,简称前面板)来操作这台计算机就像在操作自己定义、自己设计的一台个人仪器一样,从而完成对被测信号的采集、分析、判断、显示、数字存储等。虚拟仪器以透明的方式,通过软件对数据的分析处理、表达以及图形化用户接口,把计算机资源(如微处理器、显示器等)和仪器硬件(如A/D、D/A、数字I/O、定时器、信号调理等)的测试能力和控制能力结合起来。虚拟一起突破了传统仪器以硬件为主体
5、的模式,实际上使用者是在操作具有测试软件的电子计算机进行测量,犹如操作一台虚设的电子仪器。 虚拟仪器技术的实质是充分利用最新的计算机技术来实现和扩展传统仪器的功能。软件是虚拟仪器的关键,当基本硬件确定以后,就可以通过不同的软件实现不同的功能。用户可以根据自己的需要,设计自己的仪器系统,满足多种多样的应用要求。利用计算机丰富的软、硬件资源,可以大大突破传统仪器的数据的分析、处理、表达、传递、存储等方面的限制,达到传统仪器无法比拟的效果。它不仅可以用于电子测量、测试、分析、计量等领域,而且还可以用于进行设备的监控以及工业过程自动化。虚拟仪器还可以广泛用于电力工程、物矿勘探、医疗、振动分析、声学分析
6、、故障诊断及教学科研等多个方面。1.1.2虚拟仪器的优点 一台性能优良的虚拟仪器不仅可以实现传统仪器的大部分功能,而且在许多方面有传统仪器无法比拟的优点,如使用灵活方便、功能丰富、价格低廉、可一机多用、可重复开发等。与传统仪器相比虚拟仪器主要有以下几个优点: (1)融合了计算机强大的硬件资源,突破了传统仪器在数据处理、显示、存储等方面的限制,大大增强了传统仪器的功能。而且高性能处理器、高分辨率显示器、大容量硬盘等已成为虚拟仪器的标准配置。 (2)利用计算机丰富的软件资源,一方面,实现了部分仪器硬件的软件话,节省了物质资源,增加了系统的灵活性;一方面,通过软件技术和相应的数值算法、实时、直接的对
7、测量数据进行各种分析和处理;另一方面,通过图形用户界面术,真正做到界面友好,人机交互。 (3)基于计算机总线和模块化仪器总线,使仪器的硬件实现了模块化、系列化,大大缩小了系统的尺寸,可方便的构建模块化仪器。 (4)基于计算机网络技术和接口技术,使VI系统具有方便、灵活的互联能力,广泛支持诸如CAN,Field Bus,PROFIBUS等各种工业总线标准。因此,利用VI技术可方便的构建自动测试系统,实现测量、控制过程的网络化。 (5)基于计算机的开放式标准体系结构。虚拟仪器的硬、软件都具有开放性、模块化、可重复使用及互换性等特点。因此,用户可以根据自己的需要选择不同厂家的产品,使仪器系统的开发更
8、为灵活、效率更高,缩短了系统组建和维修的时间。1.2 LabVIEW简介 LabVIEW是一种图形化的编程语言和开发环境。自NI公司于1986年正式推出LabVIEW1.0以来,经过200多年的不断改进和完善,现在已经发展的非常快了。 目前LabVIEW在测控领域的影响越来越大,逐步奠定老人NI在虚拟仪器方面的领导地位。目前,该软件已经广泛应用于航天、航空、通信、电力、汽车、电子半导体、生物医学等众多领域。 LabVIEW吧复杂、繁琐、费时的语言编程简化成“用图标提示的方法选择功能块、用线条将各种功能块连接起来”的编程方式。利用LabVIEW编程就好像在绘制流程图。正是因为LabVIEW面向的
9、是广大普通工程师而非编程专家,因而其已经成为目前应用最快、发展最快、功能最强、最流行的虚拟开发平台。 概括起来,LabVIEW编程语言具有以下特点: (1)实现了仪器控制与数据采集的完全图形化编程,设计者无需编写任何文本形式的代码。 (2)提供了大量的面向测控领域的库函数,如面向数据采集的DAQ库函数、内置GPIB、VXI、串口等数据采集驱动程序;面向分析的高级分析库;面向显示的大量仪器面板。 (3)提供了大量与外部代码或应用软件进行连接的机制。 (4)具有强大的网络连接功能,支持常用的网络协议,便于用户开发各种网络测控、远程虚拟仪器系统。 (5)LabVIEW应用程序具有可移植性,适用于多种
10、操作系统 (6)可生成可执行文件,脱离LabVIEW开发环境运行。2函数发生器 信号发生器是指产生所需参数的电测试信号的仪器。按信号波形可分为正弦信号、函数(波形)信号、脉冲信号和随机信号发生器等四大类。信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。2.1函数发生器的简介 能够产生多种波形的信号发生器,如产生三角波、锯齿波、矩形波(含方波)、正弦波的信号发生器称为函数信号发生器2.2函数发生器的原理和功能 函数信号发生器可产生正弦波、三角波、方波等基本波形,也可产生各种连续的扫频信号、函数信号、脉冲信号等,另外它还具有测频功能,是电子工程、电子实验室、电子产品生产线以及科
11、研所需要的理想设备。如图1所示,仪器的前面板划分为几大功能区,下面介绍其主要功能。输出频率调节面板左上角为频率显示窗口,显示输出信号的频率值,频率的单位分两档,分别为“kHz”和“Hz”。频率显示窗口下为“频率选择”功能区,设有频段指示和频段选择按键以及频率细调旋钮。例如频段范围选择“100”档,表示频率的变化范围在100赫兹左右(并非窗口数值乘以100倍),此时只能调出100赫兹左右的频率值。注意需要不同的频率时,先要按旋钮下的方形频段选择按键,选择正确的频段,再调频率细调旋钮,则可调出需要的频率。 图 1 信号发生器面板图输出电压调节输出电压调节区包括电压显示窗口和它右下方的“函数信号输出
12、”功能区,该区包括波形选择、输出衰减以及电压幅度调节旋钮。电压窗口显示的电压值为峰峰值,电压单位分两档,伏和豪伏。按下面的波形选择键可在三种波形中任选一种输出。按输出衰减键可设定输出电压的衰减倍率。旋转电压幅度调节旋钮,可调节窗口的输出电压值。扫频调节“扫频调节”区位于面板右上角,“扫频宽度”旋钮有两个功能,一是调节输出信号的频率调制宽度;二是在测量外部低频信号的频率时,如果信号中有高频分量影响频率测量时,可将此旋钮逆时针旋到底,打开滤波器(指示灯亮),此时输入信号中100kHz以上的频率分量被抑制。“扫频速率”旋钮的功能为调节扫频信号的扫频速率,如果扫频电压来自外部,并且输入电压太大影响扫频
13、速率时,可将该旋钮逆时针旋到底(指示灯亮),此时输入信号被衰减20dB。工作模式选择 工作模式选择区位于电压显示窗口下方,包括一个选择按键和五种工作模式选择指示。“信号输出”:输出单一频率的函数信号;“对数扫频”:用对数扫频方式输出函数信号;“线性扫频”:用线性扫频方式输出函数信号;“外部扫频”:用外部扫频方式输出函数信号;“外部计数”:测量外部信号频率,此时测频系统作为频率计使用。3虚拟函数发生器的设计3.1设计目的 利用虚拟仪器设计一个能完成 SG1651A型信号发生器功能 基本相同的虚拟函数发生器。SG1651A型信号发生器是一台具有高度稳定性、多功能凳特点的函数信号发生器。能直接产生正
14、弦波、三角波、方波、斜波、脉冲波,波形对称可调并具有反向输出。频率可做内部频率显示,也可外测1Hz10.0MHz的信号频率,电压用LED显示。面板说明如图2: 图2 SG1651A函数发生器面板图序号面板标志名称作 用1电源电源开关按下开关,电源接通,电源指示灯亮2波形波形选择1、输出波形选择2、与13、19配合使用可得到正负相锯齿波和脉冲波3频率频率选择开关频率选择开关与“9”配合选择工作频率外测频率时选择闸门时间4Hz频率单位指示频率单位,灯亮有效5KHz 频率单位指示频率单位,灯亮有效6闸门闸门显示此灯闪烁,说明频率计正在工作7溢出频率溢出显示当频率超过5个LED所显示范围时灯亮8频率L
15、ED所有内部产生频率或外测时的频率均由此5个LED显示 9频率调节频率调节与“3”配合选择工作频率10直流/拉出直流偏置调节输出拉出此旋钮可设定任何波形的直流工作点,顺时针方向为正,逆时针方向为负11压控输入压控信号输入外接电压控制频率输入端12TTL输出TTL输出输出波形为TTL脉冲,可做同步信号13幅度调节反向/拉出斜波倒置开关幅度调节旋钮1、与“19”配合使用,拉出时波形反向2、调节输出幅度大小1450输出信号输出主信号波形由此输出,阻抗为5015衰减输出衰减按下按键可产生20dB/40dB衰减16VmVp-p电压LED 17外测20dB外接输入衰减20dB1、频率计内测和外测频率(按下
16、)信号选择2、外测频率信号衰减选择,按下是信号衰减20dB18外测输入计数器外信号输入端外测频率时,信号由此输出1950 Hz输出50 Hz固定信号输出50 Hz固定频率正弦波由此输出20AC220V电源插座50 Hz 220V交流电源由此输出21FUSE:0.5A电源保险丝盒安装电源保险丝22标准输出10MHz标频输出10MHz标频信号由此输出 表1 序号对应功能表 3.2设计方案设计中主要利用条件结构对其编程,主要有信号产生的模块,能够产生正弦波、方波、三角波、锯齿波、任意波等。可以调节扫描频率、信号频率、扫描宽度、波形幅度、方波占空比等。能够输出波形,相位等。3.2.1前面板的设计前面板
17、主要有波形显示以及输入波形的频率、幅度等参数的调节,以及输出的相位等输出显示。前面板如图3所示 图3 虚拟函数发生器的前面板3.2.2程序框图的设计程序框图的设计采用条件结构:其整体的程序框图如图4所示 图4 虚拟函数发生器的程序框图(1)七段显示子vi的设计 七段显示子vi是利用七个布尔方形指示灯做成的,当输入09之间的任意一个数字时将会显示对应的数字,其前面板如图5所示。器程序框图如图6所示。 图 5七段码显示的前面板 图6 七段码显示的程序框图(2)函数发生程序框图 采用基本信号生成函数模块,利用条件结构产生正弦波、方波、锯齿波、三角波以及任意波,器程序框图如图所示 图7 函数发生程序框
18、图1 图8 函数发生程序框图2 图9函数发生程序框图3 图10 函数发生程序框图4 图11 函数发生程序框图5 图12函数发生程序框图63.3虚拟函数发生器的运行结果及小结3.3.1运行结果运行结果如图所示图 13没有波形产生的界面图14 产生正弦波图15 产生方波图16 产生三角波图17 产生锯齿波3.3.2小结 该信号发生器是基于LabVIEW的虚拟信号发生器,通过子程序的设计以及条件结构的应用,我更好的掌握了LabVIEW模块的作用和使用方法,并且更好的掌握论文LabVIEW的编程方法和技巧。该函数发生器能够基本达到试验要求,能够产生正弦波、方波、锯齿波、三角波和任意波,基本能满足要求。
19、但是由于能力有限,没有做到TTL电平信号的产生以及衰减作用。但我会在接下来的日子更加完善该函数发生器,使其功能更加完善,更加接近真实信号发生器。4示波器 示波器能够显示各种电信号的波形,一切可以转化为电压的电学量和非电学量及它们随时间作周期性变化的过程都可以用示波器来观测,示波器是一种用途十分广泛的测量和显示仪器。目前大量使用的示波器有两种:模拟示波器和数字示波器。模拟示波器发展较早,技术已经非常成熟。随着数字技术的飞速发展,数字示波器拥有了许多模拟示波器不具备的优点:能长时间保存信号;测量精度高;具有很强的信号处理能力;具有输入输出功能,可以与计算机或其它外设相连实现更复杂的数据运算或分析;
20、具有先进的触发功能等等。而且随着相关技术的进一步发展,其使用范围将更加广泛。这里我们主要介绍数字示波器。4.1数字示波器的简介 数字存储示波器是新一代的示波器,它把输入的模拟信号转换成数字信号,采用液晶显示屏,像计算机一样,它内部编有很多程序和命令,所以它不仅能显示信号,而且能对信号进行各种各样的处理,如存储比较、数学运算等,数字示波器比模拟示波器更先进,功能更强大,使用更方便。数字示波器由信号放大电路、高速模数转换器、中央处理器、存储器和液晶显示器(包括驱动电路)组成。4.2示波器的工作原理及作用 图18为数字存储示波器的面板图,它包括几大功能区和若干常用功能键,每个功能区都在一个方框内,每
21、个功能区又包括几个按键和旋钮,每个按键都有自己的菜单,菜单里有各种选择。下面就其中的主要功能分别给以介绍。垂直系统(VERTICAL)垂直系统的功能为调节信号(波形)在竖直方向的幅度和位置。ch1和ch2为两个波道的选择按键,上面两个旋钮分别为两个波道的竖直幅度调节,下面两个旋钮分别为两个波道的波形竖直位移调节,中间的MATH 键为数学运算,在它的菜单里选择操作,可对两个波道的波形进行加、减、乘、除运算。REF键为存储比较,可将当前波形存储,与后面的波形进行比较。 图18 数字存储示波器的面板图水平系统(HORIZONTAL)水平系统的功能为调节波形在水平方向的幅度和位置。最左边的旋钮为扫描时
22、间调节,中间的按键为水平设置,在它的菜单里可以进行视窗大小的设定和波形局部的放大。最右边的旋钮为波形的水平位移。触发系统 (TRIGGER)触发系统的功能为确定示波器开始采集数据和显示波形的时间。正确设置触发系统,示波器就能将不稳定的显示结果或空白显示屏转换为有意义的波形。在触发控制区有一个旋钮、三个按键。“LEVEL”旋钮:触发电平,设定触发点对应的信号电压,以便进行采样。 “SET TO 50”:设置触发电平为待测信号幅值的垂直中点。“FORCE”按钮:强制产生一触发信号,主要应用于触发方式中的正常和单次模式。 “TRIG MENU”按钮:显示“触发菜单”,可通过该菜单选择触发信号的来源(
23、哪一个波道),以及触发信号的类型(上升沿或下降沿)。5虚拟双通示波器的设计5.1设计目的 利用LabVIEW模拟实现简单数字双通道示波器的各种功能,如:能够对不同频率的输入信号进行清晰的输出波形显示(单通道输出波形显示或两通道输出波形同时显示);能够选择触发器极性并能设置触发电位;能进行水平和垂直分度的调节,并能够随时控制波形显示的停止与开启。5.2设计方案 在该课程设计中,我们采用的是模块化程序设计,总程序包括了触发控制功能块、水平和垂直分度调节的定位控制功能块、通道选择功能块、程序控制功能块和波形显示功能块等各个功能模块,具体程序编写时使用了层叠式分支结构,分支选择结构、while循环结构
24、等常用的编程逻辑结构以及常见的数据结构,如簇、数组等和各种数据处理函数;同时还用到了波形生成控件VI(如正弦波和方波)布尔逻辑控件VI、旋钮控件VI、垂直滑动杆控件VI等多个LabVIEW控件,并为了具体功能的实现自己创建了多个波形处理子VI。5.2.1触发器功能块 触发器主要设定滤波器的触发源、触发极性和触发电位。该触发器功能模块包括触发源性质,通道B(CH B)触发、通道A(CH A)触发或外触发(EXT)。如果触发原是外触发,滤波器的触发源通过该示波器的内置其他功能来实现,此时,触发源的触发极性选择和触发电位调节旋钮就不可用。触发极性逻辑开关选择设定触发器为正触发(POS)或负触发(NE
25、G),表明触发器的触发沿由何种性质的触发信号产生。通过调节触发电位旋钮,可以调节触发器的触发电位高低()。通过调节触发电位旋钮,可以调节触发器的触发电位高低。5.2.2通道选择功能块 通道选择功能块通过调节选择,可以表明示波器显示哪一路通道信号,可以选择的通道信号为通16 A、通道B以及通道A和通道B两路信号同时显示。常见的一般示波器都可以进行单通道信号显示或两路通道信号同时显示。通道选择以及示波器中的信号显示同样是一般示波器的主要功能之一。5.2.3水平分度调节 水平分度大小调节功能块可以调节示波器显示窗口的波形在水平方向,即豸方向的水平分度的大小,进而可以改变波形图窗口能够显示的完整波形的
26、数目。本章所创建的简单双通道示波器可以实现3个水平分度大小的调节。般的示波器能够在一定范围内,对水平方向的分度大小进行连续调节。这部分功能是一般常见示波器的主要功能之一。本章创建的这部分功能只是对常见示波器水平调节功能的简单演示。感兴趣的读者可以根据LabVIEW提供的函数功能,对这部分调节功能进行完善,使之能够连续调节。5.2.4幅值分度调节 同水平分度大小调节功能一样,幅值分度调节功能可以对示波器波形显示窗口的分度大小进行调节,根据不同的输入波形大小,调节示波器的分度大小,从而能够显示完整的输入信号的波形。常见的一般示波器能够对幅值的分度大小进行连续调节,从而能够对输入波形进行比较完整的显
27、示。本章在创建简单双通道示波器时对这部分功能进行了简单的实现,可以对3个大小不同的分度进行调节。同样,感兴趣的读者可以对这部分功能进行进一步的扩充和完善。5.2.5主体控制 这功能是创建的简单双通道示波器程序的主体控制部分,能够对本章创建的简单双通道示波器的信息内容和主要功能进行说明和提示。同时也可以对本章所创建的简单双通道示波器终止运行过程进行控制。5.2.6波形显示窗口 波形显示窗口是简单双通道示波器进行波形显示的主界面。一般的示波器都通过波形显示窗口对输入示波器的两路信号进行显示。在双通道示波器的调节过程中,对所有调节功能进行调节测试,观察相应的波形变化情况时,也可以通过这部分波形显示部
28、分进行显示。创建简单双通道示波器时采用LabVIEW 86提供的波形图控件,对输入波形图控件的信号可以进行比较简单的显示。5.3双通道示波器VI控件的设计过程5.3.1前面板的创建和设计 前面板主要显示虚拟示波器的界面,界面要做的简介美观。这里前界面的主要创建设计为:创建波形图显示控件,用于示波器的波形显示;创建示波器的LOGO图标部分;创建触发器面板,完成基本触发选项的布局,包括触发源、触发极性和出发电位;创建通道选择面板,可以对示波器可以显示的通道波形进行选择;穿件定位面板,可以对示波器的水平分度和幅值分度进行调节;创建程序控制面板,对示波器空间的程序功能进行控制和调节。前面板界面如图19
29、所示: 图 19 双通示波器的前面板界面5.3.2程序框图的设计 虚拟双通示波器的程序框图如图20所示图20 虚拟示波器的程序框图(1)触发源功能块选择 触发源功能块选择的作用主要是利用触发源开关的选择和通道选择开关完成对示波器显示波形的触发源的选择问题,程序框图如图所示 触发源“source”开关和通道选择开关“通道选择”通过“与”逻辑操作后作为分支选择结构的选择项,若选择结果为真,此时触发通道B,将逻辑选择数值“0”作为触发源“source”,触发极性“slope”和触发电位“level”属性节点的设置数值,代开后两者的功能。如果选择情况为假,即采用外触发“EXT”,此时将逻辑选择数值“2
30、”作为逻辑数值输入触发器面板3个空间的属性节点后,是的触发极性和触发电位取消作用。 图 21 触发源功能块设置1 图 22 触发源功能块设置2(2)触发电平vi的创建 触发电平vi的主要功能是根据输入的信号,与触发电平的数值进行比较厚输出产生触发的数组的序号index。触发电平vi的前面板如图23所示。在前面板上有输入数组、输入触发电平level以及触发极性。该vi程序框图如图24所示。 图23 触发电平vi的前面板 图24 触发电平vi的程序框图(3)触发器子vi的创建 触发器子vi能够根据触发源的不同,对输入信号进行选择后输出。创建后的触发器子vi的前面板如图25所示。具体的程序框图如图2
31、6、27所示。 图25 触发器子vi前面板图26 触发器子vi程序框图1 图27触发器子vi程序框图2(4)通道输入信号的生成和选择 创建通道输入信号生成和选择子VI,完成不同通道输入信号的生成以及通道选择功能。创建过程和创建一般的LabVIEW VI控件的方法一样。创建后的前面板和程序框图如图28、29、30、31所示。图 28信号生成和通道选择子vi前面板图29 信号生成和通道选择子vi程序框图1图30信号生成和通道选择子vi程序框图2图31信号生成和通道选择子vi程序框图3(5)通道选择功能的设计 通道选择功能可以实现在波形图上显示不同通道的波形,可实现两路信号同时显示及连个通道单独显示。程序框图如图32、33、34 所示。两路
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1