基于DS18B20温度控制系统

摘要

温度作为环境监控中具有重要意义的参数之一,其直接影响植物生长、土壤变化,也密切关联着高质量农产品的栽培,在工业生产等诸多领域均起着至关重要的作用。温度控制系统的实现是一个非常关键的课题,但是目前先进的温度测量技术存在数据采集精度较低、检测不科学等问题。

为了解决上述问题,本文设计了一种温度控制器,可以实时监测水温。本文可以及时获得设备内的水温,时间延迟为1ms,并根据需要控制热源来控制水温。本文主要研究了一种基于DS18B20温度传感器的温度模拟系统。 该系统控制核心为单片机, DS18B20温度传感器作为对环境温度进行实时监测的重要元件,实现环境温度的检测和管理功能。此外,系统还具有其他功能,包括环境温度数据显示和跨线报警功能。

本文的主要研究内容如下所示:

(1) 首先针对温度的测量以及控制技术的国内外研究现状进行阐述。

(2) 其次温度控制系统的具体需求对温度耦控制系统的硬件部分进行了设计以及传感器等模块的选择,介绍了不同传感器芯片以及单片机的特点和工作原理。

(3) 利用keil C汇编语言,按照系统的功能需求完成温度控制系统的软件部分调试。

(4) 最后介绍本文采用的系统硬件的低功耗措施和软硬件的抗干扰措施,并总结了系统的Keil C系统调试经验,针对系统的仿真结果加以阐述。

本系统经过实验验证,各项指标均满足温度控制系统的要求,效果良好且性能可靠稳定,可以应用于水温、大棚以及工业生产等对温度的监测与控制等领域。

关键词:单片机;温度控制系统;DS18B20;

Abstract

Temperature is one of the most important parameters in environmental monitoring, which directly affects plant growth, soil changes, and is also closely related to the cultivation of high-quality agricultural products, and plays a crucial role in many fields such as industrial production. The implementation of temperature control system is a very critical topic, but the current advanced temperature measurement technology has problems such as low data collection accuracy and unscientific detection.

In order to solve the above problem, a water temperature controller with instantaneous monitoring of water temperature has been implemented to obtain the temperature of the water in the equipment and to control the water temperature as required for the heating source. This paper focuses on a temperature simulation system using a DS18B20 temperature sensor. The system is based on a microcontroller chip and uses the DS18B20 temperature sensor to monitor the ambient temperature in realtime, thus realising the function of detecting and managing the ambient temperature, in addition, the system also has the function of displaying the ambient temperaturedata and alarming the crossing of the line.

The main research contents of this paper are as follows.

(1) Firstly the current status of domestic and international research on temperature measurement as well as control technology is described.

(2) Secondly, the hardware part of the temperature control system is designed and the sensor modules are selected according to the specific requirements of the temperature control system, and the characteristics and working principles of different sensor chips and microcontrollers are introduced.

(3) Using keil C assembly language, the software part of the temperature control system is debugged according to the functional requirements of the system.

(4) Finally, the low power consumption measures of the system hardware and the anti-interference measures of the hardware and software adopted in this paper are introduced, and the experience of debugging the system in keil C is summarised and the simulation results of the system are elaborated for the system.

The system has been experimentally verified that all the indicators meet the requirements of the temperature control system, with good results and reliable and stable performance, and can be applied to the monitoring and control of temperature in the fields of water temperature, greenhouse and industrial production.

Key: microcontroller ; Temperature control system; DS18B20;

第1章 绪论

1.1 研究背景

随着我国科技信息化、自动化水平的提高,温度作为生命生存、工业生产等方面最基本的环境参数之一,无论是物理、化学还是生物科学等方面都与环境的温度息息相关。在电力系统、化学工厂、石油以及机械制造等工业生产场所与实验室,甚至农业塑料大棚、人类居住环境等多领域均需要对环境温度的实时检测与监控,并需要对其所处在的环境区域进行温度控制。

温度测量方法主要有接触式温度测量和非接触式温度测量。 非接触式温度测量的价格相对较高,具有一定的局限性; 在温控系统开发的早期阶段,通过两个物体之间的热平衡,两个物体接触来测量目标物体的温度。该接触式的测量方式具有简洁、数据更真实、造价较低等优点。但是也存在对于热容量比较小的物体测量准确度较低等现象。接触式测温一般在外层包裹一层不锈钢套管,其导热系数会对问的测量的准确性有一定的影响。此外,也不能应用于易腐蚀性介质以及极高温度的测量部分。而目前对于温度传感器的选择主要存在感温元器件选型、装置匹配等问题,根据硬件结构的设计,提高测温精度,实现温度控制系统。

