基于STC89C52的可程控温度监测系统设计

时间:2022-08-14 10:11:44

【前言】基于STC89C52的可程控温度监测系统设计由文秘帮小编整理而成,但愿对你的学习工作带来帮助。该系统设计分为温度采集部分、数据通信部分、上位机管理中心三大部分。在温度采集模块中,由STC89C52单片机作为微处理器来实现温度监测系统的核心设计,利用数字化温度传感器DS18B20实时采集温度,由按键电路设定预警值,LED数码管可以显示温度实时值及预警值。在数据通信...

基于STC89C52的可程控温度监测系统设计

摘要:本文提出了基于stc89c52的可程控温度监测系统设计的方法,阐述了该系统的软硬件设计原理。本系统采用STC89C52作为微处理器,采用DS18B20作为温度传感器,可实时采集室内温度,并能设置门限值实时报警,系统还提供了与PC机的串行通信接口。通过实践证明该系统稳定性高、数据传输可靠、性价比高,已广泛应用于室内温度测量领域。

关键词:STC89C52 可程控温度监测 DS18B20 串行通信

1、引言

温度监测系统是典型的控制系统,温度在工业生产中有着比较重要的作用,比如加热炉、反应沪等,对温度精度都有非常高的标准。随着计算机技术的发展,对于温度监测系统已开始向智能化、自动化方向发展。随着半导体技术的进步,温度传感器的发展相当迅速,传统的温度监测器其可靠性能差、精度低;现代的温度传感器朝着智能化、数字化、高精度、多功能、总线标准化、高可靠性等方向发展。因此,为了达到温度检测智能化、可程控、测试温度精度高等要求,本文设计了一种测温范围大、精度高、性能好的可程控智能化温度监测系统。

2、系统总体方案设计

该系统设计分为温度采集部分、数据通信部分、上位机管理中心三大部分。在温度采集模块中,由STC89C52单片机作为微处理器来实现温度监测系统的核心设计,利用数字化温度传感器DS18B20实时采集温度,由按键电路设定预警值,LED数码管可以显示温度实时值及预警值。在数据通信模块中,通过串口将温度采集模块中采集的数据与PC机上位机管理中心进行通信。在上位机管理中心,主要实现数据的采集、实时显示、动态曲线趋势图、存储、管理、导出报表及自动打印等操作。整个系统结构简单、可靠性高、测试精度高、性价比高,广泛应用于测温系统领域中。

3、系统硬件设计

系统硬件设计主要包含三个模块:温度采集模块、串口通信模块、时钟模块。

3.1 温度采集模块

温度采集模块的核心器件是数字化温度传感器DS18B20,它是一种单总路线芯片,它的三个引脚分别接电源、STC89C52的WR引脚和地线。通过第二个引脚与单片机的WR引脚相连,进行时序控制来启动温度转换和设置温度预警值,读出温度转换值等功能,温度转换后的精确值通过EPROM存入单片机,然后通过串口传输到上位机管理中心进行显示、存储和管理。

3.2 串口通信模块

串口通信模块采用MAX232串口总线标准,是比较常用的串行通信标准,本设计中用来实现温度采集模块与PC机上位机管理中心进行数据通信。MAX232协议以-5V~-15V表示逻辑1;以+5V~15V 表示逻辑0。它支持5、6、7、8和9位数据位,1位或2位停止位的串行数据帧结构;由硬件支持的奇偶校验位发生和校验;数据溢出检测;帧错误检测;包括错误起始位的检测的噪声滤波器和数字低通滤波器;三个完全独立的中断,TX发送完成、TX 发送数据寄存器空、TX接收完成;支持多机通信模式;支持倍速异步通信模式。

3.3 时钟模块

在设计中选择11.0592M的晶振,它能够准确地划分成时钟频率,与UART常见的波特率相关,特别是较高的波特率(19600,19200)。

4、系统软件设计

在对温度采集模块进行底层软件设计时,采用KeilC开发环境进行开发设计,它提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面,代码编码效率比较高。在对上位机界面进行开发时采用VB编程语言,它拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易地使用DAO、RDO、ADO连接数据库,创建ActiveX控件,并能快速地建立应用程序。

4.1 底层程序设计

底层程序设计主要介绍主程序流程图和温度采集程序设计流程图,在主程序中,先进行初始化,声明子函数、全局变量,打开设定相关中断,设置波特率,再进行温度采集子程序,并进行实时显示、存储和上传到PC机。在温度采集程序中,严格按照DS18B20访问协议步骤进行实现,先进行初始化,定义子程序变量,调用复位子程序,复位DS18B20准备采集温度。然后调用写字节子程序,执行ROM操作命令,将其跳过。然后再次调用写字节子程序,执行温度转换,这里需要一个延时,等待程序转换完成后,便可将采集到的温度值的各位对应的数据写入存放实时温度的数组num1。接下来再次初始化、执行ROM操作命令,然后执行存储器操作命令,将温度值读出并计算,从而得到实时温度值的每一位数值。

4.2 通信程序设计

上位机使用MSComm控件与下位机通信,程序中使用该控件的OnComm事件,使整个子程序循环执行,不断接收下位机传上来的数据。在通信程序设计中,先进行初始化,设置通信端口、波特率等参数,建立通信协议,然后接收数据并转换。当收到的数据为接收标志位时,则清空数据,等待接收数据,然后返回接收转换数据,接收完四个字节的数据后,将数据转换成数值型,然后还要再次返回接收数据,不断循环,以保证显示温度为当前的温度值。

4.3 上位机程序设计

上位机程序设计采用VB编程语言进行开发,实现监测数据的采集、数据显示、动态趋势图显示、数据存储、数据管理、导出报表、自动打印、用户管理及密码修改等功能。

5、结语

本文分别介绍了基于STC89C52的可程控温度监测系统的软硬件设计。系统能够远程对温度进行检测,并能够对温度进行有效控制,通过设置不同预警值,可实现系统自动报警功能。上位机管理中心软件设计给温度采集、管理、存储提供了极大地方便,并很好地保证了用户信息的安全性。通过实践证明,该系统可靠性高、数据传输稳定、性价比高等优点,能够广泛应用于温度测量领域。

参考文献

[1]DALLAS Semiconductor. DS18B20 Data Sheet[Z].2002:1-26.

[2]龚志勇.《DS18B20作温度补偿的超声波液位设计》.《测控技术》,04年第11期.

[3]沈聿农.《传感器及应用技术》.北京:化学工业出版社,2011.1.

上一篇:基于超声波测距的图形显示倒车雷达设计 下一篇:基于ARM的人脸检测系统的设计