基于51单片机的温控智能电风扇_第1页
基于51单片机的温控智能电风扇_第2页
基于51单片机的温控智能电风扇_第3页
基于51单片机的温控智能电风扇_第4页
基于51单片机的温控智能电风扇_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.页脚.页脚理工大学单片机系统设计及应用实验设计报告题专班姓目业级名号指导教师:基于51单片机的温控智能电风扇机械电子工程机电11(1)班叶惠芳02袁嫣红机械与自动控制学院2014年7月3日目录TOC o 1-5 h z HYPERLINK l bookmark2 o Current Document 摘要4 HYPERLINK l bookmark4 o Current Document 第一章课程设计的目标及主要容5 HYPERLINK l bookmark6 o Current Document 1.1课程设计的目标及意义51.2温控智能电风扇的主要容和技术关键5 HYPERLINK l

2、 bookmark8 o Current Document 1.2.1课程设计的主要容5 HYPERLINK l bookmark10 o Current Document 1.2.2技术关键5 HYPERLINK l bookmark12 o Current Document 第二章温控智能电风扇控制系统硬件设计6 HYPERLINK l bookmark14 o Current Document 2.1课程设计总体硬件设计62.2芯片及主要器件选择6 HYPERLINK l bookmark18 o Current Document 2.2.1控制核心的选择6 HYPERLINK l bo

3、okmark20 o Current Document 2.2.2温度传感器的选用7 HYPERLINK l bookmark22 o Current Document 2.2.3显示电路72.3芯片及器件介绍7 HYPERLINK l bookmark24 o Current Document AT89C51单片机7 HYPERLINK l bookmark30 o Current Document L298芯片介绍8 HYPERLINK l bookmark32 o Current Document DS18B20温度传感器9 HYPERLINK l bookmark34 o Curren

4、t Document 2.3.4LED数码管简介11 HYPERLINK l bookmark36 o Current Document 2.4主要硬件电路12 HYPERLINK l bookmark38 o Current Document 2.4.1温度检测电路设计12 HYPERLINK l bookmark40 o Current Document 电机调速电路设计12 HYPERLINK l bookmark42 o Current Document PWM调速原理13 HYPERLINK l bookmark44 o Current Document LED数码管显示电路及按键电

5、路13 HYPERLINK l bookmark46 o Current Document 第三章温控智能电风扇控制系统软件设计与实现14 HYPERLINK l bookmark48 o Current Document 主程序14 HYPERLINK l bookmark50 o Current Document 数字温度传感器模块14 HYPERLINK l bookmark52 o Current Document 3.3电机调速与控制子模块16 HYPERLINK l bookmark54 o Current Document 第四章调试结果与总结16 HYPERLINK l boo

6、kmark56 o Current Document 调试结果16 HYPERLINK l bookmark58 o Current Document 课程设计总结20 HYPERLINK l bookmark60 o Current Document 参考文献21 HYPERLINK l bookmark62 o Current Document 附录一23 HYPERLINK l bookmark64 o Current Document 附录二24 HYPERLINK l bookmark66 o Current Document 附录三25摘要电风扇与空调的降温效果不同,相较于空调的迅

7、速降低环境温度不同,电风扇更加温和,适宜于体质较弱的老人与小孩。并且,电风扇价格实惠,使用简单现在市面上的电风扇大多只能手动调速,还外加一个定时功能。对于温差较大的夜晚,若不能及时改变风速大小后停止,很容易感冒着凉。所以本课程设计以AT89C51为核心控制系统根据外界温度的变化对电风扇进行转速控制,以实现自动换挡功能。除此之外,我们还设置了一个用户可以自己通过键盘设置最低温度的模块,一旦外界温度等于或是低于该设置温度,电机自动停止运行。关键词:单片机温度传感器驱动器智能调速页脚.页脚第一章课程设计的目标及主要容1.1课程设计的目标及意义夏天到了,空调是现代家庭中的主流降暑电器,但是对于老人与小

8、孩,体质相对来说较弱,空调的使用易于受凉,所以家用电风扇,风速温和,既可以达到清凉的目的,又可防止空调带来的弊端。然而,现在市面上的家用电风扇大多只能手动调速再加一个定时器,功能单一。晚上后半夜与前半夜气温差比较大,若不能及时减小风速,很可能感冒。所以,我们在现有电风扇的功能至上增加了温度控制模块,电风扇的电机转速可以根据外界温度的改变而改变。我们的主要实现的功能有以下几点:用户可以手动设置温度下限,外界温度一旦与该设定温度相等或是小于该温度,电机自动停止转动。当温度每降低2C或是升高2C,电机转速自动下降一个档位。温控智能电风扇的主要容和技术关键课程设计的主要容(1)课程设计采用了AT89C

