单片机的水温控制系统

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

2 硬件系统设计

2.1硬件电路分析和设计报告
本次设计主要思路是通过对单片机编程将由温度传感器DS18B20采集的温 度外加驱动电路显示出来,包括对继电器的控制,进行升温,当温度 达到上下限蜂鸣器进行报警。P1.7开关按钮是用于确认设定温度的, 初始按下表示开始进入温度设定状态,然后通过P1.5和P1.6设置温度 的升降,再次按下P1.7时,表示确认所设定的温度,然后转入升温或 降温。P2.3所接的发光二极管用于表示加热状态,P2.5所接的发光二 极管用于表示保温状态。P2.3接继电器。P3.1是温度信号线。整个电 路都是通过软件控制实现设计要求
Y
N
保温指示灯亮,停止加热
加热指示灯亮,开始加热
设置温度?
Y
N
温度‘+’
Y N
N
温度‘-’
Y
N
设置完成?
Y
预设温度加5
预设温度减5 加热 控制
读18B20 温度转换 显示温度 实测温度>=预设温度 保温指示灯亮,停止加热
N
Hale Waihona Puke Baidu
实测温度<预设温度 加热指示灯亮,开始加热



3.2 各个模块的流程图 3.2.1 读取温度DS18B20模块的流程

(2)运行指示灯说明
本热水器温度控制系统中共使用到3个LED指示灯和3个数码管。 右上角的红色LED是电源指示灯; 数码管右边的红色LED是加热指示灯,当刚开机或温度降到设定温度5℃ 以下时,该灯会亮,表示目前处于加热状态;当温度上升到设定温度时,该 LED灭,同时数码管右边的绿色LED亮,表示目前处于保温状态,用户可以使 用热水器;当温度再次下降到设定温度5℃以下时,绿色LED灭,红色加热的 LED灯亮,不断循环。
1 系统总体设计

1.1 硬件总体设计
设计并制作一个基于单片机的热水器温度控制系统的电路,其结构框图 如图1-1

1.2 软件总体设计
良好的设计方案可以减少软件设计的工作量,提高软件的通用性,扩展性 和可读性。 本系统的设计方案和步骤如下: (1) 根据需求按照系统的功能要求,逐级划分模块。 (2) 明确各模块之间的数据流传递关系,力求数据传递少,以增强各模块的独立 性,便于软件编制和调试。 (3) 确定软件开发环境,选择设计语言,完成模块功能设计,并分别调试通过。 (4) 按照开发式软件设计结构,将各模块有机的结合起来,即成一个较完善的系 统。

2.1.1单片机最小系统电路

因为80C51单片机内部自带8K的ROM和256字节的RAM,因此不必构建单片机系 统的扩展电路。如图2-1,单片机最小系统有复位电路和振荡器电路。值得 注意的一点是单片机的31脚必须接高电平,否则系统将不能运行。因为该脚 不接时为低电平,单片机将直接读取外部程序存储器,而系统没有外部程序 存储器,所以必须接VCC。在按键两端并联一个电解电容,滤除交流干扰,增 加系统抗干扰能力。
由于DS18B20采用的是一根数据线实现数据的双向传输,而对AT89S52单片机 来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟 单总线的协议时序来完成对DS18B20芯片的访问。 DS18B20单线通信功能是分时完成的,它有严格的时隙概念。因此系统对 DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位 脉冲)→发ROM功能命令→发存储器操作命令→处理数据DS18B20虽然具有测 温系统简单、测温精度高、连接方便、占用口线少等优点, DS18B20必须首先调用启动温度转换函数,根据数据手册上对应转换时间来超 作,如为12位转换,则应该是最大750mS,另外在对DS18B20超作时,时序要 求非常严格,因此最好禁止系统中断。

