懷化學(xué)院光電信息工程系 懷化學(xué)院武陵山片區(qū)生態(tài)農(nóng)業(yè)智能控制技術(shù)湖南重點實驗室 劉 晉
懷化學(xué)院光電信息工程系 賀利朋 陳小玉
懷化學(xué)院光電信息工程系 懷化學(xué)院武陵山片區(qū)生態(tài)農(nóng)業(yè)智能控制技術(shù)湖南重點實驗室 張順如
目前大學(xué)校園里使用的路燈存在不少的缺點:第一,功耗高,許多學(xué)校的路燈不是節(jié)能燈。第二,更為重要的現(xiàn)實問題是使用時的能源浪費問題,即在進入傍晚或黎明時,外界自然光亮度尚可,而一般校園路燈沒有相應(yīng)的控制手段,使路燈處于較弱的亮度來節(jié)省能源;而在午夜至黎明的這段時間校道上基本無人,路燈的持續(xù)照明則會造成能源的不必要浪費,而直接斷電則有人經(jīng)過而路燈卻不亮?xí)斐尚腥瞬槐恪R虼?,根?jù)學(xué)校路燈實際使用情況,即:傍晚和黎明時分有自然光的補充,路燈無需充分點亮,午夜至黎明人流稀少,路燈無需時刻保持點亮狀態(tài),設(shè)計一種依據(jù)時間需求和自然光輻射、人體紅外光輻射的雙重控制路燈是符合校園路燈實際使用和節(jié)能需求的。
本設(shè)計的目標是根據(jù)校園路燈實際使用的情況,采用在照明時間上進行控制、及光電傳感器對人體紅外光、自然背景光的感應(yīng),設(shè)計出一種具有高節(jié)能且能夠?qū)崿F(xiàn)高品質(zhì)照明的時控及光控雙重控制模式的校園智能LED節(jié)能路燈,將實現(xiàn):①在傍晚或黎明時依據(jù)自然光的明暗來控制路燈相應(yīng)的亮度;②從午夜12點至凌晨6點熄滅路燈,該時間段內(nèi)若有人經(jīng)過則自動短時間亮起路燈以進行照明的功能。
本設(shè)計將采用單片機作為主控芯片,外界光信息的采集用紅外熱釋電傳感器、硅光電池等來實現(xiàn),用ADC進行模數(shù)轉(zhuǎn)換,采用時鐘芯片來提供時間參考,用以照明的LED燈的亮度控制電路采用PWM調(diào)制,采用光敏電阻進行開關(guān)電路的搭建。智能路燈控制系統(tǒng)的原理設(shè)計總方案如圖1所示。
圖1 智能路燈控制系統(tǒng)的原理框圖
由于STC89C52RC單片機具有價格低、使用方便、資料多、可在線下載等諸多優(yōu)點,本設(shè)計選用其作為主控芯片,該芯片是一種高性能低功耗的CMOS結(jié)構(gòu)8位微CPU,其具有8K字節(jié)容量的可編程Flash存儲器,512字節(jié)隨機存儲,32位信號輸入輸出線,雖然STC89C52RC單片機仍然使用MCS-51內(nèi)核,但其做了很多的改進。
采用熱釋電傳感器EG4002作為人員經(jīng)過路燈時的信號采集芯片。本設(shè)計需要有人經(jīng)過時路燈能一直工作,所以將引腳A接入高電平,支持重復(fù)觸發(fā)使有人經(jīng)過時路燈能一直處于工作狀態(tài)。VC引腳接入單片機的P1.0引腳,當處于午夜至黎明之外的時間段內(nèi)時,單片機將VC引腳置為低電平使EG4002禁止觸發(fā),當處于午夜至黎明之間的時間內(nèi),單片機將VC引腳置為高電平使輸出信號隨輸入信號而觸發(fā)。
采用ADC0809轉(zhuǎn)換器作為AD轉(zhuǎn)換芯片。在本設(shè)計中ADC接入了硅光電池和熱釋電紅外傳感器的AD轉(zhuǎn)換通道分別為IN0、IN1兩個引腳。D0~D7引腳接單片機P3引腳用于輸出AD轉(zhuǎn)換結(jié)果。ST引腳用于控制AD轉(zhuǎn)換脈沖的啟動,當ST引腳電平被單片機由高電平置為低電平時出現(xiàn)下降沿啟動ADC0809,開始ADC轉(zhuǎn)換。單片機通過不停的讀取EOC引腳電壓的高低來判斷轉(zhuǎn)換是否完成。
采用DS1302作為時鐘芯片。外接32.768KHz的晶振為時鐘芯片提供計時脈沖,分別接到芯片的X1和X2引腳。單片機P0.5引腳接SCLK控制數(shù)據(jù)的輸入與輸出,可以通過單片機給SCLK引腳設(shè)置0和設(shè)置1來產(chǎn)生上升沿和下降沿控制DS1302的數(shù)據(jù)輸入和輸出。當RST被置為低電平時禁止數(shù)據(jù)傳輸,當RST被置于高電平時啟動數(shù)據(jù)傳輸。
采用光敏電阻來搭建開關(guān)電路,當外界光強降到某個特定值時,光敏電阻的阻值也增大到某個特定值使基極電壓達到開啟電壓,從而使三極管導(dǎo)通,驅(qū)動繼電器工作。同理,當外界光強增強時,由于光敏電阻的阻值降低而導(dǎo)致基極電壓低于開啟電壓,三極管不導(dǎo)通,從而使繼電器不工作,電路總開關(guān)斷開。
在軟件設(shè)計上主要采用Keil C51軟件包作為開發(fā)工具,系統(tǒng)設(shè)計思路是先進行初始化,具體過程是先對內(nèi)部定時器T0和TI進行設(shè)置,然后利用時鐘芯片DS1302完成系統(tǒng)初始化函數(shù),接下來進行外部信息采樣,分別開啟ADC0809芯片的0通道的采樣硅光電池電壓,開啟ADC0809芯片的1通道的采樣熱釋電的電壓,每個采樣環(huán)節(jié)都同時讀取時鐘芯片里面的時間,根據(jù)ADC0809采樣值和時間計算出LED燈珠的應(yīng)該點亮的個數(shù)和判斷LED燈的開關(guān)。硅光電池與熱釋電傳感器采樣數(shù)據(jù)及LED燈控制完成一次后接著進行下一次相同操作過程。圖2所示是軟件設(shè)計流程圖。
圖2 智能路燈控制系統(tǒng)的軟件系統(tǒng)
本函數(shù)模塊作用主要是開啟ADC轉(zhuǎn)換電路,讀取轉(zhuǎn)換器接收到的模擬信號,并將之轉(zhuǎn)換成數(shù)字信號的。通過對ADC0809芯片的A、B和C三個引腳進行設(shè)置,選擇模擬輸入信號中的一路信號,通過對ST引腳進行0→1→0順序設(shè)置,開啟相應(yīng)的模數(shù)轉(zhuǎn)換,用while循環(huán)語句等待該轉(zhuǎn)換的完成后可以將OE引腳設(shè)置成高電平進行相應(yīng)的數(shù)字數(shù)據(jù)輸出,輸出的數(shù)字信號連接到單片機的端口,供單片機利用。
本模塊主要分為讀寫兩個子模塊,寫入DS1302初始時間值,讀出實時時間值。
(1)寫模塊
根據(jù)寫入命令字的不同對寄存器的不同位進行操作。對DS1302寫入80h時初始化實時時鐘的秒位,寫入82h時初始化實時時鐘的分位,寫入84h時初始化實時時鐘的小時位,寫入86h時初始化實時時鐘的日位,寫入88h時初始化實時時鐘的月位,寫入8Ah時初始化實時時鐘的周位,寫入8Ch初始化實時時鐘的年位。根據(jù)實際需求可對DS1302進行時間初始化。
(2)讀模塊
根據(jù)寫入不同的命令字可讀出不同時間位的值。向DS1302寫入81h時將讀取實時時鐘的秒位,向DS1302寫入83h時將讀取實時時鐘的分位,向DS1302寫入85h時將讀取實時時鐘的小時位,向DS1302寫入87h時將讀取實時時鐘的日位,向DS1302寫入89h時將讀取實時時鐘的月位,向DS1302寫入8Bh時將讀取實時時鐘的周位,向DS1302寫入8Dh時將讀取實時時鐘的年位。根據(jù)寫入不同的命令字可將時間所有的位依次讀出。
本模塊由LED數(shù)量控制、LED占空比控制和LED時控光控這三個子模塊組成。
(1)LED數(shù)量控制
將電壓分成若干個區(qū)間,根據(jù)硅光電池所采樣的電壓值用if else語句對應(yīng)出相應(yīng)的LED數(shù)量,外界光強越弱則對應(yīng)LED所亮燈珠數(shù)越多。然后通過向74HC595寫入數(shù)量值控制相應(yīng)數(shù)量的繼電器導(dǎo)通,從而控制相應(yīng)數(shù)量的LED燈珠被點亮。
(2)LED占空比控制
根據(jù)硅光電池所采樣的電壓值用if else語句對應(yīng)出相應(yīng)的占空比。外界自然光強越弱的情況對應(yīng)單顆LED燈珠亮度越強。
(3)LED時控光控
根據(jù)實際情況設(shè)定相應(yīng)的亮燈區(qū)間到設(shè)定時間自動亮燈,到午夜模式時有人路過即亮燈。
我們將電路焊接好后檢查是否有錯焊以及虛焊,以及通電檢查電路中主要測試點的電壓是否正常,有無短路及斷路的情況,經(jīng)過測試可以確認各個硬件已達到設(shè)計要求。我們在每一個子模塊的程序編寫完成后用編譯器進行了編譯,再將編譯無誤的程序下載到硬件芯片上進行驗證查看其運行效果,當每個子程序的運行效果都達到了預(yù)期目標后再將所有子程序組合在一塊進行驗證。系統(tǒng)測試結(jié)果表明,我們基于STC89C52單片機設(shè)計的時控與光控雙重作用的校園LED節(jié)能路燈達到了設(shè)計目標,其使用方便,節(jié)能效果良好。