第3章虚拟仪器的软件开发平台.ppt
第第3 3章章 虚拟仪器的软件开发平台虚拟仪器的软件开发平台n1.1.什么是什么是虚拟仪器虚拟仪器?虚虚拟拟仪仪器器是是指指,在在以以通通用用计计算算机机为为核核心心的的硬硬件件平平台台上上,由由用用户户自自己己设设计计定定义义,具具有有虚虚拟拟的的操操作作面面板板,测测试试功功能能由由测试软件来实现的一种计算机仪器系统。测试软件来实现的一种计算机仪器系统。Virtual Instrument,VI3.1 虚拟仪器的概念2.虚拟仪器的特点 仪器=A/D+CPU+软件The Software Is Instruments传统仪器虚拟仪器实物面板面板图标面板面板关键是硬件关键是软件开发与维护费用高开发与维护费用低技术更新周期长技术更新周期短价格高价格低,并且可重用性与可配置性强厂商定义仪器功能用户定义仪器功能系统封闭、固定系统开放、灵活,与计算机的进步同不易与其他设备连接容易与其他设备连接3.虚拟仪器的体系 4.虚拟仪器的分类n按接口总线类型不同划分按接口总线类型不同划分数据采集卡式数据采集卡式 DAQ DAQ RS232/RS485RS232/RS485虚拟仪器虚拟仪器并行接口虚拟仪器并行接口虚拟仪器USBUSB虚拟仪器虚拟仪器GPIBGPIB虚拟仪器虚拟仪器VXIVXI虚拟仪器虚拟仪器PXIPXI虚拟仪器虚拟仪器IEEE1394IEEE1394接口虚拟仪器接口虚拟仪器5 虚拟仪器的软件开发平台n软件平台软件平台n基于文本式编程语言开发工具基于文本式编程语言开发工具 VC+,VB,C+Build,LabWindows/CVI,Delphi等。等。n基于图形化编程语言开发工具基于图形化编程语言开发工具 LabVIEW(NI 公司)公司)HP VEE(HP 公司)公司)软面板举例:动态信号分析仪软面板6.虚拟仪器的应用航空航空航天航天教学教学核工业核工业军工军工通信测试通信测试铁道铁道.3.2 虚拟仪器开发工具-LabVIEWnLabVIEW (Laboratory Virtual Instrument Engineering Workbench,实实验验室室虚虚拟拟仪仪器器工工程程平平台台)是是美美国国 NI 公公司司推推出出的的一一种种基基于于G 语语言言(Graphics Language,图图形形化化编编程程语语言言)的虚拟仪器软件开发工具;的虚拟仪器软件开发工具;n目目 的的:简简 化化 程程 序序 的的 开开 发发 工工 作作,使使 用用 户户 能能 快快 速、简便地完成自己的工作。速、简便地完成自己的工作。3.2.1 LabVIEW的特点(1)编程简单编程简单,不需要记忆编程语言;,不需要记忆编程语言;(2)开发周期短开发周期短;(3)高效性高效性,这主要是以软件做保证;,这主要是以软件做保证;(4)开开放放性性,可可根根据据实实际际情情况况进进行行更更新新扩扩展展,发展迅速;发展迅速;(5)自自定定义义性性,工工程程师师们们可可以以在在非非常常广广泛泛的的测测量和控制应用中自定义芯片级硬件功能;量和控制应用中自定义芯片级硬件功能;(6)性价比高性价比高,能一机多用。,能一机多用。3.2.2 LabVIEW8.2开发平台n使使用用LabVIEWLabVIEW开开发发平平台台编编制制的的程程序序称称为为虚虚拟拟仪仪器器,简简称称VIVI。VIVI由由以以下下3 3部部分分构构成成:前面板前面板:即用户界面;即用户界面;程程序序框框图图:包包含含用用于于定定义义VIVI功功能能的的图图形形化化源代码;源代码;图图标标和和连连线线板板:用用以以识识别别VIVI的的接接口口,以以便便在在 创创 建建 VIVI时时 调调 用用 另另 一一 个个 VIVI。当当 一一 个个 VIVI应应 用用 在在 其其 他他 VIVI中中,则则 称称 为为 子子 VIVI。子子 VIVI相相 当当 于文本编程语言中的子程序。于文本编程语言中的子程序。1.前面板 n前前面面板板是是VIVI的的用用户户界界面面。创创建建VIVI时时,通通常常应应先先设设计计前前面面板板,然然后后设设计计程程序序框框图图执执行行在在前前面板上创建的输入、输出任务。面板上创建的输入、输出任务。2.程序框图n程程序序框框图图是是图图形形化化源源代代码码的的集集合合,图图形形化化源源代码又称代码又称G G代码或程序框图代码。代码或程序框图代码。程序框图由接线程序框图由接线端、节点、连线端、节点、连线和结构等构成。和结构等构成。程序框图对象n程程序序框框图图由由接接线线端端、节节点点、连连线线和和结结构构等等构构成成:n接接线线端端:是是程程序序框框图图中中传传递递数数据据的的起起点点和和终终点点。控控件件接接线线端端用用来来为为前前面面板板上上的的对对象象与与程程序序框框图图传传递数据递数据。n节节点点:是是实实现现程程序序功功能能的的基基本本单单元元,具具有有输输入入、输出端,在输出端,在VIVI运行时完成一定的操作。运行时完成一定的操作。n连连线线:是是程程序序框框图图中中各各个个对对象象之之间间传传递递数数据据的的通通道。道。n结结构构:是是文文本本编编程程语语言言中中的的循循环环和和条条件件语语句句的的图图形化表示。形化表示。3.图标和连线板n创创建建VIVI的的前前面面板板和和程程序序框框图图后后,可可创创建建图图标标和连线板,以便将该和连线板,以便将该VIVI作为子作为子VIVI调用。调用。n图标和连线板图形:图标和连线板图形:图标图标是是VIVI的图形化表的图形化表示,可包含文字、图示,可包含文字、图形或图文组合。形或图文组合。连线板连线板用于显示用于显示VIVI中所有输入控件中所有输入控件和显示控件的接线端,类似于文本和显示控件的接线端,类似于文本编程语言中调用函数时使用的参数编程语言中调用函数时使用的参数列表。列表。3.2.3 LabVIEW8.2的操作选板nLabVIEW8.2包含包含3 3个操作选板个操作选板:工具选板工具选板 控件选板控件选板 函数选板函数选板 1.工具选板2.控件选板控件选板包括控件选板包括创建前面板所创建前面板所需的输入控件需的输入控件和显示控件。和显示控件。经典控经典控件子选件子选板板3.函数选板函数选板中函数选板中包含创建程包含创建程序框图所需序框图所需的的VIVI和函数。和函数。编程子选编程子选板的图标、板的图标、名称及功名称及功能能 3.2.4 LabVIEW8.2的菜单和工具栏 LabVIEW8.2菜单菜单LabVIEW8.2的工具栏的工具栏3.2.5 LabVIEW8.2中的数据类型n支持的数据类型有:支持的数据类型有:数值型数值型 布尔型布尔型 数组型数组型 字符串型字符串型 波形数据类型波形数据类型 簇簇 路径路径 3.2.6 创建虚拟仪器1.1.创建一个虚拟仪器的一般步骤创建一个虚拟仪器的一般步骤(1)前面板设计)前面板设计(2)程序框图)程序框图(3)数据流编程)数据流编程(4)功能检验)功能检验(5)保存文件)保存文件 创建一个虚拟仪器两数相加与两数相减两数相加与两数相减VIVI2.2.调试虚拟仪器调试虚拟仪器 n虚拟仪器的一般调试步骤虚拟仪器的一般调试步骤(1)运行)运行VI(2)清除语法错误清除语法错误(3)高亮显示执行过程)高亮显示执行过程(4)单步执行)单步执行(5)探针工具)探针工具(6)断点)断点 3.创建和调用子VIn构构造造一一个个子子VI的的主主要要工工作作就就是是需需先先为为子子VI创创建连线板和图标建连线板和图标 调用子VI示例 n前面板前面板 框图程序框图程序 4.虚拟仪器创建举例n测温范围:测温范围:0100oCn测温传感器:测温传感器:AD590,灵敏度:灵敏度:1A/K 例1 虚拟温度计虚拟温度计VI前面板前面板框图框图程序程序例2 求求N!main()int a,i,n;a=1;i=0;scanf(“%d”,&n);do i=i+1;a=a*i;while(in);printf(“n!=%d”,a);前面板和程序框图前面板和程序框图 例3 波形显示 设设计计一一个个VI,显显示示一一个个正正弦弦波波电电压压测测量量结结果果。电电压压采采样样从从0开开始始,每每隔隔2ms采采样样一一个个点点,共共采采样样50个个点点,要要求程序的显示能够反映出实际的采样时间及电压值。求程序的显示能够反映出实际的采样时间及电压值。电压测量电压测量VIVI的前面板和程序框图的前面板和程序框图 3.3 虚拟仪器的数据采集DAQDAQ虚拟仪器又称虚拟仪器又称PC-DAQPC-DAQ仪器系统,其组成如下图所示。仪器系统,其组成如下图所示。它由一台它由一台PCPC机和基于标准总线的采集卡(仪器卡)构成,机和基于标准总线的采集卡(仪器卡)构成,同时还配备有仪器驱动软件来支持硬件工作。同时还配备有仪器驱动软件来支持硬件工作。1.数据采集设备的设置与测试测试与自动化资源测试与自动化资源管理器管理器MAX是是Measurement&Automation Explorer的缩写,的缩写,是访问计算机当中是访问计算机当中NI的各种软硬件资的各种软硬件资源的一个接口源的一个接口。设备设置与测试在在Measurement&Automation Explorer的下拉菜单的下拉菜单中,可利用中,可利用Self-Test,Test Panels对采集对采集卡进行自检,面板测试卡进行自检,面板测试等操作。等操作。2.利用NI USB-6009数据采集卡实现数据采集主要技术指标主要技术指标:8个模拟通道(个模拟通道(14位、位、48位位kS/s采样速度);采样速度);2路路14位模拟输出通道;位模拟输出通道;12个个I/O通道;通道;1个个32位计数器位计数器/定时器定时器。产品通过产品通过USB接口供电,不需要任何外接电源。它们均包括用于直接信号连接口供电,不需要任何外接电源。它们均包括用于直接信号连接可拆卸螺孔端子、用于支持外部设备以及传感器接可拆卸螺孔端子、用于支持外部设备以及传感器1个参考电压、低噪音高精度个参考电压、低噪音高精度的的4层电路板,以及高达层电路板,以及高达35v的模拟输入过电压保护。的模拟输入过电压保护。模拟输入:模拟输入:AI0AI7模拟输出:模拟输出:AO0,AO1数字数字I/O:P0.0P0.7,P1.0P1.3定时定时/计数器:计数器:PFI0NI USB-6009的接线端子分配(1)利用DAQ助手创建数据采集程序程序框图程序框图运行结果运行结果利用NI-DAQmx采集函数实现数据采集单通道数据单通道数据采集采集VIVI多通道数据采集VI(2)利用NI-DAQmx函数构建模拟输出模拟输出程序框图模拟输出程序框图前面板前面板(3)利用NI-DAQmx函数构建数字I/O输出控制控制P0P0口的口的8 8根根I/OI/O线输线输出状态出状态(4)工程实战霍尔元件传感器霍尔元件传感器调理电路调理电路6009数据采集模块数据采集模块Labview处理处理控制和显示控制和显示基于基于LabVIEWLabVIEW计数信号采集与控制平台的构建计数信号采集与控制平台的构建1)霍尔元件传感器典型的线性型霍尔器件典型的线性型霍尔器件H03H032)调理电路原理图霍尔元件霍尔元件H03的管脚的管脚3输出的交流电压脉冲信号,通过输出的交流电压脉冲信号,通过C0601耦耦合到合到OP07的输入端,经的输入端,经OP07 放大后,送至放大后,送至LM393电压比较电压比较器,将模拟信号转换为输出信号,送至器,将模拟信号转换为输出信号,送至DAQ6009的计数通道。的计数通道。3)计数器数据采集与控制程序前面板前面板程序框图程序框图3.4 虚拟仪器的信号分析与处理n为为深深入入了了解解信信号号的的物物理理实实质质,将将其其进进行行分分类类研研究究是是非非常常必必要要的的,从从不不同同角角度度观观察察信信号号,可可分分为为:时时域域和频域。和频域。时间幅值频率时域分析频域分析时域分析与频时域分析与频域分析的关系域分析的关系1.信号的时域分析n时时域域分分析析是是指指在在时时间间域域内内研研究究系系统统在在一一定定输输入入信信号的作用下,其输出信号随时间的变化情况;号的作用下,其输出信号随时间的变化情况;信号的时域描述信号的时域描述:以时间为独立变量,描述信号随时以时间为独立变量,描述信号随时间的变化特征,反映信号幅值随时间变化的关系;间的变化特征,反映信号幅值随时间变化的关系;优点优点:形象、直观形象、直观缺点缺点:不能明显揭示信号的内在结构不能明显揭示信号的内在结构信号的时域分析举例一相关分析n所谓所谓“相关相关”是指变量之间的线性关系;是指变量之间的线性关系;n相相关关性性是是指指信信号号的的相相似似和和关关联联程程度度,相相关关分分析析不不仅仅可可用用于于确确定定性性信信号号,也也可可用用于于随随机机信信号号的的检检测测、识别和提取等;识别和提取等;n相相关关分分析析常常用用相相关关函函数数(自自相相关关函函数数和和互互相相关关函函数)或相关系数来描述;数)或相关系数来描述;n相关函数相关函数和和功率谱功率谱(密度密度)是一对傅立叶变换。是一对傅立叶变换。相关函数相关函数序列相关函数序列 自相关函数自相关函数:反映了信号在时移中的相关性。:反映了信号在时移中的相关性。互相关函数互相关函数:反映了两个信号在时移中的相关性。:反映了两个信号在时移中的相关性。相关分析工程应用实例 自相关分析:机械加工表面粗糙度自相关分析:机械加工表面粗糙度互相关分析:地下输油管道漏损位置的探测将将两两拾拾音音器器测测得得的的音音响响信信号号x1(t)x1(t)和和x2(t)x2(t)进进行行互互相相关关分分析析,找找出出互互相相关关值值最最大大处处的的延延时时,即即可可由由确定油管破损位置。确定油管破损位置。LabVIEW中的相关分析函数Auto Correlation.viCross Correlation.vi互相关运算举例前面板前面板程序框图程序框图 2.信号的频域分析n频频域域分分析析是是采采用用傅傅立立叶叶变变换换将将时时域域信信号号X(t)变变换换为为频频域域信信号号X(f),从从而而帮帮助助人人们们从从另另一一个个角角度度来来了了解解信号的特征;信号的特征;信号的频域描述信号的频域描述:应用傅里叶变换,对信号进行变:应用傅里叶变换,对信号进行变换换(分解分解),以频率为独立变量,建立信号幅值、相,以频率为独立变量,建立信号幅值、相位与频率的关系位与频率的关系;特点特点:频域描述抽取信号内在的频率组成,信息:频域描述抽取信号内在的频率组成,信息丰富,应用广泛。丰富,应用广泛。时域-频域关系的建立n时域信号时域信号x(t)x(t)的傅里叶变换为的傅里叶变换为:例如,例如,50Hz正弦波信号正弦波信号x(t)=10sin(2*50*t)其频谱函数为其频谱函数为转换过程如图所示转换过程如图所示:频域分析应用描述n信信号号的的频频谱谱代代表表了了信信号号在在不不同同频频率率分分量量处处信信号号成成分分的的大大小小,它它能能够够提提供供比比时时域域信信号号波波形形更更直直观观、更丰富的信息。更丰富的信息。(1)快速傅立叶变换FFT的实现n傅傅里里叶叶变变换换是是信信号号处处理理与与数数据据处处理理中中一一个个重重要要分分析析工工具具,其其意意义义在在于于将将时时域域与与频频域域信信号号联联系系起起来来,通通过过频频域域分分析析将将复复杂杂的的信信号号分分解解为各个单一的频率成分。为各个单一的频率成分。FFT.vi例:双边傅里叶变换前面板前面板程序框图程序框图频率间隔与采频率间隔与采样频率和采样样频率和采样点数的关系点数的关系(2)频谱分析n频频谱谱分分析析是是指指把把时时间间域域的的各各种种动动态态信信号号通通过过傅傅里里叶叶变换转换到频率域进行分析。变换转换到频率域进行分析。n内容包括内容包括:频谱分析频谱分析:包括幅值谱和相位谱、实部频谱和虚部频谱;:包括幅值谱和相位谱、实部频谱和虚部频谱;功率谱分析功率谱分析:包括自谱和互谱;:包括自谱和互谱;频率响应函数分析频率响应函数分析:系统输出信号与输入信号频谱之比;:系统输出信号与输入信号频谱之比;相干函数分析相干函数分析:系统输入信号与输出信号之间谱的相关:系统输入信号与输出信号之间谱的相关程度。程度。举例:功率谱nLabVIEW8.2中中,用用于于计计算算输输入入序序列列的的单单边边自自功功率率谱谱函函数数Auto Power Spectrum.vi的的图标及端口如图所示。图标及端口如图所示。等效数学运算式公式等效数学运算式公式自功率谱分析举例前面板前面板程序框图程序框图 3.数字滤波器n数数字字滤滤波波器器即即是是以以数数值值计计算算的的方方法法来来实实现现对对离离散散化化信信号号的的处处理理,以以减减少少干干扰扰信信号号在在有有用用信信号号中中所所占占的的比比例例,从从而而改改变变信信号号的的质质量量,达到滤波或加工信号的目的。达到滤波或加工信号的目的。n数字滤波器分为数字滤波器分为 无限冲激响应滤波器无限冲激响应滤波器IIRIIR 有限冲激响应滤波器有限冲激响应滤波器FIRFIR特点特点:精度高、稳定性好、灵活性强、处:精度高、稳定性好、灵活性强、处 理功能强理功能强LabVIEW提供的滤波器函数数字滤波器应用举例使用巴特沃斯滤波器使用巴特沃斯滤波器提出正弦信号提出正弦信号3.5 虚拟仪器举例1.虚拟相位差计(1)功能描述)功能描述可测量两个同频率正弦波的相位差;可测量两个同频率正弦波的相位差;可测相位差可测相位差的数值范围为的数值范围为0180度;度;信号的幅度范围为信号的幅度范围为0.1V5.0V;两个信号的频率范围为两个信号的频率范围为0.1Hz10kHz。(2)设计原理n用用相相关关法法求求相相位位差差,即即利利用用两两个个同同频频正正弦弦信信号号的的延延时时=0时时的的互互相相关关函函数数值值与与其其相相位位差差的的余余弦弦值值成成正正比比的的原原理理获获得得相相位位差。差。n假设有两个同频信号假设有两个同频信号x(t)、y(t),描述如下:描述如下:用相关法测量相位差的原理如下将x(t)、y(t)代入求积分后得到:所以有:虚拟相位差计VI设计2.虚拟示波器 WDM驱动程序,适用于Windows98 /2000/XP操作系统;提供DLL动态链接库;提供LabVIEW驱动节点 基于USB总线;无需外部电源,即插即测;体积小,80mmx65mm,手掌大小;5V(1:1探头)双极性信号输入;1M/30PF输入阻抗;x0.5、x5程控放大;单/双通道可选择输入模式;单通道80MHz/双通道40MHz采样率;64K(单通道)/32K(双通道)板载内存;可程控调节存储容量;8位垂直电压分辨率;外触发、程序触发可选触发模式;8级采样频率程控选择;示波器特性:韩国推出的微型虚拟示波器多功能虚拟仪器(五和一)国内研制的双通道微型虚拟示波器各项指标和国外同类产品相比,具有更强的灵活性,支持二次开发、功能的重组。虚拟示波器演示本本章结束章结束谢谢!