APP下载

基于单片机的视力保护器设计

2015-01-25王菊霞苏变玲

电子设计工程 2015年3期
关键词:光敏电阻蜂鸣器高电平

何 冰,王菊霞,苏变玲

(渭南师范学院 物理与电气工程学院,陕西 渭南 714000)

为了保护青少年的视力,现如今越来越多的公司都在研发生产各种视力保护产品,国内主要有眼保姆,坐姿矫正器和各种护眼灯;国外有法国艾斯·布鲁斯研发的光明天使博士镜,以及美国眼科专家威廉贝茨研发的阿瞳二代产品。但这些产品功能单一,不能满足消费者的个性化需求。针对这一问题,本文将单片机与视力保护相结合,利用单片机芯片的智能处理功能,结合超声波测距原理,光敏电阻随光强变化的特点,单片机定时器T0,T1的工作原理,以及LCD1602液晶显示器的使用方法,设计了一个多功能视力保护器。该设计的技术要求是当学生的面部与书本或电脑的距离小于30 cm时,蜂鸣器产生声光报警,提醒学生注意坐姿;当学生学习时间超过45分钟时,蜂鸣器产生声光报警,提醒学生休息片刻;当光线过强或过弱时,蜂鸣器产生声光报警,提醒学生注意学习环境;能够分辨是什么原因引起的声光报警;并具有设置功能,能够自行设定相应的数据。

1 总体设计

1.1 系统设计方案

本系统采用STC89C52RC DPIP40单片机作为核心控制单元,通过HC-SR04超声波测距模块测量人的面部到书本的距离,当测得距离小于30 cm或设定距离时产生声光报警。利用光敏电阻的光电导效应采集光线模拟信号,并通过ADC0832模数转换器转换为数字信号,对数字信号进行光强等级处理并用1602液晶显示器显示光的强弱,当光太强或太弱时产生报警。通过单片机内部定时器T1对学习时间进行计时,当学习时间超过45分钟或设定值时产生报警,其中报警电路由一个PNP型三极管驱动。系统总体设计方框图如图1所示。

1.2 系统设计的基本步骤

本设计的主要步骤如下:

1)认真分析视力保护器的技术要求。

2)确定硬件设备,选好器件的型号。

图1 系统设计方框图Fig.1 The diagram of designed system

3)画电路原理图。

4)根据硬件电路及各芯片的时序编写程序。

5)将程序输入单片机进行软件测试,查找错误,使系统程序更加完善。

6)根据电路原理图及相应元器件的焊接方法焊接硬件电路。

7)将程序写进单片机进行硬件调试。

2 硬件设计

STC89C52RCPDIP封装单片机由宏晶科技推出,其指令代码完全兼容传统 8051单片机,是一种增强型8051单片机。工作电压为5.5~3.3 V(5 V单片机),有8 K字节的用户应用程序空间,片上集成512字节RAM,内部带2 K EEPROM的存储空间。通过串口就可直接下载程序,且处理速度快,抗干扰能力强,功耗低,价格便宜,所以本设计采用STC89C52RC作为控制电路的主选芯片。

2.1 主控模块设计

该主控模块含有时钟电路、系统复位电路、电源电路。其中时钟电路由单片机内部反相放大器的输入引脚跨接在晶振两端和两个微调电容组成,构成自激励振荡器,用来产生单片机工作时必须的时钟信号。时钟电路中电容选用20 pF,晶振选用12 MHz,因为频率越高单片机的速度越快。系统采用按键复位的工作方式,其复位电路由复位按键、10μF电容和10 kΩ电阻组成,单片机的复位时间由复位电路的极性电容决定,极性电容一般采用10~30μF。单片机的时钟工作以后,只要RST引脚上出现两个机器周期以上的高电平,系统就复位[1]。

2.2 蜂鸣器报警电路模块设计

由于电磁式蜂鸣器需要较低的电压就能发出很高分贝的声音,本设计选用电磁式蜂鸣器,其发声的原理为电流通过电磁线圈产生磁场,进而驱动振动膜片发声。由于单片机I/O引脚输出电流的驱动能力有限,所以采用PNP型三极管(放大作用)驱动蜂鸣器。当P1.3输出高电平“1”时,三极管Q1截止,没有电流流过线圈,蜂鸣器不发声,当P1.3输出低电平“0”时,三极管Q1导通[2],电流流过蜂鸣器线圈,蜂鸣器发声。因为发光二极管和蜂鸣器并联,所以声光报警是同时进行的。蜂鸣器报警电路图如图2所示。

