基于LabVIEW的通用数据采集系统设计外文翻译资料

 2022-07-15 15:19:51

英语原文共 5 页,剩余内容已隐藏,支付完成后下载完整资料


基于LabVIEW的通用数据采集系统设计

摘要 - 针对数据采集系统中重复开发的现象,通用数据采集系统可采用基于LabVIEW软件和ni-6358数据采集卡的设计。 用户可以自定义每个通道的转换并通过文件存储配置信息。 将状态机与生产/消费系统相结合,提出了一种高速数据采集与处理框架,实现了32通道的同步采集和实时显示、转换、存储。测试和操作结果显示系统采样率高,运行稳定可靠,并能满足一般性能要求。

关键词 - 数据采集;LabVIEW; 状态机;生产/消费系统; 采样率; 通用性

  1. 介绍

作为科学研究的重要方式,实验性测试广泛用于工业控制,航空航天和生化领域。 数据采集是各种测试系统的重要部分,几乎所有的测试系统都需要数据采集,随着数据的不断优化处理,各种测试数据的需求变得更高,所以数据采集系统也需要更灵活。

数据采集是转换传感器信号的过程,通过硬件,然后使用软件读取,转换和存储。 数据采集的主要功能在不同类型的测试系统中类似,大部分是用于固定设备或场合的传统数据采集系统。这种数据采集系统通常比较固化,每个通道只能连接到原来的传感器设计类型,并且不能应用于其他类似的测试,并且很难满足复杂测试系统的要求。随着虚拟仪器的普及,数据采集系统往往是普适化的软件,目前众多基于LabVIEW的测试系统已经开发完成,与以前的数据采集系统相比,功能更加多样,用户有更多自治操作,但这些类型的数据采集系统通常存在采样率低,速度和频道数量较少的问题,而且采集系统仍有一定的改进空间。

根据通用性和可靠性的气体压力试验要求,基于LabVIEW设计具有高采样率和通用数据采集系统,多达32个通道的模拟通道可以同时使用,用户可根据传感器的类型修改通道的转换方法和参数。它可以应用到其他测试系统的数据采集部分。

二、硬件系统

数据采集系统的硬件部分涉及到通道数量,分辨率,最大采样率,误差,噪音,输入信号类型等关键指标。优秀的硬件是高效数据采集系统的基础,Instruments公司打造的硬件平台Since这个卡可以通过在LabVIEW中调用DAQmx来收集数据,这样的设计可以减少很多工作。设备由PXIe-1071机箱和两NI PXIe-6358组成每块板卡有16个同步模拟输入通道,最大采样率为1.25MS / s,一个模拟输入分辨率为16bit,所有通道均采用差分输入模式,32个通道可以并行采集,每个通道的数据彼此不相关。相比使用串行采集系统时,不需要提取来自序列的数据,从而改善收集系统的效率。 数据在板之间传输,主机通过PXI总线使用DELL的工作站,具有丰富的接口和高硬件配置。 在硬件系统之后连接主机,并在主机中安装相应的驱动程序,计算机使用NIMAX来测试每个通道,由此,系统的硬件部分基本完成。

应该指出的是压力传感器的输出信号一般是4-20mA的电流信号,但数据采集板只能采集电压信号,所以需要250Omega;左右的高精度采样电阻将电流信号转换为0-5V的电压信号。 通道配置:用户输入的参数都是传感器的实际数据,如果我们直接使用它会出错,因此,在开始收集数据之前,我们需要使用NIMAX为每个频道建立转换关系,通过软件将0-5V电压信号恢复为4-20mA电流信号,通过这种方式,我们可认为转换信号是从传感器收集的直流信号。

  1. 数据采集系统

数据采集是计算机与外部物理世界连接的桥梁。各种类型信号采集的难易程度差别很大。实际采集时,噪声也可能带来一些麻烦。数据采集时,有一些基本原理要注意,还有更多的实际的问题要解决。根据采样定理,最低采样频率必须是信号频率的两倍。反过来说,如果给定了采样频率,那么能够正确显示信号而不发生畸变的最大频率叫做恩奎斯特频率,它是采样频率的一半。如果信号中包含频率高于奈奎斯特频率的成分,信号将在直流和恩奎斯特频率之间畸变。采样率过低的结果是还原的信号的频率看上去与原始信号不同。这种信号畸变叫做混叠。出现的混频偏差是输入信号的频率和最靠近的采样率整数倍的差的绝对值。为了避免这种情况的发生,通常在信号被采集(A/D)之前,经过一个低通滤波器,将信号中高于奈奎斯特频率的信号成分滤去。理论上设置采样频率为被采集信号最高频率成分的2倍就够了,但实际上工程中选用5-10倍,有时为了较好地还原波形,甚至更高一些。

