51温度控制系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于51单片
机的温度控制系统
王鹏魏宗乐李贝贝
一、摘要
单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。

在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。

DS18B20是美国DALLAS公司生产的数字温度传感器芯片,具有结构简单、体积小、功耗小、抗干扰能力强、使用方便等优点。

本文设计的一种温度控制系统,用STC89C52单片机作为温控器,选用DS18B20数字温度传感器,可任意设置
上下限报警温度,采用数码管实时显示温度。

二、关键词
STC89C52单片机、上下限报警、数码管显示温度
三、正文
3.1. 设计目的
(1) 了解电子系统的设计方法,巩固和提高学过的基础理论和专业知识;
(2) 学习DS18B20数字温度传感器的测温原理,提高运用所学专业知识进行独立思考和综合分析、解决实际问题的能力;
(3) 增强对单片机的认识,掌握分析处理问题的方法,进行调试、计算等基本技能的训练,达到具有一定程度的实际工作能力。

3.2 •具体内容及要求用单片机为主控制器,设计以温度控制系统。

(1 )基本要求
①实现0-99 C范围内的温度检测,精度 1.0级。

②通过两位LED显示器显示被测温度值。

③可通过按键设置温度报警值,并在LED上进行显示。

(2 )发挥部分
①增加报警功能,当被测温度超过报警限时,发出声音报警。

②将精度改进为0.1级。

3.3系统总体方案设计
3.3.1、设计方案论证
由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进
行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,其中还涉及到电阻与温度的对应值的计算,感温电路比较麻烦。

而且在对采集的信号进行放大时容易受温度的影响出现较大的偏差。

进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可
以很容易直接读取被测温度值,进行转换,电路简单,精度高,软硬件都以实现,而且使用单片机的接口便于系统的再扩展,满足设计要求。

从以上两种方案,很容易看出,采用方案二,电路比较简单,费用较低,可靠性高,软件设计也比较简单,故采用了方案二。

332系统总体构成图如下:
333、硬件设计:
控制部分的选择较多,但是作为温度计,在成本上最合适的是单片机,对于
题目要求的控制能力也能胜任,利用STC89S52自身强大的功能和优异的可扩展性,
配上电路实验箱、四位一体数码管和按键等少量外围电路,就能搭建合适本次实验的小系统。

从而大大缩短设计流程,把设计的重点放在温度探测单元,串行通信协议两个部分。

3.3.4、软件设计
①单片机软件设计
单片机程序由主程序和中断子程序组成的。

主程序负责对来自上位机的命令进行解析并执行读温度值、存储温度值、输出控制等等,中断服务程序只负责单片机和上位机之间的数据发送与接收。

②掉电存储设计
当设置完成上下限之后,进行EEPROM存储设定值,实现掉电存储的功能。

3.4、系统各个模块设计:
3.4.1单片机最小系统
1、STC89C52单片机管脚图如下:
2、各引脚功能:
(1) XTAL1(19脚);XTAL2(18脚)----外接时钟引脚。

XTAL1为片内振荡电路的 输入电源和时钟引脚.VCC (40脚)GND (20脚)常压为+5V 低压为+3.3V 。

(2) 端。

XTAL2为片内振荡电路的输出端,8051的时钟有两种方式,一种 是片内振荡方式,需要在这两个引脚接石英晶体和振荡电容, 振荡电容的值
一般选择为10P~~30P 。

另一种外部时钟方式即 XTAL1接地,外部时钟信号从
XTAL2脚输入。

(3) RST (9脚)---单片机的复位引脚。

P0 口 (39脚~~32脚)一双向8位I/O 口,每个口可以独立控制。

51单片 机 PO 口内部没有上拉电阻,为高阻状态,所以不能正常的输出高低电平, 因此该 组I/O 口在使用的时候务必要接上拉电阻, 一般我们采用接入10K 的上拉电阻。

P1 口 (1脚~8脚)---准双向8位I/O 口。

每个口可以独立操作控制 ,内带

