虚拟仪器第十章数据采集与DAQmxPPT课件

上传人:工**** 文档编号:567949894 上传时间:2024-07-22 格式:PPT 页数:105 大小:1.77MB
返回 下载 相关 举报
虚拟仪器第十章数据采集与DAQmxPPT课件_第1页
第1页 / 共105页
虚拟仪器第十章数据采集与DAQmxPPT课件_第2页
第2页 / 共105页
虚拟仪器第十章数据采集与DAQmxPPT课件_第3页
第3页 / 共105页
虚拟仪器第十章数据采集与DAQmxPPT课件_第4页
第4页 / 共105页
虚拟仪器第十章数据采集与DAQmxPPT课件_第5页
第5页 / 共105页
点击查看更多>>
资源描述

《虚拟仪器第十章数据采集与DAQmxPPT课件》由会员分享,可在线阅读,更多相关《虚拟仪器第十章数据采集与DAQmxPPT课件(105页珍藏版)》请在金锄头文库上搜索。

1、第十章 数据采集10.1 10.1 数据采集的基本概念数据采集的基本概念10.2 DAQ10.2 DAQ卡的安装与配置卡的安装与配置10.3 10.3 模拟输入模拟输入10.4 10.4 模拟输出模拟输出10.5 DAQmx10.5 DAQmx第十章第十章 数据采集数据采集第十章 数据采集10.1 10.1 数据采集的基本概念数据采集的基本概念10.1.1 10.1.1 数据采集系统的构成数据采集系统的构成 上图表示了数据采集的结构。在数据采集之前,程序将对上图表示了数据采集的结构。在数据采集之前,程序将对采集板卡初始化,板卡上和内存中的采集板卡初始化,板卡上和内存中的BufferBuffer

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

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

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

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

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

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

8、 数据采集 各子模板的主要功能如下:各子模板的主要功能如下: Analog Input子模板,完成模拟信号进行子模板,完成模拟信号进行A/DA/D转换,并采集到计算机;转换,并采集到计算机; Analog Output子模板子模板, ,将计算机产生的将计算机产生的数字信号进行数字信号进行D/AD/A转换,并输出;转换,并输出; Digital I/O子模板子模板, ,用于控制用于控制DAQDAQ设备的数设备的数字字I/O功能;功能; Counter子模板子模板, ,用于控制用于控制DAQDAQ设备的计数设备的计数器器功能;功能; Calibration and Configuration子模板

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

10、s (Easy VIs)VIs (Easy VIs) 该行的四个模块执行简单的该行的四个模块执行简单的DAQDAQ操作。它们可以作操作。它们可以作为单独的为单独的VIVI,也可以作为,也可以作为subVIsubVI来使用。这些模块可来使用。这些模块可以自动发出错误警告信息,在对话框中你可以选择以自动发出错误警告信息,在对话框中你可以选择中断运行或忽略。但是比较复杂的应用需要使用下中断运行或忽略。但是比较复杂的应用需要使用下面的类型。面的类型。 中级中级VIs (Intermediate VIs)VIs (Intermediate VIs) 简易简易Easy VIsEasy VIs相比,中级相比

11、,中级VIsVIs具有更多的硬件功能,具有更多的硬件功能,用户可以更加有效、更加灵活地开发应用程序。在用户可以更加有效、更加灵活地开发应用程序。在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 VI

12、s)VIs (Utility VIs) 这里提供了三个常用的这里提供了三个常用的VIsVIs,AI Read One 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数据采集软件的界面,是上

13、面三数据采集软件的界面,是上面三种类型种类型VIsVIs的基础。一般情况下,用户不需要直接使的基础。一般情况下,用户不需要直接使用这个功能。用这个功能。第十章 数据采集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中,每个中,每个设备都有唯一的编号,在配置设备都有唯一的编号,

