当前位置:首页 期刊杂志

基于LabVIEW的温度测控系统设计

时间:2024-08-31

黄根岭, 任全会, 江兴盟

(郑州铁路职业技术学院, 河南郑州 450052)

0 引言

在一些功能比较复杂的数据采集系统中,通常以PC为上位机,单片机为下位机,由单片机完成数据的采集及对装置的控制,由上位机完成各种复杂的数据处理(比如对现场数据进行分析、显示、制表、打印等)及对单片机的控制。因此,PC和单片机之间存在着大量的数据交换,通常PC和单片机之间的数据通信是通过串口来实现的。本文以温度作为数据采集对象,利用LabVIEW作为语言开发平台,设计系统软件,并利用PC串口与单片机进行串行通讯,实现温度的实时测量与控制。

1 上位机软件设计

在上位机程序设计中,采用何种语言设计人机交互界面,不仅关乎整个系统性能的优劣,还关乎界面的美观性与易用性。常用的上位机编程语言有VB、VC等软件,本系统采用LabVIEW语言进行开发,美国NI公司开发的LabVIEW是一种图形化编程语言,它使用直观的图标和连线替代传统基于文本的函数和数据流向,编程方式简单、直观,所设计出的界面生动友好、功能强大、易于操作。更重要的是,采用LabVIEW作为开发平台能大大降低成本、缩短开发周期。

1.1 LabVIEW串行通信功能模块

在LabVIEW功能面板的函数→仪器I/O→VISA→高级VISA→总线/接口配置→串口目录下,包含串口通信所需的模块。常用模块及属性如下:

1) VISA Configure Serial Port

用于配置VISA resource name所指定的串口通信参数。

2) VISA Write

用于将输出缓冲区中的数据写到VISA resource name所指定的串口中。

3) VISA Read

从VISA resource name所指定的串口接收缓冲区中读取规定字节数的数据, 并将这些数据写入计算机内存中。

4) VISA Close

关闭与VISA resource name所指定的串口资源之间的通信。

1.2 LabVIEW程序设计

图1 系统主界面

系统主界面如图1所示,主要包括串口通信配置和温度数据采集,下面简单将各部分对应的程序框图介绍如下。

1) 串口通信参数设置

用户可通过下拉菜单设置通信端口、波特率、数据位、校验位和停止位,本系统采用com1口、波特率为2400波特、数据位8位、不设置校验位、1位停止位(程序框图见图2)。

图2 串口通信参数设置部分的程序框图

2) 温度采集部分

温度采集部分主要包括温度显示、温度设置、温度报警、温度数据报表生成等模块,其中温度显示方式有两种:一种用图形化的可视温度计来显示,另一种用实时曲线来显示(程序框图见图3和图4);用户可通过直接拖动指针或输入数值来设置“上限温度”和“下限温度”,当温度超过或低于设置的温度时报警灯将闪烁(程序框图见图3和图5);用户可通过“温度设定”按钮将当前的设置上下限值发送到下位机内存内;用户可通过“写入文件”按钮将当前记录时间和温度值保存到XLS文件中(程序框图见图5)。

图3 温度计显示和报警指示部分的程序框图

图4 温度数据实时曲线显示和报表文件生成部分的程序框图

图5 温度报警部分的程序框图

需要注意的是,串行通信中传递的是字符串类型的数据,因此在读取温度数据时需要将字符串格式的温度值转化为数字量形式的温度值;另外在进行串行通信时,要约定串行通信协议。

2 下位机硬件设计

下位机主要包括单片机最小系统、串口通信电路以及温度采集模块。下面简单介绍一下串口通信电路和温度采集电路。

2.1 串口通信电路

利用STC89C51单片机全双工串口可以很方便地与上位机进行通信,需要注意的是,单片机串口输入输出电平为TTL电平, 而PC机采用的是RS-232电平,因此要实现单片机与PC机通信, 必须进行电平转换。本系统采用MAXIM公司的MAX232CPE芯片作为电平转换芯片,其原理图如图6所示。

图6 串口通信电路

2.2 温度采集电路

DS18B20是一个采用1-wire总线技术的数字温度传感器,与单片机连接时仅需要一条口线(本系统采用P1.1管脚)即可双向通信,其原理图如图7所示。

图7 温度采集电路

需要注意的是,在单片机读取温度时,必须严格遵守DS18B20的时序,否则不会响应单片机。

3 测试结果

配置DS18B20的精度为10位(最小分辨率就是0.25℃),系统运行结果为20℃(如图1所示),与室内的标准温度19.5℃相比误差为0.5℃,导致结果偏高的原因主要有两方面:一是系统运行后DS18B20所在的电路板会发热,导致DS18B20的周围温度偏高,另一方面是DS18B20为单线数器件,在输出低电平的时候芯片有mA级的电流,器件本身会产生热量,导致温度偏高。经过多次测试结果表明,该系统可适用于准确度小于0.5℃的温度测试场合。

4 结论

本文介绍了基于LabVIEW的PC与单片机串行通信的实现方法, 并应用于温度测控系统, 给出了LabVIEW的前面板和程序框图。测试结果表明:系统性能稳定,界面形象逼真,数据准确、实时性好,具有一定的推广价值。

[1]李玉柏,彭启琮.虚拟仪器关键技术分析[J].电子测量与仪器学报,2001(01):37-42.

[2]李江全.虚拟仪器设计测控应用典型实例[M].北京:电子工业出版社,2010:26-35.

[3]杨乐平,李海涛.LabVIEW设计及应用[M].北京:电子工业出版社,2001:230-245.

[4]余成波,冯丽辉.虚拟仪器技术与设计[M].重庆:重庆出版社,2006:1-5.

[5]应怀樵.虚拟仪器与计算机采集测试分析仪器的发展和展望[J].测控技术,2000(08):4-7.

[6]胡敦利.基于虚拟仪器的数据采集系统[J].微计算机信息,2007(23):144-146.

[7]刘丁,毛德柱.USB在数据采集系统中的应用[J].电子技术应用,2000(04):1-2.

[8]陈金龙.虚拟仪器系统及其开发程序LabVIEW介绍[J].安徽气象,2004(01):34-36.

[9]宋波,陈一民.关于虚拟仪器开发工具的比较与选择[J].国外电子测量技术,2006(08):1-4.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!