09325117电风扇遥控电路设计.docx
《09325117电风扇遥控电路设计.docx》由会员分享,可在线阅读,更多相关《09325117电风扇遥控电路设计.docx(14页珍藏版)》请在冰豆网上搜索。
09325117电风扇遥控电路设计
《家电原理与检测》
课程设计报告
电风扇遥控电路设计
姓名:
苏陈奇
专业:
电子信息工程
班级:
093251
学号:
17
指导老师:
徐坚
系统总体设计
图1系统总体结构框图
控制装置原理
传统电风扇供电采用的是220V交流电,电机转速分为几个档位,通过人工手动调整电机转速达到改变风速的目的,亦即,每改变一次风力,必然有人参与操作,这样就会带来诸多不便。
本文介绍了一种基于AT89C51单片机的智能电风扇调速器的设计,该设计巧妙利用红外线遥控技术、单片机控制技术、无级调速技术和温度传感技术,把智能控制技术应用于家用电器的控制中,将电风扇的电机转速作为被控制量,由单片机分析采集到的数字温度信号,再通过可控硅对风扇电机进行调速。
从而达到无须人为控制便可自动调整风速的效果。
系统主要硬件电路
温度检测和显示电路
可以选用LM324A运算放大器作为温度传感器,将其设计成比例控制调节器,输出电压与热敏电阻的阻值成正比,但这种方案需要多次检测后方可使采样精确,过于烦琐。
所以我采用更为优秀的DS18B20数字温度传感器,它可以直接将模拟温度信号转化为数字信号,降低了电路的复杂程度,提高了电路的运行质量。
DS18B20的温度处理方法
DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。
与传统的热敏电阻相比,它能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。
可以分别在93.75ms和750ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源,因而使用DS18B20可使系统结构更趋简单可靠性更高。
他在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。
DS18B20简介:
(1)独特的单线接口方式:
DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。
(2)在使用中不需要任何外围元件。
(3)可用数据线供电,电压范围:
+3.0~+5.5V。
(4)测温范围:
-55~+125℃。
固有测温分辨率为0.5℃。
(5)通过编程可实现9~12位的数字读数方式。
(6)用户可自设定非易失性的报警上下限值。
(7)支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。
(8)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。
单线(1—wire)技术:
该技术采用单根信号线,既可传输时钟,也能传输数据,而且是双向传输。
适用于单主机系统,主机能够控制一个或多个从机设备,通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据时能释放该线,而让其他设备使用。
单线通常要求外接一个5K的上拉电阻,这样当该线空闲时,其状态为高电平。
主机和从机之间的通讯分成三个步骤:
初始化单线器件、识别单线器件和单线数据传输。
单线1—wire协议由复位脉冲、应答脉冲、写0、写1、读0、读1,这几种信号类型实现,这些信号中除了应答脉冲其他都由主机发起,并且所有指令和数据字节都是低位在前。
DS18B20直接将测量温度值转化为数字量提交给单片机,工作时必须严格遵守单总线器件的工作时序。
温度值/℃数字输出(二进制)数字输出(十六进制)
+125000001111101000007D0H
+8500000101010100000550H
+25.62500000001100100010191H
+10.125000000001010001000A2H
+0.500000000000010000008H
000000000000000000000H
-0.51111111111111000FFF8H
-10.1251111111101101110FF5EH
-25.6251111111101101111FF6FH
-551111110010010000FC90H
表1部分温度值与DS18B20输出的数字量对照表
温度传感器和显示电路组成
本模块用更为优秀的DS18B20作为温度传感器,AT89C51单片机作为处理器,配以温度显示作为温度控制输出单元。
整个系统力求结构简单,功能完善。
电路图如图2所示。
系统工作原理如下:
DS18B20数字温度传感器采集现场温度,将测量到的数据送入AT89C51单片机的P3.3口,经过单片机处理后显示当前温度值,并与设定温度值的上下限值作比较,若高于设定上限值或低于设定下限值则控制电机转速进行自动调整。
图2DS18B20温度计原理图
电机调速电路
电机调速是整个控制装置中的一个相当重要的方面。
通过控制改变双向可控硅的导通角,使输出端电压发生改变,从而使施加在电风扇的输入电压发生改变,以调节风扇的转速,实现各档位风速的无级调速。
电机调速原理
双向可控硅的导通条件如下:
(1)阳-阴极间加正向电压;
(2)控制极-阴极间加正向触发电压;
(3)阳极电流IA大于可控硅的最小维持电流IH。
电风扇的风速从高到低设为5、4、3、2、1档,每档风速都有一个限定值。
在额定电压、额定功率下,以最高转速运转时,要求风叶最大圆周上的线速度不大于2150m/min。
且线速度可由下列公式求得
V=πDn×103
(1)
式
(1)中,V为扇叶最大圆周上的线速度(m/min),D为扇中的最大顶端扫出圆的直径(mm),n为电风扇的最高转速(r/min)。
代入数据求得n5≤1555r/min,取n5=1250r/min.又因为:
取n1=875r/min。
则可得出五个档位的转速值:
n1=875r/min,n2=980r/min,n3=1063r/min,n4=1150r/min,n5=1250r/min
又由于负载上电压的有效值
u0=u1
(2)
式
(2)中,u1为输入交流电压的有效值,α为控制角。
解得:
(1)当α5=0°时,t=0ms;
(2)当α4=23.5°时,t=1.70ms;
(3)当α3=46.5°时,t=2.58ms;
(4)当α2=61.5°时,t=3.43ms;
(5)当α1=76.5°时,t=4.30ms。
上述计算出的是控制角和触发时间,当检测到过零点时,按照所求得的触发时间延时发脉冲,便可实现预期转速。
电机控制模块设计
本模块电路中采用了过零双向可控硅型光耦MOC3041M,集光电隔离、过零检测、过零触发等功能于一身,避免了输入输出通道同时控制双向可控硅触发的缺陷,简化了输出通道隔离2驱动电路的结构。
所设计的可控硅触发电路原理图见图3。
其中RL即为电机负载,其工作原理是:
单片机响应用户的参数设置,在I/O口输出一个高电平,经反向器反向后,送出一个低电平,使光电耦合器导通,同时触发双向可控硅,使工作电路导通工作。
给定时间内,负载得到的功率为:
(3)
式中:
P为负载得到的功率(kW);n为给定时间内可控硅导通的正弦波个数;N为给定时间内交流正弦波的总个数;U为可控硅在一个电源周期全导通时所对应的电压有效值(V);I为可控硅在一个电源周期全导通时所对应的电流有效值(A)。
由式(3)可知,当U,I,N为定值时,只要改变n值的大小即可控制功率的输出,从而达到调
节电机转速的目的。
图3电机控制原理图
遥控电路
发射电路
红外发射电路原理图见图4,K1~K8是遥控键输入键,它是一个由编码器(BA5104)和红外发射电路组成的。
Al~A6键分别为“定时”、“风速”、“风类”、“摇头”、“照明”、“开/关”控制按钮。
经对应开关发出的遥控指令,由脚D0输出经Q1和Q2放大后驱动D1发出经编码后的红外遥控信号。
图4遥控发射电路
接收电路和控制电路
红外遥控接收电路如图5所示。
红外信号由通用红外接收器BA5302完成前置放大、载波选频、脉冲解调。
当有红外脉冲信号到来时,BA5302输出低电平,经Q1反相后,作用于解码电路SM5302C的DI端(HP/CP端)输出相应的控制信号。
SM5032C的HP1~HP6端输出持续电平信号。
当按下发射器K1~K5任一键时,SM5032C相应HP端输出持续高电平。
松开发射键,则输出低电平。
CP1、CP2端为反相电平输出端(自锁)。
当松下发射器K7键时,SM5032C相应CP端输出电平翻转,即“1”变为“0”或“0”变为“1”。
每按一次,输出电平即翻转一次。
图5接收及控制电路原理
控制键电路
键盘是人机交互的重要部件。
本部件主要便于用户对电风扇进行操作,使用户只要进行一些简单的操作,就能实现所需的全部功能,键盘操作模块在电风扇底座部分有一个3x3小矩阵键盘,可以进行风的强度、类型、定时等系统设置,按键电路图如图6所示。
图6按键控制原理图
控制器软件设计
本系统的运行程序采用C语言编写,采用模块化设计,整体程序由主程序和显示、键盘扫描、红外线接收以及电机控制等子程序模块组成。
主程序
在主程序进行初始化后,开始反复检测各模块相关部分的缓冲区的标志,如果缓冲区置位,说明相应的数据需要处理,然后主程序调用相应的处理子模块。
如图7所示。
图7主程序模块流程图
附录一数字温度传感器模块和显示子模块程序:
#include#defineucharunsignedchar#defineuintunsignedintsfrDat_Port=0x80;sbitge=P2^6;sbitshi=P2^7;sbitTMDAT=P3^7;ucharcodetable[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};uchartmpbuf[2];voidDelay(intuseconds){ints;for(s=0;s>i;temp&=0x01;Write_Bit(temp);}Delay(5);}ucharRead_Bit(void){uchari;TMDAT=0;TMDAT=1;for(i=0;i<3;i++);return(TMDAT);}ucharRead_Byte(void){uchari;ucharvalue=0;for(i=0;i<8;i++){if(Read_Bit())value|=0x01<(1){tmp=DS18B20_Tmp_Read();tmph=(uchar)((tmp>>4)&0xff);tmpbuf[1]=tmph%10;tmpbuf[0]=(tmph%100)/10;for(i=0;i<20;i++){Display();}}}
数字温度传感器模块和显示子模块
如图8所示,主机控制DS18B20数字温度传感器完成温度转换工作必须经过三个步骤:
初始化、ROM操作指令、存储器操作指令。
单片机所用的系统频率为12MHz。
根据DS18B20数字温度传感器进行初始化时序、读时序和写时序分别可编写3个子程序:
初始化子程序、写子程序、读子程序。
图8数字温度传感器模块程序流程图
DS18B20芯片功能命令表如下:
命令说明协议
READROM读取激光ROM64位33H
MATCHROM匹配ROM55H
SKIPROM跳过ROMCCH
SEARCHROM搜索ROMF0H
ALARMSEARCH告警搜索ECH
WRITESCRATCHPAD把字节写入暂存器的地址2和34EH
READSCRATCHPAD读取暂存器和CRC字节BEH
COPYSCRATCHPAD把暂存器内容拷贝到非易失性存储器中48H
CONVERTT开始温度转换44H
RECALLE2把非易失性存储器中的值召回暂存器B8H
READPOWERSUPPLY读电源供电方式:
0为寄生电源,1为外电源B4H
表2DS18B20功能命令表
电机调速与控制子模块
本模块采用双向可控硅过零触发方式,由单片机控制双向可控硅的通断,通过改变每个控制周期内可控硅导通和关断交流完整全波信号的个数来调节负载功率,进而达到调速的目的。
因为INT0信号反映工频电压过零时刻,所以只要在外中断0的中断服务程序中完成控制门的开启与关闭,并利用中断服务次数对控制量n进行计数和判断,即每中断一次,对n进行减1计数,如果n不等于0,保持控制电平为“1”,继续打开控制门;如n=0,则使控制电平复位为“0”,关闭控制门,使可控硅过零触发脉冲不再通过。
这样就可以按照控制处理得到的控制量的要求,实现可控硅的过零控制,从而达到按控制量控制的效果,实现速度可调。
(1)中断服务程序:
执行中断服务程序时,首先保护现场,INT0中断标志置位,禁止主程序修改工作参数,然后开始减1计数,判断是否关断可控硅,最后INT0中断标志位清零,还原初始化数据,恢复现场,中断返回。
(设1秒钟通过波形数N=100)
(2)回路控制执行程序:
主回路控制执行程序的任务是初始化数据存储单元,确定
电机工作参数nmin/nmax,并将其换算成“有效过零脉冲”的个数;确定中断优先级、开
中断,为了保证正弦波的完整,工频过零同步中断INT0确定为高一级的中断源。
a
图9电机控制模块中断响应流程图