1、 测控仪器设计课程设计说明书姓 名: * 学 号: * 班 级: 测控 072 专 业: 测控技术与仪器 学 院: 机械工程学院 时 间: 2010.7.22010.7.15 地 点: 指导教师: 无 目 录前言 1课程设计任务书 2虚拟仪器设计方案 4虚拟仪器设计步骤 6一、DAQ 数据采集模块 6二、模拟采集模块 7三、波形显示模块 8四、参数测量模块 10五、频谱分析模块 11六、数据存储和回放模块 13七、波形打印模块 14八、主要控制结构 15总结 17附录:前面板和程序框图 18参考文献 20基于 LabVIEW 的虚拟数字示波器设计- 1 -前 言随着电子科学技术的发展,微电子集
2、成电路技术、计算机技术、通信技术、测控技术互相渗透,互相融合而形成了新型的电子信息技术。经过二十多年的发展,虚拟仪器(Virtual Instrument,简称 VI)的概念已逐步为工业界和学术界所认识,成为21 实际测试技术与仪器技术发展的一个重要方向,并且在研究、制造和开发等总舵领域得到广泛应用。虚拟仪器技术是测试技术和计算机技术相结合的产物,是以计算机为基础,配以相应测试功能的硬件作为信号输入输出的接口,利用虚拟仪器软件开发平台(如LabVIEW、LabWindows/CVI)在计算机的屏幕上虚拟出仪器的面板并实现相应的功能,使得使用者在操作计算机时就像在操作一台自己设计得测试仪器。虚拟
3、仪器的出现,打破了传统仪器由厂家定义,用户无法改变的工作模式,使得用户可以根据自己的需求,设计自己的仪器系统,给用户提供了一个充分发挥自己才能和想象力的空间,实质上代表了一种创新的仪器设计思想。与传统仪器相比,虚拟仪器具有性价比高、开放性好、智能化程度高、界面友好、使用方便、模块化和网络化的优点,在很多领域大有取代传统仪器的趋势。虚拟仪器包括硬件和软件两个基本要素,硬件功能是获取被测的物理信号,提供信号传输的通道;软件则是实现数据采集、分析、处理、显示等功能,并将其集成为仪器操作与运行的一体化环境。总体而言,虚拟仪器硬件以 VXI、PXI 等先进的计算机接口总线发展为标志,而软件技术则是以 V
4、ISA、SCPI、IVA 等标准和LabVIEW、LabWindows/CVI 等先进开发平台为核心,构成一个完整的虚拟仪器技术体系。示波器是以短暂扫迹的形式显示一个量的瞬时值的仪器,也是一种测量、观察、记录的仪器,在科研和实验室中应用十分广泛。传统的模拟示波器把需要观察的两个电信号加至示波管的 X、Y 通道以控制电子束的偏移,从而获得荧光屏上关于两个电信号关系的显示波形。这种模拟示波器体积大、重量轻、成本高、价格贵,并不适合于对非周期的、单次信号的测量。基于多功能 DAQ 卡和 LabVIEW 平台开发的虚拟数字示波器,具有结构简单、开发成本低等优点,在众多领域已得到广泛应用。基于 LabV
5、IEW 的虚拟数字示波器设计- 2 -测控仪器设计课程设计任务书设计题目:基于 Labview 的数字示波器设计设计要求:一、主要功能模块数字示波器主要由软件控制完成信号的采集、处理和显示。系统软件总体上包括数据采集、波形显示、参数测量、频谱分析及波形存储和回放等五大模块,功能结构框图如下:1数据采集模块主要完成数据采集的控制,包括触发控制、通道选择控制、时基控制等。其中:1)触发控制包括触发模式、触发斜坡、触发电平控制;2)通道选择主要控制单通道或双通道测量;3)时基控制主要控制采集卡扫描率、每一通道扫描次数(取样数)。2波形显示模块软件需提供五种波形显示模式:1)A、B、A&B 模式:通过
6、显示通道选择按键 A 和B,可以任意显示某一通道或两通道输入信号的波形。2)XY 模式:当两通道都处于选通状态时,使用此模式来显示李沙育(Lissajous)图形、测量相位差或频率。3)AB,AB 模式:当两通道处于选通状态时,使用此模式显示两通道信号代数相加、相减后的波形。基于 LabVIEW 的虚拟数字示波器设计- 3 -4)A&A 积分5)A&A 微分3参数测量模块主要模拟HP54603B 的参数测量功能,完成包括Vrms 等19 个电压参数和频率、周期等7 个时间参数的测量,并显示其测量结果。4频谱分析模块采用快速FFT 算法,完成频域信号分析。可实现的频谱分析控制包括:1)Windo
7、w 选择,提供9 种频谱分析窗口;2)Log/Linear 选择,提供 3 种坐标显示模式;3)DisplayUnit 选择,提供8 种单位。5数据存储和回放模块按键“写盘”控制是否进行数据存储;按键“读盘”控制是否从数据文件中读取数据。主面板提供了两个文件名输入框,前个为信号波形数据文件名输入框,后一个为采样周期文件名输入框,这两个文件由写盘功能和读盘功能共用。从软盘或硬盘上读取的数据同实时采集的数据一样,能够进行自动参数测量以及显示波形,并保留在显示窗口(显示模式可以设置为三种模式中的任意一种),还可以根据需要设置进行频谱分析。二、主要控制结构1测量控制结构通过逻辑按键“测量”控制是否进行
8、测量;通过逻辑按键“通道”控制通道选择。2自动调整扫描率控制结构由逻辑按键组“自动”、“手动”来控制是自动调整扫描率,还是手动调整扫描率。基于 LabVIEW 的虚拟数字示波器设计- 4 -虚拟仪器设计方案本虚拟数字存储示波器是在对传统示波器进行分析后,基于多功能 DAQ 采集卡和LabVIEW 开发平台来设计的具有数字存储示波器、数字万用表、数字频率计三者功能与一体的一个功能强大的电子测试仪器,主要由数据采集部分、数据处理部分、波形显示部分、波形存储和回放以及频谱分析等部分组成,可以完成对信号的输入及获取、信号电压参数及时间频率参数的自动测量、信号的波形显示及存储回放和信号的频谱分析等功能。
9、该示波器主要由数据采集 DAQ(Data Acquisition) 、接口总线、硬件驱动程序和虚拟数字示波器软件构成。图 2.1 所示为虚拟数字示波器的整体组成结构图。信号检测电路时信号调理辅助电路,接收传感器传送过来的物理信号,并从混合信号中提取出待测的微弱信号,输出的多路信号时已经放大滤波和电平变换后的标准信号,送入数据采集卡板(由硬件程序驱动工作) ,通过系统总线送进计算机进行处理。在使用DAQ 卡之前必须对 DAQ 卡的硬件进行配置,这些控制程序用到了相应的底层 DAQ 驱动程序。图 2.1 虚拟数字示波器结构图该虚拟仪器的软件是以 LabVIEW 开发环境为平台,采用的是自顶而下的设
10、计方法,首先,有要实现的目标功能来制定一个整体框架。由一个采集开关启动整个仪器采集过程,在采集状态下,可以进行参数的测量显示;同时,还可以进行时基的设置、触发通道的设置、触发模式的设置等;对于显示面板上的波形可以任意地进行位置的调基于 LabVIEW 的虚拟数字示波器设计- 5 -整、缩放;对于当前的波形能够保存到硬盘上或 U 盘上;同样,也能把硬盘或 U 盘上的数据读到显示面板上(这是将停止数据的采集)并还能进行参数的测量;还可以把当前的波形打印出来。此外,应用高效数字信号处理技术,还可实现 FFT 算法,对频域信号进行分析。该示波器的主要控制结构有:自动/手动设置扫描率的控制结构,写盘/读
11、盘控制结构,采集控制结构,测量控制结构,打印控制结构,通道选择控制结构,以及频谱分析控制结构。在这个总体框架的基础上来进行各个模块的具体设计,并分别测量,测试通过后再把它们连接起来,构成一个完整的系统,最后进行整个系统性能的调试,直到调试结果符合要求为止。主程序流程图及模块条用如图 2.2 所示。另外,主面板的设计要力求简单、方便、使用、美观。图 2.2 主程序流程图YYNNY初始化读盘?采集?功能按键按下?波形显示执行相应功能模块读入波形数据N基于 LabVIEW 的虚拟数字示波器设计- 6 -虚拟仪器设计步骤本虚拟数字示波器的设计参考了 HP 公司的双通道台式数字存储示波器 HP 5460
12、3B的功能,并在仪器分析和处理功能上有所扩展。仪器主要功能包括:双通道信号输入、触发控制、通道控制、时基控制、波形显示、参数自动测量、频谱分析、波形存储和回放等。功能结构框图如下:触发控制通道控制时基控制 数据存储数据采集 数据处理波形存储电压参数测量时间参数测量频谱分析一、DAQ 数据采集模块:数据采集模块主要完成数据采集的控制,包括触发控制、通道选择控制、时基控制等。其中:1、触发控制包括触发模式、触发斜坡、触发电平控制;2、通道选择主要控制单通道或双通道测量;3、时基控制主要控制采集卡扫描率、每一通道扫描次数(取样数)。模块采用了测量 I/O 模板Data Acquisition 子模板
13、Analog Input 子模板Analog Input Utilities 子模板中的 AI Waveform Scan(scaled array).vi 来控制数据采集卡进行数据采集,此 VI 图标如图 3.1.1 所示。注:应用此类 VI,计算机需安装 Traditional NI-DAQ。整个程序框图的其他连线点都是 AI Waveform Scan(scaled array).vi 服务的,由于牵扯到硬件,和该 vi 的解释,所以在此不再过多解释框图含义。基于 LabVIEW 的虚拟数字示波器设计- 7 -图 3.1.1 AI Waveform Scan(scaled array).
14、vi模块图标如图 3.1.2 所示。图 3.1.2 数据采集模块图标及前面板模块程序框图如图 3.1.3 所示。图 3.1.3 DAQ 数据采集模块程序框图二、模拟采集模块基于 LabVIEW 的虚拟数字示波器设计- 8 -由于 DAQ 数据采集模块是建立在数据采集卡的基础上,所以,本设计采用一个虚拟采集模块代替 DAQ 数据采集模块。该模块应用两个基本函数发生器来产生两仿真信号分别用来模拟 A、B 通道信号,其采样信息通过对簇 sample/pol 的扫描率和扫描数解除捆绑后再捆绑组成的新簇输入。通过前面板还可以调整仿真信号的参数(波形类型、频率、幅值)和屏幕刷新速度,最后经提取波形成分将信
15、号的幅值信息组成一个二维数组。模块图标如图 3.2.1 所示。图 3.2.1 模拟采集模块图标模块程序框图如图 3.2.2 所示。图 3.2.2 模拟采集模块程序框图三、波形显示模块基于 LabVIEW 的虚拟数字示波器设计- 9 -软件提供了五种波形显示模式: A B A&B 模式:在此模式下,通过显示通道选择按键“A”和“B” ,可以任意显示某一通道或两通道输入信号的波形。 XY 模式:当 A、B 两通道都处于选通状态时,使用此模式来显示李沙育(Lissajous)图形、测量相位差或频率。 A+B A-B 模式:当 A、B 两通道都处于选通状态时,使用此模式显示两通道信号代数相加、相减后的
16、波形。 A&A 积分模式:当 A 通道处于选通状态时,使用此模式显示 A 通道信号和 A 通道信号对采样间隔的离散积分的波形。 A&A 微分模式:当 A 通道处于选通状态时,使用此模式显示 A 通道信号和 A 通道信号对采样间隔的离散求导的波形。对于前三种模式其横坐标是时间参数,首先对扫描数求倒数,然后看其是否小于等于扫描周期(乘 1000 后以毫秒为单位) ,若小于(即扫描数以毫秒为单位的扫描周期大于等于 1 毫秒) ,则单位显示 ms;若不小于(即扫描数以毫秒为单位的扫描周期小于 1 毫秒) ,则单位显示为 us,同时横坐标时间参数通过条件变量把数值扩大1000 倍。前面板单位的显示是通过
17、一个布尔输出来显示的。通过对电压二维数组的索引分别提取 A、B 两波形的幅值数据,在根据对应的通道按钮来决定是否将其数据清零,然后根据 A、B 基值的位置相应的改变其幅值数据,最后通过对横纵坐标的参数数值捆绑成簇,以便显示在 display 显板(即 XY 图) 。A 的积分和微分运算分别通过积分 X(t)和微分 X(t)节点来实现波形数据离散积分和微分,其求导时间参数采用扫描周期(即采样间隔) 。而 A、B 图形采样模式的改变时通过一个条件结构来实现的。模块图标和程序框图分别如图 3.3.1、图 3.3.2 所示。图 3.3.1 波形显示模块图标基于 LabVIEW 的虚拟数字示波器设计-
18、10 -四、参数测量模块本模块主要模拟 HP 54603B 的参数测量功能,完成包括 Vrms 等 12 个电压参数和频率、周期等 7 个时间参数的测量,并显示其测量结果。模块图标如图 3.4.1 所示。图 3.4.1 参数测量模块图标模块程序框图如图 3.4.2 所示。 利用数组最大值与最小值(Array Max&Min)节点求出最大值、最小值和峰峰值。 利用交流和直流分量估计(AC&DC Estimator)节点求出直流和交流分量。 分别利用均方根节点(RMS.vi)和均值节点(Mean.vi)求均方根值和平均值。 利用脉冲参数节点(Pulse Parameters.vi)可以求时域参数。
19、如上升时间、下降时间、电压顶部、电压底部、电压幅值、延迟时间和持续时间,并通过对扫描周期的运算可求出正宽度、负宽度和占空比。 利用应用程序控制属性节点可以控制调用模块时前面板的显示。 点击暂停可以暂停参数测量,点击返回可以退出参数测量前面板。当按键暂停按键未按下时,第一个条件结构执行假时的程序进行参数测量;当暂停按键按下时,第一个条件结构执行真时的空程序,参数测量暂停。返回按键未按下时,图 3.3.2 波形显示模块程序框图基于 LabVIEW 的虚拟数字示波器设计- 11 -第二个条件结构执行假时的程序,通过对应用程序控制属性节点的调用和一个布尔真常量,使其前面板始终处于打开状态,且输出(送入
20、测量按键的局部变量)为真,该子 VI 持续运行;当返回按键按下时,第二个条件结构执行真时的程序,通过对应用程序控制属性节点的调用和一个布尔假常量,是其前面板由打开转为关闭状态,且输出(送入测量按键的局部变量)变为假,分析按键被弹起,该子 VI 停止运行。图 3.4.2 参数测量模块程序框图基于 LabVIEW 的虚拟数字示波器设计- 12 -五、频谱分析模块采用快速 FFT 算法,完成频域信号分析。可实现的频谱分析控制包括: 利用按窗函数缩放(Scaled Window.vi)完成信号加窗,提供 9 种频谱分析窗口; 利用频谱单位转换(Spectrum Unit Conversion.vi)
21、完成 Log/Linear 选择,提供 3 种坐标显示模式和 8 种频谱单位; 利用频谱分析显示模块子 VI 完成频谱分析结果的显示和主 VI 对其的调用。首先根据通道的选择提取要分析的信号(A 信号或 B 信号) ,然后完成信号加窗,自功率谱的输出,最后完成对显示坐标及频谱单位的转换,并送入频谱分析显示模块,另外通过功率和频率估计节点来提取信号基频,供其他模块使用。通过分析逻辑按键和一个条件结构决定是否调用其显示模块。频谱分析显示模块是将输入的 df(频谱间隔)和频谱通过捆绑成簇,然后送入频谱图(XY 图)显示,输入的频谱单位通过一字符显示控件显示在频谱图相应位置。另外,通过在其前面板上添加
22、了暂停和返回按键和两个条件结构,使其可以暂停分析和关闭该子 VI。当按键暂停按键未按下时,第一个条件结构执行假时的程序进行频谱分析;当暂停按键按下时,第一个条件结构执行真时的空程序,频谱分析暂停。返回按键未按下时,第二个条件结构执行假时的程序,通过对应用程序控制属性节点的调用和一个布尔真常量,使其前面板始终处于打开状态,且输出(送入分析按键的局部变量)为真,该子 VI 持续运行;当返回按键按下时,第二个条件结构执行真时的程序,通过对应用程序控制属性节点的调用和一个布尔假常量,是其前面板由打开转为关闭状态,且输出(送入分析按键的局部变量)变为假,分析按键被弹起,该子 VI 停止运行。模块程序框图
23、如图 3.5.1。图 3.5.1 频谱分析模块程序框图频谱分析显示模块图标如图 3.5.2 所示。基于 LabVIEW 的虚拟数字示波器设计- 13 -图 3.5.2 频谱分析显示模块图标频谱分析显示模块程序框图如图 3.5.3 所示。图 3.5.3 频谱分析显示模块程序框图六、数据存储和回放模块传统的示波器存储的数据一般是易失性的存储器,但这样保存的数据容易丢失,而该虚拟示波器使用的存储工具是软盘或硬盘,数据不易丢失且携带方便,实现了数据的保存和读取,对波形的事后分析有很大的意义。按键“写盘”控制是否进行数据存储;按键“读盘”控制是否从数据文件中读取数据。主面板提供了一个文件名输入框,这一个
24、文件由写盘功能和读盘功能共用。从软盘或硬盘上读取的数据同实时采集的数据一样,能够进行自动参数测量、显示波形以及波形打印,并保留在显示窗口(显示模式设置为五种模式中的任意一种) 。模块的程序框图如图 3.6.1 所示。基于 LabVIEW 的虚拟数字示波器设计- 14 -在该模块的设计中应用了多个局部变量,使用时要注意选择正确,另外,通过对数组写入时的转置,可以使我们在察看数据文件时看到完整的数据。图 3.6.1 数据存储和回放模块程序框图七、波形打印模块一般的数字示波器都没有打印功能,这在一定程度上限制了示波器的功能。为了完善该示波器的功能,本虚拟示波器的设计添加了一个波形打印模块,将主面板的
25、波形数据送到波形打印模块子 VI 显示面板,模块程序框图如图 3.7.1 所示。当按下打印按键时,完成主 VI 对子 VI 波形数据和单位的传输,它没有循环,打印原理就是执行一次波形的显示。该子 VI 运行时用获取日期/时间字符串(Get Data/Time String)节点可以获取系统当前时间,并显示在打印波形显示面板的右上部。通过对 VI 属性中打印选项的设置使每次 VI 执行结束自动打印前面板,如图 3.7.2 所示,其他打印选项可根据需要自由选择。图 3.7.3 为一打印出的波形截图。基于 LabVIEW 的虚拟数字示波器设计- 15 -图 3.7.1 波形显示模块程序框图 图 3.
26、7.2 波形显示模块打印选项设置图 3.7.3 打印出的波形截图八、主要控制结构1、测量控制结构通过逻辑按键“测量”控制是否进行测量;通过逻辑按键“通道”控制通道选择,且在测量过程中可随时切换测量通道。2、自动调整扫描率控制结构由逻辑按键“自动”和“手动”来控制是否根据扫描数来自动调整扫描率,两个按键之间通过使用一个事件结构来进行自动/手动按键的切换,使一个按键变化的时候,基于 LabVIEW 的虚拟数字示波器设计- 16 -另一个按键也相应变换一次。3、模拟信号控制可通过对模拟信号选择内参数的调整,来改变使用的两模拟信号的类型及相关数据;可通过刷新控制滑动条实现屏幕刷新的快慢程度。4、按键总
27、体使用情况当主模块运行时,如果采集按键没有按下,则可使用的功能包括“写盘” 、 “读盘” 、“测量” 、 “波形打印”等;当采集按键按下时,可使用全部功能模块,但当进行“读盘”操作时,采集按键将会自动弹起。基于 LabVIEW 的虚拟数字示波器设计- 17 -总 结课程设计是测控仪器设计与 LabVIEW 课程重要的综合性与实践性教学环节,通过设计实践不仅可以检测我们对所学知识的掌握程度,更有助于培养我们独立学习、搜寻所需信息的能力,引导我们树立正确的设计思想,所以我们要认真对待本次课程设计。刚拿到设计题目时,感到这个设计很难,因为很多概念、原理和术语都不曾见过。所以,做设计之前,我花了很长时
28、间来了解设计任务书中所给的执行文件,并通过书籍和网络来搜寻相关设计资料。等到基本掌握执行文件的各个模块的相关功能后,我开始了各个子 VI 的设计工作。设计过程是辛苦的,但结果是快乐的,整个设计过程基本上就是一个调试、修改、再调试、再修改的过程。有时候为了一个功能的实现可能要花去整整一个下午和一个晚上的时间,而当你完成后有时却发现有更简便的方法,可是这个时候却一点也不感到失落,因为那是自己独立思考的结果,也许复杂,但正因复杂才得了别人没有的经验。各子 VI 设计调试好后,便是建立主程序模块将它们连接起来,进行整体的功能调试,直至符合设计要求。设计过程中存在的一些问题及解决方案:1、 在数据采集模
29、块,参考相关资料进行设计时,发现在 LabVIEW 中找不到 Data Acquisition 子模板中的 AI Waveform Scan(scaled array).vi,利用搜索功能也不能找到,经上网查询后得知需要安装 Traditional DAQ,并最终在 网站上下载到TDAQ750,使得问题得以解决。2、 在波形打印模块,实现打印功能时使用了报表打印,但打印结果不够理想,最后经同学点拨通过对 VI 属性的设置很好的实现了这一功能。3、 未完成自动/手动按钮切换,在主 VI 程序框图中加入事件结构后,发现循环不能正常进行,各功能按键失去相应的功能,经检查发现时间结构的左上角“超时”
30、接线端未连接值,给“超时”连线端连接上数值常量 1 后,问题得以解决。4、 调用子 VI 时,对于子 VI 的暂停以及前面板的弹出和关闭,可通过添加一条件结构和应用程序控制属性节点使问题得以解决。虽然本虚拟示波器能基本完成设计要求的各项功能,但仍然存在很多不足之处,比如对自动调整扫描率理解不到位,前面板可再优化设计,缺乏硬件无法实际检测,无法网络化、远程控制等。通过课程设计,基本掌握了虚拟示波器的组成原理及其设计的一般规律,进一步基于 LabVIEW 的虚拟数字示波器设计- 18 -巩固、加深和拓展了所学知识,培养了分析问题、解决问题的能力,完成了预定目标。附 录:示波器前面板基于 LabVIEW 的虚拟数字示波器设计- 19 -基于 LabVIEW 的虚拟数字示波器设计- 20 -参考文献1 袁渊等主编.虚拟仪器基础教程.电子科技大学出版社.2008 年2 杨乐平、李海涛、肖凯等主编.虚拟仪器技术概论.电子工业出版社.2003 年3 刘君华主编.基于 LabVIEW 的虚拟仪器设计.电子工业大学出版社.2003 年4 唐黔湘.一种虚拟多功能数字示波器的设计与实现.华中科技大学硕士学位论文.2005 年示波器程序框图