处理和存储容量的持续增加以及硬件和软件成本的降低,导致采集数据量呈爆炸式增长。尽管技术进步显著提升了数据留存的速度与效率,但存储、管理和共享数据仍然是关键挑战。传统软件包通常采取以下两种限制方法:1)强制采用无法与其他应用程序或用户交换的特定格式;2)数据保存过于开放,导致用户在确定最佳组织和存储方式以实现数据共享时浪费时间。LabVIEW专为整个工程流程设计,其内置功能可助力用户轻松将数据保存至磁盘并创建专业报告。LabVIEW通过提供易用且强大的文件I/O和报告接口,助力用户充分利用所收集的数据,加速决策过程。
在测试系统中为保存数据选择正确的文件格式是一项重大决策。用户需挑选一种既能满足当前系统需求,又能随测试需求变化而扩展的格式。评估存储格式需考虑诸多特性:
由于应用各不相同,LabVIEW为用户提供了多种文件I/O选项,包括ASCII、二进制、数据逻辑、ZIP和XML格式。

如图1所示,LabVIEW提供了从零构建文件的基础函数,以及用于从对话框中配置文件I/O参数的Express VI,简化了打开文件引用、字符串格式化和字节序等复杂细节。良好的文件I/O实践是构建任何测试或测量系统中的棘手部分,NI LabVIEW随附了数十个范例,助力用户快速掌握每种文件类型的使用方法。
尽管LabVIEW提供了多种文件I/O选项,但传统文件类型通常难以全面满足用户对文件格式的所有需求。例如,ASCII文件格式可互换,但却非常庞大而且无法快速读写。而二进制文件虽然能够匹配高速硬件的性能需求,但很难与他人共享。
鉴于以上传统文件I/O的缺点,NI开发了技术数据管理流式(TDMS)文件格式,满足工程师和科学家的特定需求和高要求。TDMS文件基于TDM数据模型,能够以清晰的架构保存测试与测量数据,并提供完善的文档记录。TDM数据模型具有三级层次结构(如图2所示):文件、组和通道。文件级别可包含任意数量的组,并且每个组又可包含任意数量的通道。这种通道分层使得数据组织更加直观,便于理解。例如,用户可以在一个文件中为原始数据设置一个组,并为分析数据设置另一个组。或者,可以按传感器类型或位置将数据分成多个组。

图2: TDM数据模型满足测量数据的特定要求。
此外,用户可在三个级别中的每个级别插入自定义属性。由于每个级别可接受任意数量的自定义属性,从而形成结构清晰、易于搜索的数据文件。TDMS文件中的描述性信息是该模型的一大优势,它为数据记录提供了一种类似于代码记录的简便方法。随着文档需求的增长,用户无需重新设计应用程序,只需扩展数据模型即可满足新需求。
TDMS的开发旨在满足所有工程师的需求,因此兼具易用、高速流处理和可互换的特点。与LabVIEW中的许多操作类似,用户可通过多种接口编写TDMS文件。例如,用户可利用写入测量文件Express VI等虚拟仪器(VI)实现快速读写TDMS文件,或通过文件I/O选板中的原始TDMS VI实现高性能定制化操作。此外,LabVIEW与NI-DAQmx结合使用时,用户可利用DAQ选板中的配置记录VI或直接通过NI DAQ助手记录日志(如图3所示)。

图3:由于有多个用于写入TDMS文件的接口,用户可选择最适合的接口。
尽管TDMS的初衷是提供易用性,但近年来硬件性能的显著提升使其在高速流处理方面的重要性日益凸显,以确保文件I/O不成为采集速度的瓶颈,TDMS通过底层优化避免了缓冲操作,从而以最快速度在NI平台上写入数据。截至目前,经测试,TDMS能够以最高3.6 GB/s的速度传输数据。
考虑到用户可能需要使用其他应用程序,TDMS文件能够轻松与其他程序互换使用。例如,用户可通过TDM Excel加载项在Microsoft Excel中打开TDMS文件,该加载项随NI软件安装,并可在ni.com上免费获取。此外,用户还可通过C DLL使用其他编程语言实现TDMS文件的读取和写入操作。无论使用何种产品,NI都致力于帮助用户使用TDMS文件格式写入结构有序、记录清晰的数据。
尽管理想情况下,用户可为每个工作应用选择文件格式,但由于存在旧版文件或使用自定义格式的硬件,可能仍受限于使用自定义格式进行读写。为解决这一普遍问题,NI开发了数据插件技术,使用户能够在LabVIEW中使用各种自定义文件格式。如图4所示,数据插件充当文件解析器的角色,向LabVIEW及其他NI软件提供关于如何读取自定义文件格式的指导,并将其映射到内存中的TDM层次模型。

