基于AT89C51的智能电风扇调速器的设计毕业设计.doc

上传人:土8路 文档编号:10155474 上传时间:2021-04-24 格式:DOC 页数:29 大小:434.50KB
返回 下载 相关 举报
基于AT89C51的智能电风扇调速器的设计毕业设计.doc_第1页
第1页 / 共29页
基于AT89C51的智能电风扇调速器的设计毕业设计.doc_第2页
第2页 / 共29页
基于AT89C51的智能电风扇调速器的设计毕业设计.doc_第3页
第3页 / 共29页
基于AT89C51的智能电风扇调速器的设计毕业设计.doc_第4页
第4页 / 共29页
基于AT89C51的智能电风扇调速器的设计毕业设计.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《基于AT89C51的智能电风扇调速器的设计毕业设计.doc》由会员分享,可在线阅读,更多相关《基于AT89C51的智能电风扇调速器的设计毕业设计.doc(29页珍藏版)》请在三一文库上搜索。

1、 2010届本科生毕业设计题目: 基于AT89C51电风扇智能调速器的设计 Su Zhou UniversityYear 2010 Bachelor Graduation Design Title:Intelligent fan speed control based on AT89C51 Design Author:Jian chenStudent ID:2006080168Department: Electronic and Electronic EngineeringMajor: Electronic Engineering and AutomationInstructor: Li gu

2、ang yuProfessional Title: LecturerJanuary 15th, 2010摘 要本文介绍了一种基于AT89C51单片机的电风扇智能调速器的设计,该设计以AT89C51控制器为核心,巧妙利用温度传感器电路,及时而准确的采集环境温度,利用双向晶闸管对电机进行无级调速,把智能控制技术用于家用电器的控制中,用人体周围的环境温度对风扇进行温控。关键词:单片机;红外遥控;温度传感器;智能控制。ABSTRACTThis paper presents an intelligent speed regulator based on AT89C51 single-chip micro

3、computer.It uses surrounding temperature to regulate the speed of an electric fan.A bi-directional thyristor is used for the stepless speed.Key words:Single-chip microcomputer;temperature sensor;infrared remote control;intelligent control.目 录绪论51 系统概述61.1 AT89C51单片机简介61.2 本设计任务和主要内容62 系统原理72.1 系统总体设

4、计72.2 控制装置原理73 系统主要硬件电路83.1 温度检测电路和显示电路83.1.1 DS18B20的温度处理方法83.1.2 温度传感器和显示电路组成93.2 控制装置原理103.2.1 电机调速原理103.2.2 电机控制模块设计113.3 遥控电路123.3.1 发射电路123.3.2 接收电路和控制电路133.4 控制键电路134 系统软件设计154.1 主程序154.2 数字温度传感器模块和显示子模块164.3 电机调速与控制子模块17结束语19参考文献20附录一21附录二25 绪 论近些年来,随着空调行业的迅速发展,空调价格的大幅度“跳水”,电风扇行业曾被普遍认为是“夕阳产业

5、”。其实并非如此,市场人士称,家用电风扇并没有随着空调的普及而淡出市场,近两年反而出现了市场销售复苏的态势。其主要原因:一是风扇和空调的降温效果不同;(空调有强大的制冷功能,可以快速有效地降低环境温度,但电风扇的风更温和,更加适合老人儿童和体质较弱的人使用。)二是电风扇有价格优势,价格便宜而且相对省电,安装和使用都非常简单。传统电风扇多采用机械方式进行控制,功能少,噪音大,各档的风速变化大。随着科技的发展和人们生活水平的提高,家用电器产品趋向于自动化、智能化、环保化和人性化,使得由微机控制的智能电风扇得以出现。1 系统概述1.1 AT89C51单片机简介AT89C51是美国ATMEL公司生产的

6、低电压、高性能CMOS8位单片机,片内4bytes的可反复擦写的只读程序存储器(PEROM)和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置用8位中央处理器(CPU)和Flash存储单元,功能强大。AT89C51单片机可灵活应用于各种控制领域。AT89C51单片机提供以下标准功能:4K字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时、计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51单片机可降至0Hz的静态逻辑操作,并支持两

