基于单片机AT89C52的温度实时监控系统设计

发布者:omega34最新更新时间:2018-03-21 来源: eefocus关键字:单片机  AT89C5  温度实时监控系统 手机看文章 扫描二维码
随时随地手机看文章

    本文介绍了一种温度实时监控系统的设计。该系统通过单片机实现实时控制,并通过串口连接单片机与上位计算机,在计算机中实现实时监控、大容量的数据存储及数据分析等功能,解决了常规温度测量方法在温度测量实时性差、不能储存数据及缺乏数据分析功能等方面的缺陷。

    温度监控系统在农业、工业和生活中有着广泛的应用,但随着监控的面积扩大,监控点的增加及控制处理趋于智能化等新的应用要求出现,传统的温度控制系统已经逐渐不适用,首先是不便于观察而且不能及时地对异常温度变化做出迅速反应,其次是传统的温度控制系统不能储存大量数据,不能对监控的数据进行分析,不便于对温度情况进行长期的监测和科学的分析,为了解决以上问题,本文设计了一个能实时响应温度并进行控制的温度实时控制系统,并且采用与计算机串口通信结合的方式通过计算机增大了系统储存量,而且在计算机系统中收集和处理温度控制系统的数据,大幅度的增强了该系统的功能,并具备较强的扩展性。
    随着计算机技术特别是单片机技术的发展,串口通信在诸多领域上得到了广泛的应用,计算机可以通过串口来获取单片机的各种数据,然后利用计算机强大的功能进行处理,再根据处理的结果发送数据到单片机,实现远程控制设备。本设计采用上位机和下位机的互联工作,而计算机的分析处理能力较强,有很好的人机界面和大容量的多种存储方式,所以上位机一般采用计算机,单片机具有价格低,功能强,较好的抗干扰能力和面向控制等特点,所以下位机采用单片机来构成互联工作模式。由于串行通信具有高效可靠、价格便宜,遵循统一的标准等特点,适用于本设计的通信要求。

1 硬件设计
1.1 电路设计
    温度实时控制系统的下位机由7个部分组成(详见图1),其中测量环境温度使用DS18B20数字温度传感器,它将温度传感器、A/D传感器、寄存器、接口电路集成在一个芯片中,采用1-Wire总线协议,可实现直接数字化输出。DS18B20数字温度传感器温度测量范围为-55~+125℃,测温分辨率可达0.062 5℃,被测温度用符号扩展的16位数字量进行串行输出,适配各种单片机或系统机。使用这种传感器不需要A/D转换电路,可以大大简化电路,温度测量精度和速度都大幅提高。

b.JPG

    本设计利用MAX232进行电平转换,实现计算机和单片机的互联通信。MAX232是低功耗、单电源双RS 232发送/接收器,适用于各种EIA-232 E和V.28/V.24的通信接口。MAX232芯片内部有一个电源电压变换器,可以把输入的+5 V电源变换成RS 232C输出电平所需±10 V电压,所以采用此芯片接口的串行通信系统只要单一的+5 V电源就可以。在MAX232芯片上,选用其中一路发送/接收,R2OUT接89C52的RXD(P3.0),T2IN接89C52的TXD(P3.1),T2OUT接PC机的RD,R2IN接PC机的TD,这样就能通过P3.0和P3.1I/O口就实现单片机与计算机互联通信。本设计的信号灯部分一共使用6只LED灯,其中Start灯亮表示单片机上电工作,RX2(P3.0)灯亮表示接受从PC机传来的数据,TX2(P3.1)灯亮表示向PC机发送数据。m1,m2,m3三颗灯分别对应的接口为P2.5,P2.6,P2.7,当3个温度传感器探测的温度大于设定值则变亮。

    总体电路设计是以单片机为中心,整合和控制各部分。本设计的单片机是STC89C52,它通过XTAL1,XTAL2引脚外接晶振和电容实现11.0 59 2 MHz的时钟周期,这能产生准确的波特率,有利于串行通信。它的RESET引脚外接电路实现上电自动复位和按键电平复位,P1.4~P1.7引脚接有4个按键,实现时间和温度的设定。单片机通过P1.0,P1.1,P1.2引脚读出3个温度传感器的温度值,然后通过P0端口和P2.0,P2.1,P2.2控制液晶板,在液晶上显示时间和温度值。同时经过单片机内部程序,控制信号灯的亮灭,发送和接受计算机的数据。

    1.2 单片机程序设计

    基于上节所述的硬件设计,编写程序以实现期望的功能,其中主程序不断刷新LCD显示的内容,定时器T0中断程序用于时钟的功能,定时器T1作为波特率发生器,串口中断实现与PC机的通信。


    单片机刚启动,首先进行数据的初始化,初始化结束后,开始进入工作状态,若没有到结束时间,就进行温度测量并在液晶板上显示当前温度值,同时按键扫描程序不断监测是否有按键启动,若S1被按,则进入设定状态,定时器T0中断关闭,当前时间停止,液晶板上显示温度设定值和当前时间,可以通过S2,S3按键做修改(如图2)。

