何 冰,王菊霞,蘇變玲
(渭南師范學(xué)院 物理與電氣工程學(xué)院,陜西 渭南 714000)
為了保護(hù)青少年的視力,現(xiàn)如今越來(lái)越多的公司都在研發(fā)生產(chǎn)各種視力保護(hù)產(chǎn)品,國(guó)內(nèi)主要有眼保姆,坐姿矯正器和各種護(hù)眼燈;國(guó)外有法國(guó)艾斯·布魯斯研發(fā)的光明天使博士鏡,以及美國(guó)眼科專家威廉貝茨研發(fā)的阿瞳二代產(chǎn)品。但這些產(chǎn)品功能單一,不能滿足消費(fèi)者的個(gè)性化需求。針對(duì)這一問(wèn)題,本文將單片機(jī)與視力保護(hù)相結(jié)合,利用單片機(jī)芯片的智能處理功能,結(jié)合超聲波測(cè)距原理,光敏電阻隨光強(qiáng)變化的特點(diǎn),單片機(jī)定時(shí)器T0,T1的工作原理,以及LCD1602液晶顯示器的使用方法,設(shè)計(jì)了一個(gè)多功能視力保護(hù)器。該設(shè)計(jì)的技術(shù)要求是當(dāng)學(xué)生的面部與書(shū)本或電腦的距離小于30 cm時(shí),蜂鳴器產(chǎn)生聲光報(bào)警,提醒學(xué)生注意坐姿;當(dāng)學(xué)生學(xué)習(xí)時(shí)間超過(guò)45分鐘時(shí),蜂鳴器產(chǎn)生聲光報(bào)警,提醒學(xué)生休息片刻;當(dāng)光線過(guò)強(qiáng)或過(guò)弱時(shí),蜂鳴器產(chǎn)生聲光報(bào)警,提醒學(xué)生注意學(xué)習(xí)環(huán)境;能夠分辨是什么原因引起的聲光報(bào)警;并具有設(shè)置功能,能夠自行設(shè)定相應(yīng)的數(shù)據(jù)。
本系統(tǒng)采用STC89C52RC DPIP40單片機(jī)作為核心控制單元,通過(guò)HC-SR04超聲波測(cè)距模塊測(cè)量人的面部到書(shū)本的距離,當(dāng)測(cè)得距離小于30 cm或設(shè)定距離時(shí)產(chǎn)生聲光報(bào)警。利用光敏電阻的光電導(dǎo)效應(yīng)采集光線模擬信號(hào),并通過(guò)ADC0832模數(shù)轉(zhuǎn)換器轉(zhuǎn)換為數(shù)字信號(hào),對(duì)數(shù)字信號(hào)進(jìn)行光強(qiáng)等級(jí)處理并用1602液晶顯示器顯示光的強(qiáng)弱,當(dāng)光太強(qiáng)或太弱時(shí)產(chǎn)生報(bào)警。通過(guò)單片機(jī)內(nèi)部定時(shí)器T1對(duì)學(xué)習(xí)時(shí)間進(jìn)行計(jì)時(shí),當(dāng)學(xué)習(xí)時(shí)間超過(guò)45分鐘或設(shè)定值時(shí)產(chǎn)生報(bào)警,其中報(bào)警電路由一個(gè)PNP型三極管驅(qū)動(dòng)。系統(tǒng)總體設(shè)計(jì)方框圖如圖1所示。
本設(shè)計(jì)的主要步驟如下:
1)認(rèn)真分析視力保護(hù)器的技術(shù)要求。
2)確定硬件設(shè)備,選好器件的型號(hào)。
圖1 系統(tǒng)設(shè)計(jì)方框圖Fig.1 The diagram of designed system
3)畫(huà)電路原理圖。
4)根據(jù)硬件電路及各芯片的時(shí)序編寫(xiě)程序。
5)將程序輸入單片機(jī)進(jìn)行軟件測(cè)試,查找錯(cuò)誤,使系統(tǒng)程序更加完善。
6)根據(jù)電路原理圖及相應(yīng)元器件的焊接方法焊接硬件電路。
7)將程序?qū)戇M(jìn)單片機(jī)進(jìn)行硬件調(diào)試。
STC89C52RCPDIP封裝單片機(jī)由宏晶科技推出,其指令代碼完全兼容傳統(tǒng) 8051單片機(jī),是一種增強(qiáng)型8051單片機(jī)。工作電壓為5.5~3.3 V(5 V單片機(jī)),有8 K字節(jié)的用戶應(yīng)用程序空間,片上集成512字節(jié)RAM,內(nèi)部帶2 K EEPROM的存儲(chǔ)空間。通過(guò)串口就可直接下載程序,且處理速度快,抗干擾能力強(qiáng),功耗低,價(jià)格便宜,所以本設(shè)計(jì)采用STC89C52RC作為控制電路的主選芯片。
該主控模塊含有時(shí)鐘電路、系統(tǒng)復(fù)位電路、電源電路。其中時(shí)鐘電路由單片機(jī)內(nèi)部反相放大器的輸入引腳跨接在晶振兩端和兩個(gè)微調(diào)電容組成,構(gòu)成自激勵(lì)振蕩器,用來(lái)產(chǎn)生單片機(jī)工作時(shí)必須的時(shí)鐘信號(hào)。時(shí)鐘電路中電容選用20 pF,晶振選用12 MHz,因?yàn)轭l率越高單片機(jī)的速度越快。系統(tǒng)采用按鍵復(fù)位的工作方式,其復(fù)位電路由復(fù)位按鍵、10μF電容和10 kΩ電阻組成,單片機(jī)的復(fù)位時(shí)間由復(fù)位電路的極性電容決定,極性電容一般采用10~30μF。單片機(jī)的時(shí)鐘工作以后,只要RST引腳上出現(xiàn)兩個(gè)機(jī)器周期以上的高電平,系統(tǒng)就復(fù)位[1]。
由于電磁式蜂鳴器需要較低的電壓就能發(fā)出很高分貝的聲音,本設(shè)計(jì)選用電磁式蜂鳴器,其發(fā)聲的原理為電流通過(guò)電磁線圈產(chǎn)生磁場(chǎng),進(jìn)而驅(qū)動(dòng)振動(dòng)膜片發(fā)聲。由于單片機(jī)I/O引腳輸出電流的驅(qū)動(dòng)能力有限,所以采用PNP型三極管(放大作用)驅(qū)動(dòng)蜂鳴器。當(dāng)P1.3輸出高電平“1”時(shí),三極管Q1截止,沒(méi)有電流流過(guò)線圈,蜂鳴器不發(fā)聲,當(dāng)P1.3輸出低電平“0”時(shí),三極管Q1導(dǎo)通[2],電流流過(guò)蜂鳴器線圈,蜂鳴器發(fā)聲。因?yàn)榘l(fā)光二極管和蜂鳴器并聯(lián),所以聲光報(bào)警是同時(shí)進(jìn)行的。蜂鳴器報(bào)警電路圖如圖2所示。
2.3.1 光敏電阻
圖2 蜂鳴器報(bào)警電路圖Fig.2 The diagram of buzzer alarm circuit
光敏電阻采用硅,鍺,硫化鎘,硒化鉛等半導(dǎo)體材料制成,它的工作區(qū)在一個(gè)很薄的光敏層上,光敏層具有電阻特性,兩端由金屬電極引出。無(wú)光照時(shí),光敏電阻的阻值很大,當(dāng)光線照到光敏層上,半導(dǎo)體材料中的載流子將迅速增加,阻值下降,光線越強(qiáng),阻值越低。光敏電阻通常做成片狀結(jié)構(gòu),以便吸收更多光能。光敏電阻具有靈敏度高,測(cè)光范圍廣的優(yōu)點(diǎn)。光敏電阻屬于有源器件,工作時(shí)必須加電源[3]。
2.3.2 光敏電阻測(cè)光電路
光敏電阻測(cè)光電路工作原理:當(dāng)光線發(fā)生變化時(shí),由于光敏電阻內(nèi)部載流子發(fā)生變化,所以流過(guò)光敏電阻的電流發(fā)生變化,進(jìn)而R6兩端的分壓產(chǎn)生變化,該模擬電壓信號(hào)經(jīng)過(guò)ADC0832模數(shù)轉(zhuǎn)換器采集后便可得到相應(yīng)的數(shù)字信號(hào),再經(jīng)過(guò)單片機(jī)處理后,在LCD液晶模塊上顯示光的強(qiáng)弱百分比。光敏電阻測(cè)光電路接線圖如圖3所示。
圖3 光敏電阻測(cè)光電路接線圖Fig.3 The diagram of photosensitive resistance metering circuit
本設(shè)計(jì)采用3節(jié)1.5 V電池串聯(lián)供電,電池盒和自鎖開(kāi)關(guān)串聯(lián)可以方便電路的通斷。電源接口電路接線圖如圖 4所示。
圖4 電源接口電路接線圖Fig.4 The diagram of power interface circuit
本設(shè)計(jì)用按鍵設(shè)置學(xué)習(xí)時(shí)間、光線強(qiáng)弱界限以及報(bào)警距離。按鍵電路接線圖如圖5所示。其中S4為設(shè)置鍵,S3為開(kāi)始學(xué)習(xí)鍵和設(shè)定值的加鍵,S2為時(shí)間清零鍵和設(shè)定值的減鍵。當(dāng)某鍵按下時(shí),低電平有效。
圖5 按鍵電路接線圖Fig.5 The diagram of key circuit
2.6.1 超聲波簡(jiǎn)介
超聲波是高于20 kHz的機(jī)械波,它在不同的介質(zhì)中傳播速度不同,在通過(guò)兩種不同介質(zhì)時(shí),在介質(zhì)表面會(huì)發(fā)生反射、折射現(xiàn)象,超聲波在傳播過(guò)程中有一定的衰減[6]。超聲波在空氣中衰減較快,頻率越高,衰減越快,故在空氣中傳播時(shí)采用頻率較低的超聲波40 kHz。
2.6.2 超聲波測(cè)距原理
本設(shè)計(jì)利用超聲波遇到障礙物發(fā)生反射的特性,采用往返時(shí)間檢測(cè)的方法進(jìn)行測(cè)距,超聲波測(cè)距原理圖如圖6所示。
圖6 超聲波測(cè)距原理圖Fig.6 The diagram of ultrasonic ranging
測(cè)距時(shí),超聲波發(fā)射器向某一方向發(fā)射超聲波,超聲波在空氣中傳播遇到障礙物就立即反射回來(lái),計(jì)算出超聲波在空氣中傳播的往返時(shí)間t,超聲波在空氣中傳播的速度為:340 m/s。利用如下公式(1)便可知超聲波探頭距障礙物的距離S。
2.6.3 HC-SRO4超聲波測(cè)距模塊
本設(shè)計(jì)采用HC-SR04超聲波測(cè)距模塊測(cè)量人的臉部離書(shū)籍的距離。該模塊測(cè)距范圍為2~400 cm,測(cè)距精度高達(dá)3 mm;模塊由超聲波發(fā)射器,超聲波接收器,控制電路組成,其中發(fā)射器發(fā)射超聲波信號(hào)用來(lái)作為距離的采樣信號(hào),接收器接收所發(fā)射的信號(hào)。
HC-SR04超聲波測(cè)距模塊采用I/O口TIRG觸發(fā)測(cè)距,給TIRG最少10 s的高電平,這時(shí)模塊自動(dòng)發(fā)送8個(gè)40 kHz的方波,自動(dòng)檢測(cè)是否有信號(hào)返回,如果有信號(hào)返回,則通過(guò)I/O口ECHO輸出一個(gè)高電平,高電平持續(xù)的時(shí)間便是超聲波從發(fā)射到返回的時(shí)間[7],測(cè)試距離=(高電平時(shí)間*340 m/s)/2。HC-SR04超聲波測(cè)距模塊的引腳圖如圖7所示。其中VCC接電源,GND接地,TIRG為觸發(fā)控制信號(hào)輸入端接P3.3,ECHO為回響信號(hào)輸出端接P3.2。
圖7 HC-RS04超聲波測(cè)距模塊引腳圖Fig.7 The diagram of ultrasonic ranging
本設(shè)計(jì)使用的編程語(yǔ)言為C語(yǔ)言,根據(jù)系統(tǒng)要實(shí)現(xiàn)的功能,先寫(xiě)出主程序,再利用硬件電路功能及各芯片、各模塊的工作時(shí)序?qū)懗鲎映绦颍詈笤谥鞒绦蛑羞M(jìn)行調(diào)用,這種方法簡(jiǎn)單,主程序語(yǔ)句少,且易于軟件設(shè)計(jì)和查錯(cuò),還能很好的利用硬件電路,分模塊進(jìn)行調(diào)試。
系統(tǒng)主程序流程圖如圖8所示。
圖8 系統(tǒng)主程序流程圖Fig.8 The chart of main program system
T0用于測(cè)超聲波的往返時(shí)間,工作于工作方式1,對(duì)單片機(jī)的機(jī)器周期進(jìn)行計(jì)數(shù)。定時(shí)器的定時(shí)時(shí)間與系統(tǒng)的時(shí)鐘頻率有關(guān),由于一個(gè)機(jī)器周期等于12個(gè)時(shí)鐘周期,晶振為12 MHz, 則計(jì)數(shù)周期為:T=12×1/(12×106)=1 μs。 當(dāng)超聲波ECHO端為高電平時(shí)開(kāi)始計(jì)時(shí)。超聲波測(cè)距子程序流程圖如圖9所示。
圖9 超聲波測(cè)距子程序流程圖Fig.9 The chart of ultrasonic ranging
學(xué)習(xí)時(shí)間由定時(shí)器T1定時(shí),其工作于工作方式1,初值為 TH1=0X3C;TL1=0XB0;50 ms 中 斷 一 次 ,value 加 1, 當(dāng)value值加到20時(shí),即為1 s,秒鐘加1;當(dāng)秒加到60時(shí),分鐘加1;當(dāng)分加到60時(shí),時(shí)加1;當(dāng)時(shí)加到24時(shí),從新開(kāi)始。報(bào)警子程序流程圖如圖10所示。
圖10 報(bào)警子程序流程圖Fig.10 The chart of alarm program
軟件測(cè)試:在Keil uvision4中編寫(xiě)程序,進(jìn)行調(diào)試,修改語(yǔ)法錯(cuò)誤。
硬件測(cè)試:焊接電路之前,先用萬(wàn)用表測(cè)得各元器件的好壞,分清極性電容蜂鳴器、發(fā)光二極管的正負(fù)以及PNP型三極管的三個(gè)級(jí)。在焊接電路板時(shí),從單片機(jī)最小系統(tǒng)開(kāi)始,分模塊,逐個(gè)進(jìn)行焊接并隨時(shí)用萬(wàn)用表的“二極管”擋測(cè)試電路是否導(dǎo)通[8]。焊接完成后,利用STC_ISP_V479下載軟件將編好程序燒進(jìn)單片機(jī)芯片中,并進(jìn)行功能檢測(cè)。
經(jīng)過(guò)軟硬件的設(shè)計(jì)與調(diào)試,系統(tǒng)達(dá)到了設(shè)計(jì)要求,當(dāng)學(xué)生開(kāi)始學(xué)習(xí)時(shí):若光線低于設(shè)定的弱光或光線高于設(shè)定的強(qiáng)光時(shí),報(bào)警電路產(chǎn)生聲光報(bào)警,提醒學(xué)生注意學(xué)習(xí)環(huán)境;若超聲波測(cè)到的距離小于30 cm或設(shè)定值時(shí),報(bào)警電路產(chǎn)生聲光報(bào)警,提醒學(xué)生調(diào)節(jié)眼睛到書(shū)本的距離。當(dāng)學(xué)習(xí)時(shí)間到達(dá)設(shè)定值時(shí),產(chǎn)生10次報(bào)警,每次3下,提醒學(xué)生注意休息。由于超聲波在空氣中的傳播速度與溫度有關(guān),本設(shè)計(jì)沒(méi)有考慮溫度對(duì)超聲波傳播速度的影響,測(cè)量距離還有一定的誤差,但誤差很小,還可通過(guò)溫度傳感器DS18B20進(jìn)一步完善,使其測(cè)量更加精確。
[1]謝偉成,楊加國(guó).單片機(jī)原理與應(yīng)用及C51程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2009.
[2]康華光.電子技術(shù)基礎(chǔ)模擬部分[M].北京:高等教育出版社,2006.
[3]孫余凱,吳鳴山,項(xiàng)綺明.傳感器應(yīng)用電路300例[M].北京:電子工業(yè)出版社,2008.
[4]梁明亮,韋成杰.單片機(jī)對(duì)串行A/D轉(zhuǎn)換器ADC0832的C51編程[J].鄭州鐵路職業(yè)技術(shù)學(xué)院學(xué)報(bào),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應(yīng)用詳解[J].數(shù)控技術(shù)與應(yīng)用,2013(3):5-6.ZHANGYalin.Application of ADC0832 based on C52[J].Numerical Control Technology and Application,2013(3):5-6.
[6]郁有文,常健,程繼紅.傳感器原理及工程應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2008.
[7]李軍,申俊澤.超聲波測(cè)距模塊HC-SR04的超聲波測(cè)距儀設(shè)計(jì)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,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én)宏.看圖識(shí)用萬(wàn)用表[M].北京:電子工業(yè)出版社,2011.