基于AT89C51单片机的温度测控系统设计
扫描二维码
随时随地手机看文章
摘要:设计一款基于AT89C51单片机的温度测控系统,介绍该系统的工作原理和设计方法。该系统温度信号由数字温度传感器DS18B20采集,送AT89C51单片机进行处理,并通过数码管显示。控温部分使用4×4矩阵按键进行温度上限和下限的设定,当温度超过设定值范围后,单片机将发出控制信号启动升温装置或降温装置,使温度保持在一定的范围。实验测试证明,设计的样机系统测温控温精度均为0.1℃,测温控温的范围可达-55~+125℃,可应用于家用电器、汽车、冷库等领域。
关键词:AT89C51;DS18B20;数码管;温度测控
0 引言
温度的测量和控制在日常生活和工业领域中具有广泛的应用,随着人们生活水平的大幅提高,对温度测量控制的精度和范围也有着更高的要求。在工业企业中,如何提高温度控制对象的运行性能一直以来都是控制人员和现场技术人员努力解决的问题,这类控制对象惯性大,滞后现象严重,存在很多不确定的因素,难以建立精确的数学模型,从而导致控制系统性能不佳,甚至出现控制不稳定、失控等现象。PID控制方式控制稳定且精度高,但是控制对象的模型难以建立,并且当扰动因素不明确时,参数调整较复杂。本文采用DS18B20数字温度传感器,该传感器具有微型化、封装简单、低功耗、高性能抗干扰能力、测量范围广、强易配处理器等优点,可使系统测量更加精确,电路更加简单。实验测试证明,设计的样机系统测温控温精度均为0.1℃,测温控温的范围可达-55~+125℃,可应用于家用电器、汽车、冷库等领域。
1 系统总体方案
该系统将检测点的温度采集之后发送到单片机进行处理,并通过4×4矩阵按键进行温度上限和下限的设定。当温度超过设定值范围后,单片机将发出控制信号启动升温装置或降温装置,使温度恒定在一定的范围。系统主要包括温度采集模块、4×4行列式矩阵按键模块、主控模块、温度控制模块、测温控温显示模块等,其结构框图如图1所示。
2 系统硬件设计
2.1 温度检测模块
该系统温度测量部分采用DALLAS公司生产的一线式数字温度传感器DS18B20,它具有微型化、低功耗、高性能抗干扰能力、测量范围广、强易配处理器等优点,DS18B20可直接将温度转化成串行数字信号给单片机处理,它具有三引脚TO-92小体积封装形式,温度测量的范围为-55~+125℃,测温分辨率可达到0.062 5℃。
2.2 4×4行列式按键模块
该系统采用4×4行列式矩阵按键输入,其中除了0~9这10个相应数字温度按键外,还设计了温度重设按键、确定按键、零下温度选择按键和小数点按键等用来控制温度。该系统采用的是非编码式键盘,按键的识别采用的是全局扫描法。
2.3 主控模块
该设计采用AT89C51单片机作为主控芯片。该芯片是一款高性能的CMOS 8位微处理器,自带4 KB闪存,产品性价比高,满足系统的设计需求。该系统中主控芯片AT89C51不断的对采集到的温度信号与输入的控制温度进行比较,若超出设定范围则启动升温或降温装置,直至温度到达设定的范围区间内。
2.4 温度控制模块
该系统温度控制电路中,单片机通过三极管的通断控制继电器,达到控制电热器的目的。当温度低于设定温度下限时,单片机发送低电平信号经过74LS04非门电路后变为高电平,使NPN型三极管导通,继电器使电源与电热器接通,电热器加热,温度慢慢升高。当温度高于设定温度上限时,单片机发送高电平信号经过74LS04非门电路后变为低电平,使NPN型三极管截止,继电器使电源与制冷系统接通,制冷系统工作,温度慢慢降低。当继电器突然断电时,会产生很大的反向电流,反接在三极管两端的二极管可将反向电流分流,达到保护三极管的作用。
2.5 测温控温显示模块
该设计显示部分采用2个4位8段共阳极数码管7SEG-MPX4-CA。一个数码管用于显示当前环境温度,另外一个数码管用于显示设定温度。为了节省I/O口,本设计通过74LS04双2线-4线译码器连接两个数码管的位码。
3 系统软件设计
该设计软件部分采用模块化设计,通过Keil公司开发的μVision3编译器用C51语言编写,主要包括温度检测,按键驱动和温度控制等。其中温度检测包括DS18B20初始化子程序、DS18B20读取子程序、DS18B20写子程序、DS18B20转换温度子程序、DS18B20温度采集子程序、采集温度数码管显示子程序等;按键驱动包括矩阵按键驱动子程序、按键显示子程序等;温度控制包括输入键值处理子程序、温度对比控制子程序等。主程序流程图如图2所示。
4 结语
本文设计的温度测控系统,采用DS18B20数字温度传感器实时采集环境温度,采用4×4矩阵按键自由设定温度上限和下限,采用AT89C51单片机处理采集的温度数据和发送控制温度信号,将环境温度和设定温度通过数码管7SEG-MPX4-CA实时显示。设计的样机系统经实验表明,测温精度和控温精度均高达0.1℃,测温范围为-55~125℃,并可在-55~128℃范围内进行温度控制。温度控制系统在工业生产和日常生活中,主要是要求在一定的温度范围内保证温度恒定,并要求一定的精度,因此该系统可应用于家用电器、工业、汽车、冷库等许多领域。