c.JPG



    在工作的过程中,当单片机接收一个数据会全部储存在BUF变量里面,同时产生一个串口中断,需要软件去清除中断标志。然后取出BUF的值,储存到对应的数组中。由于传送的数据简单,采用了无校验的8位数据直接传送模式(如图3所示)。

2上位机的程序设计
    在串口的几种编程方式中,利用MICroSOFt公司提供了MSComm控件,可以使开发串口通信程序变得十分简单。VisualBasic是近年来发展最快的一种计算机语言,其简洁和实用性已经受到了众多计算机用户和程序员的欢迎,尤其是6.0版本,功能强大且易于掌握,是一种优秀的可视化开发环境,在VB应用程序中调用MSComm控件也十分容易。采用VB标准控件MSComm来实现通信功能,实际上是调用了API函数,而API函数是由Commdry解释并传给设备驱动程序执行的,对于VB程序开发者只需知道MSComm控件的属性和事件的用法即可以实现串口的操作。本温度实时控制系统的上位机操作界面正是基于VB的MSComm控件为核心,完成接收和保存数据,以及修改单片机上的参数。


    系统操作界面启动后,在串口端口和波特率选择2个参数设置正确后,打开串口,这时计算机会接收从单片机发送过来的数据,这些数据是一连串的字符,所以对接收过来的数据的处理,关键是字符串的处理。通过设定参数的位数,准确分离开出每一个参数的值,然后存入对应的数组中,并实时地显示在屏幕上,还可以按需把数据保存到记事本。同时在操作界面上修改的数据也能通过串口传送到单片机,远程控制单片机。在发送的数据也要严格按照一定的格式进行发送,这样单片机才能正确接收,操作界面程序流程如图4所示。
    本设计定义的接收和发送数据格式如表1所示。

 

a.JPG

    3 系统实际运行
    打开设计好的上位机软件后,首先选择正确的串口,实现与单片机通信,然后通过图5所示的操作界面可以实时观测到这个温度实时控制系统所测量的温度值和对应的时间点,如有需要可以设置时间的起始点和结束点,通过软件绘画出温度值的变化曲线,也可以通过实时曲线观查温度的变化情况,这个设置方便于长时间地观察温度的变化,还可以将数据全部保存到软件里,在需要的时候进行必要的数据分析;而在操作界面上可以很方便对温度实时控制系统中的监控时间段和温度限制值作修改,当测量的温度值超过温度限制值,设置好的报警灯会闪烁,提醒我们注意。

