1、第8章 数据采集,学习目标,1 信号和信号采集的基本概念 2 DAQ VI的组织结构 3 使用DAQ Assistant ,I/O和数字I/O的基本内容,8.1 概述,LabVIEW的数据采集(Data Acquisition)程序库包括了许多NI公司数据采集(DAQ)卡的驱动控制程序。通常,一块卡可以完成多种功能 - 模/数转换,数/模转换,数字量输入/输出,以及计数器/定时器操作等。用户在使用之前必须对DAQ卡的硬件进行配置。这些控制程序用到了许多低层的DAQ驱动程序。,DAQ系统的基本任务是物理信号的产生或测量。但是要使计算机系统能够测量物理信号,必须要使用传感器把物理信号转换成电信号(
2、电压或者电流信号)。有时不能把被测信号直接连接到DAQ卡,而必须使用信号调理辅助电路,先将信号进行一定的处理。总之,数据采集是借助软件来控制整个DAQ系统 包括采集原始数据、分析数据、给出结果等。,数据采集系统的构成,缓冲: 缓冲指的是PC内存的一个区域(不是数据采集卡上的FIFO缓冲),它用来临时存放数据下列情况需要使用Buffer I/O: 需要采集或产生许多样本,其速率超过了实际显示、存储到硬件,或实时分析的速度。 需要连续采集或产生AC数据(10样本秒),并且要同时分析或显示某些数据。 采样周期必须准确、均匀地通过数据样本。 下列情况可以不使用Buffer I/O: 数据组短小,例如每
3、秒只从两个通道之一采集一个数据点。 需要缩减存储器的开支。,触发:触发涉及初始化、终止或同步采集事件的任何方法。触发器通常是一个数字或模拟信号,其状态可确定动作的发生,下列情况使用软件触发: 用户需要对所有采集操作有明确的控制,并且 事件定时不需要非常准确。 下列情况使用硬件触发: 采集事件定时需要非常准确。 用户需要削减软件开支。 采集事件需要与外部装置同步。,模拟信号输入需考虑的因素:,当采用DAQ卡测量模拟信号时,必须考虑下列因素: 输入模式(单端输入或者差分输入) 分辨率 输入范围 采样速率 精度 噪声,模入信号的连接方式,接地信号: 如信号发生器和电源。,浮动信号: 电池、热电偶、变
4、压器和隔离放大器。,测量系统 的分类,Differential : RSE:参考地单端 NRSE:无参考地单端,微分测量系统,参考地单端测量系统(RSE),无参考地单端测量系统(NRSE),选择合适的测量系统,两种信号源和三种测量系统一共可以组成六种连接方式:,不带*号的方式不推荐使用。一般说来,浮动信号和差动连接方式可能较好。 但实际测量时还要看情况而定。,微弱信号都要进行放大以提高分辨率和降低噪声,使调理后信号的电压范围和A/D的电压范围相匹配。信号调理模块应尽可能靠近信号源或传感器,使得信号在受到传输信号的环境噪声影响之前已被放大,使信噪比得到改善。,1. 放大,2.隔离,隔离是指使用变
5、压器、光或电容耦合等方法在被测系统和测试系统之间传递信号,避免直接的电连接。使用隔离的原因由两个:一是从安全的角度考虑;另一个原因是隔离可使从数据采集卡读出来的数据不受地电位和输入模式的影响。如果数据采集卡的地与信号地之间有电位差,而又不进行隔离,那么就有可能形成接地回路,引起误差。,滤波的目的是从所测量的信号中除去不需要的成分。大多数信号调理模块有低通滤波器,用来滤除噪声。通常还需要抗混叠滤波器,滤除信号中感兴趣的最高频率以上的所有频率的信号。某些高性能的数据采集卡自身带有抗混叠滤波器。,3.滤波,4.激励,信号调理也能够为某些传感器提供所需的激励信号,比如应变传感器、热敏电阻等需要外界电源
6、或电流激励信号。很多信号调理模块都提供电流源和电压源以便给传感器提供激励。,许多传感器对被测量的响应是非线性的,因而需要对其输出信号进行线性化,以补偿传感器带来的误差。但目前的趋势是,数据采集系统可以利用软件来解决这一问题。,5.线性化,6.数字信号调理,即使传感器直接输出数字信号,有时也有进行调理的必要。其作用是将传感器输出的数字信号进行必要的整形或电平调整。大多数数字信号调理模块还提供其他一些电路模块,使得用户可以通过数据采集卡的数字I/O直接控制电磁阀、电灯、电动机等外部设备。,数据采集(DAQ)卡,数据采集卡的功能一个典型的数据采集卡的功能有模拟输入、模拟输出、数字I/O、计数器/计时
7、器等,这些功能分别由相应的电路来实现。模拟输入是采集最基本的功能。它一般由多路开关(MUX)、放大器、采样保持电路以及A/D来实现,通过这些部分,一个模拟信号就可以转化为数字信号。A/D的性能和参数直接影响着模拟输入的质量,要根据实际需要的精度来选择合适的A/D。,模拟输出通常是为采集系统提供激励。输出信号受数模转换器(D/A)的建立时间、转换率、分辨率等因素影响。建立时间和转换率决定了输出信号幅值改变的快慢。建立时间短、转换率高的D/A可以提供一个较高频率的信号。 数字I/O通常用来控制过程、产生测试信号、与外设通信等。它的重要参数包括:数字口路数(line)、接收 (发送 )率、驱动能力等
8、。 计数器包括三个重要信号:门限信号、计数信号、输出。,2.分辨率、输入范围、增益、采样速率,精度和噪声,分辨率(Resolution)分辨率就是用来进行模数转换的位数,A/D的位数越多,分辨率就越高,可区分的最小电压就越小。分辨率要足够高,数字化信号才能有足够的电压分辨能力,才能比较好的恢复原始信号。目前分辨率为8的采集卡属于较低的,12位属中档,位的卡就比较高了。他们可以分别将模入电压量化为256、4096、65536份。,输入范围(Range)(区间):输入范围由A/D能数字化的模拟信号的最高和最低的电压决定。一般情况下,采集卡的电压范围是可调的,所以可选择和信号电压变化范围相匹配的电压
9、范围以充分利用分辨率范围,得到更高的精度。比如,对于一个3位的A/D,在选择0-10V范围时,它将10V八等分;如果选择范围为-10V到+10V,同一个A/D就得将20V分为8等分,能分辨的最小电压就从1.25V上升到2.50V,这样信号复原的效果就更差了。,增益(Gain)增益主要用于在信号数字化之前对衰减的信号进行放大。使用增益,可以等效地降低A/D的输入范围,使它能尽量将信号分为更多的等份,基本达到满量程,这样可以更好地复原信号。因为对同样的电压输入范围,大信号的量化误差小,而小信号时量化误差大。当输入信号不接近满量程时,量化误差会相对加大。如:输入只为满量程的110时,量化误差相应扩大
10、10倍。一般使用时,要通过选择合适的增益,使得输入信号动态范围与A/D的电压范围相适应。当信号的最大电压加上增益后超过了板卡的最大电压,超出部分将被截断而读出错误的数据。,输入范围,分辩率以及增益决定了输入信号可识别的最小模拟变化量。此最小模拟变化量对应于数字量的最小位上的0,1变化,通常叫做转换宽度(Code width)。其算式为:输入范围/(增益*2分辩率)。P240,采样率采样率决定了模/数变换的速率。采样率高,则在一定时间内采样点就多,对信号的数字表达就越精确。采样率必须保证一定的数值,如果太低,则精确度就很差。下面的图表示了采样率对精度的影响。,采样频率足够,采样频率不够引起波形畸
11、变,根据耐奎斯特采样理论,采样频率必须是信号最高频率的两倍。例如,音频信号的频率一般达到20KHz,因此其采样频率一般需要40KHz。,混叠混叠的例子:假设采样频率 fs 是100HZ,,信号中含有25 、70、160、和 510 Hz的成分。,采样的结果将会是低于奈奎斯特频率(fs/2=50 Hz)的信号可以被正确采样。而频率高于50HZ的信号成分采样时会发生畸变。分别产生了30、40和10 Hz的畸变频率F2、F3和F4。计算混频偏差的公式是:混频偏差ABS(采样频率的最近整数倍输入频率) 其中ABS表示“绝对值”,例如: 混频偏差 F2 = |100 70| = 30 Hz 混频偏差F3
12、 = |(2)100 160| = 40 Hz 混频偏差F4 = |(5)100 510| = 10 Hz,为了避免这种情况的发生,通常在信号被采集(A/D)之前,经过一个低通滤波器,将信号中高于奈奎斯特频率的信号成分滤去。在例上中,这个滤波器的截止频率自然是25HZ。这个滤波器称为抗混叠滤波器.采样频率应当怎样设置呢?可能会首先考虑用采集卡支持的最大频率。但是,较长时间使用很高的采样率可能会导致没有足够的内存或者硬盘存储数据太慢。理论上设置采样频率为被采集信号最高频率成分的倍就够了,实际上工程中选用倍,有时为了较好地还原波形,甚至更高一些。,. 数据采集卡的软件配置一般说来,数据采集卡都有自
13、己的驱动程序,该程序控制采集卡的硬件操作,当然这个驱动程序是由采集卡的供应商提供,用户一般无须通过低层就能与采集卡硬件打交道。NI公司还提供了一个数据采集卡的配置工具软件Measurement & Automation Explorer ,它可以配置NI公司的软件和硬件,比如执行系统测试和诊断、增加新通道和虚拟通道、设置测量系统的方式、察看所连接的设备等。,DAQ VI的组织结构,LabVIEW的DAQ程序包括模拟输入、模拟输出、计数器操作、数字输入、输出等。可以在框图程序窗口下选择Data Acquisition。再在此子模板下,可以看到6个子模板:Analog Input, Analog
14、Output, Digital I/O, Counter, Calibration and Configuration和Signal Conditioning。在上述6个子模板下,每个子模板又分成Easy I/O Vis, Intermediate Vis, Utility Vis和Advanced Vis。 举例:AI Sample Channel .VI,AI Sample Channel程序测量指定通道上信号的一个采样点,并返回测量值。Device是DAQ卡的设备编号,Channel是描述模拟输入通道号的字符串,High Limit和Low Limit指明输入信号的范围,缺省值为+10V和-10V。,AO Update Channel程序把一个给定电压值在一个模拟输出通道上输出。Device是DAQ卡的设备编号,Channel是输出通道号字符串value是输出的电压值。,实验练习,数据采集VI程序的调用方法 模拟输入与输出 波形的采集与产生 扫描多个模拟输入通道 连续数据采集,