




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 智能排气扇 摘要:随着科学技术的发展,各种传感器日新月异。而浴室用排气扇仍然是使用单一的开关以及恒定的速度运转,并不能根据实际的需要运行。如果排气扇能够根据热水开停自动打开排气扇,根据室内温度自动调节排气扇的转速,并且在热 水 器 不 正 常 运 行(例 如 不 完 全 燃烧产 生 大 量 的 一氧 化 碳 )能 够 发 出 报 警,并 及 时排出室内的一氧化碳,将会给我们的生活带来极大的方便。本智能排气扇以51单片机为控制单元,,采用DTH11湿度传感器来检测浴室室内的湿度,采用抗干扰能力强,精度高的数字温度传感器DS18B20感知室内温度,同时检测并控制热水的开闭。通过PWM波脉宽调节机
2、制实现电机对排气扇的调速。系统经1602液晶把温度、湿度、速度等实时信息反馈给使用者。使用者也可以通过按键实现排气扇开停的控制. 关键词:智能排气扇;电机驱动;水流检测;系统功能及参数 一 、 总体方案设计 本智能排气扇采用8位的51单片机为主控制器,通过温度、湿度传感器采集室内的温度、湿度等数据,并将显示在1602液晶显示器。由温度传感器来检测热水开停并指示,同时采用烟雾传感器检测室内是否出现有害气体,在出现有害气体时报警提示并强制排气。在紧急情况下可通过按键控制排气扇开停。系统框图如下: 图1 系统框图二 模块方案设计1、控制系统-单片机最小系统采用AT89C51单片机,片内含2k byt
3、es的可反复擦写的只读程序存储器(PEROM)和128bytes的随机数据存储器(RAM),传统的51单片机具有价格低廉,使用简单等特点。2、电源模块的选择鉴于自制电源经济实惠,且可以很好的锻炼动手能力,采用自制稳压电源模块,通过7.2V移动电源来制作5V电源。3、测温模块选择采用灵敏度较高的温度传感器DS18B20测量温度,DS18B20的DQ管脚与单片机IO口连接,将测到的温度转化为电压值送给单片机处理。4、湿度测量模块采用湿度传感器DHT11测量室内湿度,DHT11与单片机IO口连接,将测到的湿度值转化为电压值送给单片机处理。5、电机驱动模块采用直流电机,通过搭建简便的排气扇外围电路,来
4、和单片机相连,利用单片机输出PWM信号来控制风扇的转动。驱动电路芯片选择L9110。6、烟雾检测报警模块采用灵敏度较高的烟雾传感器MQ-2检测,将检测到的烟雾浓度转换为电压值,送给单片机处理同时启动报警系统。7、显示模块采用1602液晶显示,1602内部集成有显示芯片,可以识别英文字母、阿拉伯数字和日语,价格比较便宜,可以对温度、湿度等很好的进行显示,显示更加人性化。8、 水流检测模块考虑到实际浴室中有水流的时候热水器会点火加热,故采用检测是否有火源加热的方法来模拟检测是否有水流,若检测到火源,则说明有水流经过,并采取相应的操作。9、按键模块设计要求用红外模块进行控制,但考虑到经济成本,本系统
5、采用按键进行对特殊情况的控制。本设计所需按键控制较少,只需用两个按键控制排气扇的开闭。10、 排气扇的转速控制通过单片机输出占空比不同的PWM波来调节电机的转速进而控制风扇的转速,占空比越大,转速越高。11、 排气扇转速检测 使用霍尔传感器,在扇叶上粘上磁铁,每当扇叶上的磁铁扫过霍尔原件时霍尔模块输出端输出低电平,不扫过则输出高电平,通过单位时间内对输出低电平次数的计数来计算风扇的转速。三 系统各模块电路设计 1、控制器51单片机。 器件采用ATMEL公司的MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元。可以很好的控制温度、湿度的监测和控制显示和语音报警。同时达到控制排气扇
6、的开关的要求。其丰富的管脚足以满足本次智能排气扇的要求。51单片机最小系统原理图如下: 图2 51单片机最小系统图2、电源模块 本次设计中,各芯片和传感器的电源供电电压一般都为5V左右,考虑到比赛上交作品时要交成品,我们使用7.2V的移动电源作为电压输入,电路接470uf的电容进行滤波和能量存储,用三端稳压器7805进行稳压,稳定输出为5V,220uf的电容使输出更加稳定。市电制作的5V稳压电源原理图如下: 图3 5V稳压电源3、报警电路 采用蜂鸣器电路,提供报警声音。原理:由于蜂鸣器的工作电流一般比较大,以致于单片机的I/O 口是无法直接驱动的,所以要利用放大电路来驱动,一般使用三极管来放大
7、电流就可以了。该三极管我们可以选择S8550来满足要求。三极管的发射极接高电平,扬声器正极接三极管的集电极,负极与地相接,当单片机输出低电平时,三极管导通,扬声器发出生音,反之。单片机输出高电平,三极管不导通,扬声器不发声。电路图如下: 图4 蜂鸣器电路4、烟雾检测模块 根据实际需求,我们选择MQ-2烟雾传感器,直流电压5v电源供给传感器工作,加热丝给烟雾传感器加热一定时间后传感器才开始检测烟雾。当烟雾浓度升高时,传感器电导率下降,传感器两端电压升高,输出电压升高,与电压比较器LM393的3管脚电压进行比较,输出低电平,传输给单片机;反之,当烟雾浓度下降时,传感器两端电压降低,经比较器比较后输
8、出高电平,传输给单片机,单片机通过高低电平来控制报警电路和显示。电路图如下所示:图5 烟雾检测电路5、温度、湿度检测模块智能温湿度传感器使用DHT11,DHT11自动将内部的传感器电压信号转化为数字信号直接输出给单片机,但是,由于DHT11的温度测量只能精确到个位,而实际浴室的温度变化范围比较小,很难通过DHT11的变化控制PWM的占空比,故本设计只用DHT11来测量湿度,温度的测量采用温度传感器DS18B20,精度为0.5度,测量范围从-10度到85度,设置为最高精度时的转化速度为0.75s图6 湿度传感器电路原理:给DHT11提供5V电压,2脚为信号的输出端,接单片机,3脚空置,4脚接地。
9、当湿度升高时,输出高电平;反之,输出低电平。图7 温度传感器 电路原理:1脚接地,3脚接电源,2脚和电源之间接一个电阻4.7k,2脚为输出端,接单片机即可。6、 显示模块电路设计 显示我们采用1602液晶显示,其供电电压为4.5-5.0v可以很精确的用字体显示本系统要显示的温度、湿度、转速要求。其电路连接图如下:图8 1602液晶显示7、按键模块图9 按键8、 热水检测模块 采用火焰传感器检测是否有火源,原理图如下: 图10 火焰传感器电路根据实际需要,直流电压5V电源供电,当提供火源时,火焰传感器两端电压升高,输出的电压和电压比较器LM393的正管脚电压进行比较,当高于设定的阈值时,DQ输出
10、低电平,反之,当烟雾浓度降低时,未达到阈值时,DQ输出高电平。将输出的DQ的高低电平传输给单片机,单片机通过高低电平来控制相关电路的运行。9、 电机驱动模块 图11 电机驱动电路L9110是为控制和驱动电机设计的两通道推娩式功率放大专用集成电路器件,该芯片具有两个TTL/CMOS兼容电平输入,具有良好的抗干扰性,两个输出端能控制电机的正反转,具有较大的电流驱动能力。10、 排气扇的转速检测 图12 测速模块电路测速主要程序如下所示,通过定时器T1对一分钟内的低电平次数进行计数速度转换公式: v=(TH1*256+TL1)*60/3;TH1:定时器1高八位值; TL1:定时器1低八位值void
11、main(void) LcdInitiate(); /调用LCD初始化函数 TMOD=0x51; /定时器T1工作于计数模式1,定时器T0工作于计时模式1;TH0=(65536-46083)/256; /定时器T0的高8位设置初值,每50ms产生一次中断TL0=(65536-46083)%256; /定时器T0的低8位设置初值,每50ms产生一次中断EA=1; /开总中断ET0=1; /定时器T0中断允许TR0=1; /启动定时器T0count=0; /将T0中断次数初始化为0display_sym(); /显示速度提示符 display_val(0x00); /显示器工作正常标志 displ
12、ay_unit(); /显示速度单位 while(1) /无限循环 LED1=0; if(HY=0) LED1 = 1; TR1=1; /定时器T1启动 TH1=0; /定时器T1高8位赋初值0 TL1=0; /定时器T1低8位赋初值0 flag=0; /时间还未满1分钟 while(flag=0) /时间未满等待; v=(TH1*256+TL1)*60/3; /计算速度,每周产生3个脉冲 display_val(v); /显示速度四 系统流程图热水是否关闭YN排气扇延时5s后停止模块初始化传感器检测键盘检测液晶显示 延时根据室温调整转速蜂鸣器启动强制排气延时YYN是否有烟雾热水是否开启NY按
13、键控制排气扇是否有紧急情况五 调试与仿真五 调试过程:用蜡烛的火焰代替热水器点火的火焰,用打火机的烟雾代替浴室的有害器体,通过模拟浴室环境进行试调。数据传感器经由排气扇的液晶显示,调试时以实验室内的温湿度数据为程序的试调提供依据。在调试PWM波时,产生的波形及其占空比由示波器显示,某一转速对应的波形如下: 图13 某速度对应的PWM波本系统各模块正常工作所需电压均由5V稳压电源提供,在测试稳压电源时,由HY1711双路可跟踪直流稳压电源输出7.2V直流电源给电源模块输入端,用万用表测得电压模块输出端输出电压为4.91-5.05V,即基本满足电路要求。六 系统功能及参数本排气扇所能实现的功能有:
14、(1)能通过火焰的亮灭检测定点热水的开关并指示。(2)热水开启时能根据温度控制风扇转速。(3)能通过液晶屏显示温度,湿度及转速信息。(4)检测到有害气体强制排气并由蜂鸣器报警。(5)用户可通过按键手动控制排气扇开闭。(6)热水关闭时排气扇根据设定的时间延时停止。性能参数:火焰传感器打火机测试有效距离:80cm火焰传感器有效波长范围:760nm1100nm烟雾传感器探测浓度范围:100ppm10000ppm湿度传感器精确度:5%温度传感器精确度:0.1摄氏度电机转速:10002500r/min 总结本设计所用到的传感器数目及种类比较多,所以传感器的选取非常重要。好的传感器能节省不少调试的时间,增
15、加系统的稳定性。无级调速是本设计电路中较难的部分,因为单片机必须准确地控制排气扇的转速且和强电电路实现电气隔离。一般家用电风扇的无级调速是通过改变连接在晶闸管控制极的电容充放电时间来控制导通角,而本设计采用单片机直接控制导通角,这样不仅能使调速更加精确,而且能充分利用单片机硬件资源。本设计涉及到弱电对强电的控制,除了做好必要的隔离外,强电产生的干扰必须考虑。在调试过程中我们遇到这样的问题,当电机打开后,转速测量就会出错,比正常值高出许多。再三查错后我们发现,由于模块间的连线较长,电机的转动在连接到霍尔传感器的外部中断引脚产生了严重的干扰,产生了额外的计数。我们通过缩短引线,并接滤波电容,很好地
16、解决这个问题。 参考文献:1 郭天祥.新编C语言51单片机教程.北京:电子工业出版社 ,20092 谭浩强.C语言设计.北京:清华大学出版社,19913 童诗白.模拟电子技术基础.北京:高等教育出版社,2012附录:(程序)/*/ DHT11使用范例 /单片机 :STC12c5a / 功能 :串口发送温湿度数据 晶振 11.0592M 波特率 9600 /硬件连接:/P2.0口为通讯口连接DHT11,DHT11的电源和地连接单片机的电源和地/pwm输出口为p1.4 会有轻微嗡嗡的响声 继电器与p1.4连接的原因 /p1.3为脉冲累加口/P17为ad输入端 一氧化碳 检测到高电平报警 如果不需要
17、报警直接接地/p0口8位7断码显示数据/p1.0p1.3为7断码显示位控制/p3.7温度控制按键/p3.6湿度控制按键/p3.5流量控制按键 /*/#include #include /测试端口sbit l0=P21;/7段码显示控制位sbit l1=P22;/7段码显示控制位sbit l2=P23;/7段码显示控制位sbit l3=P24;/7段码显示控制位sbit l4=P25;/7段码显示控制位sbit l5=P26;/7段码显示控制位 /sbit b0=P10;/7段码显示控制位sbit b1=P11;/7段码显示控制位sbit b2=P12;/7段码显示控制位/sbit b3=P13
18、;/7段码显示控制位sbit fengmingqi=P15;/ sbit wen_du=P37;/ 显示控制sbit shi_du=P36;/sbit liuliang=P35;/ /unsigned char code shudian10=0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10;unsigned char code shu16=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x90,0x90,0x90,0x90,0x90,0x90;char set=0,v,dv,cv,mv,ko
19、ng;unsigned int WENDU,SHIDU,maichong,end=1,dingshizhi=0,dingshizhi1=0,dianyashuju; /PWM模块 P1.4/#define PWM_RCCAP0H#define PWM_LCCAP1Hsfr CCON = 0xD8; /PCA控制寄存器sfr CMOD = 0xD9; /PCA模式寄存器sfr CCAPM0 = 0xDA; /PCA模块0模式寄存器 /模块0对应P1.3/CEX0/PCA0/PWM0(STC12C5A60S2系列) sfr CCAPM1 = 0xDB; /PCA模块1模式寄存器 /模块1对应P1.
20、4/CEX1/PCA1/PWM1(STC12C5A60S2系列)sfr CL = 0xE9; /PCA 定时寄存器 低位sfr CH = 0xF9; /PCA 定时寄存器 高位sfr CCAP0H = 0xFA; /PCA模块0的 捕获寄存器 高位sfr CCAP1H = 0xFB; /PCA模块1的 捕获寄存器 高位sbit CR = 0xDE; /PCA计数器 运行控制位void PWM_init()CCON = 0x04;CH = CL = 0x00; CMOD = 0x00;/CCAPM0 = 0X42; /8位PWM输出,无中断CCAPM1 = 0X42; CR = 1;/PWM_R
21、=0;PWM_L=0;/AD模块/-与STC12C5A32S2单片机ADC相关的寄存器声明-sfr P1ASF =0x9d; /P1口模数转换功能控制寄存器sfr ADC_CONTR =0xbc; /AD转换控制寄存器sfr ADC_RES =0xbd; /AD转换结果寄存器高sfr ADC_RESL =0xbe; /AD转换结果寄存器低sfr AURX1 =0xa2; /AD转换结果存储方式控制位/-void AD_caiji()/AD初始化P1ASF=0x80;/P17为ad输入端,可以选择P1其他端口输入,也可同时使用多个但要动态扫描ADC_CONTR=0x8f;/选择转换速度,转换电压
22、源启动,转换输入脚,转换启动与终止for(kong=0;kong5;kong+);AURX1=0;/选择转换格式 dianyashuju=ADC_RES*4+ADC_RESL;/转换结果方式选择,10位数全要/dht11驱动部分/typedef unsigned char U8; /* 无符号8位整型变量 */typedef signed char S8; /* 有符号8位整型变量 */typedef unsigned int U16; /* 无符号16位整型变量 */typedef signed int S16; /* 有符号16位整型变量 */typedef unsigned long U
23、32; /* 无符号32位整型变量 */typedef signed long S32; /* 有符号32位整型变量 */typedef float F32; /* 单精度浮点数(32位长度) */typedef double F64; /* 双精度浮点数(64位长度) */#define uchar unsigned char#define uint unsigned int#define Data_0_time 4/-/-IO口定义区-/-/sbit D = P20 ;/-/-定义区-/-/uint count_ov=0,count_now,motor_speed;uchar time0_
24、count=0,pwm_set=2,flag_18b20;uchar temp_high,temp_low;uint temp_yuanma,temp_zheng,temp_xiao;uint show_shi,show_ge;U8 FLAG;U8 shuju;U8 temp;U8 TH,TL,RH,RL;U8 TH_temp,TL_temp,RH_temp,RL_temp,check_temp;U8 comdata; void Delay_40us(void)/延时40usU8 i;for(i=0;i0;j-)for(i=0;i180;i+); /*DHT11采集数据*/void DATA_
25、R(void)U8 i;for(i=0;i8;i+)/每次采集8位数据FLAG=2;while(!D)&FLAG+);/拉低50us 为接受一bit数据作准备D=1;/电平已拉高,这句可不要temp=0;/默认为低电平,即0Delay_40us();/延时40s后再测if(D) temp=1;/如果40us后仍是高电平,是1comdata0;x-)for(y=110;y0;y-);void xianshi()/7段码显示 int j; if(wen_du=0)set=0;else if(shi_du=0)set=1;else if(liuliang=0)set=2; switch (set) case 0: /数据的处理根据情况改变 需要变 v=WENDU/100; dv=WENDU%100/10; cv=WENDU%10; break; case 1: /数据的处理根据情况改变 需要变 v=SHIDU/100; dv=S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年广东省深圳市高考语文一模试卷
- 草莓采购合同范本
- 转让家电合同范本
- 瓷砖购销意向合同范本
- I-AB-MECA-生命科学试剂-MCE
- Cardionogen-2-生命科学试剂-MCE
- 1-Acetylimidazole-生命科学试剂-MCE
- 中央2025年中国残联直属单位招聘应届生86人笔试历年参考题库附带答案详解
- 科技创新与知识产权法律保护的协同发展
- 知识产权在文化创意产业中的运用
- 新教科版小学1-6年级科学需做实验目录
- 小班数学挂灯笼教案反思
- LED驱动电源基础知识(课堂PPT)
- 整体机房维护方案及报价通用
- 北大金融学课程表
- 英国签证户口本翻译模板(共4页)
- 现金调拨业务
- 空白个人简历表格1
- 广东省中小学生休学、复学申请表
- GPIB控制VP-8194D收音信号发生器指令
- 建立良好师生关系
评论
0/150
提交评论