1、温控电脑机箱风扇1 绪论随着电子技术的迅速发展,PC已经融入了我们的日常生活,成为我们生活的一部分。早期的PC由于处理器频率低,发热量较小,大多不采取散热措施或只采用散热片的被动散热方式。随着市场的需要,处理器频率越来越高,PC性能是得到了提升,但随之而来的便是芯片的散热问题。为了散热,发烧友会采用液冷方式散热,追求极限的人甚至采用了液氮散热,当然大多数人都采用散热片加散热风扇的形式。我们知道电脑主机由机箱大致封闭着,想要更好的散热,就要将机箱中的热尽量快的排出去,这时便可以加装电脑机箱风扇。风扇是多了,散热也好了,但又带来了一些问题。第一风扇多了比较吵,第二费电。噪声不仅影响自己心情也打搅了
2、他人。浪费电与现代绿色低碳环保相悖。为了在一定程度上解决这些问题,便做了今天这个课题。1.1设计目的能够根据电脑机箱内部温度自动调节机箱风扇的速度。同时附带有显示机箱温度,风扇转速显示。相关功能。以已到达更好散热的同时减小噪声污染的目的。1.2 设计要求1) 根据温度控制散热风扇的转速,如果温度小于25度风扇不转,高于50度时风扇全速运转。2) 显示测到的温度。3) 显示测试到风扇转速。4) 报警功能,未检测到温度时,警报故障;温度高于50度时报警。5) 显示系统运行时间。6) 硬件“看门狗”系统运行中出问题自动重置系统。2温控电脑机箱风扇的系统2.1系统实现的功能本系统是借用单片机采用模块化
3、设计的电脑机箱风扇控制系统,包括LCD显示、测温显示、计时显示、报警功能、侧转速功能、自动调节转速等功能。与此同时本系统保留了相当多的可扩展口,可根据需要另设或多设相关功能。 LCD显示功能,是系统的显示输出设备,主要用来显示系统测试的温度、转速、时间数据。 2.2 温控风扇的工作框图 本系统工作流程:由单片机做主控芯片。控制各部件协同工作。首先温度传感器测试温度,并处理。根据温度的变换主控输出不同的风扇控制信号。以达到温控风扇的基本功能。工作框图如图1所示。 时钟晶振 复位电路 测温电路 看门狗电路 电路 AT89S52单片机 LCD1602显示 PWM风扇控制电路 报警电路电路 图1 系统
4、工作流程3硬件电路设计3.1 硬件总电路图硬件电路是以AT89S52 为核心,加上晶振电路和复位电路组成的单片机的最小控制系统。显示电路上,采用了LCD1602显示器,并且为以后需求1602的显示电路上采用了可控背光设计。风扇控制电路上采用了2个8050三级管并联的形式。主要是为了提高最大电流的限度,以便驱动更多的风扇。单排插为今后需求所保留的扩展口。硬件总电路如图2:图2 总电路图3.2 芯片介绍 3.2.1 主控芯片 本设计中的微控制器选用单片机系列中的ATMAL公司生产的AT89S5251,该芯片具有标准易用,货源充足,价格便宜等特点。单片机由硬件系统与软件系统组成。硬件系统是指构成微机
5、系统的实体与装置,通常由运算器、控制器、存储器、输入接口电路和输入设备、输出接口电路和输出设备等组成。其中运算器和控制器一般做在一个集成芯片上,统称中央处理单元(Central Processing Unit),简称CPU,是微机的核心部件。CPU配上存放程序和数据的存储器、输入/输出(Input/Output,简称I/O)接口电路以及外部设备即构成单片机的硬件系统。软件系统是微机系统所使用的各种程序的总称,人们通过它对微机进行控制并与微机系统进行信息交换,使微机按照人的意图完成预定的任务。软件系统与硬件系统共同构成完整的单片微型计算机系统,两者相辅相成,缺一不可。AT89S52单片机是ATM
6、AL公司89系列单片机的一种具有8位Flash存储器的单片机,是众多由8051单片机加强改进演变而来的系列单片机中最具代表性的一款。它最大特点是片内含有Flash存储器,用途十分广泛,特别是在生产便携式商品,手提式仪器等方面,有着十分广泛的应用。其外部结构及引脚如图3所示。图3 AT89S52引脚图AT89S52是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了
7、通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S52具有如下特点:40个引脚,8k Bytes Flash片内程序存储器,256 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,3个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。此外,AT89S52设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而
8、保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。 图4 AT89S52内部结构图AT89S52单片机具有特殊功能寄存器,也称专用寄存器,是具有特殊功能的所有寄存器的集合,简称SFR(Special Function Register)。特殊功能寄存器共含有22个不同寄存器。它们的地址分配在80HFFH中,即在RAM地址中。这些寄存器的名称和地址见表1。 表1 AT89C51特殊功能寄存器列表注:带*号的特殊功能寄存器都是可以为寻址的寄存器。符号地址注视*ACC0E0H累加器*B0F0H乘法寄存器*PS
9、W0D0H程序状态字SP81H堆栈指针DPL82H数据存储器指针低8位DPH83H数据存储器指针高8位*IE0A8H中断允许控制器*IP0D8H中断优先控制器*P080H端口0*P190H端口1*P20A0H端口2*P30B0H端口3PCON87H电源控制及波特率选择*SCON98H串行口控制器SBUF99H串行数据缓冲器*TCON88H定时器控制TMOD89H定时器方式选择TL08AH定时器0低8位TL18BH定时器0高8位TH08CH定时器1低8位TH18DH定时器1高8位虽然特殊功能寄存器地址在80HFFH之中,但在80HFFH的地址单元中,不是所有的单元都被特殊功能寄存器占用,未被占用
10、的单元,其内容是不确定的,如果对这些单元进行操作,得到的是一些随机数,而写入则无效。所以,用户编程时不应该将数据写入这些未确定的地址单元,它们是公司留待将来开发新产品时使用的。3.2.2 MAX706“看门狗”芯片MAX706是CMOS监控电路,能够监控电源电压,电池故障和微处理器(MPU或mp)或微控制器(MCU或mC)的工作状态。引脚如图5所示。图5 MAX706引脚引脚说明:MR:人工复位 PFI:电源掉落电压监测输入 WDI:看门狗输入 WDO:看门狗输出 RESET:复位信号输出基本参数: 工作电压范围:1.05.5V 电源电流:150350V 复位闵值:4.254.5V 复位脉冲宽
11、度:140280(mm) 输出电压:0.4V 看门狗超时周期:1.6min上拉电流:100.600V MR脉冲宽度:150(mm) MR输入闵值:0.82.0V PFO输出电压:-1.50.4V 存储温度范围:-65C 160C 工作温度范围:-40C 85C 焊接温度范:+300C3.3 时钟频率电路设计 单片机必须在时钟的驱动下才能工作。在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。时钟电路原理图如图6所示。 图6 晶振电路 一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度
12、为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容 C1,C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。C1,C2的典型值为30PF。 单片机在工作时,由内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期,其大小是时钟信号频率fosc的倒数。图中时钟频率为12MHz,即fosc=12MHz,则时钟周期为1/12s。3.4 复位电路设计计算机在启动运行时都需要复位,复位使中央处理器CPU和系统中的其他器件都处于一种初处理器CPU和系统中的其他器件都处于一种初始状态,并从这个初始状态开始工作。对于MCS-51单片机,在RS
13、T复位引脚端接一个电容至+5V和一个电阻至地端,就能实现上电自动复位,如图7所示。图7 复位电路单片机上电复位电路原理:电容在上接高电平,电阻在下接地,中间为RET(单片机的复位引脚)。这种复位电路为高电平复位。其工作原理是:通电时,电容两端相当于是短路,于是RET引脚上为高电平,然后电源通过电阻对电容充电,RET端电压慢慢下降,降到一定程度,即为低电平,单片机开始正常工作。 本系统复位电路上采用了按键复位和上电复位。上电复位:上电瞬间,电容充电电流最大,电容相当于短路,RET端为高电平,自动复位;电容两端的电压达到电源电压时,电容充电电流为零,电容相当于开路,RET端为低电平,程序正常运行。
14、手动复位:首先经过上电复位,当按下按键时,RET直接与VCC相连,为高电平形成复位,同时电解电容被短路放电;按键松开时,VCC对电容充电,充电电流在电阻上,RET依然为高电平,仍然是复位,充电完成后,电容相当于开路,RET为低电平,正常工作。表2 MCS-51系列单片机复位后内部各单元的初始状态寄存器初始状态值寄存器初始状态值PC0000HTMOD00HACC00HTCON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP1、P2、P3、P40FFHSCON00HIPxxx00000BPCON0xxx0000BIE0xx00000BSBUF
15、不定3.5 1602显示电路设计 LCD1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔每行之间也有间隔起到了字符间距和行间距的作用,正因为如此所以他不能显示图形 (用自定义CGRAM,显示效果也不好)。 1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。 目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符
16、型液晶。外观图如图8所示。 图8 LCD1602外观图管脚功能: 1602采用标准的16脚接口,其中: 第1脚:VSS为电源地 第2脚:VDD接5V电源正极 第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会 产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。 第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。 第5脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。 第6脚:E(或EN)端为使能(enable)端。 第714脚:D0D7为8位双向数据端。 第1516脚:空脚或背灯电源。1
17、5脚背光正极,16脚背光负极。 1602LCD特性: +5V电压,对比度可调 内含复位电路 提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能。 根据1602引脚功能设计如下电路图。单片机P0口做数据口,P2口高三位做控制口。其中15脚连接单片机控制的三极管,可用来控制背光开与关。如图9所示。图9 LCD1602电路3.6 PWM调速电路设计 脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。 脉冲宽度调制是一种
18、模拟控制方式,其根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。 PWM控制技术以其控制简单,灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式,也是人们研究的热点。由于当今科学技术的发展已经没有了学科之间的界限,结合现代控制理论思想或实现无谐振软开关技术将会成为PWM控制技术发展的主要方向之一。 本课题利用单片机输出占空比的方波,控制三极管的导通与截至,通过不同的导通与截至的时间从而达到调风扇的目的。根据需求采用了
19、NPN8050三极管,考虑到集电极电流可能不够的问题采用了两只8050并联。如图10所示。 关于PWM导致风扇测速上不准的问题。由于本系统对测到风扇转速精度要求不高。只要求转速反映风扇是加速了还是减速了。所以并没有另外采用测速系统。而是采用了3pin电脑风扇自带的测速线加上软件修正的方法来达到系统要求。8050三极管参数:类型:开关型; 极性:NPN; 材料:硅; 最大集存器电流(A):0.5 A; 直流电增益:10 to 60; 功耗:625 mW; 最大集存器发射电(VCEO):25; 频率:150 MHz 图10 PWM电路本系统演示时所采用的风扇为的一个3pin风扇如图11所示,具体参
20、数如下:外观尺寸:70mm70mm15mm 转速参考:280010%RPM 轴承类型:双滚珠轴承 使用寿命:60000小时噪音参考:14DB3DB风量参考:23.38CFM 额定电压:12V额定电压:0.14A接口类型:主板3pin口转速监测:支持 包装类型:原包装适用范围:CPU风扇替换,小机箱风扇 图11 被控风扇其3pin接口,红线为+12V输入,黑线为地,蓝线为转速信号输出。关于转速的信号有人做过实验是每转一圈输出2个脉冲信号。由于本系统PWM的原因,测速是在其基础上进行了修正而完成的。3.7 报警电路设计 为了报告系统故障及系统状态,本系统设计了报警电路。如图12所示。通过9012三
21、极管导通与截止控制蜂鸣器的发声。工作原理:系统初始化时单片机将P20口置高电平,以避免不确定状态使蜂鸣器发声。当单片机判断系统达到报警条件时,单片机P20口输出低电平使三极管导通,从而使蜂鸣器报警。 图12 报警电路3.8 看门狗电路设计 在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称看门狗(watchdog) 看门狗,又叫 wa
22、tchdog timer,是一个定时器电路,一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就会给出一个复位信号到MCU,使MCU复位. 防止MCU死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。 本系统放弃了AT89S52软看门狗而是采用MAX706设计硬看门狗。如图13所示。主要是考虑到硬件看门狗的可靠性,以及对系统的资源依赖性小。 根据Max706引脚功能,如果6
23、脚电平1.6秒没有变化,Max706将在7脚输出200ms低电平复位信号。由于AT89S52是高电平复位,所以采用9012来转换电平。实际操作时只要在1.6秒内改变6脚电平(喂狗)即可使Max706不产生复位信号。 图13 看门狗电路3.9 测温电路设计本系统温度传感器采用DS18B20。DS18B20数字温度计是DALLAS公司生产的1Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。引脚如图13所示。DS18B20产品的特点 :a) 只要求一个端口即可实现通信。b) 在DS18B20中的每个器件
24、上都有独一无二的序列号。c) 实际应用中不需要外部任何元器件即可实现测温。d) 测量温度范围在55。C到125。C之间。e) 数字温度计的分辨率用户可以从9位到12位选择。f) 内部有温度上、下限告警设置。在DS18B20的设计上,数据脚用电阻进行了上拉。因为DS18B20是单总线温度传感器,数据线是漏极开路,如果DS18B20没接电源,则需要数据线强上拉,给DS18B20供电;如果DS18B20接有电源,则需要一个上拉即可稳定的工作。这个电阻通常比较大,还有若温度传感器开路或没接时,能起到上拉作用,使之为高电平,使后续电路保护。如图14所示。 图14 DS18B20引脚和设计图 DS18B2
25、0有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位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达,其中S为符号位。如下图所示: 图16 温度值格式表 这
26、是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。 例如+125的数字输出为07D0H,+25.0625的数字输出为0191H,-25.0625的数字输出为FF6FH,-55的数字输出为FC90H。 3)DS18B20温度传感器的存储器。DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构
27、寄存器。 4)配置寄存器 该字节各位的意义如下: 表3 DS18B20配置寄存器 低五位一直都是1 ,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨率,如表5所示:(DS18B20出厂时被设置为12位)表4 分辨率设置表R1R0分辨率最大转换时间009位93.78ms0110位187.5ms1011位375ms1112位750ms 根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM
28、指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待1660微秒左右,后发出60240微秒的存在低脉冲,主CPU收到此信号表示复位成功。表5 ROM指令表指令约定代码功能读ROM33H读DS1820中的编码符合ROM65H发出命令后,接着发出64位ROM编码,访问单总线与该编码相对应的1820做出反应搜索ROM0F0H用于确定挂接在同一总线上的1820的个数和识别64位ROM地址。跳过ROM0ccH忽略64位ROM地址,向1820发转换温度命令。告警搜索命令0ECH执行后只有温度超过设定值上限或下限才做反应。表6 RAM指
29、令指令约定代码功能温度转换44H启动温度转换,时长500ms,存入内部RAM读暂存器0BH内部RAM中内容写暂存器4EH向内部RAM3、4字节写上下温度数据命令,接着传送2字节数据复制暂存器48H将RAM3、4字节内容复制到EEPROM中重调EEPROM0B8H将EEPROM中内容恢复到RAM中读供电方式0B4H读供电模式,寄生供电时发送“0”,外界电源供电发送“1” 3.10 系统电源 系统需求2路电源,1路12V供风扇,1路供单片机系统。由于本系统是装在机箱内部,所以供电直接取电脑电源。当然为了测试方便保留了4脚电源接口。 PC用电源是多路输出的AC-DC开关电源。而各组输出按标准要求分别采用了不同颜色的导线。例如5V输出用的是红线,3.3V桔黄色,黑线是地线,各路12V稍有区别,但都是黄色或者黄色和其他颜色的搭配。如表7给出了电源接口各色线定义。其他的电源接口,4pin(2*2)、6pin和8pin是一侧地线一侧12V;4pin的D口和软驱供电都是一根12V一根5V两根地线;而SATA供电接口则是12V/5V/3.3V各一根外加两根地线。根据电压需求本系统采用了D型接口。 表7 PC电源不同颜色线定义编号颜色定义1橘黄色+3.3V2黑色GND3红色+5V4灰色PWR OK5紫色5VBS6黄色+12V7蓝色12V8绿色
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1