摘要:随着科技的不断发展,各类台灯产品也随着走向智能化。该设计介绍一种基于STC89C52单片机的多功能智能台灯设计,具有自适应调光、自动/手动调节切换、坐姿纠正提示、定时提醒等功能,并能实现“人来开灯、人走关灯”的智能控制,使台灯的使用更加智能与人性化,并实现环保节能的效果。该设计给出了详细的方案、硬件设计及软件设计流程,对系统的原理及设计过程进行了深入解析,并通过Proteus与Keil软件的仿真调试分析及实物调试分析,验证了系统的正确性与可靠性。
关键词:智能台灯;单片机;自动调光;坐姿纠正;定时提醒
中图分类号:TP274 文献标识码:A
文章编号:1009-3044(2020)18-0198-02
开放科学(资源服务)标识码(OSID):
1 背景
随着社会的进步和科技的发展,人们对照明的追求从单一的追求亮度提高到对灯光的舒适度、对视力的影响、功能多样化、智能化等方面的转变。台灯在我们生活中使用广泛,但是普通台灯由于光线单一、缺乏智能按钮开关操作,无法实现人们对台灯的智能化需求。特别是对青少年而言,由于学习需要较长用眼时间,青少年近视比例也越来越高,更需要一款可以保护青少年视力的多功能智能台灯。本文介绍的这款智能台灯,用户可以主动调节亮度、自动开关灯,且能及时提醒用户纠正坐姿、保护视力,并能实现手动自动切换控制。
2 设计方案
本智能台灯系统的总体框架如图1所示,主要由单片机、时钟电路、复位电路、人体感应输入模块、按键输入模块、光敏检测及其模数转换电路、LED台灯电路、指示灯电路等部分组成。
智能台灯的系统功能主要包括:1)人体感应自动开关灯。当人靠近台灯,即距离在40cm-llOcm之间时台灯会亮;当人离开1分钟后台灯自动熄灭。2)自适应亮度调节。能自动根据环境光线的强弱变化进行亮度调节,达到环保节能效果。3)坐姿纠正功能。当人脸距离桌面过进时,进行声光报警,提醒用户纠正坐姿,从而保护使用者的视力。4)定时提醒功能。定时模块提醒用户,当持续用眼一小时则开启学习时间提醒功能,进行报警提示。
3 硬件设计
根据系统设计方案,对硬件电路的具体设计如下:
1)单片机最小系统模块:选用STC89C52作为主控制芯片,单片机最小系统由STC89CR52单片机、时钟电路、按键复位电路及电源电路组成。
2)人体感应模块:人体感应模块采用的核心器件为热释电红外线传感器HC-SR501。它能以非接触形式检测出人体辐射的红外线能量的变化,将其转换成电压信号输并放大,便可驱动各类控制电路。HC-SR501采用超低电压工作模式,可靠性强,灵敏度高。该模块只引出3个引脚,其中第1、3脚分别连接vcc和GND。2脚接单片机的1/0口引脚,当检测到无人时输出低电平,当有人出现检测范围内则输出高电平,该模块的3引脚接至单片机P2.3输入。
3)光敏检测及模数转换模块:本系统的传感器采用光敏电阻,光敏电阻内部导电率会随光照强度而发生改变。当光线强度变大时,导电率也随之变大,使电阻值变小,输出电压也将线性增大。电路中,采样到的电压值u=VCCxLDR/(RI+LDR),经过AD转换器ADC0832的CH1通道进行A/D转换,转换结果经单片机读取后得到对应的电压值,并进行PWM控制台灯的亮度。
4)红外测距模块:本设计利用红外模块GP2D12对距离进行检测。当检测到人体距离红外探头距离过近时,开启声音提醒功能,避免坐姿不正使因眼睛距离桌面过近而导致的近视。该红外模块集发射与接收于一体的光電传感器,检测距范围为lOcm-80cm,检测距离可以根据要求进行调节,且受可见光干扰小,易于安装,使用方便。该传感器有三根导线,其中VCC和GND为电源线及地线,VO输出端接至单片机I/O引脚P2.0作为数据输入。当距离在范围之内时该引脚输出高电平,过近时输出低电平,根据该引脚电平即可判断使用者是否距离桌面过近。报警距离的设置可通过传感器上的螺丝进行距离调节。
5)按键输入电路:系统有三个功能按键,分别为手动/自动切换键实现手动与自动模式的切换,接至P1.0引脚;亮度加键为手动模式下亮度加一个等级,接至P1.1引脚,亮度减键为亮度减一个等级,接至P1.2引脚。
6)照明模块及指示灯模块:照明模块采用6个LED灯进行共阳极并联,单片机从P2.6输出并通过PNP型三极管驱动LED灯点亮。指示灯模块用于手动功能与自动功能切换的指示,从P1.3引脚输出经过限流电阻驱动发光二极管出点亮。
7)报警模块:蜂鸣器报警模块采用PNP型三极管的开关管功能来控制蜂鸣器发音,蜂鸣器采用有源蜂鸣器,其内部设置有震荡电路,单片机P3.0引脚只要输出低电平即可控制蜂鸣器的发声。
4 软件设计
软件设计思路及主流程设计。软件设计采用C语言模块化程序设计方法,根据系统各功能分析,得到主程序的控制流程如图3所示,并分析主程序中各子程序功能。分析如下:上电后,系统初始化,进入亮度自动调节模式,可以通过按键K1进行自动/手动模式切换。当模式标志Mode=0时,工作在模式手动模式下,执行手动控制子程序;当Mode=1时,工作在自动调节模式下,执行亮度自动调节子程序,并进行报警判断。在报警判断子程序中,可实现根据距离检测传感器数据,若离桌面具体过近,或者光线亮度过高,或者设定时间到,则进行声光报警提示。在手动控制子程序中,当按下K2按键时,若亮度等级不是最低级,则亮度等级减一,否则保持最低亮度等级不变;当按下K3键时,若亮度等级不是最高级,则亮度等级加一,否则保持亮度等级最高。自动亮度调节子程序是设计的关键子程序,其流程如图4所示。当Mode=l时,工作在自动模式下:若120秒内检测有人,则计时清0,并执行获取光照强度值子函数,计算出光照强度值,根据光照强度与亮度区间比较,获得亮度等级;若120秒内检测不到人,则亮度等级最低。
除了主程序中、手动控制子程序、自动亮度调节子程序、报警判断子程序外,还有光照强度读取子程序、定时器TO中断子程序等。
5 系统调试
在系统设计后,进行了Proteus和Keil的软件仿真调试,最后进行系统实物调试。通电后系统初始化,当有人接近多功能台灯时,系统会自动检测到有人体活动,同时启动自动工作模式。当外界光线亮度低于上限值且检测到附近有人体活动时,台灯处于自动感应模式;当没有人体活动或者人离开2分钟以上时,台灯自动熄灭。此外,对台灯亮10个亮度等级测试、按键手动功能调节、功能报警进行了若干次测试,功能均正常,实现证明了智能台灯系统设计的正确性与可靠性。
6 结束语
针对青少年视力保护问题,对传统台灯的单一模式进行改造,设计出以STC89C52单片机为核心的多功能智能台灯。该台灯具有纠正坐姿、自动亮度调节、用眼时间提醒、自动手动亮度调节、声光报警等多种功能,系统结构简洁、性价比高、功能多样、控制灵活,实现了台灯的智能化控制。今后可在此基础上,结合物联网手机APP控制、蓝牙技术、语音控制等,可进一步实现台灯的智能化控制和人性化设计。
参考文献:
[1]陈明照,刘雨阳,徐清,等,基于stm32的智能台灯[J].中国高新区,2019(9): 23,30.
[2]陈雪娇,潘思儒,易威,等.基于单片机的智能台灯设计[J].电子测试,2020(4): 34-36.
[3]马国强,辛永田,连梦想,等.一种智能台灯的设计与开发[J].物联网技术,2018,8(1): 93-95.
[4]袁博.基于STM32的语音控制与坐姿检测智能台灯原型系统[J].实验室研究与探索,2019,38(3): 56-60.
【通联编辑:谢媛媛】
作者简介:李萍(1976-),女,讲师,硕士,主要从事嵌入式系统开发应用的教学与科研工作。