王鈺 黃開亮 楊笑然 鄧旭東
摘要:隨著社會的發(fā)展,新能源的研究與應(yīng)用已經(jīng)成為必然趨勢。作為新能源的太陽能,雖然是清潔能源,但利用率有待提高。為了提高太陽能的利用率,文章提出了基于Arduino uno單片機(jī)的太陽能追隨系統(tǒng)。當(dāng)太陽光照充足的時候,系統(tǒng)進(jìn)行光電檢測,Arduino uno單片機(jī)控制著舵機(jī)隨光轉(zhuǎn)動,太陽能電池板進(jìn)行追光運(yùn)動,蓄電池不斷地進(jìn)行蓄電;當(dāng)太陽光變暗的時候,蓄電池進(jìn)行放電,從而點亮LED。太陽能追隨系統(tǒng),有效地提高了太陽能的利用率,達(dá)到節(jié)能的目的。
關(guān)鍵詞:太陽能追隨系統(tǒng);Arduino uno單片機(jī);太陽能電池板;節(jié)能
中圖分類號:TP39? 文獻(xiàn)標(biāo)志碼:A
0 引言
如今,人們對能源的需求日益增大,不可再生能源不斷地被消耗,能源問題逐漸成為人們重點研究的對象。隨著科技的進(jìn)步,大量的新能源不斷地被開發(fā)與利用,有效地緩解了能源問題。作為清潔能源的太陽能,不斷地被應(yīng)用到生產(chǎn)生活中,比如新能源汽車、太陽能熱水器、節(jié)能路燈以及光伏發(fā)電等。
國內(nèi)外學(xué)者不斷地研究如何更高效地利用太陽能,為此提出不同的設(shè)計方案。韓竺秦等[1]提出了基于STC89C52單片機(jī)的太陽能追蹤系統(tǒng),主要設(shè)計了驅(qū)動電路、檢測電路以及太陽定位電路等。石玉軍等[2]通過四象限光敏傳感器探測太陽的位置,并利用STC89C52單片機(jī)控制步進(jìn)電機(jī)運(yùn)行,從而實現(xiàn)對太陽能的跟蹤。隨云飛等[3]開發(fā)了一套太陽能自動追蹤系統(tǒng),使得太陽能電池板和集熱管垂直于太陽光線,實現(xiàn)較高的跟蹤精度。韓悅等[4]基于STM32單片機(jī)設(shè)計追蹤系統(tǒng),通過角度追蹤和光電感應(yīng)方式全方位地追蹤太陽能。邱錫強(qiáng)[5]基于STM32單片機(jī)研制了一種可移動的太陽能自動追蹤裝置,利用GPS模塊和傾角傳感器測量太陽和裝置的角度。陳沛宇等[6]從機(jī)械結(jié)構(gòu)方面設(shè)計了一種太陽能目標(biāo)雙軸追蹤機(jī)械系統(tǒng),將光電傳感器和雙軸追蹤相融合,實現(xiàn)快速追蹤太陽能。張雙華等[7]為提高光電轉(zhuǎn)換效率通過時控和光控方式跟蹤太陽能,設(shè)計了一種高精度太陽能雙軸跟蹤系統(tǒng)。太陽能追蹤系統(tǒng)可以應(yīng)用到生活中,比如家用電器、汽車行業(yè)、農(nóng)業(yè)等,充分利用新能源太陽能,減少了空氣污染,改善了人們的生活環(huán)境。因此,研究和設(shè)計太陽能追蹤系統(tǒng)具有很大意義。
本文提出了基于Arduino uno單片機(jī)的太陽能追隨系統(tǒng)。軟件設(shè)計部分,通過Arduino平臺進(jìn)行軟件編程,并將編譯無誤的程序加載到Arduino uno單片機(jī)內(nèi),根據(jù)是否有太陽光判斷是否進(jìn)行光電檢測,通過單片機(jī)控制著舵機(jī)和太陽能電池板的角度進(jìn)行追光運(yùn)動;硬件設(shè)計部分,本文設(shè)計了追隨系統(tǒng)的電路并進(jìn)行實物制作與調(diào)試,確保該系統(tǒng)可以達(dá)到實時追光的效果。當(dāng)有太陽光照射時,光敏電阻模塊給Arduino uno單片機(jī)提供信號,單片機(jī)控制著舵機(jī)和太陽能電池板進(jìn)行追光運(yùn)動,蓄電池持續(xù)蓄電操作;當(dāng)光線變暗時,蓄電池進(jìn)行放電,點亮LED。
1 太陽能追隨系統(tǒng)的總體設(shè)計
基于Arduino uno單片機(jī)的太陽能追隨系統(tǒng)的總體結(jié)構(gòu)如圖1所示,以光敏電阻模塊為觸發(fā)開關(guān),Arduino uno單片機(jī)作為太陽能追隨系統(tǒng)的主控芯片,搭載了舵機(jī)、太陽能電池板和蓄電池等模塊[8]。該太陽能追隨系統(tǒng)在有太陽光的時候可進(jìn)行自動追光運(yùn)動,提高了太陽能的利用率,達(dá)到了節(jié)能的目的。
基于Arduino uno單片機(jī)的太陽能追隨系統(tǒng)的總體設(shè)計流程如下:
(1)當(dāng)有太陽光照射到光敏電阻模塊時,光敏電阻模塊為Arduino uno單片機(jī)提供信號,驅(qū)動單片機(jī)運(yùn)行。
(2)通過Arduino平臺進(jìn)行編程,并將程序加載到Arduino uno單片機(jī)內(nèi),控制著兩個舵機(jī)追隨太陽光進(jìn)行水平運(yùn)動和垂直運(yùn)動。
(3)太陽能電池板隨著舵機(jī)進(jìn)行追光運(yùn)動,并且太陽能電池板通過充電模塊TP4056給蓄電池充電。
(4)當(dāng)太陽光光線變暗時,舵機(jī)和太陽能電池板不再運(yùn)動,蓄電池進(jìn)行放電,從而點亮LED。
2 太陽能追隨系統(tǒng)的軟件設(shè)計
太陽能追隨系統(tǒng)的程序是通過Arduino uno單片機(jī)在Arduino平臺上編程實現(xiàn)的,其軟件設(shè)計總體流程如圖2所示。
根據(jù)是否有太陽光來判斷程序是否進(jìn)行光電檢測,如果沒有太陽光,程序進(jìn)入初始化狀態(tài);如果有太陽光,經(jīng)光電檢測后設(shè)置兩個舵機(jī)的水平和垂直運(yùn)動的角度等參數(shù)。在Arduino平臺編譯好程序后,將程? 序加載到單片機(jī)內(nèi),并調(diào)試舵機(jī)能否正常運(yùn)行。為了消除舵機(jī)轉(zhuǎn)動發(fā)生抖動的現(xiàn)象,進(jìn)行了濾波處理。
3 太陽能追隨系統(tǒng)的硬件設(shè)計
3.1 太陽能追隨系統(tǒng)的電路設(shè)計
基于Arduino uno單片機(jī)的太陽能追隨系統(tǒng)的電路原理是利用太陽光照射到太陽能電池板上方的光敏電阻模塊時,舵機(jī)就會受到Arduino uno單片機(jī)的控制,實時地調(diào)整舵機(jī)的角度,進(jìn)行追光運(yùn)動,其電路原理如圖3所示。
本設(shè)計選用的是5 V的太陽能電池板,將太陽能電池板一正一負(fù)接到電池充電模塊TP4056輸入上,再把充電模塊輸出接上充電的電池。當(dāng)太陽光照射的時候,太陽能經(jīng)處理后通過充電模塊給蓄電池充電,蓄電池持續(xù)蓄電操作。
將PNP三極管8550的發(fā)射極接到充電模塊OUT+,集電極經(jīng)過一個10 Ω的限流電阻接上LED,三極管的基極和太陽能電池板的正極接在一起。當(dāng)太陽光照射太陽能電池板時,太陽能電池板有電壓,正極就是高電位給到PNP三極管的基極,三極管就被截止了,LED不亮,相當(dāng)于給充電電池充電。當(dāng)光線變?nèi)醯臅r候,太陽能電池板兩端的電壓就會逐漸降低,低到比較小的電壓的時候,電池板的正極就相當(dāng)于一個低電位,正極和三極管的基極相接,此時三極管導(dǎo)通。從充電電池里面流出的電流經(jīng)過三極管和限流電阻,點亮LED,從而實現(xiàn)有光照時追光蓄電、光線暗時給LED供電的功能。
3.2 太陽能追隨系統(tǒng)的硬件設(shè)計與實現(xiàn)
通過Arduino uno單片機(jī)控制兩個舵機(jī)轉(zhuǎn)動來實現(xiàn)系統(tǒng)自動追光的效果。當(dāng)有太陽光照射時,光敏電阻模塊檢測到光線亮度,會給Arduino uno單片機(jī)提供信號。Arduino uno單片機(jī)控制舵機(jī)進(jìn)行追光運(yùn)動,太陽能電池板的方位隨著舵機(jī)的運(yùn)動而改變,達(dá)到實時追光的效果。
利用舵機(jī)來控制太陽能電池板運(yùn)動時,使用兩個舵機(jī)分別控制太陽能電池板的方位,從而進(jìn)行垂直運(yùn)動和水平運(yùn)動,這兩個舵機(jī)的布局如圖4所示。兩個舵機(jī)的運(yùn)動范圍是0~180°,在組裝的時候要進(jìn)行調(diào)整,防止在追光運(yùn)動過程中舵機(jī)卡住,從而導(dǎo)致舵機(jī)損壞。由于舵機(jī)的工作角度受限,太陽能追隨系統(tǒng)有時候停留的地方光線較弱,按下Arduino uno開發(fā)板上的紅色按鈕或者盾板上的RESET鍵重新尋找并跟隨太陽光,從而實時掌握當(dāng)前的坐標(biāo)位置。根據(jù)照射角傳感器的變化來調(diào)整定位角度,從而增強(qiáng)太陽能電池板的追光效果,提高了太陽能的利用率。
在制作實物時,實驗器材的使用情況如下表所示,追隨系統(tǒng)實物如圖5所示。當(dāng)有太陽光照射時,光敏電阻模塊會給Arduino uno單片機(jī)提供信號,單片機(jī)發(fā)揮控制作用,舵機(jī)和太陽能電池板進(jìn)行追光運(yùn)動,蓄電池進(jìn)行蓄電操作;當(dāng)光線變暗時,舵機(jī)和太陽能電池板不運(yùn)動,蓄電池不斷放電,LED被點亮。表1為實驗器材。
4 結(jié)語
本文設(shè)計了一種基于Arduino uno單片機(jī)的太陽能追隨系統(tǒng),提高了太陽能的利用率,達(dá)到節(jié)能的目的。當(dāng)太陽光照射到光敏電阻模塊上,Arduino uno單片機(jī)控制著舵機(jī)進(jìn)行水平和垂直運(yùn)動,太陽能電池板進(jìn)行追光運(yùn)動,并通過蓄電池進(jìn)行蓄電操作;當(dāng)光線變暗時,舵機(jī)和太陽能電池板不運(yùn)動,蓄電池釋放電能,從而點亮LED。太陽能追隨系統(tǒng)有效地提高了太陽能的利用率,經(jīng)研究后也可以應(yīng)用到人們的日常生活中,比如太陽能電動車、太陽能充電寶以及太陽能風(fēng)扇等,有效地緩解了能源問題,減少了空氣污染,營造美好的生活環(huán)境。
參考文獻(xiàn)
[1]韓竺秦,牛王元,李玉華,等.基于STC89C52的太陽能追蹤系統(tǒng)設(shè)計[J].電子質(zhì)量,2016(2):31-34.
[2]石玉軍,劉振來,向根祥.太陽能追蹤系統(tǒng)的設(shè)計[J].河西學(xué)院學(xué)報,2015(5):51-55.
[3]隨云飛,趙建偉.太陽能自動追蹤系統(tǒng)的設(shè)計與研究[J].山西電子技術(shù),2016(4):82-83.
[4]韓悅,劉忠富,張可,等.基于STM32的多功能太陽能追蹤系統(tǒng)[J].山西電子技術(shù),2019(6):52-55.
[5]邱錫強(qiáng).一種可移動太陽能自動跟蹤裝置的研制[D].成都:西華大學(xué),2016.
[6]陳沛宇,歐陽華兵,何克勁,等.基于Arduino單片機(jī)的太陽能目標(biāo)追蹤系統(tǒng)設(shè)計[J].上海電機(jī)學(xué)院學(xué)報,2019(5):255-261.
[7]張雙華,文小玲,邵鵬程,等.高精度雙軸太陽能跟蹤控制系統(tǒng)的設(shè)計[J].武漢工程大學(xué)學(xué)報,2018(3):315-319.
[8]蔣嬋靜,羅志榮.基于AT89S52芯片的LED路燈控制系統(tǒng)的設(shè)計[J].照明工程學(xué)報,2018(3):86-88.
(編輯 傅金睿)
Design of solar tracking system based on Arduino uno microcontroller
Wang? Yu, Huang? Kailiang, Yang? Xiaoran, Deng? Xudong
(Nanjing Normal University Taizhou College, Taizhou 225300, China)
Abstract: With the development of society, the research and application of new energy has become an inevitable trend. As a new energy, solar energy is a clean energy, but its utilization needs to be improved. In order to improve the utilization of solar energy, this paper proposes a solar tracking system based on Arduino uno microcontroller. When the sun is shining, the system performs photoelectric detection,? the servo is controlled by the Arduino uno microcontroller to rotate with the sun, at the same time,the solar panel moves with the sun, then the battery keeps charging with the system tracking the sun;when the sun dims, the battery is discharged, so the LED is lit. The solar tracking system can effectively improve the utilization of solar energy and achieve the purpose of saving energy.
Key words: solar tracking system; Arduino uno microcontroller; solar panel;save energy