基于LabVIEW的温度测量及数据采集系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LabVIEW技术大作业
题目:基于LabVIEW的温度测量及数据采集系统设计学院(系):信息与通信工程学院
班级:通信133
学号:xxxxxxxxx
姓名:xxxxxx
一、设计背景
LABVIEW最初就是为测试测量而设计的,因而测试测量也就是现在LABVIEW最广泛的应用领域。经过多年的发展,LABVIEW在测试测量领域获得了广泛的承认。至今,大多数主流的测试仪器、数据采集设备都拥有专门的LabVIEW驱动程序,使用LabVIEW可以非常便捷的控制这些硬件设备。同时,用户也可以十分方便地找到各种适用于测试测量领域的LabVIEW工具包。这些工具包几乎覆盖了用户所需的所有功能,用户在这些工具包的基础上再开发程序就容易多了。有时甚至于只需简单地调用几个工具包中的函数,就可以组成一个完整的测试测量应用程序。
二、系统方案
本设计的程序框图和前面板图分别是图1.1和图1.2,“温度测量及数据采集系统.vi”是一个测量温度并将测试数据输出到文件的VI。此VI中的温度是用一个20至40的随机整数来代替的,测试及采集100个温度值,每隔0.25秒测一次,共测定25秒。在数据采集过程中,VI将在前面板的波形图上实时地显示测量结果。采集过程结束后,波形图上显示出温度数据曲线,数组中显示每次的温度测量数据,并在显示控件中显示测试中温度的最大值、最小值和平均值,同时把测量的温度值以文件的形式存盘。
图1.1温度测量及数据采集程序框图
1.2温度测量及数据采集前面板图
二、系统各模块介绍
2.1循环模块
For循环用于将某段程序循环执行指定的次数,
是总数接线端,指定For循环内部代码执行的次数。如将0或负数连接至总数接线端,For循环不执行。
是计数接线端,表示完成的循环次数。第一次循环的计数为0。
本设计使用for循环将循环内的程序循环100次。
2.1 for循环
2.2等待模块
本设计使用等待函数来等待指定长度的毫秒数,并返回毫秒计时器的值。连线0至毫秒计时值输入,可迫使当前线程放弃对CPU的控制。
2.2 等待时间函数结构
程序设置等待时间为250ms,因为设计中测试及采集100个温度值,每隔0.25秒测一次,共测定25秒。
2.3温度测量及记录模块
由于计划本设计的输出到文件的格式为如下:
点数时间(s)温度值(°c)
1 0.000000 23.000000
2 0.250000 30.000000
3 0.500000 26.000000
这部分写入的是除了题头的部分,用格式化写入字符串(函数)使数据格式化为文本,并使文本写入文件。写入的内容分为三个部分,第一部分是“点数”的数据,是将for
循环的计数接线端和“加一”函数相连,输出长整形数据到“输入1”。第二部分是“时间”的数据,是将for循环的计数接线端和双精度常数0.25用乘法函数输出双精度数据到“输入3”第二部分是“温度值”的数据,温度是用一个20至40的随机整数来代替的,随机数(0-1)和双精度常数20用乘法函数相乘的输出值和双精度常数20用加法函数相加,将输出值用最近数取整函数向最近的整数取整,将取整后的值输出双精度数据到“输入5”。输入2、输入4、输入6为制表符常量。
2.3 温度测量及记录模块程序框图
2.4格式化写入字符串函数结构
2.4储存文件模块
一个典型的文件I/O操作包括3个步骤:①创建或打开一个文件;②做读取或写入操作;③关闭文件。
本设计使用了打开/创建/替换文件(函数),写入文本文件(函数) ,关闭文件(函数)和简易错误处理器VI 来构成储存文件的模块。
2.5储存文件模块程序框图
2.4.1打开/创建/替换文件(函数)
2.6打开/创建/替换文件函数结构
权限指定访问
式。默认值为read/write。
错误输入(无错误)表明节点运行前发生的
错误。该输入将提供标准错误输入功能。
在本设计中,运行程序后,提示“选择或输入一个需打开的文件路径”,可以创建或选择一个txt文件,用来记录测量数据。
2.4.2写入文本文件(函数)
2.7写入文本文件函数结构
此函数使字符串或字符串数组按行写入文件。其中文本是函数写入文件的数据。文本可以是字符串和字符串数组。本设计中的第一个循环外的写入文本文件函数和连接字符串相连实现字符串写入文件的功能,在连接字符串中将字符串“点数时间(s)温度值(°c)”和行结束常量连接。循环内的写入文本文件函数将在之前的文本文件中继续写入字符串,由温度测量及记录模块的“格式化写入字符串”的输出提供数据。
2.4.3关闭文件(函数)
本设计使用关闭文件函数来关闭引用句柄指定的打开文件,并返回至引用句柄相关文件的路径。
2.8关闭文件函数结构
2.4.4简易错误处理器VI
当本设计关闭文件时发生错误,显示有错误发生。如发生一个错误,该VI返回错误描述,或选择性地打开一个对话框。
2.9简易错误处理器结构
2.5显示模块
2.10显示模块程序框图
2.11显示模块前面板图
本设计的显示模块由五个部分构成,分别是前面板的波形图显示的实时数据、数组显示的数据和三个数值显示控件显示的最大最小值及均值。在数据框图中将温度测量及记录模块的温度值输出到实时数据的波形图控件和记录数据的数组中,就可以在前面板
上观察到测试的温度值,将其温度值经过“均值VI”输出平均值到平均值的显示控件中,经过“数组最大值与最小值”函数分别输出最大值和最小值到相应显示控件中,连接时隧道模式选择索引。
三、系统性能:
在计算机广泛应用的今天,数据采集的重要性是十分显著的。它是计算机与外部物理世界连接的桥梁。温度测量及数据采集系统在很多行业都被需要,而且可以配合别的软件使用。此温度测量及数据采集系统设计操作简单,数据清晰明了,用户可以快速理解和使用。
四、心得体会
经过几天的labview大作业研究和实践,我收获了很多。结合之前课堂作业和课后实践的学习经验,我通过查阅资料和认真严谨的构想,反复实践和修改调试,设计了出一个温度测量及数据采集的系统。通过这次设计,让我更近一步地熟悉了LabVIEW开发环境和编程方法,以及程序结构、数据类型、图形显示等方法,掌握了软件开发流程及其调试技术。设计的每一步都是细细推敲过的,让我培养了严谨仔细的学习态度,反复改良此系统的功能和面板图,使我懂得了精益求精的道理。以后会更深入的学习labview,让它更多的应用在我们其他方面的学习和研究中。