HOW TO: Arduino mjerač kapaciteta Li-Po baterije - Programiranje

HOW TO: Arduino mjerač kapaciteta Li-Po baterije - Programiranje

Kako uz pomoć Arduina napraviti mjerač kapaciteta Li-Po baterija

Punjive baterije, glavna komponenta svakog prijenosnog uređaja. Punjive baterije neizostavan su dio svakog prijenosnog uređaja.

Programiranje

Biblioteku za OLED zaslon pronašli smo na internetu i već smo u nekoliko prijašnjih brojeva pokazali kako se zaslon spaja s Arduinom te kako se ispisuju poruke na zaslonu. Potrebno je uključiti biblioteku na početku programa, kao i sve ostale potrebne biblioteke. Korištene varijable su tipa float jer predstavljaju očitanu vrijednost, napon, pomoćnu varijablu „X“ i konstantu „Pom“ koja predstavlja koeficijent za pretvaranje izmjerenog napona u stvarni. 

U void setupu se definira početak rada s OLED zaslonom s naredbom „u8g2.begin();“. 

Void loop: Prije početka ispisivanja na zaslonu poželjno je očistiti njegovu unutarnju memoriju u koju se upisuju podaci za ispis, a to se vrši naredbom „u8g2.clearBuffer();“ . Prije početka ispisivanja podataka potrebno je odrediti font ispisivanja. Razne fontove možete pronaći na internetu, a oni osim oblika slova i brojki sadrže i veličinu fonta. U našem primjeru korišten je font veličine 14px. Zašto 14? Visina OLED zaslona je 32px, a uz dva reda ispisa i razmak od 4px preostaje 14px za font. Naredbom „u8g2.drawStr(2,15,”Napon”);“ ispisujemo tekst „Napon“ na lokaciji 2px počevši od lijeve strane i 15px počevši od donje strane. Orijentacija zaslona je vodoravna, tako da se priključni pinovi nalaze s lijeve strane ako je zaslon okrenut prema nama. Za ispisivanje vrijednosti varijabli koristi se naredba „u8g2.print(napon);“. No ta naredba nema mogućnost pozicioniranja početka pisanja, tako da prije ispisa vrijednosti varijable moramo definirati mjesto na kojem želimo da se ispiše na zaslonu, koristeći naredbu „u8g2.setCursor(73,15);“. Pozicioniranje mjesta pisanja, tj. pokazivača (eng. cursor): prva vrijednost je mjesto u redu, a druga vrijednost mjesto u stupcu, kako smo već objasnili. 73 je vrijednost počevši od lijeve strane, a 15 je vrijednost počevši od dna zaslona. Varijabli „ocitano“ pridružujemo očitanu vrijednost analognog signala na A0. Očitanu vrijednost dijelimo s 1023 i množimo s konstantom „pom“ i 4 kako bismo dobili stvarnu vrijednost napona.

OLED ekran i Li Po baterija 500mAh

Prikaz OLED zaslona i Li-Po baterije



U ovisnosti o vrijednosti napona, uređaj će ispisivati preostali kapacitet baterije u obliku postotka. Naredbom „u8g2.sendBuffer();“ šaljemo poruku zaslonu kako bi ju ispisao. Ispitivanje kapaciteta baterije nije potrebno često vršiti jer se neće isprazniti u roku od nekoliko minuta, već nekoliko sati ili dana.

 

Napomena:
Mjerač kapaciteta baterije testiran je i radi. Potrebno je izvršiti umjeravanje (baždarenje) jer su prilikom izračuna vrijednosti uzete kao idealne, otpornici imaju svoje odstupanje, a žice gubitke. Uređaj je konceptualno ispravan, a korigiranjem vrijednosti napona, mjerenjem stvarnih vrijednosti otpora i konstanti možemo dobiti vrlo precizan uređaj.

(Stranica 3 od 4)
« Prev All Pages Next » (Stranica 3 od 4)

Vezani sadržaj:

  • Optimizacija Windowsa

    Za gigu više

    Stiska s RAM-om je generacijama standardna priča u kontekstu osobnih računala, bez obzira radilo se o poslovnom ili skroz kućnom okruženju. „Da je bar još koja giga“ je izreka koju smo svi u nekom trenu pomislili.

  • Besplatne igre još uvijek postoje ali kako doći do njih?
    PISMO ČITATELJA ZA RUBRIKU VIDI DOKTOR:

    Srdačan pozdrav kompletnoj redakciji,

    Volim časopis VIDI te su mi zanimljive teme kako nadogradnji računala, tako i recenzije igara. No ovoga puta vam pišem s jednom molbom. Kako doći do besplatnih igara?

  • Dijagnostika mrežnih problema

    Poštovani doktore,

    Jučer je pao Cloudflare sustav, a to sam saznao na teži način.

  • Audio izazovi i dobrosusjedski odnosi

    Poštovani,

    Imam za Vas jedno pitanje u vezi snimanja zvuka (buke).

  • Windows 10 nema više podrške i što sada?

    Poštovana redakcijo,

    Moje računalo sastoji se od ovih komponenti - CPU: AMD Ryzen 5 1500X, RAM: 32 GB, TPM 2.0, GPU: Radeon RX 590, Disk: Kingmax SSD.

// možda će vas zanimati

Newsletter prijava


Kako izgleda naš posljednji newsletter pogledajte na ovom linku.

Copyright © by: VIDI-TO d.o.o. Sva prava pridržana.