基于单片机的人体感应智能创意时钟设计
2017-07-25刘峰岳茜王北辰华北理工大学
刘峰 岳茜 王北辰 华北理工大学
基于单片机的人体感应智能创意时钟设计
刘峰 岳茜 王北辰 华北理工大学
本设计以STC15F2K60S2单片机为处理器,以热释电器件HC-SR501人体红外感应模块,蜂鸣器模块,18650型锂电池及LED发光二极管等器件,设计了一个超低功耗,具备人体红外感应带防盗报警功能的创意时钟。本设计从低功耗,高稳定性,超长工作时间,高灵敏度出发,以硬件电路设计以及优化为主,整体设计思路可供单片机开发人员参考或借鉴。
单片机应用 人体红外检测 STC15F2K60S2 创意时钟 防盗报警
随着技术的进步,电子产品在向模块化,智能化发展。传统的机械时钟的未免显得单调,一款只需用17个LED为显示界面,以单片机(MCU)为控制核心,具备人体红外感应功能的智能化创意时钟将会以其新颖的设计吸引人们注意。
1 主要功能如下
①时间显示模式下:当热释电器件(HC-SR501人体红外感应模块)检测到人体活动时,LED发光并以特定格式显示时间,当有人在探测区域内,LED一直点亮。当人离开探测区域后,LED持续点亮20秒,然后熄灭。
②防盗报警模式:此时LED保持熄灭状态,当热释电器件检测到人体活动时,则判断为有人进入,单片机发出信号至蜂鸣器,使蜂鸣器发出警告提醒用户。
③闹钟模式:当达到用户预设时间时,蜂鸣器发出警报,LED开始发光,持续1分钟,期间若有任何按键被按下或有人进入红外感应区域,闹钟关闭;若无人关闭闹钟,将在10分钟后再次发出警报;若3次警报后,无任何关闭闹钟动作,判断为无人状态,将不再发出警报。
④按键修改功能:通过一个双掷开关控制时间显示模式或防盗报警模式,通过4个外部物理按键修改显示时间以及闹钟预设时间,设置报警蜂鸣器的报警频率和设置红外感应延迟时间。
2 硬件设计及控制方案
本设计只用了17个LED发光二极管,因此采用直接通过单片机的I/O的方案来控制LED是否发光。设计原理框图如图1:
图1 设计原理框架图
①控制器件种类繁多,选择一款性价比最高的处理器件尤为重要。本设计选择STC15F2K60S2作为控制芯片,本芯片为51增强型芯片,较传统89C51型单片机不仅速度快12倍,其内部自带11.0592Mhz的石英晶振,并且具有更多IO口、定时器,更强的保密性,内部自带有61KB内存,可直接将数据保存带单片机内部。主芯片仅需在VCC引脚加上+5V电压即可开始工作,无需复杂外围电路,减少了硬件电路设计,并提高了系统稳定性,性价比极高。
图2 核心控制电路图
硬件外围控制电路如图2所示,该控制电路在VCC引脚和GND引脚接上了2个滤波电容C1、C2,增强系统抗干扰能力。
②电源是保证整个系统正常工作的基础,对于有报警功能的设备,需长时间工作,并且不能因停电等外部原因而使设计功能瘫痪,系统供电部分采用2节18650型锂电池并联后升压至5V,给系统供电。升压芯片可采用TI公司的TPS40210电源芯片做一个boost升压电路。但考虑到成本和硬件系统简洁度,本设计直接采用了市面上现有的锂电池充放电模块搭配锂电池构建稳定的5V电源供电系统。
③人体红外探测模块,本设计采用了热释电器件HC-SR501人体感应模块,一款基于红外线技术的自动控制模块,灵敏度高,可靠性强,超低电压工作模式。实物如图3。
技术特点:
1)全自动感应:当有人进入其感应范围时输入高电平,人离开感应范围则自动延时关闭高电平,输出低电平。
2)光敏控制(可选):模块预留有位置,可设置光敏控制,白天或光线强时不感应。光敏控为可选功能。
图3 HC-SR501模块实物图
3)两种触发方式:L不可重复,H可重复,可跳线选择,默认为H,本系统使用默认。不可重复触发方式:即感应输出高电平后,延时时间一结束,输出将自动从高电平变为低电平。可重复触发方式:即感应输出高电平后,在延时时间段内,如果有人体在其感应范围内活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平(感应模块检测到人体的每一次活动后会自动顺延一个延时时间段,并且以最后一次活动的时间为延时时间的起始点)。
4)具有感应封锁时间(默认设置:0.2s):感应模块在每一次感应输出后(高电平变为低电平),可以设置一个封锁时间,在此时间段内感应器不接收任何感应信号。此功能实现感应输出时间和封锁时间两者的间隔工作,可应用于间隔探测产品。同时,此功能可有效抑制负载切换过程中产生的各种干扰。
5)工作电压范围宽:默认工作电压为DC5~20V。
6)微功耗:静态电流65μA,特别适合干电池供电的电器产品。
7)输出高电平信号:方便与各类电路实现对接。
图4 HC-SR501 工作电路
图5 蜂鸣器模块
由该模块工作特点可知,当有人进入感应范围时输出为高电平,此时MCU检测到的电平为高,执行不同工作状态下所对应的功能。图4是HC-SR501的工作电路,因实测该模块产生的高电压为3V左右,不能为单片机提供稳定的高电平信号,因此改进了电路,将HC-SR501模块的输出引脚接到NPN三极管的基极,发射极接单片机P2.2口,集电极接电源,当检测到有人进入感应范围时,产生一个高电平,使三极管工作在饱和区。而在P2.2口将会接收到稳定的高电平。此优化明显提高了系统稳定性。
④报警电路:本设计报警电路由一个蜂鸣器组成,当蜂鸣器接收到报警信号即发出响声开始报警,此信号可来源于防盗报警工作模式和闹钟工作模式当蜂鸣器模块的I/O口接收到高电平即可发声开始报警。工作电路如图6所示,单片机P2.3口接NPN三极管的基极,单片机P2.3口发出高电平信号,三极管工作在饱和区,使蜂鸣器工作。三极管在电路的作用是让系统响应度更稳定。
图6 蜂鸣器工作电路
图7 按键部分电路图
图8 LED显示电路
⑤外部物理按键:为了实现修改时间等功能,本设计引入了4个外部按键,一个双掷开关。如图7所示,切换双掷开关S0,可做到防盗报警模式和时间显示模式的切换。S0切换到1时,单片机P4.5口为高电平。S0切换至3时,P4.5口为低电平。由此可以判断电平信号,得知设备的工作状态。S2、S3、S4、S5、4个按键为功能按键,通过检测与按键相连的单片机IO口电平状态,即可判断按键是否按下,并执行相对应的功能。
S2:时间设置、S3:加、S4:减、S5:闹钟设置。第一次按下S2,设置时钟,按下S3,S4可对时钟修改;再次按下S2,进入分钟修改,此时按下S3,S4可对分钟修改;再次按下S2,设置完成,返回正常工作模式。闹钟设置按S5,其他操作可参考时钟修改操作。
⑥LED显示电路:由LED以特定格式发光显示时间。该部分电路如图8所示,电路中一共有17个LED发光二极管,外圈(LED0-LED11)12个发光二极管按传统时钟页面分布中间4个(LED12-LED15)4个发光二级管位于传统时钟页面中间偏上位置,LED16位于传统时钟页面中间偏下位置。17个LED发光二极管以共阳方式和单片机连接,即阴极与单片机IO口相连,每个LED的阳极与一个330欧姆的限流电阻串联后接电源正极。通过单片机对应IO口输出低电平,即可点亮对应的LED。
时钟显示时,LED0-LED11代表时钟H的LED常亮,代表分钟的LED按秒闪烁,对应分钟位置闪烁的LED的分钟的数学表达式为Min=(H×5)+N;N为(LED12-LED15)4个LED点亮的个数。LED16亮代表下午PM,熄灭代表AM。
举例为:若现在时间为下午3点28分。则对应为LED3常亮,LED5闪烁,LED12、LED13、LED14、LED16(下午)常亮。
对应的闹钟显示同理,在此不再赘述。
3 软件设计思路及功耗分析
STC15F2K60S2单片机的开发语言为C语言或汇编语言,本设计方案选用的编程语言为C语言,代码量也较多,不一一分析代码。基于硬件而实现对应功能的程序代码是灵活的,在此只叙述在实际调试时的编程思路。
显示部分,LED电路为共阳极接法,所以点亮对应LED只需将与之相连接的IO口置0即可。每次显示切换时,需要注意到时,分,秒显示格式。在充分利用硬件资源的条件下,以单片机定时器0中断,通过配置定时器,编写精确的时钟程序。
按键部分,通过键盘检测程序,以定时器中断,编写键盘扫描程序。按键需要延时消抖和松手检测的运用,使按键稳定可靠。按键修改时间时,可以使LED不同的显示方式而进入不同的修改模式,方便使用和观察。
报警部分,通过给蜂鸣器不同的通电时间,可以使蜂鸣器发出不同频率的声音。
人体红外感应部分,通过电平判断有无人进入感应范围,决定系统工作状态。若有人,则进入时间显示或者报警工作状态。无人在感应区内则进入待机状态。
功耗分析:该系统中的17个LED为最大功率器件。每个LED通过的电流为(5-1.7)/330=10mA;每一个点亮二极管通过电流为10mA,消耗功率为17mW,每一个限流电阻消耗功率为33mW。单片机工作电流实测为4mA,待机功率为20mW。因为显示功能为有人进入感应区域才会点亮。故实际功耗将很低,HC-SR501待机功率可忽略不计。通过2块18650电池供电,可维持数周时间。
4 设计总结及用途
本设计所有部分已通过实际测试,主要可用作商店或家庭作为防盗报警时钟,因为其对人体红外检测的特性及高灵敏度,可很好胜任防盗报警功能。根据是否有人在感应区域决定显示的设计很大程度上降低了功耗。而在智能家庭的大环境下,本设计预留了2个串口通信端口,使其在硬件上具备受上位机操作的基础。可以在此设计的基础上通过进一步的软件开发使其融入智能家庭系统。而直接接上蓝牙模块加上写入对应程序即可实现在手机上发送十六进制代码进行时间修改,模式切换功能。本设计以其性价比高,低功耗,稳定性能,适配智能家庭系统,具有很强的实用性。
[1]王东,莫先.基于STM32和HC-SR501智能家居的智能照明系统设计[J].重庆理工大学学报(自然科学),2016,(06):135-142
[2]王静伟,姜华.基于STC15F2K60S2低功耗工程车辆运输监控应用设计[J].电子世界,2014,(16):14-15
[3]吴秋宁,邵建龙,吕英英,张志宏,肖文博.提高单片机测控系统的抗干扰能力的研究[J].电子测量技术,2010,(02):63-66