自NI-DAQmx发布以来,NI数据采集(DAQ)硬件用户一直在充分利用软件的诸多特性来节省开发时间,并提高数据采集应用程序的性能。其中一个能节省大量开发时间的特性是NI-DAQmx应用程序编程接口(API),该接口适用于各种设备功能和设备系列。 也就意味着在一个多功能设备的所有功能都可通过同一功能集(模拟输入、模拟输出、数字I/O和计数器)进行编程。 而且,数字I/O设备和模拟输出设备也可由同一个功能集进行编程。 在LabVIEW中,多态机制使得这些都成为可能。 一个多态VI可接受多种数据类型,用于一个或多个输入和/或输出终端。 NI-DAQmx API对于所有可支持的编程环境都是一样的。 用户只需学习运用一个功能集,便可在多种编程环境下对大部分的NI数据采集硬件进行编程。

另一个能够提升开发体验的NI-DAQmx特性是DAQ助手。 这个工具可帮助用户无需编程,仅通过图形化界面配置各种简单或复杂的数据采集任务,即可创建应用。 此外,因为触发和/或时钟信号必须手动路由,因此通常很难实现同步性。而使用NI-DAQmx,这将变得轻而易举,NI-DAQmx可以在一个设备上不同的功能区域间以及在多个设备上自动进行信号路由。

使用NI-DAQmx搭建的数据采集应用将受益于NI-DAQmx这一专门针对最优化系统性能而设计的架构。 该架构以一个高效的状态模型为基础,去除了不必要的重复配置。 将这些系统占用去除后,配置和采集过程都得到了优化。 另外,由于内存映射寄存器的存在,单点I/O采样率可达到50 kS/s以上。NI-DAQmx构架的另一个重要特性是测量多线程。 NI-DAQmx的多线程性可实现同时进行多个数据采集操作,从而大大提高了多操作应用的性能, 同时极大地简化此类应用的编程。

采集系统是软件整个功能的关键,结构合理,编程适当可有效提高软件操作的流畅度。该系统主要包括用户登录,通道配置,数据采集,存储,数据回收等。 功能每个部分由不同的子VI执行,当它运行时,另一个子VI处于停止状态,确保一定系统的功能可以利用最多的硬件资源,在运行时每个子VI都通过动态调用进行切换,扩展该功能非常方便。 以下是对关键的系统简要讨论,以增加普遍性和提高采样率。

在数据采集之前,程序将对采集板卡初始化,板卡上和内存中的Buffer是数据采集存储的中间环节。

缓冲(Buffers),这里的缓冲指的是PC内存的一个区域(不是数据采集卡上的FIFO缓冲),它用来临时存放数据。需要注意的是Buffer与采集操作的速度及容量有关。

触发(Triggering),触发涉及初始化、终止或同步采集事件的任何方法。触发器通常是一个数字或模拟信号,其状态可确定动作的发生。采集卡等待一个外部仪器发出的数字脉冲到来后初始化采集卡,这是外部触发。许多仪器提供数字输出(常称为“trigger out”)用于触发特定的装置或仪器,在这里,就是数据采集卡。

  1. 通道配置

通道配置主要是选择通道时需要使用,并定义转换方法和每个通道的参数。 配置在数据之前开始获取和测试,这是实现系统的关键通用性,在用户配置了通道之后需要使用时,系统会自动写入相关的通道配置的数据发送到配置文件。该文件将被存储在计算机硬盘上以供在其中使用下一个相同类型的测试。 针对不同的测试场合,修改或者新的配置文件可以应用于新的测试对象。

INI文件用作配置文件,有丰富的以LabVIEW中的INI文件操作函数,其格式的特点是通道的信息被写入对应于通道段中,段中的每个键对应于一个参数,即使配置参数可以很容易地读写,并且程序操作是很简单。应该指出的是,为了避免写数据失败,每次将数据写入配置后文件,将有必要关闭该文件。

通道配置完成后,调用数据采集程序,所有的转换参数都应读取配置文件并分配这些配置文件参数传递给全局变量,然后在数据中调用它们采集程序,并在开始收集数据之前读取变量中的参数,这样系统就可以避免在重复读取电脑硬盘期间转换。 因此,这种方法可以很大提高数据采集系统的运行效率并减少数据转换所需的周期时间。

  1. 数据采集

数据采集是软件系统的关键部分涉及到最高采样率,所以如何改进数据采集和转换的速度是主要内容软件设计。由于部分数据处理需要消耗大量的硬件资源,数据采集和处理也被设计为独立的运行VI,整个过程采用高效生产/消费者体系结构,由三部分组成while循环。数据采集部分的状态控制机器属于“制片人”,并行数据处理部分属于“消费者”,收集的原始数据数据采集部分通过队列被发送到数据转换部分,进行采集和处理同步无干扰,达到了阻断对程序功能的管理并对其提高采样率有很好的效果。