7、种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时、计数器,串行通行口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。1. 2 本设计任务和主要内容本文以AT89C51单片机为核心,通过数字温度传感器对外界环境温度进行数据采集,从而建立一个控制系统,使电风扇随温度的变化而自动调节档位,实现“温度高、风力大、温度低、风力弱”的性能。另外,通过红外发射和接收装置及按键实现各种功能的启动与关闭,并且可对各种功能实现遥控,用户可以在一定范围内设置电风扇的最低工作温度,当温度低于所设置温度时,电风扇将自动关闭,当高于此温度时电

8、风扇又将重新启动。本设计主要内容如下:(1)风速设为从低到高共5个档位,可由用户通过键盘和遥控手动设定。(2)每当温度降低2,则电风扇风速自动下降一个档位。(3)每当温度升高2,则电风扇风速自动上升一个档位。(4)用户可以设定电风扇最低工作温度,当低于该温度时,电风扇自动停转。2 系统原理2.1 系统总体设计数字温度传感器键盘功能输入遥控功能输入AT89C51电机调速输出显示控制输出图1 系统总体结构框图2.2 控制装置原理传统电风扇供电采用的是220V交流电,电机转速分为几个档位,通过人工手动调整电机转速达到改变风速的目的,亦即,每改变一次风力,必然有人参与操作,这样就会带来诸多不便。本文介

9、绍了一种基于AT89C51单片机的智能电风扇调速器的设计,该设计巧妙利用红外线遥控技术、单片机控制技术、无级调速技术和温度传感技术,把智能控制技术应用于家用电器的控制中,将电风扇的电机转速作为被控制量,由单片机分析采集到的数字温度信号,再通过可控硅对风扇电机进行调速。从而达到无须人为控制便可自动调整风速的效果。3 系统主要硬件电路31 温度检测和显示电路可以选用LM324A运算放大器作为温度传感器,将其设计成比例控制调节器,输出电压与热敏电阻的阻值成正比,但这种方案需要多次检测后方可使采样精确,过于烦琐。所以我采用更为优秀的DS18B20数字温度传感器,它可以直接将模拟温度信号转化为数字信号,

10、降低了电路的复杂程度,提高了电路的运行质量。3.1.1 DS18B20的温度处理方法DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,它能够直接读出被测温度并且可根据实际要求通过简单的编程实现912位的数字值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源,因而使用DS18B20可使系统结构更趋简单可靠性更高。他在测温精度、转

11、换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。 DS18B20简介:(1)独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。(2)在使用中不需要任何外围元件。(3)可用数据线供电,电压范围:+3.0 +5.5 V。(4)测温范围:-55 +125 。固有测温分辨率为0.5 。(5)通过编程可实现912位的数字读数方式。(6)用户可自设定非易失性的报警上下限值。(7)支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。(8)负压特性,电源极性接反时,温度计不会

12、因发热而烧毁,但不能正常工作。单线(1wire)技术:该技术采用单根信号线,既可传输时钟,也能传输数据,而且是双向传输。适用于单主机系统,主机能够控制一个或多个从机设备,通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据时能释放该线,而让其他设备使用。单线通常要求外接一个5K的上拉电阻,这样当该线空闲时,其状态为高电平。主机和从机之间的通讯分成三个步骤:初始化单线器件、识别单线器件和单线数据传输。单线1wire协议由复位脉冲、应答脉冲、写0、写1、读0、读1,这几种信号类型实现,这些信号中除了应答脉冲其他都由主机发起,并且所有指令和数据字节都是低位在前。DS18B20直接将测量温度

13、值转化为数字量提交给单片机,工作时必须严格遵守单总线器件的工作时序。温度值/ 数字输出(二进制) 数字输出(十六进制) +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

14、FF5EH-25.625 1111 1111 0110 1111 FF6FH-55 1111 1100 1001 0000 FC90H表1 部分温度值与DS18B20输出的数字量对照表3.1.2 温度传感器和显示电路组成本模块用更为优秀的DS18B20作为温度传感器,AT89C51单片机作为处理器,配以温度显示作为温度控制输出单元。整个系统力求结构简单,功能完善。电路图如图2所示。系统工作原理如下:DS18B20数字温度传感器采集现场温度,将测量到的数据送入AT89C51单片机的P3.3口,经过单片机处理后显示当前温度值,并与设定温度值的上下限值作比较,若高于设定上限值或低于设定下限值则控制电

