




已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘 要电风扇是夏天给人们降温的非常好的家用电器,智能风扇就是能根据温度的改变,风扇转速随之改变,现在的风扇很难做到这一点,只有人为的几档调速。夏夜温度下降后人们容易因熟睡而受凉,当温度升高时,它又不能根据温度的变化改变转速。本设计智能风扇采用单片机 AT89C51 作为控制系统的核心,使用温度传感器 DS18B20 进行当前的温度采集,利用 PWM 脉冲宽度调制技术进行实时调速,并通过 LED 数码管显示当前温度。关键词:单片机;温度传感器;风扇; PWM;Design of Smart Fan Based on Single Chip MicrocomputerAbstractFan is very good for people cooling appliances in the summer. Smart Fan is according to changes in temperature, and fan speed changes. Now the fan is difficult to do this, only a few artificial stall speed.The design of the fan control system uses AT89C51 microcontroller , the indoor temperature sensor DS18B20 temperature acquisition, use PWM pulse width modulation technology for real-time control, and displays the current temperature through the LED digital tube.Key Words: Microcontroller;Temperature Sensors ;Fan ;目录第一章 绪 论 .31.1 引言 .31.2 发展现状与应用领域 .41.3 本次设计的主要任务和内容 .5第二章 方案论证 .62.1 控制核心的选择 .62.2 调速方式的选择 .62.3 温度传感器的选择 .72.4 显示电路的选择 .8第三章 主要原件的介绍 .83.1 AT89C51 简介 .83.2 DS18B20 简介 .103.3 四位共阳极数码管 .12第四章 系统主要硬件电路设计 .134.1 DS18B20 的工作原理及其单片机的接口电路 .134.2 风扇 PWM 调速原理及其单片机接口电路 .154.3 晶振及复位电路设计 .164.4 数码显示电路 .174.5 按键连接电路 .18第五章 软件设计 .195.1 程序设置 .19第六章 系统调试 .196.1 软件调试 .196.1.1 按键显示部分的调试 .206.1.2 传感器 DS18B20 温度采集部分调试 .206.1.3 电动机调速电路部分调试 .206.2 硬件调试 .206.2.1 传感器 DS18B20 温度采集部分调试 .216.2.2 电动机调速电路部分调试 .216.3 系统功能 .216.3.1 系统实现的功能 .216.3.2 系统功能分析 .21总 结 .22谢 辞 .23参考文献 .23附录 .24附录一:电路原理图 .24附录二:源程序 .24第一章 绪 论1.1 引言在现实生活中,我们要经常使用一些降温设备。虽然现在不少城市家庭都用空调设备作为降温工具,但在大部分农村家庭风扇仍然是作为夏季降温的主要工具。春夏或者夏秋交替季节,早晚温差比较大,白天温度很高,风扇应该转动的比较快,这样才能给人带来凉爽。到了晚上,气温下降的很多,当人们入睡后,风扇的转动速度应慢慢减下来,防止感冒。虽然现在的风扇有不同的档位可以调节,但都必须人工来换挡,当人们熟睡时就无能为力了。尽管现在普遍采用定时的方式解决这个问题,但定时时间有限,一般最多只有两个小时,在这两个小时内温度并不一定就会下降的很多,风扇关闭后,人们可能就会因为炎热再次醒来开启电扇,这样会使人的睡眠质量大大降低。从以上的分析可知,需要设计出一种很智能化的电风扇来解决。本设计用单片机作为控制核心,用温度传感器采集当前温度,LED数码管显示实时温度,并根据当前检测到的温度,输出不同占空比的PWM脉冲信号,从而风扇实现了不同的转速。1.2 发展现状与应用领域当今社会已经完全进入了电子信息化,温度控制器在各行各业中已经得到了充分的利用。具有对温度进行实时监控的功能,以保证工业仪器,测量工具,农业种植的正常运作,它的最大特点是能实时监控周围温度的高低,并能同时控制电机运作来改变温度。它的广泛应用和普及给人们的日常生活带来了方便。简易温度监测控制器是利用单片机系统来完成的一个小型的控制系统。现阶段运用与国内大部分家庭,系统效率越来越高,成本也越来越低。其发展趋势可以根据其性质进行相应的改进可以运用与不同场合的温度监测控制,并带来大量的经济效益。它广泛应用于城市、农村、各种工业生产,在一定情况下亦适用于太阳能、锅炉及对温度敏感的产业的自动控制和温度报警,是实现无人值守的理想产品,市场极为广阔,需求量大。并且使用寿命长,适用范围广,安装极其容易。1.3 本次设计的主要任务和内容本设计是以 AT8951 单片机为主要控制核心,利用 51 单片机对温度传感器采集到的数据进行处理,并且通过各种电子元器件对电风扇各种工作状态进行实时控制,从而可以达到用户的要求。本次设计主要完成以下内容:(1)可根据预设温度自动调节风扇转速,当当前温度大于预设温度上限,风扇转速较高;小于预设温度上限,大于预设温度下限风扇转速较低;小于预设温度下限风扇自动关闭。(2) 预设温度可通过按键增加或减少,三个按键。第一个为功能键按第一下显示温度上限设置,按第二下显示温度下限设置,按第三下显示环境温度。第二个键为温度设置加键,按一下加五度。第三个键为温度减键,按一下温度减一。(3) 可以实现对风扇转速的手自动控制。(4)自动模式下,通过对温度信号的检测,实现对风扇转速的智能控制。(5) 数码管可以对环境温度进行显示,并显示风扇档位。第二章 方案论证2.1 控制核心的选择方案一:采用单片机作为主要控制芯片。在本设计中采用 AT89C51 单片机,通过软件编程的方法来实现对温度的实时采集和控制,在其 I/O 口输出相应的控制信号。单片机 AT89C51 工作电压相对比较低,单片内含有 4k 字节的ROM 和 256 字节的 RAM,并且价格也相对较便宜。方案二:采用电压比较电路作为控制执行部件。将采集到的温度信号转换为电信号并经放大电路放大,集成运算放大器组成的比较电路来判断决定电风扇的转动速度。对于方案一,用单片机作为控制器件,通过简单的程序编写可以将温度传感器 DS18B20 检测的温度通过 LED 数码管显示出来,而且可以通过按键扫描程序通过单片机的外部按键对预设的初值进行增加或者减少,同时对于驱蚊功能采用单片机的软件编程更易实现,成本低,故以单片机 AT89C51 为控制核心,适合本次设计。对于 AT89C51 的具体参数参见下面“硬件设计”中的各器件介绍。对于方案二,采用电压比较电路作为控制的核心,虽然电路比较简单、容易实现,但不能对预设温度的值进行更改,无法满足不同用户的需求,故本次设计不采用。2.2 调速方式的选择方案一:采用变压器调节方式,运用变压器原理将市电 220V 交流电压通过线圈降压到不同的值,电风扇电机接到不同电压值的线圈上就可以来控制直流电机的转速。方案二:采用单片机的 PWM 软件编程方式。PWM 中文意思是脉冲宽度调制,英文意思是 Pulse Width Modulation 的简写形式,它是一种按某种规律变化的脉冲方波,在 PWM 驱动直流电机的调节控制系统当中,最常用的是矩形PWM 脉冲波信号,也是编写程序最简单的。在对直流电机的转速进行控制时,需要根据当前温度来输出不同占空比的 PWM 脉冲。 PWM 脉冲的占空比是指高电平的时间在一个周期时间内的百分比,若全为低电平,占空比为零,风扇不转;若全为高电平,占空比为 100%时,转速达到最大 4。用单片机输出 PWM脉冲信号时,有如下两种方法:(1) 利用软件延时。可以利用单片机自带的定时器编程实现不同占空比的PWM 脉冲的输出,利用中断程序对单片机输出的电平进行高低转换,从而实现风扇的调速,本设计采用该方法。设计不同占空比的 PWM 脉冲的思路是:假设采用 1S 的周期方波,以 50MS 为基准,则 20 个基准便就是一个 1S,那么当其中 4 个连续的 50MS 的高电平脉冲,然后 16 连续的 50MS 低电平脉冲,便得到了占空比为 20%的 PWM 方波信号。(2) 利用单片机自带的 PWM 功能。但本次设计所用得 AT89C51 单片机没有这种功能,只有 STC 系列的才有,故不可行。对于方案一,该方案可以对直流风扇进行调速,但调节不是很方便,而且采用变压器来改变电压,不能适应人性化要求。对于方案二,采用 PWM 脉冲调制的纯软件的方法来实现对直流电机的实时调速,具有很大的灵活性,而且可以更充分地发挥单片机的功能,综合考虑选用方案二。2.3 温度传感器的选择 方案一:用热电偶来作为检测温度的元器件,配合适当的外围电路,将检测到的温度信号送入单片机 AT89C51 处理。方案二:用热敏电阻作为检测温度的元器件,经过运算放大器放大,由于温度变化会引起热敏电阻的电阻值发生相应的变化、便可以得到输出电压变化的信号。方案三:用高精度集成温度传感器 DS18B20 作为检测温度的元器件,直接输出数字温度信号给单片机处理 5。对于方案一,采用热电偶作为检测元器件,其检测的温度范围非常宽,可检测-50 摄氏度到 1600 摄氏度,但是电路设计比较复杂,故本设计不采用该方案。对于方案二,采用热敏电阻价格相对便宜、元器件也很容易买到,但热敏电阻对温度的变化不是很敏感,在检测温度信号的时候,还有可能产生失真和误差,故本设计不采用该方案。对于方案三,由于温度传感器 DS18B20 的集成度很高,大大减少了外接电路,从而检测误差也会变小很多,DS18B20 检测温度的原理与前面两种方案的原理有着很大的不同。其检测到的温度值可以直接送入单片机处理,不用编写更多的转换程序,简化了程序的编写,且只用一根线便可与单片机相连,接口相当简单,本次设计采用该方案。关于 DS18B20 的详细参数参看下面“硬件设计”中的器件介绍。2.4 显示电路的选择方案一:采用四位共阳极数码管显示温度,动态扫描显示方式。方案二:采用液晶显示屏 LCD 显示温度对于方案一,该方案成本低廉,显示温度明确醒目,在夜间也能看见,功耗极低,显示驱动程序的编写也相对简单,这种显示方式得到广泛应用。不足的地方是扫描显示方式是使四个 LED 逐个点亮,因此会有闪烁,但是人眼的视觉暂留时间为 20MS,当数码管扫描周期小于这个时间时人眼将感觉不到闪烁,因此可以通过增大扫描频率来消除闪烁感。对于方案二,液晶体显示屏具有显示字符优美,不但能显示数字还能显示字符甚至图形的优点,这是 LED 数码管无法比拟的。但是液晶显示模块价格昂贵,驱动程序复杂,从简单实用的原则考虑,本系统采用方案一。第三章 主要原件的介绍系统主要器件包括 DS18B20 温度传感器、AT89C51 单片机、四位 LED 共阳数码管、风扇。辅助元件包括电阻、电容、晶振、电源、按键、开关等。3.1 AT89C51 简介AT89C51 是美国 ATMEL 公司生产的低电压单片机,其含有 4K 字节的ROM 和 256 字节的 RAM,兼容 MCS-51 指令。其中央处理器是 8 位的,且含有 Flash 存储单元,功能非常强大。AT89C51 单片机具有以下标准的功能:一个 8 位 CPU 频率范围 1.2-12MHZ,4K 字节 Flash 闪存,256 字节内部数据存储器 RAM,4 个 8 位并行I/O 口,一个全双工串行口,2 个 16 位定时/计数器,5 个中断源的中断控制系统,片内自带振荡器和时钟电路。AT89C51 单片机管脚图如 3.3 所示:图 3.3 AT89C51 单片机各管脚功能如下 8:VCC:40 引脚接 5V 供电电压。GND:20引脚接地。XTAL1:19 引脚为单片机提供外部时钟信号,外接石英晶体和微调电容。XTAL2:18 引脚为单片机提供外部时钟信号,外接石英晶体和微调电容。P0 口:P0.7P0.0,这组引脚共 8 条,其中 P0.7 为最高位,P0.0 为最低位。是漏极开路的 8 位准双向 I/O 口,有两种功能。第一:做通用 I/O 口,无片外内存时,P0 口可做通用 I/O 接口使用。第二:做地址/数据口,在访问外部内存时,用作地址总线的低 8 位和数据总线。P1 口:P1.7P1.0,其中 P1.7 为最高位,P1.0 为最低位,仅用作 I/O 口。P2 口:P2.7P2.0,其中 P2.7 为最高位,P2.0 为最低位。P2 口是带内部上拉电阻的 8 位准双向 I/O 接口,具有两种功能。第一:做通用 I/O 口,无片外内存时,P2 口可用作通用 I/O 口。第二:做地址口,在访问外部内存时,用作地址总线的高 8 位。P3 口:P3.7P3.0,其中 P3.7 为最高位,P3.0 为最低位。P3 口是双功能口。具有两种功能。第一:用作通用 I/O 口。第二功能: P3.0RXD 串行口输入;P3.1TXD 串行口输出;P3.2INTO 外部中断 0 输入;P3.3INT1 外部中断 1 输入;P3.4T0 定时计数器的脉冲输入;P3.5T1 定时计数器的脉冲输入;P3.6WR 片外RAM 写信号; P3.4RD 片外 RAM 读信号。RST:9 引脚复位输入,高电平有效。:29 引脚外部程序内存读信号。当访问外部程序内存时,此脚定时输出脉冲作为读片外程序内存的选通信号,通常接 EPROM 的 OE 端。端在每个机器周期中两次有效,但当访问外部 RAM 时,两次 负脉冲不出现。 可驱动 8 个 LS 型 TTL。ALE/ :30 引脚地址锁存允许 /编程线,当访问片外存储器时,在P0.7P0.0 引脚线上输出片外存储器低 8 位地址的同时还在 ALE/ 线上输出一个高电位脉冲,其下降沿用于把这个片外存储器低 8 位地址锁存到外部专用地址锁存器。/VPP:31 引脚内外部程序内存选择输入端。 =1,CPU 访问片外ROM,并执行其指令。当 PC0FFFH 时,自动转向片外 ROM。 =0,不论片内是否含有内存,只执行片外 ROM 的指令。3.2 DS18B20 简介DS18B20 内部结构主要有四个部分:64 位的只读程序存储器 ROM、温度传感器、非挥发的报警触发器 TH 和 TL、配置寄存器。总共有三个管脚,包含DQ,GND ,VDD。其中 DQ 为数字信号端,GND 为电源地,VDD 为电源输入端。DS18B20 的主要性能特点如下:(1) 仅可用一个端口便可以通信;(2) 无须外部器件;(3) DS18B20 支持多点组网功能;(4) 适应电压范围广,电压范围为 3.05.5V;(5) 待机功耗为零;(6) 温度以 9 位或 12 位数字;(7) 具有报警命令识别功能;(8) 具有负电压特性,电源接反时,芯片不会烧坏;DS18B20 的管脚图及部分温度值与 DS18B20 输出的数字量对照表见图 3.5 和表 3-1 所示: 图 3.5 DS18B20 温度传感器表 3-1 部分温度值与 DS18B20 输出的数字量对照温度值/ 数字输出(二进制) 数字输出(十六进制)+125 0000 0111 1101 0000 07D0H+85 0000 0101 0101 0000 0550H+25.625 0000 0001 1001 0001 0191H+10.125 0000 0000 1010 0010 00A2H+0.5 0000 0000 0000 1000 0008H0 0000 0000 0000 0000 0000H-0.5 1111 1111 1111 1000 FFF8H-10.125 1111 1111 0110 1110 FF5EH-25.625 1111 1111 0110 1111 FF6FH-55 1111 1100 1001 0000 FC90H3.3 四位共阳极数码管四位共阳极数码管,位控制端(1-4)给高电平使能相应的位,笔段控制端(A-B、DP.)给低电平可点亮。第四章 系统主要硬件电路设计本次设计的思路:本次设计主要利用 AT89C51 单片机为控制核心,利用温度传感器 DS18B20 采集当前温度送入单片机处理,单片机根据当前温度与预设温度的比较决定是否开启风扇和风扇转速,并通过四位共阳极 LED 数码管显示当前温度和风扇档位。当前温度高于预设温度上限,风扇工作在高档位 2 档;低于预设温度上限高于预设温度下限时风扇工作在低档位 1 档;当前温度低于预设温度下限风扇停止转动 0 档。单片机根据当前的温度输出相应占空比的PWM 脉冲,送入 12V 的直流电机,从而产生不同转速。复位方式是:上电自动复位,没有复位按键。系统总体设计图如图 3.1 所示。图 3.1 系统总体设计结构图4.1 DS18B20 的工作原理及其单片机的接口电路DS18B20 内部结构如图 3-1 所示,主要由 4 部分组成:64 位 ROM、温度传感器、非挥发的温度报警触发器 TH 和 TL、配置寄存器。其管脚排列如图 3-2所示,DQ 为数字信号端,GND 为电源地,VDD 为电源输入端。电机调速AT89C51键盘功能输入 温度、档位显示数字温度传感器 图 4-1 DS18B20 内部结构图图 3-2 DS18B20 外形及管脚由于 DS18B20 只有一根数据线。因此它和主机(单片机)通信是需要串行通信,而 AT89S51 有两个串行端口,所以可以不用软件来模拟实现。经过单线接口访问 DS18B20 必须遵循如下协议:初始化、ROM 操作命令、存储器操作命令和控制操作。要使传感器工作,一切处理均从序列开始。主机发送(Tx)-复位脉冲(最短为 480s 的低电平信号) 。接着主机便释放此线并进入接收方式(Rx) 。总线经过 4.7K 的上拉电阻被拉至高电平状态。在检测到 I/O 引脚上的上升沿之后,DS18B20 等待 15-60s,并且接着发送脉冲(60-240s 的低电平信号) 。然后以存在复位脉冲表示 DS18B20 已经准备好发送或接收,然后给出正确的 ROM 命令和存储操作命令的数据。DS18B20 通过使用时间片来读出和写入数据,时间片用于处理数据位和进行何种指定操作的命令。它有写时间片和读时间片两种。写时间片:当主机把数据线从逻辑高电平拉至逻辑低电平时,产生写时间片。有两种类型的写时间片:写 1 时间片和写 0 时间片。所有时间片必须有 60微秒的持续期,在各写周期之间必须有最短为 1 微秒的恢复时间。读时间片:从 DS18B20 读数据时,使用读时间片。当主机把数据线从逻辑高电平拉至逻辑低电平时产生读时间片。数据线在逻辑低电平必须保持至少 1微秒;来自 DS18B20 的输出数据在时间下降沿之后的 15 微秒内有效。为了读出从读时间片开始算起 15 微秒的状态,主机必须停止把引脚驱动拉至低电平。在时间片结束时,I/O 引脚经过外部的上拉电阻拉回高电平,所有读时间片的最短持续期为 60 微秒,包括两个读周期间至少 1s 的恢复时间。一旦主机检测到 DS18B20 的存在,它便可以发送一个器件 ROM 操作命令。所有 ROM 操作命令均为 8 位长。图 3-3 DS18B20 与单片机接口电路4.2 风扇 PWM 调速原理及其单片机接口电路我们采用的是 PWM 来实现直流电动机的调速,优点:控制原理简单,输出波动小,线性好,对邻近电路干扰小。缺点:功率低,散热问题严重。PWM 调速原理:输出电压(2-1)(2-2)式 2-1 中 称为占空比。占空比D表示了在一个周期T里开关管导通的时间与周期的比值。D的变化范围为 0#include#define uchar unsigned char#define uint unsigned int/sbit dj=P10;/电机控制端接口sbit DQ=P12;/温度传感器接口/按键接口/sbit key1=P31;/设置温度sbit key2=P32;/温度加sbit key3=P33;/温度减/sbit w1=P20;sbit w2=P21;sbit w3=P22;sbit w4=P23;/共阴数码管段选/uchar table22=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71,0x40,0x38,0x76,0x00,0xff,0x37;/-,L,H,灭,全亮,n 16-21uint wen_du; uchar gao,di;/pwmuint shang,xia; /对比温度暂存变量uchar dang;/档位显示uchar flag;uchar d1,d2,d3;/显示数据暂存变量void delay(uint ms)uchar x;for(ms;ms0;ms-)for(x=10;x0;x-);/*ds18b20延迟子函数(晶振12MHz )*/ void delay_18B20(uint i)while(i-);/*ds18b20初始化函数*/void Init_DS18B20() uchar x=0;DQ=1; /DQ复位delay_18B20(8); /稍做延时DQ=0; /单片机将DQ拉低delay_18B20(80); /精确延时 大于 480usDQ=1; /拉高总线delay_18B20(14);x=DQ; /稍做延时后 如果x=0则初始化成功 x=1则初始化失败delay_18B20(20);/*ds18b20读一个字节*/ uchar ReadOneChar()uchar i=0;uchar dat=0;for (i=8;i0;i-)DQ=0; / 给脉冲信号dat=1;DQ=1; / 给脉冲信号 if(DQ)dat|=0x80;delay_18B20(4);return(dat);/*ds18b20写一个字节*/ void WriteOneChar(uchar dat)uchar i=0;for (i=8;i0;i-)DQ=0;DQ=datdelay_18B20(5);DQ=1;dat=1;/*读取ds18b20当前温度*/void ReadTemperature()uchar a=0;uchar b=0;uchar t=0;Init_DS18B20();WriteOneChar(0xCC); / 跳过读序号列号的操作Writ
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大学化学重要概念与定义解析试题及答案
- 提高物理解题速度的练习试题及答案
- 市场分析2025年商务英语考试试题及答案
- 劳动防护安全试题及答案
- 水坝模拟测试题及答案
- 水浒传每回试题及答案
- 教师教育教学反思与创新教学方法的有效结合试题及答案
- 掌握客户体验的商务英语试题及答案
- 动物抛弃测试题及答案
- 建筑施工安全工作的重要性与意义试题及答案
- 工程款抵房协议合同模板
- 初中数学问题解决策略 特殊化教案2024-2025学年北师大版(2024)七年级数学下册
- 2024-2025学年人教版数学八年级下册期中押题重难点检测卷(含答案)
- 基建科室面试题及答案
- 儒林外史名著试题及答案
- 2024年汽车维修案例分析方法试题及答案
- 18 井冈翠竹 课件
- 地质灾害地震课件
- 脊柱损伤的临床表现与急救处理
- LY/T 2457-2015西南桦培育技术规程
- GB/T 40998-2021变性淀粉中羟丙基含量的测定分光光度法
评论
0/150
提交评论