2.3 光敏电阻测光电路模块设计

2.3.1 光敏电阻

图2 蜂鸣器报警电路图Fig.2 The diagram of buzzer alarm circuit

光敏电阻采用硅,锗,硫化镉,硒化铅等半导体材料制成,它的工作区在一个很薄的光敏层上,光敏层具有电阻特性,两端由金属电极引出。无光照时,光敏电阻的阻值很大,当光线照到光敏层上,半导体材料中的载流子将迅速增加,阻值下降,光线越强,阻值越低。光敏电阻通常做成片状结构,以便吸收更多光能。光敏电阻具有灵敏度高,测光范围广的优点。光敏电阻属于有源器件,工作时必须加电源[3]。

2.3.2 光敏电阻测光电路

光敏电阻测光电路工作原理:当光线发生变化时,由于光敏电阻内部载流子发生变化,所以流过光敏电阻的电流发生变化,进而R6两端的分压产生变化,该模拟电压信号经过ADC0832模数转换器采集后便可得到相应的数字信号,再经过单片机处理后,在LCD液晶模块上显示光的强弱百分比。光敏电阻测光电路接线图如图3所示。

图3 光敏电阻测光电路接线图Fig.3 The diagram of photosensitive resistance metering circuit

2.4 电源接口电路模块设计

本设计采用3节1.5 V电池串联供电,电池盒和自锁开关串联可以方便电路的通断。电源接口电路接线图如图 4所示。

图4 电源接口电路接线图Fig.4 The diagram of power interface circuit

2.5 按键电路模块设计

本设计用按键设置学习时间、光线强弱界限以及报警距离。按键电路接线图如图5所示。其中S4为设置键,S3为开始学习键和设定值的加键,S2为时间清零键和设定值的减键。当某键按下时,低电平有效。

图5 按键电路接线图Fig.5 The diagram of key circuit

2.6 超声波测距模块设计

2.6.1 超声波简介

超声波是高于20 kHz的机械波,它在不同的介质中传播速度不同,在通过两种不同介质时,在介质表面会发生反射、折射现象,超声波在传播过程中有一定的衰减[6]。超声波在空气中衰减较快,频率越高,衰减越快,故在空气中传播时采用频率较低的超声波40 kHz。

2.6.2 超声波测距原理

本设计利用超声波遇到障碍物发生反射的特性,采用往返时间检测的方法进行测距,超声波测距原理图如图6所示。

图6 超声波测距原理图Fig.6 The diagram of ultrasonic ranging

测距时,超声波发射器向某一方向发射超声波,超声波在空气中传播遇到障碍物就立即反射回来,计算出超声波在空气中传播的往返时间t,超声波在空气中传播的速度为:340 m/s。利用如下公式(1)便可知超声波探头距障碍物的距离S。

2.6.3 HC-SRO4超声波测距模块

本设计采用HC-SR04超声波测距模块测量人的脸部离书籍的距离。该模块测距范围为2~400 cm,测距精度高达3 mm;模块由超声波发射器,超声波接收器,控制电路组成,其中发射器发射超声波信号用来作为距离的采样信号,接收器接收所发射的信号。

HC-SR04超声波测距模块采用I/O口TIRG触发测距,给TIRG最少10 s的高电平,这时模块自动发送8个40 kHz的方波,自动检测是否有信号返回,如果有信号返回,则通过I/O口ECHO输出一个高电平,高电平持续的时间便是超声波从发射到返回的时间[7],测试距离=(高电平时间*340 m/s)/2。HC-SR04超声波测距模块的引脚图如图7所示。其中VCC接电源,GND接地,TIRG为触发控制信号输入端接P3.3,ECHO为回响信号输出端接P3.2。

图7 HC-RS04超声波测距模块引脚图Fig.7 The diagram of ultrasonic ranging

3 软件设计

本设计使用的编程语言为C语言,根据系统要实现的功能,先写出主程序,再利用硬件电路功能及各芯片、各模块的工作时序写出子程序,最后在主程序中进行调用,这种方法简单,主程序语句少,且易于软件设计和查错,还能很好的利用硬件电路,分模块进行调试。

3.1 主程序流程图

系统主程序流程图如图8所示。

