温控系统.docx
《温控系统.docx》由会员分享,可在线阅读,更多相关《温控系统.docx(37页珍藏版)》请在冰豆网上搜索。
温控系统
摘要
本设计以AT89S52单片机为核心的热水器温度控制器。
水温信号由温度芯片DS18B20采集,并以数字信号的方式传送给单片机。
文中分硬件和软件设计,分别介绍了该控制系统的硬件部分包括:
AT89S52单片机、温度传感器18B20、数码显示电路、热水器温度控制电路,单片机通过对信号进行相应处理,从而实现水温控制的目的。
软件设计主要部分包括:
系统主程序、中断程序和子程序的设计。
关键词:
DS18B20温度单片机数码显示
Abstract
ThisdesignisthecoreofAT89S52temperaturecontrolsystemoftheworkingprincipleanddesignmethod.TemperaturesignalbytemperaturechipDS18B20acquisition,andthewayofdigitalsignaltransmittedmicrocontroller.Thepointsrespectively,thedesignofhardwareandsoftwareofthecontrolsystemisintroduced,includingthehardwarepartAT89S51andtemperaturesensor18B20,keyboardanddisplaycircuit,temperaturecontrolcircuit,signalchiptomakecorrespondingprocessingthrough,soastoachievethepurposeoftemperaturecontrol.Softwaredesignincludes:
digitaldisplayandkeyboardscantubeprogramandkeyprocess,temperaturesignalprocessingprogram,relaycontrolprocedures.
Keywords:
DS18B20TemperatureSensorsMCUDigitaldisplay
目录
引言-----------------------------------------------------------------------------------------------3
一、硬件电路的设计---------------------------------------------------3
1.1总体设计--------------------------------------------------------------------------------------3
1.1.1系统实现的功能------------------------------------------------3
1.1.2方案的选择----------------------------------------------------3
1.1.3系统总体结构布局----------------------------------------------4
1.2最小系统模块设计----------------------------------------------------------------------------5
1.2.1AT89S52简介----------------------------------------------------5
1.2.2最小系统模块---------------------------------------------------5
1.3温度采集模块的设计------------------------------------------6
1.3.1温度测量的基本原理----------------------------------------------------------------------6
1.3.2温度测量方法----------------------------------------------------6
1.3.3温度采集模块DS18B20---------------------------------------------7
1.3.4DS18B20的内部结构-----------------------------------------------8
1.3.5DS18B20温度测量电路-------------------------------------------------------------------9
1.4显示模块设计----------------------------------------------------10
1.4.1数码管--------------------------------------------------------10
1.4.274LS245简介---------------------------------------------------11
1.5控制模块设计---------------------------------------------------------------------------11
1.5.1光耦的结构特点与工作原理--------------------------------------12
1.5.2光电耦合电路分析----------------------------------------------13
1.5.3继电器电路分析------------------------------------------------13
二、软件设计------------------------------------------------------------------------------------------------13
2.1系统主程序设计------------------------------------------------------13
2.2子程序设计----------------------------------------------------------14
三、仿真、调试以及出现的问题-----------------------------------------------------------------------18
3.1电路安装-------------------------------------------------------------18
3.2焊接电子器材注意事项-------------------------------------------------18
3.3外围电路调试---------------------------------------------------------19
四、总结------------------------------------------------------------------------------------------------19
参考文献-----------------------------------------------------------------------------------------------19
谢词------------------------------------------------------------------------------------------------------19
附录------------------------------------------------------------------------------------------------------20
附录一:
现行方案电路原理图----------------------------------------------20
附录二:
元器件清单-------------------------------------------------------21
附录三:
PCB印刷图-------------------------------------------------------22
附录四:
实物图-----------------------------------------------------------22
附录五:
程序清单--------------------------------------------------------23
引言
在科学技术突飞猛进的今天,各种智能化的仪器、仪表给人们的生活带来了极大的便利。
本文介绍了一个热水器温度控制系统,它可实现的采集、转换、显示以及控制,达到根据水温控制热水器温度的目的。
该系统的基本原理是通过温度传感器测定热水器水温将其转为对应的电流值,然后通过模数转换器变换成数字信号输入单片机,通过程序编写及六位显示器外设的连接,进而对被测物体的温度加以测试和有效控制,从而实现了人工智能化。
设计方案简便直观,经济实用,稳定可靠,适用于大规模生产。
虽然目前被电热水器夺去盟主地位,但技术的升级、安全性能的提高、产品的创新以及多年的消费惯性为燃气热水器的主流回归奠定了基础。
本设计就是在此要求基础上设计的以AT89S52为核心的电热水器温控系统。
一、硬件电路的设计
1.1总体设计
1.1.1系统实现的功能
设计基于AT89S52单片机的热水器温度控制器,用于控制温度。
功能如下:
温度实现在0-99度连续可调,温度误小于等于±1℃,还可以设置需要到达的温度值并显示,显示当前水温,当温度到达预设水温时,继电器吸合(停止加热)。
1.1.2方案的选择
温度传感器作为从机可通过专用总线接口与主机进行通信。
热水器温度控制器是在智能温度传感器的基础上发展而成的。
典型产品有DS18B20,温度控制器适配各种微控制器,构成智能化温控系统;它们还可以脱离微控制器单独工作,自行构成一个温控仪。
DS18B20支持“一线总线”接口,测量温度范围为-55℃~+125℃,在-10℃~+85℃范围内,精度为0.5℃。
DS18B20的精度较差为±0.2℃。
现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。
适合于恶劣环境的现场温度测量。
如:
环境控制、设备或过程控制、测温类消费电子产品等。
与前一代产品不同,新的产品支持3V~5.5V的电压范围,使系统设计更灵活、方便。
而且新一代产品更便宜,体积更小。
该方案采用数字温度传感器DS18B20,它的最高分辨率为12位,可识别0.0625摄氏度的温度。
它具有直接输出数字信号和数据处理,并且它和单片机接口只需要一位I/O口,因此由它构成的系统简单使用,由于DS18B20,按照工业设计要求设计,抗干扰性能强。
由于DS18B20将温度传感器、信号放大调理、A/D转换、接口全部集成于一芯片,与单片机连接简单方便,所以温度传感器采用DS18B20.
1.1.3系统整体结构布局
本设计系统采用单片机作为微处理单元进行控制。
其次由按键电路、温度采集电路、显示电路、温控电路组成。
系统总框图如图1-1所示。
图1-1系统框图
1.2最小系统模块的设计
1.2.1单片机AT89S52简介
主要特性:
1.与MCS单片机产品兼容
2.4K字节在系统可编程存储器
3.1000次擦写周期
4.全静态工作:
0Hz—33MHz
5.32个可编程I/O口线
6.2个16位定时器/计数器
7.6个中断源
8.全双工UART串行通道
9.低功耗空闲和掉电模式
10.掉电后中断可唤醒
11.双数据指针
12.灵活的ISP编程
13.4.0---5.5V电压工作范围
1.2.2最小系统模块图1-2
目前的单片机开发系统只能够仿真单片机,却没有给用户提供一个通用的系统。
由设计的要求,只要做很小集成度的系统应用在一些小的控制单元。
其应用特点:
(1)全部I/O口线均可供用户使用。
(2)内部存储器容量有限(只有4KB地址空间)。
(3)应用系统开发具有特殊性
图1-3最小系统图
单片机系统如图1-3所示,其中有4个双向的8位并行I/O端口,分别记作P0、P1、P2、P3,都可以用于数据的输出和输入,P3口具有第二功能为系统提供一些控制信号。
时钟电路用于产生MCS-51单片机工作所必须的时钟控制信号,内部电路在时钟信号的控制下,严格地按时序指令工作。
MCS-51内部有一个用于构成振荡器的高增益反向放大器,该高增益反向放大器的输入端为芯片的引脚XTAL1,输出端为XTAL2。
这两个引脚跨接石英晶体振荡器和微调电容,就构成了一个稳定的自激振荡器。
电路中的微调电容通常选择为33pF左右,该电容的大小会影响到振荡器频率的高低、振荡器的稳定性和起振的快速性。
晶体的振荡频率为12MHz。
把EA脚接高电平,单片机访问片内程序存储器,但在PC值超过0FFFH(4Kbyte地址范围)时,将自动转向执行外部程序存储器内的程序。
MCS-51的复位是由外部的复位电路来实现。
采用最简单的外部按键复位电路。
按键自动复位是通过外部复位电路的来实现的。
复位是单片机的一个重要的工作方式。
在单片机应用系统工作时,除了进入系统正常的初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也通过某一操作来重新启动。
复位电路通常用以下几种方式,即上电自动复位、按键电平复位与系统复位三种方式
R5,C3构成的微分电路,在接电瞬间,产生一个微分脉冲,其宽度大于两个机器周期,单片机复位。
当按RESET键时,单片机的复位端将出现一个由200Ω电阻和1KΩ电阻分压的电平,使单片机复位。
为保证微分脉冲宽度足够大,R5、C3的时间常数应大于两个机器周期,一般电容取22μF,电阻取1KΩ。
1.3温度的测量原理与方法
1.3.1温度的测量原理
假定有两个热力学系统,原来各自处于一定的平衡态,这两个系统互相接触时之间将发生热交换,这种接触称为热接触。
热接触之后的两个系统一般都发生变化,但是经过一段时间之后,两个系统的状态便不再变化,这两个系统又达到了一个新的平衡,这种平衡被称为热平衡。
由热力学的知识可知,处于统一热平衡状态的所有物体都具有某一共同的宏观性质,表征这个宏观性质的物理量就是温度。
温度这个物理量仅取决于热平衡时物体内部的热运动状态。
即温度能反映出物体内部热运动状况,温度越高,分子平均动能越大,反之越小。
一切互为热平衡的物体都具有相同的温度,这就是利用温度传感器测量温度的基本原理。
选择适当的温度传感器之后,在测量时使其与待测问题接触,经过一段时间到达热平衡后,就可以得到被测物体的温度。
1.3.2温度测量方法
温度测量的方法很多,根据温度传感器的使用方式,通常分为接触式测温法与非接触式测温法两类本设计用到的是接触式的温度测量的方法:
水温和传感器直接接触。
接触式测温法:
由热平衡原理可知,两个物体接触后,经过足够长时间的热交换达到热平衡,则它们的温度必然相等。
如果其中之一为温度传感器,就可以用它对另一个物体实现温度测量,这种测温方式称为接触式测温法。
接触式测温的优点显而易见,此方法简单,可靠,测量精度高。
但接触式测温也存在不足:
传感器需要与被测物体有良好的热接触,并充分热交换,从而产生了测温滞后现象;测温组件可能与被测物体发生化学反应;由于受到耐高温材料的限制,接触式测温仪表不可能应用于很高温度的测量。
本设计用到的是DS18B20温度传感器,温度范围是-55℃~+125℃,但是我们测量的是水温,沸点是100摄氏度,还是在温度范围内,而且温度测量精确度高。
1.3.3 温度采集模块DS18B20
DS18B20引脚共三个,分别为GND,DQ和VDD。
其中GND为地,DQ为数据I/O口,VDD为可选电源端。
其特性如下:
DS18B20数字温度计根据设定CONFIG存储器,可输出9位至12位的数字量,显示器件的温度值。
设定的位数越高,温度转换的时间越长,最大转换时间可达750ms。
该器件通过一个单线接口发送或接收信息,因此在中央微处理器和DS18B20之间仅需一条连接线。
用于读写和温度转换的电源可以从数据线本身获得,无需外部电源。
由于每个DS18B20都有一个独特的片序列号(64位),所以多只DS18B20可以同时连在一根单线总线上,这样就可以把温度传感器放在许多不同的地方。
DS18B20依靠一个单线端口通讯,在这种情况下必须先建立ROM操作协议,因此,控制器提供下面个ROM操作命令:
1)读ROM,2)匹配ROM,3)搜索ROM,4)跳过ROM。
DS18B20通过一种片上温度测量技术来测量温度图1-4示出了温度测量电路的方框图。
DS18B20的测温原理为:
用一个高温度系数的振荡器确定一个门周期,内部计数器在这个门周期内对一个低温度系数的振荡器的脉冲进行计数来得到温度值。
计数器被预置到对应于-55℃的一个值。
如果计数器在门周期结束前到达0,则温度寄存器(同样被预置到-55℃)的值增加,表明所测温度大于-55℃。
同时,计数器被复位到一个值,这个值由斜坡式累加器电路确定,然后计数器又开始计数直到0,如果门周期仍未结束,将重复这一过程。
斜坡式累加器用来补偿感温振荡器的非线性,以期在测温时获得比较高的分辨力。
这是通过改变计数器对温度每增加一度所需计数的值来实现的。
因此,要想获得所需的分辨力,必须同时知道在给定温度下计数器的值和每一度的计数值。
DS1820内部对此计算的结果可提供0.5℃的分辨力。
温度以16bit带符号位扩展的二进制补码形式读出,表1-1给出了温度值和输出数据的关系。
数据通过单线接口以串行方式传输。
DS1820测温范围为-55℃~+125℃,以0.5℃递增。
图1-4温度测量电路的方框图
温度
输出(2进制)
输出(16进制)
+85℃
0000010101010000
0550H
+20.0625℃
0000000110010001
0191H
+10.125℃
0000000010100010
00A2H
+0.5℃
0000000000001000
0008H
0℃
0000000000000000
0000H
25.0625℃
1110111001101111
EE6FH
表1-1温度值和输出数据的关系
1.3.4DS18B20的内部结构
图1-5DS18B20内部结构
数字温度传感器DS18B20有4个主要的数据部件:
l)光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。
64位光刻ROM的排列是:
开始8位(28H)是产品类型标号,接着的48位是该DSI8B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=XS十XS+X4+l)。
光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18BZO的目的。
2)DSl8B20中的温度传感器可完成对温度的测量,以12位转化为例:
用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位,DS18B20温度度值格式表如下图1-6所示。
16-bit补码存储在温度寄存器中的。
经过12位转化后得到的12位数据,被存储在DS18BZO的两个8比特位的RAM中,二进制中的前面5位是符号位,如果测得的温度大于O,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度:
如果温度小于0,这5位为1,测到的数值需要取反加l再乘于0.0625即可得到实际温度。
例如+125°的数字输出为07D0H,+25.0625°的数字输出为019lH,一25.0625℃的数字输出为FF6FH,一55℃的数字输出为FCGOH。
图1-6温度值格式表
3)DS18B20温度传感器的存储器DS18B2O温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。
4)配置寄存器
配置寄存器结构如下表1一2所示。
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
TM
R1
R0
1
1
1
1
1
表1-2
低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式是在测试模式。
在DS18B20出厂时该位裨设置为O,用户不要去改动,DS18B20出厂时被设置为12位。
Rl和RO用来设置分辨率,用户可以方便的改变分辨率,以满足自己的需求,分辨率设置表如下表1一3所示:
R1
R0
对应分辨率
温度最大转换时间
0
0
9位
93.75ms
0
1
10位
187.5ms
1
0
11位
375ms
1
1
12位
750ms
表1-3
1.3.5DS18B20温度测量电路
图3-11以51系列单片机为例,画出一了DS18B20与微处理器的典型连接。
图1-76(a)中DS18B20采用寄生电源方式,其VDD和GND端均接地,图1-7(b)中DS18B20采用外接电源方式,其VDD端用+3V-+5.5V电源供电。
图1-7DS18B20独立供电与寄生供电方式
工作于寄生电源方式时,VDD和GND均接地,它在需要远程温度探测和空间受限的场合特别有用,原理是当1-Wier总线的信号线DQ为高电平时,窃取信号能量给DS18B20供电,同时一部分能量给内部电容充电,当DQ为低电平时释放能量为DS18B20供电。
但寄生电源方式需要强上拉电路,软件控制变得复杂(特别是在完成温度转换和拷贝数据到EZPROM时),同时芯片的性能也有所降低。
因此,在条件允许的场合,尽量采用外供电方式。
图1-6中在DSI8B20的数据线上有上拉电阻。
因为要保证通信的正确性就要使微控制器和DS18B20释放数据线的时候口线被上拉为高电平,而且如果要挂接多DS18B20,需要适当调整上拉电阻的大小来保证有足够的驱动能力。
在本温度测量系统中,采用独立电源供电方式。
温度是各种领域中应用最多、范围最广泛的物理量、准确度测量温度对生产过程至关重要,许多场合要求被测温度准确度高于0.5℃或更高,用传统的冷端补偿方法显然不能满足要求。
采用集成数字温度传感器DS18B20不仅可以降低系统成本,减小设备体积,同时具有广泛的通用性。
1.4显示模块
1.4.1数码管显示电路
我的设计采用的四位八段共阳数码管,共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。
共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。
当某一字段的阴极为高电平时,相应字段就不亮。
共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码