生产/消费者体系结构应注意:首先,不要将事件结构置于while循环之外。其次,在事件结构中不能直接使用循环处理事件,再次在事件结构中添加一个“停止”按钮处理分支。由于事件结构的复杂性,最终转换条件结构的结构,可在条件结构中添加一个堆栈序列结构。此时,会遇到了两个问题:首先,当条件结构为真时,在序列结构的第一个分支上进行波形回放。但程序混乱,波形不能正常播放。所以当条件结构为假时,我们在条件结构中进行波形回放,它可以运行。

状态机是一种具有指定数目的状态的概念机(有限状态机),它在某个指定时刻仅处于一个状态。状态转变是由输入事件引起的状态变化。作为对输入事件的响应,系统可能转变到相同或不同的状态,而输出的的事件可能是任意产生的。状态机的核心思想是确定下一个节目的状态,由当前节目的状态,必要时触发事件响应并更改状态程序的人工。适用于数据采集系统,该程序可以轻松而灵活地进行控制。使用开始,停止两个命令。如果采样率需要修改,只需先触发停止,修改采样率然后触发开始初始化DAQmx。 这是传统DAQmx采集框架所没有的优势。

LabVIEW状态机是由一个While循环、一个条件结构和一个移位寄存器组成的。其中While循环用来保证程序可以连续的运行;条件结构的各种分支中的代码用来描述状态机的各种状态,以及下一状态的选择;移位寄存器用来将之前状态所作出的选择传递到下一次循环的选择端子。为了在LabVIEW中实现状态机结构,需要两个或更多的while循环,控制部分和响应部分通过队列消息传递命令,第一个while循环需要事件结构产生启动,停止和退出的命令,while循环接收命令和通过案例结构回应命令。

数据读取部分可以设置为一次循环数次,每次读取一定数量的数据。 这个方法不仅可以保证采样率的准确性,同时也将数据丢失的可能性降到最低。

  1. 数据转换

程序从DAQmx读取的数据是传感器的电信号,需要在下一次操作之前转换。 在同步采集和处理系统基本上都是数据转换的速度来确定系统的周期时间,如果采集率高于转换率,则会导致数据在传输队列中积累,这可能会导致重大数据丢失。一般来说,数据采集的速度会更快,因此系统的采样率可以通过提高数据转换速度而得到改善。

在数据转换程序的设计中,三个转换方法设置可匹配大多数传感器类型。 FOR循环的自动索引功能可以用来有效简化程序,外部FOR循环分隔每个通道的一维阵列数据,在二维数组和内部FOR循环中分离每个通道的数据。然后,数据按照参数转换到全局变量中,在转换之后,数据通过FOR循环自动恢复到数组。该整个转换过程仅对阵列运行并且运行节点越少,运行效率就越高。内部的条件结构是两点的具体程序差异转换。

  1. 数据存储

采集,转换,存储和其他操作的系统是同步的。因此,有必要选择合适的存储文件以满足数据的快速存储要求。由于写入和追加的速度TDMS文件非常快,这使得它非常适合高速数据采集系统保存数据。此外为了存储测试数据,还可以通过写入属性功能TDMS文件中记录一些测试参数。TDMS文件会使波形读取和回放的进程平稳,不会出现波形失真,基本可以满足需要。

在系统调试过程中,采样率较高,通常约6分钟,数据记录文件的大小可以达到1GB,因为电脑的硬盘容量是有限和太大的文件不能直接读取,因此这对缩小这些文件的大小至关重要。为了满足用户根据需要而记录有效数据,记录控制按钮添加到前面板有选择地记录实时数据。在数据精度不太高的情况下使用用于存储的单精度浮点格式可以减少该文件的大小,可为原来的一半。

  1. 曲线回放

在测试过程中,数据显示更多,更改很快,测试过程不能暂停,只能观察一般情况

趋势曲线,在流程结束后大多数试验需要将数据回放到曲线形式进行深入分析。在LabVIEW中读取TDMS文件的操作与此类似,也需要先打开文件,然后在阅读并及时发布资源后关闭文件。在阅读录音文件时,相应的文件是根据测试信息检索,读取操作是通过点击一个按钮来触发的,以防止程序反复读取文件,产生系统崩溃。

为了能够校准点的准确值,曲线中需要添加两个或更多光标波形,创建光标和释放事件分支按照指示交点的当前值。

数据分析部分仅执行数字校准和差异计算,当应用于测试情况时,系统可以通过界面进行扩展系统。 例如,在LabVIEW中调用MATLAB节点实现数据建模,故障诊断等功能。

相对于已完成的测试系统的开发,这一点可以大大减轻工作量。

  1. 前面板

程序前面板是一个图形用户界面,它是VI的虚拟仪器面板。前面板用于模拟真实的仪器,功能类似于传统的仪表板。虚拟仪器将逐渐取代传统仪器,虚拟仪器也必将在更多领域发挥重要作用。虚拟仪器前面板的控制与传统仪表盘的旋钮,开关,功能和外观按钮非常相似。这使前面板直观和形象。

软件的

全文共6022字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[9353],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。