14、在配置DAODAO设备时,编号设备时,编号由用户指定。输出参数由用户指定。输出参数TaskIDTaskID是相同给特定的是相同给特定的I/OI/O操作分配的一个唯一的编号,贯串以后操作分配的一个唯一的编号,贯串以后DAQDAQ操操作的始终。作的始终。 通道(通道(ChannelsChannels) Analog Input Analog Input和和Analog Output VIsAnalog Output VIs中有一个中有一个输入参数叫通道输入参数叫通道 (channels) (channels),用于指定,用于指定DAQDAQ读写读写操作的通道。数字操作的通道。数字I/OI/O和计数

15、器和计数器VIsVIs中,也有类似中,也有类似参分别称为参分别称为Digital chanel listDigital chanel list和和counter counter listlist。 第十章 数据采集 通道命名通道命名(Channel Name Addressing)(Channel Name Addressing) 当采用当采用DAQ Channel WizardDAQ Channel Wizard配置配置DAQDAQ卡的卡的I/OI/O通道时,可以在通道时,可以在channelschannels中输入一定物理意义中输入一定物理意义的名称来确定通道的地址。在的名称来确定通道的地

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

17、。可以将每个通道编号作为一个数通道的地址。可以将每个通道编号作为一个数组中的元素,也可以将多个通道编号写入一个组中的元素,也可以将多个通道编号写入一个数组元素中,编号之间用逗号隔开。数组元素中,编号之间用逗号隔开。第十章 数据采集 I/O I/O范围设置范围设置(Limit Settings)(Limit Settings) Limit Settings Limit Settings 是指是指DAQDAQ卡所采集或输出的卡所采集或输出的模拟信号的最大模拟信号的最大/ /最小值。一对最大最小值。一对最大/ /最小值组最小值组成一个簇,每个通道对应一个簇,多个簇形成成一个簇,每个通道对应一个簇,多

18、个簇形成一个簇的数组。一个簇的数组。 采集数据的构成采集数据的构成 在多通道数据采集中,采集到的数据以二维在多通道数据采集中,采集到的数据以二维数组的形式保存。即以行数组的形式保存。即以行(row)(row)或以列或以列(column)(column)的形式来组织二维数组中的数据。的形式来组织二维数组中的数据。第十章 数据采集 扫描次数扫描次数(Numbers of Scan to Acquire)(Numbers of Scan to Acquire) 用户指定的一组通道进行数据采集的次数。用户指定的一组通道进行数据采集的次数。 采样点数采样点数(Number of Samples)(Num

19、ber of Samples) 对一个通道采样点的个数。对一个通道采样点的个数。 扫描速率扫描速率(Scan Rate)(Scan Rate) 一秒内完成的一组指定通道数据采集的次数,一秒内完成的一组指定通道数据采集的次数,它决定了一定时间内所进行数据采集次数的总它决定了一定时间内所进行数据采集次数的总合。合。第十章 数据采集10.2 DAQ10.2 DAQ卡的安装与配置卡的安装与配置10.2.1 10.2.1 安装安装PCIPCI6024E6024E数据采集卡数据采集卡 PCI PCI6024E 6024E 数据采集卡是一块基于数据采集卡是一块基于3232位位PCIPCI总线总线的多功能数据

20、采集控制卡,支持的多功能数据采集控制卡,支持DMADMA方式和双缓冲方式和双缓冲区模式,保证了实时信号的不间断采集和存储。区模式,保证了实时信号的不间断采集和存储。 它支持它支持8 8路单极和路单极和4 4路差动模拟输入,信号为路差动模拟输入,信号为0 010V10V和和-10-1010V10V;2 2路独立的路独立的D/AD/A输出通道;输出通道;1616线线TTLTTL数字数字I/OI/O;3 3各各1616位的定时计数器等多种功能。位的定时计数器等多种功能。 将将PCIPCI6024E 6024E 数据采集卡插到计算机主板上的数据采集卡插到计算机主板上的一个空闲一个空闲PCIPCI插槽中

21、,接好各种附件,包括一条插槽中,接好各种附件,包括一条5050芯的数据线和一个转接板。芯的数据线和一个转接板。第十章 数据采集10.2.2 PCI10.2.2 PCI6024E6024E卡卡I/OI/O配置配置 PCI PCI6024E6024E卡同卡同NINI公司的绝大部分数据采集公司的绝大部分数据采集卡一样是即插即用型的设备,硬件正确安装后,卡一样是即插即用型的设备,硬件正确安装后,如果机器安装了如果机器安装了LabVIEWLabVIEW和和NINIDAQDAQ,就会出现,就会出现在在Measurement & Automation ExplorerMeasurement & Automa

22、tion Explorer的的ConfigurationMysystem Devices and ConfigurationMysystem Devices and InterfacesInterfaces列表中。列表中。 在设备名在设备名PCI-6024EPCI-6024E上单击右键,就会出现如上单击右键,就会出现如下对话框下对话框. .第十章 数据采集 右键对话框右键对话框. .第十章 数据采集 Properties Properties配置对话框配置对话框. .第十章 数据采集自我测试自我测试. .第十章 数据采集单击单击“Test Panels”“Test Panels”按钮出现测试面

23、板。按钮出现测试面板。第十章 数据采集AOAO测试测试. .第十章 数据采集DI/ODI/O测试测试. .第十章 数据采集Counter I/O Counter I/O 测试测试. .第十章 数据采集复位设备复位设备. .第十章 数据采集创建任务。创建任务。第十章 数据采集10.2.3 PCI10.2.3 PCI6024E6024E卡通道配置卡通道配置 在使用在使用DAQDAQ设备的模拟设备的模拟I/OI/O或数字或数字I/OI/O功能时,必须功能时,必须首先配置设备的通道。在首先配置设备的通道。在Measurement & Measurement & Automation ExplorerA

24、utomation Explorer中配置通道步骤如下:中配置通道步骤如下: 右键单击右键单击Data Neighbourhood图标,选择弹图标,选择弹出菜单中的出菜单中的Create New对话框。对话框。第十章 数据采集第十章 数据采集 在弹出的在弹出的Create New Channel对话框中,选择对话框中,选择NI-DAQmx Task,出现如下界面,选择通道类型,出现如下界面,选择通道类型Analog Input,单击下一步。,单击下一步。第十章 数据采集 选择传感器或测量信号类型,单击下一步。选择传感器或测量信号类型,单击下一步。第十章 数据采集 选择选择tunnel,单击下一

25、步。,单击下一步。第十章 数据采集 输入任务名称,单击输入任务名称,单击Finish完成。完成。第十章 数据采集 双击建立好的任务,进行双击建立好的任务,进行Voltage设置。设置。第十章 数据采集 按按TestTest,出现,出现testtest窗口。窗口。 第十章 数据采集 Add Tunnel Add Tunnel。 第十章 数据采集 通道连接方式。通道连接方式。 第十章 数据采集10.3 10.3 模拟输入模拟输入10.3.1 10.3.1 简易模拟输入(简易模拟输入(Ease Analog VIsEase Analog VIs) 这是这是LabVIEWLabVIEW提供的一组标准的

26、、简单易用的采提供的一组标准的、简单易用的采集集 VI VI。个。个VIVI的功能为:的功能为: 从指定通道获得一个样本。从指定通道获得一个样本。 从通道组获得一个样本。这些样本返回到一个从通道组获得一个样本。这些样本返回到一个样本数组样本数组 由一个通道得到一个波形,这些样本返回到一由一个通道得到一个波形,这些样本返回到一个个waveform waveform 数组。数组。 从通道组获得一个波形。这些样本返回到一个从通道组获得一个波形。这些样本返回到一个波形的维数组,顺序由通道号和采样周期决定。波形的维数组,顺序由通道号和采样周期决定。通道数据的每个点占列,时间增量由行决定通道数据的每个点占

27、列,时间增量由行决定 第十章 数据采集例例10.3.1 10.3.1 采集一个直流电压信号采集一个直流电压信号 准备一个直流电源(例如准备一个直流电源(例如0.5V0.5V)作为信号源)作为信号源连接到数据采集卡的连接到数据采集卡的0 0通道模入端。通道模入端。 构造前面板和框图如下面所示。构造前面板和框图如下面所示。 运行程序。可得到运行程序。可得到MeterMeter指示指示0.5V0.5V。 第十章 数据采集例例10.3.2 10.3.2 多通道数据采集多通道数据采集 准备一个方波信号源和一个正弦波信号源。准备一个方波信号源和一个正弦波信号源。分别连接到模入通道和。分别连接到模入通道和。

28、 设置前面板与框图如下。设置前面板与框图如下。 设置设置scanscan速率、通道号、每通道样本数如前速率、通道号、每通道样本数如前面板所示。面板所示。 运行该程序。运行该程序。 保存为保存为Acquire Multiple Channels.viAcquire Multiple Channels.vi。 该程序是无缓冲、软件触发的。该程序是无缓冲、软件触发的。第十章 数据采集第十章 数据采集10.3.2 10.3.2 中级模入中级模入(Intermediate Analog Input)(Intermediate Analog Input) 上面介绍的简单模入在每一次调用上面介绍的简单模入在

29、每一次调用AI Sample AI Sample ChannelChannel,都必须进行硬件设置,告诉它采样率等。,都必须进行硬件设置,告诉它采样率等。一个典型的情况是连续采集,需要在程序中采用循一个典型的情况是连续采集,需要在程序中采用循环结构,按照简单模入,每次采集前都在设置参数,环结构,按照简单模入,每次采集前都在设置参数,不仅多余,而且造成了采集过程的不连续。不仅多余,而且造成了采集过程的不连续。 中级模入有更好的功能与灵活性,可以更有效地开中级模入有更好的功能与灵活性,可以更有效地开发你的应用。它的特点包括控制内部采样率,使用发你的应用。它的特点包括控制内部采样率,使用外部触发,执

30、行连续外部触发等。外部触发,执行连续外部触发等。第十章 数据采集 中级模入有中级模入有5 5个个VIVI,应该注意:其大量输入、输,应该注意:其大量输入、输出端子中的部分内容一般是不必理会的。有效地使出端子中的部分内容一般是不必理会的。有效地使用这些用这些VIVI只需要关注你需要的端子。只需要关注你需要的端子。 AI ConfigAI Config对指定的通道设置模入操作,包括硬件、对指定的通道设置模入操作,包括硬件、计算机内计算机内bufferbuffer的分配。常用的端子有:的分配。常用的端子有: Device Device采集卡的设备号。采集卡的设备号。 Channel Channel指

31、定模入通道号的串数组。指定模入通道号的串数组。 Intput limit Intput limit指定输入信号的范围。指定输入信号的范围。 Buffer size Buffer size单位是单位是scanscan,用于控制采集数据,用于控制采集数据计算机内存的大小。计算机内存的大小。 Interchannel delay Interchannel delay扫描间隔设置。缺省值为扫描间隔设置。缺省值为-1-1。第十章 数据采集 AI Start AI Start启动带缓冲的模入操作。它控制数据采启动带缓冲的模入操作。它控制数据采集速率,采集点的数目,及使用任何硬件触发的选集速率,采集点的数目

32、,及使用任何硬件触发的选择。它的两个重要输入是:择。它的两个重要输入是: Scan rate(scan/sec) Scan rate(scan/sec)对每个通道采集的每秒对每个通道采集的每秒扫描次数。扫描次数。 Number of scans to acquire Number of scans to acquire对通道列表的扫对通道列表的扫描次数。描次数。 AI Read AI Read从被从被AI ConfigAI Config分配的缓冲读取数据。分配的缓冲读取数据。它能够控制由缓冲读取的点数,读取数据在缓冲中它能够控制由缓冲读取的点数,读取数据在缓冲中的位置,以及是否返回二进制数或标

33、度的电压数。的位置,以及是否返回二进制数或标度的电压数。它的输出是一个维数组,其中每一列数据对应于它的输出是一个维数组,其中每一列数据对应于通道列表中的一个通道。通道列表中的一个通道。第十章 数据采集 AI Single Scan AI Single Scan返回一个扫描数据。它的电压返回一个扫描数据。它的电压数据输出是由通道列表中的每个通道读出的电压数数据输出是由通道列表中的每个通道读出的电压数据。使用这个据。使用这个VIVI仅与仅与AI ConfigAI Config有关联,不需要有关联,不需要AI AI StartStart和和AI ReadAI Read。 AI Clear AI Cl

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

35、后输出一个taskIDtaskID。因为。因为taskIDtaskID是一个输入并向是一个输入并向另一个模入另一个模入VIVI输出,所以该参数形成了采集输出,所以该参数形成了采集 VI VI之之间的一个关联数据。间的一个关联数据。第十章 数据采集例例10.3.2 10.3.2 多通道波形的连续采集多通道波形的连续采集 从通道、两个通道连续采集一个频率大从通道、两个通道连续采集一个频率大约为约为2Hz2Hz的正弦信号和方波信号。的正弦信号和方波信号。 程序运行中注意观察程序运行中注意观察scan backlogscan backlog的指示,的指示,如果显示数值越来越大,最后超过如果显示数值越来

36、越大,最后超过Buffer Buffer sizesize,则程序出错,并自动停止运行。但在这,则程序出错,并自动停止运行。但在这个程序中出现的可能性并不大,因为程序中个程序中出现的可能性并不大,因为程序中Read VIRead VI的的scans to read at timescans to read at time的值是设定的值是设定值与前次循环时缓冲区的数据个数值与前次循环时缓冲区的数据个数scan scan backlogbacklog中的大者。中的大者。 第十章 数据采集第十章 数据采集第十章 数据采集 这个简化了的框图上我们可以更加清晰地看出中这个简化了的框图上我们可以更加清晰地

37、看出中级模入的处理框图,无疑,这个流程更加合理,它级模入的处理框图,无疑,这个流程更加合理,它把采集的初始化与结束处理放在了循环之外。把采集的初始化与结束处理放在了循环之外。第十章 数据采集10.4 10.4 模拟输出模拟输出10.4.1 10.4.1 简易模出简易模出 (Easy Analog Output) (Easy Analog Output) 与简易模入类似,简易模出也提供了个模块,与简易模入类似,简易模出也提供了个模块,分别对应于单(多)通道输出波形或电压数据。分别对应于单(多)通道输出波形或电压数据。例例10.4.1 10.4.1 产生一个模出电平产生一个模出电平。 第十章 数据

38、采集运行该程序,可以看到表的输出将指示。这个指运行该程序,可以看到表的输出将指示。这个指示并非模出,为了看到模出,可以使用一块数字万示并非模出,为了看到模出,可以使用一块数字万用表直接测量用表直接测量DAC0 OUTDAC0 OUT。你会发现万用表的指示一。你会发现万用表的指示一直维持在直维持在V V,尽管程序早已执行完了。,尽管程序早已执行完了。 第十章 数据采集例例10.4.2 10.4.2 产生一个模出波形产生一个模出波形。 运行该程序,可以使用一块数运行该程序,可以使用一块数字万用表的直流电压档直接测字万用表的直流电压档直接测量量DAC0 OUTDAC0 OUT。你会发现当初相。你会发

39、现当初相位为时,万用表的指示是,位为时,万用表的指示是,当初相位为当初相位为9090度时,万用表的度时,万用表的指示是指示是1 1。这表明该程序输出的。这表明该程序输出的不是一个连续不断的波形,仅不是一个连续不断的波形,仅仅是一个或若干个整周期的波仅是一个或若干个整周期的波形。模出模块在结束操作后并形。模出模块在结束操作后并没有清复位,一直维持在最没有清复位,一直维持在最后一刻的电平上。如果希望产后一刻的电平上。如果希望产生一个连续不断的波形,需要生一个连续不断的波形,需要使用下面的较复杂的中级函数使用下面的较复杂的中级函数模块。模块。 第十章 数据采集10.4.2 10.4.2 中级模出中级

40、模出 (Intermediate Analog Output) (Intermediate Analog Output) 中级模出有中级模出有5 5个模块个模块。 AO Config AO Config对指定的通道设置模出操作,包括硬对指定的通道设置模出操作,包括硬件、计算机内件、计算机内bufferbuffer的分配。常用的端子有:的分配。常用的端子有: Device Device采集卡的设备号。采集卡的设备号。 Channel Channel指定模出通道号的串数组。指定模出通道号的串数组。 Limit settings Limit settings指定输出信号的范围。指定输出信号的范围。

41、taskID taskID用于所有后来的模出用于所有后来的模出VIVI以规定操作的设以规定操作的设备和通道。备和通道。第十章 数据采集 AO Write AO Write以电压数据的方式写数据到模出数据缓以电压数据的方式写数据到模出数据缓冲区。它是一个维数组,其中每一列数据对应于冲区。它是一个维数组,其中每一列数据对应于通道列表中的一个通道。注意:通常其他函数为其通道列表中的一个通道。注意:通常其他函数为其准备的波形数据是一个维数组,且数据分布在一准备的波形数据是一个维数组,且数据分布在一行中,这里需要将其行中,这里需要将其“虚扩虚扩”为二维数组,并做一为二维数组,并做一次转置。次转置。 AO

42、 Start AO Start 启动带缓冲的模出操作。启动带缓冲的模出操作。Update Update rate(scan/sec)rate(scan/sec)是每秒发生的更新数的个数。如果是每秒发生的更新数的个数。如果你将写入你将写入Number of buffer iterationsNumber of buffer iterations端子,端子,则卡将连续输出给缓冲,直到运行则卡将连续输出给缓冲,直到运行AO ClearAO Clear功能。功能。第十章 数据采集 AO Wait AO Wait 在返回之前一直等待直到波形发生任务在返回之前一直等待直到波形发生任务完成。它的电压数据输出

43、是由通道列表中的每个通完成。它的电压数据输出是由通道列表中的每个通道读出的电压数据。使用这个道读出的电压数据。使用这个VIVI仅与仅与AO ConfigAO Config有有关联,不需要关联,不需要AO StartAO Start和和AO WriteAO Write。 AO Clear AO Clear清除模出操作、计算机中分配的缓清除模出操作、计算机中分配的缓冲、释放所有数据采集卡的资源,例如计数器。冲、释放所有数据采集卡的资源,例如计数器。当你设置一个模出应用时,首先使用的当你设置一个模出应用时,首先使用的VIVI总是总是AO AO ConfigConfig。AO ConfigAO Con

44、fig会产生一个会产生一个taskIDtaskID和和Error Error clustercluster(出错信息簇)。所有别的模出(出错信息簇)。所有别的模出VIVI接受这接受这个个taskIDtaskID以识别操作的设备和通道,并且在操作完以识别操作的设备和通道,并且在操作完成后输出一个成后输出一个taskIDtaskID。该参数形成了数据输出。该参数形成了数据输出 VI VI之间的一个关联数据。之间的一个关联数据。第十章 数据采集例例10.4.3 10.4.3 产生一个连续的正弦波形产生一个连续的正弦波形。 上面的框图中需要说明以下几点:上面的框图中需要说明以下几点: 由于正弦波发生器

45、的输出是一个由于正弦波发生器的输出是一个waveform waveform 数据类型,首先将数据类型,首先将其中的其中的Y Y数据提出,然后将它扩充为一个二维数组,再经转置后数据提出,然后将它扩充为一个二维数组,再经转置后才可连接到才可连接到AO Write AO Write 。在在AO ConfigAO Config中主要是设置了中主要是设置了BufferBuffer,这对于连续输出是必须,这对于连续输出是必须的,其它都选默认值。的,其它都选默认值。第十章 数据采集产生的连续正弦波形产生的连续正弦波形 :第十章 数据采集10.5 10.5 DAQmxDAQmx10.5.1 10.5.1 NI

46、-DAQmxNI-DAQmx的发展与特点的发展与特点 1 NI-DAQmx 1 NI-DAQmx的发展的发展第十章 数据采集 2 2 NI-DAQmxNI-DAQmx的特点的特点 第十章 数据采集 多模态多模态VIVI 以前要用以前要用 Digital Read Digital Read 函数从数字线读取数函数从数字线读取数据和用据和用 Analog Read Analog Read 函数读取模拟数据,而现在函数读取模拟数据,而现在可以用同一个函数读取这两种数据。象这样的函可以用同一个函数读取这两种数据。象这样的函数,称之为多态函数。数,称之为多态函数。 现在不用学习四种不同的方法来为现在不用

47、学习四种不同的方法来为 NI DAQ NI DAQ 设设备的四种类型的操作(模拟输入与输出、数字备的四种类型的操作(模拟输入与输出、数字 I/OI/O、计数器、计数器/ /定时器)编写程序了,而只需学习定时器)编写程序了,而只需学习一种方法,然后重复使用这个方法来为其它的操一种方法,然后重复使用这个方法来为其它的操作编写程序即可。作编写程序即可。 第十章 数据采集第十章 数据采集 DAQ Assistant DAQ Assistant 为了进一步简化为了进一步简化 DAQ DAQ 编程,编程,DAQmxDAQmx提供一个新提供一个新的交互式测量工具的交互式测量工具DAQ DAQ 助手。助手。D

48、AQ DAQ 助手以图助手以图形化的方式配置形化的方式配置DAQDAQ操作。操作。 因为因为 DAQ DAQ助手是完全以菜单方式驱动的,不需助手是完全以菜单方式驱动的,不需要任何编程,所以很少出错,并且还大大减少进要任何编程,所以很少出错,并且还大大减少进行测量的时间。只需简单的鼠标点击,根据配置行测量的时间。只需简单的鼠标点击,根据配置就可以自动生成代码,这可以作为在就可以自动生成代码,这可以作为在NINI应用软件应用软件程序中实现复杂操作的一个起点。程序中实现复杂操作的一个起点。 第十章 数据采集第十章 数据采集利用利用DAQDAQ助手,可以:助手,可以:创建和编辑任务和虚拟通道;创建和编

49、辑任务和虚拟通道;添加虚拟通道至任务;添加虚拟通道至任务;创建并编辑量程;创建并编辑量程;测试您的配置;测试您的配置;保存您的配置;保存您的配置;在您的在您的NINI应用软件中生成代码以在您的应用程应用软件中生成代码以在您的应用程 序中使用;序中使用;观察您的传感器的连接图观察您的传感器的连接图。第十章 数据采集 多线程多线程 NI-DAQmx NI-DAQmx是多线程驱动程序,所以编程控制并是多线程驱动程序,所以编程控制并发的发的I/OI/O操作变得更加容易。不共用一台设备的同操作变得更加容易。不共用一台设备的同一个功能子块(如计数器、模拟输入、模拟输出一个功能子块(如计数器、模拟输入、模拟

50、输出和数字和数字I/OI/O等)的两个操作可以同时执行。等)的两个操作可以同时执行。第十章 数据采集 更简化的同步功能更简化的同步功能 传统传统NI-DAQNI-DAQ中的同步设备和操作会相当复杂。中的同步设备和操作会相当复杂。通常来说,必须为穿过通常来说,必须为穿过RTSIRTSI总线或总线或PFIPFI线路的信号线路的信号明确指定路由,而明确指定路由,而NI-DAQmxNI-DAQmx免除了为信号指定路免除了为信号指定路由的必要。只须选择希望同步的信号,所有的路由的必要。只须选择希望同步的信号,所有的路由工作由由工作由NI-DAQmxNI-DAQmx为您完成为您完成。第十章 数据采集10.

51、5.2 10.5.2 NI-DAQmxNI-DAQmx的十个函数的十个函数 1. 1. DAQ Assistant (DAQ Assistant (数据采集助手数据采集助手) ) DAQ Assistant DAQ Assistant 是一个图形化的界面,用于交是一个图形化的界面,用于交互式地创建、编辑和运行互式地创建、编辑和运行NI-DAQmxNI-DAQmx虚拟通道和任虚拟通道和任务。务。 一个一个NI-DAQmxNI-DAQmx虚拟通道包括一个虚拟通道包括一个DAQDAQ设备上的设备上的物理通道和对这个物理通道的配置信息,例如输物理通道和对这个物理通道的配置信息,例如输入范围和自定义缩放

52、比例。入范围和自定义缩放比例。 一个一个 NI-DAQmx NI-DAQmx任务是虚拟通道、定时和触发任务是虚拟通道、定时和触发信息、以及其他与采集或生成相关属性的组合。信息、以及其他与采集或生成相关属性的组合。 在下图中,在下图中,DAQ ASSISTANTDAQ ASSISTANT配置成完成一个物配置成完成一个物理量的测量。理量的测量。 第十章 数据采集第十章 数据采集几个概念:几个概念: 1. 1.物理通道:可用于测量和发生信号的端口。物理通道:可用于测量和发生信号的端口。 2. 2.虚拟通道:一个由名称、物理通道、输入端口虚拟通道:一个由名称、物理通道、输入端口连接、测量或发生信号的类

53、型、标定信息等组成的连接、测量或发生信号的类型、标定信息等组成的设置集合。在设置集合。在DAQmxDAQmx中,可以用中,可以用DAQDAQ助手、助手、MAXMAX或应或应用接口程序配置虚拟通道。用接口程序配置虚拟通道。 3. 3.任务:带有定时、触发或其它属性的一个或多任务:带有定时、触发或其它属性的一个或多个虚拟通道的集合。一个任务表示用户想做的一次个虚拟通道的集合。一个任务表示用户想做的一次测量或信号发生。在测量或信号发生。在DAQmxDAQmx中,用户可以将虚拟通中,用户可以将虚拟通道作为任务的一部分或独立于任务配置。道作为任务的一部分或独立于任务配置。 4. 4.局部通道:作为任务的

54、一部分,在任务中创建局部通道:作为任务的一部分,在任务中创建的虚拟通道称为局部通道。的虚拟通道称为局部通道。 5. 5.全局通道:独立于任务,在任务以外创建的虚全局通道:独立于任务,在任务以外创建的虚拟通道称为全局通道。拟通道称为全局通道。第十章 数据采集 DAQ ASSISTANT DAQ ASSISTANT 也可以生成代码来配置和也可以生成代码来配置和/ /或完或完成特定的采集或生成成特定的采集或生成 (Generation) (Generation)。下面显。下面显 DAQ DAQ ASSISTANTASSISTANT的实例以及相应的所自动生成的配置和的实例以及相应的所自动生成的配置和L

55、abVIEWLabVIEW代码例程。代码例程。 第十章 数据采集 与与DAQ ASSISTANTDAQ ASSISTANT所能提供的相比,某些数据所能提供的相比,某些数据采集应用程序需要更大的灵活性和采集应用程序需要更大的灵活性和/ /或性能。这些或性能。这些应用程序需要下面所叙述的简单、但功能强大的应用程序需要下面所叙述的简单、但功能强大的 NI-DAQmx NI-DAQmx 函数。函数。 第十章 数据采集 2. 2. NI-DAQmxNI-DAQmx创建虚拟通道函数创建虚拟通道函数 NI-DAQmx NI-DAQmx创建虚拟通道函数创建了一个虚拟通创建虚拟通道函数创建了一个虚拟通道,并且将

56、它添加成一个任务。它也可以用来创道,并且将它添加成一个任务。它也可以用来创建多个虚拟通道,并将它们都添加至一个任务。建多个虚拟通道,并将它们都添加至一个任务。如果没有指定一个任务,那么这个函数将创建一如果没有指定一个任务,那么这个函数将创建一个任务。个任务。第十章 数据采集 NI-DAQmx NI-DAQmx创建虚拟通道函数有许多的实例。这创建虚拟通道函数有许多的实例。这些实例对应于特定的虚拟通道所实现的测量或生些实例对应于特定的虚拟通道所实现的测量或生成类型。下面是四个不同的成类型。下面是四个不同的 NI-DAQmx NI-DAQmx 创建虚拟创建虚拟通道通道 VI VI实例的例程。实例的例

57、程。 第十章 数据采集第十章 数据采集 在下面的在下面的LabVIEW LabVIEW 程序框图中,程序框图中,NI-DAQmxNI-DAQmx创建创建虚拟通道虚拟通道 VI VI用来创建一个热电偶虚拟通道。用来创建一个热电偶虚拟通道。 第十章 数据采集第十章 数据采集 3. 3. NI-DAQmxNI-DAQmx触发函数触发函数 NI-DAQmx NI-DAQmx触发函数配置一个触发器来完成一个触发函数配置一个触发器来完成一个特定的动作。最为常用的动作是启动触发器特定的动作。最为常用的动作是启动触发器(Start Trigger)(Start Trigger)和参考触发器和参考触发器(Ref

58、erence (Reference Trigger)Trigger)。 这些触发器都可以配置成在数字边沿、模拟边这些触发器都可以配置成在数字边沿、模拟边沿或者当模拟信号进入或离开时发生。沿或者当模拟信号进入或离开时发生。第十章 数据采集 在下面的在下面的LabVIEWLabVIEW程序框图中,利用程序框图中,利用 NI-DAQmx NI-DAQmx 触发触发 VI VI,启动触发器和参考触发器都配置成发生,启动触发器和参考触发器都配置成发生在一个模拟输入操作的数字边沿。在一个模拟输入操作的数字边沿。 第十章 数据采集 许多数据采集应用程序需要一个设备的不同功许多数据采集应用程序需要一个设备的不

59、同功能区域的同步(例如,模拟输出和计数器)。或能区域的同步(例如,模拟输出和计数器)。或需要多个设备进行同步。需要多个设备进行同步。 NI-DAQmx NI-DAQmx能自动地完成能自动地完成触发信号在一个设备的不同功能区域与多个设备触发信号在一个设备的不同功能区域与多个设备之间传递。当使用之间传递。当使用 NI-DAQmx NI-DAQmx 触发函数时,所有触发函数时,所有有效的触发信号都可以作为函数的源输入。有效的触发信号都可以作为函数的源输入。 例如,在下面的例如,在下面的 NI-DAQmx NI-DAQmx 触发触发 VI VI中,用于设中,用于设备备2 2的启动触发器信号可以用作设备

60、的启动触发器信号可以用作设备1 1的启动触发的启动触发器的源,而无需进行任何显式的传递。器的源,而无需进行任何显式的传递。 第十章 数据采集 4. 4. NI-DAQmxNI-DAQmx定时函数定时函数 NI-DAQmx NI-DAQmx定时函数配置定时,用于硬件定时的定时函数配置定时,用于硬件定时的数据采集操作。包括指定操作是否连续或有限、数据采集操作。包括指定操作是否连续或有限、为有限的操作选择用于采集或生成的采样数量,为有限的操作选择用于采集或生成的采样数量,以及在需要时创建一个缓冲区。以及在需要时创建一个缓冲区。 第十章 数据采集 对于需要采样定时的操作(模拟输入、模拟输对于需要采样定

61、时的操作(模拟输入、模拟输出和计数器),出和计数器),NI-DAQmxNI-DAQmx定时函数中的采样时钟定时函数中的采样时钟实例设置了采样时钟的源(可以是一个内部或外实例设置了采样时钟的源(可以是一个内部或外部的源)和它的速率。部的源)和它的速率。 采样时钟控制了采集或生成采样的速率。每一采样时钟控制了采集或生成采样的速率。每一个时钟脉冲为每一个包含在任务中的虚拟通道初个时钟脉冲为每一个包含在任务中的虚拟通道初始化一个采样的采集或生成。始化一个采样的采集或生成。第十章 数据采集 下图中,下图中,LabVIEW LabVIEW 程序框图演示了使用程序框图演示了使用NI-NI-DAQmxDAQm

62、x定时定时 VI VI中的采样时钟实例来配置一个连续中的采样时钟实例来配置一个连续的模拟输出生成(利用一个内部的采样时钟)。的模拟输出生成(利用一个内部的采样时钟)。 第十章 数据采集 为了在数据采集应用程序中实现同步,如同触为了在数据采集应用程序中实现同步,如同触发信号必须在一个设备的不同功能区域或多个设发信号必须在一个设备的不同功能区域或多个设备之间传递一样,定时信号也必须以同样的方式备之间传递一样,定时信号也必须以同样的方式传递。传递。NI-DAQmxNI-DAQmx也是自动地实现这个传递。所有也是自动地实现这个传递。所有有效的定时信号都可以作为有效的定时信号都可以作为NI-DAQmxN

63、I-DAQmx定时函数的定时函数的源输入。源输入。 例如,在下面的例如,在下面的 DAQmx DAQmx定时定时 VI VI中,设备的模拟中,设备的模拟输出采样时钟信号作为同一个设备模拟输入通道输出采样时钟信号作为同一个设备模拟输入通道的采样时钟源,而无需完成任何显式的传递。的采样时钟源,而无需完成任何显式的传递。 第十章 数据采集 大部分计数器操作不需要采样定时,因为被测大部分计数器操作不需要采样定时,因为被测量的信号提供了定时。量的信号提供了定时。NI-DAQmxNI-DAQmx定时函数的隐式定时函数的隐式实例应当用于这些应用程序。在下面的实例应当用于这些应用程序。在下面的 LabVIEW

64、 LabVIEW 程序框图中,程序框图中,NI-DAQmx NI-DAQmx 定时定时 VI VI的隐式实例用来的隐式实例用来将一个缓冲的脉冲宽度采集配置成有限的特定个将一个缓冲的脉冲宽度采集配置成有限的特定个数的采样。数的采样。 第十章 数据采集 5. 5. NI-DAQmxNI-DAQmx启动任务函数启动任务函数 NI-DAQmx NI-DAQmx启动任务函数显式地将一个任务转换启动任务函数显式地将一个任务转换至运行状态。在运行状态,这个任务完成特定的至运行状态。在运行状态,这个任务完成特定的采集或生成。如果没有使用采集或生成。如果没有使用NI-DAQmxNI-DAQmx启动任务函启动任务

65、函数,那么在数,那么在 NI-DAQmx NI-DAQmx 读取或写入函数执行时,读取或写入函数执行时,一个任务可以隐式地转换至运行状态,或者自动一个任务可以隐式地转换至运行状态,或者自动开始。开始。第十章 数据采集 下面的下面的LabVIEWLabVIEW程序框图演示了不需要使用程序框图演示了不需要使用NI-NI-DAQmxDAQmx启动函数的情形,因为模拟输出生成仅仅包启动函数的情形,因为模拟输出生成仅仅包含一个单一的、软件定时的采样。含一个单一的、软件定时的采样。 第十章 数据采集 下面的下面的LabVIEWLabVIEW程序框图演示了应当使用程序框图演示了应当使用 NI- NI-DAQ

66、mxDAQmx启动函数的情形,因为启动函数的情形,因为NI-DAQmxNI-DAQmx读取函数需读取函数需要执行多次来从计数器读取数据。要执行多次来从计数器读取数据。 第十章 数据采集 6. 6. NI-DAQmxNI-DAQmx读取函数读取函数 NI-DAQmx NI-DAQmx读取函数需要从特定的采集任务中读读取函数需要从特定的采集任务中读取采样。这个函数的不同实例允许选择采集的类取采样。这个函数的不同实例允许选择采集的类型(模拟、数字或计数器)、虚拟通道数、采样型(模拟、数字或计数器)、虚拟通道数、采样数和数据类型。数和数据类型。第十章 数据采集 下面是四个不同的下面是四个不同的NI-D

67、AQmxNI-DAQmx读取读取 VI VI实例的例程。实例的例程。 第十章 数据采集 在下面的在下面的LabVIEWLabVIEW程序框图中,程序框图中,NI-DAQmxNI-DAQmx读取读取 VI VI已经被配置成从多个模拟输入虚拟通道中读取多个已经被配置成从多个模拟输入虚拟通道中读取多个采样并以波形的形式返回数据。而且,既然每通道采样并以波形的形式返回数据。而且,既然每通道采样数输入已经配置成常数采样数输入已经配置成常数1010,那么每次,那么每次 VI VI执行执行的时候它就会从每一个虚拟通道中读取的时候它就会从每一个虚拟通道中读取 10 10 个采样。个采样。 第十章 数据采集 7

68、. 7. NI-DAQmxNI-DAQmx写入函数写入函数 NI-DAQmx NI-DAQmx写入函数将采样写入指定的生成任务写入函数将采样写入指定的生成任务中。这个函数的不同实例允许选择生成类型(模中。这个函数的不同实例允许选择生成类型(模拟或数字),虚拟通道数、采样数和数据类型。拟或数字),虚拟通道数、采样数和数据类型。第十章 数据采集 下面是四个不同的下面是四个不同的NI-DAQmxNI-DAQmx写入写入VIVI实例的例程。实例的例程。第十章 数据采集 下面的下面的 LabVIEW LabVIEW 程序框图包括一个程序框图包括一个NI-DAQmx NI-DAQmx 写入写入VIVI的自

69、启动输入值为的自启动输入值为“假假”的布尔值,因为生的布尔值,因为生成任务是硬件定成任务是硬件定NI-DAQmxNI-DAQmx写入写入VIVI已经被配置将一个已经被配置将一个通道模拟输出数据的多个采样以一个模拟波形的形通道模拟输出数据的多个采样以一个模拟波形的形式写入任务中。式写入任务中。 第十章 数据采集 8. 8. NI-DAQmxNI-DAQmx等待直到完成函数等待直到完成函数 NI-DAQmx NI-DAQmx等待直至完成函数在结束之前等待数等待直至完成函数在结束之前等待数据采集操作的完成。最为普遍的是,据采集操作的完成。最为普遍的是,NI-DAQmxNI-DAQmx等等待直至完成函

70、数用于有限操作。一旦这个函数完待直至完成函数用于有限操作。一旦这个函数完成了执行,有限采集或生成就完成了,而且无需成了执行,有限采集或生成就完成了,而且无需中断操作就可以结束任务。此外,超时输入允许中断操作就可以结束任务。此外,超时输入允许指定一个最大的等待时间。如果采集或生成不能指定一个最大的等待时间。如果采集或生成不能在这段时间内完成,那么这个函数将退出而且会在这段时间内完成,那么这个函数将退出而且会生成一个合适的错误信号。生成一个合适的错误信号。第十章 数据采集 下面下面 LabVIEW LabVIEW 程序框图中的程序框图中的NI-DAQmxNI-DAQmx等待直至等待直至完成完成VI

71、VI用来验证有限模拟输出操作在任务清除之用来验证有限模拟输出操作在任务清除之前就已经完成。前就已经完成。第十章 数据采集 9. 9. NI-DAQmxNI-DAQmx清除任务函数清除任务函数 NI-DAQmx NI-DAQmx清除任务函数可以清除特定的任务。清除任务函数可以清除特定的任务。如果任务现在正在运行,那么这个函数首先中止任如果任务现在正在运行,那么这个函数首先中止任务然后释放掉它所有的资源。一旦一个任务被清除,务然后释放掉它所有的资源。一旦一个任务被清除,那么它就不能被使用,除非重新创建它。因此,如那么它就不能被使用,除非重新创建它。因此,如果一个任务还会使用,那么果一个任务还会使用

72、,那么 NI-DAQmx NI-DAQmx结束任务函结束任务函数就必须用来中止任务,而不是清除它。数就必须用来中止任务,而不是清除它。 第十章 数据采集 对于连续的操作,对于连续的操作,NI-DAQmx NI-DAQmx 清除任务函数必须清除任务函数必须用来结束真实的采集或生成。在下面的用来结束真实的采集或生成。在下面的LabVIEW LabVIEW 程序框图中,一个计数器生成了一个连续的脉冲程序框图中,一个计数器生成了一个连续的脉冲序列。这个脉冲序列不断输出直至等待循环退出序列。这个脉冲序列不断输出直至等待循环退出和和NI-DAQmxNI-DAQmx清除任务清除任务 VI VI执行。执行。第

73、十章 数据采集 10. 10. NI-DAQmxNI-DAQmx属性节点属性节点 NI-DAQmx NI-DAQmx属性节点提供了对所有与数据采集操属性节点提供了对所有与数据采集操作相关属性的访问。这些属性可以通过写入作相关属性的访问。这些属性可以通过写入NI-NI-DAQmxDAQmx属性节点来设置,而且当前的属性值可以从属性节点来设置,而且当前的属性值可以从 NI-DAQmx NI-DAQmx 属性节点中读取。而且,在属性节点中读取。而且,在 LabVIEW LabVIEW中,中,一个一个NI-DAQmxNI-DAQmx属性节点可以用来写入多个属性或读属性节点可以用来写入多个属性或读取多个

74、属性。取多个属性。第十章 数据采集 下面的下面的LabVIEW NI-DAQmxLabVIEW NI-DAQmx定时属性节点设置了定时属性节点设置了采样时钟的源,然后读取采样时钟的源,最后设采样时钟的源,然后读取采样时钟的源,最后设置采样时钟的有效边沿。置采样时钟的有效边沿。第十章 数据采集 许多属性可以使用前面讨论的许多属性可以使用前面讨论的 NI-DAQmx NI-DAQmx 函数来函数来设置。例如,采样时钟源和采样时钟有效边沿属性可设置。例如,采样时钟源和采样时钟有效边沿属性可以使用以使用NI-DAQmxNI-DAQmx定时函数来设置。然而,一些相对不定时函数来设置。然而,一些相对不常用

75、的属性只可以通过常用的属性只可以通过 NI-DAQmx NI-DAQmx属性节点来访问。属性节点来访问。在下面的在下面的 LabVIEW LabVIEW程序框图中,一个程序框图中,一个NI-DAQmxNI-DAQmx通道属通道属性节点用来使能硬件低通滤波器,然后设置滤波器的性节点用来使能硬件低通滤波器,然后设置滤波器的截止频率来用于应变测量。截止频率来用于应变测量。 第十章 数据采集10.5.3 10.5.3 NI-DAQmxNI-DAQmx的应用例子的应用例子例例10.5.1 10.5.1 通过通过AssistantAssistant进行进行AIAI单点采集单点采集第十章 数据采集例例10.5.2 10.5.2 通过通过DAQmxDAQmx进行电压输出进行电压输出第十章 数据采集例例10.5.3 10.5.3 通过通过DAQmxDAQmx进行数字输出进行数字输出第十章 数据采集例例10.5.4 10.5.4 通过通过DAQmxDAQmx进行数字输入。进行数字输入。第十章 数据采集例例10.5.5 DAQmx10.5.5 DAQmx多进程数据采集。多进程数据采集。第十章 数据采集

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号