您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 第10章LabVIEW数据采集与仪器控制
基于LabVIEW的虚拟仪器设计自动化学院控制工程系王辉第10章数据采集与仪器控制10.1数据采集10.1.1数据采集系统的构成10.2仪器控制10.1数据采集数据采集(DataAcQuisition,DAQ)是指从传感器和其它待测设备等模拟或数字被测单元中自动采集信息的过程。数据采集系统是结合基于计算机的测量软硬件产品来实现灵活的、用户自定义的测量系统。一个完整的DAQ系统包括传感器或变换器、信号调理设备、数据采集和分析硬件、计算机、驱动程序和应用软件等。10.1.1数据采集系统的构成典型的基于PC的数据采集(DAQ)系统10.1.1数据采集系统的构成1.传感器和变换器传感器感应物理信息并生成可测量的电信号。例如热电偶、电阻式测温计(RTD)、热敏电阻器和IC传感器可以把温度转变为ADC可测量的模拟信号。10.1.1数据采集系统的构成2.信号调理从传感器得到的信号可能会很微弱,或者含有大量噪声,或者是非线性的等等,这种信号在进入采集卡之前必须经过信号调理。信号调理的方法主要包括放大、衰减、隔离、多路复用、滤波、激励、冷端补偿等10.1.1数据采集系统的构成3.数据采集设备通过信号调理后的信号就可以与数据采集设备连接了。通常情况下数据采集设备是一个数据采集卡,与计算机的连接可以采用多种方式。NI的数据采集设备支持的总线类型包括PCI、PCIExpress、PXI、PCMCIA、USB、CompactFlash、Ethernet以及火线等各种总线。数据采集卡的功能包括模拟输入、模拟输出、数字I/O、触发采集和定时I/O。10.1.1数据采集系统的构成4.PC与软件软件使PC与数据采集硬件形成了一个完整的数据采集、分析和显示系统。软件分为驱动程序和上层应用程序。驱动程序可以直接对数据采集硬件的寄存器编程,管理数据采集硬件的操作并把它和处理器中断、DMA和内存这样的计算机资源结合在一起。驱动程序隐藏了复杂的硬件底层编程细节,为用户提供容易理解的接口。一般来说,硬件厂商在卖出硬件的同时也会提供驱动程序。上层应用程序用来完成数据的分析,存储和显示等。LabVIEW就是一个极佳的开发上层应用程序的开发平台。10.1.2NI-DAQmxNI-DAQmx是LabVIEW7.0以来新增的DAQ软件。它包括支持200多种NI数据采集设备的驱动,并提供相应的VI函数。此外它还包括Measurement&AutomationExplorer(MAX)、数据采集助理(DAQAssistant)以及VILogger数据记录软件。通过这些工具并结合LabVIEW可以节省大量的系统配置、开发和记录数据的时间。安装驱动10.1.2NI-DAQmx1.Measurement&AutomationExplorer(MAX)快速检测及配置所有硬件通过测试面板验证硬件的运作状况实施简便、交互式的测量给Ι/Ο通道命名创建一个新的通道配置文件(1)配置通道的设置和测试10.1.2NI-DAQmx举例:通过MAX配置串口属性10.1.2NI-DAQmx测试串口操作10.1.2NI-DAQmx2.DAQ助手(DAQAssistant)DAQ助手提供了一个对话框式的向导用于测量任务的配置、测试和自动代码生成。配合ExpressVI,通过DAQAssistant可以在数分钟内搭建一个专业的数据获取系统。10.1.2NI-DAQmx配置虚拟通道10.1.2NI-DAQmx自动生成代码10.2仪器控制简介仪器控制是指通过PC上的软件远程控制总线上的一台或多台仪器。它比单纯的数据采集要复杂的多。它需要将仪器或设备与计算机连接起来协同工作,同时还可以根据需要延伸和拓展仪器的功能。通过计算机强大的数据处理、分析、显示和存储能力,可以极大的扩充仪器的功能,这就是虚拟仪器的基本含义。10.2仪器控制简介一个完整的仪器控制系统除了包括计算机和仪器外,还必须建立仪器与计算机的通路以及上层应用程序。通路包括总线和针对不同仪器的驱动程序上层应用程序用于发送控制命令、仪器的控制面板显示以及数据的采集、处理、分析、显示和存储等。10.2仪器控制简介基于LabVIEW的仪器控制系统构架LabVIEW图形化开发环境InstrumentDriversDirectI/O(InstrumentI/OAssistant)GPIB串口以太网PXIVXIUSBOPC,ActiveX,DLL,SharedVariableCANModBus无线InstrumentsInstrumentsInstrumentsInstrumentsPCIPCIExpress火线…10.3选择合适的总线在开发一个测量系统时,选择正确的总线与选择一个具有合适采样速率和分辨率的设备一样重要。硬件总线可以影响测量的性能、系统搭建时间和便携性等。10.3选择合适的总线独立总线,用于架式和堆式仪器的通信。独立总线包括T&M专用总线(如GPIB)和PC标准总线(如串行总线RS-232、以太网、USB、无线和IEEE1394)。一些独立总线可用作其他独立总线的中介,如USB到GPIB的转换器。模块化总线,将接口总线合并到仪器中。模块化总线包括PCI、PCIExpress、VXI和PXI。这些总线也可用作为不包括该总线的PC增加一个独立总线的中介,如PCI-GPIB控制卡。10.3.1独立总线1.GPIB通用接口总线(GPIB-GeneralPurposeInterfaceBus)是独立仪器上一种最通用的I/O接口。GPIB是专为测试测量和仪器控制应用设计的。GPIB是一种数字的、8位并行通信接口,数据传输速率高达8M字节/秒。该总线可为一个系统控制器提供多达15台仪器连接,连线长度小于20米。PC本身很少带有GPIB。实际上,用户通常使用一个插卡(如PCI-GPIB)或一个外部转换器(如GPIB-USB)在自己的PC中增加GPIB仪器控制功能。10.3.1独立总线2.串行总线(RS-232和RS-485)RS-232是串行通信规范,是传统意义上的“串行”总线的最为常见的规范。RS-232也是一个相对较慢的接口,典型的数据速率低于20k字节/秒,虽然有些产品能够达到更高的数据吞吐量。由于RS-232连线长度最长只能达到15米,而且只能点对点通讯,不适合工业现场应用。因此出现了RS-485来解决这些问题,它采用差分的信号传输方式,最长距离可以达到1200米。PC上都不带RS-485的接口,因此在接入电脑前需要通过485-232转换器或485-USB转换器才能接入PC。10.3.1独立总线3.USB通用串行总线(USB-UniversalSerialBus)的设计主要用于将PC的外围设备(如键盘、鼠标、扫描仪和移动硬盘等)连接到PC。USB是一项即插即用技术最初的USB1.1规范定义了两种数据传输模式和速度:低速模式(Low-Speed)(最大吞吐量可达1.5Mbits/s或200Kbytes/s)和全速模式(Full-Speed)(最大吞吐量可达12Mbits/s或1.5Mbytes/s)。最新的USB规范——USB2.0完全后向兼容低速和全速设备,同时也定义了一种新的高速模式(Hi-Speed),该模式下数据传输速率高达480Mbits/s。10.3.1独立总线4.以太网5.CAN6.IEEE1394(火线)7.无线10.3.2模块化总线1.PCIPCI总线是当今使用最广泛的计算机内部总线之一。一般的计算机都有3个或更多的PCI插槽。PCI提供了高速的传输,理论带宽达到1056Mbits/s。10.3.2模块化总线2.PCIExpress当PC应用需要更大量带宽时,PCI总线在许多情况下达到了其物理极限。基本物理层由用作一个发送对和一个接收对的一对单工通道构成。每个方向的最初速率2.5Gbits/s为该方向提供了一个200MBytes/s的通信信道,这接近标准PCI数据速率的四倍。类似PCI,PCIExpress的典型应用不是直接用于仪器控制,而是作为外围总线将GPIB设备连接到PC以用于仪器控制。但由于其很高的速率,PCIExpress可用作模块化仪器的通信总线。此外,PCIExpress还支持热交换和热插拔功能。10.3.2模块化总线3.PXI/CompactPCIPXI将PCI电气总线特性与坚固的、模块化的、欧洲卡机械封装的CompactPCI相结合,并增加了专门的同步总线和关键的软件特性,从而能够承受常常存在于工业应用中的恶劣环境。这使得PXI成为一个高性能的、低成本的、适用测量和自动化系统的布置平台。10.3.2模块化总线4.VXI5.PCMCIA10.4仪器驱动程序计算机与仪器进行通讯的方式有两种一种是基于寄存器的通信方式,另一种是基于消息的通信方式。具体采用哪种方式由仪器本身决定。10.4仪器驱动程序一个仪器驱动程序是一个包括高层函数的库,这些高层函数支持控制某个仪器或某个仪器簇。一个仪器驱动程序是一个软件例程集合,该集合对应于一个计划的操作,如配置仪器、从仪器读取、向仪器写入和触发仪器等。它将底层的通信命令或寄存器配置等封装起来,用户只需要调用封装好的函数库就能轻松实现对应于该仪器的任何功能。10.4仪器驱动程序为了满足仪器控制和测试应用不同需求,存在两种不同类型的仪器驱动程序:即插即用驱动程序可互换的虚拟仪器(IVI)驱动程序直接I/O10.4仪器驱动程序IVI、Plug&Play和DirectI/O三种方式比较10.4.1可编程仪器标准命令SCPI对于采用基于消息的通信方式,理论上来说消息的格式可以任意。不同的仪器可以采用不同的消息解析方式,譬如仪器A发送“A”表示读回仪器名称,仪器B可以发送“B”表示读回仪器名称。SCPI联盟推出了可编程仪器标准命令SCPI(StandardCommandsforProgrammableInstruments)旨在规范一套标准的命令集。该命令集只是一个规范,和硬件无关。无论是基于GPIB,串口还是VXI的任何仪器都可以采用符合SCPI标准的命令集。10.4.1可编程仪器标准命令SCPISCPI命令与编程语言无关。LabVIEW提供的MAX和仪器I/O助手都可以向指定仪器发送命令。10.4.1可编程仪器标准命令SCPI例如TektronixTDS220示波器的SCPI命令集的例子:(1)*IDN?——返回仪器标识,采用IEEE4810.2标记法;(2)CHx:PRObe?——查询通道x的探头衰减;(3)HARDCopy:FORMatBMP——设置硬拷贝格式为BMP格式。10.4.2VISA虚拟仪器软件架构(VISA——VirtualInstrumentsSoftwareArchitecture)的目的是通过减少系统的建立时间来提高效率。随着仪器类型的不断增加和测试系统复杂化的提高,人们不希望为每一种硬件接口都要编写不同的程序,因此I/O接口无关性对于I/O控制软件来说变得至关重要。10.4.2VISA通过VISA用户能与大多数仪器总线连接,包括GPIB、USB、串口、PXI、VXI和以太网。而无论底层是何种硬件接口,用户只需要面对统一的编程接口——VISA10.4.2VISAVISA函数面板10.4.2VISA通过VISA读写GPIB设备通过VISA读写串口设备10.4.2VISA在VISAAdvanced面板下有更多的VISA高级函数。此外,为了更细节的控制譬如GPIB,串口和USB等接口,LabVIEW还提供了基于VISA的高级控制函数。这些函数在InstrumentI/O面板下都能找到。譬如InstrumentI/O-Serial面板下提供的串口配置函数可以对串口进行详细的配置,譬如超时时间、波特率、数据位和奇偶校验等。10.4.2VISA10.4.3IVI——可互换的虚拟仪器驱动程
本文标题:第10章LabVIEW数据采集与仪器控制
链接地址:https://www.777doc.com/doc-1236930 .html