拉电阻,这种接口输出没有高阻状态,输入也不能锁存,固然不是真正的双向I/O 口,之所以称它为” 准双向”是因为该口在作为输入使用前要先向该口进行写 一操作,然后单片机内部才可以正确读出外部信号
,也就是要使其先要有个准
备过程,所以才称准双向口。

对52单片机的P1.0引脚的第二功能为 T2定时器 的外部输入,P1.1引脚的第二功能为 T2EX 捕捉,重装触发,即T2的外部控制器。

P2 口 (21脚~~28脚)---准双向8位I/O 口海个口都可以独立操作控制 ,内带
上拉电阻,与P1 口相似。

P3 口 (10脚~~17脚)----准双向8位I/O 口海个口可以独立操作控制,内带 上拉电阻,作为第一功能使用时就当作普通 I/O 口,与P1 口相似。

作为第二功能 使
Pl .O 匚 1 77^
40 P1,1 匚 2 39 P1.2 匚 3 36 F1 .3 匚 4 37 PK4匚 5 36 P1.5 匚 6 35 P1 .6 匚 7 34 P1 .7 L 8
33 RST 匚 9
32 (RXD) P3.O 匚 10 31 (TXD) P3,1 匚
111
30 (INTO) P3.2 匚 12
29 (INT1) P3.3 匚 13 28 (TO) P3,4 匚 14 27
(T1) TO S 匚 15 26 (WR) P3.6 匚 16 25 (RD) P3.7 匚 17
24 XTAL2 厂 18
23 XTAL1 匚
19 2^ GND 匚
20
21
二I VCC
□ PO O (ADOJ 1 PO.1 (AD1) ZI P0.2 (AD2> □ P0.3 (AD3> —I P0.4 (ACM} 二I PO.5 (ADS) Zl P0.6 (AID6) □ P0.7 (AD7> □ EAA/PP
□ ALE/PROG 二 PSEN
二I P2.7 (A15> 二I P2.6 (A 14) □ P2.5 (Al 3) 二I P2.4 (A 12) Zl P2.3 (Al 1 } ~I P2,2 (AIO) 二I 尸2 1 (AS) 二I P2.0 (A8)
用时,各引脚的定义如表:值得强调的是,P3 口的每一个引脚均可以独立定义
为第一功能的输入/输出或第二功能。

P3 口引脚第二功能定义:
本系统采用三极管驱动四位一体共阳数码管显示温度,数码管有两种显示方式,即静态显示和动态显示。

静态显示的特点是每个数码管的段选必须接一个8位数据线来保持显示的字
形码。

当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。

这种方法的优点是占用CPU时间少,显示便于监测和控制。

缺点是硬件电路比较复杂,成本较高;
动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。

选亮数码管采用动态扫描显示。

所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。

动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。

本设计数码管采用动态显示。

如下图:
3.4 . 3、键盘输入 如图:
本设计采用三个键,可任意调整上下限报警温度,简单实用。

其中,K1键为设置键,按第1下,上限温度调整;按第2下,下限温度调 整;按第3下,显示实际温度。

K ey2键为每按一次设置温度加1。

K ey3键为每按一次设置温度减1。

3.4.4、报警电路
本设计中采用三极管驱动蜂鸣器报警,其中,LED 为报警指示灯。

当温度高于上限温度时,或者低于温度下限的时候产生声光报警。

R15
Real
1K
GND
GND
GND
GND
VCC LS?
3.4.5、测温电路
本设计采用DS18B20温度传感器测量温度。

DS18B20 简介 其两种封装如图:
温度传感器的种类众多,在应用与高精度、高可靠性的场合时 DALLAS (达拉
斯)公司生产的 DS18B20温度传感器当仁不让。

超小的体积,超低的硬件开消, 抗干扰能力强,精度高,附加功能强,使得
DS18B20更受欢迎。

对于我们普通的
电子爱好者来说,DS18B20的优势更是我们学习单片机技术和开发温度相关的小 产品的不二选择。

了解其工作原理和应用可以拓宽您对单片机开发的思路。

DS18B20的主要特征: 1. 全数字温度转换及输出。

2. 先进的单总线数据通信。

3. 最高12位分辨率,精度可达土 0.5摄氏度。

4. 12位分辨率时的最大工作周期为 750毫秒。

5. 可选择寄生工作方式。

6. 检测温度范围为-55° C ~+125 C (- 67° F ~+257° F )
7. 内置EEPROM 限温报警功能。

8. 64位光刻ROM ,内置产品序列号,方便多机挂接。

9. 多样封装形式,适应不同硬件系统。

DS18B20引脚功能:
• GND 电压地• DQ 单数据总线 • VDD 电源电压 • NC 空引脚 DS18B20工作原理及应用:
DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干 扰力更强。

其一个工作周期可分为两个部分,即温度检测和数据处理。

在讲 解其工作流程之前我们有必要了解
18B20的内部存储器资源。

18B20共有三 种形态的存储器资源,它们分别是:
ROM 只读存储器,用于存放 DS18B20ID 编码,其前8位是单线系列编码
(DS18B20的编码是19H ),后面48位是芯片唯一的序列号, 最后8位是以上
D ALLAS
NC
v
-' dC 3
NC NC
NC (iNP
NC
DSIWO TO-磋拥警巌黑罔
PSIKB2I7
ifV ;
56的位的CRC码(冗余校验)。

数据在出产时设置不由用户更改。

DS18B20
共64位ROM。

RAM数据暂存器,用于内部计算和数据存取,数据在掉电后丢失,DS18B20共9个字节RAM,每个字节为8位。

第1、2个字节是温度转换后的数据值信息,第3、
4个字节是用户EEPROM (常用于温度报警值储存)的镜像。

在上电复位时其值将
被刷新。

第5个字节则是用户第3个EEPROM的镜
像。

第6、7、8个字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计
的,同样也是内部温度转换、计算的暂存单元。

第9个字节为前8个
字节的CRC码。

EEPROM非易失性记忆体,用于存放长期需要保存的数据,上下限
温度报警值和校验数据,DS18B20共3位EEPROM并在RAM都存在
镜像,以方便用户操作。

电路图如下:
VCC
1
DO
3
GND
3.5、系统软件设计
3.5 . 1、单片机软件设计:
(1)主程序:
主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值,温度测量每1s进行一次。

这样可以在一秒之内测量一次被测温度,其程序流程如下所示:
主程序流程图
(2)读温度子程序:
先让DS18B20复位,然后发跳过ROM匹配命令,再发出温度转换命令,让
DS18B20进行温度转换,延时等待转换完毕后,再将已转换的温度值一一地从各
个DS18B20取出,转换成ascall码后再发送到PC机上,如此循环。

程序框图如下: 读温度程序框图
(3)温度比较报警子程序
此程序是将实际温度与设置的报警上下限比较,决定是否发出报警信号。

由于T为实际温度的绝对值,TH、TL也是温度的绝对值,因此判断大小关系时要通过其正负符号来确定。

温度比较报警子程序
4.结论
本温控系统通过STC89C52单片机采集从DS18B20温度传感器所测得的温 度数据,并通过串口实时传送到上位机。

单片机系统完成对温度信号的采集、 设定上下限报警等功能,并通过串口通信与
PC 机进行通信,在 PC 机上进行 显示及一些操作,从而使系统更加直观,使用更加方便。

本设计主要解决了 以下几个问题:
1.
系统的硬件采用以单片机为核心的硬件电路
,所用元器件也很少,体积 小,
重量轻,抗干扰能力强,对环境要求不高,价格低廉。

2. 实现单片机与PC 机的通信功能,实现远距离的进行监控. 当然本设讲也存在着一些不足 :
(1) 电路设计技术还不够成熟
(2) 单片eeprom 存储不是很熟练
这个系统本身或通过扩展可应用于智能家居、工业控制、智能农业、环境监
测等各个领域的温度采集以及数据分析控制。

相关文档
最新文档