浙江理工大学《单片机系统设计及应用实验》设计报告题目:基于51单片机的温控智能电风扇专业:机械电子工程班级:机电11(1)班姓名:叶惠芳学号:2011330300302指导教师:袁嫣红机械与自动控制学院2014 年7 月3 日目录摘要 (4)第一章课程设计的目标及主要内容 (5)1.1课程设计的目标及意义 (5)1.2温控智能电风扇的主要内容和技术关键 (5)1.2.1课程设计的主要内容 (5)1.2.2技术关键 (5)第二章温控智能电风扇控制系统硬件设计 (6)2.1课程设计总体硬件设计 (6)2.2芯片及主要器件选择 (6)2.2.1控制核心的选择 (6)2.2.2温度传感器的选用 (7)2.2.3显示电路 (7)2.3芯片及器件介绍 (7)2.3.1 AT89C51单片机 (7)2.3.2 L298芯片介绍 (8)2.3.3 DS18B20温度传感器 (9)2.3.4LED数码管简介 (11)2.4主要硬件电路 (12)2.4.1温度检测电路设计 (12)2.4.2 电机调速电路设计 (12)2.4.3 PWM调速原理 (13)2.4.4 LED数码管显示电路及按键电路 (13)第三章温控智能电风扇控制系统软件设计与实现 (14)3.1 主程序 (14)3.2 数字温度传感器模块 (14)3.3电机调速与控制子模块 (16)第四章调试结果与总结 (16)4.1 调试结果 (16)4.2 课程设计总结 (20)参考文献 (21)附录一 (23)附录二 (24)附录三 (25)摘要电风扇与空调的降温效果不同,相较于空调的迅速降低环境温度不同,电风扇更加温和,适宜于体质较弱的老人与小孩。
并且,电风扇价格实惠,使用简单。
现在市面上的电风扇大多只能手动调速,还外加一个定时功能。
对于温差较大的夜晚,若不能及时改变风速大小后停止,很容易感冒着凉。
所以本课程设计以AT89C51为核心控制系统根据外界温度的变化对电风扇进行转速控制,以实现自动换挡功能。
除此之外,我们还设置了一个用户可以自己通过键盘设置最低温度的模块,一旦外界温度等于或是低于该设置温度,电机自动停止运行。
关键词:单片机温度传感器驱动器智能调速第一章课程设计的目标及主要内容1.1课程设计的目标及意义夏天到了,空调是现代家庭中的主流降暑电器,但是对于老人与小孩,体质相对来说较弱,空调的使用易于受凉,所以家用电风扇,风速温和,既可以达到清凉的目的,又可防止空调带来的弊端。
然而,现在市面上的家用电风扇大多只能手动调速再加一个定时器,功能单一。
晚上后半夜与前半夜气温差比较大,若不能及时减小风速,很可能感冒。
所以,我们在现有电风扇的功能至上增加了温度控制模块,电风扇的电机转速可以根据外界温度的改变而改变。
我们的主要实现的功能有以下几点:1.用户可以手动设置温度下限,外界温度一旦与该设定温度相等或是小于该温度,电机自动停止转动。
2.当温度每降低2℃或是升高2℃,电机转速自动下降一个档位。
1.2温控智能电风扇的主要内容和技术关键1.2.1课程设计的主要内容(1)课程设计采用了AT89C51单片机作为主要处理芯片,DS18B20作为温度传感器感知和传递外界环境的变化,然后通过51单片机进行一系列处理然后对12V的直流电动机进行转速的控制。
(2)在直流电动机转速控制模块,采用了L298驱动器对电机进行驱动。
在显示方面,用7SEG-MPX6-CC-BLUE数码管来显示外界温度的变化以及人为设定的温度值。
1.2.2技术关键(1)温度传感器DS18B20的工作原理以及它内部对温度数据的处理方式,51单片机如何用程序将其输出数据读入,并进行处理。
(2)L298驱动器的工作原理以及电机调速处理的实现方式程序的编写。
(3)数码管显示与按键模块直接的联系以及处理程序的编写。
第二章温控智能电风扇控制系统硬件设计2.1课程设计总体硬件设计系统总体设计硬件框图如图2.1所示图2.1系统方块图对于单片机中央处理系统的方案设计,根据要求,我们可以选用AT89C51单片机作为中央处理器。
作为整个控制系统的核心,单片机内部已包含了定时器、程序存储器。
数据存储器等硬件,其硬件能符合整个控制系统的要求,不需要外接其他存储器和定时器件,方便的构成一个最小系统。
整个系统结构紧凑,抗干扰能力强,性价比高,是比较合适的方案。
本系统实现风扇的温度控制,需要有较高的温度变化分辨率和稳定可靠的换挡停机控制部件。
2.2芯片及主要器件选择2.2.1控制核心的选择采用AT89C51单片机作为控制核心,以软件编程的方法进行温度判断,并在端口输出控制信号。
以单片机作为控制器,通过编写程序不但能将传感器感测到的温度通过显示电路显示出来,而且用户能通过键盘接口,自由设置温度下限,满足用户需求,并且通过程序判断温度具有极高的精准度,能精确把握环境的微小变化。
2.2.2温度传感器的选用采用数字式集成温度传感器DS18B20作为感测温度的核心元件,直接输出数字温度信号共单片机处理。
2.2.3显示电路采用7SEG-MPX6-CC-BLUE数码管显示温度。
数码管显示温度清晰简单,价格优惠,驱动程序简单。
2.3芯片及器件介绍2.3.1 AT89C51单片机AT89C51是美国ATMEL公司生产的低电压、高性能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的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时、计数器,串行通行口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
芯片封装及管脚如图2.2图2.2 AT89C51封装及管脚图2.3.2 L298芯片介绍L298驱动芯片是SGS公司的产品,内部包含4通道逻辑驱动电路。
是一种二相和四相电机的专用驱动器,即内包含两个H桥的高压大电压六双全桥式驱动器,接收准TTL逻辑电平信号,可驱动46V、2A以下的电机。
实物图如图2.3所示。
图2.3实物图图2.4管脚图L298有两路电源分别为逻辑电源6V和动力电源12V,ENA、ENB直接接入5V 电源使电机进入使能状态,IN1、IN2用来控制电路的逻辑功能状态。
由于使用的电机是线圈式,在运行状态突然转到停止状态和从顺时状态突然转换到逆时针状态时会形成很大的方向电流,在电路中加入二极管就是在产生方向电流的时候进行泄流,保护芯片安全。
L298的逻辑功能状态见表2.1 。
表2.1 L298逻辑功能状态图IN1 IN2 ENA 电机状态X X 0 停止1 0 1 顺时针0 1 1 逆时针0 0 0 停止1 1 0 停止2.3.3 DS18B20温度传感器DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。
与传统的热敏电阻相比,它能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。
可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源,因而使用DS18B20可使系统结构更趋简单可靠性更高。
他在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。
DS18B20简介:(1)独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。
(2)在使用中不需要任何外围元件。
(3)可用数据线供电,电压范围:+3.0~ +5.5 V。
(4)测温范围:-55 ~+125 ℃。
固有测温分辨率为0.5 ℃。
(5)通过编程可实现9~12位的数字读数方式。
(6)用户可自设定非易失性的报警上下限值。
(7)支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。
(8)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。
DS18B20直接将测量温度值转化为数字量提交给单片机,工作时必须严格遵守单总线器件的工作时序。
引脚排列如图2.5所示。
引脚说明:GND:接地DQ:数据I/OVDD:可选VDDNC:空脚图2.5 引脚排列表2.2 部分温度值与DS18B20输出的数字量对照表温度值/℃数字输出(二进制)数字输出(十六进制)+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 FF5EH -25.625 1111 1111 0110 1111 FF6FH -55 1111 1100 1001 0000 FC90H2.3.4LED 数码管简介本系统选用五个LED 数码管来进行温度显示。
LED 又称为数码管,它主要是由8段发光二极管组成的不同组合,其中 a~g 为数字和字符显示段,dp 为小数点的显示,通过a~g 这7个发光二极管点亮的不同组合,可以显示0~9和A ~F 共16个数字和字母。
LED 数码管可以分为共阴极和共阳极两种结构,如下图3.1.3所示。
共阴极结构把8个发光二极管阴极连在一起,共阳极结构把8个发光二极管阳极连在一起。
通过单片机引脚输出高低电平,可使数码管显示相应的数字或字母,这种使数码管显示字形的数据称字形码,又称段选码。
图2.6七段LED 数码管一个共阴极数码管接至单片机的电路,要想显示数字“7”须a 、b 、c 这3个显示段发光 (即这3个字段为高电平)只要在P0口输入00000111(07H )即可。