水温控制系统的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本科生毕业论文(设计)系(院)
论文题目水温控制系统的设计
学生姓名
指导教师)
(姓名及职称)
班级
学号
完成日期:2012 年 4 月
水温控制系统的设计
[摘要] 这篇文章介绍了基于51单片机的水温控制系统。该系统采用STC89C52作为主控制器,采用DS18B20作为温度检测传感器,配合按键设置,数码管显示,可很好的实现功能。该文主要包含单片机最小系统电路、按键电路、显示电路和继电器控制电路,使用C 语言编程。
[关键词] 51单片机 水温 DS18B20 控制系统 C 语言
引言
在化工、石油、冶金等生产过程的物理过程和化学反应中,温度往往是一个很重要的量,需要准确地加以控制。除了这些部门之外,温度控制系统还广泛应用于其他领域,是用途很广的一类工业控制系统[1]。温度控制系统常用来保持温度恒定或者使温度按照某种规定的程序变化。然而所采用的测温元件和测量方法也不相同;产品的工艺不同,控制温度的精度也不相同。因此对数据采集的精度和采用的控制方法也不相同。
不论在工业生产过程中,还是在日常生活中,温度控制都起着非常重要的作用。在淡水资源缺乏的今天,水温控制尤为重要,合理控制水温,以防止水资源的严重浪费。
1概述
1.1 设计任务
设计并制作一台水温自动控制系统,可以根据设定水温以及当前水温,自动调节水温。示意图如下:
图1.1 水温控制系统方框图 温度传感
器18B20 51单片机 加 热
报 警 降 温
数 显
2设计方案论证与选择
2.1温度传感器方案
方案一:采用铂热电阻PT100检测水温。铂热电阻温度传感器是利用其电阻和温度成一定函数关系而制成的温度传感器,由于其测量准确度高、测量范围大和稳定性好等,被广泛用于中温(-200℃~650℃)范围的温度测量中。PT100常用的采样电路有桥式测温电路和恒流源测温电路两种。
如图2.1为PT100实物图。
图2.1 PT100实物图
方案二:采用DS18B20数字温度传感器检测水温。DS18B20是美国DALLAS 公司继DS1820之后最新推出的一种数字化单总线器件。属于新一代适配微处理器的改进型智能温度传感器。与传统的热敏电阻相比,它能够直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。可以分别在93.75ms和750ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源,且该器件有防水型,可靠性高,使用起来简单。
如图2.2为DS18B20示意图。
图2.2 DS18B20示意图
2.2控制器选择方案
方案一:采用可编程逻辑器件FPGA作为控制器。使用FPGA,电路相对较简单,部分电路可以通过编程实现而无需外部分立元件。与外围电路配合,能很好的实现自动控制功能。
方案二:采用单片机作为控制器。使用单片机可以轻松的完成控制,显示等操作,且价格便宜,是一种不错的方案。
2.3方案论证与选择
在温度检测方案中:方案一和方案二都能很好的检测水温,方案一中PT100使用起来电路比较复杂,而且很容易引入误差,影响温度的检测;方案二中DS18B20属于单总线器件,使用方便,外围电路少,测量精度高。而且其测量温度在-55℃~+125℃范围内,足以胜任对水温的检测。综合考虑,选择方案二,采用DS18B20作为水温检测传感器。
在控制器选择中:方案一采用FPGA控制较方案二中采用单片机控制复杂,且成本较高,二单片机价格便宜,容易上手。故选择单片机作为系统控制器。
3硬件单元模块设计
3.1温度检测模块
作为一台自动控制器,传感器扮演着非常重要的角色,只有准确的对数据进行采集并传回,控制器才能做出正确的动作。本系统采用美国DALLAS公司的DS18B20检测水温,该器件稳定性好,不易受干扰,测温分辨率为0.5℃。如图3.1为防水型DS18B20实物图。
图3.1 防水型DS18B20实物图
3.1.1 DS18B20模块电路
如图3.2为温度检测模块硬件电路图。DS18B20可以把检测到的温度信号转换
成数字信号,然后通过一根信号线将转换好的数据以串行数据的方式直接传输给单片机。DS18B20使用5V供电,其中R20为上拉电阻,一般阻值为10K或者4.7K,目的是防止总线由于外部干扰,出现时序混乱。
图3.2 DS18B20硬件电路图
3.1.2 DS18B20示意图和引脚功能表
如图3.3为DS18B20元件示意图和引脚功能表。
图3.3 DS18B20元件示意图和引脚功能表
3.1.3 DS18B20控制指令
表3.1为DS18B20控制指令表。从指令表可以看出DS18B20的操作是比较简单的。
表3.1 DS18B20控制指令表
3.2数码管显示模块
本系统采用数码管作为主要显示,数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接
方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮[4]。其原理图如图3.4所示。另外无论共阴还是共阳都根据接法有相对应的码值比如共阴数码管0到9的断选码是:0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f
图3.4 数码管的原理
数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。静态显示驱动:静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动4个数码管静态显示则需要4×8=32根I/O端口来驱动。动态扫描则是通过不断的刷新数据来显示。
3.3报警模块
本系统包含了一个报警电路,当水温超过设定温度上限值时,便开始报警,以达到提示的目的。报警模块电路如图3.5所示。采用有源蜂鸣器作为报警发声器,由于单片机IO口允许通过的电流最大为20mA左右,不足以驱动蜂鸣器发声,故采用一PNP三极管驱动。当三极管基极为高电平时,蜂鸣器不发声;当三极管基极为低电平时,蜂鸣器开始发声,发声的高低又驱动级的频率决定。