9、51单片机作为主要处理芯片,DS18B20作为温度传感器感知和传递外界环境的变化,然后通过51单片机进行一系列处理然后对12V的直流电动机进行转速的控制。(2)在直流电动机转速控制模块,采用了L298驱动器对电机进行驱动。在显示方面,用7SEG-MPX6-CC-BLUE数码管来显示外界温度的变化以及人为设定的温度值。技术关键(1)温度传感器DS18B20的工作原理以及它部对温度数据的处理方式,51单片机如何用程序将其输出数据读入,并进行处理。(2)L298驱动器的工作原理以及电机调速处理的实现方式程序的编写。数码管显示与按键模块直接的联系以及处理程序的编写。第二章温控智能电风扇控制系统硬件设计

10、2.1课程设计总体硬件设计系统总体设计硬件框图如图2.1所示键盘输人IZZ数码管AT89C51温度传感器电机驱动器图2.1系统方块图对于单片机中央处理系统的方案设计,根据要求,我们可以选用AT89C51单片机作为中央处理器。作为整个控制系统的核心,单片机部已包含了定时器、程序存储器。数据存储器等硬件,其硬件能符合整个控制系统的要求,不需要外接其他存储器和定时器件,方便的构成一个最小系统。整个系统结构紧凑,抗干扰能力强,性价比高,是比较合适的方案。本系统实现风扇的温度控制,需要有较高的温度变化分辨率和稳定可靠的换挡停机控制部件。2.2芯片及主要器件选择2.2.1控制核心的选择采用AT89C51单

11、片机作为控制核心,以软件编程的方法进行温度判断,并在端口输出控制信号。以单片机作为控制器,通过编写程序不但能将传感器感测到的温度通过显示电路显示出来,而且用户能通过键盘接口,自由设置温度下限,满足用户需求,并且通过程序判断温度具有极高的精准度,能精确把握环境的微小变化。2.2.2温度传感器的选用采用数字式集成温度传感器DS18B20作为感测温度的核心元件,直接输出数字温度信号共单片机处理。2.2.3显示电路采用7SEG-MPX6-CC-BLUE数码管显示温度。数码管显示温度清晰简单,价格优惠,驱动程序简单。2.3芯片及器件介绍AT89C51单片机AT89C51是美国ATMEL公司生产的低电压、

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