本课题为了实现对温度的实时控制,以水温为例,实时获得装置内水的温度并按要求对加热源实施控制对水温的温度控制。采用对装置内水的温度进行实时检测,并判断是否在要求的温度范围,根据比较结果,做出对加热源的实时控制,使水温控制在35 ℃~38℃范围。研究基于DSl8820温度控制传感器,利用单片机的控制来实现温度控制系统,是解决装置内水恒定温度的实时控制的重要手段。

1.2 国内外研究现状

1.2.1 温度测量模块

温度作为最基本的物理量,代表着对物体冷热的测量。 随着科学的进步,国内外在新材料、传感器等元器件以及自动化技术的突破,温度控制系统的研究也进日益迫切。

郁翔,赵学增等将DS18B20传感器应用于AT90S8515单片机。其将温度数字传感器DS18B20与铂电阻组成的多路测温传感器进行了对比。其中,在以铂电阻为传感器的多通道检测系统中,由于其应用时引线较长,会造成一定的误差。通常,自动补偿将通过三线制或四线制实现。 然而,电流和电压引线是基于多通道模拟开关进行切换的。 此外,需要为铂电阻提供稳定的恒流源,以确保良好的线性度、信号放大的零位移等,对长引线、多通道模拟开关、端子、控制电路等元件的需求量很大。 温度传感器DS18B20支持单线总线,即只需一根线即可完成温度信号的传输。一条总线可以简化系统,也可以降低成本。只不过这样系统对软件的要求相对较高。

赵松等基于单总线结构的DS18B20温度传感器设计了感温元件。该设计可以解决田间土壤温度的控制系统。在设计过程中采用了多层土壤温度探测传感器系统。魏英智等基于DSl8820传感器设计了温度控制系统,其研究对象主要是水流,主要应用在:医学、家庭生活等方面,例如医用洗胃、浴室温度控制、烧水壶温度控制等。王明辉等人将DS18B20传感器应用于化工领域,将化工现场环境与系统结合起来,在单片机系统中实现了温度检测原理和程序设计功能。

         上世纪60年代起,国外发达国家即投入到环境温度控制系统方面的研究,其各方面产品相对成熟。随着技术的突破、数字化时代的到来,将计算机科学、传感器网络以及自动控制等技术相结合,可以大幅度提高工作效率。例如,DFS-1000测温系统和远中距离测温系统均为20世纪90年代由日本和英国公司研发。

目前国内对温度控制系统的研究,主要集中在化工以及农业方面。而以往对温度的控制大多数为人为控制,这样设备存在着一些弊端,会出现不可控因素。

1.3 主要研究内容及技术方案

1.3.1 主要研究内容

本课题为解决对水流温度的实时检测,实现水流温度控制系统的设计。基于目前国内外研发出的高性能温度传感器,完成单片机仿真电路设计及系统软件研发设计,最后进行了试验研究。本课题主要包含以下4个基本功能:

  1. 选择合适的加热源,以便对流水温度进行控制。
  2. 实现在流水的过程中,控制温度(水流温度在35—38度之间)。
  3. 当系统按照要求,开始预热及结束后,系统会相应给出信号。
  4. 编写相关程序,有详细的程序说明。有仿真结果。

1.3.2 技术方案

本文的研究方案是基于温度传感器DS18B20。单片机作为系统基本控制核心。当按下开始按键后,开始预热;当温度上升至38度,温度控制系统开始运行;当温度超过设定温度时,触发越线报警器模块,会发出报警声音。当温度处于设定值时结束加热,进入循环。此外还可以通过外部键盘改变温度的设定值。系统的基本结构框图如图1-1所示:

图1-1 系统的基本结构框

1.3.3 论文章节安排

第一章绪论,介绍了温度控制系统国内外研究背景,总体概述系统的基本结构框。

第二章温度控制系统的总体设计方案和硬件设计,分别介绍了温度控制系统的总体设计方案,以及硬件单片机模块、温度采集模块、温度传感器模块、温度传感器模块的功能、性能和引脚,分别介绍了显示模块和跨线报警模块。

第三章温度控制系统软件实现,利用Keil C51编译调试,配合硬件达到温度检测、对温度的设定、显示、报警等功能,完成单片机的开发与应用。

第四章系统性能总结与分析,针对芯片的选择、硬件设备和软件设备抗干扰等措施分析以及Keil C调试系统的经验等方面进行总结。

第五章总结,整体分析并总结温度控制系统的整体构建以及硬件、软件设计。对温度控制系统实现的功能进行总结。

第2章 温度控制系统设计总体方案及硬件设计

本章将以水温控制系统为例,根据系统的功能、设计要求和性能指标,详细介绍系统的总体组成框图和各部分硬件电路的设计方案,并介绍了主芯片的原理和应用。 控制核心芯片选用AT89S52单片机; 测温电路采用美国达拉斯公司生产的单线总线数字温度传感器dsl8820;数字显示电路采用LED数码管7seg-mpx4-ca,动态显示方式。

2.1温控系统总体设计方案

本文温度控制系统设计的总体功能如下:

(1) 实时显示温度检测功能。

(2) 温度控制功能:可方便地设置和维护所需的温度值,直到设置为另一个温度值。系统将自动加热到此值,并将其保持在一定的恒温范围内。

(3) 定时功能:可设定系统开始工作的时间和恒温的持续时间。

(4) 系统需要具备掉电保护功能,下一次上电后可保持相关整定参数。

(5) 尽量使用标准化零件。一旦损坏,在市场上很容易买到替代零件。

本文温度控制系统设计的主要技术指标如下:

  1. 系统的温度范围为0℃~99℃。
  2. 系统控制精度为士l℃。
  3. 本系统的额度功率为100W。
  4. 系统的实测温度数字可以实时显示。
  5. 系统对电源要求为AC 220V。

设计原则如下:

    (1) 在满足功能、性能和使用的前提下,使系统的成本和体积最小化;

(2) 在开发过程中,我们应该充分利用最新的技术和研究成果,确保目前和未来中国的先进性和实用性。

(3)在设计中应充分考虑系统的可靠性、可用性、可维护性和可扩展性,为设备的使用、维护、寿命延长和功能扩展奠定基础;

(4) 外观美观大方,配色合理。

2.2 总体硬件设计模块

温度控制系统以AT89S52单片机为核心,基于dsl8820控制整个测试系统,进行温度测量和数据处理; 将测量结果发送至LED显示屏输出,并驱动相应的温控设备。 实时温度由单线总线数字温度传感器dsl8B20获得。温度经单片机处理后,一方面通过显示驱动电路送到LED数码管进行显示。另一方面,将温度值与控制值进行比较。其结果是通过控制固态继电器来实现加热装置的通断控制,如流程图2-1所示。

图2-1 温度控制系统流程图

当系统通电时,将显示实时温度。一旦系统开始工作,MCU将测量的温度与设置的温度进行比较。当测量温度低于设定温度值的1℃时,加热设备开始加热。当测量温度高于设定温度值时,加热设备停止加热。在此期间,MCU继续根据上述条件进行判断,直到计时时间到来,当加热设备停止加热时,报警会发出报警。 可通过修改软件程序设置恒温范围。 电源部分采用220V交流电,经变压、滤波、稳压后,系统获得5V电压。整体框图如图2-2所示。

图2-2 温度控制系统硬件整体框图

2.3 单片机模块

单片机模块采用AT89C52单片机装置,采用ATMEL公司生产的高密度、非易失性存储技术。它是一种低压CMOS管8位高性能单片机。 它包含8K字节的可重写闪存只读程序存储器和256字节的随机存取数据存储器(RAM)。 AT89C52单片机装置与标准MCS-51指令系统兼容。该芯片有一个通用的8位CPU和闪存存储单元。它广泛应用于电子行业。

AT89C52单片机有40个引脚,其中32个为外部双向输入/输出端口(I/O),包括2个外部和中间断口、3个16位可编程定时计数器、2个全双工串行通信端口和2条读写端口线。 AT89C52可按常规方法编程或在线编程。 它将普通微处理器与闪存,特别是可重写闪存相结合,可以有效降低开发成本。 AT89C52有三种封装形式:PDIP、PQFP/TQFP和PLC,以满足不同产品的需要。本系统所采用的单片机最小系统如图2-3所示。

图2-3 单片机最小系统硬件设计图

2.4 温度采集模块设计

在温度传感器的选择中,热敏电阻的优点在于其成本较低,但是后续的电路设计复杂,温度标定困难。对于输出模拟信号的温度传感器,其输出端模拟信号相对较为薄弱、仍需要信号放大器、A/D转换器等部分放大电路信号,然而其放大器昂贵、系统成本较高。

本设计的温度采集模块由DS18B20温度传感器组成。 DS18B20温度传感器由达拉斯半导体公司引进。其测温范围为-55℃~+125℃,在-10℃~+85℃范围内误差为±0.4℃。此外,该款传感器返回两字节十六进制的温度数值,其中16位二进制是由于该传感器是一种基于“一线总线”接口设计的传感器,所以只有一根I/O线,只能以二进制操作,即每8次得到一个字节,读入两个字节得到完整的温度数据。其具体功能特性如下:

(1) 宽电压应用范围(3V~5V)。

(2) 温度测量范围:-55摄氏度~+125摄氏度。其中测量精度在:10℃~85℃为±0.5℃。

(3) DS18B20采用独特的单线接口方式,只需一条通信线即可实现微处理器与DS18B20的双向通信。

(4) DS18B20支持多点联网功能。多个dsl8820可以在一条独特的三线上并联连接。每片dsl8820都有一个64位序列号存储在片上Rom中,因此,多个DS18B20可以共存于同一条数据传输线上,实现多点温度测量。 CPU只需要一条端口线就可以与多个DS18B20通信。它占用微处理器的端口较少,可以节省大量的引线和逻辑电路。

