基于STM32的智能风扇.doc
《基于STM32的智能风扇.doc》由会员分享,可在线阅读,更多相关《基于STM32的智能风扇.doc(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、北京理工大学珠海学院2020届本科生毕业设计基于STM32的智能风扇学 院:专 业:姓 名:指导老师:信息学院自动化叶浩林学 号:职 称:160104105525李勇峰副教授中国珠海二二年五月诚信承诺书本人郑重承诺:本人承诺呈交的毕业设计基于STM32的智能风扇是在指导教师的指导下,独立开展研究取得的成果,文中引用他人的观点和材料,均在文后按顺序列出其参考文献,设计使用的数据真实可靠。本人签名: 日期: 2020 年 4 月 12 日基于STM32的智能风扇摘 要随着高新技术的高速蓬勃发展,许多智能产品应运而生。大家都在积极地改进传统家电,希望给它们加入智能元素,注入新的能量。智能风扇,一种除
2、了具备传统风扇的基本功能外,还具有远程调控、智能显示温度档位等功能的新式智能家电。本设计以STM32单片机为基础,另外使用LCD1602液晶显示屏、温度传感器以及人体红外感应模块作为智能模块。通过软件编程,设计出了一款能够根据外界温度调节风速档位和自动启停的智能风扇。LCD1602液晶显示屏能够显示出设置好的温度、温度传感器检测到的温度、还有当前风扇是否工作以及档位,方便我们直观地了解风扇状态。温度传感器能够把周围的温度检测到之后,把数据直接传送到单片机中进行处理。人体红外感应模块可以检测到风扇前是否有人在活动,进而控制风扇是否工作。我们使用的Keil5进行软件编程,下载到STM32单片机中来
3、进行软件控制。关键词:STM32单片机;电风扇;智能控制;人性化设计Design of intelligent electric fan based on STM32 MCUAbstractWith the rapid and vigorous development of high and new technology, many intelligent products emerge as the times require. Everyone is actively improving traditional home appliances, hoping to add intellig
4、ent elements to them and inject new energy. Intelligent fan, in addition to the basic functions of traditional fans, but also with remote control, intelligent display of temperature gear and other functions of the new intelligent home appliances. This design is based on STM32 single chip microcomput
5、er, and also uses LCD1602 liquid crystal display screen, temperature sensor and human infrared sensing module as intelligent module. Through software programming, we designed an intelligent fan which can adjust the wind speed gear and start and stop automatically according to the outside temperature
6、 LCD1602 the LCD display can display the set temperature, the temperature detected by the temperature sensor, and whether the current fan is working and gear, it is convenient for us to understand the fan status intuitively. The temperature sensor can detect the surrounding temperature and transmit
7、the data directly to the MCU for processing. The human infrared sensing module can detect whether someone is active in front of the fan, and then control whether the fan works. We use the Keil5 for software programming, download to the STM32 MCU for software control.Keywords:STM32 MCU;electric fan;i
8、ntelligent control;humanization design目 录1 前言11.1本设计的目的、意义及应达到的技术要求11.2本设计在国内外的发展概况及存在的问题12方案论证22.1温度传感器的选择22.2控制核心的选择32.3控制核心的选择42.4调速方式的选择43硬控设计53.1智能风扇的总体设计53.2各硬件模块介绍53.2.1 DS18B20介绍53.2.2 STM32介绍73.2.3 LCD1602液晶显示器介绍83.2.4 DYP-ME003人体感应模块介绍83.2.5 PWM风扇介绍103.3各部分电路设计103.3.1温度传感器电路103.3.2 LCD1602
9、液晶屏显示电路114软件设计114.1软件系统总体设计114.2系统初始化程序设计124.3 温度采集与显示算法125系统调试135.1硬件调试135.1.1 硬件调试方法13参考文献15致 谢17附录程序18附录2实物图361 前言调档控制麻烦、电机噪声大、摇头方式比较单一的传统风扇不太适合现代人的生活需求。针对这些传统风扇的缺点,本文以STM32F103C8T6单片机作为管控单元自制了一款经济性好、功耗比较低的智能电风扇。该风扇结合了DS18B20温度采集模块、LCD1602液晶显示器、人体红外监测模块,运用了智能化的控制技术。可以进行根据环境温度的采样转变风扇的风速的修改,而且可以把温度
10、和风速档位的情况显示到液晶显示屏上。1.1本设计的目的、意义及应达到的技术要求春夏(或者夏秋)交替时期,周围温度还比较高,我们这时候一般会使用传统的电风扇进行降温,这时候传统电风扇的弊端就显现出来了。第一方面:我们想要打开电风扇需要手动开启,对于现代人来说这太麻烦了,需要一种远程控制开关的功能。第二方面:传统风扇一般使用较大功率、转速高的风扇,然而风扇的功率与其噪音成正比,功率越大,噪音越大,导致平时我们开启风扇造成噪音比较大,不适合入睡。第三方面:到了晚上,我们开风扇睡觉的时候,一般会选择较小档位,以免入眠后,周围温度下降导致感冒,而且会加一个定时让电风扇定时关闭,可是有时候电风扇关闭之后,
11、人会感觉炎热,热醒后还得亲自重新打开电风扇,重新调整定时,实在不人性化。对此,我想到了现在市场上流行的智能家居,里面的智能模块应用到电风扇上,可以解决以上这些问题。使用温控模块实现自动控制风扇的开关,档位,用微控制器实时控制,用液晶显示器来显示温度以及档位,并且用户们可以设定相应的温度,使得单片机在该值进行启停或者调档的操作,十分准确。预计风扇应具备功能有:传统风扇的档位功能。环境温度检测功能。人体红外检测功能。液晶显示温度功能。自动模式和手动模式的切换。1.2本设计在国内外的发展概况及存在的问题平时夏天炎热,为了电费和环保,人们比较趋向于使用电扇降温。电扇还是很普遍的,电扇类型有很多,吊扇、
12、电风扇还有新的USB插口的风扇和智能风扇在生活中都能很容易找到。虽然空调作为另一种降温工具走进了我们的生活,但是电扇的地位还是无可替代的。它的价格低廉,安装使用方便,功耗相对较低,是节能环保的降温首选。商家在选用智能控制芯片时候,大多选用单片机,单片机不仅能够实现很多高智能化的控制,还不容易被干扰,而且它售价较低适合商家成本计算,广受大家欢迎喜爱。其实市面上已经有不少的智能风扇问世,种类多种多样,传统的风扇可以手动调档还有定时关,但是就这些功能而言,对于我们现代人来说还是不够人性化、智能化。在这个市场需求不断提高、风扇在中国市场上仍然占据一定比例的份额的情况下,智能风扇的市场,未来可期。而为了
13、抢占这个市场,制作的风扇必须得在技术含量上有一定的提升,通过提高风扇的人性化、智能化,符合现代人的使用需求。同时为了检验自己大学三年的研习情况,我决定结合所学的相关软硬件知识来制作出一个以STM32芯片作为控制单元的电风扇。该风扇应在兼具之前普通的风扇的功能的基础上,能够实现随着周围环境温度的升降调整风速档位,检测到无人时可以自动关闭,还能时刻显示出当前的档位和温度作为参考,给使用人一个自我设定的可能,达到刚才所说的个性化,智能化。2方案论证2.1温度传感器的选择我们寻找了三种能够作为温度传感器的元件:方案一:我们尝试使用热敏电阻来检测温度,当热敏电阻检测到室内温度变化时,其阻值会发生改变,会
14、是电阻相连的电压改变,如果是温度升高,那么阻值会降低,温度降低,阻值则会升高。我们再使用数模转换芯片ADC0809把刚才的电压模拟信号转换成为数字信号,接着输入给我们的单片机里,让单片机处理后,就能得到我们所需要的加档减档的操作。方案二:我们尝试使用热电偶来检测温度,让其利用测温的特性检测出温度后,把信号通过我们的桥式电路传到数模转换器中,数模转换器继续把模拟信号转换成为数字信号,让单片机处理数字信号控制电扇。方案三:我们尝试使用数字式的DS18B20来检测温度,这种传感器可以直接把检测到的温度直接转换成为数字信号,方便单片机直接控制,实现各个控制功能。对于方案一,在网上购买热敏电阻非常简单而
15、且成本低,利于我们作品的设计。热敏电阻有个特性叫负温度系数,当它检测温度的时候,温度高,它的阻值就会变低;温度低了,阻值反而升高。它虽然反应速度灵敏,但是不稳定(线性度不好导致),即使是出售电阻元件的厂商,也难以给我们一个正确的阻值曲线作为参考。这就导致我们如果使用热敏电阻来作为测温元件,将让我们在测试阶段难度大大提高,需要多次检测阻值对应的温度,而且容易不精确。哪怕我们使用一些纠正电路来纠正阻值带来的误差,但同时电路的增加会让我们电路复杂性相应提高,让我们设计的作品稳定性变低,不利于作品的设计。所以该方案不采用。对于方案二,热电偶自身的线性比较好(和热敏电阻相比较),热电偶是把两种不同的金属
16、焊接在一起,将其尾端通过焊接接在一起,再测出不加热的部位的温度,就可以获得加热点的温度。但是我从网上所知,这种搭配的电路也比较复杂,而且它对温度的改变也不够灵敏,达不到智能风扇所需的温度检测精度需求,故这个方案也不合适。对于方案三,DS18B20这个传感器模块比较智能,使用起来也简单方便,这样我们就不需要外加其他放大或者纠正电路了。比较起来,不仅设计起来简单,而且稳定性也高了不少,温度的测量误差自然而然变少了。该模块是直接将检测到的信号转换为数字信号输出,简化了电路的设计,而且它使用的是单总线技术,用单根信号线实现时钟和数据的传输,提高了它的抗干扰能力。2.2控制核心的选择方案一:上网查找到电
17、压比较器LM339是可以通过电压值来控制电路的。我们可以利用这个特点,依靠热敏电阻或者热电偶来感受温度,当电阻值达到某个值或者热电偶测温温度达到某个温度时候,我们再利用集成运放比较电路获得对应的阻值或者温度信号,最后把这个数据转成电信号,依靠这个电信号的大小来调整电扇档位。方案二:购买STM32单片机,利用这种普遍使用的高集成控制芯片来作为控制元件。用编写程序的方式来实现我们想要的测温、调档、显示温度等功能。对于方案一,采用电压比较器的话相对而言实现起来难度不大,它的电路不是很繁杂,连接起来较为简便,而且它没有编写的需要,省去调试程序的麻烦。但是能够实现的功能过于单一,而且一旦设定就无法改变,
18、不能让使用者自己调节预设温度,无法满足用户的个性化需求,虽然易于实现,但是不采用。对于方案二,单片机功能比较强大,可以通过编程实现很多我们想要的操作功能。可以通过软件使检测的温度显示到显示屏上,用户也可以使用按钮对应显示屏进行操作,改变上下限,达到用户自我调整的目的,满足个性化需求。而且利用程序来检测温度,具有较高的精准度,减少误差。故采用方案二。2.3控制核心的选择方案一:选用五位共阳数码管显示温度,动态扫描方式显示。方案二:选用液晶显示屏LCD显示温度。对于方案一,购买共阳数码管比较简单也比较便宜,上网就可以买到。而且它亮度比较高,显示温度的时候人眼比较容易看清,而且功耗低,由于我们设计供
19、电是5V,这就很契合我们的需求,况且想要编写数码管的代码也不难。这种显示方式也由经受了时间的检验,得到了绝大多数人的喜爱。我们开始学习单片机的时候也是使用共阳数码管来实现数字显示的,具有广泛适用性。缺点是:动态扫描是使五个数码管一一点亮,因此会有闪烁,人眼视觉暂留是20ms,当扫描周期小于这一时间,我们人眼将察觉不出闪烁,如果要使用数码管动态扫描,可以增加扫描频率的方法减轻数码管对人眼产生的闪烁感。对于方案二,液晶显示屏可以显示出数字甚至是图案,美感相对数码管显示好得多,而且硬件连接简单。2.4调速方式的选择方案一:改变风扇的转速的功能,我们尝试使用DAC0832转换芯片来控制。思路是使用传感
20、器先去测温,让温度数值传到单片机中,单片机就会把数字信号输出出来,模数转化芯片能够把单片机传过来的数字信号变成模拟信号。利用这个模拟信号控制我们预先放置在电路中的晶闸管,通过晶闸管的导通角和无级调速电路来改变风扇的转速。方案二:PWM(脉冲宽度调制)波调速。我们单片机会把数字信号传出来,这时候PWM波就可以把数字信号利用起来,通过这信号来控制模拟电路。PWM具有从CPU到被控系统或者元件的信号都是以数字形式来输出的优点,这样一来就不需要进行AD数模转换了。其他元件控制电路的时候可能需要经过数模转化,可是PWM就不需要,它全程都是依靠数字来通信,这样可以降低电路的杂音问题。PWM波就是一种矩形波
21、,它只有两种状态,要么拔高的时候显示高电平,要么拉低显示低电平。比如我们这个电扇用的是5V电源供电,用PWM波控制MOS管的导通时间进而控制电机转速,当PWM波高电平的时候,则MOS管导通,那么电机达到最高转速,如果低电平的时候,那么MOS管截止,电机就会停止转动,我们可以依靠定时器控制PWM波高电平的时长,来细微调整档位的高低。有如下两种提案:利用软件延时,当高电平“1”的延时时间到,对I/O口的电平进行取反,使高电平转变为低电平,然后再延时一个间隔;当低电平延时时间到时,再对该I/O口电平取反,如此反复进行,最后获得PWM波。在本设计中应用了此解决方案。利用定时器。控制方法与(1)相同,但
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 STM32 智能 风扇
限制150内