劉曉宇,陳越超
(長(zhǎng)春師范大學(xué),長(zhǎng)春130032)
隨著時(shí)代的進(jìn)步與發(fā)展,我國(guó)臺(tái)燈的普及率很高,市場(chǎng)上的臺(tái)燈種類也很多[1],不論是上班族還是學(xué)生都會(huì)經(jīng)歷加班工作和學(xué)習(xí),這使得人們對(duì)臺(tái)燈功能的需求不單單局限于照明,而是對(duì)產(chǎn)品的質(zhì)量和要求越來越高?,F(xiàn)如今,全球視力水平急劇下降,眼部疾病越來越多,這與人們?nèi)粘I畹牟徽_用眼有著極大的關(guān)聯(lián),比如工作學(xué)習(xí)坐姿不正確,用眼過度以及光照強(qiáng)度不合適等對(duì)眼睛都會(huì)造成極大地?fù)p害。與傳統(tǒng)臺(tái)燈相比,本設(shè)計(jì)主要可以實(shí)現(xiàn)臺(tái)燈的自動(dòng)調(diào)光,以及實(shí)時(shí)監(jiān)測(cè)學(xué)習(xí)距離等功能。在手動(dòng)控制模式下,可以滿足一部分用戶的喜好,該模式共分為八級(jí)亮度調(diào)節(jié),可以通過手動(dòng)按鍵調(diào)整自己適應(yīng)的亮度。在自動(dòng)控制模式下,該設(shè)計(jì)能夠在保護(hù)視力的前提下,使臺(tái)燈功能更加多元化,既幫助人們糾正不良坐姿問題,同時(shí)實(shí)現(xiàn)亮度的自適應(yīng)功能,與外界環(huán)境相協(xié)調(diào),確保人走燈滅,保證亮度的同時(shí)也達(dá)到了節(jié)能省電的功效,盡可能更好的利用資源。
本系統(tǒng)以STM32F103單片機(jī)為基礎(chǔ),配合光照度傳感器模塊、測(cè)距模塊、調(diào)壓調(diào)光模塊、蜂鳴器報(bào)警模塊等。本系統(tǒng)可以實(shí)現(xiàn)手動(dòng)控制和自動(dòng)控制兩種工作方式:手動(dòng)控制工作時(shí),可以通過控制增減按鍵實(shí)現(xiàn)臺(tái)燈亮度的切換;自動(dòng)控制工作時(shí),系統(tǒng)可以根據(jù)環(huán)境中光照強(qiáng)度的變化實(shí)現(xiàn)臺(tái)燈亮度自動(dòng)調(diào)節(jié)。此外系統(tǒng)利用超聲波傳感器感知人與臺(tái)燈的距離,當(dāng)人姿勢(shì)不正確、與臺(tái)燈距離太近或者久坐時(shí),系統(tǒng)會(huì)發(fā)出報(bào)警提示音。當(dāng)人離開座位一段時(shí)間后,臺(tái)燈會(huì)自動(dòng)熄滅,當(dāng)人回到座位后,臺(tái)燈自動(dòng)點(diǎn)亮。同時(shí),系統(tǒng)通過TFTLCD模塊實(shí)時(shí)顯示當(dāng)前時(shí)間、環(huán)境光照強(qiáng)度、臺(tái)燈亮度等級(jí)、人與臺(tái)燈距離、人工作時(shí)間等信息。通過這些功能不斷豐富臺(tái)燈具體應(yīng)用框架,實(shí)現(xiàn)臺(tái)燈的多樣化。臺(tái)燈的系統(tǒng)結(jié)構(gòu)框架如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)
方案一:Arduino系列。Arduino能通過不同的傳感器來感知環(huán)境,可以控制燈光、電機(jī)和其他設(shè)備[2]。其中MEGA系列應(yīng)用的主控制芯片性能高,針腳多,可以同時(shí)連接較多的外接硬件設(shè)備,但是在嵌入式開發(fā)等方面存在許多局限性。
方案二:STM32F103系列。對(duì)于STM32F103開發(fā)板[3],具有接口豐富,可以方便的進(jìn)行各種外設(shè)的實(shí)驗(yàn)和開發(fā)的優(yōu)點(diǎn),其次資源充足,主芯片采用自帶的512K字節(jié)FLASH的STM32F103ZET6,滿足大內(nèi)存需求和大數(shù)據(jù)存儲(chǔ)[4],還包括休眠、停止和待機(jī)3種低功耗模式,提高了產(chǎn)品的應(yīng)用靈活性,同時(shí)操作過程簡(jiǎn)單,能夠處理模擬及數(shù)字信號(hào)。
通過對(duì)比論證分析,本模塊選擇方案二。該設(shè)計(jì)選擇STM32F103單片機(jī)為主控模塊,在自動(dòng)調(diào)光模式下,STM32F103單片機(jī)讀取光照度傳感器,經(jīng)過計(jì)算得到實(shí)際光照度,然后通過485芯片傳輸數(shù)據(jù),實(shí)現(xiàn)亮度的自動(dòng)調(diào)節(jié);在調(diào)壓調(diào)光模式下,通過單片機(jī)IO口輸出PWM脈沖調(diào)節(jié)占空比去改變220 V交流電壓從而達(dá)到調(diào)壓調(diào)光的目的。同時(shí)STM32F103單片機(jī)能夠極大限度的發(fā)揮臺(tái)燈各個(gè)模塊間的功能,并將其有機(jī)的結(jié)合起來,確保各個(gè)功能精確地運(yùn)行和實(shí)現(xiàn)。
方案一:GY-30。GY-30是一款通用的光照度傳感器檢測(cè)模塊,不區(qū)分環(huán)境光源,具有接近于視覺靈敏度的分光特性,但是價(jià)格相對(duì)較高。
方案二:GY-485-44009。GY-485-44009是一款寬量程、高精度、應(yīng)用較為簡(jiǎn)單的485總線光照度傳感器模塊,同時(shí)功率消耗低,體積小,安裝較為方便。
通過對(duì)比論證分析,本模塊選擇方案二。GY-485-44009是一點(diǎn)對(duì)多點(diǎn)的通信接口,一般采用平衡發(fā)送和差分接收方式實(shí)現(xiàn)通信,光照度傳感器模塊通過485總線建立GY-485與單片機(jī)間的雙向通信,實(shí)現(xiàn)亮度的自動(dòng)調(diào)節(jié)。由于外界環(huán)境的變化對(duì)燈光強(qiáng)度的需求也會(huì)發(fā)生變化,臺(tái)燈在保護(hù)視力及適應(yīng)環(huán)境的前提下改變光的強(qiáng)度。
方案一:激光。激光測(cè)距相對(duì)來說精度較高,但是激光需要考慮人體的安全問題,且激光制作的要求高,同時(shí)光學(xué)系統(tǒng)元件需要時(shí)刻保持整潔,否則會(huì)影響整體測(cè)量結(jié)果。
方案二:HC-SR04超聲波。超聲波測(cè)距離的原理是已知聲速V=331.4+0.6t(t單位為攝氏度)m∕s,當(dāng)超聲波遇到障礙物時(shí)反射回來而進(jìn)行測(cè)量[5]。超聲波的振動(dòng)頻率相對(duì)較高,且具備束射特性,方向性強(qiáng),能夠定向傳播。此外超聲波耐臟污,即使傳感器上有塵土也可以進(jìn)行測(cè)量,即可以在較差的環(huán)境中使用。
通過對(duì)比論證分析,本模塊采用方案二。測(cè)量時(shí)單片機(jī)系統(tǒng)先給發(fā)射電路提供脈沖信號(hào),單片機(jī)計(jì)數(shù)器處于等待狀態(tài),當(dāng)信號(hào)發(fā)射一段時(shí)間后,由單片機(jī)發(fā)出信號(hào),使系統(tǒng)關(guān)閉發(fā)射信號(hào),計(jì)數(shù)器開始計(jì)時(shí),實(shí)現(xiàn)起始的同步。當(dāng)接收信號(hào)的最后一個(gè)脈沖到來之后,計(jì)數(shù)器則停止計(jì)時(shí)。該模塊主要目的是檢測(cè)使用者的坐姿是否正確,當(dāng)檢測(cè)到人體距離桌面過遠(yuǎn)、過近時(shí)給予一定的聲音提示。
方案一:可控硅,又稱晶閘管??煽毓柙陔娐分锌梢酝瓿山涣麟姷臒o(wú)觸點(diǎn)控制,大電流由小電流控制,開斷無(wú)涌流,且速度快,可以控制過零開斷。
方案二:繼電器。繼電器相較于可控硅技術(shù)相對(duì)成熟,但工作效率較低,觸點(diǎn)容量大且壽命短,可維護(hù)性較差,無(wú)法用于精度高的開斷控制電路中。
通過對(duì)比論證分析,本模塊選擇方案一。可控硅作為該部分的主要“承擔(dān)者”,以STM32單片機(jī)為處理核心,經(jīng)過對(duì)從電位器輸入的AD數(shù)據(jù)進(jìn)行處理得到脈沖寬度調(diào)制(PWM)調(diào)光的占空比[6],通過單片機(jī)輸出不同占空比的PWM信號(hào)繼而控制可控硅改變燈的亮度,在一定程度上占空比與燈的亮度呈線性關(guān)系,改變PWM值使得通過臺(tái)燈的平均電流發(fā)生改變。調(diào)壓調(diào)光模塊原理如圖2所示。
圖2 調(diào)壓調(diào)光模塊原理
該模塊選擇PNP型三極管來控制蜂鳴器的報(bào)警,三極管的集電極接電源,基極串接1 kΩ電阻后接單片機(jī)I∕O端口,發(fā)射極接蜂鳴器正極,蜂鳴器負(fù)極接地,蜂鳴器兩端電壓隨基極輸入電壓的變化而發(fā)生改變。當(dāng)基極輸入高電平時(shí),三極管截止,三極管的發(fā)射極為低電平,此時(shí)蜂鳴器里電流幾乎為0,蜂鳴器不響;當(dāng)基極輸入低電平時(shí),三極管導(dǎo)通,三極管的發(fā)射極為高電平,蜂鳴器有電流通過,發(fā)出聲音。
該模塊主要功能是在設(shè)定一定時(shí)間后,超過設(shè)定時(shí)間則發(fā)出久坐的報(bào)警提示,還可以在坐姿不正確或是距離過遠(yuǎn)、過近時(shí)發(fā)出報(bào)警提示音,提醒用戶矯正坐姿、及時(shí)休息或是關(guān)閉臺(tái)燈電源。電流通過電磁線圈,使電磁線圈產(chǎn)生磁場(chǎng)以驅(qū)動(dòng)振動(dòng)膜發(fā)聲,由于單片機(jī)IO引腳輸出電流較小,因此增加一個(gè)三極管放大驅(qū)動(dòng)電路,從而使蜂鳴器發(fā)出聲音[7]。蜂鳴器報(bào)警模塊原理如圖3所示。
圖3 蜂鳴器報(bào)警模塊原理
在設(shè)計(jì)的過程中,由點(diǎn)及面,逐一實(shí)現(xiàn)臺(tái)燈的各個(gè)功能。將各個(gè)模塊的電路及程序設(shè)計(jì)完成,最終將所有模塊連接在一起進(jìn)行模塊間的整合與總體功能的調(diào)試。
程序設(shè)計(jì)將系統(tǒng)分為4個(gè)部分,通過按鍵控制操作臺(tái)燈。操作者通過按鍵1,逐級(jí)增加系統(tǒng)層次,通過按鍵2確認(rèn)所選的層級(jí),第二層系統(tǒng)為手動(dòng)控制功能,使用查表法,控制PWM波的占空比實(shí)現(xiàn)臺(tái)燈的開、關(guān)以及八級(jí)亮度調(diào)節(jié)。第三層系統(tǒng)為自動(dòng)控制功能,通過485總線測(cè)量的環(huán)境光照度,以及測(cè)距模塊測(cè)定的距離值,運(yùn)用算法實(shí)現(xiàn)亮度自適應(yīng)功能以及距離的提醒。第四層系統(tǒng)為參數(shù)設(shè)定功能,實(shí)現(xiàn)距離、時(shí)間、電流、電壓主要參數(shù)的設(shè)定以及顯示。系統(tǒng)運(yùn)行流程如圖4所示。
圖4 系統(tǒng)運(yùn)行流程
(1)軟件仿真測(cè)試:通過軟件測(cè)試系統(tǒng)的執(zhí)行情況。
(2)軟件和硬件聯(lián)調(diào)[8]:通過編寫各模塊相關(guān)程序下載至單片機(jī),并進(jìn)行在線調(diào)試,待程序執(zhí)行時(shí)觀測(cè)系統(tǒng)中變量的執(zhí)行情況以及臺(tái)燈各項(xiàng)指標(biāo)變化,比如達(dá)到設(shè)定時(shí)間時(shí)是否會(huì)發(fā)出蜂鳴提示音,當(dāng)人體與臺(tái)燈距離小于設(shè)定值時(shí)是否會(huì)發(fā)出報(bào)警提示音等。
測(cè)試條件:經(jīng)過多次測(cè)試,硬件電路與仿真電路等基本一致,幾乎沒有錯(cuò)誤發(fā)生,此外燈光調(diào)節(jié)與外部環(huán)境相協(xié)調(diào),確保每次檢測(cè)結(jié)果的準(zhǔn)確性。
測(cè)試儀器:GDS-3504數(shù)字示波器,UNI-T UT136B數(shù)字萬(wàn)用表,光亮測(cè)試儀。
經(jīng)過對(duì)臺(tái)燈的反復(fù)測(cè)試總結(jié)出以下幾部分?jǐn)?shù)據(jù)。
(1)調(diào)壓調(diào)光模塊測(cè)試:通過按鍵控制不同光亮度擋位,由STM32F103單片機(jī)輸出不同PWM波形控制可控硅模塊輸出不同電壓值[9-12],使用GDS-3504示波器觀察并檢測(cè)波形變化,UNI-TUT136B數(shù)字萬(wàn)用表檢測(cè)可控硅輸出的電壓值,具體波形如圖5所示。
圖5 PWM輸出占空比為50%的波形
(2)超聲波測(cè)距模塊測(cè)試:通過在超聲波模塊正前方放置障礙物,對(duì)比測(cè)量值與實(shí)際值,在10~60 cm的距離內(nèi),最大誤差為0.2%。具體實(shí)驗(yàn)數(shù)據(jù)如表1所示。
表1 超聲波測(cè)距模塊測(cè)量數(shù)據(jù)
(3)光照度傳感器模塊控制過程測(cè)試:將臺(tái)燈放置在不同亮度的環(huán)境下,測(cè)量光強(qiáng)度和臺(tái)燈電壓。發(fā)現(xiàn)當(dāng)光強(qiáng)度大于200 Lux時(shí),臺(tái)燈全部熄滅,當(dāng)光強(qiáng)度小于200 Lux,并不斷變小時(shí),臺(tái)燈亮度逐漸增加,當(dāng)光照度小于50 Lux時(shí),臺(tái)燈全亮。
研究結(jié)果發(fā)現(xiàn),臺(tái)燈在測(cè)試的整個(gè)過程中產(chǎn)生的誤差相對(duì)較小,經(jīng)過測(cè)試,臺(tái)燈也符合設(shè)定的要求。臺(tái)燈的設(shè)計(jì)以STM32F103為核心芯片,運(yùn)用坐姿矯正和自適應(yīng)調(diào)光的算法提供了一種有利于保護(hù)視力的單片機(jī)系統(tǒng),能夠?qū)崟r(shí)監(jiān)測(cè)學(xué)習(xí)的安全距離,并隨外界光線的變化調(diào)整臺(tái)燈的亮度以保護(hù)視力。臺(tái)燈共有八級(jí)亮度調(diào)節(jié),可以滿足不同環(huán)境下的亮度需要,同時(shí)在臺(tái)燈的使用過程中伴隨有語(yǔ)音提示,對(duì)用戶來說更加直觀和便捷。此外臺(tái)燈的成本相對(duì)較低,且具有較高的實(shí)用價(jià)值,相信未來一定會(huì)出現(xiàn)功能更加豐富、操作更加簡(jiǎn)便的多元化臺(tái)燈,可以不斷推廣到千家萬(wàn)戶中。