15、机转速进行自动调整。图2 DS18B20温度计原理图3.2 电机调速电路电机调速是整个控制装置中的一个相当重要的方面。通过控制改变双向可控硅的导通角,使输出端电压发生改变,从而使施加在电风扇的输入电压发生改变,以调节风扇的转速,实现各档位风速的无级调速。3.2.1 电机调速原理双向可控硅的导通条件如下:(1)阳-阴极间加正向电压;(2)控制极-阴极间加正向触发电压;(3)阳极电流IA 大于可控硅的最小维持电流IH。电风扇的风速从高到低设为5、4、3、2、1档,每档风速都有一个限定值。在额定电压、额定功率下,以最高转速运转时,要求风叶最大圆周上的线速度不大于2150m/min。且线速度可由下列公

16、式求得V=Dn103 (1)式(1)中,V为扇叶最大圆周上的线速度(m/min),D为扇中的最大顶端扫出圆的直径(mm),n为电风扇的最高转速(r/min)。代入数据求得n51555r/min,取n5=1250 r/min.又因为:取n1=875r/min。则可得出五个档位的转速值:n1=875r/min,n2=980r/min,n3=1063r/min,n4=1150 r/min,n5=1250r/min又由于负载上电压的有效值u0=u1 (2)式(2)中,u1为输入交流电压的有效值,为控制角。解得:(1) 当5=0时,t=0ms;(2) 当4=23.5时,t=1.70ms;(3) 当3=4

17、6.5时,t=2.58ms;(4) 当2=61.5时,t=3.43ms;(5) 当1=76.5时,t=4.30ms。上述计算出的是控制角和触发时间,当检测到过零点时,按照所求得的触发时间延时发脉冲,便可实现预期转速。3.2.2 电机控制模块设计本模块电路中采用了过零双向可控硅型光耦MOC3041M ,集光电隔离、过零检测、过零触发等功能于一身,避免了输入输出通道同时控制双向可控硅触发的缺陷, 简化了输出通道隔离2驱动电路的结构。所设计的可控硅触发电路原理图见图3。其中RL即为电机负载,其工作原理是:单片机响应用户的参数设置, 在I/ O 口输出一个高电平, 经反向器反向后, 送出一个低电平,使

18、光电耦合器导通, 同时触发双向可控硅, 使工作电路导通工作。给定时间内,负载得到的功率为: (3)式中: P 为负载得到的功率( kW); n 为给定时间内可控硅导通的正弦波个数; N 为给定时间内交流正弦波的总个数; U为可控硅在一个电源周期全导通时所对应的电压有效值(V); I 为可控硅在一个电源周期全导通时所对应的电流有效值(A)。由式(3) 可知,当U , I , N 为定值时, 只要改变n 值的大小即可控制功率的输出,从而达到调节电机转速的目的。图3 电机控制原理图3.3 遥控电路3.3.1 发射电路红外发射电路原理图见图4, K1K8是遥控键输入键,它是一个由编码器(BA5104)

19、和红外发射电路组成的。AlA6键分别为“定时”、“风速”、“风类”、“ 摇头”、“ 照明”、“开/ 关”控制按钮。经对应开关发出的遥控指令,由脚D0输出经Q1和Q2放大后驱动D1发出经编码后的红外遥控信号。图4 遥控发射电路3.3.2 接收电路和控制电路红外遥控接收电路如图5所示。红外信号由通用红外接收器BA5302完成前置放大、载波选频、脉冲解调。当有红外脉冲信号到来时,BA5302输出低电平,经Q1反相后,作用于解码电路SM5302C的DI端(HP/CP端)输出相应的控制信号。SM5032C的HP1HP6端输出持续电平信号。当按下发射器K1K5任一键时,SM5032C相应HP端输出持续高电