4 结语
    本文设计了基于单片机AT89C52的温度实时监控系统并通过串口通信实现了单片机与计算机互联,实现了多点温度实时远程控制,计算机的实时数据分析,长期数据的图表式保存,该系统已经在硬件平台和软件平台上成功运行。整个设计具有成本低,测量范围广,实时操作方便快捷,显示和储存的信息量大,可扩展功能强等优点,可以应用在仓库、温室大棚、机房等进行温度实时控制。另外设计方案可以扩展为网络连接,可以突破串口传送的距离限制,广泛用于温度在DS18B20测温范围之内的场合,实现随时随地通过网络进行实时控制,将具有更大的应用价值。


关键字:单片机  AT89C5  温度实时监控系统 引用地址:基于单片机AT89C52的温度实时监控系统设计

上一篇:基于MCS51单片机的低成本LabVIEW实验教学系统设计
下一篇:基于STC89C51单片机的GPS智能塔钟控制系统的研究

推荐阅读最新更新时间:2024-03-16 15:58

μC/OS-II在凌阳单片机SPCE061A上的移植
摘要:以凌阳单片机为例详细介绍μC/OS-II的移植方法;重点讲解在系统移植过程中一些难以理解的概念,并首次实现了μC/OS-II在凌阳SPCE061A单片机上的移植。 关键词:μC/OS-II 凌阳单片机 嵌入式系统   目前,实时操作系统已广泛应用于工业控制的各个领域。μC/OS-II作为一个实时内核,由于其源码公开、代码规范,广受开发人员的喜爱。SPCE061A是凌阳公司继μ’nSPTM系列产品SPCE500A等之后新推出的一款16位单片机,内部集成A/D、D/A等多种接口电路,能很方便地嵌入工业控制的各种场合。更重要的是,其内嵌2K字的SRAM和32K的Flash ROM,因此,在不需要扩展外部存储器的情况下就可以实现
[应用]
单片机智能温控风扇设计 带智能调速人体感应
51单片机做的温空风扇 数码管显示 带人体感应模块,实现智能调速,功能非常强大,这是一个本科的毕业设计,毕业论文 开题报告 源码 原理图 还有proteus仿真等等都是一应俱全. 还有答辩常见问题解答,焊接注意事项和调试讲解,以及详细的制作过程. 温空风扇实物图: 智能风扇仿真截图: 温空风扇的DXP格式 protel99格式 温控风扇原理图: DXP格式用 Altium designer Summer 软件打开 protel99格式用 protel99SE 软件打开 PDF格式用 PDF 软件打开 Word格式用 Word 或用WPS 软件打开 4种格式的原理图都内容是一样的 只是打开方式不同 相关论文
[单片机]
<font color='red'>单片机</font>智能温控风扇设计 带智能调速人体感应
51单片机 ret和reti
原来在8051构架中--中断系统中含有两个不可寻址的“优先级生效”触发器。一个用于指出CPU是否正在执行高优先级的中断服务程序,这个触发器为1时,系统将屏蔽所有的中断请求;另一个则指出CPU是否正在执行低优先级中断服务程序,该触发器为1时,将阻止除高优先级以外的一切中断请求。由此可见,若要响应同级甚至是低级中断请求,必须使得该“优先级生效”触发器清零。但该触发器又是不可寻址的,所以无法用软件直接清零。” 通常情况下,在普通的汇编子程序中用RET做返回,在中断服务子程序中用RETI起中断返回作用。两条指令都能从堆栈中弹出断点地址并装入PC中,使 CPU回到原来主程序的断点处继续运行。然而,RET和RETI有本质的区别:当某一中断源响
[单片机]
基于8051单片机控制的热源自动测试仪
在药品质量监测过程中,热源反应的测温是一项重要内容。药品检测有其特殊性,对测试系统的精度、稳定性、一致性和线性度等指标有着较高的要求。传统老式仪器大多是各类温度计,测试效率和精度都难如人意。根据现场监测要求,研制了基于单片机控制的热源自动测试仪,实现了在实验室内自动巡回测试30路热源,满足了现场测温准确稳定的高标准要求,成功地完成了药检实验室测试仪器的更新换代。 1 测试仪器系统组成与工作原理   本测试仪器的工作原理图如图1所示,对多点测试的热源数据经多路转换开关,送入仪器放大器实现差值放大后,用V/F转换器将电压信号转换成一定频率的脉冲信号,送入8051单片机的T0口,T0为计数器,T1作为定时器,在定时
[单片机]
基于8051<font color='red'>单片机</font>控制的热源自动测试仪
基于单片机的一种函数发生器的设计
1 引 言   在自动控制系统设计及调试过程中,不同频率的正弦波、三角波和方波常作为信号源,应用十分方便。过去常由分立元件及集成运放构成振荡器,后来出现的ICL8038其最高频率仅能达到100kHz。而MAX038芯片性能更好,最高频率可达20MHz,且三种波形由同一端输出。单片机控制品质卓越,基于单片机的函数发生器运行可靠,操作方便。 2 高频信号发生器芯片MAX038简介   MAXIM公司生产的MAX038芯片是一种高频精密的函数发生器,可产生三角波、锯齿波、正弦波、方波及脉冲波,且频率及占空比的控制可独立进行。   Lin管脚电流范围在10~400μA时电路获得最佳工作性能。输出波形的选择由逻辑地址引脚A0和A1的组合来决定
[单片机]
基于<font color='red'>单片机</font>的一种函数发生器的设计
【32位MCU】9G-STM32 简易BOOT及XMODEM串口IAP移植过程简介
9G-STM32 简易BOOT及XMODEM串口IAP移植过程简介 一,准备EWARM + AN2557软件包 1,在http://www.mcu123.com/news/Soft/embsof/arm/201001/514.html 上 下载 IAR Embedded Workbench for ARM version 5.41 (2010.1.5更新) 软件 CD-EWARM-5411-1760_mcu123.zip http://esoft.mcu123.com/MCU123_temp_20100103@/ARM/CD-EWARM-5411-1760_mcu123.zip 相关文件 IAR_EWARM5.4和谐文
[单片机]
MCS-51单片机底层工作原理分析1
在大学学了2年的单片机,差不多也用了两年的单片机了,但是对其内部细致的工作原来还是有点模糊不清(可能平时的应用可以不涉及到底层工作原理,大部分工作都让编译器和汇编器替我们做了,这也阻碍了我们对底层工作原理的了解啊)。一直在不知其理的状态下开发了这么多年,内心有很多疑问,也有一种被架空的感觉。可能我比较喜欢踏实,所以一直想把内部原理搞明白,这里总结了几点。 首先,我们分析一下单片机(一般处理器)的大致工作原理吧。我们都学过简单的加法电路,计数电路,存储器读写电路和其它具有特定功能的时序电路,这些都是数字电路的时序电路课程中的简单的应用,我们可以把单片机理解为由这些基本时序电路组合而成的较为复杂的数字电路。在正常程序执行
[单片机]
AT89S51单片机的内部时钟电路设计
时钟电路用于产生AT89S51单片机工作时所必需的控制信号。AT89S51单片机的内部电路正是在时钟信号的控制下,严格地按时序执行指令进行工作。 在执行指令时,CPU首先到程序存储器中取出需要执行的指令操作码,然后译码,并由时序电路产生一系列控制信号完成指令所规定的操作。CPU发出的时序信号有两类,一类用于对片内各个功能部件的控制,用户无需了解;另一类用于对片外存储器或I/O口的控制,这部分时序对于分析、设计硬件接口电路至关重要,这也是单片机应用系统设计者普遍关心和重视的问题。 时钟电路设计 AT89S51单片机各功能部件的运行都以时钟控制信号为基准,有条不紊、一拍一拍地工作。 因此,时钟频率直接影响单片机的速度,时钟
[单片机]
AT89S51<font color='red'>单片机</font>的内部时钟电路设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved