基于51单片机的DS18B20温控系统设计

2019-11-11来源: 51hei关键字:51单片机  DS18B20  温控系统

1.1 温度控制系统设计发展历史及意义

温度控制系统广泛应用于社会生活的各个领域 ,如家电、汽车、材料、电力电子等 ,常用的控制电路根据应用场合和所要求的性能指标有所不同 , 在工业企业中,如何提高温度控制对象的运行性能一直以来都是控制人员和现场技术人员努力解决的问题。这类控制对象惯性大,滞后现象严重,存在很多不确定的因素,难以建立精确的数学模型,从而导致控制系统性能不佳,甚至出现控制不稳定、失控现象。传统的继电器调温电路简单实用 ,但由于继电器动作频繁 ,可能会因触点不良而影响正常工作。控制领域还大量采用传统的PID控制方式,但PID控制对象的模型难以建立,并且当扰动因素不明确时,参数调整不便仍是普遍存在的问题。而采用数字温度传感器DS18B20,因其内部集成了A/D转换器,使得电路结构更加简单,而且减少了温度测量转换时的精度损失,使得测量温度更加精确。数字温度传感器DS18B20只用一个引脚即可与单片机进行通信,大大减少了接线的麻烦,使得单片机更加具有扩展性。由于DS18B20芯片的小型化,更加可以通过单跳数据线就可以和主电路连接,故可以把数字温度传感器DS18B20做成探头,探入到狭小的地方,增加了实用性。更能串接多个数字温度传感器DS18B20进行范围的温度检测。


1.2 温度控制系统的目的

温度控制在日常生活及工业领域应用相当广泛,比如温室、水池、发酵缸、电源等场所的温度控制。而以往温度控制是由人工完成的而且不够重视,其实在很多场所温度都需要监控以防止发生意外。针对此问题,本系统设计的目的是实现一种可连续高精度调温的温度监测和控制系统,实现对温度的实时检测,具有提醒和控制的功能,本设计的内容是温度测试控制系统,控制对象是温度。它的特点在于应用广泛,功能强大,小巧美观,便于携带,是一款既实用又廉价的控制系统。


1.3 温度控制系统完成的功能

本设计是对温度进行实时监测与控制,设计的温度控制系统实现了基本的温度控制功能:此设计中温度恒定值设置为60℃,上下跳转温度为1℃,设计精度值为0.1。当温度低于设定下限温度即59℃时,绿灯亮,报警提醒需要外界的加热措施。当温度上升到上限温度时,停止加温,红灯亮保持温度。当温度高于设定上限温度即61℃时,红灯亮,需要外界采取降温措施(本设计中没有附加外界的加热和降温措施)。当温度下降到恒温度时,停止降温。温度在上下限温度之间时,执行机构不执行。


第二章 总体设计方案2.1 方案一

利用温度传感器将温度测出,通过某种电信号传给外部电路产生一种变化,然后由外部电路控制装置的开启。测温电路的设计,可以使用热敏电阻之类的传感器件利用其感温效应,(如电阻随温度的变化有一个变化的曲线,即利用它的变化特性曲线)温度的变化使得电阻发生了变化根据欧姆定律,电阻的变化会带来电流或这电压的变化。再将随被测温度变化的电压或电流采集过来,然后进行模拟信号换成数字信号(A/D)转换,将数字信号送入单片机,用单片机进行数据的处理,将温度显示在电路上,这样就可以将被测温度显示出来。最后还有外围的控制电路,采取一定的措施来控制产生温度的电路,如加温、降温、保持不动、或者报警。这种设计需要用到A/D转换电路,感温电路比较麻烦。

设计流程图如图2.1

图2.1 设计流程图


2.2 方案二

利用温度传感器芯片直接将温度数据测出,之后通过单片机程序控制温度的上、下限值,用外部电路产生显示和控制加热和降,来达到设计的要求。


考虑使用温度传感器,结合单片机电路设计,采用一只DS18B20温度传感器,直接读取被测温度值,之后进行转换,依次完成设计要求。


比较以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计容易实现,故实际设计中拟采用方案二。


在设计中的控制流程如图2.2所示。



图2.2 温度控制整体流程


在本系统的总体电路设计方框图如图2.3所示,它由五部分组成:单片机STC89C52控制部分; DS18B20温度传感器采集部分;AT24C16数据掉电存储部分;3位LED数码管显示部分;按键调节部分;二极管报警部分;继电器驱动部分。


图2.3  温度计电路总体设计方案


整个设计总体分为以下几个部分:控制部分、显示部分、温度采集部分、按键控制部分,输出部分。


1、控制部分

由单片机STC89C52芯片在程序控制和外围简单组合电路作用下运行,和控制温度的上、下限,和 LED的温度显示。控制发光二级管的亮灭和继电器动作或复位,起到提醒报警功能。


2、显示部分

显示电路采用3位7断共阳LED数码管,从P3口送数,P0口扫描。有两部分显示电路,第一是显示DS18B20温度传感器所检测的当前温度,第二是设定恒定的温度值。


3、温度采集部分

由DS18B20智能温度传感器直接采集被测温度。


4、按键控制部分

由三个按键控制调节,用来调节温度的恒定限值,起到预设调节作用。


第三章 温度传感器DS18B20

3.1 DS18B20简介3.1.1 DS18B20封装与引脚

   DS18B20封装与引脚如图3.1


 

图3.1  DS18B20的封装与引脚


3.1.2 DS18B20的简单性能

1、 独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。
  2、 测温范围 -55℃~+125℃,固有测温分辨率0.5℃。
  3、 支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现多点测温。
  4、 工作电源: 3~5V/DC。
  5、 在使用中不需要任何外围元件。
  6、 测量结果以9~12位数字量方式串行传送。
  7、 不锈钢保护管直径 Φ6 。
  8、 适用于DN15~25, DN40~DN250各种介质工业管道和狭小空间设备测温。
  9、 标准安装螺纹 M10X1, M12X1.5, G1/2”任选。
  10、 PVC电缆直接出线或德式球型接线盒出线,便于与其它电器设备连接。


3.2 DS18B20的工作原理

DS18B20内部的低温度系数振荡器是一个振荡频率随温度变化很小的振荡器,为计数器1提供一频率稳定的计数脉冲。


高温度系数振荡器是一个振荡频率对温度很敏感的振荡器,为计数器2提供一个频率随温度变化的计数脉冲。


初始时,温度寄存器被预置成-55℃,每当计数器1从预置数开始减计数到0时,温度寄存器中寄存的温度值就增加1℃,这个过程重复进行,直到计数器2计数到0时便停止。


初始时,计数器1预置的是与-55℃相对应的一个预置值。以后计数器1每一个循环的预置数都由斜率累加器提供。为了补偿振荡器温度特性的非线性性,斜率累加器提供的预置数也随温度相应变化。计数器1的预置数也就是在给定温度处使温度寄存器寄存值增加1℃计数器所需要的计数个数。


DS18B20内部的比较器以四舍五入的量化方式确定温度寄存器的最低有效位。在计数器2停止计数后,比较器将计数器1中的计数剩余值转换为温度值后与0.25℃进行比较,若低于0.25℃,温度寄存器的最低位就置0;若高于0.25℃,最低位就置1;若高于0.75℃时,温度寄存器的最低位就进位然后置0。这样,经过比较后所得的温度寄存器的值就是最终读取的温度值了,其最后位代表0.5℃,四舍五入最大量化误差为±1/2LSB,即0.25℃。


温度寄存器中的温度值以9位数据格式表示,最高位为符号位,其余8位以二进制补码形式表示温度值。测温结束时,这9位数据转存到暂存存储器的前两个字节中,符号位占用第一字节,8位温度数据占据第二字节。


DS18B20测量温度时使用特有的温度测量技术。DS18B20内部的低温度系数振荡器能产生稳定的频率信号;同样的,高温度系数振荡器则将被测温度转换成频率信号。当计数门打开时,DS18B20进行计数,计数门开通时间由高温度系数振荡器决定。芯片内部还有斜率累加器,可对频率的非线性度加以补偿,测量结果存入温度寄存器中。一般情况下的温度值应该为9位,但因符号位扩展成高8位,所以最后以16位补码形式读出。


DS18B20工作过程一般遵循以下协议:初始化——ROM操作命令——存储器操作命令——处理数据。


3.3 DS18B20的测温原理3.3.1 测温原理

每一片DSl8B20在其ROM中都存有其唯一的48位序列号,在出厂前已写入片内ROM 中。主机在进入操作程序前必须用读ROM(33H)命令将该DSl8B20的序列号读出。ROM命令代码见表

3.1。

程序可以先跳过ROM,启动所有DSl8B20进行温度变换,之后通过匹配ROM,再逐一地读回每个DSl8B20的温度数据。


DS18B20的测温原理,低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55 ℃所对应的基

[1] [2] [3] [4] [5] [6] [7]
关键字:51单片机  DS18B20  温控系统 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic479582.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:BWT901CL的单片机和Arduino程序(蓝牙9轴)
下一篇:一个定时器生成多路PWM波形的原理和方法

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

AVR单片机跑马灯的仿真设计
简易的跑马灯设计。基于AVR单片机仿真原理图如下:单片机源程序如下:/********************************************************************                            汇诚科技*********************************************************************/#include <iom16v.h>
发表于 2019-11-11
AVR单片机跑马灯的仿真设计
电池容量测试仪电路与源码(PIC16F1938单片机+AD623实现)
分享一个由PIC16F1938单片机芯片和AD623构成的电池容量测试仪.电路原理图如下:电池容量测试仪的pic单片机源码:#include    "main.h" //------------------------32MHZ---------------------------------------------- __CONFIG(FOSC_INTOSC & CLKOUTEN_OFF & BOREN_ON & PWRTE_ON & CPD_OFF          &CP_ON
发表于 2019-11-11
电池容量测试仪电路与源码(PIC16F1938单片机+AD623实现)
BWT901CL的单片机和Arduino程序(蓝牙9轴)
//51单片机读取串口MPU6050模块的实例程序//测试平台://51单片机开发板YL-39,芯片STC89C52//注意://    1.51单片机的下载串口只有一个,同时又需要接MPU6050,因此在下载的时候需要拔下MPU6050的TX线,等程序下载成功以后再插上。//接线方法://     51单片机                  JY901模块//                +5V  
发表于 2019-11-11
单片机MQ-2烟雾检测+ADC0809 AD转换+lcd1602显示程序
单片机源程序如下:/*============================================================////程序编写:刘先生接线:D0--D7接P0.0-P0.7      ST---P2.3          EOC--P2.2          OE---P2.1          CLK--P2.0本程序源码只供学习参考,不得应用于商业用途,如有需要请联系作者。[注:使用12M或11.0592M晶振,实测
发表于 2019-11-11
单片机MQ-2烟雾检测+ADC0809 AD转换+lcd1602显示程序
STC15w4k58s4单片机4串口同时收发例程
STC15w4k58s4 芯片的4串口同时收发例程单片机源程序如下:#include "intrins.H"#include "uart.H"#define uchar unsigned  char#define uint  unsigned   intuchar uart1buf[6]={0xa5,0x5a,0x4a,0xf8,0xff,0xff};uchar uart2buf[6]={0xa5,0x5a,0x4a,0xf8,0xff,0xff};uchar uart3buf[6]={0xa5,0x5a,0x4a,0xf8,0xff,0xff};uchar
发表于 2019-11-11
dsPIC30F6014 CAN总线发送功能+DS18B20温度采集
1。DS18B20定时采集温度2。温度采集时间间隔用T1定时器控制3。采集到的温度通过CAN总线送另一主机处理#include <p30f6014.h>             //dsPIC30F6014标准头文件  _FOSC(0x0ffe5);                 //4倍频晶振,Failsafe 时钟关闭  _FWDT(WDT_OFF);              
发表于 2019-11-09
小广播
何立民专栏 单片机及嵌入式宝典

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

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved