【《基于单片机的智能风扇控制系统设计》8300字(论文)】_第1页
【《基于单片机的智能风扇控制系统设计》8300字(论文)】_第2页
【《基于单片机的智能风扇控制系统设计》8300字(论文)】_第3页
【《基于单片机的智能风扇控制系统设计》8300字(论文)】_第4页
【《基于单片机的智能风扇控制系统设计》8300字(论文)】_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的智能风扇控制系统设计1绪论1.1课题研究背景及意义用电器进行结合,促使家用电器能够因为环境的变化而做出自动响应的这一改变,正在不断创新。在生活中随处可见的电风扇,也在不断改变。大家都在现在的生活中,科技技术在不停发展,运用各式各样的传感器和处理器与家知道,我们小时候使用的电风扇,大多数都是手动,功能相对要说也较单一。风扇风速的调节,只能通过我们去调节档位进行改变。风扇没有办法做到因为环境温度改变了,风速也会改变。那么在夜里,温度下降的时候,风扇依然只能按照原来的速度运行,这样人们就容易感冒着凉,在这种情况下,温度控制这个功能就很重要了。温控风扇的系统,控制器将采取单片机。DS18B20温度传感器将作为温度采集模块。LED数码管上将会对温度值进行呈现。风扇利用DS18B20去监测环境实时温度,并将检测到的数据传到单片机系统,人体红外传感器是用来检测风扇四周有没有人在活动,从而进行控制风扇的主动启动及自动中止。我们还将要求风扇运行的速度能够判断预定的温度区间,然后自动改变电机转速。因而,这次课题对传统电风扇的改良,最终应该实现以下功能:1,当人体红外检测到有人在风扇周围活动,环境温度大于预设数值时,风扇就会自行进行工作。2,在设定的温度范围内,风扇能够跟据温度的改变去实现转速大小的主动调整。3,在风扇周围未识别到有人活动时,将自动停止工作。以上性能在为人们的生活带来便利的同时,也不会因为忘记停止风扇而构成电源的浪费,符合当今社会绿色环保的要求。智能风扇在生活中具有必然的实用价值。1.2课题研究现状随着电子技术的不断发展,温度控制器目前在众多行业都很好将温度控制器进行使用。因为它所具备的实时监控温度的性能,能够保障工业设施,测量元器件和农物种植业等的正常运转。它最大的特点是可以实时监视环境温度并控制电动机的运行。温度传感器的普及和传播促进了日常生活的方便。国外对风扇行业的研究远没有我们国家活跃,但是必须说,智能电器的研究已经走到了我们国家的前面。由微处理器,可编程器件形成的智能家居,可以实现现场的维护和恢复。未来,在家居电器行业,智能家电将占据一定的地位。美的公司推出的安全无叶风扇使用智能遥控的操作方式,可以在8m范围内自由控制[1]。无叶技术在进行清洁时也相对方便并且更安全。随着技术的提高,我们应该更往前一步去研究温度控制风扇,尽量提高智能控制的准确性,努力降低运行噪音,尽可能的降低能耗。这将是一个发展趋势,它将完全提高集成度,以便可以将其合并到更多的机械和设备中。1.3课题结构安排关于智能风扇的课题安排。包含了系统总体的设计构思,对系统中采用的硬件进行一个选择,并且对选取好的器件进行一个介绍。其中主要包括了硬件的电路设计,系统软件的设计,系统的调速与实现这些主要内容。具体安排如下:第一章:这个选题拥有什么研究背景,又有什么研究意义,包括此次课题目前的研究现状。第二章:对课题的总体结构进行一个设计安排,课题的设计思路也进一步整理,硬件(控制核心,温度传感器,显示器等)的选用,系统各元器件的介绍。第三章:对于硬件当中的电路完成规划。分别是单片机,温度检测,电机驱动,数码管驱动的电路设计。第四章:说明了课题中的软件设计,主要说明了温度的采集流程,数码管显示流程,电机调速流程及红外传感工作流程。第五章:是对软硬件进行测试。描述调试过程,遇上的问题及相应的解决办法。2系统总体方案设计2.1系统设计思路课题系统的设计思路:环境的当前温度被温度传感器采集了之后,产生的数字信号将会被传输给单片机进行处理。环境现下的温度将由数码管显示。数码管上显示的数据可以到小数点后一位的数字,预设温度设置为整数。电机的转速由PWM脉宽调制实现变换。如果检测到的温度小于预设温度的时候,电机就不会开始工作。假设收集到的四周温度,是在预先设定的温度上下值之间,电机就以低速转动。假设采集的四周温度超出了预设温度的上限值,电机开始全速工作。在上述的前提之下,为了判断是不是有人在电风扇前,计划增添一个人体红外模块,用它来完成电路的自主通断。系统结构框图如图所示。单单片机温度传感器按键电路人体感应模块温度显示驱动风扇图2-1系统结构框图2.2系统硬件选择方案2.2.1控制核心的选择方案一:主要的控制核心初步计划采用电片机。采用STC89C52单片机可以通过软件编程来完成对温度的检测和管控。方案2:控制器件如果是用电压比较电路。温度信号第一步需要先转变成电信号。第二步再经过放大电路去完成放大。最后经过集成运算放大器组成的比较电路才能去判别决定电机的转速。对于方案1:如果控制核心选择单片机,将不再需要繁难的程序,就能在LED上显示出温度传感器监测到的温度数据。如果你想改变温度的预设值,也可以按动设置键,对预设值进行增加或者是减少。这样做,电路得到了简化,成本也得到了节约,稳定性也能进一步提高。STC89C52可以做到在线编译程序,可以满足基本的编写程序的需求,STC89C52集成度高,体积较小,也有较强的可靠性,性价比也高,这个单片机还低电压,低功耗,以及拥有强大的控制功能,适合使用于本次设计。对于方案2:我们知道电压比较电路相对没有那么复杂,它的实现也没有比较大的困难。要想改变预设的温度值,却没有办法实现,这样就不能满足人们具有差异的需要,那么不使用电压比较电路。2.2.2温度传感控制器的选择方案1:热敏电阻的阻值是随着温度的改变进行变化的。热敏电阻采集到的温度要是想传输给单片机,第一步信号需要放大电路对它进行放大,再经过AD数模,AD数模会把很微弱的电压信号换变成数字信号,只有这样单片机才能进行处理。方案2:如果温度传感模块选择使用DS18B20。DS18B20采集的四周温度值,能够马上给单片机输送数字信号,单片机接收完成后会处理。对于方案1:热敏电阻是一种普通电器元件,可以经常见到,热敏电阻的使用不会麻烦,价格也便宜,通讯协议也比较简单,使用寿命也长。在这次课题中,需要考虑热敏电阻对温度检测的灵敏度是否达到要求。环境温度的变化在短暂的时间内不会很大。所以一般来说,环境温度的变化是较为细小的,可是热敏电阻对这个改变就没有那么敏感,而放大电路,转换电路一定程度上还会对其产生影响,从而造成失真和误差。还有一点,它的变化曲线是非线性的,考虑到这一原因应排除本方案。对于方案2:本次课题要想完成电机的温度控制,实现电机根据环境的变化进行自动始止和做到转速的自动调整,需要分辨率高并且波动不大的控制元器件[2]。简单的说,我们就需要集成度高的器件,DS18B20温度传感器恰好是这样的元器件,它的外接电路也不多,检测误差对比热敏电阻来说也是相对比较小的,并且抗干扰能力也强,合乎设计要求。2.2.3显示电器的选择方案1:采用LCD液晶显示屏显示温度方案2:采用LED数码管显示温度对于方案1:液晶显示屏的显示功能总体来说是比较丰富的。无论是简单的数字符号等信息,还是比较繁琐的图形,它都能够显示。缺点是工艺成本高,价格比较贵,另一方面,液晶屏的利用时间没有数码管那么长,故暂不考虑使用液晶屏。对于方案2:日常生活中,随处可见由利用数码管完成显示的信息。我们知道,许多个细小的LED拼接在一起,才能组成数码管。使用数码管比较多的原因是因为它的这些优点:成本低,耐用,显示也容易引起人们的注意,控制也较简单。不足的地方是会有闪烁。由于本设计需要显示的内容较少,较简单,所以选用LED数码管。2.2.4调速方式的选择方案1:选用变压器完成调节,220V电压经过线圈后将降压为不同值,电机连接上不同电压的线圈后,转速就实现了控制[3]。方案2:采用PWM调速。PWM作为一种调节方式。脉冲序列的脉冲宽度是按照特定的规律去进行更改,然后改变输出量,也改变波形。PWM比较经常见到的是矩形波信号,通过改变占空比来实现控制。占空比越大转速就会越快,倘若全是高电平,占空比为百分百,转速将是最快[4]。对于方案1:如果使用变压器来实现电压调节,在变压的过程中会伴随着发热损耗,效率就不高了,而且风速有限制范围,不符合本设计要求。对于方案2:运用单片机模仿PWM调速,PWM信号经由单片机的I/O口输出的时候,高电平如果在延时,I/O口电平会取反为低电平后再延时;低电平如果在延时则同理,这样不停断的去重复来得到PWM信号。实时调速的实现,如果选用PWM脉冲调制,是会拥有比较大的灵活性。故选用。2.3系统元器件介绍2.3.1STC89C52单片机STC89C52作为CMOS8位微控制器,它具有比较低的功耗,较高的性能。8K字节系统可编程Flash存储器它也拥有。STC89C52单片机应用经典的MCS-51内核的同时,进一步进行了改良,为此得到了广泛的应用。STC89C52标准功能:存储器是8K字节的,内部RAM是512字节的,还有,32个I/O口,16位的定时器/计数器拥有3个,外部中断拥有4个,数量为一个的中断结构是7向量4级(它能够兼容传统51单片机的中断结构),全双工串行的通信口。如果降至0Hz的静态逻辑,STC89C52也可以正常操作。CPU中止工作,但是RAM,定时器/计数器,串行通信口和中断系统能够继续工作,是发生在空闲模式下。如果突然发生掉电,RAM内容被保护,振荡器中止运行,单片机也停止工作。这样的情况倘若想要结束,就需要下一个硬件复位,或者是中断复位。单片机STC89C52的引脚阐明:图2-3-1TC89C52单片机引脚图1:主电源引脚:VCC(电源输入,接+5V);GDN(接地线)2:外接晶振引脚:XTAL1(片内振荡电路输入端);XTAL2(片内振荡电路输出端)3:管制引脚:在STC89C52中,复位信号通过RST进行输入,要想复位,高电平的出现需要有两个机器周期;ALE/PROG就是连接地址锁存容许信号;PSEN就是接通外部存储器选通信号;EA/VPP是程序存储器的内外部选通,当接通低电平时,就会从外部程序存储器读取指令,倘若接通高电平便从内部程序存储器读取指令)4:可编程的输出/输入引脚:STC89C52的输入输出引脚就比较多,8位可编程I/O口就有4组。划分为P0,1,23口。双向的I/O口只有P0这一组;准双向的I/O口就多一些,除了P0组剩下的都是。P0口:CPU访问片外存储器时,引脚先传输低8位地址,再传输读写数据[5]。2.3.2DS18B20温度传感器DS18B20的温度读数是9位二进制的形式。DS18B20要是想接受或者是输送温度数据,只需要通过单线接口,这样一根线就可以让中央处理器实现与DS18B20的接通。数据线就可以给DS18B20提供它所需要的电压,而不用在经过外部的电源。要想实现这一特性,就会要求读时序一定要维持1us,其中还包含了两个读周期的恢复时间,最少是1us。DS18B20温度传感器实时收集环境温度,将检测到的数据传给单片机的P2.4口,单片机经过处理显示温度值,数据会与预设温度完成比较,从而促使电机转速进行自动调整。DS18B20特点:可以在较差的环境中实现精确测温,为单线接口,即与微处理器相连只需一条接线就可以实现通信,有多点组网功能,工作电压范围为3V~5.5V[6]。2.3.3LED数码管由许多个发光二级管组装在一起形成的“8”字型的器件就是LED数码管,它的引线在内部已经完成连接,当数码管连通电源之后,二级管就开始发亮,形成字样。在这当中,分别由a到g来表示数码管的显示段,小数点则由dp来表示。数码管即可以由共阴极接通,也可以由共阳极接通,使用看个人习惯。高低电平使数码管完成显示,让完成显示的数据是字型码,也说段选码[7]。2.3.4L298芯片通标标准技术服务有限公司生产了L298N,逻辑驱动电路在L298N里拥有4通道。L298N作为一种驱动器,它是二相和四相电机的专用,内部的两个双全桥式驱动器,这是一种高电平与大电流的驱动器。可以接收电平信号,但会要求其符合标准TTL逻辑。L298N对电机的驱动,不能是电压超过46伏,电流超过2安的电机。要是想让单片机实现对直流电机的控制,就需要增加一个驱动电路,这样才有足够大的电流去驱动电机,实现改变电机转速这一性能。L298N的接口也不复杂,操作也比较方便。在给电机提供驱动的电流还是持续稳定的。2.3.5HC-SR501人体红外感应模块蛮多设备当中会有人体红外感应,它是一种自动控制模块,是在基于红外线技术上实现的。比较经常见到的是HC-SR501。在各种各样的自动感应设备中得到了宽泛的使用,如自动感应应急灯,它的功能耗很小。如果在活动当中的人们被HC-SR501检测到,输出端就会变为高电平,感应到人们走开后,延长一定的时间后,输出端便恢复为低电平。BISS0001芯片在HC-SR501模块当中。BISS0001是用来比较两个探头元件接收到的红外强度,然后控制输出端的电平状态。3系统硬件电路设计3.1单片机最小电路设计复位电路,晶振电路,供电电源三个部分组成了STC89C52单片的最小系统(如下图)。电源电路:即供电电路,通常情况下是5V。时钟电路:在时钟电路中会有晶振。晶振的频率一般是12MHZ。复位电路中,假如REST位于低电平,系统就在工作状态;假如是高电平,系统就在复位或者是下载程序的状态中。ISP在线编译的能力是STC89C52所拥有的。程序加载中,拉高REST,如果程序下载完成,就会主动拉低REST保障进入运行。当然,手动复位也是可以的,只要按动S17就行。按键复位和上电复位的组成就是复位电路。上电复位:复位形式一般为高电平复位。在复位引脚上到VCC的电路中,串联了一个VCC,GND上也串联了电阻。这形成的电路就是RC充放电回路。复位电阻采用10千欧,晶振的振荡频率为12MHz,系统电压为5V[15]。按键复位:按钮复位电路的形成很简单,只要把一个开关与复位电容并联就行了。如果未按下按钮,则电路与上电复位电路相同。在运行的情况下,倘若按下单片机的RESET键,电容器就会疾速放电。疾速放电是充电的电容通过电阻环路实施的,环路中的电阻为200欧。疾速放电的情况下,在RST上的电视会在一瞬间成为高电平。关于单片机的复位也不用担心,因为充电电容的作用,会有能够维持特定时间的高电平来促使复位的完成。图3-1单片机最小电路图3.2温度检测电路设计DS18B20具有温度采集能力。这个能力是计数时钟周期性能实现的。计数是时钟信号经过门周期的可以完成。时钟信号是由低温系数振荡器输出的。至于门周期就是高温系数振荡器产生的。负55摄氏度一般就是计数器的预先设定的值。温度寄存器里面的数值就是测量得到的温度值。温度值想要存放在内存中,需要是16位的二进制格式。主机发送内存读取命令后就可以读取这个温度值。识别时低位在前面,高位在后面。因为温度振荡器的抛物线特性的影响,需用斜率累加器进行补偿[8]。DS18B20信号线只需与1位I/O线相连,I/O线可接多个DS18B20,能实现单点或多点温度检测[9]。为了更加可靠的工作需要在输出的端口上连接一个上拉电阻。如图:图3-2DS18B20电路设计3.3电机驱动电路与调速电动机的驱动将由L298N连实现。软件进行仿真时使用三极管,三极管能够完成其对应的性能。PNT晶体管要是导通了,可是继电器却是关闭的,直流电动机也不起工作,发生这种现象是说明单片机的I/O口输出了低电平。要是想截断PNT的导通,停止继电器,中止电动机,则要要求I/O输出高电平。这是为了控制硬件中电动机的旋转或不旋转。电机的变速由输入的PWM占空比实现。这由微控制器软件调控。按键调整温度,输送相应的脉冲给单片机,实现电机转动速度的自动控制[10]。图3-3电机驱动电路3.4数码管驱动电路数码管驱动电路像下图所示。由四个公共阳极数码管组成。为了数码管不会被过大的电流烧坏,我们需要电路能有限流的作用。这个功能只需要加一个限流电阻。电阻阻值取220欧即可。单片机直接控制数码管的显示需要透过P0口。数码管上a到dp的引脚与P0端口的引脚连接就可以了。电路显示信息一般是由程序的动态扫描逐一的驱动。图3-4数码管显示电路4系统软件设计4.1温度采集流程温度的采集任务是温度传感器经过了读写时序才能完成。温度传感器会有一个序列号,当启动温度传感器的时候就会获得。下一步就要发送读命令,最后温度数据就会被提取出来。温度数据是16位二进制的格式。不断的循环此操作。温度数据就会发送给单片机。但由于温度数据是二进制的,单片机要先对它进行一个二进制变为十进制的转换处置。图4-1温度采集流程图4.2数码管显示流程数码管的动态扫描程序会首先先显示十位,第二个显示的是个位,小数点后一位是最后呈现的。不断循环,温度值就会显示在数码管上。图4-2数码管工作流程图4.3电机调速流程要想实现电机主动调整转速,需要单片机去剖析环境实时温度值,实时温度字这一项数据将经由DS18B20去采集并且完成对单片机的传输。跟随着环境温度的改变,占空比也会发生变化,电机的转速也跟着发生进一步的改变。温度变化温度变化温度变大占空比变大,电机转速变大占空比变小,电机转速变小温度变小开始结束图4-3电机调速流程图4.4红外传感工作流程红外处理电路一般是应用热释电红外处理专用集成电路BISS0001。经过一系列处理(例如,对来自人体的弱红外信号进行放大和整形)后,输出控制信号,并通过功率晶体管或VMOSFET放大该信号[17]。驱动电机,使机械传动机构工作,以实现门的开合。菲涅尔透镜菲涅尔透镜热释电传感器红外信号处理电路电机驱动电路电机及机械控制图4-4红外传感工作流程图5系统调试与实现5.1系统仿真KeilC51是51系列兼容单片机C语言的软件开发系统,C语言难度不太,灵活性强,函数模块可移植性强[11]。目前为止,使用比较的单片机开发软件是KeilC51。之所以运用的比较多,是因为它能够提供比较多的库函数。与此同时,借助KeilC51强大的集成开发调试工具,在进行程序的编辑与调试的过程中会有许多的便利之处。我们在使用的时候,第一步要先建立一个工程,第二步增添文件然后编程,最后就能够编辑调试。使用界面如图:图5-1-1KeilC51软件使用界面图Proteus的主要功能:智能的原理布图,混合电路仿真与精确分析,它还能配合系统配置的虚拟仪器来显示和输出,如示波器[12]

