您好,欢迎访问三七文档
《虚拟仪器》七:数据采集(上)本堂课内容——数据采集(上)一、测试系统简介DAQ-------DataAcquisition被测对象传感器信号调理数据采集信号处理仪器面板1.测试系统组成在基于计算机构建的虚拟仪器及自动测试系统中,软件起着重要作用。具体包括所用到硬件(典型硬件如数据采集卡,等等)的驱动程序(NI-DAQmx;NI-VISA,等);应用程序编程接口;再上层的,是LabVIEW等编程环境软件;最后,还有用户根据自己需求所构建(编制)的应用程序。虚拟仪器及系统的软件用户编制的测量应用程序应用软件编程环境LabVIEW,LabWindows/CVI,MeasurementStudio配置软件MeasurementandAutomationExplorer(MAX)应用程序编程接口(API)硬件驱动程序NI-DAQmx现实世界的信号和物理量信号调理数据采集与模块化仪器传感器和变换器万用表开关在左可调电源示波器函数发生器模出模入直流电压源函数发生器数字输入输出计数器/时钟,用户可编程I/O,直流电源数字万用表可调电源示波器用户可编程I/O2.信号分类3.测量系统信号输入方式实验中所构建的测量系统,采用如图所示的差分式输入方式。输入信号+-至于测量系统的信号“参考地单端(RSE)”和“无参考地单端(NRSE)”输入接线方式及相应用途,可参考教材或“帮助”文件,或测量技术原理有关的教材等。具体实现上是:输入信号接在CH0+和CH0-之间。CH0+,即实验箱上的模入0通道CH0;CH0-,则是模入8通道CH8。输入信号4.采样率·采样率——每秒(单位时间)采集被测信号的次数。·以较高采样率采集到的信号样本,能更真实地反映原信号。·采样率过低,采得的数字信号看起来其频率可能与实际频率不同,称为频率混叠(aliasing)(抗混叠LP)被采信号频率为fs以fs采样以2fs采样以4fs/3采样采样定理:采样频率至少是被测信号中最高频率成分频率的两倍。实际采样时,常取5~10倍。5.分辨率3bit的数据采集卡将0~10V的被测信号划分为2的3次方份。显然,如此采得的信号已非原被测信号。16bit的数据采集卡将0~10V划分为2的16次方份(仔细看)。本教学实验室所使用PCI-6251数据采集卡的位数为12,即12bit。数字化测量仪器能够检测到的被测模拟信号的最小电平的变化量,由数据采集卡的位数(bit数)决定。6.输入范围3bit的采集卡将0~10V划分为2的3次方份测量仪器能够数字化地表征被测信号相应的电压信号的大小范围,由最小值和最大值确定。在数据采集卡已确定即其位数确定前提下,应尽可能使输入范围刚好容纳被测信号的变化范围。3bit的采集卡将-10~10V划分为2的3次方份输入范围-10~10V输入范围0~10V在右侧给出的示例中,第一个被测信号是0-8.75V(输入范围是0-10V);第二个被测信号是0-7.5V(输入范围是-10V-+10V)。显然,前者的采样效果更好一些。DAQmx设备列表进行设备自检打开测试面板MAX中的驱动程序DAQmx为确立经哪个采集通道去采集被测信号这一任务,要利用LabVIEW的“测量及自动化浏览器”(MeasurementandAutomationExplore---MAX)对数据采集卡进行配置。MAX也称“数据采集卡配置软件”。对基于计算机构建的虚拟仪器测量系统而言,计算机要与仪器硬件打交道,需要相应的硬件驱动程序。在本实验室虚拟仪器设计环境下,“NI-DAQmx设备”是数据采集卡驱动程序。路径:桌面上MeasurementandAutomation设备和接口二、数据采集任务确立及测量硬件驱动6251关于数据采集卡的驱动程序•一般而言,每种、每块数据采集卡均有自己的驱动程序,它的作用就是去控制数据采集卡的硬件操作。•数据采集卡的驱动程序由供应商提供,用户一般无需对其编写原理等做过多了解,而只要能正确使用该驱动程序实现对数据采集卡硬件的控制,使其正确地完成了自己希望的数据采集操作即可。DAQmx设备列表进行设备自检打开测试面板MAX的主界面MAX可实现如下功能:(1)浏览系统中接有的数据采集卡,并快速检测、配置数据采集卡及相应软件;(2)通过测试面板,验证和诊断数据采集卡工作情况;(3)创建新的采集通道、任务、接口和比例参数等。具体地,MAX会给每块数据采集卡分配一个逻辑设备号,以供LabVIEW调用时使用。在MAX主界面左栏“我的系统”下有三个子目录,其中,“数据邻居”存储了有关配置和修改任务、虚拟通道的信息;而通过“设备和接口”,可配置本地或远程的数据采集卡、串口及并口等硬件设备;最后的“换算”则用于标定运算。二、1.测量及自动化浏览器MAX的功能6251a)通道物理通道:连接被测信号的实际端子(对差分输入方式而言,每个物理通道对应2个端子;数字端口对应于8条线);虚拟通道:是一组属性设置的集合,包含虚拟通道名、对应的物理通道、输入接线方式(差分/RSE/NRSE等)、输入范围、缩放比例等。b)NI-DAQmx任务,是一个或多个虚拟通道的集合,此外,它还包含了定时、触发等属性。它代表了所要实施的一次信号测量或信号发生的操作。c)NI-DAQmx任务分为两种:一种是独立于程序而存在、可以被各个程序所使用的,且可长期保存的任务(用MAX创建,且保存在MAX中);另一种是仅存在于某程序中且只能供该程序使用的所谓临时任务(用DAQ助手ExpressVI或DAQmx函数在框图面板上创建)。d)虚拟通道分为两种:局部(Local)和全局(Global)虚拟通道。局部虚拟通道仅存在于某个DAQmx定义的任务中(其生存期长短由任务决定);而全局虚拟通道可长期保存在MAX中,且可被多个任务所使用。二、2.用驱动程序DAQmx配置测量通道和任务数据采集卡驱动程序DAQmx定义的任务、虚拟通道与物理通道间的关系虚拟通道包含物理通道、输入范围、端子配置(差分/RSE/NRSE)和缩放比例等多个属性;任务包含一个或多个虚拟通道,且它除包含每个虚拟通道的属性外,还包含这些虚拟通道共用的采样和触发等属性(信息)。物理通道ai0差分接法对应两个端子CH0和CH8虚拟通道电压_0虚拟通道名“电压_0”端子连接方式差分接法输入范围-5V~5V自定义缩放比例物理通道ai1差分接法对应两个端子CH1和CH9虚拟通道电压_1虚拟通道名“电压_1”端子连接方式差分接法输入范围0V~10V自定义缩放比例NI-DAQmx任务我的电压任务(包含两个虚拟通道)定时设置采样模式/待读取采样/采样率触发开始触发/参考触发任务的测量类型:模拟输入-电压•使用MAX(数据采集卡配置软件)创建一个任务首先,在MAX界面的“我的系统”-“数据邻居”快捷菜单中选择“新建…”,打开了新建的“数据邻居”对话框。用MAX创建任务的第一步:建立“数据邻居”路径:桌面MeasurementandAutomation-…….在对话框中,选择“NI-DAQmx任务”作为创建任务的目标,之后,点击“下一步”,进入下一层对话框。用MAX创建任务的第二步:在新建的“数据邻居”列表中,选择建立“NI-DAQmx任务”。在选择NI-DAQmx任务类型方面,每个类型下都有更具体的若干个选项可供选择。在这里,以选择“模拟输入”类型下的“电压”选项为例。选定之后,进入下一步骤。用MAX创建任务的第三步:选择NI-DAQmx任务类型(这里,选择“采集信号”“模拟输入”“电压”作为例子)。用MAX创建任务的第四步:选择建立虚拟通道所需的物理通道从“支持物理通道”的列表中,选择本任务所要使用的物理通道。Dev1表示本虚拟仪器环境中的第一块DAQ卡;ai1表示编号(索引)为1(从0开始)的模拟输入物理通道。可按住Ctrl或Shift键选择多个物理通道;所选择物理通道数,应等于新建任务包含的虚拟通道数。这里,以利用Ctrl键选择ai0和ai2这两个物理通道为例。选好后,按“下一步”键,进入下一步骤。DAQ设备模拟输入物理通道列表用MAX创建任务的第五步:为任务命名(指定名字)本例中,为任务命名时,就默认为“我的电压任务”即可。然后按“完成”键,进入下一步骤。完成上述操作后,在“数据邻居”下的“NI-DAQmx任务”列表中,已出现新建任务“我的电压任务”;同时,该任务已被选中,故在MAX主界面的右侧窗口中便出现了该任务的参数设置区。接下来,用户就应根据自己的实际需要修改由MAX提供的默认的任务参数设置。虚拟通道列表中,包含名为“电压_0”和“电压_1”的两个虚拟通道,虚拟通道名已被自动指定。在某虚拟通道上打开快捷菜单,可为该虚拟通道改名,或更改其对应的物理通道。(本例中,“电压_0”对应ai0;“电压_1”对应ai2。)采集模式:a)1采样(按要求),即采集单点数据(立即执行);b)1采样(硬件定时),表示在硬件时钟的边沿采集单点数据;c)N采样,表示采集一段数据,采样点数和采样频率在“定时设置”下的“待读取采样”和“采样率(Hz)”文本框中指定(本例中为100个点和1000Hz);d)连续采样,表示进行连续采集,此时,“定时设置”下只有“采样率(Hz)”即采样频率参数有效。若对默认的任务参数进行了修改,那需要按下右侧窗口中左上角的“保存”按钮,以保存修改后的任务参数设置。至此,一个NI-DAQmx定义的任务就建立完毕了。单击“DAQmx任务名”控件或“DAQmx任务名”常量右端的向下选项箭头、打开任务列表,选择“我的电压任务”项目,就可以使用前边所创建的任务了。在程序中使用MAX建立的任务,需要借助“DAQmx任务名”控件或“DAQmx任务名”常量。到达它们的路径是:“控件”选板-“新式”-“I/O”-“DAQmx名称控件”-“DAQmx任务名”“函数”选板-“测量I/O”-“DAQmx-数据采集”-“DAQmx任务名”任务列表DAQ任务名控件DAQ任务名常量•使用DAQ助手建立临时DAQmx任务将其放置于框图面板上,同时会出现其“新建Express任务…”窗口。在该窗口的右侧栏可进行相应的设置及其修改。使用DAQ助手建立的任务只是临时任务,没有名称,不会保存在MAX中被(这台计算机中建立的)其他程序使用。临时任务建立后,DAQ助手ExpressVI出现了名为“数据”的输出端子(对于模拟输入操作),它可直接向框图上的程序的其他部分输出数据。路径:“函数”选板“测量I/O”“DAQmx–数据采集”DAQ助手可以直接输出数据使用“DAQmx创建虚拟通道”亦即“DAQmx创建通道(AI-电压-基本)”,通过编程的方法,也可以建立临时任务。这个函数(子VI)的用法,在后面会有介绍。硬件:将可变电压打到手动Manual(调小一点,不要超过10V),Supply+和ACH0+连接,Ground和ACH0-连接。观察指针变化例7.1通过Assistant进行AI单点采集例7.2通过DAQmx进行电压输出硬件:将DAC0电压输入至万用表的VoltageHI,VoltageLo接地例7.3用仪器驱动模板函数写数字口硬件:将DO口和LED口连接,观察LED指示灯的变化例7.4采用DAQmx基本函数的虚拟频率分析仪硬件:将ACH1+和FUNC_OUT连,将ACH1-和GROUND连,1)鼠标点击键到“内部”,在界面上修改参数观察;把波形幅度调到小于5V,将DAC0和LED0连,改变波形及其频率,观察LED指示灯的变化;2)鼠标点击键到“外部“,函数发生器打到手动,改变波形,观察波形图中变化,例7.4采用DAQmx基本函数的事件计数器硬件:将CRT0_SOURCE和FUNC_OUT连,函数发生器打到手动,波形打到方波,观察面板中计数变化。三、DAQmxVI——数据采集函数简介多态vi选择器1.DAQmxVI的组织方式——多态VI多态性:输入、输出端子可以接受不同类型的数据。实际上,多态VI是具有相同连接器形式的多个VI的集合,包含在其中的每个VI,都称为该多态
本文标题:7 数据采集上
链接地址:https://www.777doc.com/doc-7032697 .html