图4:使用数据插件,可将任意文件格式映射至TDM数据模型。
NI为最常见的文件格式提供了200多种可免费下载的数据插件。对于自定义格式,用户可在LabVIEW和NI DIAdem软件中利用文档化API创建自己的数据插件,或请求NI专家协助创建定制化插件。借助数据插件,用户不再受制于自定义格式和应用程序的限制,能够以更多方式灵活使用数据。
许多应用场景采集的数据量可能会迅速增长至难以管理的程度。通常情况下,此时可能需要转而使用数据库来存储数据,以实现更快的搜索和趋势分析。NI使用LabVIEW Database Connectivity工具包,通过抽象底层结构化查询语言(SQL)查询,简化与数据库的交互过程。然而,将现有数据移动到数据库、维护数据库以及创建访问数据的应用程序可能会变得极其昂贵且耗时。
为应对这一挑战,NI开发了NI DataFinder技术,该技术集成于LabVIEW DataFinder工具包和DIAdem中,可在无需花费精力和成本来设置并维护大型数据库的情况下有效管理测试文件。借助NI DataFinder,无论文件格式或其在公司内网中的具体位置如何,用户都可在所有数据文件中执行类似互联网搜索的操作。用户只需将NI DataFinder指向数据文件的位置,几秒钟内就可以搜索文件,就像在互联网中搜索信息一样。
NI DataFinder会自动构建并维护符合NI DataFinder配置中文件类型和位置标准的所有文件的索引。用户可使用自动存储在NI DataFinder索引中的属性作为查询条件。对有效数据文件执行创建、删除或编辑操作,NI DataFinder都可自动提示并重新索引此文件的层次结构与属性。此外,将NI DataFinder中尚未包含的属性保存到新建文件中时,这些属性会自动添加到索引中。NI DataFinder会根据文件事件和各个文件的内容,动态化管理自身的数据表格并进行更新。因此,与许多昂贵的数据库解决方案不同,用户可据需求的变化随时调整和扩展信息,而无需重新设计数据管理方案。用户利用NI DataFinder能够快速从测试期间保存的大量数据中发现趋势和关联。
完成数据存储、分析及结果搜索与趋势分析后,用户需要以一种易于传达的方式与他人分享研究成果。报告的重点在于最终结果的可视化效果和可互换性,而非存储在文件中的整个数据集。尽管VI前面板是可视化和交互实时数据的有效工具,但并不专门用于生成最终结果报告。LabVIEW提供了即时创建报告的功能,同时支持通过模板实现自动化报告生成。用户可选择以常见的文件格式(例如HTML、PowerPoint和PDF)输出报告。
为生成基础报告,LabVIEW内置了用于创建文本和HTML报告的VI。用户可通过简单的VI以编程方式构建报告,或使用报告Express VI在单一窗口中配置报告参数并全部输出,如图5所示。

图5:可使用LabVIEW中的报告Express VI配置专业报告。
此外,用户可能希望将报告直接发送至Excel和Word等Microsoft应用。 可使用ActiveX或LabVIEW专业版中的LabVIEW Report Generation工具包,以编程方式实现该功能。Report Generation工具包降低了与Excel和Word交互的复杂程度,使用户将精力集中在设计实际的报告元素上。使用这些VI可向Microsoft文档中方便地添加标题、表格和图形。此外,用户还能创建可从LabVIEW调用的Word和Excel模板,提高报告的自动化和标准化程度。
通过创建模板,用户可以轻松地创建自定义报表,从而使用新的数据和结果进行更新。用户可利用DIAdem数据管理软件交互式创建包含图表、表格和图形的报告模板,并使用DIAdem报告Express VI从LabVIEW调用这些模板。创建模板后,只需连线数据源并运行应用程序即可。每次运行时,模板都会更新数据并输出为PowerPoint和PDF文件等常见格式(如图6所示),便于用户轻松分享。此外,DIAdem报告引擎专为大型数据集而设计,摆脱了报告对数据量的限制。

图6:DIAdem报告可输出为通用报告格式,供与他人共享。
利用LabVIEW中的报告功能,用户有多种选择来创建具有视觉冲击力的报告,以分享结果。此外,考虑到最终用户,用户也可将这些报告打印为常见报告格式,便于分享。
LabVIEW的存储、管理和报告工具旨在提取文件I/O和报告的细节与挑战,使用户能够专注于数据采集。结合工程数据的TDMS文件格式、针对旧版文件的数据插件、用于搜索的NI DataFinder以及强大的报告工具,用户采集数据时无需受限于存储和报告。随着硬件性能的提升和存储成本的降低,LabVIEW持续提供创新工具,帮助用户充分利用收集到的所有数据。