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)
Ocijeni sadržaj
(0 glasova)

Vezani sadržaj:

  • VIDI doktor: PCB (Printed Circuit Board) dizajniranje

    Poštovana VIDI redakcijo,

    Dugogodišnji sam vjerni čitatelj VIDI časopisa te me baš vesele novi tekstovi iz kojih svašta mogu naučiti iz vaših brojnih i raznolikih tema.

  • SineStack, visoko integrirani baterijski sustav Rimac Energy, spreman je za isporuku u Colchester, Velika Britanija

    Rimac Energy, pionir u visoko integriranim sustavima za pohranu energije, najavio je isporuku svog prvog SineStack sustava na lokaciju u Colchesteru, UK.

  • Je li vrijeme za novi laptop?

    Pozdrav, Vidijevci!

    Vaša sam čitateljica dugi niz godina. Sada sam naišla na problem te se nadam da mi možete uputiti neki savjet.

  • (Ne)zgodni emotikoni

    Pozdrav doktore,

    Imam jedan neobičan problem.

  • Pregrijavanje procesora

    Pregrijavanje procesora

    Pozdrav doktore,
    prije nekoliko godina kupio sam dobar gaming PC koji i dan-danas bez problema vrti najnovije naslove. Kada je izašao, odmah sam kupio i7 7700K procesor te ga upario sa solidnim 280 mm AiO hladnjakom kojim ga mogu solidno i „overclockati“ jednom kada budu potrebne ekstra performanse. Jedina komponenta koju sam nadogradio je grafička kartica, kako bi sve radilo i na novim RayTracing naslovima. No, u zadnje vrijeme temperature procesora počele su značajno skakati do razine da cijeli komp onda koči dok ne ugasim sve. Mislim da nema problema s hladnjakom jer matična pokazuje da se vrte ventilatori, kao i pumpa. -Silvio

// 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.