(5) DS18B20在使用中不需要任何外围组件。

(6) 用户还可以通过编程实现9~12位温度读数,即温度分辨率可调。

(7) 用户可自行设置非易失性温度报警th和TL的上下限。

(8) 典型的供电方式为三线制,可通过总线供电,供电电压为3v-5v。也可以使用由寄生电源供电的2线制系统。 由于DS18B20的分辨率可以通过编程选择,因此在提高分辨率的前提下,DS18B20比DS18B20具有更好的一致性。

主从机之间的通信采用单总线,即数据传输和接收采用单线。使用时无需外围器件,工作可由独立芯片完成。 与传统热敏电阻等测温元件相比,它不仅体积小、电压宽、与微处理器接口简单,而且总线结构简单经济。它可以使用户方便地建立传感器网络,从而为测量系统的建设引入新的概念。这是一个数字温度传感器。

DS18B20的温度测量原理如图2-4:每次测量前,先将55℃对应的基数分别放入减法计数器1和温度寄存器中。 减法计数器1减去由低温系数晶体振荡器产生的脉冲信号。当减法计数器1的预设值减小到0时,温度寄存器的值将增加1,并且减法计数器l的预设值将再次加载。减法计数器1再次开始对低温系数晶体振荡器产生的脉冲信号进行计数。此循环将继续,直到减法计数器2计数为0,停止温度寄存器值的累积,并且温度寄存器中的值为测量温度。 斜率累加器用于补偿和校正温度测量过程中的非线性,其输出用于校正减法计数器的预设值。只要计数门未关闭,重复上述过程,直到温度寄存器值达到测量温度值。

图2-4 DS18B20的温度测量原理

DS18B20可以使用外部电源或寄生电源。 寄生电源的原理是利用总线信号实现寄生电源。 在寄生电源的情况下,当总线信号高时,DS18B20从总线获取能量并将其存储在内部电容器上; 当总线处于低电平时,电容器向DS18B20供电。 利用DS18B20的这一特性,可以形成一个简单清晰的温度检测系统,可以节省大量的布线和施工成本。

2.5 按键及显示模块

键盘和显示电路主要用于人机互动,包含键盘以及显示两大部分。其可以反映系统状态的同时,可以便于人工干预。

2.5.1 键盘模块

键盘作为单片机应用系统中至关重要的部件之一。它能实现输入数据、传送 命令等功能,是人工干预系统的主要手段。键盘可分为编码键盘和非编码键盘两种。前者用软件来识别和产生代码,后者用硬件来识别,本文在设计中使用独立式编码键盘。

2.5.2 显示模块

显示模块采用7seg-mpx4-ca数码管,四个公二极管显示器1、2、3、4为公共端子。 LED数码管由四个8形发光管组成,每个发光管有8个部分。 这些段分别用字母a、B、C、D、e、F、G、DP表示。 当用户编辑控制端口的不同逻辑电压时,这些特定段根据信号要求形成字符。

7seg-mpx4-caled数码管的结构如图2-5所示。 其中端口1、2、3、4为位选择端口,端口P0与段码连接,P2的4位用于I/0位选择。

图2-5 7seg-mpx4-caled数码管的结构图

7seg-mpx4-ca的工作原理是动态显示。 MCU的输出端口输出字体代码,LED数码管的接收端口可以接收字体代码,但只能点亮选定的段。 主要原因是用户只能通过位选通控制字段打开要显示的数码管的选通控制来显示字符,没有选通的数码管将不会点亮。 控制数码管的公共com端可以使每个字段依次显示字符。

旋转显示过程中的时间非常短。由于人类视觉的持久性和发光二极管的余辉效应,各个领域都采用旋转显示,但只要旋转显示的间隔足够短,人们就会觉得它是稳定的显示数据。 另外,使用动态显示还可以节省大量的I/O端口,目标功耗低,显示效果与静态显示相同。

本文选用的7seg-mpx4-ca是一种常用的阳极数码管。LED数码管的端口1、2、3和4是位选择端口。数码管显示器可以通过控制1、2、3和4的高电平和低电平来控制。 本文中,端口1、2、3、4分别与单片机P2端口的下位4位相连,单片机P0端口与显示端口相连。本温度控制系统7seg-mpx4-ca数码管与单片机连接设计图如图2-6所示。

图2-6 7seg-mpx4-ca数码管与温度控制系统单片机硬件设计图

2.5.3 过线报警模块

当DS18B20完成温度转换时。 温度值将与th和TL寄存器中的上限和下限进行比较。th和TL寄存器的格式如表2-1所示。

表2-1 TH和TL寄存器格式

bit7

bit6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

beryl2017

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值