虚拟仪器第十章数据采集与daqmx分析doc资料.ppt

上传人:豆**** 文档编号:77723976 上传时间:2023-03-16 格式:PPT 页数:105 大小:1.74MB
返回 下载 相关 举报
虚拟仪器第十章数据采集与daqmx分析doc资料.ppt_第1页
第1页 / 共105页
虚拟仪器第十章数据采集与daqmx分析doc资料.ppt_第2页
第2页 / 共105页
点击查看更多>>
资源描述

《虚拟仪器第十章数据采集与daqmx分析doc资料.ppt》由会员分享,可在线阅读,更多相关《虚拟仪器第十章数据采集与daqmx分析doc资料.ppt(105页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第十章 数据采集虚拟仪器第十章数据采集与DAQmx分析第十章 数据采集缓冲(缓冲(BuffersBuffers)这里的缓冲指的是这里的缓冲指的是PCPC内存的一个区域(不是数内存的一个区域(不是数据采集卡上的据采集卡上的FIFOFIFO缓冲),它用来临时存放数据。缓冲),它用来临时存放数据。下列情况需要使用下列情况需要使用Buffer I/OBuffer I/O:需要采集或产生许多样本,其速率超过了实需要采集或产生许多样本,其速率超过了实际显示、存储到硬件,或实时分析的速度。际显示、存储到硬件,或实时分析的速度。需要连续采集或产生需要连续采集或产生ACAC数据(数据(1010样本秒),样本秒)

2、,并且要同时分析或显示某些数据。并且要同时分析或显示某些数据。采样周期必须准确、均匀地通过数据样本。采样周期必须准确、均匀地通过数据样本。下列情况可以不使用下列情况可以不使用Buffer I/OBuffer I/O:数据组短小,例如每秒只从两个通道之一采数据组短小,例如每秒只从两个通道之一采集一个数据点。集一个数据点。需要缩减存储器的开支。需要缩减存储器的开支。第十章 数据采集触发(触发(TriggeringTriggering):):触发器通常是一个数字或模拟信号,其状态可触发器通常是一个数字或模拟信号,其状态可确定动作的发生。触发有软件触发和硬件触发。确定动作的发生。触发有软件触发和硬件触

3、发。下列情况使用软件触发:下列情况使用软件触发:用户需要对所有采集操作有明确的控制,且用户需要对所有采集操作有明确的控制,且 事件定时不需要非常准确。事件定时不需要非常准确。下列情况使用硬件触发:下列情况使用硬件触发:采集事件定时需要非常准确。采集事件定时需要非常准确。用户需要削减软件开支。用户需要削减软件开支。采集事件需要与外部装置同步。采集事件需要与外部装置同步。第十章 数据采集10.1.2 10.1.2 数据采集卡的功能数据采集卡的功能 一个典型的数据采集卡的功能有模拟输入、一个典型的数据采集卡的功能有模拟输入、模拟输出、数字模拟输出、数字I/OI/O、计数器、计数器/计时器等。因此计时

4、器等。因此LabVIEWLabVIEW中中DAQDAQ模板设计也围绕这模板设计也围绕这4 4大功能组织。大功能组织。模拟输入是采集最基本的功能。它一般由模拟输入是采集最基本的功能。它一般由多路开关(多路开关(MUXMUX)、放大器、采样保持电路以及)、放大器、采样保持电路以及A/DA/D来实现,通过这些部分,一个模拟信号就可来实现,通过这些部分,一个模拟信号就可以转化为数字信号。以转化为数字信号。模拟输出通常是为采集系统提供激励。输模拟输出通常是为采集系统提供激励。输出信号受数模转换器(出信号受数模转换器(D/AD/A)的建立时间、转换)的建立时间、转换率、分辨率等因素影响。率、分辨率等因素影

5、响。第十章 数据采集 数字数字I/OI/O通常用来控制过程、产生测试信号、通常用来控制过程、产生测试信号、与外设通信等。它的重要参数包括:数字口路数与外设通信等。它的重要参数包括:数字口路数(lineline)、接收)、接收(发送发送)率、驱动能力等。一般率、驱动能力等。一般的数字的数字I/OI/O板卡均采用板卡均采用TTLTTL电平。需要强调的是,电平。需要强调的是,对大功率外部设备的驱动需要设计专门的信号处对大功率外部设备的驱动需要设计专门的信号处理装置。理装置。许多场合都要用到计数器,如精确时间控制许多场合都要用到计数器,如精确时间控制和脉冲信号产生等。计数器最重要的参数是分辨和脉冲信号

6、产生等。计数器最重要的参数是分辨率和时钟频率,分辨率越大,计数器位数越大,率和时钟频率,分辨率越大,计数器位数越大,计数值也越高。计数值也越高。第十章 数据采集10.1.3 DAQ VIs10.1.3 DAQ VIs的功能模板的功能模板 LabVIEWLabVIEW中中DAQ VIsDAQ VIs都包含在都包含在FunctionsData FunctionsData AcquisitionsAcquisitions子模板中。共包含子模板中。共包含6 6个子模板,每个子模板,每个子模板完成不同的数据采集任务。个子模板完成不同的数据采集任务。第十章 数据采集 各子模板的主要功能如下:各子模板的主要

7、功能如下:Analog Input子模板,完成模拟信号进行子模板,完成模拟信号进行A/DA/D转换,并采集到计算机;转换,并采集到计算机;Analog Output子模板子模板,将计算机产生的数将计算机产生的数字信号进行字信号进行D/AD/A转换,并输出;转换,并输出;Digital I/O子模板子模板,用于控制用于控制DAQDAQ设备的数设备的数字字I/O功能;功能;Counter子模板子模板,用于控制用于控制DAQDAQ设备的计数设备的计数器器功能;功能;Calibration and Configuration子模板子模板,用用于校准和配置于校准和配置DAQDAQ设备,用户较少用到该功能

8、;设备,用户较少用到该功能;Signal Conditioning子模板,将从温度传子模板,将从温度传感器或应变片中采集的模拟电压信号转化为相感器或应变片中采集的模拟电压信号转化为相应的应力单位或温度单位。应的应力单位或温度单位。第十章 数据采集10.1.4 DAQ VIs10.1.4 DAQ VIs的组织结构的组织结构 LabVIEW LabVIEW 中对于数据采集模块按照难易程度中对于数据采集模块按照难易程度做了分类做了分类。简易模入VIs中级模入VIs高级模入VIs通用模入VIs第十章 数据采集 简易简易VIs(Easy VIs)VIs(Easy VIs)该行的四个模块执行简单的该行的四

9、个模块执行简单的DAQDAQ操作。它们可以作操作。它们可以作为单独的为单独的VIVI,也可以作为,也可以作为subVIsubVI来使用。这些模块可来使用。这些模块可以自动发出错误警告信息,在对话框中你可以选择以自动发出错误警告信息,在对话框中你可以选择中断运行或忽略。但是比较复杂的应用需要使用下中断运行或忽略。但是比较复杂的应用需要使用下面的类型。面的类型。中级中级VIs(Intermediate VIs)VIs(Intermediate VIs)简易简易Easy VIsEasy VIs相比,中级相比,中级VIsVIs具有更多的硬件功能,具有更多的硬件功能,用户可以更加有效、更加灵活地开发应用

10、程序。在用户可以更加有效、更加灵活地开发应用程序。在Easy VIsEasy VIs里操作一个里操作一个AI InputAI Input,这里细分为,这里细分为AI AI Config,AI Start,AI Read,AI Single ScanConfig,AI Start,AI Read,AI Single Scan以及以及AI ClearAI Clear。它可以描述更加细致、复杂的操作。它可以描述更加细致、复杂的操作。第十章 数据采集 通用模入通用模入VIs(Utility VIs)VIs(Utility VIs)这里提供了三个常用的这里提供了三个常用的VIsVIs,AI Read O

11、ne ScanAI Read One Scan,AI Waveform ScanAI Waveform Scan,及,及AI Continuous ScanAI Continuous Scan。使用。使用一个一个VIVI就可以解决一个普通的就可以解决一个普通的DAQDAQ问题,方便但缺乏问题,方便但缺乏灵活性。灵活性。高级模入高级模入VIs(Advanced VIs)VIs(Advanced VIs)这些这些VIsVIs是是NI-DAQNI-DAQ数据采集软件的界面,是上面三数据采集软件的界面,是上面三种类型种类型VIsVIs的基础。一般情况下,用户不需要直接使的基础。一般情况下,用户不需要直

12、接使用这个功能。用这个功能。第十章 数据采集10.1.5 DAQ VIs10.1.5 DAQ VIs常用参数简介常用参数简介 LabVIEW LabVIEW 中通用中通用DAQDAQ参数的定义有:参数的定义有:设备号和任务号设备号和任务号(Device ID and Task ID)(Device ID and Task ID)在模拟在模拟I/OI/O、数字、数字I/OI/O以及计数器以及计数器VIsVIs中,每个中,每个设备都有唯一的编号,在配置设备都有唯一的编号,在配置DAODAO设备时,编号设备时,编号由用户指定。输出参数由用户指定。输出参数TaskIDTaskID是相同给特定的是相同给

13、特定的I/OI/O操作分配的一个唯一的编号,贯串以后操作分配的一个唯一的编号,贯串以后DAQDAQ操操作的始终。作的始终。通道(通道(ChannelsChannels)Analog Input Analog Input和和Analog Output VIsAnalog Output VIs中有一个中有一个输入参数叫通道输入参数叫通道(channels)(channels),用于指定,用于指定DAQDAQ读写读写操作的通道。数字操作的通道。数字I/OI/O和计数器和计数器VIsVIs中,也有类似中,也有类似参分别称为参分别称为Digital chanel listDigital chanel l

14、ist和和counter counter listlist。第十章 数据采集 通道命名通道命名(Channel Name Addressing)(Channel Name Addressing)当采用当采用DAQ Channel WizardDAQ Channel Wizard配置配置DAQDAQ卡的卡的I/OI/O通道时,可以在通道时,可以在channelschannels中输入一定物理意义中输入一定物理意义的名称来确定通道的地址。在的名称来确定通道的地址。在Easy VIsEasy VIs中,可中,可以在以在channelschannels参数的数组元素中的填写一个通参数的数组元素中的填写

15、一个通道的名称,也可将多个通道的名称写在一个元道的名称,也可将多个通道的名称写在一个元素中,编号之间用逗号隔开。素中,编号之间用逗号隔开。通道编号命名通道编号命名(Channel Number Addressing)(Channel Number Addressing)如果用户不使用通道名称来确定通道地址,如果用户不使用通道名称来确定通道地址,那么还可以在那么还可以在 channels channels中使用通道编号来确定中使用通道编号来确定通道的地址。可以将每个通道编号作为一个数通道的地址。可以将每个通道编号作为一个数组中的元素,也可以将多个通道编号写入一个组中的元素,也可以将多个通道编号写

16、入一个数组元素中,编号之间用逗号隔开。数组元素中,编号之间用逗号隔开。第十章 数据采集 I/O I/O范围设置范围设置(Limit Settings)(Limit Settings)Limit Settings Limit Settings 是指是指DAQDAQ卡所采集或输出的卡所采集或输出的模拟信号的最大模拟信号的最大/最小值。一对最大最小值。一对最大/最小值组最小值组成一个簇,每个通道对应一个簇,多个簇形成成一个簇,每个通道对应一个簇,多个簇形成一个簇的数组。一个簇的数组。采集数据的构成采集数据的构成 在多通道数据采集中,采集到的数据以二维在多通道数据采集中,采集到的数据以二维数组的形式保

17、存。即以行数组的形式保存。即以行(row)(row)或以列或以列(column)(column)的形式来组织二维数组中的数据。的形式来组织二维数组中的数据。第十章 数据采集 扫描次数扫描次数(Numbers of Scan to Acquire)(Numbers of Scan to Acquire)用户指定的一组通道进行数据采集的次数。用户指定的一组通道进行数据采集的次数。采样点数采样点数(Number of Samples)(Number of Samples)对一个通道采样点的个数。对一个通道采样点的个数。扫描速率扫描速率(Scan Rate)(Scan Rate)一秒内完成的一组指定通

18、道数据采集的次数,一秒内完成的一组指定通道数据采集的次数,它决定了一定时间内所进行数据采集次数的总它决定了一定时间内所进行数据采集次数的总合。合。第十章 数据采集10.2 DAQ10.2 DAQ卡的安装与配置卡的安装与配置10.2.1 10.2.1 安装安装PCIPCI6024E6024E数据采集卡数据采集卡 PCI PCI6024E 6024E 数据采集卡是一块基于数据采集卡是一块基于3232位位PCIPCI总线总线的多功能数据采集控制卡,支持的多功能数据采集控制卡,支持DMADMA方式和双缓冲方式和双缓冲区模式,保证了实时信号的不间断采集和存储。区模式,保证了实时信号的不间断采集和存储。它

19、支持它支持8 8路单极和路单极和4 4路差动模拟输入,信号为路差动模拟输入,信号为0 010V10V和和-10-1010V10V;2 2路独立的路独立的D/AD/A输出通道;输出通道;1616线线TTLTTL数字数字I/OI/O;3 3各各1616位的定时计数器等多种功能。位的定时计数器等多种功能。将将PCIPCI6024E 6024E 数据采集卡插到计算机主板上的数据采集卡插到计算机主板上的一个空闲一个空闲PCIPCI插槽中,接好各种附件,包括一条插槽中,接好各种附件,包括一条5050芯的数据线和一个转接板。芯的数据线和一个转接板。第十章 数据采集10.2.2 PCI10.2.2 PCI60

20、24E6024E卡卡I/OI/O配置配置 PCI PCI6024E6024E卡同卡同NINI公司的绝大部分数据采集公司的绝大部分数据采集卡一样是即插即用型的设备,硬件正确安装后,卡一样是即插即用型的设备,硬件正确安装后,如果机器安装了如果机器安装了LabVIEWLabVIEW和和NINIDAQDAQ,就会出现,就会出现在在Measurement&Automation ExplorerMeasurement&Automation Explorer的的ConfigurationMysystem Devices and ConfigurationMysystem Devices and Interf

21、acesInterfaces列表中。列表中。在设备名在设备名PCI-6024EPCI-6024E上单击右键,就会出现如上单击右键,就会出现如下对话框下对话框.第十章 数据采集 右键对话框右键对话框.第十章 数据采集 Properties Properties配置对话框配置对话框.第十章 数据采集自我测试自我测试.第十章 数据采集单击单击“Test Panels”“Test Panels”按钮出现测试面板。按钮出现测试面板。第十章 数据采集AOAO测试测试.第十章 数据采集DI/ODI/O测试测试.第十章 数据采集Counter I/O Counter I/O 测试测试.第十章 数据采集复位设备

22、复位设备.第十章 数据采集创建任务。创建任务。第十章 数据采集10.2.3 PCI10.2.3 PCI6024E6024E卡通道配置卡通道配置 在使用在使用DAQDAQ设备的模拟设备的模拟I/OI/O或数字或数字I/OI/O功能时,必须功能时,必须首先配置设备的通道。在首先配置设备的通道。在Measurement&Measurement&Automation ExplorerAutomation Explorer中配置通道步骤如下:中配置通道步骤如下:右键单击右键单击Data Neighbourhood图标,选择弹图标,选择弹出菜单中的出菜单中的Create New对话框。对话框。第十章 数据

23、采集第十章 数据采集 在弹出的在弹出的Create New Channel对话框中,选择对话框中,选择NI-DAQmx Task,出现如下界面,选择通道类型,出现如下界面,选择通道类型Analog Input,单击下一步。,单击下一步。第十章 数据采集 选择传感器或测量信号类型,单击下一步。选择传感器或测量信号类型,单击下一步。第十章 数据采集 选择选择tunnel,单击下一步。,单击下一步。第十章 数据采集 输入任务名称,单击输入任务名称,单击Finish完成。完成。第十章 数据采集 双击建立好的任务,进行双击建立好的任务,进行Voltage设置。设置。第十章 数据采集 按按TestTest

24、,出现,出现testtest窗口。窗口。第十章 数据采集 Add Tunnel Add Tunnel。第十章 数据采集 通道连接方式。通道连接方式。第十章 数据采集10.3 10.3 模拟输入模拟输入10.3.1 10.3.1 简易模拟输入(简易模拟输入(Ease Analog VIsEase Analog VIs)这是这是LabVIEWLabVIEW提供的一组标准的、简单易用的采提供的一组标准的、简单易用的采集集 VI VI。个。个VIVI的功能为:的功能为:从指定通道获得一个样本。从指定通道获得一个样本。从通道组获得一个样本。这些样本返回到一个从通道组获得一个样本。这些样本返回到一个样本数

25、组样本数组 由一个通道得到一个波形,这些样本返回到一由一个通道得到一个波形,这些样本返回到一个个waveform waveform 数组。数组。从通道组获得一个波形。这些样本返回到一个从通道组获得一个波形。这些样本返回到一个波形的维数组,顺序由通道号和采样周期决定。波形的维数组,顺序由通道号和采样周期决定。通道数据的每个点占列,时间增量由行决定通道数据的每个点占列,时间增量由行决定 第十章 数据采集例例10.3.1 10.3.1 采集一个直流电压信号采集一个直流电压信号 准备一个直流电源(例如准备一个直流电源(例如0.5V0.5V)作为信号源)作为信号源连接到数据采集卡的连接到数据采集卡的0

26、0通道模入端。通道模入端。构造前面板和框图如下面所示。构造前面板和框图如下面所示。运行程序。可得到运行程序。可得到MeterMeter指示指示0.5V0.5V。第十章 数据采集例例10.3.2 10.3.2 多通道数据采集多通道数据采集 准备一个方波信号源和一个正弦波信号源。准备一个方波信号源和一个正弦波信号源。分别连接到模入通道和。分别连接到模入通道和。设置前面板与框图如下。设置前面板与框图如下。设置设置scanscan速率、通道号、每通道样本数如前速率、通道号、每通道样本数如前面板所示。面板所示。运行该程序。运行该程序。保存为保存为Acquire Multiple Channels.viA

27、cquire Multiple Channels.vi。该程序是无缓冲、软件触发的。该程序是无缓冲、软件触发的。第十章 数据采集第十章 数据采集10.3.2 10.3.2 中级模入中级模入(Intermediate Analog Input)(Intermediate Analog Input)上面介绍的简单模入在每一次调用上面介绍的简单模入在每一次调用AI Sample AI Sample ChannelChannel,都必须进行硬件设置,告诉它采样率等。,都必须进行硬件设置,告诉它采样率等。一个典型的情况是连续采集,需要在程序中采用循一个典型的情况是连续采集,需要在程序中采用循环结构,按照

28、简单模入,每次采集前都在设置参数,环结构,按照简单模入,每次采集前都在设置参数,不仅多余,而且造成了采集过程的不连续。不仅多余,而且造成了采集过程的不连续。中级模入有更好的功能与灵活性,可以更有效地开中级模入有更好的功能与灵活性,可以更有效地开发你的应用。它的特点包括控制内部采样率,使用发你的应用。它的特点包括控制内部采样率,使用外部触发,执行连续外部触发等。外部触发,执行连续外部触发等。第十章 数据采集 中级模入有中级模入有5 5个个VIVI,应该注意:其大量输入、输,应该注意:其大量输入、输出端子中的部分内容一般是不必理会的。有效地使出端子中的部分内容一般是不必理会的。有效地使用这些用这些

29、VIVI只需要关注你需要的端子。只需要关注你需要的端子。AI ConfigAI Config对指定的通道设置模入操作,包括硬件、对指定的通道设置模入操作,包括硬件、计算机内计算机内bufferbuffer的分配。常用的端子有:的分配。常用的端子有:Device Device采集卡的设备号。采集卡的设备号。Channel Channel指定模入通道号的串数组。指定模入通道号的串数组。Intput limit Intput limit指定输入信号的范围。指定输入信号的范围。Buffer size Buffer size单位是单位是scanscan,用于控制采集数据,用于控制采集数据计算机内存的大小

30、。计算机内存的大小。Interchannel delay Interchannel delay扫描间隔设置。缺省值为扫描间隔设置。缺省值为-1-1。第十章 数据采集 AI Start AI Start启动带缓冲的模入操作。它控制数据采启动带缓冲的模入操作。它控制数据采集速率,采集点的数目,及使用任何硬件触发的选集速率,采集点的数目,及使用任何硬件触发的选择。它的两个重要输入是:择。它的两个重要输入是:Scan rate(scan/sec)Scan rate(scan/sec)对每个通道采集的每秒对每个通道采集的每秒扫描次数。扫描次数。Number of scans to acquire Num

31、ber of scans to acquire对通道列表的扫对通道列表的扫描次数。描次数。AI Read AI Read从被从被AI ConfigAI Config分配的缓冲读取数据。分配的缓冲读取数据。它能够控制由缓冲读取的点数,读取数据在缓冲中它能够控制由缓冲读取的点数,读取数据在缓冲中的位置,以及是否返回二进制数或标度的电压数。的位置,以及是否返回二进制数或标度的电压数。它的输出是一个维数组,其中每一列数据对应于它的输出是一个维数组,其中每一列数据对应于通道列表中的一个通道。通道列表中的一个通道。第十章 数据采集 AI Single Scan AI Single Scan返回一个扫描数据

32、。它的电压返回一个扫描数据。它的电压数据输出是由通道列表中的每个通道读出的电压数数据输出是由通道列表中的每个通道读出的电压数据。使用这个据。使用这个VIVI仅与仅与AI ConfigAI Config有关联,不需要有关联,不需要AI AI StartStart和和AI ReadAI Read。AI Clear AI Clear清除模入操作、计算机中分配的缓冲、清除模入操作、计算机中分配的缓冲、释放所有数据采集卡的资源,例如计数器。释放所有数据采集卡的资源,例如计数器。当你设置一个模入应用时,首先使用的当你设置一个模入应用时,首先使用的VIVI总是总是AI AI ConfigConfig。AI

33、ConfigAI Config会产生一个会产生一个taskIDtaskID和和Error Error clustercluster(出错信息簇)。所有别的模入(出错信息簇)。所有别的模入VIVI接受这接受这个个taskIDtaskID以识别操作的设备和通道,并且在操作完以识别操作的设备和通道,并且在操作完成后输出一个成后输出一个taskIDtaskID。因为。因为taskIDtaskID是一个输入并向是一个输入并向另一个模入另一个模入VIVI输出,所以该参数形成了采集输出,所以该参数形成了采集 VI VI之之间的一个关联数据。间的一个关联数据。第十章 数据采集例例10.3.2 10.3.2 多

34、通道波形的连续采集多通道波形的连续采集 从通道、两个通道连续采集一个频率大从通道、两个通道连续采集一个频率大约为约为2Hz2Hz的正弦信号和方波信号。的正弦信号和方波信号。程序运行中注意观察程序运行中注意观察scan backlogscan backlog的指示,的指示,如果显示数值越来越大,最后超过如果显示数值越来越大,最后超过Buffer Buffer sizesize,则程序出错,并自动停止运行。但在这,则程序出错,并自动停止运行。但在这个程序中出现的可能性并不大,因为程序中个程序中出现的可能性并不大,因为程序中Read VIRead VI的的scans to read at times

35、cans to read at time的值是设定的值是设定值与前次循环时缓冲区的数据个数值与前次循环时缓冲区的数据个数scan scan backlogbacklog中的大者。中的大者。第十章 数据采集第十章 数据采集第十章 数据采集 这个简化了的框图上我们可以更加清晰地看出中这个简化了的框图上我们可以更加清晰地看出中级模入的处理框图,无疑,这个流程更加合理,它级模入的处理框图,无疑,这个流程更加合理,它把采集的初始化与结束处理放在了循环之外。把采集的初始化与结束处理放在了循环之外。第十章 数据采集10.4 10.4 模拟输出模拟输出10.4.1 10.4.1 简易模出简易模出(Easy A

36、nalog Output)(Easy Analog Output)与简易模入类似,简易模出也提供了个模块,与简易模入类似,简易模出也提供了个模块,分别对应于单(多)通道输出波形或电压数据。分别对应于单(多)通道输出波形或电压数据。例例10.4.1 10.4.1 产生一个模出电平产生一个模出电平。第十章 数据采集运行该程序,可以看到表的输出将指示。这个指运行该程序,可以看到表的输出将指示。这个指示并非模出,为了看到模出,可以使用一块数字万示并非模出,为了看到模出,可以使用一块数字万用表直接测量用表直接测量DAC0 OUTDAC0 OUT。你会发现万用表的指示一。你会发现万用表的指示一直维持在直维

37、持在V V,尽管程序早已执行完了。,尽管程序早已执行完了。第十章 数据采集例例10.4.2 10.4.2 产生一个模出波形产生一个模出波形。运行该程序,可以使用一块数运行该程序,可以使用一块数字万用表的直流电压档直接测字万用表的直流电压档直接测量量DAC0 OUTDAC0 OUT。你会发现当初相。你会发现当初相位为时,万用表的指示是,位为时,万用表的指示是,当初相位为当初相位为9090度时,万用表的度时,万用表的指示是指示是1 1。这表明该程序输出的。这表明该程序输出的不是一个连续不断的波形,仅不是一个连续不断的波形,仅仅是一个或若干个整周期的波仅是一个或若干个整周期的波形。模出模块在结束操作

38、后并形。模出模块在结束操作后并没有清复位,一直维持在最没有清复位,一直维持在最后一刻的电平上。如果希望产后一刻的电平上。如果希望产生一个连续不断的波形,需要生一个连续不断的波形,需要使用下面的较复杂的中级函数使用下面的较复杂的中级函数模块。模块。第十章 数据采集10.4.2 10.4.2 中级模出中级模出(Intermediate Analog Output)(Intermediate Analog Output)中级模出有中级模出有5 5个模块个模块。AO Config AO Config对指定的通道设置模出操作,包括硬对指定的通道设置模出操作,包括硬件、计算机内件、计算机内bufferbu

39、ffer的分配。常用的端子有:的分配。常用的端子有:Device Device采集卡的设备号。采集卡的设备号。Channel Channel指定模出通道号的串数组。指定模出通道号的串数组。Limit settings Limit settings指定输出信号的范围。指定输出信号的范围。taskID taskID用于所有后来的模出用于所有后来的模出VIVI以规定操作的设以规定操作的设备和通道。备和通道。第十章 数据采集 AO Write AO Write以电压数据的方式写数据到模出数据缓以电压数据的方式写数据到模出数据缓冲区。它是一个维数组,其中每一列数据对应于冲区。它是一个维数组,其中每一列数

40、据对应于通道列表中的一个通道。注意:通常其他函数为其通道列表中的一个通道。注意:通常其他函数为其准备的波形数据是一个维数组,且数据分布在一准备的波形数据是一个维数组,且数据分布在一行中,这里需要将其行中,这里需要将其“虚扩虚扩”为二维数组,并做一为二维数组,并做一次转置。次转置。AO Start AO Start 启动带缓冲的模出操作。启动带缓冲的模出操作。Update Update rate(scan/sec)rate(scan/sec)是每秒发生的更新数的个数。如果是每秒发生的更新数的个数。如果你将写入你将写入Number of buffer iterationsNumber of buf

41、fer iterations端子,端子,则卡将连续输出给缓冲,直到运行则卡将连续输出给缓冲,直到运行AO ClearAO Clear功能。功能。第十章 数据采集 AO Wait AO Wait 在返回之前一直等待直到波形发生任务在返回之前一直等待直到波形发生任务完成。它的电压数据输出是由通道列表中的每个通完成。它的电压数据输出是由通道列表中的每个通道读出的电压数据。使用这个道读出的电压数据。使用这个VIVI仅与仅与AO ConfigAO Config有有关联,不需要关联,不需要AO StartAO Start和和AO WriteAO Write。AO Clear AO Clear清除模出操作、

42、计算机中分配的缓清除模出操作、计算机中分配的缓冲、释放所有数据采集卡的资源,例如计数器。冲、释放所有数据采集卡的资源,例如计数器。当你设置一个模出应用时,首先使用的当你设置一个模出应用时,首先使用的VIVI总是总是AO AO ConfigConfig。AO ConfigAO Config会产生一个会产生一个taskIDtaskID和和Error Error clustercluster(出错信息簇)。所有别的模出(出错信息簇)。所有别的模出VIVI接受这接受这个个taskIDtaskID以识别操作的设备和通道,并且在操作完以识别操作的设备和通道,并且在操作完成后输出一个成后输出一个taskID

43、taskID。该参数形成了数据输出。该参数形成了数据输出 VI VI之间的一个关联数据。之间的一个关联数据。第十章 数据采集例例10.4.3 10.4.3 产生一个连续的正弦波形产生一个连续的正弦波形。上面的框图中需要说明以下几点:上面的框图中需要说明以下几点:由于正弦波发生器的输出是一个由于正弦波发生器的输出是一个waveform waveform 数据类型,首先将数据类型,首先将其中的其中的Y Y数据提出,然后将它扩充为一个二维数组,再经转置后数据提出,然后将它扩充为一个二维数组,再经转置后才可连接到才可连接到AO Write AO Write。在在AO ConfigAO Config中主

44、要是设置了中主要是设置了BufferBuffer,这对于连续输出是必须,这对于连续输出是必须的,其它都选默认值。的,其它都选默认值。第十章 数据采集产生的连续正弦波形产生的连续正弦波形:第十章 数据采集10.5 10.5 DAQmxDAQmx10.5.1 10.5.1 NI-DAQmxNI-DAQmx的发展与特点的发展与特点 1 NI-DAQmx 1 NI-DAQmx的发展的发展第十章 数据采集 2 2 NI-DAQmxNI-DAQmx的特点的特点 第十章 数据采集 多模态多模态VIVI 以前要用以前要用 Digital Read Digital Read 函数从数字线读取数函数从数字线读取数

45、据和用据和用 Analog Read Analog Read 函数读取模拟数据,而现在函数读取模拟数据,而现在可以用同一个函数读取这两种数据。象这样的函可以用同一个函数读取这两种数据。象这样的函数,称之为多态函数。数,称之为多态函数。现在不用学习四种不同的方法来为现在不用学习四种不同的方法来为 NI DAQ NI DAQ 设设备的四种类型的操作(模拟输入与输出、数字备的四种类型的操作(模拟输入与输出、数字 I/OI/O、计数器、计数器/定时器)编写程序了,而只需学习定时器)编写程序了,而只需学习一种方法,然后重复使用这个方法来为其它的操一种方法,然后重复使用这个方法来为其它的操作编写程序即可。

46、作编写程序即可。第十章 数据采集第十章 数据采集 DAQ Assistant DAQ Assistant 为了进一步简化为了进一步简化 DAQ DAQ 编程,编程,DAQmxDAQmx提供一个新提供一个新的交互式测量工具的交互式测量工具DAQ DAQ 助手。助手。DAQ DAQ 助手以图助手以图形化的方式配置形化的方式配置DAQDAQ操作。操作。因为因为 DAQ DAQ助手是完全以菜单方式驱动的,不需助手是完全以菜单方式驱动的,不需要任何编程,所以很少出错,并且还大大减少进要任何编程,所以很少出错,并且还大大减少进行测量的时间。只需简单的鼠标点击,根据配置行测量的时间。只需简单的鼠标点击,根据

47、配置就可以自动生成代码,这可以作为在就可以自动生成代码,这可以作为在NINI应用软件应用软件程序中实现复杂操作的一个起点。程序中实现复杂操作的一个起点。第十章 数据采集第十章 数据采集利用利用DAQDAQ助手,可以:助手,可以:创建和编辑任务和虚拟通道;创建和编辑任务和虚拟通道;添加虚拟通道至任务;添加虚拟通道至任务;创建并编辑量程;创建并编辑量程;测试您的配置;测试您的配置;保存您的配置;保存您的配置;在您的在您的NINI应用软件中生成代码以在您的应用程应用软件中生成代码以在您的应用程 序中使用;序中使用;观察您的传感器的连接图观察您的传感器的连接图。第十章 数据采集 多线程多线程 NI-D

48、AQmx NI-DAQmx是多线程驱动程序,所以编程控制并是多线程驱动程序,所以编程控制并发的发的I/OI/O操作变得更加容易。不共用一台设备的同操作变得更加容易。不共用一台设备的同一个功能子块(如计数器、模拟输入、模拟输出一个功能子块(如计数器、模拟输入、模拟输出和数字和数字I/OI/O等)的两个操作可以同时执行。等)的两个操作可以同时执行。第十章 数据采集 更简化的同步功能更简化的同步功能 传统传统NI-DAQNI-DAQ中的同步设备和操作会相当复杂。中的同步设备和操作会相当复杂。通常来说,必须为穿过通常来说,必须为穿过RTSIRTSI总线或总线或PFIPFI线路的信号线路的信号明确指定路

49、由,而明确指定路由,而NI-DAQmxNI-DAQmx免除了为信号指定路免除了为信号指定路由的必要。只须选择希望同步的信号,所有的路由的必要。只须选择希望同步的信号,所有的路由工作由由工作由NI-DAQmxNI-DAQmx为您完成为您完成。第十章 数据采集10.5.2 10.5.2 NI-DAQmxNI-DAQmx的十个函数的十个函数 1.1.DAQ Assistant(DAQ Assistant(数据采集助手数据采集助手)DAQ Assistant DAQ Assistant 是一个图形化的界面,用于交是一个图形化的界面,用于交互式地创建、编辑和运行互式地创建、编辑和运行NI-DAQmxNI

50、-DAQmx虚拟通道和任虚拟通道和任务。务。一个一个NI-DAQmxNI-DAQmx虚拟通道包括一个虚拟通道包括一个DAQDAQ设备上的设备上的物理通道和对这个物理通道的配置信息,例如输物理通道和对这个物理通道的配置信息,例如输入范围和自定义缩放比例。入范围和自定义缩放比例。一个一个 NI-DAQmx NI-DAQmx任务是虚拟通道、定时和触发任务是虚拟通道、定时和触发信息、以及其他与采集或生成相关属性的组合。信息、以及其他与采集或生成相关属性的组合。在下图中,在下图中,DAQ ASSISTANTDAQ ASSISTANT配置成完成一个物配置成完成一个物理量的测量。理量的测量。第十章 数据采集

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