2.1.4 温度采集电路
(1) DS18B20介绍
Dallas最新单线数字温度传感器DS18B20简介新的“一线器件”体积 更小、适用电压更宽、更经济。Dallas半导体公司的数字化温度传感 器DS1820是世界上第一片支持“一线总线”接口的温度传感器。一 线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测 量系统的构建引入全新概念。DS18B20、DS1822“一线总线”数字化 温度传感器同DS18B20一样,DS18B20也支持“一线总线”接口,测 量温度范围为 -55℃~+125℃,在-10℃~+85℃范围内,精度为 ±0.5℃。DS1822的精度较差为±2℃。现场温度直接以“一线总线” 的数字方式传输,大大提高了系统的抗干扰性。其DS18B20的管脚配 置和封装结构如图2-4所示。
绪 论


及时准确地得到温度信息并对其进行适时的控制,在许多工业场合中 都是重要的环节.水温的变化影响各种系统的自动运作,例如冶金、 机械、食品、化工各类工业中,广泛使用的各种加热炉、热处理炉、 反应炉等,对工件的水处理温度要求严格控制。对于不同控制系统, 其适宜的水质温度总是在一个范围。超过这个范围,系统或许会停止 运行或遭受破坏,所以我们必须能实时获取水温变化。对于,超过适 宜范围的温度能够报警。同时,我们也希望在适宜温度范围内可以由 检测人员根据实际情况加以改变。 传统的温度采集电路相当复杂,需要经过温度采集、信号放大、滤波、 AD转换等一系列工作才能得到温度的数字量,并且这种方式不仅电路 复杂,元器件个数多,而且线性度和准确度都不理想,抗干扰能力弱。 现在常用的温度传感器芯片不但功率消耗低、准确率高,而且比传统 的温度传感器有更好的线性表现,最重要的一点是使用起来方便

单片机对对温度的控制是工业生产中经常使用的控制方法.自从1976 年Intel公司推出第一批单片机以来,80年代单片机技术进入快速发 展时期,近年来,随着大规模集成电路的发展,单片机继续朝快速、 高性能方向发展。单片机主要用于控制,它的应用领域遍及各行各业, 大到航天飞机,小至日常生活中的冰箱、彩电,单片机都可以大显其 能。单片机将微处理器、存储器、定时/计数器、I/O接口电路等集成 在一个芯片上的大规模集成电路,本身即是一个小型化的微机系统。 单片机技术与传感与测量技术、信号与系统分析技术、电路设计技术、 可编程逻辑应用技术、微机接口技术、数据库技术以及数据结构、计 算机操作系统、汇编语言程序设计、高级语言程序设计、软件工程、 数据网络通信、数字信号处理、自动控制、误差分析、仪器仪表结构 设计和制造工艺等的结合,使得单片机的应用非常广泛。同时,单片 机具有较强的管理功能。采用单片机对整个测量电路进行管理和控制, 使得整个系统智能化、功耗低、使用电子元件较少、内部配线少、成 本低,制造、安装、调试及维修方便。
首先接通电源系统开始工作,系统开始工作后,通过按键设定温度值的 上限值和下限值,确定按键将设定的温度值存储到指定的地址空间, 温度传感器开始实时检测,调用显示子程序显示检测结果,调用比较 当前显示温度值与开始设定的温度值比较,如果当前显示值低于设定 值就通过继电器起动加热装置,直到达到设定值停止加热,之后进行 保温,如果温度高于上限进行报警。



