基于LabVIEW的虚拟温度采集系统
2020-10-18朱佳琳张心光王馨悦王媛迪
朱佳琳, 张心光, 崔 涵, 王馨悦, 王媛迪
(上海工程技术大学 机械与汽车工程学院, 上海 201620)
早期温度监测采用的基本方法是利用温度计并通过人工读数来记录温度变化.由于传统温度计只能测量某一时刻的温度,不能直观地表现温度变化,同时也不方便温度记录,因此需要一台能够实时监测并采集温度数据的装置.
随着计算机技术与虚拟仪器的发展,利用计算机可将虚拟仪器技术与温度采集系统结合,众多学者对各种基于虚拟仪器的温度采集系统进行了研究.詹建国等[1]对多点温度采集系统进行设计,系统主要由DS18B20和W78E58构成,能够实现对温度的实时监测,但用户界面需要进一步优化.汤江龙等[2]利用LabVIEW设计温湿度测控系统,实现温湿度实时采集和监测.孙筱等[3]利用LabVIEW设计挤塑成型过程的温度控制系统,实现挤塑成型过程的温度仿真.李伟刚等[4]利用LabVIEW设计发射筒瞬态温度测试系统,实现发射筒瞬态温度采集和监测.虽然现有温度采集系统大多可实现温度实时采集和显示,但鲜有温度采集系统能实现温度的超限报警,且存在平均采样数不能由用户自行确定,在温度变化缓慢的场合容易造成资源浪费等缺陷[5-8].
针对以上问题,本文提出一种基于LabVIEW的单通道温度采集系统,该系统主要由温度传感器、USB数据采集(DAQ)卡和计算机(基于LabVIEW的上位机程序模块)构成,可实现温度变化趋势在系统面板上的实时显示,并通过在系统面板上增加参数设置端口实现用户对系统的控制以及高温预警功能.
1 LabVIEW开发平台
LabVIEW (Laboratory Virtual instrument Engineering)是由美国国家仪器公司(National Instruments,NI)研制开发,专门用于虚拟仪器开发的图形化软件编程平台,也是目前应用最广、发展最快、功能最强的图形化软件集成开发环境,能够实现标准的数据采集和仪器控制功能[3-4].LabVIEW是一种图形化的编程语言.图形化源代码在某种程度上类似于数据流流程图,又被称为程序框图代码,它最大限度地利用技术人员、科学家、工程师所熟悉的术语、图标和概念.因此,LabVIEW是一个面向最终用户的工具,在仪器控制和数据采集方面有十分广泛的应用.使用它进行原理研究、设计、测试并实现仪器系统时,可以极大地提高工作效率,加快开发速度.
利用LabVIEW软件平台进行虚拟温度采集系统设计不仅在很大程度上使开发者可以更高效地进行系统开发,同时简便的操作面板使系统的实用性和可操作性更强,更加方便用户在各种场合进行实际操作.
2 虚拟温度采集系统设计
基于LabVIEW的虚拟温度采集系统总体构成如图1所示.温度采集系统的总体设计思路是采用传感器将物理信号转变为相应的电信号,并借助数据采集卡将其转变为数字信号,方便计算机处理.在计算机系统中,可通过数据采集软件实现数据的分析、处理,以及温度的实时测量与监控.
图1 基于LabVIEW的温度采集系统Fig.1 Temperature acquisition system based on LabVIEW
该系统使用热电偶传感器,数据采集卡为USB DAQ380G采集卡.USB DAQ380G采集卡是一款8通道、24位分辨率的多功能USB数据采集卡,它的性价比较好,可保证实时信号不间断采集与存储,并且具有超高精度的高速取样频率,可即插即用.
2.1 系统界面设计
软件显示界面,即LabVIEW程序的前面板在整个虚拟仪器中具有重要作用.对其进行参数设置、结果显示等操作,均可借助编程方式实现.这就对系统界面提出较高要求,要求其必须具有简单、直观、可操作性强等特性,方便用户使用与控制.系统前面板主要包括仪表显示面板、参数设置和报警指示灯3大部分,如图2所示.参数设置包括采集设备、测试通道、采样数量以及报警温度.温度显示主要通过波形图来体现.借助于系统前面板波形图能够实现被测信号变化情况的实时显示,方便用户进行观察.当被测温度超过设定的上限报警温度时,指示灯点亮.
2.2 系统程序框图
每一个程序前面板都对应一段框图程序.框图程序用LabVIEW图形编程语言编写,可以把它理解成传统程序的源代码.框图程序由端口、节点、图框和连线构成.其中,端口用来向程序前面板的控制和显示传递数据;节点用来实现函数和功能调用;图框用来实现结构化程序控制命令;连线代表程序执行过程中的数据流,定义框图内数据流动方向.温度采集系统主要由数据采集、数据处理和温度报警等模块构成,程序框图如图3所示.
数据采集模块包含物理通道创建、数据读取、While 循环等节点,借助于这些节点,可实现对温度变化数据的实时采集.数据处理模块主要由循环、加减乘除运算、数组元素求和、数值常量等节点构成,通过集成这些节点的功能,可将电压信号转变为对应的温度数据.
温度报警模块一般包含条件结构、字符串常量、布尔常量等节点.一旦检测出温度超出设定值,模块便进行报警.
3 系统验证
3.1 运行调试
为验证该系统的正确性,将系统在室温环境下进行试验,调试试验运行结果如图4 所示.设置报警温度为10 ℃,样本平均采样数为1 000,此时系统测得温度为16.819 9 ℃,超过温度上限,报警指示灯工作,调试过程中温度同步变化,温度波形图实时显示正常.
图4 温度采集系统调试Fig.4 Temperature acquisition system debug
进行多次调试试验,并将系统所测温度结果与相同环境下温度计结果进行比较,见表1.表中,样本平均数量为1 000,温度上限为20 ℃.
表1 温度采集系统试验数据Table 1 Experimental data of temperature acquisition system
将实时测量结果保存至后台,自动生成折线图如图5所示.
图5 测量结果折线图Fig.5 Line chart of measurement results
多次试验结果表明,该系统所测数据与温度计显示数据的误差为±0.4 K,达到精度要求.
由图4和表1可以看出:1) 环境温度采集结果和实测结果比较接近,验证了文中开发的温度采集系统具有有效性;2) 当温度高于用户设置的报警温度,报警指示灯点亮.
3.2 虚拟系统实际化
采用温度传感器和数据采集卡将设计的温度检测仪转化为实际产品,具体操作为:温度传感器采集数据,数据采集卡将采集到并经处理的电信号转换成数字信号输入计算机(PC)系统;在PC端利用LabVIEW平台的编写程序对采集到的信号进行分析和显示.一般数据采集卡有模拟输入、模拟输出、数字、计数器/定时器操作等功能,这些功能可由相应的电路模块来实现.需要进行数据实时采集时,选择适当的数据采集卡插入PC端插槽,通过相应的驱动程序和硬件模块连接便可以实现.设计流程图如图6所示.
图6 设计流程Fig.6 Process of design
4 结 语
在LabVIEW图形化语言环境下设计的虚拟温度采集系统简单快捷,用户完全可根据实际环境温度需要调用不同功能的软件模块,通过改变设定参数,就可在同一台计算机中对采样信号进行实时在线和离线分析,便于准确判断当前温度是否超出规定的温度范围,从而对温度进行精确监控.本研究基于LabVIEW平台实现温度数据采集系统设计,利用热电偶温度传感器实时采集环境温度,通过USB数据采集卡配置通道,实现对温度信号波形的充分显示,对温度变化、数据显示、报警提示等方面信息进行展示.用户还可以根据实际需求对样本数量、报警温度值等参数进行设置,相比普通的温度测量仪更满足各种环境下的实际运用.同时,软件设计借助于模块化思想进行设计,有助于提升软件升级、维护等方面的便利性,极大提高系统的实用性和可操作性.试验证明:本研究所设计的温度采集系统可实现对环境温度的实时采集与显示,并根据用户要求对目标环境温度进行实时监测控制,误差较小、精度良好.