- Anyag szükséges
- Kördiagramm
- LED oszlopdiagram
- Arduino program az akkumulátorfeszültség figyeléséhez:
- Az akkumulátor feszültségjelzőjének működése
Az akkumulátorok bizonyos feszültséghatárral rendelkeznek, és ha a feszültség meghaladja az előírt határértékeket töltés vagy lemerülés közben, az akkumulátor élettartama befolyásolódik vagy csökken. Amikor akkumulátoros projektet használunk, néha ellenőriznünk kell az akkumulátor feszültségszintjét, függetlenül attól, hogy fel kell-e tölteni vagy ki kell-e cserélni. Ez az áramkör segít az akkumulátor feszültségének ellenőrzésében. Ez az Arduino akkumulátorfeszültség-jelző jelzi az akkumulátor állapotát azáltal, hogy világít a LED-ek egy 10 szegmenses LED oszlopdiagramon az akkumulátor feszültségének megfelelően. Ez az akkumulátor feszültségét is mutatja az Arduinóhoz csatlakoztatott LCD-n.
Anyag szükséges
- Arduino UNO
- 10 szegmenses LED oszlopdiagram
- LCD (16 * 2)
- Potenciométer-10k
- Ellenállás (100ohm-10; 330ohm)
- Akkumulátor (tesztelni kell)
- Csatlakozó vezetékek
- 12v-os adapter Arduino-hoz
Kördiagramm
LED oszlopdiagram
A LED oszlopdiagram ipari szabványméretű, alacsony energiafogyasztással. A sáv a fényerősség kategóriájába tartozik. Maga a termék az RoHS-kompatibilis változatban marad. Előrefeszültsége legfeljebb 2,6v. A szegmensenkénti teljesítményveszteség 65 mW. A LED oszlopdiagram üzemi hőmérséklete -40 ℃ és 80 ℃ között van. Számos alkalmazás létezik a LED oszlopdiagramon, mint például az audio berendezések, a műszerfalak és a digitális kijelző kijelző.
Pin diagram
PIN-konfiguráció
Arduino program az akkumulátorfeszültség figyeléséhez:
A teljes Arduino kód és bemutató videó a cikk végén található. Itt ismertettük a kód néhány fontos részét.
Itt meghatározzuk az LCD könyvtárat, és meghatározzuk az LCD csapjait, amelyeket az Arduino-nál használhatunk. Az analóg bemenet az A4-es érintkezőből származik az akkumulátor feszültségének ellenőrzéséhez. Az értéket Floatként állítottuk be, hogy a feszültséget két tizedesjegyig érjük el.
#include
int ledPins = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; // pin-tömb, amelyhez a LED-ek kapcsolódnak int pinCount = 10; // a csapok száma (azaz a tömb hossza)
Az LCD és az analóg csapok (A0, A1, A2, A3) beállítása OUTPUT csapokként.
void setup () {Soros.kezdés (9600); // megnyitja a soros portot, az adatsebességet 9600 bps-re állítja be az lcd.begin (16, 2); //// állítsa be az LCD oszlopainak és sorainak számát: pinMode (A0, OUTPUT); pinMode (A1, OUTPUT); pinMode (A2, OUTPUT); pinMode (A3, OUTPUT); pinMode (A4, INPUT); lcd.print ("Feszültségszint"); }
Itt elkészítünk egy funkciót a LED oszlopdiagram egyszerű használatához, sőt, egyesével programozva is világíthat a LED-ekkel, de a kód hosszú lesz.
void LED_funkció (int szakasz) {for (int j = 2; j <= 11; j ++) {digitalWrite (j, LOW); } for (int i = 1, l = 2; i <= szakasz; i ++, l ++) {digitalWrite (l, HIGH); // késés (30); }} Ebben a részben az analóg csap segítségével leolvastuk a feszültség értékét. Ezután az analóg értéket digitális feszültségértékre konvertáljuk az analóg-digitális konverziós képlet segítségével, és tovább jelenítjük meg az LCD-n.
// Átalakítási képlet a feszültség analógValue = analogRead (A4); Serial.println (analogValue); késés (1000); bemeneti feszültség = (analóg érték * 5,0) / 1024,0; lcd.setCursor (0, 1); lcd.print ("Feszültség ="); lcd.print (bemenet_feszültség); Soros.println (bemenet_feszültség); késés (100);
A bemeneti feszültség értéke szerint feltételeket adtunk a LED oszlopdiagram LED-ek vezérléséhez. Az az állapot, amelyet alább ellenőrizhet a kódban:
if (bemenet_feszültség <0,50 && bemeneti feszültség> = 0,00) {digitalWrite (2, HIGH); késés (30); digitalWrite (2, LOW); késés (30); // amikor a feszültség nulla vagy alacsony, akkor az 1. LED villogva jelzi} else if (input_feszültség <1,00 && input_feszültség> = 0,50) {LED_funkció (2); } else if (bemenet_feszültség <1,50 && bemeneti feszültség> = 1,00) {LED_funkció (3); } else if (bemenet_feszültség <2,00 && bemeneti feszültség> = 1,50) {LED_funkció (4); } else if (bemenet_feszültség <2,50 && bemeneti feszültség> = 2,00) {LED_funkció (5); } else if (bemeneti_feszültség <3,00 && bemeneti feszültség> = 2,50) {LED_funkció (6); } else if (bemeneti_feszültség <3,50 && bemeneti_feszültség> = 3,00) {LED_funkció (7); } else if (bemeneti_feszültség <4,00 && bemeneti feszültség> = 3,50) {LED_funkció (8);} else if (bemenet_feszültség <4,50 && bemeneti feszültség> = 4,00) {LED_funkció (9); } else if (bemenet_feszültség <5,00 && bemeneti feszültség> = 4,50) {LED_funkció (10); }}
Az akkumulátor feszültségjelzőjének működése
Az akkumulátorfeszültség jelzője csak leolvasta az értéket az Arduino Analog tűről, és az analóg-digitális átalakítás (ADC) képlet segítségével digitális értékgé alakította. Az Arduino Uno ADC 10 bites felbontású (tehát az egész értékek 0 - 2 ^ 10 = 1024 értékek). Ez azt jelenti, hogy a 0 és 5 volt közötti bemeneti feszültségeket 0 és 1023 közötti egész értékekre fogja feltérképezni. Tehát, ha az input anlogValue értéket (5/1024) -re szorozzuk, akkor megkapjuk a bemeneti feszültség digitális értékét. Itt megtudhatja, hogyan használhatja az ADC bevitelt Arduino-ban. Ezután a digitális érték felhasználásával a LED oszlopdiagram megfelelően világít.
Ellenőrizze ezt az egyszerű akkumulátorszint- ellenőrzőt mikrokontroller nélkül