20、平。松开发射键,则输出低电平。CP1、CP2端为反相电平输出端(自锁)。当松下发射器K7键时,SM5032C相应CP端输出电平翻转,即“1”变为“0”或“0”变为“1”。每按一次,输出电平即翻转一次。图5 接收及控制电路原理3.4 控制键电路键盘是人机交互的重要部件。本部件主要便于用户对电风扇进行操作,使用户只要进行一些简单的操作,就能实现所需的全部功能,键盘操作模块在电风扇底座部分有一个3 x 3小矩阵键盘,可以进行风的强度、类型、定时等系统设置,按键电路图如图6所示。图6 按键控制原理图4 控制器软件设计本系统的运行程序采用C语言编写,采用模块化设计,整体程序由主程序和显示、键盘扫描、红外

21、线接收以及电机控制等子程序模块组成。4.1 主程序在主程序进行初始化后,开始反复检测各模块相关部分的缓冲区的标志,如果缓冲区置位,说明相应的数据需要处理,然后主程序调用相应的处理子模块。如图7所示。系统初始化温度变化?温度控制子模块键盘输入?键盘处理子模块开始红外信号?红外接收处理模块YNYNYN显示子模块图7 主程序模块流程图4.2 数字温度传感器模块和显示子模块开始DS18B20初始化启动DS18B20测温内部判断调用读子程序显示子程序结束调用相应的控制程序调用相应的键值处理程序调用写子程序异常正常如图8所示,主机控制DS18B20数字温度传感器完成温度转换工作必须经过三个步骤:初始化、R

22、OM操作指令、存储器操作指令。单片机所用的系统频率为12MHz。根据DS18B20数字温度传感器进行初始化时序、读时序和写时序分别可编写3个子程序:初始化子程序、写子程序、读子程序。图8 数字温度传感器模块程序流程图DS18B20芯片功能命令表如下:命令 说明 协议READ ROM 读取激光ROM64位 33HMATCH ROM 匹配ROM 55H SKIP ROM 跳过ROM CCHSEARCH ROM 搜索ROM F0HALARM SEARCH 告警搜索 ECHWRITE SCRATCHPAD 把字节写入暂存器的地址2和3 4EHREAD SCRATCHPAD 读取暂存器和CRC字节 BE

23、HCOPY SCRATCHPAD 把暂存器内容拷贝到非易失性存储器中 48HCONVERT T 开始温度转换 44HRECALL E2 把非易失性存储器中的值召回暂存器 B8HREAD POWER SUPPLY 读电源供电方式:0为寄生电源,1为外电源 B4H表2 DS18B20功能命令表4.3 电机调速与控制子模块本模块采用双向可控硅过零触发方式,由单片机控制双向可控硅的通断,通过改变每个控制周期内可控硅导通和关断交流完整全波信号的个数来调节负载功率,进而达到调速的目的。因为INT0信号反映工频电压过零时刻,所以只要在外中断0的中断服务程序中完成控制门的开启与关闭,并利用中断服务次数对控制量

24、n进行计数和判断,即每中断一次,对n进行减1计数,如果n不等于0,保持控制电平为“1”,继续打开控制门;如n=0,则使控制电平复位为“0”,关闭控制门,使可控硅过零触发脉冲不再通过。这样就可以按照控制处理得到的控制量的要求,实现可控硅的过零控制,从而达到按控制量控制的效果,实现速度可调。(1)中断服务程序:执行中断服务程序时,首先保护现场,INT0中断标志置位,禁止主程序修改工作参数,然后开始减1计数,判断是否关断可控硅,最后INT0中断标志位清零,还原初始化数据,恢复现场,中断返回。(设1秒钟通过波形数N=100)EX0中断温度大于等于下限值并且小于上限值控制可控硅截止中断返回设置T0参数启

25、动定时T0中断控制可控硅导通停止T0定时中断返回b(2)回路控制执行程序:主回路控制执行程序的任务是初始化数据存储单元,确定电机工作参数nmin/nmax,并将其换算成“有效过零脉冲”的个数;确定中断优先级、开中断,为了保证正弦波的完整,工频过零同步中断INT0确定为高一级的中断源。a图9 电机控制模块中断响应流程图结 束 语本系统以AT89C51单片机为核心,单片机主要完成对外界环境温度信号的采集、处理、显示等功能;用Altium Designer 6软件绘制电路原理图和PCB电路印刷板图,由Protues软件进行访真测试,利用MCS-51 C语言编制。运行程序该系统的主要特点是:(1)适用

