基于51单片机的智能风扇控制系统.doc
基于51单片机智能风扇控制系统的设计与实现摘要:随着气温的逐渐上升,风扇的需求量也逐渐扩大。传统风扇不能根据外界温度的变化对风扇转速快慢进行调整,也不能对风扇的开关与否进行自动控制,这将会损耗大量的电力资源。针对这些问题,开发设计了智能风扇控制系统。该系统以STC89C51RC单片机最小系统为核心,利用DS18B20温度采集模块,LCD 1602显示屏、L298N电机驱动模块、HC-SR501人体感应模块、舵机控制模块、ESP8266 WIFI控制模块组成智能风扇控制系统。当有人进入室内, HC-SR501人体感应模块会监测到有人出现,同时DS18B20温度采集模块将采集到的温度与系统开始设置的阈值做比拟,并将采集到的温度数据显示在LCD 16 -02显示屏上。当室温高于所设置的温度且有人存在的情况下,风扇将会自动吹风;当温度低于所设置的温度时风扇仍保持关闭状态。该系统采取了三种工作方式,第一种工作方式为按键控制,从左至右按键功能依次为摇摆、红外、定温、定时。第二种工作方式为红外遥控器控制,在遥控器上按下相应的功能按键,即可控制风扇。第三种工作方式为 终端APP控制,通过 客户端实现风扇的自动启动和停止,旋转方向,改变风扇的转速等。 关键词:STC89C51RC单片机;智能风扇;人体感应;keil Uvision; Intelligent Fan Control System Based on 51 Single Chip Design and ImplementationAbstract: With the gradual rise in temperature, the demand for fans has gradually expanded. However, the traditional fan can not adjust the speed of the fan according to the change of the outside temperature, and can not control the fan switch automatically. In response to this problem, we will develop intelligent control system of the fan.The system is based on the minimum system of the STC89C51RC MCU.The intelligent fan control system is composed of DS18B20 temperature acquisition module, LCD 1602 display, L298N motor drive module, HC-SR501 human body induction module, steering control module and ESP8266 WIFI control module. When the person enters the room, the human body infrared sensor module will detect people, while the DS18B20 temperature acquisition module will collect the temperature and the system begins to set the threshold to compare, and the collected temperature data is displayed on the LCD 1602 display. When the room temperature is higher than the set temperature and someone exists, the fan will automatically blow; when the temperature is lower than the set temperature ,the fan will still turn off . The system takes three kinds of work, the first work for the key control, from left to right button function in order of swing, infrared, fixed temperature and timing. The second mode of operation for the infrared remote control, press the corresponding function button on the remote control, you can control the fan. The third type of work for the mobile terminal APP control, through the mobile client to achieve automatic fan start and stop, rotation direction, change the fan speed and so on.Key words: STC89C51RC Single-Chip; Intelligent Fan; Human Infrared Sensor Module; Keil Uvision ; 仅供学习参考目 录一、论文(设计)正文.11绪论11.1系统开发的背景11.2系统开发的目的和意义11.3国内外研究现状21.3.1国内研究现状21.3.2国外研究现状21.4主要研究内容32系统分析42.1可行性分析42.2系统需求分析52.2.1功能需求分析52.2.2性能需求分析62.2.3系统实现方式73系统硬件设计93.1系统概述93.2单片机最小系统电路93.2.1 STC89C51RC单片机简介93.2.2 STC89C51RC单片机常用存放器103.3 LCD 1602显示屏模块113.4 DS18B20温度传感器模块123.4.1 DS18B20温度传感器的特性123.4.2 DS18B20温度传感器的电路实现133.5红外遥控模块133.6 HC-SR501人体感应模块143.6.1 HC-SR501人体感应模块工作原理143.6.2 HC-SR501人体感应模块特性143.6.3 HC-SR501人体感应模块的电路实现153.7舵机控制模块153.7.1舵机的特性163.7.2舵机控制模块工作原理163.8 ESP8266 WIFI控制模块173.8.1 ESP8266 WIFI控制模块特性183.8.2 ESP8266 WIFI控制模块AT指令183.9系统其它电路213.9.1复位电路213.9.2晶振电路223.9.3开关电路223.9.4按键电路223.9.5 DS1302时钟芯片电路233.9.6 L298N电机驱动电路244系统软件设计254.1程序语言及开发环境254.2主程序254.3 LCD 1602显示屏控制程序264.4 DS18B20温度监测控制程序274.5红外遥控控制程序294.6 HC-SR501人体感应控制程序304.7 舵机控制程序314.8 ESP8266 WIFI控制程序325系统功能实现与测试345.1系统显示界面与实物图345.2 LCD 1602显示屏的测试345.3 DS18B20温度传感器的测试355.4红外遥控器的测试355.5 HC-SR501人体感应的测试365.6舵机控制测试375.7 ESP8266 WIFI测试386总结39参考文献40谢 辞41二、附录. 42宝鸡文理学院本科毕业设计开题报告42宝鸡文理学院本科毕业设计结题报告43宝鸡文理学院本科毕业设计辩论评分表44宝鸡文理学院本科毕业设计辩论过程记录451绪论1.1系统开发的背景在我国,电风扇是80年代开始兴起的一种小型的家用电器,开始时功能单一,而且耗电量大。随着技术的不断更新,功能更加强大,更加趋于人性化。作为一种老式的家电,电风扇具有价格廉价,摆放方便,体积轻巧等特点。由于大局部家庭消费水平的限制,电风扇作为一个成熟的家电行业的一员,尤其在中小城市以及乡村将来一段时间内仍然会占有市场大局部份额。面临庞大的市场需求,提高电风扇的市场竞争力,使之在技术含量上有所提高,是现在面临的主要问题。目前,国内市场虽然上出现了一些机械定时风扇,能够控制风扇在工作一定时间后关闭,但定时范围有限,且无法对温度变化灵活处理。其次,传统风扇不能根据外界温度的变化对风扇转速快慢进行调整,也不能对风扇的开关与否进行自动控制。尤其对于昼夜温差相对较大的地区,在使用风扇时常常会遇到这样的问题:当凌晨气温已经下降,不再需要风扇进行降温。可是,当人们已经熟睡而无法发觉此时需要关闭风扇。这时候,对于一些体质较弱的人就会面临感冒的分险。这样一来,不仅对身体造成一定的影响,同时也浪费了一些不必要的电力资源。针对传统风扇存在的缺陷,开发设计了智能风扇控制系统以解决这些问题。1.2系统开发的目的和意义 该系统开发的目的在于解决传统风扇耗电量大以及使用当中存在平安隐患,从而提高人们的生活质量,节约电力资源。该系统在传统风扇的根底上开发设计出了一些创新功能。例如,采用温度传感器实现了风扇自动监测室内温度,当监测到的温度大于系统设置阈值时,风扇将开启;当监测到的温度小于系统设置阈值时,风扇将保持关闭状态。采用人体感应模块实现了无人时风扇自动关闭,有人时风扇自动开启。该系统采用按键、红外遥控、 终端控制三种操作方式,用户可任意选择一种方式进行相应的操作,从而为用户提供了方便、快捷。该智能风扇克服了传统风扇的缺点,具有很好的稳定性,精确的温度控制,0低功耗,低本钱等优点。随着我国电子技术的开展,该智能风扇将会走进千千万万普通人的家里,为广阔人民带来生活上的便捷。1.3国内外研究现状1.3.1国内研究现状随着我国电子行业的不断开展,家用电器已经走进了千千万万普通人的家中。在改革初期,平均100个家庭当中或许才有1个家庭拥有一两件家用电器。这对于当时的中国家庭来说已经是非常奢侈的消费品。与现在相比,无论是从风扇的体积规模还是功耗性能方面与现在相比都有着天壤之别。如果将风扇整晚开启,消耗的电量是现在的十几倍。所以,在风扇行业开展的初期,市场还面临着很大的技术缺陷。随着改革的深入,市场经济也逐渐开展起来,风扇行业也开始了技术方面的更新。比方,将以前体积庞大的风扇改装为体积轻巧,外形美观的风扇,在功耗方面也做了很大的技术改进。如今,随着生活水平的上升,人们对风扇的需求不止停留在技术方面,风扇的创新性、节能性、便捷性等也都是人们在选购风扇时考虑的重要因素。同时,轻巧靓丽的外观也是人们追求的一大目标。目前,风扇行业的工业技术也趋于成熟。今后,智能风扇将会完全代替传统的风扇,给人们带来方便、快捷、舒适的生活。1.3.2国外研究现状国外在风扇行业的研究远远不如我国积极,但是不得不说在智能电器方面的研究早已走在我国前列。智能化电器采用微处理器及可编程器件,具有良好的现场保护和现场恢复功能。智能化电器包含三个方面,智能化的电器元件如智能化断电路、智能化接触器和智能化供配电系统。智能化电器在智能家居领域占据着十分重要的作用。在国外,风扇的自动无极调速已经有了一定的成效,可以使风扇根据环境温度的变化进行自动调速。当温度低于正常温度时,风扇将不会工作。当温度高于正常温度时,风扇将自动开始工作。除此之外,国外一些家庭采用家庭智能化系统,已经步入了智能家居时代。通过网络,实现家居的远程遥控等便捷操作。美的公司推出的平安无叶风扇采用智能遥控的方式,可在8m的范围内随意控制。这款风扇最重要的是采用超静音隔离效果,克服了传统风扇噪音大的缺点。同时,采用无叶技术也便于清洗,更加平安。智能风扇现也逐渐开始普及,但是在风扇的功能以及性价比方面仍然有着很大的开展空间。相信随着电子技术的开展,智能风扇将会为人们带来意想不到的便利。1.4主要研究内容该系统以STC89C51RC单片机为核心,由温度采集模块,LCD 1602显示屏、L298N电机驱动模块、HC-SR501人体感应模块、舵机控制模块以及ESP8266 WIFI控制模块构成。通过DS18B20温度传感器对环境温度进行数据采集,假设采集到的温度值大于系统设置阈值,风扇将开启;假设采集到的温度小于系统设置阈值,风扇将关闭。LCD 1602显示屏主要显示日期,温度等数据。L298N电机驱动模块主要为风扇的转向提供动力能源。HC-SR501人体感应模块监测是否有人,假设有人并且采集到的温度大于初始温度值,那么风扇转动;反之,风扇关闭。舵机控制模块主要功能为控制风扇的转向。ESP8266 WIFI控制模块用来发出WIFI信号,通过 终端连接相应的WIFI信号,实现相应的系统功能。该系统包括如下功能:(a)旋钮调节风速,可控制风扇转向;(b)具有电子表功能,时间可以自行调整,利用电容充电放电,时间可以断电不停,能保持一到两天的时间记录;(c)人体红外感应功能,无人时风扇将保持关闭状态;(d)定时开关功能;(e)具有温控功能,可通过按键等设定最低温度,低于最低温度风扇将保持关闭状态;(f)可通过红外遥控器和 APP无线遥控;(g)USB线直插使用;2系统分析2.1可行性分析传统风扇最大的缺点是不能实时根据外界的温度变化自动调节风扇的转速,开关与否等。该智能风扇的开发将有效解决传统风扇的缺乏,真正地实现风扇的运行情况受外界环境的控制。从而实现了低功耗,高性能的智能风扇,既节省了大量的电力资源,又减少了不必要的人力消耗。该智能风扇适用于所有家庭,尤其针对老人小孩设计的当室内温度低于系统设置的阈值时自动关闭这一功能,保护了老人和小孩的身体健康。该智能风扇控制系统的开发本钱低,开发时间短。既可弥补传统风扇的缺乏,又在此根底上增加了新的创意。如果大量投入生产,将会对人们的生活质量有着较大的提高。所以,该智能风扇将会有很好的开展空间和前景。该系统主要从技术可行性,经济可行性,法律可行性这三个方面来分析本次设计确实是切实可行的。技术可行性。该系统以STC89C51RC单片机为核心,由温度采集模块,LCD 1602显示屏、L298N电机驱动模块、HC-SR501人体感应模块、舵机控制模块以及ESP8266 WIFI控制模块构成。该系统的编程工具采用keil Uvision4和Eclipse,这两款编程工具在本科期间都有着深入的学习,可灵活掌握。该系统在keil Uvision4环境下采用C语言编程实现STC89C51RC单片机的有关功能,在Eclipse环境下采用Java语言编程实现 终端APP的有关功能。这两种高级语言在编程方面都便于维护,方便对系统进行操作且生成目标代码质量高,程序执行效率高。经济可行性。从经济方面来看,该系统在经济方面的投入适当。该系统的开发本钱符合一个小型风扇的本钱。具体而言,硬件只需提供一块STC89C51RC芯片以及温度传感器,HC-SR501人体感应模块以及舵机控制模块。软件只需设计出相应的APP程序即可。综上,所需材料本钱和人工费总计不超过100元。所以,该智能风扇的开发设计可大量投入工业生产。从法律方面来说,该系统的硬件局部和软件局部的设计都是由本人单独完成,本人对该系统所涉及的技术、文档内容、源程序代码都具有自主权,因此不用承当任何法律责任,也不触犯任何国家法律,并且没有侵犯任何公司的专利。所以基于51单片机的智能风扇系统在法律方面也是可行的。通过以上分析可知,该系统开发从上都是技术可行性,经济可行性,法律可行性可行的。2.2系统需求分析智能家电一直是控制领域研究的方向,其目的是为了让人们的生活更加便捷化,电子化,自动化,具有广阔的应用前景和经济价值。风扇曾一度被认为是空调产品冲击下的淘汰品,其实并非如此,市场人士称,家用风扇并没有随着空调的普及而淡出市场,最近几年反而出现了市场销售复苏的态势。其主要原因有以下两个:一是风扇和空调的降温效果不同,空调有强大的制冷功能,可以快速有效地降低环境温度,但是风扇更加温和,更加适合老人妇女儿童等体弱人群。二是风扇有价格优势,价格低廉且相对省电,安装和使用都简单易懂。风扇作为夏天生活中的必需品,就现有功能而言,传统风扇是220V交流电供电,电机转速分为几个档位,通过人为调整电机转速到达改变风力大小的目的,即每次风力改变,必然有人参与操作。其次,传统的风扇无法对温度的变化灵活处理,这样必定会带来诸多不便,缺乏以满足人们的需求,开发设计一种真正为人们生活考虑的智能风扇十分必要。智能风扇控制系统的开发防止了空调对人们身体造成的伤害,同时减少了不必要的电力消耗,具有广阔的应用前景。该系统的开发在延用传统风扇功能的根底上将从以下几个方面进行创新:a)温度的实时监控 b)时间的实时记录c)人体感应,无人时风扇不工作d) 终端远程控制2.2.1功能需求分析该系统按照功能需求可分为温度采集模块,LCD 1602显示屏模块、L298N电机驱动模块、HC-SR501人体感应模块、舵机控制模块以及ESP8266 WIFI控制模块。a)温度采集功能模块:选用DS18B20温度传感器,该传感器可以实现从-55到+125的测量范围,并且测量精度高。通过DS18B20温度传感器测量所处环境的温度,采用LCD 1602显示屏作为输出端,将测量数据显示在LCD 1602显示屏端。b)L298N电机驱动模块:使用三极管8050构成H桥直流电机驱动电路,该电路对于小功率风扇驱动足够平安可靠。c)HC-SR501人体感应模块:人体感应模块具有体积小,使用方便,工作可靠,监测灵敏,感应距离远等优点,从而在各个领域得到广泛的应用。该系统通过人体红外感应来监测是否有人进入房间,假设监测有人进入并且室内温度高于初始设置值,那么风扇叶片将会旋转。否那么,风扇将仍然保持关闭状态。d)舵机控制模块:控制电路板接受来自信号线的控制信号,控制电机转动,电机带动一系列齿轮组,减速后传动至输出舵盘。舵机的输出轴和位置反应电位计是相连的,舵盘转动的同时,带动位置反应电位计,电位计将输出一个电压信号到控制电路板,进行反应,然后控制电路板根据所在位置决定电机转动的方向和速度,从而到达目标停止。e)ESP8266 WIFI控制模块: APP智能一键远程操控,风扇风量大小、预约定时、开关机等多种功能同步显示,可有 终端操作者全方位自由掌控。2.2.2性能需求分析根据该系统的性能需求,通过对该系统的适用条件,系统误差,实现功能等方面进行具体分析: (1)测量范围-55一+125;(2)延时误差0.14ms;(3)实现电子表功能,时间可以自行调整,并利用电容充放电,时间可以断电不停,可保持一到两天的时间记录;(4)定时开关功能;(5)人体感应功能,无人时风扇将保持关闭状态; (6)可通过红外遥控器和 APP无线遥控;(7)USB线直插使用;2.2.3系统实现方式该系统采用软硬件相结合的实现方式,硬件以STC89C51RC单片机为核心,由温度采集模块,LCD 1602显示屏模块、L298N电机驱动模块、HC-SR501人体感应模块、舵机控制模块以及ESP8266 WIFI控制模块构成。通过DS18B20温度传感器对环境温度进行数据采集,假设采集到的温度值大于系统设置阈值,风扇将开启;假设采集到的温度小于系统设置阈值,风扇将关闭。LCD 1602显示屏主要显示日期,温度等数据。L298N电机驱动模块主要为风扇的转向提供动力能源。HC -SR501人体感应模块监测是否有人,假设有人并且采集到的温度大于初始温度值,那么风扇转动;反之,风扇关闭。舵机控制模块主要功能为控制风扇的转向。ESP8266 WIFI控制模块用来发出WIFI信号,通过 终端连接相应的WIFI信号,实现相应的系统功能。该系统采用keil Uvision4和Eclipse等编程工具。这两款编程工具生成的目标代码效率非常之高,容易理解。在功能上、结构性、可读性、可维护性上有明显的优势。Keil Uvision4引入灵活的窗口管理系统,使开发人员能够使用多台监视器,并提供了视觉上的外表对窗口位置的完全控制的任何地方。新的用户界面可以更好地利用屏幕空间和更有效地组织多个窗口,提供一个整洁,高效的环境来开发应用程序。新版本支持更多最新的ARM芯片,还添加了一些其他新功能。ARM公司发布最新集成开发环境Real View MDK开发工具中集成了最新版本的Keil Uvision4,其编译器、调试工具实现与ARM器件的最完美匹配。Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组效劳,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集。Eclipse是著名的跨平台的自由集成开发环境。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比方C+和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言;例如,支持诸如C/C+、COBOL和Eiffel等编程语言的插件已经可用,或预计会推出。Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的根底,比方一些管理系统。3系统硬件设计3.1系统概述该系统以STC89C51RC单片机为核心,通过温度采集模块,LCD 1602显示屏、L298N电机驱动模块、HC-SR501人体感应模块、舵机控制模块以及ESP8266 WIFI控制模块构成。温度采集模块主要将采集到的温度值与系统设置的初始温度值进行比拟。假设采集到的温度值大于初始温度值,那么风扇将会开启;假设采集到的温度值小于初始温度值,风扇将一直保持关闭状态。LCD 1602显示屏主要显示日期,温度等数据。L298N电机驱动模块主要为风扇的转向提供动力能源。HC-SR501人体感应模块监测是否有人,假设有人并且采集到的温度大于初始温度值,那么风扇转动;反之,风扇关闭。舵机控制模块主要功能为控制风扇的转向。ESP8266 WIFI控制模块用来发出ESP8266 WIFI信号,通过 终端连接相应的WIFI信号,实现相应的系统功能。系统功能结构图如图1所示:图1 系统功能结构图3.2单片机最小系统电路3.2.1 STC89C51RC单片机简介STC89C51RC单片机中包含中央处理器(CPU)、程序存储器Flash、数据存储器SRAM,定时/计数器、UART串口、I/O接口、EEPROM、看门狗等模块。STC89C51RC单片机几乎包含了数据采集和控制中所需的所有单元模块,可称得上一个片上系统。STC89C51RC单片机有1280字节的数据存储器,其在物理和逻辑上局部为两个地址空间:内部RAM256字节和内部扩展RAM1024字节。而STC89C51RC单片机内部有512字节的数据存储器。STC89C51RC单片机的特殊功能存放器SFR是用来对片内各功能模块进行管理、控制、监视的控制存放器和状态存放器,是一个特殊功能的RAM区, STC89C51RC单片机内的特殊功能存放器SFR与内部高128字节RAM模拟共用相同的地址范围,都使用80H-FFH,但特殊功能存放器SFR必须直接寻址指令访问。 STC89C51RC单片机引脚如图2所示:图2 STC89C51RC单片机引脚图3.2.2 STC89C51RC单片机常用存放器(a)程序计数器(PC) 程序计数器PC在物理上是独立的,不属于SFR之列。PC字长16位,是专门用来控制指令执行顺序的存放器。单片机上电或复位后,PC=0000H,强制单片机从程序的零单元开始执行程序。(b)累加器(ACC)累加器ACC是8051单片机内部最常用的存放器,也可写作A。常用于存放参加算数或逻辑运算的操作数及运算结果。(c) B存放器B存放器在乘法和除法运算中须与累加器A配合使用。MUL AB指令把累加器A和存放器B中的8位无符号整数相乘,所得16位乘积的低字节存放在A中,高字节存放在B中。DIV AB指令用B除以A,整数商存放在A中,余数存放在B中。存放器B还可以用作通用暂存存放器。(d)程序状态字(PSW)存放器CY:志位。进行加法运算时,当最高位即B7位有进位,即执行减法运算最高位有借位时,CY为1;反之为0。AC:进位辅助位。进行加法运算时,当B3位有进位,或执行减法运算B3有借位时,AC为1;反之为0。设置辅助进位标志AC的目的是为了便于BCD码加法,减法运算的调整。F0:用户标志位0。RS1、RS0:工作存放器组的选择位。OV:溢出标志位.F0:用户标志位1。B1:保存位。P :奇偶标志位。该标志始终表达累加器ACC中1的个数的奇偶性。如果累加器ACC中1的个数为奇数,那么P置1;当累加器ACC中的个数为偶数包括0个时,P位为0。3.3 LCD 1602显示屏模块LCD 1602显示屏模块是提供字母、数字、符号等显示的点阵式LCD,现在常用的模块为16×1,16×2,20×2和40×2行。LCD 1602显示屏可以清楚给用户和开发者显示各种字母和数字,LCD 1602显示屏占整个开发系统面积小、显示内容丰富、对系统能源消耗低。LCD 1602显示屏能够进行2行16个字符的显示,有 D0- D7,8位数据总线及三个控制端口RS,R/ W,EN,工作电压为5 V,比照度和背光调节两个功能字符。它还由很多个点阵字符位组成,例如5X7或5X11等,每个点阵字符位进行一个字符的显示。每位之间有一个点距的间隔起到了字符间距的作用,每行之间也有间隔起到了行间距的作用,所以不能进行图形的显示。可以对显式屏的亮暗程度进行调节,用户可以清楚的看到上面的16个字符。LCD 1602显示屏电路是并行通信的,8跳线,R2为一个电位器,可以调节屏幕的亮度。C1和C2为两个滤波电容,起到滤波的作用,同时也可以起到稳定信号的作用。LCD 1602显示屏电路如图3所示:图3 LCD 1602显示屏电路图3.4 DS18B20温度传感器模块DS18B20数字温度传感器提供9位温度读数,指示器件的温度。数据信息经过单线接入口送入DS18B20或从DS18B20送出,因此从中央处理器到DS1 -8B20仅需连接一条线。读、写和完成温度变换所需的电源可以由数据线本身提供,而不需要外部电源。因为每一个DS18B20有唯一的序列号,因此多个DS1 -8B20可以存在于同一条单线总线上。3.4.1 DS18B20温度传感器的特性DS18B20 温度传感器,即“一线器件,其具有如下几个独特的优点: (a)DS18B20温度传感器测量温度范围宽、测量精度高,测量范围为-55 至+ 125 。 (b)持多点组网功能,多个DS18B20温度传感器可以并联在唯一的单线上,实现多点测温。 (c)供电方式灵活DS18B20温度传感器可以通过内部寄生电路从数据线上获取电源。因此,当数据线上的时序满足一定的要求时,可以不接外部电源,从而使系统结构更趋简单,可靠性更高。 (d)测量参数可配置DS18B20温度传感器的测量分辨率可通过程序设定9至12位。 (e)单总线具有经济性好,抗干扰能力强,适合于恶劣环境的现场温度测量,使用方便等优点,使用户可轻松地组建传感器网络。3.4.2 DS18B20温度传感器的电路实现该模块主要用来测量温度,中间管脚为输出管脚。两端管脚分别用来接地和电源。DS18B20温度传感器电路如图4所示: 图4 DS18B20温度传感器电路图3.5红外遥控模块在光谱中波长自760nm至400µm的电磁波称为红外线,它是一种不可见光。目前几乎所有的视频和音频设备都可以通过红外遥控的方式进行遥控,比方电视机、空调、影碟机等,都可以见到红外遥控的影子。这种技术应用广泛,相应的应用器件都十分廉价,因此该系统选用红外遥控作为智能风扇控制的方式之一。该系统中红外遥控模块的电路连接方式为红外遥控管脚与P32管脚相连,P32具有外部中断功能,假设按键遥控器相对应的按键就会出现一个低电平。红外遥控电路如图5所示: 图5 红外遥控电路图3.6 HC-SR501人体感应模块HC-SR501 是基于红外线技术的自动控制模块,采用德国原装进口LHI778 探头设计,灵敏度高,可靠性强,超低电压工作模式,广泛应用于各类自动感应电器设备,尤其是干电池供电的自动控制产品。本身不发任何类型的辐射,器件功耗很小,隐蔽性好且价格低廉。3.6.1 HC-SR501人体感应模块工作原理人体都有恒定的体温,一般在37度,所以会发出特定波长10M左右的红外线,被动式红外探头就是靠探测人体发射的10M左右的红外线而进行工作的。人体发射的10M左右的红外线通过菲泥尔滤光片增强后聚集到红外感应源上。红外感应源通常采用热释电元件,这种元件在接收到人体红外辐射温度发生变化时就会失去电荷平衡,向外释放电荷,后续电路经监测处理后就能产生报警信号。3.6.2 HC-SR501人体感应模块特性 HC-SR501人体感应模块有三个引脚,即电源、地和输出引脚。经过反复实验,在一个办公室中如果有人,但 200 秒之内都没有人有动作,导致感应模块输出低电平的情况根本不会发生,所以将延时时间调到最大就可以满足监测要求。同时,将感应距离调节也到最大。在通电后有一分钟左右的初始化时间,一分钟后进入监测状态。HC-SR501人体感应模块具有如下特性: (a)全自动感应:人进入其感应范围那么输出高电平,人离开感应范围那么自动延时关闭高电平,输出低电平。 (b)光敏控制:可设置光敏控制,白天或光线强时不感应。光温度补偿(可选择,出厂时未设):在夏天当环境温度升高至3032,探测距离稍变短,温度补偿可作一定的性能补偿。 (c)两种触发方式:L不可重复,即感应输出高电平后,延时时间段一结束,输出将自动从高电平变成低电平;H可重复,默认值为H(跳帽选择),即感应输出高电平后,在延时时间段内,如果有人体在其感应范围活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平。 (d)具有感应封锁时间(默认封锁时间为2.5S)感应模块在每一次感应输出后高电平变成低电平,可以紧跟着设置一个封锁时间段,在此时间段内感应器不接受任何感应信号。此功能可以实现“感应输出时间和“封锁时间两者的间隔工作,可应用于间隔探测产品;同时此功能可有效抑制负载切换过程中产生的各种干扰。(此时间可设置在零点几秒到几十秒钟)。具体HC-SR501人体感应参数见表3.1: 表3.1 HC-SR501人体感应参数表HC-SR501人体感应模块工作电压范围直流电压4.5-20v静态电流<50微安电平输出高3.3v 低0v触发方式L不可重复触发/H可重复触发延时时间5-200s封锁时间2.5s3.6.3 HC-SR501人体感应模块的电路实现假设为正常工作只需接通地线和电源线,假设监测到有人,输出信号RIR0输出为1,否那么为0。由于人体红外一般用于控制灯光或报警,所以具有延时功能。只要监测到有人,即使人已经离开但是仍然会延时3秒。HC-SR501人体感应模块硬件电路如图6所示: 图6 HC-SR501人体感应模块电路图3.7舵机控制模块 舵机也叫伺服电机,最早用于船舶上实现其转向功能,由于可以通过程序连控制其转角,因而被广泛应用智能风扇实现转向以及机器人各类关节运动中。舵机由一般是由直流电机、减速齿轮组、传感器和控制电路组成的一套自动控制系统。通过发送信号,指定输出轴旋转角度。舵机一般而言都有最大旋转角度比方180度。舵机与普通直流电机的区别主要是直流电机是一圈圈转动的,舵机只能在一定角度内转动,不能一圈圈转数字舵机可以在舵机模式和电机模式中切换。普通直流电机无法反应转动的角度信息,而舵机可以。舵机与普通直流电机的用途也不同,普通直流电机一般是整圈转动做动力用,舵机是控制某物体转动一定角度用比方风扇的转向。舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平局部一般为0.5ms-2.5ms范围内的角度控制脉冲局部,总间隔为2ms。以180度角度伺服为例,那么对应的舵机时间与角度的控制关系见表3.2:表3.2 舵机时间与角度的控制关系表时间(ms)角度 0.501.0451.5902.01352.51803.7.1舵机的特性假设现在舵机稳定在A点,这时候CPU发出一个PWM信号,舵机全速由A点转向B点,在这个过程中需要一段时间,舵机才能运动到B点。假设舵机的保持时间为Tw, 当TwT时,舵机能够到达目标,并有剩余时间;当TwT时,舵机不能到达目标;理论上:当Tw=T时,系统最连贯,而且舵机运动的最快。实际过程中w不尽相同,连贯运动时的极限T比拟难以计算出来。假设我们的舵机1DIV =8us,当PWM信号以最小变化量即1DIV=8s依次变化时,舵机的分辨率最高,但是速度会减慢。3.7.2舵机控制模块工作原理采用单片机的两个定时器用来控制舵机,单片机系统实现对舵机输出转角的控制,必须首先完成两个任务:首先是产生根本的PWM周期信号,本设计是产生20ms的周期信号;其次是脉宽的调整,即单片机模拟PWM信号的