13、作模式。空闲方式停止CPU的工作,但允许RAM,定时、计数器,串行通行口及中断系统继续工作。掉电方式保存RAM中的容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。芯片封装及管脚如图2.2PDIF(T3)PtaciT2EX)n茸1匸P1Pt.2;rFM0匚?4OShP15CViSOPi存匚sck)piR&TERXDJP3srHXDP3L1匚ilVR!P3?E(nHpj3.3匚(TOPM匚(TilP3-5F$JiAD;tlXTAL2IXTAL1rjKDL124033343753fi庁35T34直U932ID阳1130122913281427152616151724ISR1922202

14、1vcePflO(ADOhP=0l(*D1hPO2FO.315):F24(AU)FZ.5CA13i)_PS4(AtifJP2IP22.mrT1二JtfUTiZZ3ftfUT3、LOilC3Um*XT*iEVBncm二wur?二iWE*5HUT1二sue.、野睚牡3OLTPliTJyaavrwH=uwuia图2.3实物图图2.4管脚图L298有两路电源分别为逻辑电源6V和动力电源12V,ENA、ENB直接接入5V电源使电机进入使能状态,IN1、IN2用来控制电路的逻辑功能状态。由于使用的电机是线圈式,在运行状态突然转到停止状态和从顺时状态突然转换到逆时针状态时会形成很大的方向电流,在电路中加入二

15、极管就是在产生方向电流的时候进行泄流,保护芯片安全。L298的逻辑功能状态见表2.1o表2.1L298逻辑功能状态图IN1IN2ENA电机状态X1001X0停止01顺时针11逆时针00停止10停止233DS18B20温度传感器DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,它能够直接读出被测温度并且可根据实际要求通过简单的编程实现912位的数字值读数方式。可以分别在93.75ms和750ms完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据

16、总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源,因而使用DS18B20可使系统结构更趋简单可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。DS18B20简介:独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。在使用中不需要任何外围元件。可用数据线供电,电压围:+30+55V。测温围:-55+125C。固有测温分辨率为0.5OCO通过编程可实现912位的数字读数方式。用户可自设定非易失性的报警上下限值。(7)支持多点组网功能,多个DS18

17、B20可以并联在惟一的三线上,实现多点测温。(8)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。DS18B20直接将测量温度值转化为数字量提交给单片机,工作时必须严格遵守单总线器件的工作时序。引脚排列如图2.5所示。DALLASOStaffl9底视NC匚二114=NC闯住=215=NO衬亡=宜14=NO413=NOs12=NCNU=c11=NCT10=Npa咅=GND16-PIN5S0P引脚说明:GND:接地DQ:数据I/OVDD:可选VDDNC:空脚DS1420pft3iPACKAGE图2.5引脚排列表2.2部分温度值与DS18B20输出的数字量对照表温度值/c数字输出(

18、二进制)数字输出(十六进制)+125000001111101000007D0H+8500000101010100000550H+25.62500000001100100010191H+10.125000000001010001000A2H+0.500000000000010000008H000000000000000000000H-0.51111111111111000FFF8H-10.1251111111101101110FF5EH-25.6251111111101101111FF6FH-551111110010010000FC90H2.3.4LED数码管简介本系统选用五个LED数码管来进行

19、温度显示。LED又称为数码管,它主要是由8段发光二极管组成的不同组合,其中ag为数字和字符显示段,dp为小数点的显示,通过ag这7个发光二极管点亮的不同组合,可以显示09和AF共16个数字和字母LED数码管可以分为共阴极和共阳极两种结构,如下图3.1.3所示。共阴极结构把8个发光二极管阴极连在一起,共阳极结构把8个发光二极管阳极连在一起。通过单片机引脚输出高低电平,可使数码管显示相应的数字或字母,这种使数码管显示字形的数据称字形码,又称段选码。edgndcpdf0.g0dpa0.bc图2.6七段LED数码管Rx8一个共阴极数码管接至单片机的电路,要想显示数字“7”须a、b、c这3个显示段发光(

20、即这3个字段为高电平)只要在P0口输入00000111(07H)即可。这里07H即为数字7的段选码。字形与段选码的关系见表2.2所示。表2.3LED段选码表显示共阴极共阳极显示共阴极共阳极字符段码段码字符段码段码03fHC0H87fH80H106HF9H96fH90H25bHA4HA77H88H34fHB0HB7fH83H466H99HC39HC6H56dH92HD3fHA1H67dH82HE79H86H707HF8HF71H8EH2.4主要硬件电路总体硬件原理图见附录一。2.4.1温度检测电路设计本模块以DS18B20作为温度传感器,AT89C51作为处理器,配以温度显示作为温度控制输出单元

21、。整个系统力求结构简单,功能完善。DS18B20进行现场温度测量,将测量数据送入AT89C51的P1.7口,经过单片机处理后显示温度值,并与设定温度值的下限值比较,若高于或低于设定的下限值则控制电机转速进行调整。电路图如图2.6所示。2.4.2电机调速电路设计根据图2.7所示连接好电路图,A/B接入单片机上通过程序来控制L298输出来控制直流电机的转动。PWM1赋值为1时,使能直流电机转动。图2.8电机调速电路页脚页脚243PWM调速原理我们采用的是PWM来实现直流电动机的调速,优点:控制原理简单,输出波动小,线性好,对邻近电路干扰小。缺点:功率低,散热问题严重。PWM调速原理:输出电压TOC

22、 o 1-5 h zU=(t/T)U(2-1)0ont+1=T(2-2)onoff式2-1中t/T=D称为占空比。on占空比D表示了在一个周期T里开关管导通的时间与周期的比值。D的变化围为0二D=l。当电源电压U不变的情况下,输出电压的平均值U取决于占空比D的大小,改变D值也就改变了输出电压的平均值,从而达到控制电动机转速的目的,即实现PWM调速。2.4.4LED数码管显示电路及按键电路7SEG-MPX6-CC-BLUE数码管与单片机输出端相连电路以及按键输入电路如图2.8所示。图2.9显示电路连接a层M聲需钙密逹急三r:-J.4.;-匕-.-JJT/-X金WIJiAHL3r语i-0E21-s

23、:jCPmL-Vdi-L1-H二iH3L:、h3I=jL1i.lb:u.rW冷ET.-s-ZZ4-o-rT第三章温控智能电风扇控制系统软件设计与实现本系统的运行程序采用C语言编写,采用模块化设计,整体程序由主程序和温测显示、键盘处理以及电机控制等子程序模块组成。3.1主程序下图为主程序简易框图。图3.1主程序简易框图3.2数字温度传感器模块如图3.2所示,主机控制DS18B20数字温度传感器完成温度转换工作必须经过三个步骤:初始化、ROM操作指令、存储器操作指令。单片机所用的系统频率为12MHz。根据DS18B20数字温度传感器进行初始化时序、读时序和写时序分别可编写3个子程序:初始化子程序、

24、写子程序、读子程序。图3.2数字温度传感器模块程序流程图DS18B20芯片功能命令表如下:命令说明协议READROM读取激光ROM64位33HMATCHROM匹配ROM55HSKIPROM跳过ROMCCHSEARCHROM搜索ROMF0HALARMSEARCH告警搜索ECHWRITESCRATCHPAD把字节写入暂存器的地址2和34EHREADSCRATCHPAD读取暂存器和CRC字节BEHCOPYSCRATCHPAD把暂存器容拷贝到非易失性存储器中48HCONVERTT开始温度转换44HRECALLE2把非易失性存储器中的值召回暂存器B8HB4HREADPOWERSUPPLY读电源供电方式:

25、0为寄生电源,1为外电源3.3电机调速与控制子模块本模块采用PWM来实现直流电动机的调速。控制流程如图3.3所示。温度读取外界温度与设定温度进行比较得到占空比即高低电平输出比电机转速控制图3.3电机控制流程图第四章调试结果与总结4.1调试结果课程设计仿真调试采用的是Protues仿真软件,按照原理图将各器件画在软件中。程序编写采用Keil软件,用C语言编写。这里我们设定温度为20*为最低温度进行仿真。0档:=20C-44J_i1pay字呼CO?k琵rrrzi_HlU?aHKlSFB1档:20C21C页脚档:25C27C档:=27C即温度每上升2C,电机转速即上升一档。26C时,仿真结果::酱影

26、童纱轴)82ocasisaTQNOoa33ALT?EerL4.2课程设计总结本系统以AT89C51单片机为核心,单片机主要完成对外界环境温度信号的采集、处理、显示等功能;用Protues软件绘制电路原理图及仿真测试和DXP软件绘制PCB电路印刷板图,利用MCS-51C语言编制。运行程序该系统的主要特点是:(1)适用性强,用户只需对界面参数进行设置并启动系统正常运行便可满足不同用户对最适合温度的要求,实现对最适温度的实时监控。(2)随时可以根据软件编写新的功能加入产品。操作界面可扩展性强,只要稍加改变,即可增加其他按键的使用功能。本系统温度控制采用DS18B20数字温度传感器作为感温元件。采用L

27、298驱动器利用PWM占空比调速原理对电动机转速进行控制,以达到目标。基于AT89C51单片机所设计与研制的电风扇智能调速系统,造价低且具有稳定性高、性能优越、节约电能等优点,在夜间无需定时,同样能给人们带来更多的方便。本设计在软件仿真模拟检测中运行较好,但数码管显示部分有一点问题,在对温度设置时,数码管其他位数字会跟随跳变,但数值不变。功能上的缺憾是对于两个档之间的临界温度处理不好,并且档位太少,还有待改进。总的来说,本次课程设计学到了许多东西,对今后个人的发展有积极的作用。.页脚.页脚参考文献【1】坤、锋、王巧芝等,51单片机典型应用开发例大全M,:中国铁道,2011.102】俊谟,单片机

28、中级教程原理与应用(2版)M,:航空航天大学,2006.10【3】玉杰,基于单片机的温度控制智能电风扇D,工业髙等专科学校【4】清秀、邓星钟等,机电传动控制M,:华中科技大学,2011.6.页脚页脚页脚附录一)義氏附录二PCB板.页脚.页脚附录三程序清单主程序voidmain(void)uintltemp;ucharg,d;/初始化温度dianji=0;/初始化电机read_temp();/读取测温子程序,读取温度数值delay(1000);/延时while(1)int1=1;int2=0;dianji=0;ltemp=read_temp();/温度赋值delay(2);d=read_ds18

29、b20_date();/温度的低位g=read_ds18b20_date();/温度的高位ltemp=g;ltemp=8;ltemp=ltemp|d;t=ltemp*0.0625;ltemp=t*10;shi=ltemp/100;/温度十位ge=(ltemp%100)/10;/温度个位keyscan();/读取键盘子程序delay(2);deal(ltemp/10);/运行温度判断子程序,由温差设置占空比dianjik();/运行电机控制子程序温度显示子程序voidledshow(uchara4,uchara3,uchara1,uchara0)dispbuf0=a0;dispbuf1=a1;d

30、ispbuf3=a3;dispbuf4=a4;P2=0 xff;/按键个位P0=dispcodedispbuf0;P2=dispbitcode5;delayus(1);P2=0 xff;/按键十位P0=dispcodedispbuf1;P2=dispbitcode4;delayus(1);P2=0 xff;/温度传感器个位P0=dispcodedispbuf3;P2=dispbitcode1;delayus(1);P2=0 xff;/第一位,传感器十位P0=dispcodedispbuf4;P2=dispbitcode0;delayus(1);DS18B20子程序voidclean_ds18b20()/初始化dq=0;/再讲数据线从高拉低,要求保持480960usdelayus(90);/略微延时以向ds发出一持续480960us的低电平复位脉冲dq=1;/将数据线拉高delayus(3);/延时(释放总线后需等待1560us让ds输出存在脉冲)bitreadbit()/读取一个位uchari;bitdat;dq=0;i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论