26、性强,用户只需对界面参数进行设置并启动系统正常运行便可满足不同用户对最适合温度的要求,实现对最适温度的实时监控。(2)随时可以根据软件编写新的功能加入产品。操作界面可扩展性强,只要稍加改变,即可增加其他按键的使用功能。本系统温度控制采用DS18B20数字温度传感器作为感温元件。可控硅串接在电源与负载电风扇,借改变定周期内可控硅的导通与截止时间之比来实现调速功能,其设计完使用方便就,适应人们睡办公等不同场合的使用。基于AT89C51单片机所设计与研制的电风扇智能调速系统,造价低且具有稳定性高、性能优越、节约电能等优点,在夜间无需定时,同样能给人们带来更多的方便。本设计在模拟检测中运行较好,但采样

27、据不太稳定。功能上的缺憾是对于两个档之间的临界温度处理不好,并且档位太少,还有待改进。参考文献1 曹巧媛.单片机原理及应用.北京:电子工业出版社,2002.22 王伦.电风扇原理与维修技术M.北京:新时代出版社,19993 张毅刚.新编MCS-51单片机应用设计.哈尔滨工业大学出版社,2006,104 梁廷贵、王裕琛.可控硅触发电路语音电路分册M.北京:科学技术文献出版社,2003附录一数字温度传感器模块和显示子模块程序:#include#defineuchar unsigned char#define uint unsigned intsfr Dat_Port=0x80;sbit ge=P2

28、6;sbit shi=P27;sbit TMDAT= P37;uchar code table=0x3F,0x06,0x5B,0x4F, 0x66,0x6D,0x7D,0x07, 0x7F,0x6F;uchar tmpbuf2;void Delay(int useconds)int s;for (s=0; suseconds;s+);uchar Reset_Bus(void)uchar presence;TMDAT=0;Delay(29);TMDAT=1;Delay(3);presence=TMDAT;Delay(25);return(presence);void Write_Bit(char

29、 bitval)TMDAT=0;if(bitval=1) TMDAT=1;Delay(5);TMDAT=1;void Write_Byte(char val)uchar I;uchar temp;for (i=0;ii;temp&=0x01;Write_Bit(temp);Delay(5);uchar Read_Bit(void) uchar i;TMDAT=0;TMDAT=1;for(i=0;i3;i+);return(TMDAT);uchar Read_Byte(void)uchar i;uchar value=0;for (i=0;i8;i+)if(Read_Bit() value|=0

30、x01i;Delay(6);return(value);uint DS18B20_Tmp_Read(void)uint TEMP;uchar TEMP_LSB,TEMP_MSB;Reset_Bus();Write_Byte(0xCC);Write_Byte(0x44);Delay(5);Reset_Bus();Write_Byte(0xCC);Write_Byte(0xBE);TEMP_LSB=Read_Byte();TEMP_MSB=Read_Byte();TEMP=TEMP_MSB;TEMP=TEMP4)&0xff);tmpbuf1=tmph%10;tmpbuf0=(tmph%100)/1

31、0;for(i=0;i20;i+)Display();附录二电机调速与控制子模块主程序:#include#define uchar unsigned char#define uint unsigned intsbit Fan=P32;uchar t1;void init()uint tmp;tmp=DS18B20_Tmp_Read();Fan=1; /*导通*/TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;EX0=1;IT0=1;ET0=1;TR0=1;void exter() interrupt 0uint n0,n1,n2,n3,n4,n5;uchar tmp;if(tmp0x0180)&(tmp=0x01A0)&(tmp=0x01C0)&(tmp=0x01E0)&(tmp=0x200)n5-;if(n5=0)Fan=0;if(t1=20)t1=0;Fan=1;else n0-;if(n0=0)Fan=0;if(t1=20)t1=0;Fan=1;void timer0() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;t1+;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1