用單片機(jī)設(shè)計(jì)的太陽(yáng)能LED燈控制器
可作路燈或庭院燈使用,白天采用太陽(yáng)能電池板給蓄電池充電,晚上采用兩段式點(diǎn)燈,即天黑后點(diǎn)亮到深夜自動(dòng)關(guān)閉,第二天天亮前自動(dòng)點(diǎn)亮,天亮后關(guān)閉。這里涉及的控制有:定時(shí)開(kāi)關(guān)燈;蓄電池充電和放電電壓的監(jiān)測(cè),防止過(guò)充電和過(guò)放電;環(huán)境光照強(qiáng)度的測(cè)量,作為晚上天黑時(shí)開(kāi)燈和早晨天亮?xí)r關(guān)燈的依據(jù)。由于一年四季黑夜的長(zhǎng)度都不一樣,所以第二天提前開(kāi)燈的時(shí)刻也不一樣。要完成上述功能,用傳統(tǒng)電路顯然很麻煩,甚至無(wú)法實(shí)現(xiàn),而使用可以使電路變得很簡(jiǎn)潔。
根據(jù)上述的功能要求對(duì)單片機(jī)有以下的要求:
1.單片機(jī)要處理兩個(gè)模擬量:電池電壓和環(huán)境照度,因此要求單片機(jī)有兩個(gè)A/D轉(zhuǎn)換器或兩個(gè)電壓比較器,比較一下用A/D轉(zhuǎn)換器比用電壓比較器外圍電路更簡(jiǎn)單,引腳也少,因此決定采用A/D轉(zhuǎn)換器;2.單片機(jī)有兩個(gè)控制輸出,一個(gè)控制充電,一個(gè)控制點(diǎn)燈。加上兩個(gè)A/D轉(zhuǎn)換器要用兩個(gè)輸入端,這樣要用4個(gè)I/O口,3.由于系統(tǒng)的程序容量并不大,因此程序存儲(chǔ)器有1KB就足夠了;4.太陽(yáng)能電池和蓄電池實(shí)際上組成不間斷電源,單片機(jī)的數(shù)據(jù)不存在掉電丟失的問(wèn)題,而且每天都自動(dòng)更新,因此可以不選用帶EEPROM的單片機(jī)。
綜上所述,經(jīng)過(guò)反復(fù)比較,可選用8只引腳的PIC12C671單片機(jī)。
為了充分利用I/O口,采用芯片內(nèi)部的RC振蕩器做時(shí)鐘源,采用上電復(fù)位的復(fù)位方式。電路見(jiàn)下圖。
上圖中R5、R6組成蓄電池電壓的取樣分壓電路,此電壓送單片機(jī)ANO端作A/D轉(zhuǎn)換后測(cè)量蓄電池的電壓,防止過(guò)充電和過(guò)放電。充電時(shí)如果發(fā)現(xiàn)電池電壓偏高,則單片機(jī)5腳輸出低電平,使三極管VT2截止,停止充電,防止電池過(guò)充電。二極管VD1提供電池放電的通路(放電電流和充電電流方向相反)。在點(diǎn)燈的時(shí)候,單片機(jī)3腳輸出高電平,三極管VT1導(dǎo)通使高亮度發(fā)光二極管點(diǎn)亮。當(dāng)電池電壓偏低時(shí),單片機(jī)3腳輸出低電平,VT1截止,發(fā)光二極管熄滅,防止電池過(guò)放電。R7、R8組成太陽(yáng)能電池電壓取樣電路,此電壓送單片機(jī)AN1端作A/D轉(zhuǎn)換后判斷環(huán)境照度用,天黑以后太陽(yáng)能電池的電壓下降,當(dāng)取樣電壓小于設(shè)定的值時(shí)單片機(jī)3腳輸出高電平,點(diǎn)亮發(fā)光二極管。天亮?xí)r過(guò)程正好相反,發(fā)光二極管熄滅。同時(shí)單片機(jī)記錄下從天黑到天亮的時(shí)間,第二天以此時(shí)間為基準(zhǔn)根據(jù)事先的約定計(jì)算出半夜熄燈和第二天提前開(kāi)燈的時(shí)間。因?yàn)橐荒晁募竞谝沟拈L(zhǎng)度是不同的,單片機(jī)具有智能學(xué)習(xí)的功能,因相鄰兩天黑夜的長(zhǎng)度很接近,可用第一天測(cè)量的黑夜的長(zhǎng)度作第二天黑夜的長(zhǎng)度來(lái)使用,這就解決了黑夜長(zhǎng)度不固定的難題,這是傳統(tǒng)電路不能完成的。