图8 系统主程序流程图Fig.8 The chart of main program system

3.2 部分子程序流程图

T0用于测超声波的往返时间,工作于工作方式1,对单片机的机器周期进行计数。定时器的定时时间与系统的时钟频率有关,由于一个机器周期等于12个时钟周期,晶振为12 MHz, 则计数周期为:T=12×1/(12×106)=1 μs。 当超声波ECHO端为高电平时开始计时。超声波测距子程序流程图如图9所示。

图9 超声波测距子程序流程图Fig.9 The chart of ultrasonic ranging

学习时间由定时器T1定时,其工作于工作方式1,初值为 TH1=0X3C;TL1=0XB0;50 ms 中 断 一 次 ,value 加 1, 当value值加到20时,即为1 s,秒钟加1;当秒加到60时,分钟加1;当分加到60时,时加1;当时加到24时,从新开始。报警子程序流程图如图10所示。

图10 报警子程序流程图Fig.10 The chart of alarm program

4 系统调试

软件测试:在Keil uvision4中编写程序,进行调试,修改语法错误。

硬件测试:焊接电路之前,先用万用表测得各元器件的好坏,分清极性电容蜂鸣器、发光二极管的正负以及PNP型三极管的三个级。在焊接电路板时,从单片机最小系统开始,分模块,逐个进行焊接并随时用万用表的“二极管”挡测试电路是否导通[8]。焊接完成后,利用STC_ISP_V479下载软件将编好程序烧进单片机芯片中,并进行功能检测。

5 结论

经过软硬件的设计与调试,系统达到了设计要求,当学生开始学习时:若光线低于设定的弱光或光线高于设定的强光时,报警电路产生声光报警,提醒学生注意学习环境;若超声波测到的距离小于30 cm或设定值时,报警电路产生声光报警,提醒学生调节眼睛到书本的距离。当学习时间到达设定值时,产生10次报警,每次3下,提醒学生注意休息。由于超声波在空气中的传播速度与温度有关,本设计没有考虑温度对超声波传播速度的影响,测量距离还有一定的误差,但误差很小,还可通过温度传感器DS18B20进一步完善,使其测量更加精确。

[1]谢伟成,杨加国.单片机原理与应用及C51程序设计[M].北京:清华大学出版社,2009.

[2]康华光.电子技术基础模拟部分[M].北京:高等教育出版社,2006.

[3]孙余凯,吴鸣山,项绮明.传感器应用电路300例[M].北京:电子工业出版社,2008.

[4]梁明亮,韦成杰.单片机对串行A/D转换器ADC0832的C51编程[J].郑州铁路职业技术学院学报,2009,21(1):36-37.LIANG Ming-liang,WEI Cheng-jie.The MCU on serial ADC0832C51 programming[J].Journal of Zhengzhou Railway Vocational and Technical College,2009,21(1):36-37.

[5]张亚林.基于C52控制的ADC0832应用详解[J].数控技术与应用,2013(3):5-6.ZHANGYalin.Application of ADC0832 based on C52[J].Numerical Control Technology and Application,2013(3):5-6.

[6]郁有文,常健,程继红.传感器原理及工程应用[M].西安:西安电子科技大学出版社,2008.

[7]李军,申俊泽.超声波测距模块HC-SR04的超声波测距仪设计[J].单片机与嵌入式系统应用,2011,11(10):77-78.LI Jun,SHEN Jun-ze.Design of ultrasonic range finder ultrasonic ranging module HC-SR04[J].Microcontroller and Embedded System Application,2011,11(10):77-78.

[8]门宏.看图识用万用表[M].北京:电子工业出版社,2011.

猜你喜欢

光敏电阻蜂鸣器高电平
电动自行车产品车速提示音检测现状和整改技术研究(2)
一种基于FPGA的PWM防错输出控制电路
浅谈不同化学成分对光敏电阻薄膜特性的影响
——以高PbI2掺杂水平的钙钛矿光阻膜、Bi2S3光阻膜、ZnO光阻膜为例
掌控板制作简易钢琴
TS-03C全固态PDM中波发射机开关机控制电路原理及故障分析
单片机驱动蜂鸣器的程序设计
浅谈物理电路与数字电路
浅析光敏电阻的应用
PDM 1kW中波广播发射机保护电路分析
丰田凯美瑞240V车间隙警告蜂鸣器异常鸣响