水箱温度检测.docx
- 文档编号:11675284
- 上传时间:2023-03-30
- 格式:DOCX
- 页数:25
- 大小:446.97KB
水箱温度检测.docx
《水箱温度检测.docx》由会员分享,可在线阅读,更多相关《水箱温度检测.docx(25页珍藏版)》请在冰豆网上搜索。
水箱温度检测
基于单片机水箱温度控制
目 录
摘要…………………………………………………………………………………………6
前言……………………………………………………………………………………………6
1.1设计方案论证…………………………………………………………………………2
1.2设计流程图………………………………………………………………………………2
1.3采用的芯片…………………………………………………………………………3
1.4电路模块…………………………………………………………………………3
2 水箱的硬件设计………………………………………………………………………5
2.1饮水机的主要原理………………………………………………………………………5
2.2 MCS-51系列单片机的连接……………………………………………………………7
2.2.1MCS-51芯片选择…………………………………………………………………7
2.2.2单片机复位………………………………………………………………………10
2.2.3A/D转换器………………………………………………………………………12
2.3 DS1820测温模块……………………………………………………………13
2.3.1DSl820与单片机的连接……………………………………………………………14
2.3.2DSl820结构………………………………………………………………………16
2.424C04的管脚………………………………………………………………………21
2.5共阴数码管………………………………………………………………………22
2.6其它芯片…………………………………………………………………………22
3软件设计过程………………………………………………………………………26
3.1软件设计流程图………………………………………………………………………26
3.2DS1820测温编程……………………………………………………………………27
3.2.1DSl820时序读写……………………………………………………………28
3.3单片机编程………………………………………………………………………30
3.3.1I/O接口………………………………………………………………………30
4 电路调试………………………………………………………………………32
5总 结………………………………………………………………………35
谢辞………………………………………………………………………36
参考文献………………………………………………………………………37
附 录……………………………………………………………………………38
摘 要
温度是表征物体冷却程度的物理量,也是一种最基本的环境参数。
在农工业生产及日常生活中,对温度的测量及控制始终占据着极其重要的地位。
目前,典型的温度测控系统由模拟式温度传感器、A/D转换电路和单片机组成。
由于模拟式温度传感器输出的模拟信号必须经过A/D转换环节获得数字信号后才能与单片机等微处理器接口,因而使得硬件电路结构复杂,成本较高。
而以DS18B20为代表的新型单总线数字式温度传感器集温度测量和A/D转换于一体,直接输出数字量,与单片机接口电路结构简单,广泛使用于距离远、节点分布多的场合,具有较强的推广应用价值。
水箱温度控制,也就是要符合人们需求的生活用水,先要把水烧开,然后使水温保持一定的温度,方便人们饮用。
本文介绍了DS18B20型数组温度传感器内部结构以及工作时序,并提出了以DS18B20和AT89S52为主要器件设计的数字温度计审计方案,时间证明该数字温度计的测温范围为-50到+110°精度误差在0.1以内,具有测温精度高,控制性能良好等特点。
水箱温控系统是以单片机(AT89s52)为核心,使用DS18B20对温度采进行采集、并且控制模拟灯两灭模拟对加热管进行加热,从而达到对温度的控制,然后使用液晶屏共阴数码管显示。
本文介绍了单片机监控温度,DS18B20用来采集实时温度
关键词:
单片机AT89S52;共阴数码管;温度采集芯片DS18B20;
Abstract
Thetemperatureisattributestheobjectcoolingdegreethephysicalquantity,isalsoonekindofmostbasicenvironmentparameter.Intheagricultureindustrialproductionandthedailylife,isoccupyingtheextremelyimportantstatusthroughouttothetemperaturesurveyandthecontrol.Atpresent,thetypicaltemperatureobservationsystembythesimulationtypetemperaturesensor,A/Dswitchingcircuitandthemonolithicintegratedcircuitiscomposed.BecausethesimulationtypetemperaturesensoroutputsthesimulatedsignalmustobtainsthedigitalsignalafterA/Dtransformationlinkbeablewithmicroprocessorconnectionsandsoonmonolithicintegratedcircuit,thuscausesthehardwarecircuitstructuretobecomplex,thecostishigh.Butasrepresentative'snewsinglemainlinedigitaltemperaturesensorcollectiontemperaturesurveyandA/DtransformstakeDS18B20inabody,thedirectoutputdigitquantity,issimplewiththemonolithicintegratedcircuitinterfacecircuitstructure,thewidespreaduseinisawayfrom,thenodetodistributemanysituationsfar,hasthestrongpromotionapplicationvalue.
Usemonolithicmachinetomonitorthetemperatureheight,DS18B20hasusedtheacquisitionrealtimetemperature,solidstaterelaySSR-10Ahasusedinsecurefactoroccurrencesuchascontrolling,therebeingnomachinerycontactinquickerPWMoffrequencytohaveguardedagainstaspark
Keywords:
SCMAT89S52;temperatureacquisitionDS18B20;
前言
温度是表征物体冷却程度的物理量,也是一种最基本的环境参数。
在农工业生产及日常生活中,对温度的测量及控制始终占据着极其重要的地位。
目前,典型的温度测控系统由模拟式温度传感器、A/D转换电路和单片机组成。
由于模拟式温度传感器输出的模拟信号必须经过A/D转换环节获得数字信号后才能与单片机等微处理器接口,因而使得硬件电路结构复杂,成本较高。
而以DS18B20为代表的新型单总线数字式温度传感器集温度测量和A/D转换于一体,直接输出数字量,与单片机接口电路结构简单,广泛使用于距离远、节点分布多的场合,具有较强的推广应用价值。
本文所设计的就是水箱温度控制系统,通过单片机与温度采集芯片进行控制温度,用数码管模块来实现温度的显示,主要是能显示当前的温度,能对温度进行设置,实际的温度与设定的温度基本相
1 水箱设计方案
1.1设计方案论证
而电子制冷水箱:
优越性能就不用说了,其价格相对来说更贵,而且涉及到很多方面的工业知识,在我现有的知识面内无法承受和消化,所以电子制冷也不属于设计的考虑范畴。
本次以单片机AT89S52为主要器件,对温度采集考虑到用传感器,在单片机电路设计中,大多都是使用传感器来进行温度采集,所以可以采用一只温度传感器DS18B20,AD590等传感器,DS18B20芯片内部已经做了AD转换,读出的数据可以直接给单片机显示。
而用AD590则需要另外的AD转换器件,电路相对复杂,不如DS18B20电路简便,加上DS18B20的精度比AD590的要相对的高一些,所以使用DS18B20可以很容易直接读取被测温度值,根据这些知识就可以满足设计要求,所以最终采用了以上罗列的设计方案。
1.2设计流程图
图1-1设计流程
1.3采用的芯片
(1)中央处理器电路:
采用单片机AT89S52芯片机外围电路构成最小系统。
(2)温度采集芯片DS18B20。
(3)共阴数码管。
(4)人机接口电路:
包括按键电路。
(5)执行部件电路:
包括蜂鸣器、状态指示灯。
本文采用单片机(AT89S52)为核心,结合相关的元器件(共阴数码管、温度采集芯片DS18B20、蜂鸣器来组成电路。
首先用单片机来控制及处理数据,DS18B20采集好温度数据就传给单片机,经过单片机处理,用数码管显示温度,并且通过按键来控制,行进复位功能,温度过高用蜂鸣器报警,温度显示修改等。
1.4电路模块
(1)复位电路
复位是由外部的复位电路来实现的。
片内复位电路是复位引脚RST通过复位电路相连,,由复位电路采样一次。
复位电路通常采用上电自动复位和按钮复位两种方式,此电路系统采用的是上电与按钮复位电路,如图所示。
当时钟频率选用12MHz时,C取10μF,Rk约为10K。
(2)独立键盘按键的识别
独立键盘是通过按键的一端跟单片机的I/O口相连,一端跟GND相连,这样的电路设置简单,而且稳定性高!
程序也简单化!
(4)显示电路设计
共阴数码管显示电路,液晶屏显示模块与数码管相比,它显得更为专业、漂亮。
数码管显示屏以其微功耗、体积小、显示内容丰富、超薄轻巧、使用方便等诸多优点。
因为本系统显示的内容多,数码管更显得有有特色.
2 温控水箱的硬件设计
2.1水箱主要原理
图2-1饮水机的原理
通过控制使水温稳定在在某一个值上。
并且具有键盘输入温度给定值,LED数码管显示温度值和温度达到极限时报警功能。
能在0摄氏度至100摄氏度范围内控制水温,通过键盘设计需要保持的水温,实时显示水的温度,静态控制精度为0.1摄氏度。
在达到一定温度后自动断电保持水的温度,在水温低到一定程度后自动通电烧水,DS1820数字温度计以9位数字量的形式反映器件的温度值。
DS1820通过一个单线接口发送或接收信息,因此在中央微处理器和DS1820之间仅需一条连接线(加上地线)。
用于读写和温度转换的电源可以从数据线本身获得,无需外部电源。
我们选用的是AT89S52单片机,温度采集芯片是DS18C20:
一共三个管脚,一个VCC,一个GND,还有一个是数据线.采用的是单总线协议,一个数据线,即传输命令,有传输数据,所以,对时许要求很严格。
当时序不对时,读不出正确的温度数据。
我们才用的显示器是共阴数码管,左边两个数字表示温度值,右边两个数码管显示的是设定报警的温度值。
工作过程:
单片机AT89S52,对温度采集芯片DS18B20进行读写操作,启动温度转换,然后18B20采集到温度数据送回给单片机AT89S52.单片机送给数码管显示。
在加热部分,采用led模拟(亮代表加热,灭代表停止加热)。
图2-2温控水箱的PCB图
2.2 MCS-51系列单片机的连接
2.2.1MCS-51芯片选择
AT89S52是一个低功耗,高性能CMOS8位单片机,片内含8kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。
AT89S51具有如下特点:
40个引脚,8kBytesFlash片内程序存储器,256bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。
MCS-51系列单片机研制于1980年,由Intel公司所开发,其结构是8048的延伸,改进了8048的缺点,其ROM、RAM都可扩充至64KB,也增添了如乘(MUL)、除(DIV)、减(SUBB)、比较(CJNE)、栈入(PUSH)、栈出(POP)、16位数据指针、布尔代数运算等指令,以及串行通信能力和5个中断源。
8052有6个中断源,MCS-51系列单片机存储器容量如表(二-1)所示。
MCS-51系列单片机特点如下:
1、专为控制应用所设计的八位CPU
2、具有布尔代数的运算能力
3、32条双项且可被独立寻址的I/O口
4、芯片内有128字节可供存储数据的RAM(8052:
256字节)
5、内部有两组16位定时器(8052有3个)
6、具有全多工传输信号UART
7、5个中断源,且具有两级(高/低)优先权顺序的中断结构
8、芯片内有4KB(8KB/8052)的程序存储器(ROM)
9、芯片内有时钟(CLOCK)振荡器电路
10、程序存储器可扩展至64KB(ROM)
11、数据存储器可扩展至64KB(RAM)
表2-1存储器的类型
12、8051/52:
工厂烧写型,内含ROM
13、P8751:
一次烧写型,内含PROM
14、8751/8751:
可重复烧写型,内含EPROM
15、87C51/87C52:
省电型(低消耗功率)
单片机采用MCS-51系列单片机。
由ATMEL公司生产的AT89S51是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
在单芯片上,拥有灵巧的8位CPU和在线系统可编程Flash,使得AT89S51为众多嵌入式控制应用系统提供高灵活、有效的解决方案。
AT89S51具有以下标准功能:
8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
而且,它还具有一个看门狗(WDT)定时/计数器,如果程序没有正常工作,就会强制整个系统复位,还可以在程序陷入死循环的时候,让单片机复位而不用整个系统断电,从而保护你的硬件电路。
AT89S52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89S52的一些特殊功能口,如下
表2-2管脚功能
管脚
备选功能
P3.0RXD
(串行输入口)
P3.1TXD
(串行输出口)
P3.2/INT0
(外部中断0)
P3.3/INT1
(外部中断1)
P3.4T0
(记时器0外部输入)
P3.5T1
(记时器1外部输入)
P3.6/WR
(外部数据存储器写选通)
P3.7/RD
(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
2.2.2单片机复位
(1)复位操作
复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。
除了进入系统的正常初始化之外,当由于程序运行出错或者操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键以重新启动。
a复位操作还对单片机的个别引脚信号有影响,例如把ALE和PSEN非信号变为无效状态,即ALE=0,PSEN=1。
b复位信号及其产生
RST引脚是复位信号的输入端,复位信号是高电平有效,其有效时间持续24个振荡脉冲周期(即2个机器周期)以上,若使用频率为6MHz的晶振,则复位信号持续时间应超过4us才能完成复位操作。
整个复位电路包括芯片内外两部分。
外部电路产生的复位信号(RST)送施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器的输出进行采样。
然后才得到内部复位操作所需要的信号。
c复位方式
复位操作有上电自动复位和按键手动复位两种方式。
上电自动复位是通过外部复位电路的电容充电来实现的,在单片机控制的数字显示温度计电路设计中的单片机复位就是这种方式,其中电容C为22uF,电阻R为1k欧姆,其电路图如图(三—5a)所示。
这样,只要电源Vcc(+5V)的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就完成了系统的复位初始化。
按键手动复位有电平方式和脉冲方式两种。
其中按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的,其电路图如图(三—5b)所示。
而按键复位脉冲复位则是利用RC微分电路产生的正脉冲来实现的。
上述电路图中的电阻电容参数适宜于6MHz晶振,能保证复位信号高电平持续时间大于2个机器周期。
图2-4上电及按键复位
2.3 DS1820测温模块
图2-5DS18B20的管脚图
DSl820数字温度计提供9位温度读数,指示器件的温度。
信息经过单线接口送入DSl820或从DSl820送出,因此从中央处理器到DSl820仅需连接一条线(和地)。
读、写和完成温度变换所需的电源可以由数据线本身提供,而不需要外部电源。
因为每一个DSl820有唯一的系列号(siliconserialnumber),因此多个DSl820可以存在于同一条单线总线上。
这允许在许多不同的地方放置温度灵敏器件。
此特性的应用范围包括HVAC环境控制,建筑物、设备或机械内的温度检测,以及过程监视和控制中的温度检测。
DS1820特性:
·独特的单线接口,只需1个接口引脚即可通信
·多点(multidrop)能力使分布式温度检测应用得以简化
·不需要外部元件
·可用数据线供电
·不需备份电源
·测量范围从-55℃至+125℃,增量值为0.5℃。
等效的华氏温度范围是-67℉至257℉,增量值为0.9℉
·以9位数字值方式读出温度
·在1秒(典型值)内把温度变换为数字
·用户可定义的,非易失性的温度告警设置
·告警搜索命令识别和寻址温度在编定的极限之外的器件(温度告警情况)
·应用范围包括恒温控制,工业系统,消费类产品,温度计或任何热敏系统
2.3.1DSl820与单片机的连接
图2-6DSl820与单片机的连接
它既可寄生供电也可由外部5V电源供电。
在寄生供电情况下,当总线为高电平时,DS1820从总线上获得能量并储存在内部电容上当总线为低电平时,由电容向DS1820供电。
DS1820的测温原理:
内部计数器对一个受温度影响的振荡器的脉冲计数,低温时振荡器的脉冲可以通过门电路,而当到达某一设置高温时振荡器的脉冲无法通过门电路。
计数器设置为-55℃时的值,如果计数器到达0之前,门电路未关闭,则温度寄存器的值将增加,这表示当前温度高于-55℃。
同
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 水箱 温度 检测