本文展示了如何創(chuàng)建一個(gè)由時(shí)間開關(guān)電池供電的太陽能充電電路,用于為 Arduino Uno 和一些外圍設(shè)備(傳感器、通信模塊等)供電。
如果要設(shè)計(jì)遠(yuǎn)程數(shù)據(jù)記錄儀,電源總是一個(gè)問題。大多數(shù)時(shí)候沒有可用的電源插座,這迫使您使用一些電池為電路供電。但最終你的設(shè)備會沒電了……你不想去那里充電,對吧?因此,提出了一種太陽能充電電路,以利用來自太陽的免費(fèi)能量為電池充電并為您心愛的 Arduino 供電。
您將面臨的另一個(gè)問題是 Arduino 的效率。即使您將其置于睡眠狀態(tài),它也會消耗大量電池電量。
例如,Arduino串行和 USB 板使用 7805 類型的電源調(diào)節(jié)器,當(dāng) Atmega IC 處于空閑模式時(shí)需要 10 mA。將這些板置于睡眠狀態(tài)將減少幾 mA 的總功耗,但它仍然會很高”。
如果您使用自己的電源電路繞過低效穩(wěn)壓器,或者使用具有相當(dāng)高效電源的電路板,例如 Arduino Pro,那么睡眠對于降低功率和延長電池壽命非常有益。使用某些鋰離子電池時(shí),甚至可以完全移除調(diào)節(jié)器。
但大多數(shù)時(shí)候,您不想直接在 Arduino Uno 上使用您糟糕的焊接技能,或者不想購買更節(jié)能的設(shè)備。如果這是您的情況,本教程適合您。
另一個(gè)問題是,即使您的 Arduino 處于睡眠狀態(tài),您的傳感器可能仍處于活動狀態(tài),從而耗盡您的電池電量。因此,在太陽能充電電池中添加了一個(gè)定時(shí)器電路,它只為 Arduino 供電幾秒鐘,然后再次將其關(guān)閉以節(jié)省電量。它適用于您的微控制器僅用于讀取某些傳感器、傳輸或保存數(shù)據(jù)以及返回休眠幾分鐘的應(yīng)用。
此處描述的電路仍在測試中,未對所用組件進(jìn)行徹底分析(模型二極管、晶體管和電阻值)。我打算稍后將此電路變成用于 Arduino Uno 的電池供電的太陽能充電板,但現(xiàn)在我仍在嘗試和出錯(cuò)。因此,請隨時(shí)發(fā)表評論并關(guān)注此項(xiàng)目,并自擔(dān)風(fēng)險(xiǎn)使用它!
第 1 步:材料
您將需要以下組件來構(gòu)建此太陽能供電電路:
Arduino Uno
小面包板
5V 升壓器
鋰電池充電器(TP4056)
6V太陽能電池
18560鋰電池
電池座
1N4004 二極管 (x2)
555集成電路
2N3904 三極管(x2)
1 兆歐電阻 (x2)
100 kohm 電阻器 (x3)
10 kohm 電阻 (x1)
100 uF 電解電容器 (x2)
10 nF 陶瓷電容器 (x1)
5V 單刀雙擲繼電器
跳線
USB電纜
第 2 步:組裝太陽能電池充電器
首先,您必須組裝太陽能電池充電器電路。這使用來自一些太陽能電池的能量為電池充電,并將其電壓提高到 Arduino Uno 使用的 5V。
太陽能電池連接到鋰電池充電器(TP4056)的輸入端,其輸出連接到18560鋰電池。5V 升壓器也連接到電池,用于將 3.7V dc 轉(zhuǎn)換為 5V dc。您可以檢查圖片中組件之間的連接。
一些引腳焊接到兩個(gè)模塊(TP4056 和升壓器)的底部,以便更容易地連接到面包板。如果你不使用面包板,你可以用電線連接組件并焊接它們。
此時(shí),您可能已經(jīng)為 Arduino Uno 供電,將其連接到 booster 的 USB 連接器,您的 Arduino 將一直工作到電池耗盡。當(dāng)陽光充足時(shí),電池會自動開始充電。
請注意,TP4056 輸入被限制在 4.5 和 5.5V 之間。在這個(gè)電路中,太陽能電池板和電池充電器之間沒有電壓限制器。可能會使用齊納二極管來限制電壓并保護(hù)您的電路。
根據(jù)您的功耗,您的電池會快速放電。如果是這種情況,請執(zhí)行下一步。
第 3 步:定時(shí)器電路
有很多項(xiàng)目涉及 Arduinos 和一堆傳感器。在大多數(shù)情況下,Arduino 會定期讀取傳感器并在內(nèi)部存儲讀數(shù)或使用 Wi-Fi、藍(lán)牙、以太網(wǎng)等傳輸它們的值。。。。。。之后,它通常進(jìn)入空閑狀態(tài),直到到達(dá)下一個(gè)采樣時(shí)間。
在這段空閑時(shí)間里,您可能會讓 Arduino 進(jìn)入睡眠狀態(tài),但這不會節(jié)省很多電量。盡管微處理器降低了其功耗,但穩(wěn)壓器和其他外圍設(shè)備(例如您的傳感器和通信模塊)仍在工作,消耗了大部分電力。
此處提出的替代方案是使用外部定時(shí)器電路,該電路周期性地打開/關(guān)閉電源。當(dāng)它打開時(shí),Arduino 將執(zhí)行其設(shè)置、讀取傳感器并保存或傳輸數(shù)據(jù)。所有這一切都在幾秒鐘內(nèi)完成。之后,電路將切斷電源幾分鐘,然后重新啟動該過程。
在關(guān)閉狀態(tài)期間,定時(shí)器電路僅消耗幾毫安。
非穩(wěn)態(tài)模式下的 555 定時(shí)器電路旨在控制 Arduino 及其外圍設(shè)備何時(shí)開啟/關(guān)閉。在非穩(wěn)態(tài)電路中,輸出電壓在 Vcc (+5V)(高態(tài))和 GND (0V)(低態(tài))之間連續(xù)交替。該輸出用于驅(qū)動繼電器,該繼電器將定期切斷 Arduino 的電源。
通過選擇 R1、R2 和 C1 的值,可以確定周期(ON/OFF 周期重復(fù)所需的時(shí)間長度)和占空比(輸出打開的時(shí)間百分比)。增加 C1 將增加周期。增加 R1 會增加高電平時(shí)間 (T1),但不會影響低電平時(shí)間 (T0)。增加 R2 將增加高電平時(shí)間 (T1),增加低電平時(shí)間 (T0) 并降低占空比。
這種電路的最小占空比為 50%。這意味著,在最好的情況下,非穩(wěn)態(tài)只會在一半的時(shí)間內(nèi)切斷電路電源,這還不夠。因此決定在定時(shí)器的輸出端添加一個(gè)簡單的邏輯反相器(TQ1 和 R4)。這樣,將選擇 R1、R2 和 C1 的值,使占空比約為 90%(在邏輯反相器之前)。逆變器后,只有 10% 的時(shí)間輸出為 ON。該反向輸出用于驅(qū)動另一個(gè)晶體管 (TQ2),該晶體管用于驅(qū)動 5V 繼電器 (K1),最終切斷 Arduino 及其外圍設(shè)備的電源。
在第一次模擬中使用了任意值的電阻器和電容器,以驗(yàn)證電路的功耗。在關(guān)斷狀態(tài)期間,電路指示僅消耗 0.8 mA。當(dāng)電路開啟(短時(shí)間)時(shí),它消耗大約 40 mA,這會添加到 Arduino(和其他外圍設(shè)備)消耗的電流中。
很難測量實(shí)際值,但 Arduino Uno 通常消耗大約 52 mA。
考慮到這些值(關(guān)閉 5 分鐘和開啟 27 秒),具有睡眠模式的 Arduino 將消耗大約 36 mAh。如果使用定時(shí)開關(guān)電路,耗電量只有8毫安左右。功耗降低 77% 對我來說似乎很好。您還必須考慮其余電子設(shè)備(傳感器和通信模塊)以及升壓器和電池充電器消耗的電流,以獲得精確的電流值……
第 4 步:組裝定時(shí)器電路
根據(jù)原理圖組裝定時(shí)器電路。
以下值可用于電阻器和電容器以實(shí)現(xiàn) 5 分鐘關(guān)閉/27 秒開啟時(shí)間:
R1 = 2 兆歐
R2 = 200 千歐
R4 = 10 歐姆
R5 = 10千歐姆
C1 = 200 uF
C2 = 10 nF
值得注意的是,我使用了 SPDT 繼電器的常開 (NO) 輸出。我意識到有些繼電器只有常閉輸出,雖然它們具有相同的封裝,并且所有指示都相同。
另請注意,在圖片中我使用了不同的值,因?yàn)槲也幌氲却?5 分鐘才能看到我的電路工作。
圖為安裝在面包板上的電路。我有一個(gè)輸入(+5V/GND 來自升壓器)和一個(gè)輸出(+5V/GND 到 Arduino)。
為時(shí)間電路供電,將 Arduino 連接到它,看看它是否工作。您會不時(shí)聽到繼電器被啟動的聲音。
第 5 步:完成電路和測試
定時(shí)器電路工作后,將其輸出連接到Arduino 5V和GND引腳。它看起來像圖片中的那個(gè)。
Arduino 將每 5 分鐘通電一次并保持 27 秒。您可以更改這些值,為之前描述的電阻器和電容器選擇不同的值。
設(shè)計(jì)一個(gè)漂亮的外殼來保護(hù)你的電路,把它放在陽光下,看看它是否有效!
第 6 步:功耗和運(yùn)行時(shí)間
我想對功耗和運(yùn)行時(shí)間做一些考慮。
考慮5分鐘OFF和27秒ON,電路+Arduino的功耗如下:
不帶開關(guān)電路(使用睡眠模式):
平均電流 (Iavg) = (Ton*Ion + Toff*Ioff ) / (Ton +Toff)
噸(Arduino 處于活動狀態(tài))= 27 秒
離子 = 51.7 mA
Toff(arduino 關(guān)閉)= 5 分鐘 = 300 秒
Ioff = 34.9 毫安
Iavg = 36.3 毫安
工作電壓 (Vo) = 5V
平均功率 (Pavg) = Vo * Iavg = 5 * 36.3 = 181 mW
鋰離子電池容量 = 3000 mAh
電池電壓 = 3.7V
功率 =3.7 * 3000 = 11100 毫瓦時(shí)
電池壽命 = 11100/181 = 61 小時(shí) = 2.5 天
帶定時(shí)開關(guān)電路:
平均電流 (Iavg) = (Ton*Ion + Toff*Ioff ) / (Ton +Toff)
噸(arduino 處于活動狀態(tài))= 27 s
離子 = 92 mA
Toff(arduino 關(guān)閉)= 5 分鐘 = 300 秒
Ioff = 0.8 毫安
Iavg = 8.2 毫安
工作電壓 (Vo) = 5V
平均功率 (Pavg) = Vo * Iavg = 5 * 8.2 = 41 mW
鋰離子電池容量 = 3000 mAh
電池電壓 = 3.7V
功率 =3.7 * 3000 = 11100 毫瓦時(shí)
電池壽命 = 11100/41 = 270 小時(shí) = 11 天
此處未考慮 TP4056 和升壓器的功率損耗,這兩種情況肯定會縮短電池壽命。
這里要注意的重要一點(diǎn)是,該定時(shí)器電路還將節(jié)省一些降低傳感器功率的能量,而睡眠模式將繼續(xù)降低微處理器的消耗。
-
充電電路
+關(guān)注
關(guān)注
32文章
241瀏覽量
53614 -
電池供電
+關(guān)注
關(guān)注
0文章
253瀏覽量
22137 -
Arduino
+關(guān)注
關(guān)注
187文章
6464瀏覽量
186676
發(fā)布評論請先 登錄
相關(guān)推薦
評論