基于单片机的电脑机箱风扇温控系统.docx
- 文档编号:23357622
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:51
- 大小:765.78KB
基于单片机的电脑机箱风扇温控系统.docx
《基于单片机的电脑机箱风扇温控系统.docx》由会员分享,可在线阅读,更多相关《基于单片机的电脑机箱风扇温控系统.docx(51页珍藏版)》请在冰豆网上搜索。
基于单片机的电脑机箱风扇温控系统
2012届毕业设计说明书
基于单片机的电脑机箱风扇温控系统
系、部:
电气与信息工程系
学生姓名:
朱涛
指导教师:
黄海波职称
专业:
电子信息工程技术
班级:
0902
完成时间:
2012/5/23
摘要
本设计使用MCS-51系列单片机AT89S52设计的温控散热风扇系统,用LCD1602显示屏进行显示,在LCD液晶屏上显示系统的温度、风扇转速、系统运行时间等参数。
单片机控制DS18B20温度传感器采集温度,通过单片机的处理,根据温度变化控制风扇以不同转速运转。
同时为提高系统可靠性,系统设计了简单的报警系统和以MAX706为核心的硬件看门狗系统。
在温度过高时报警,传感器故障时报警并屏幕闪烁,以便提醒使用者及时解决这些故障。
当系统出现故障陷入死循环时,自动复位,防止出现不可预料后果,使系统正常工作。
为扩展需求本系统预留了很多可扩展口,以便今后加入键盘、各种控制功能。
,改造系统为交互式系统。
本系统系统程序由C语言编写。
通过C语言易于驾驭的特点,驱动温度传感器、LCD1602等器件协同工作。
完成系统的各项要求。
关键词:
单片机;温度传感器;看门狗
ABSTRACT
ThedesignusestheMCS-51seriesMCUAT89S52isdesignedwithtemperaturecontrolcoolingfansystem,theLCD1602displayontheLCDscreentodisplaythetemperatureofsystem,fanspeed,systemruntimeparametersandsoon.TheSCMDS18B20temperaturesensorscollecttemperature,byMCUprocessing,accordingtothetemperaturecontrollingthefanoperationindifferentspeed.Atthesametimetoimprovesystemreliability,systemdesignsimplealarmsystemandMAX706asthecorehardwarewatchdogsystem.Alarmingwhenthetemperaturesensorfailurealarmandthescreenflashestoremindtheusertopromptlyresolvethesefailures.Anendlessloopwhenthesystemfails,theautomaticresettopreventtheunpredictableconsequences,tomakethesystemworkproperly.
Reservedfortheexpansionneedsofthesystemalotofexpansion,portforfutureaccessiontothekeyboard,andvariouscontrolfunctions.Transformationsystemforinteractivesystems.
ThesystemprogramofthesystemiswritteninClanguage.TractablebytheClanguagefeatures,thedrivetemperaturesensor,LCD1602andotherdevicestoworktogether.Completealltherequirementsofthesystem.
Keywords:
MCU;temperaturesensor;Watchdog
1绪论
随着电子技术的迅速发展,PC已经融入了我们的日常生活,成为我们生活的一部分。
早期的PC由于处理器频率低,发热量较小,大多不采取散热措施或只采用散热片的被动散热方式。
随着市场的需要,处理器频率越来越高,PC性能是得到了提升,但随之而来的便是芯片的散热问题。
为了散热,发烧友会采用液冷方式散热,追求极限的人甚至采用了液氮散热,当然大多数人都采用散热片加散热风扇的形式。
我们知道电脑主机由机箱大致封闭着,想要更好的散热,就要将机箱中的热尽量快的排出去,这时便可以加装电脑机箱风扇。
风扇是多了,散热也好了,但又带来了一些问题。
第一风扇多了比较吵,第二费电。
噪声不仅影响自己心情也打搅了他人。
浪费电与现代绿色低碳环保相悖。
为了在一定程度上解决这些问题,便做了今天这个课题。
1.1设计目的
能够根据电脑机箱内部温度自动调节机箱风扇的速度。
同时附带有显示机箱温度,风扇转速显示相关功能。
以到达更好散热的同时减小噪声污染的目的。
1.2设计要求
1)根据温度控制散热风扇的转速,如果温度小于25度风扇不转,高于50度时风扇全速运转。
25到50度间根据温度变速。
2)显示测到的温度。
3)显示测到的风扇转速。
4)报警功能,未检测到温度时,蜂鸣器响,液晶屏闪烁;温度高于50度时报警。
5)显示系统运行时间。
6)硬件“看门狗”系统运行中出问题自动重置系统。
2温控电脑机箱风扇的系统
2.1系统实现的功能
本系统是借用单片机采用模块化设计的电脑机箱风扇控制系统,包括LCD显示、测温显示、计时显示、报警功能、侧转速功能、自动调节转速等功能。
与此同时本系统保留了相当多的可扩展口,可根据需要另设或多设相关功能。
LCD显示功能,是系统的显示输出设备,主要用来显示系统测试的温度、转速、时间数据。
2.2温控风扇的工作框图
本系统工作流程:
由单片机做主控芯片。
控制各部件协同工作。
首先温度传感器测试温度,并处理。
根据温度的变换主控输出不同的风扇控制信号。
以达到温控风扇的基本功能。
工作框图如图1所示。
时钟晶振复位电路测温电路看门狗
电路电路
AT89S52单片机
LCD1602显示PWM风扇控制电路报警电路
电路
图1系统工作流程
3硬件电路设计
3.1硬件总电路图
硬件电路是以AT89S52为核心,加上晶振电路和复位电路组成的单片机的最小控制系统。
显示电路上,采用了LCD1602显示器,在1602的显示电路上采用了可控背光设计,可在今后根据需求来关闭背光。
风扇控制电路上采用了2个8050三级管并联的形式,主要是为了提高最大电流的限度,以便驱动更多的风扇。
单排插为今后需求所保留的扩展口。
硬件总电路如附录二。
3.2芯片介绍
3.2.1主控芯片
本设计中的微控制器选用单片机系列中的ATMAL公司生产的AT89S52,该芯片具有标准易用,货源充足,价格便宜等特点。
单片机由硬件系统与软件系统组成。
硬件系统是指构成微机系统的实体与装置,通常由运算器、控制器、存储器、输入接口电路和输入设备、输出接口电路和输出设备等组成。
其中运算器和控制器一般做在一个集成芯片上,统称中央处理单元(CentralProcessingUnit),简称CPU,是微机的核心部件。
CPU配上存放程序和数据的存储器、输入/输出(Input/Output,简称I/O)接口电路以及外部设备即构成单片机的硬件系统。
软件系统是微机系统所使用的各种程序的总称,人们通过它对微机进行控制并与微机系统进行信息交换,使微机按照人的意图完成预定的任务。
软件系统与硬件系统共同构成完整的单片微型计算机系统,两者相辅相成,缺一不可。
AT89S52单片机是ATMAL公司89系列单片机的一种具有8位Flash存储器的单片机,是众多由8051单片机加强改进演变而来的系列单片机中最具代表性的一款。
它最大特点是片内含有Flash存储器,用途十分广泛,特别是在生产便携式商品,手提式仪器等方面,有着十分广泛的应用。
其外部结构及引脚如图2所示。
图2AT89S52引脚图
AT89S52是一个低功耗,高性能CMOS8位单片机,片内含8kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。
AT89S52具有如下特点:
40个引脚,8kBytesFlash片内程序存储器,256bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,3个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。
此外,AT89S52设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。
空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。
同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。
图3AT89S52内部结构图
AT89S52单片机具有特殊功能寄存器,也称专用寄存器,是具有特殊功能的所有寄存器的集合,简称SFR(SpecialFunctionRegister)。
特殊功能寄存器共含有22个不同寄存器。
它们的地址分配在80H~FFH中,即在RAM地址中。
这些寄存器的名称和地址见表1。
表1AT89C51特殊功能寄存器列表
注:
带*号的特殊功能寄存器都是可以为寻址的寄存器。
符号
地址
注视
*ACC
0E0H
累加器
*B
0F0H
乘法寄存器
*PSW
0D0H
程序状态字
SP
81H
堆栈指针
DPL
82H
数据存储器指针低8位
DPH
83H
数据存储器指针高8位
*IE
0A8H
中断允许控制器
*IP
0D8H
中断优先控制器
*P0
80H
端口0
*P1
90H
端口1
*P2
0A0H
端口2
*P3
0B0H
端口3
PCON
87H
电源控制及波特率选择
*SCON
98H
串行口控制器
SBUF
99H
串行数据缓冲器
*TCON
88H
定时器控制
TMOD
89H
定时器方式选择
TL0
8AH
定时器0低8位
TL1
8BH
定时器0高8位
TH0
8CH
定时器1低8位
TH1
8DH
定时器1高8位
虽然特殊功能寄存器地址在80H~FFH之中,但在80H~FFH的地址单元中,不是所有的单元都被特殊功能寄存器占用,未被占用的单元,其内容是不确定的,如果对这些单元进行操作,得到的是一些随机数,而写入则无效。
所以,用户编程时不应该将数据写入这些未确定的地址单元,它们是公司留待将来开发新产品时使用的。
3.2.2MAX706“看门狗”芯片
MAX706是CMOS监控电路,能够监控电源电压,电池故障和微处理器(MPU或mp)或微控制器(MCU或mC)的工作状态。
引脚如图4所示。
图4MAX706引脚
引脚说明:
MR:
人工复位
PFI:
电源掉落电压监测输入
WDI:
看门狗输入
WDO:
看门狗输出
RESET:
复位信号输出
基本参数:
工作电压范围:
1.0~5.5V
电源电流:
150~350V
复位闵值:
4.25~4.5V
复位脉冲宽度:
140~280(mm)
输出电压:
0.4V
看门狗超时周期:
1.6s
上拉电流:
100.~600V
MR脉冲宽度:
150(mm)
MR输入闵值:
0.8~2.0V
PFO输出电压:
-1.5~0.4V
存储温度范围:
-65°C~160°C
工作温度范围:
-40°C~85°C
焊接温度范:
+300°C
3.3时钟频率电路设计
单片机必须在时钟的驱动下才能工作。
在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。
时钟电路原理图如图5所示。
图5晶振电路
一般选用石英晶体振荡器。
此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。
电路中两个电容C1,C2的作用有两个:
一是帮助振荡器起振;二是对振荡器的频率进行微调。
C1,C2的典型值为30PF。
单片机在工作时,由内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期,其大小是时钟信号频率fosc的倒数。
图中时钟频率为12MHz,即fosc=12MHz,则时钟周期为1/12μs。
3.4复位电路设计
计算机在启动运行时都需要复位,复位使中央处理器CPU和系统中的其他器件都处于一种初处理器CPU和系统中的其他器件都处于一种初始状态,并从这个初始状态开始工作。
对于MCS-51单片机,在RST复位引脚端接一个电容至+5V和一个电阻至地端,就能实现上电自动复位,如图6所示。
图6复位电路
单片机上电复位电路原理:
电容在上接高电平,电阻在下接地,中间为RET(单片机的复位引脚)。
这种复位电路为高电平复位。
其工作原理是:
通电时,电容两端相当于是短路,于是RET引脚上为高电平,然后电源通过电阻对电容充电,RET端电压慢慢下降,降到一定程度,即为低电平,单片机开始正常工作。
本系统复位电路上采用了按键复位和上电复位。
上电复位:
上电瞬间,电容充电电流最大,电容相当于短路,RET端为高电平,自动复位;电容两端的电压达到电源电压时,电容充电电流为零,电容相当于开路,RET端为低电平,程序正常运行。
手动复位:
首先经过上电复位,当按下按键时,RET直接与VCC相连,为高电平形成复位,同时电解电容被短路放电;按键松开时,VCC对电容充电,充电电流在电阻上,RET依然为高电平,仍然是复位,充电完成后,电容相当于开路,RET为低电平,正常工作。
表2MCS-51系列单片机复位后内部各单元的初始状态
寄存器
初始状态值
寄存器
初始状态值
PC
0000H
TMOD
00H
ACC
00H
TCON
00H
B
00H
TH0
00H
PSW
00H
TL0
00H
SP
07H
TH1
00H
DPTR
0000H
TL1
00H
P1、P2、P3、P4
0FFH
SCON
00H
IP
xxx00000B
PCON
0xxx0000B
IE
0xx00000B
SBUF
不定
3.51602显示电路设计
LCD1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。
每位之间有一个点距的间隔每行之间也有间隔起到了字符间距和行间距的作用,正因为如此所以他不能显示图形(用自定义CGRAM,显示效果也不好)。
1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。
目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。
外观图如图7所示。
图7LCD1602外观图
管脚功能:
1602采用标准的16脚接口,其中:
第1脚:
VSS为电源地
第2脚:
VDD接5V电源正极
第3脚:
V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。
第4脚:
RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。
第5脚:
RW为读写信号线,高电平
(1)时进行读操作,低电平(0)时进行写操作。
第6脚:
E(或EN)端为使能(enable)端。
第7~14脚:
D0~D7为8位双向数据端。
第15~16脚:
空脚或背灯电源。
15脚背光正极,16脚背光负极。
1602LCD特性:
+5V电压,对比度可调
内含复位电路
提供各种控制命令,如:
清屏、字符闪烁、光标闪烁、显示移位等多种功能。
根据1602引脚功能设计如下电路图。
单片机P0口做数据口,P2口高三位做控制口。
其中15脚连接单片机控制的三极管,可用来控制背光开与关。
如图8所示。
图8LCD1602电路
3.6PWM调速电路设计
脉冲宽度调制(PWM),是英文“PulseWidthModulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。
脉冲宽度调制是一种模拟控制方式,其根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。
PWM控制技术以其控制简单,灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式,也是人们研究的热点。
由于当今科学技术的发展已经没有了学科之间的界限,结合现代控制理论思想或实现无谐振软开关技术将会成为PWM控制技术发展的主要方向之一。
本课题利用单片机输出占空比的方波,控制三极管的导通与截至,通过不同的导通与截至的时间从而达到调风扇的目的。
根据需求采用了NPN8050三极管,考虑到集电极电流可能不够的问题采用了两只8050并联。
如图9所示。
关于PWM导致风扇测速上不准的问题。
由于本系统对测到风扇转速精度要求不高。
只要求转速反映风扇是加速了还是减速了。
所以并没有另外采用测速系统。
而是采用了3pin电脑风扇自带的测速线加上软件修正的方法来达到系统要求。
8050三极管参数:
类型:
开关型;
极性:
NPN;
材料:
硅;
最大集存器电流(A):
0.5A;
直流电增益:
10to60;
功耗:
625mW;
最大集存器发射电(VCEO):
25;
频率:
150MHz
图9PWM电路
本系统演示时所采用的风扇为的一个3pin风扇如图10所示,具体参数如下:
外观尺寸:
70mm×70mm×15mm
转速参考:
2800±10%RPM
轴承类型:
双滚珠轴承
使用寿命:
60000小时
噪音参考:
14DB±3DB
风量参考:
23.38CFM
额定电压:
12V
额定电压:
0.14A
接口类型:
主板3pin口
转速监测:
支持
包装类型:
原包装
适用范围:
CPU风扇替换,小机箱风扇
图10被控风扇
其3pin接口,红线为+12V输入,黑线为地,蓝线为转速信号输出。
关于转速的信号有人做过实验是每转一圈输出2个脉冲信号。
由于本系统PWM的原因,测速是在其基础上进行了修正而完成的。
3.7报警电路设计
为了报告系统故障及系统状态,本系统设计了报警电路。
如图11所示。
通过9012三极管导通与截止控制蜂鸣器的发声。
工作原理:
系统初始化时单片机将P20口置高电平,以避免不确定状态使蜂鸣器发声。
当单片机判断系统达到报警条件时,单片机P20口输出低电平使三极管导通,从而使蜂鸣器报警。
图11报警电路
3.8看门狗电路设计
在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗"(watchdog)
看门狗,又叫watchdogtimer,是一个定时器电路,一般有一个输入,叫喂狗(kickingthedogorservicethedog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给WDT清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT定时超过,就会给出一个复位信号到MCU,使MCU复位.防止MCU死机.看门狗的作用就是防止程序发生死循环,或者说程序跑飞。
本系统放弃了AT89S52软看门狗而是采用MAX706设计硬看门狗。
如图12所示。
主要是考虑到硬件看门狗的可靠性,以及对系统的资源依赖性小。
根据Max706引脚功能,如果6脚电平1.6秒没有变化,Max706将在7脚输出200ms低电平复位信号。
由于AT89S52是高电平复位,所以采用9012来转换电平。
实际操作时只要在1.6秒内改变6脚电平(喂狗)即可使Max706不产生复位信号。
图12看门狗电路
3.9测温电路设计
本系统温度传感器采用DS18B20。
DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。
因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。
引脚如图13所示。
DS18B20产品的特点:
a)只要求一个端口即可实现通信。
b)在DS18B20中的每个器件上都有独一无二的序列号。
c)实际应用中不需要外部任何元器件即可实现测温。
d)测量温度范围在-55。
C到+125。
C之间。
e)数字温度计的分辨率用户可以从9位到12位选择。
f)内部有温度上、下限告警设置。
在DS18B20的设计上,数据脚用电阻进行了上拉。
因为DS18B20是单总线温度传感器,数据线是漏极开路,如果DS18B20没接电源,则需要数据线强上拉,给DS18B20供电;如果DS18B20接有电源,则需要一个上拉即可稳定的工作。
这个电阻通常比较大,还有若温度传感器开路或没接时,能起到上拉作用,使之为高电平,使后续电路保护。
如图13所示。
图13DS18B20引脚和设计图
DS18B20有4个主要的数据部件:
1)光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。
64位光刻ROM的排列是:
开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。
光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。
2)DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:
用16位符号扩展
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 电脑 机箱 风扇 温控 系统