- Nepieciešams materiāls
- Ķēdes shēma
- LED joslu diagramma
- Arduino programma akumulatora sprieguma kontrolei:
- Akumulatora sprieguma indikatora darbība
Baterijām ir noteikta sprieguma robeža, un, ja uzlādes vai izlādes laikā spriegums pārsniedz noteiktos ierobežojumus, tas ietekmē vai saīsina akumulatora darbības laiku. Ikreiz, kad mēs izmantojam ar akumulatoru darbināmu projektu, dažreiz mums jāpārbauda akumulatora sprieguma līmenis, vai tas ir nepieciešams uzlādēt vai nomainīt. Šī shēma palīdzēs jums uzraudzīt akumulatora spriegumu. Šis Arduino akumulatora sprieguma indikators norāda akumulatora statusu, kvēlojot gaismas diodes uz 10 segmentu LED joslu grafika atbilstoši akumulatora spriegumam. Tas arī parāda jūsu akumulatora spriegumu LCD, kas savienots ar Arduino.
Nepieciešams materiāls
- Arduino UNO
- 10 segmentu LED joslu grafiks
- LCD (16 * 2)
- Potenciometrs-10k
- Rezistors (100ohm-10; 330ohm)
- Akumulators (jāpārbauda)
- Savienojošie vadi
- 12v adapteris Arduino
Ķēdes shēma
LED joslu diagramma
LED joslu diagramma ir rūpnieciska standarta izmēra un ar mazu enerģijas patēriņu. Bārs ir klasificēts pēc gaismas intensitātes. Pats produkts paliek RoHS atbilstošā versijā. Tam ir spriegums uz priekšu līdz 2,6v. Jaudas izkliede uz segmentu ir 65mW. LED joslu diagrammas darba temperatūra ir no -40 ℃ līdz 80 ℃. LED joslu diagrammai ir daudz lietojumprogrammu, piemēram, audio aprīkojums, instrumentu paneļi un digitālā rādījuma displejs.
Pin diagramma
Piespraudes konfigurācija
Arduino programma akumulatora sprieguma kontrolei:
Pilnīga Arduino kodu un demonstrēšana video tiek dota beigās šo rakstu. Šeit mēs esam izskaidrojuši dažas svarīgas koda daļas.
Šeit mēs definējam LCD bibliotēku un norādām LCD tapas, kas jāizmanto kopā ar Arduino. Lai pārbaudītu akumulatora spriegumu, analogo ieeju ņem no tapas A4. Mēs esam iestatījuši vērtību Float, lai iegūtu spriegumu līdz diviem cipariem aiz komata.
# iekļaut
int ledPins = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; // tapu masīvs, pie kura ir piestiprinātas gaismas diodes int pinCount = 10; // tapu skaits (ti, masīva garums)
LCD un analogo tapu (A0, A1, A2, A3) iestatīšana kā OUTPUT tapas.
void setup () {Sērijas.sākt (9600); // atver seriālo portu, datu pārraides ātrumu iestata līdz 9600 bps lcd.begin (16, 2); //// iestatiet LCD kolonnu un rindu skaitu: pinMode (A0, OUTPUT); pinMode (A1, OUTPUT); pinMode (A2, OUTPUT); pinMode (A3, OUTPUT); pinMode (A4, INPUT); lcd.print ("Sprieguma līmenis"); }
Šeit mēs izveidojam funkciju LED joslu diagrammas izmantošanai vienkāršā veidā, jūs pat varat spīdēt gaismas diodes, ieprogrammējot tos pa vienam, bet kods kļūst garš.
void LED_funkcija (int stadija) {for (int j = 2; j <= 11; j ++) {digitalWrite (j, LOW); } par (int i = 1, l = 2; i <= posms; i ++, l ++) {digitalWrite (l, HIGH); // kavēšanās (30); }} Šajā daļā mēs esam nolasījuši sprieguma vērtību, izmantojot analogo tapu. Pēc tam mēs pārveidojam analogo vērtību digitālā sprieguma vērtībā, izmantojot analogās uz ciparu pārveidošanas formulu un parādot to tālāk LCD.
// Pārrēķina formula spriegumam analogValue = analogRead (A4); Serial.println (analogValue); kavēšanās (1000); ievades spriegums = (analogValue * 5,0) / 1024,0; lcd.setCursor (0, 1); lcd.print ("Spriegums ="); lcd.print (ievades_spriegums); Serial.println (ievades_spriegums); kavēšanās (100);
Saskaņā ar ieejas sprieguma vērtību mēs esam izvirzījuši dažus nosacījumus, lai kontrolētu LED joslu diagrammas gaismas diodes. Nosacījums, kuru jūs varat pārbaudīt zemāk kodā:
ja (ievades_spriegums <0,50 && ievades_spriegums> = 0,00) {digitalWrite (2, HIGH); kavēšanās (30); digitalWrite (2, LOW); kavēšanās (30); // kad spriegums ir nulle vai zems, 1. gaismas diode parādīsies, mirgot} else if (input_voltage <1.00 && input_voltage> = 0.50) {LED_function (2); } else if (ievades_spriegums <1,50 && ievades_spriegums> = 1,00) {LED_funkcija (3); } else if (ievades_spriegums <2,00 && ievades_spriegums> = 1,50) {LED_funkcija (4); } else if (ievades_spriegums <2,50 && ievades_spriegums> = 2,00) {LED_funkcija (5); } else if (ievades_spriegums <3,00 && ievades_spriegums> = 2,50) {LED_funkcija (6); } else if (ievades_spriegums <3,50 && ievades_spriegums> = 3,00) {LED_funkcija (7); } else if (ievades_spriegums <4,00 && ievades_spriegums> = 3,50) {LED_funkcija (8);} else if (ievades_spriegums <4,50 && ievades_spriegums> = 4,00) {LED_funkcija (9); } else if (ievades_spriegums <5,00 && ievades_spriegums> = 4,50) {LED_funkcija (10); }}
Akumulatora sprieguma indikatora darbība
Akumulatora sprieguma indikators vienkārši nolasa vērtību no Arduino Analog tapas un pārveido to ciparu vērtībā, izmantojot formulu Analog to Digital Conversion (ADC). Arduino Uno ADC ir no 10-bit izšķirtspēju (tik vesels skaitlis vērtībām no 0 - 2 ^ 10 = 1024 vērtības). Tas nozīmē, ka tas ieejas spriegumus no 0 līdz 5 voltiem kartēs veselu skaitļu vērtībās no 0 līdz 1023. Tātad, ja mēs reizinām ieejas anlogValue ar vērtību (5/1024), tad mēs iegūstam ieejas sprieguma digitālo vērtību. Uzziniet šeit, kā izmantot ADC ievadi Arduino. Tad digitālā vērtība tiek izmantota, lai attiecīgi mirdzētu LED joslu grafiks.
Pārbaudiet arī šo vienkāršo akumulatora līmeņa monitoru bez mikrokontrollera