ImageVerifierCode 换一换
格式:DOCX , 页数:55 ,大小:620.53KB ,
资源ID:7020729      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7020729.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(智能电风扇控制器设计与开发方案.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

智能电风扇控制器设计与开发方案.docx

1、智能电风扇控制器设计与开发方案智能电风扇控制器设计与开发方案1 绪论1.1智能电风扇在当今社会中的研究意义电风扇曾一度被认为是空调产品冲击下的淘汰品,其实并非如此,市场人士称,家用电风扇并没有随着空调的普及而淡出市场,近两年反而出现了市场销售复的态势。其主要原因:一是风扇和空调的降温效果不同空调有强大的制冷功能,可以快速有效地降低环境温度,但电风扇的风更温和,更加适合老人儿童和体质较弱的人使用;二是电风扇有价格优势,价格低廉而且相对省电,体积轻巧,摆放方便,安装和使用都非常简单。尽管电风扇有其市场优势,但传统电风扇还是有许多地方应当进行改良的,最突出的缺点是它不能根据温度的变化适时调节风力大小

2、,对于夜间温差大的地区,人们在夏夜使用电风扇时可能遇到这样的问题:当凌晨降温的时候电风扇依然在工作,可是人们因为熟睡而无法察觉,既浪费电资源又容易引起感冒,传统的机械定时器虽然能够控制电风扇在工作一定后关闭,但定时围有限,且无法对温度变化灵活处理。有鉴于现今家里不可或缺的电器产品电风扇,我们希望可以借由步进电机组合做出利用红外感应接收模块接收到有人的讯号,来改变电风扇转动的方向,以取代传统电风扇只能以固定形式转动,希望能够让电风扇自动能感应到人所在的方向,未来让电器更能人性化、科技化,以达到方便性智利于未来科技产业的发展,我们希望能将科技运用在电器上,再于产业结合,已达到居家生活里的便利性。现

3、今社会上,不可或缺的是将生活周遭事物简单化,而我们将运用单芯片在电风扇上,研究出符合未来人们的需求,研发低成本、多功能的全自动化电风扇让社会大众能够接受,取代传统式手动电风扇,让科技产业在电器上有重大的突破。于以上方面的考虑,我们需要设计一种智能电风扇控制系统来解决这些问题。1.2 研究容及论文安排1.2.1 研究容本论文主要目标是使电风扇能够根据人的位置来自动选择送风角度。以SONIX公司研发的SN8P2501B为主控器,利用红外感应接收装置,接受人体辐射出的红外线,通过此讯号利用PM35L-048步进电机来改变红外感应接受装置,进而确定人体围,再通过发光二极管指示锁定角度并模拟风扇循环闪烁

4、。 由手动开关转变为红外线人体感应自动开关,是应用先进的红外线人体感应科技主动侦测人体的问题是否在探测围,在设定15秒时间都可以探测到人,则开启电机开关,开启LED角度循环闪烁;若在15秒开始存在有人信号,后存在无人信号,则重新计时15秒检测;若一直存在无人信号则不操作动作。1.2.2 论文安排论文第1章为绪论,主要介绍了电风扇的现状,智能电风扇研究意义,本设计研究的容及论文安排;第2章为系统设计方案的介绍,包括其具体可实现的功能及方案选择;第3章为硬件设计部分,这部分详细介绍了所选硬件的特性及其各部分对实现自己所需要功能的作用及其电路图;第4章为软件设计部分,给出了主程序和各子程序流程图,程

5、序清单以附件的形式附在论文最后。第5章为结论部分。接下来为致和参考文献。最后附有原理图及程序清单。2 系统设计方案2.1 系统总体介绍本次设计选用SONIX SN8P2501B为主控制芯片,与外围电路构成人体围检测系统。MCU记录下侦讯到的人围,并送给LED发光二极管,使其模拟风扇循环闪烁。系统框图如下图所示:图2-1 系统框图2.2 系统功能介绍本系统利用LED发光二极管的循环闪烁来模拟风扇的来回旋转送风动作。主要功能为:a) 自动启动及关闭开关我们由步进电机配合红外感应控制器经由红外线扫描来控制开关,检测到一定时间有人时自动开启电机开关及LED闪烁;无人时关闭电机开关及LED闪烁。b) 自

6、动搜索围人数我们以SN8P2501B来控制步进电机的步数,使它去侦测人数围有多大。c) 锁定人体位置我们利用红外感应控制器搜寻配合步进电机步数,有红外感应控制模块传回探测信号给MCU,再由MCU来记忆人体位置,记录最大最小角度,锁定人体位置。d) 发光二极管指示锁定角度并模拟风扇循环闪烁用LED循环闪烁来模拟电风扇来回循环送风动作,每相邻两个LED之间间隔为30。例:当锁定人围为30-90时,LED从LED1至LED3循环闪烁(LED从左到右依次为LED1、LED2、LED3、LED4、LED5、LED6,分别代表30、60、90、120、150、180)。2.3 设计方案本设计根据红外感应装

7、置的不同处理共有两种设计方案a) 方案一将红外感应模块前的菲泥尔滤光透镜用不透红外的材质覆盖上,让红外感应模块只能检测到一个小围(小于10)的红外变化,步进电机正转180后即可反转180,如图2-2所示图2-2 设计后的红外感应模块探测围利用这种方法,可以不用考虑红外检测围是否存在人这种情况,原因是LED模拟的角度是以30来递增的,相比而言,红外检测的角度远远小于模拟的角度,即使在红外检测围存在有人,在步进电机旋转一步后就可以检测出来,不会影响到检测的结果。例:当步进电机正转90后,红外探头检测到有人(探测角度87.592.5),此时记录下的电机步数为X大步(X=3,90);步进电机再次旋转7

8、.5,此时检测不到人(探测围95100),记录此时的电机步数为X+1大步(X=3,120),对检测没有什么影响。图2-3 检测到有人存在图2-4 下一状态检测不到人这种方法的优点:思路比较简单,基本没有涉及到算法,在步进电机旋转速度比较慢的情况下能够很快获得人的位置,从而改变LED的闪烁;缺点:需要利用不透红外材料来封装,在开机情况下,需要人在此等待十几秒时间,确认一直有人存在开机后才能离开此位置。b) 方案二事先确定红外感应装置的探测角度,步进电机需要正转360。下面举例说明:假设红外感应装置的探测角度为150,人所在围为30-120围,则在步进电机开始正转时就能够检测到有人存在(检测角度-

9、7575),步进电机旋转至90(3大步)时仍能检测到人(检测围30150),只有当步进电机旋转至195(6大步)时才检测不到人(检测围120270),此时记录的角度为210(6+1大步),需要减去红外感应装置探测角度的一半,此时才是真正开始没探测到人时人的位置,即结束角度,角度为120(6+1-(2+1)=4大步)(2+1为探测角度一半所占大步);步进电机继续正转,当步进电机正转至315(10大步)时,又一次检测到有人(检测围为24030),此时记录的角度为315(10大步),仍然需要减去红外感应装置探测角度的一半,则起始角度为30(10+(2+1)-12=1大步)(2+1为探测角度一半所占大

10、步,12为旋转360所需步数)。这样只记录两次值就得到了人的围,不论人站的稀疏。图2-5 红外探头初始位置图2-6 检测到无人时的位置图2-7 检测到刚有人时的位置这种方法的优点:不需要做什么其他操作,开机更加人性化,不需要让电机进行反转动作,在判断完人围后即可判断是否需要关机操作;缺点:思路有点复杂,中间涉及到算法问题,事先必须知道此红外感应装置的探测角度,因为步进电机转速比较慢导致确定一个围需要比较长的时间。注:方案一和方案二中涉及到得确定围需要的时间是由所选红外感应装置决定的,在这里所选的BISS0001默认延时时间为10秒,因此需要的时间比较长,如果调为1秒,则步进电机旋转的速度扩大1

11、0倍,需要的时间也就相应缩短。两种方案硬件电路完全一样,只是对红外感应装置的处理不同,主要表现在红外感应装置的探测围上,实现不同的方案由程序控制。本设计选用方案一作为主要思路,原因有几点:思路简单,容易被他人理解;可以允许在未检测区域随意改动位置,在当前正转结束后用LED模拟显示出;在实物演示中,正转后反转不会对引线产生影响;在较短时间可以看到演示效果。3 硬件设计本系统主要由微处理器控制、红外感应模块、步进电机模块及LED模拟风扇旋转模块等组成。下面介绍各部分原理及电路图。3.1 微处理器3.1.1 SN8P2500系列介绍SN8P2500系列单片机是SONIX公司最新推出的高速低功耗8位单

12、片机。它采用低功耗CMOS设计工艺及高性能的RISC架构,具有优异的抗干扰性能。突出的特点是:低成本、高抗干扰性、置16Mhz RC振荡电路、高速8位、59条精简指令集。3.1.2 SN8P2501B单片机介绍当前市场上的单片机有51系列,STC系列等单片机,考虑到设计只需实现自动开关机及锁定人围LED闪烁的功能,但又要确保其抗干扰能力强的特点,在考虑功能需求及成本的基础上,选择了SONIX公司研发的SN8P2501B 8位单片机作为本系统的控制器,有14个引脚,如图3-1,它具有以下特性:a) OTP ROM空间:1K * 16位;b) RAM空间:48 字节;c) STKP堆栈: 4层;d

13、) 多种振荡源选择:最大可达16MHz的外部晶振、10MHz的外部RC振荡、部16MHz的高速时钟及16KHz的低速时钟;e) 高速的CPU指令周期,可达1T,即每个指令周期为1个时钟周期;f) 满足低功耗的需求,可编程设定4种工作模式:正常模式、低速模式、睡眠模式和绿色模式;g) 置高速PWM/Buzzer输出接口,可输出不同频率的信号;h) 置RTC实时时钟(0.5s)、看门狗定时器(16KHz3V,32KHz5V)及3级低电压检测系统;i) 具有3个中断源,2个部中断源:T0、TC0,1个外部中断源:INT0。1) I/O引脚配置I/0口引脚为:a) 输入输出双向端口:P0、P1、P2、

14、P5;b) 单向输入引脚:P1.1;c) 可编程的漏极开路引脚:P1.0;d) 具有唤醒功能的端口:P0、P1 电平变化触发;e) 置上拉电阻端口:P0、P1、P2、P5;f) 外部中断引脚:P0.0,由寄存器PEDGE 控制,其触发方式为上升沿或下降沿。图3-1 SN8P2501B引脚2) 程序寄存器图3-2 程序存储器SN8P2501B的程序寄存器为OTP ROM(一次性可编程),存储器容量为1K*16位,可由10位程序计数器PC对程序寄存器进行寻址,或由系统寄存器(R,X,Y和Z)对ROM的数据进行查表访问。其中:系统复位后从地址0000H开始执行;地址0008H是中断向量入口地址。3)

15、 数据存储器图3-3 数据存储器SN8P2501B单片机的片RAM共有256个存储单元,地址围为000H-0FFH。片寄存器可分为通用数据存储区和系统存储器两大部分。通用数据存储区可作为用户自定义的变量,临时数据,中间数据存放地,而系统寄存器则用来控制片外设或表示外设的状态。4) 定时/计数器SONIX SN8P2708A MCU定时/计数器大分致为两大类。一类为基本定时器T0,另一类为多功能定时器TC0。二进制定时器T0 溢出(从0FFH 到00H)时,T0 继续计数并给出一个溢出信号触发T0 中断请求。定时器T0 的主要用途如下:a) 8 位可编程定时器:根据选定的时钟频率定时产生中断请求

16、;b) 定时器:根据选定的时钟信号产生中断请求,RTC 功能仅限于编译选项为High_Clk = IHRC_RTC;c) 绿色模式唤醒功能:T0ENB = 1 时,T0 溢出将系统从绿色模式中唤醒。定时/计数器TC0 具有双时钟源,可根据实际需要选择部时钟或外部时钟作为计时标准。其中,部时钟来自Fcpu,外部时钟INT0 由P0.0 引脚(下降沿触发)输入。寄存器TC0M 控制时钟源的选择。当TC0 从0FFH 溢出到00H 时,TC0 在继续计数的同时产生一个溢出信号,触发TC0 中断请求。TC0 的主要作用如下:a) 8 位可编程定时器:根据选定的时钟频率在特定时间产生中断信号;b) 外部

17、事件计数:对外部事件计数;c) 蜂鸣器输出;d) PWM输出。下面以基本定时器T0为例,说明初始值的设定方法。T0C:T0累加计数寄存器,上电初始值为00H,可以软件重置,每次溢出之后,初始值需要用户重置。初始值设定方法如下: T0C初始值 = 256 (T0溢出间隔时间 输入时钟)例如:用T0做一个10ms的定时,Fcpu=1M。T0rate选择010(Fcpu/64),那么 T0C初始值 = 256 (T0溢出间隔时间 输入时钟) = 256 ( 10ms 1M/64 ) = 64HT0M中的Bit6:Bit4决定分频数的比率,T0的时钟源来自CPU,通过T0M中的Bit6,Bit5,Bi

18、t4来控制分频数的比率,T0ENB位控制计数器时钟,如果为1则时钟输入到T0计数器T0C中,T0开始计数,否则T0C的时钟被切断,T0C停止计数。当T0C计数器从0FFH增加到000H时,系统会将标志位T0IRQ置为1。表3-1 T0M寄存器0D8HBit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0T0MT0ENBT0rate2T0rate1T0rate0-T0TB复位后0000-0T0TB:RTC 时钟控制位。 0 = 禁止RTC; 1 = RTC 模式。T0RATE2:0:T0 分频选择位。T0ENB:T0 启动控制位。 0 = 禁止T0; 1 = 开启T0。表3-2 分频比

19、T0rate2T0rate0分频比000Fcpu/256001Fcpu/128010Fcpu/64011Fcpu/32100Fcpu/16101Fcpu/8110Fcpu/4111Fcpu/2注:在RTC 模式下,T0RATE 的设置是无效的。5) 中断SONIX单片机是当今世界上很有影响力的精简指令集微控器,具有丰富的中断功能。不过它们也存在一定的局限性,例如中断矢量只有一个,并且各个中断源之间也没有优先级别之分,不具备中断屏蔽功能。不同的芯片具有不同的中断。SN8P2501B单片机具有3个中断源:2个部中断源(定时器T0、定时/计数器TC0)、1个外部中断源(INT0/P00)。对于SON

20、IX单片机来说,中断源的要否会得到响应,受允许中断寄存器INTIEN中各位的控制。在全局中断控制位GIE为1时,才能使能中断请求,当中断源同时产生中断时,要靠部的查询逻辑来确定响应的次序,不同的中断源其中断地址均为0008H。一次中断活动的全过程如图3-4所示。图3-4 中断处理流程图在图中,(1),(2),(3)和(9)是由硬件自动实现的,而其它的阶段是由用户软件完成的。有中断请求发生并被响应后,程序转至0008H 执行中断子程序。响应中断之前,必须保存ACC、PFLAG 的容。芯片提供PUSH 和POP 指令进行入栈保存和出栈恢复,从而避免中断结束后可能的程序运行错误。PUSH/POP指令

21、仅对ACC和PFLAG作中断保护,而不包括NT0和NPD。某些芯片PUSH/POP只能保护PFLAG寄存器的值,ACC的值需要用户自己保存,此芯片中PUSH/POP可直接对ACC和PFLAG进行保护。PUSH/POP 缓存器是唯一的且仅有一层,因此只能出现在中断保护现场中。6) SN8P2501B单片机编译选项表利用SN8P2501B芯片作为微控制器,在编译过程中需要注意对应的选项表,见表3-3。表3-3 SN8P2501B单片机编译选项表编译选项配置项目功能说明Noise_FilterEnable开启杂讯滤波功能,Fcpu = Fosc/4Fosc/16Disable关闭杂讯滤波功能,Fcp

22、u = Fosc/1Fosc/16FcpuFhosc/1指令周期 = 1个时钟周期,必须关闭杂讯滤波功能;IHRC_16M 和IHRC_RTC 模式下,不支持Fosc/1Fhosc/2指令周期 = 2 个时钟周期,必须关闭杂讯滤波功能;IHRC_16M 和IHRC_RTC 模式下,不支持Fosc/2Fhosc/4指令周期 = 4 个时钟周期Fhosc/8指令周期 = 8 个时钟周期Fhosc/16指令周期 = 16 个时钟周期High_ClkIHRC_16M高速时钟采用部16MHz RC 振荡电路,XIN/XOUT(P1.3/P1.2)作为普通的I/O 引脚;IHRC_16M 模式下,Fcpu

23、 取值在Fosc/4Fosc/16 之间IHRC_RTC高速时钟采用部16MHz RC 振荡电路,具有RTC 功能(0.5sec),XIN/XOUT(P1.3/P1.2)作为普通的I/O 引脚;IHRC_RTC 模式下,Fcpu 取值在Fosc/4Fosc/16 之间RC外部高速时钟振荡器采用廉价的RC 振荡电路,XOUT(P1.2)为普通的I/O 引脚32K Xtal外部高速时钟振荡器采用低频、省电晶体/瓷振荡器(如32.768KHz)12M Xtal外部高速时钟振荡器采用高频晶体/瓷振荡器(如10MHz12MHz)4M Xtal外部高速时钟振荡器采用标准晶体/瓷振荡器(如1M10MHz)W

24、atch_DogAlways_On始终开启看门狗定时器,即使在睡眠模式和绿色模式下也处于开启状态Enable开启看门狗定时器,但在睡眠模式和绿色模式下关闭Disable关闭看门狗定时器Reset_PinReset使能外部复位引脚P11P1.1 为单向输入引脚,无上拉电阻LVDLVD_LVDD 低于2.0V 时,LVD 复位系统;LVD_MVDD 低于2.0V 时,LVD 复位系统;PFLAG 寄存器的LVD24 位作为2.4V 低电压监测器LVD_HVDD 低于2.4V 时,LVD 复位系统;PFLAG 寄存器的LVD36 位作为3.6V 低电压监测器SecurityEnableROM 代码加

25、密DisableROM 代码不加密注:a) 在干扰严重的情况下,建议开启杂讯滤波功能,此时Fcpu = Fosc/4 Fosc/16,并将Watch_Dog 设置为“Always_On”;b) 如果用户设置看门狗为“Always_On”,编译器将自动开启看门狗定时器;c) 编译选项Fcpu 仅针对高速时钟,在低速模式下Fcpu = FILRC/4;d) 在IHRC_16M 和IHRC_RTC 模式下,Fcpu = Fosc/4 Fosc/16。3.1.3 单片机复位电路SN8P2501B 有以下几种复位方式:a) 上电复位;b) 看门狗复位;c) 掉电复位;d) 外部复位(仅在外部复位引脚处于

26、使能状态)。上述任一种复位发生时,所有的系统寄存器恢复默认状态,程序停止运行,同时程序计数器PC 清零。复位结束后,系统从向量0000H 处重新开始运行。PFLAG 寄存器的NT0 和NPD 两个标志位能够给出系统复位状态的信息。用户可以编程控制NT0 和NPD,从而控制系统的运行路径。表3-4 PFLAG寄存器086HBit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0PFLAGNT0NPDLVD36LVD24-CDCZ读/写R/WR/WRR-R/WR/WR/W复位后XX00-000NT0、NPD:复位状态标志表3-5 复位状态标志复位情况NT0NPD复位情况说明00看门狗复位看

27、门狗溢出01保留-10上电及LVD复位电源电压低于LVD检测值11外部复位外部复位引脚检测到低电平 任何一种复位情况都需要一定的响应时间,系统提供完善的复位流程以保证复位动作的顺利进行。对于不同类型的振荡器,完成复位所需要的时间也不同。因此,VDD 的上升速度和不同晶振的起振时间都不固定。RC 振荡器的起振时间最短,晶体振荡器的起振时间则较长。在使用的过程中,应注意考虑主机对上电复位时间的要求。图3-5为各种复位方式的响应。图3-5 各种复位电路的响应在这里所用的复位为外部复位。外部复位功能由编译选项“Reset_Pin”控制。将该编译选项置为“Reset”,可使能外部复位功能。外部复位引脚为

28、施密特触发结构,低电平有效。复位引脚处于高电平时,系统正常运行。当复位引脚输入低电平信号时,系统复位。外部复位操作在上电和正常工作模式时有效。需要注意的是,在系统上电完成后,外部复位引脚必须输入高电平,否则系统将一直保持在复位状态。外部复位的时序如下:a) 外部复位(当且仅当外部复位引脚为使能状态):系统检测复位引脚的状态,如果复位引脚不为高电平,则系统会一直保持在复位状态,直到外部复位结束;b) 系统初始化:初始化所有的系统寄存器;c) 振荡器开始工作:振荡器开始提供系统时钟;d) 执行程序:上电结束,程序开始运行。外部复位可以在上电过程中使系统复位。良好的外部复位电路可以保护系统以免进入未

29、知的工作状态。 外部复位电路有多种复位方式,如RC复位电路、二极管及RC复位电路等。1) RC复位电路如图3-6 图3-6 RC复位电路图3-7为一个由电阻R1 和电容C1 组成的基本RC 复位电路,它在系统上电的过程中能够为复位引脚提供一个缓慢上升的复位信号。这个复位信号的上升速度低于VDD 的上电速度,为系统提供合理的复位时序,当复位引脚检测到高电平时,系统复位结束,进入正常工作状态。2) 二极管及RC复位电路 如图3-7图3-7 二极管及RC复位电路 R1和C1同样是为复位引脚提供输入信号。对于电源异常情况,二极管正向导通使C1 快速放电并与VDD保持一致,避免复位引脚持续高电平、系统无

30、常复位。注:“基本RC 复位电路”和“二极管及RC 复位电路”中的电阻R2 都是必不可少的限流电阻,以避免复位引脚ESD(Electrostatic Discharge)或EOS(Electrical Over-stress)击穿 。本设计电路比较简单,对复位响应时间没有太大的要求,考虑成本及电路规划的基础上采用RC复位电路作为此MCU的复位电路。3.1.4 单片机晶振电路对于本芯片来说,主要有两种晶振来源:外部石英/瓷振荡器和部高速RC振荡器。1) 外部石英/瓷振荡器其电路图如图3-8图3-8 外部石英/瓷振荡器 图3-9中,XIN/XOUT/VSS 引脚与石英/瓷振荡器以及电容C之间的距离越近越好。2) 部高速RC振荡器 编译选项“IHRC_16M”和“IHRC_RTC”控制单片机的置RC高速时钟(16MHz)。若选择“IHRC_16M”,则置16MHz RC振荡器作为系统时钟源,XIN和XOUT引脚作为通用I/O 口。若选择“IHRC_RTC”,则系统时钟来自置16MHz RC振荡器,同时XIN 和XOUT 引脚与实时时钟源(RTC)32768HZ石

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1