微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 测试测量 > Labview > 基于LabVIEW的数据存储及报表设计方法

基于LabVIEW的数据存储及报表设计方法

时间:10-02 整理:3721RD 点击:
1、LabVIEW下数据的保存方法
LabVIEW开发平台中集成了很多功能函数用
来保存用户数据,可以根据数据量的多少以及数据的维护方式选择不同的数据保存功能函数来保存数据,这些函数可以将数据按不同的格式进行保存,常用的文件格式有文本文件或二进制文件。对于数据量大且结构复杂的数据可以选择数据库进行保存。

1.1文件格式
有两种常用保存数据的文件格式,第一种是最常用的文件格式即字节流文件,也就是文本文件,这种格式按字节对文件进行读写,由于其通用性,有利于与其他应用程序共享数据。第二种格式是二进制文件,这种格式的优点是可以对文件进行任意读写。

并且读写效率高,能够节省磁盘空间。

1.2用文本文件保存数据
在LabVIEW的功能模板中有一个输入输出(FileI/O)子模板,这个子模板包含了处理文件输入和输出的功能函数,主要用于创建和打开数据文件,并进行数据的读写。写数据表函数可以将一个一维或二维单精度数组按一定的格式转换成文本字符串,然后将此字符串写入新的字符串流文件或追加到一个已经存在的文件后面,读数据表文件可以将文本文件中的数据以一定的格式读出并转换成二维数组以供调用。向文件写字符函数将一个字符串写入一个新文件或者追加到已存在文件的后面,而读字符串函数可以从一个字节流文件中读出所要求数量的字符。而写文件函数可以将数据按所要求的写入位置将任何类型的数据写入文本文件,也可以通过读文件函数将文本文件中指定位置的任何数据读出。

1.3用二进制文件保存数据
使用二进制文件字模板中的VIs可以实现对二进制文件的读写。使用WriteToI16和WriteToSGLVIs来将一维或二维数据存入一个二进制文件,但是在这之前必须将数据格式化为16位整型或单精度数据,使用ReadI16andReadSGLVis来读取创建的二进制文件。如果希望写入不同数据类型的数据,例如双精度或32位无符号数,可以使用高级文件函数子模板中的函数对二进制文件进行操作。

1.4使用数据库保存数据
使用文本文件或二进制文件适用于保存数据量小,结构简单的数据,而且也不利于数据的管理和后期对数据的维护。如果要保存的数据量大,并且数据类型复杂,比较好的办法是选择数据库来保存数据。NI公司开发了用于LabVIEW的数据库开发工具包,安装此工具包后就可以用数据库来管理大量的测试和检测数据。此工具包支持几种基于文件的

数据库以及具有高可靠性的运行在不同计算机和操作系统下的关系型数据库管理系统,通过使用不同的工具,用户可以实现数据库的创建、登录、修改、提取数据以及对数据的管理等等。现在大多数数据库管理系统都将数据存储在表中,表通过记录和字段(即行和列)来组织和管理数据。每一个表在数据库中的表名是唯一的,同样,表中的字段名也是唯一的。

LabVIEW的数据库开发工具包使用基于Mi2crosoftActiveXDataObject(ADO)数据访问技术,通过使用符合ODBC或OLEDB规范的数据库驱动程序访问数据库,这样可以很容易的通过使用工具包中的打开数据库连接函数连接到其他的数据库,并且很方便的实现数据库和LabVIEW数据类型之间的转换。可以使用ADOODBC提供的结构化查询语句(SQL)对所支持的数据库进行查询。

要用数据库实现对测试数据的管理,首先要通过DBToolsOpenConnectionVI来打开数据库连接,此VI要求提供数据库的连接信息。由于不同的数据库管理系统使用不同连接参数,所以必须使用不同连接方法来连接不同的数据库系统,例如,ODBC使用数据源名称(DSN)来连接数据库,而ADO则使用通用数据连接(UDL)连接数据库,DBToolsOpenConnectionVI提供了对这些连接方法的支持。在进行连接之前先使用控制面板中的ODBC管理器针对将要使用的数据库建立用户DSN或者文件DSN,此DSN不仅仅是所要连接的数据源的名称,而且还包括ODBC驱动程序的信息以及其他连接属性,包括路径、安全信息以及数据库的只读状态。建立了DSN之后就可以连接数据库了,如果是用户DSN连接形式则如图1所示。如果是文件DSN则连接形式如图2所示。然后就可以使用工具包中的VI实现对数据库的操作,例如向表中添加记录,使用SQL查询语句查询符合条件的记录,删除记录,删除表等等。








2、虚拟仪器环境下报表的设计方法
使用LabVIEW制作测试仪器时,可能会遇到打印报表的情况,LabVIEW工具箱中有关于报表打印的子VI,但是使用起来很不方便,并且很难制作复杂的报表,如果使用Microsoft公司的电子表格处理软件Excel来设计报表,可以制作复杂实用的报表。LabVIEW提供了对ActiveX技术的支持,可以在LabVIEW环境下通过ActiveX技术来操作Excel电子表格。ActiveX技术是基于组建对象模型(COM-ComponentObjectModel)和Windows32位应用编程接口(Win32API)的一种与具体编程语言无关的技术。由于ActiveX是一种开放的技术,将Excel作为ActiveX服务器,可以通过属性和方法操作电子表格中的对象。属性是指对象的特征,改变属性的值可以改变对象的行为和外观。而方法是对象可以执行的操作。首先在LabVIEW的前面板中添加一个AutomationRefnumVI,选择选择ActiveX类为Mi2croSoftExcel9.0ObjectLibrary,这时将LabVIEW跟Excel连接起来,然后在控制面板中添加AutomationOpenVI,并将前面一个VI的输出连到此VIAuo2tomationRefNum输入端,这样就启动了Excel应用程序并将其作为服务器,然后通过在控制面板中添加PropertyNode打开电子表格工作簿,进一步打开Worksheet,然后通过PropertyNode和InvokeNode节点操作单元格。



图3是一个通过LabVIEW操作Excel的例子程序的程序框图

很给力的活动啊!支持一个

赞一个,谢谢分享,学习哈

xuexi                                                  

学习学习,,,,

请问小编文中的AutomationOpenVI在哪里呀?谢谢!

谢谢分享,很宝贵的资料

赞一个,谢谢分享,学习哈

谢谢分享,学习哈

这个不错哦,谢谢分享~

虽然没看懂但是赞一个

在看看喽,不过谢谢啦

小编总结的很好,很到位

学习中 十分受教,
      能带历程就更好了                我的

学习一下,谢谢分享。

赞一个,谢谢分享,学习哈

赞一个,谢谢分享。

好,学习中.....

求教求教求教求教求教求教求教求教求教求教求教求教求教求教求教

谢谢分享,挺好的

很给力的活动啊!支持一个

很给力的活动啊!支持一个

很给力的活动啊!支持一个

很给力的活动啊!支持一个

很给力的活动啊!支持一个

支持一个!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top