基于单片机的温控风扇_毕业设计论文(编辑修改稿)内容摘要:

ected by single chip puter , according to high and how temperature, single chip puter output high level or low level to control relay whether there is current in the coil through ,according to the coil power relay, normally open contact is closed ,no current passing ,often a disconnect to maintain contacts so as to achieve the automatic control from the fans stopped. The system has changed the traditional manual control from the fans stopped ,automatic control is realized according to temperature to facilitate the summer when people sleep at night .Practice prove that the system has high reliability, stability and low cost, a strong, weak control and higher value are achieved. Keywords: AT89S52。 temperature collection。 electric fans。 automatic control [键入文字 ] 1 第一章 整体方案设计 前 言 在现代 社会 中, 风扇被广泛的应用,发挥着举足轻重的作用,如夏天人们用的散热风扇、 工业生产 中大型机械中的散热风扇以及 现在笔记本电脑上 广泛使用 的智能 CPU风扇等。 而随着 温度控制技术的发展 , 为了降低风扇运转时的噪音以及节省能源等,温控风扇越来越受到重视并被广泛的应用。 在现阶段, 温控风扇的设计已经有了一定的成效,可以使风扇根据环境温度的变化进行自动无级调速,当温度升高到一定时能自动启动风扇,当温度降到一定时能自动停止风扇的转动,实现智能控制。 随着单片机在各个领域的广泛应用,许 多用单片机作控制的温度控制系统也应运 而生, 如基于单片机的温控风扇系统。 它使风扇根据环境温度的变化实现自动启停,使风扇转速随着环境温度的变化而变化,实现了风扇的智能控制。 它的设计为现代社会人们的生活以及生产带来了诸多便利,在提高人们的生活质量、生产效率的同时还能节省风扇运转所需的能量。 本 文设计了 由 ATMEL公司的 8052系 列单片机 AT89C52作为控制器, 采用 DALLAS公司的 温度传感器 DS18B20 作为温度采集 元件,并 通过 一个达林顿反向驱动器ULN2803 驱动风扇 电机的转动。 同时使系统检测到得环境温度以及 系统预设的温度动态的显示在 LED 数码管上。 根据系统检测到得环境温度与系统预设温度的比较,实现风扇电机的自动启停以及转速的自动调节。 系统整体设计 本设计的整体思路是:利用温度传感器 DS18B20 检测 环境 温度并直接输出数字温度信号给单片机 AT89C52 进行处理 , 在 LED 数码管上显示当前环境温度值以及预设温度值。 其中预设温度值只能为整数形式,检测到的当前环境温度可精确到小数点后一位。 同时 采用 PWM 脉宽调制 方式 来改变直流 风扇 电机的转速。 并 通过两个按键改变预设温度值,一个提高预设温度,另一个降低预设温度值。 系统 结 构 框图如下: [键入文字 ] 2 图 系统 构成框图 方案论证 本设计 要 实现 风扇 直流电机的温度控制, 使风扇电机能根据环境温度的变化自动启停及改变转速, 需要 比 较高的温度变化分辨率 以及 稳定可靠 的 换挡停机控制部件 [1]。 温度传感器的选择 在本设计中, 温度传感器 的 选择 有以下两种方案 : 方案一: 采 用热敏电阻作为 检 测温度的核心元件, 并 通过运算放大器放大 , 由于 热敏电阻会随 温度变化 而 变化 , 进而 产生 输出电压变化的微弱电压变化信号,再 经 模数 转换芯片 ADC0809 将 微弱电压变化 信号转化为数字信号输入单片机处理。 方案二:采用数字式 的 集成温度传感器 DS18B20 作为温度 检测 的核心元件, 由其检测并 直接输出数字温度信号给单片机 进行 处理。 对于方案一,采用热敏电阻 作为温度检测元件 , 有价格便宜,元件易购的优点,但热敏电阻对温度的细微变化不 太 敏感,在信号采集、放大 以及 转换 的 过程中还会产生失真和误差,并且由于热敏电阻的 RT 关系的非线性,其 自 身电阻对温度的变化存在较大误差,虽然可以通过一定电路 来 修 正,但 这 不仅将使电路 变得更加 复杂,而且在人体所 [1] 李学龙 . 使用单片机控制的智能遥控电风扇控制器 [J].电子电路制作, 2020,9: 13— 15. 温度显示 DS18B20 AT89C52 复位 晶振 独立键盘 PWM 驱动电路 直流电机 [键入文字 ] 3 处环境温度变化过程中难以检测 到小的温度变化。 故该方案不适合本系统。 对于方案二,由于数字式集成温度传感器 DS18B20 的高度集成化,大大降低了外接放大转化等电路的误差因数,温度误差 变得 很小 ,并且由于其检 测温度的原理与 热敏电阻检测 的原理有着本质的不同,使得其温度分辨力极高。 温 度值在器件内部转化成数字量直接输出,简化了系统程序设计,又由于该温度 传感 器采用先进的单总线技术,与单片机的接口变得非常简洁,抗干扰能力强 , 因此该方案适用于本系统。 控制核心的选择 在本设计中 采用 AT89C52 单片机作为控制核心 , 通过 软件编程的方法进行温度 检测 和 判断,并在 其 I/O 口 输出控制信号。 AT89C52 单片机工作电压低,性能高,片内含8k 字节的只读程序存储器 ROM 和 256 字节的随机数据存储器 RAM,它兼容标准的MCS51 指令系统, 单片价格也不贵,适合本设计系统。 温度显示器件 的选择 方案一: 应用动态扫描的方式, 采用 LED 共阴 极数码管显示温度。 方案二:采用 LCD 液晶显示屏显示温度。 对于方案一,该方案成本 很低 ,显示温度明确醒目, 即使 在 黑暗空间 也能 清楚 看见,功耗极低, 同时 温度显示 程序的编写也相对简单, 因而 这种显示方式得到 了 广泛应用。 但 不足的 地方 是它 采用动态扫描的显示方式, 各 个 LED 数码管 是 逐个点亮 的 ,因此会产生 闪烁,但 由于 人眼的视觉暂留时间为 20MS, 故 当数码管扫描周期小于这个时间时人眼 不 会感觉到闪烁,因此 只要 描频率 设置得当即可采用该方案。 对于方案二,液晶显示屏具有显示字符优美, 其 不 仅 能显示数字还能显示字符甚至图形,这是 LED 数码管无法比拟的。 但是液晶显示模块 的元件 价格昂贵, 显示 驱动程序 的编写 也 较 复杂,从简单实用的原则考虑,本系统采用方案一。 调速方式的选择 方案一 : 采用 数模 转换芯片 DAC0832 来 控制 , 由单片机根据当前 环境 温度 值 输 出相应数字量到 DAC0832 中 ,再 由 DAC0832 产生 相应 模拟信号控制晶闸管的导通角 ,从而 通过 无级调速电路实现 风扇电机转速的自动 调节。 方案二 : 采用单片机软件 编程 实现 PWM(脉冲宽度调制) 调速的方法。 PWM 是英文 Pulse Width Modulation 的缩写,它是按一定的规律改变脉冲序列的脉冲宽度,以调节输出量和波形的一种调节方式, 在 PWM 驱动控制的调 节 系统中, 最常用的是矩形[键入文字 ] 4 波 PWM 信号,在控制时需要调节 PWM 波得占空比。 占空比是指高电平持续时间在一个周期时间内的百分比。 在控制电机的转速时,占空比越 大,转速就越快,若全为高电平,占空比为 100%时,转速达到最大 [2]。 用单片机 I/O 口输出 PWM 信号时,有如下三种方法: (1) 利用软件延时。 当高电平延时时间到时,对 I/O 口电平取反,使其变成低电平,然后再延时一定时间;当低电平延时时间到时,再对该 I/O 口电平取反,如此循环即可得到 PWM 信号。 在本设计中应用了此方法。 (2) 利用定时器。 控制方法与 (1)相同,只是在该方法中利用单片机的定时器来定时进行高低电平的转变,而不是用软件延时。 应用此方法时编程相对复杂。 (3) 利用单片机自带的 PWM 控制器。 在 STC12 系列单片机中自身带有 PWM 控制器,但本系统所用到得 AT89 系列单片机无此功能。 对于方案一 , 该方案能够实现 对 直流 风扇 电机 的 无级调速 , 速度变化灵敏, 但是D/A 转换芯片 的 价格较高 , 与其温控状态下无级调速功能相比性价比不高。 对于方案二 , 相对于其他用硬件或者 软硬件 相 结合的方法实现对电机进行调 速而言 ,采用 PWM 用纯软件的方法来实现调速过程,具有更大的灵活性 ,并可大大降低成本,能够充分发挥单片机的 功 能,对于简 单 速度控制系统的实现提供了一种有效的途径。 综合考虑选用方案二。 [2] 蓝厚荣 .单片机的 PWM 控制技术 [J] .工业控制计算机 , 2020,23( 3) :97— 98 [键入文字 ] 5 第二章 各 单元模块 的硬件 设计 系统主要 器 件包括 DS18B20 温度传感器、 AT89C52 单片机、 五 位 LED 共阴 数码管、风扇 直流电机 、达林顿反向驱动器 ULN2803。 辅助元件包括电阻 电容 、晶振、电源、按键、拨码开关等。 系统器件简介 DS18B20 单线数字温度传感器简介 DS18B20 数字温度传感器 , 是 采用 美国 DALLAS 半导体 公司生产的 DS18B20可组网数字温度传感器芯片封装而成 ,它具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点,可直接将温度转化成串行数字信号供处理器处理。 适用于各 种狭小空间设备数字测温和控制领域。 DS18B20 的主要特征: 测量 的 结果直接 以 数字信号 的形式输出 ,以“一线总线”方式 串行传送给 CPU,同时可传送 CRC 校验码,具有极强的抗干扰纠错能力 ; 温度测量 范围 在 55℃ ~+125℃ 之间 ,在 10℃ ~+85℃ 时精度为 177。 ℃ ;可检测温度 分辨率为9~12 位,对应的可分辨温度分别为 ℃ , ℃ , ℃ 和 ℃ ,可实现高精度测温; 它 单线接口 的独特性 , 使 它与微处理器连接时仅需一条端口线即可实现 与 微处理器的双向通信;支持多点组网功能, 即 多个 DS18B20 可以 并联在唯一的三线上,实现组网多点测温 的功能 ; 工作 电压范围宽, 其 范围在 ~[3]。 DS18B20 内部结构主要 有四 部分: 64 位 ROM、温度传感器、非挥发的温度报警触发器 TH 和 TL、配置寄存器。 其管脚有三个,其中 DQ 为数字信号端, GND 为电源地,VDD 为电源输入端。 达林顿反向驱动器 ULN2803 简介 本系统 要用单片机控制风扇直流电机,需要加驱动电路,为直流电机提供足够大的驱动电流。 在本系统驱动电路中,选用达林顿反向驱动器 ULN2803 来驱动风扇直流电机。 ULN2803 在使用时接口简单, 操作方便,可为电机提供较大的驱动电流,它实际上是一个集成芯片,单块芯片可同时驱动 8 个电机。 每个电机由单片机的一个 I/O 口控制,单片机 I/O 口输出的为 5V 的 TTL 信号。 [3] 郭天祥 .新概念 51 单片机 C 语言教程 [M].北京:电子工业出版社 .— 344 [键入文字 ] 6 ULN2803 由 8 个 NPN 达林顿晶体管组装而成,共 18 个引脚,引脚 1~8 分别是 8路驱动器的输入端,输入信号可直接是 TTL 或 CMOS 信号;引脚 11~18 分别是 8 路驱动器的输出端;引脚 9 为接地线,引脚 10 为电源输入。 当输入 TTL 信号为 5V 或 CMOS信号为 6~15V时,输出的最大电压为 50V,最大电流为 500mA,工作温度范围为 0~70℃。 本系统选 用的电机为 12V 直流无刷电机,可用 ULN2803 来驱动。 AT89C52 单片机简介 AT89C52 是 51 系列单片机的一个型号,它是 由 ATMEL 公司生产的一个低电压 、 高性能 的 8 位单片机, 片内 器件采用 ATMEL 公司的非易失性、 高密度 存储技术生产, 与 标准 的 MCS51 指令系统 兼容 , 同时 片内置 有 通用 8 位中央处理器和 8k 字节 的可反复擦写的只读程序存储器 ROM 以及 256 字节 的数据存储器RAM, 在许多 许多较复杂 的 控制 系统 中 AT89C52 单片机得到了广泛 的 应用。 AT89C52 有 40 个引脚, 各引脚介绍如下: VCC: +5V 电源线 ; GND: 接地 线。 P0 口: ~,这组引脚共 8 条,其中 为最高位, 为最低位。 这 8 条引脚共有两种不同的功能,分别使用于两种不同的情况。 第一种情况是单片机不带片外存储器, P0 口可以作为通用 I/O 口使用, ~ 用于传送 CPU 的输入 /输出数据 ,此时它需外接一上拉电阻才能正常工作。 第二种情况是单片机带片外存储器, 其各引脚在 CPU 访问片外存储器时先是用于传送片外存储器的低 8 位地址,然后传送 CPU 对片外存储器的读写数据 [4]。 P1 口: P1 口是一个内部 含 上拉电 阻的 8 位双向 I/O 口。 它也可作为通用的 I/O 口使用,与 P0 口一样用于传送用户的输入输出数据,所不同的是它片内含上拉电阻而 P0口没有,故 P0 口在做该用途时需外接上拉电阻而 P1 口则无需。 在 FLASH 编程和校验时, P1 口 用于输入片内 EPROM 的低 8 位地址。 P2 口: P2 口为一个内部上拉电阻的 8 位双向 I/O 口, 它可以作为通用 I/O 口使用,传送用户的输入 /输出数据,同时可与 P0 口的第二功能配合,用于输出片外存储器的高8 位地址,共同选中片外存储单元,但此时不能传送存储器的读写数据。 在一些型号的单片机中, P2 口还可以配 合 P1 口传送片内 EPROM 的 12 位地址中的高 4 位地址。 P3 口: P3 口 引 脚是 8 个带内部上拉电阻的双向 I/O 口,当 P3 口写入 1 后,它们被 [4] 胡汉才 .单片机原理及其接口技术 [M](第 2 版) .北京:清华大学出版社 . 63 页 . [键入文字 ] 7 内部上拉为高电平。 它也可作为通用的 I/O 口使用,传送用户的输入输出数据, P3 口也作为一些特殊功能 端 口 使用 ,如下所示: : RXD(串行 数据接收 口) : TXD(串行 数据发送 口) : 0INT (外部中断 0 输入 ) : 1INT (外部中断 1 输入 ) : T0(记 数 器 0 计数 输入) : T1(记时器 1 外部输入) : WR (外部 RAM 写选通 信号 ) : RD (外部 RAM 读选通 信号 ) 图 AT89C51 单片机 RST:复位输入。 当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平 状态。 ALE/ PROG : 地址锁存允许 /编程线, 当访问 片 外存储器时, 在 ~ 引脚线上输出片外存储器低 8 位地址的同时还在 ALE/ PROG 线上输出一个高电位脉冲,其下降沿用于把这个片外存储器低 8位地址锁存到外部专用地址锁存器,以便空出 ~引脚线去传送随后而来的片外存储器读写数据。 在不访问片外存储器时,单片机自动在ALE/ PROG 线上输出频率为 1/6 晶振频率的脉冲序列。 PSEN :外部程序存储器 ROM 的选通信号。 在由外部程序存储器取指期间,每个机器周期两次 PSEN 有效。 但在访 问外部数据存储器时,这两次有效的 PSEN 信号将不出现。 EA /VPP: 允许访问片外存储器 /编程电源线, 当 EA 保持低电平时,则在此期间 允许使用片 外 程序存储 器 ,不管是否有内部程序存储器。 当 EA 端保持高电平时, 则允许使用片 内 程序存储器。 在 FLASH 编程期间,此引脚也用于施加 12V 编程电源( VPP)。 XTAL1 和 XTAL2:片内振荡电路输入线,这两个端 子用来外接石英晶体和微调电容,即用来连接单片机片内 OSC 的定时反馈回路。 LED 数码管简介 [键入文字 ] 8 dpgfedcbadpgfedcbaR x 8 R x 8本系统选用 五 个 LED 数码管 来进行 温度显示。 LED 又称为数码管,它主要 是 由 8段发光二极管组成的不同组合, 其中 a~g 为数字和字符显示段, dp 为小数点 的 显示,通过 a~g 这 7 个发光 二极管点亮 的不同组合,可以显示 0~ 9 和 A~ F 共 16 个数字和字母。 LED 数码管 可以分为共阴极和共阳极两种结构,如 下 图 (a)和图 (b) 所示。 共阴极结构把 8 个发光二极管阴极连在一起 ,共阳极结构把 8 个发光二极管阳极连。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。