。第一步我们运用Proteus软件实现对工程建立,画出相应元器件并相连。在原理图绘制连接好后再把编译好的程序加载到其中[13],最后根据系统要实现的功能分步进行仿真[14]。初步,我们将预设温度调整为25摄氏度,如图。图5-1-2调制预设25摄氏度温度图在DS18B20仿真元件上拥有加法键和减法键,可以通过这两个按键去调整温度感应器的温度值,操作模拟检测到的温度为26摄氏度,26摄氏度已经大于25摄氏度,即环境温度大于预设温度,观察并且检测在这一情况下电机是否正常工作。设置结束后便点击开始进行仿真按钮,开始仿真之后,观察一定的时间,发现风扇正常工作。如图:图:5-1-3温度传感器为26摄氏度温度图5.2系统制作本次课题制作的智能风扇实物,是由温度传感DS18B20器,单片机STC89C52,共阴极数码管,人体红外传感器等,还包括了7020风扇,万用板,以及电路中所有的电阻,电容,晶振,三极管等等元器件组成。实物图如下。图5.2实物图5.3系统测试设置键,加键和减键这3个控制键可以改变预设的温度值。按照不同的要求去进行自由设置。按下设置键,数码管第一位显示的字母L时,可以通过加减键设置预设温度的下限;数码管第一位显示的字母为H时,这个时候就可以通过加减键设置预设温度的上限值(如下图显示)。通过仿真软件证实,温度上下限值均能成功设置,且风扇能通过温度传感器设置的温度进行与预设值进行比较来判断是否工作。图5-3温度上下值的设定图

温馨提示

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

评论

0/150

提交评论