引脚定义: ① DQ为数字信号输入/输出端; ② GND为电源地; ③ VDD为外接供电电源输入端(在寄生电源接线方式时接地)。 (2)DS18B20的单线(1-wire bus)系统 单线总线结构是DS18B20的突出特点,也是理解和编程的难点。从两个角度来 理解单线总线:第一,单线总线只定义了一个信号线,而且DS18B20智能程度 较低(这点可以与微控制器和SPI器件间的通信做一个比较),所以DS18B20和 处理器之间的通信必然要通过严格的时序控制来完成。第二,DS18B20的输出 口是漏级开路输出,这里给出一个微控制器和DS18B20连接原理图。这种设计 使总线上的器件在合适的时间驱动它。显然,总线上的器件与(wired AND) 关系。这就决定:(1)微控制器不能单方面控制总线状态。之所以提出这点, 是因为相当多的文献资料上认为,微控制器在读取总线上数据之前的I/O口的置 1操作是为了给DS18B20一个发送数据的信号。这是一个错误的观点。如果当前 DS18b20发送0,即使微控制器I/O口置1,总线状态还是0;置1操作是为了是I/O 口截止(cut off),以确保微控制器正确读取数据。(2)除了DS18B20发送0 的时间段,其他时间其输出口自动截止。自动截止是为确保:1时,在总线操作 的间隙总线处于空闲状态,即高态。2时,确保微控制器在写1的时候DS18B20 可以正确读入。



DS18B20的读时序: (1)对于DS18B20的读时序分为读0时序和读1时序两个过程。 (2)对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释 放单总线,以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过 程,至少需要60us才能完成。 DS18B20的写时序: (1)对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。 (2)对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要 被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线 上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放 单总线。 系统程序设计主要包括三部分:读出温度子程序、温度转换命令子程序、显 示温度子程序。
开始 初始化 DS18B20存在吗?

2.1.3 数码管及指示灯显示电路
(1)数码管显示说明 各个数码管的段码都是单片机的数据口输出,即各个数码管输入的段码都是一 样的,为了使其分别显示不同的数字,可采用动态显示的方式,即先只让最 低位显示0(含点),经过一段延时,再只让次低位显示1,如此类推。由视觉 暂留,只要我们的延时时间足够短,就能够使得数码的显示看起来非常的稳 定清楚,过程如表3-1。
单片机的水温控制系统
张冰冰
摘要

温度控制系统可以说是无所不在,热水器系统、空调系统、 冰箱、电饭煲、电风扇等家电产品以至手持式高速高效的 计算机和电子设备,均需要提供温度控制功能。本系统的 设计可以用于热水器温度控制系统和饮水机等各种电器电 路中。它以单片机AT80C51为核心,通过3个数码管显示温 度和4个按键实现人机对话,使用单总线温度转换芯片 DS18B20实时采集温度并通过数码管显示,并提供各种运 行指示灯用来指示系统现在所处状态,如:温度设置、加 热、停止加热等,整个系统通过四个按键来设置加热温度 和控制运行模式。
2.1.2
键盘电路
键盘是单片机应用系统中的主要输入设备,单片机 使用的键盘分为编码键盘和非编码键盘。编码键盘采用 硬件线路来实现键盘的编码,每按下一个键,键盘能够 自动生成按键代码,并有去抖功能。因此使用方便,但 硬件较复杂。非编码键盘仅仅提供键开关状态,由程序 来识别闭合键,消除抖动,产生相应的代码,转入执行 该键的功能程序。非编码键盘中键的数量较少,硬件简 单,在单片机中应用非常广泛。 图为按键和AT80C51的接线图,检测仪共设有4个 按键,每个按键由软件来决定其功能,4个按键功能分 别为: (1) SW1:设定按键(设定按键) (2) SW2:加法按键(当前位加5) (3) SW3:减法按键(当前位减5) (4) SW4:退出设置键(系统初始化)



由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的 时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。 该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都 是将主机作为主设备,而每一次命令和数据的传输都是从主机主动启动写时 序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时 序完成数据接收。数据和命令的传输都是低位在先。

2.1.5 电源电路

2.1.6报警电路设计
3 系统总设计


本系统采用的是循环查询方式,来显示和 控制温度的。主要包括四段程序的设计: DS18B20读温度程序,数码管的驱动程序, 键盘扫描程序,以及抱经处理程序。 3.1主程序流程图
加热 控制
实测温度>=预设温度
Y Y
N
实测温度<预设温度
相关文档
最新文档