Sadržaj:

Provjera baterije s temperaturom i odabirom baterije: 23 koraka (sa slikama)
Provjera baterije s temperaturom i odabirom baterije: 23 koraka (sa slikama)

Video: Provjera baterije s temperaturom i odabirom baterije: 23 koraka (sa slikama)

Video: Provjera baterije s temperaturom i odabirom baterije: 23 koraka (sa slikama)
Video: Provjerite stanje kapacitet i istrošenost baterije laptopa - brzo i lako 2024, Studeni
Anonim
Image
Image
Promjena iz osnovnog projekta
Promjena iz osnovnog projekta

Ispitivač kapaciteta baterije.

Pomoću ovog uređaja možete provjeriti kapacitet 18650 baterija, kiselina i drugih (najveća baterija koju sam testirao je 6V kiselinska baterija 4, 2A). Rezultat testa je u miliamperima/satima.

Ovaj uređaj stvaram jer mi je potreban za provjeru kapaciteta lažne kineske baterije.

Radi sigurnosti, dodao sam, pomoću termistora, temperaturu otpora napajanja i baterije kako bih spriječio da se previše zagrije, s ovim trikom mogu provjeriti 6V kiselinsku bateriju bez vatre na ploči (u ciklusu pražnjenja idite na otpornik vruće energije a uređaj pričeka 20 sekundi da smanji temperaturu).

Odabrao sam mali mikrokontroler atmega328 kompatibilan nano (eBay).

Sav kôd je ovdje.

Korak 1: Promjena iz osnovnog projekta

Ukrao sam ideju iz projekta OpenGreenEnergy i prepravio sam ploču kako bih dodao značajke, pa sada postanite općenitiji.

v0.1

  • VCC iz Arduina sada se automatski izračunava;
  • Dodana je varijabla za promjenu postavki na ugodniji način.
  • Dodan postotak pražnjenja
  • Dodana temperatura baterije i otpornika napajanja

v0.2

  • Dodana mogućnost odabira baterije
  • Napravljen je prototip ploče (pogledajte shemu), sa zaslonom, gumbom i zvučnikom izvan ploče jer bih u budućnosti želio stvoriti paket.
  • Dodano upravljanje temperaturnom granicom otporniku snage tako da mogu blokirati proces kada temperatura poraste iznad 70 ° (preko ove temperature se otpor otpornika smanjuje).

v0.3

Uskoro ploča s ove usluge

Korak 2: V0.2 ploče

V0.2 Uprave
V0.2 Uprave

U v0.2 za podršku različitim vrstama baterija, stvorio sam strukturu koja mora biti ispunjena imenom baterije, minimalnim naponom i maksimalnim naponom (trebam pomoć pri popunjavanju: P).

// Struktura tipa baterijestruktura BatteryType {naziv naziva [10]; plovak maxVolt; plovak minVolt; }; #define BATTERY_TYPE_NUMBER 4 Vrsta baterije BatteryTypes [BATTERY_TYPE_NUMBER] = {{"18650", 4.3, 2.9}, {"17550", 4.3, 2.9}, {"14500", 4.3, 2.75}, {"6v Acid", 6.50, 5.91 }};

Sada koristim set 10k otpornika za razdjelnik napona za čitanje dvostruke temperature analognog ulaza. Ako želite podršku za promjenu napona, morate promijeniti ovu vrijednost (dalje objasnite bolje):

// Otpor napona baterije

#define BAT_RES_VALUE_GND 10.0 #define BAT_RES_VALUE_VCC 10.0 // Otpor napona napona otpornika #define RES_RES_VALUE_GND 10.0 #define RES_RES_VALUE_VCC 10.0

Ako ne koristite termistor, postavite ovo na false:

#define USING_BATTERY_TERMISTOR true

#define USING_RESISTO_TERMISTOR true

Ako koristite drugi zaslon i2c, morate prepisati ovu metodu:

void draw (void)

U projektu možete pronaći sheme preklapanja, fotografije i još mnogo toga.

Korak 3: Oglasna ploča: I2c kontroler prikaza znakova proširen

Oglasna ploča: I2c Kontroler prikaza znakova proširen
Oglasna ploča: I2c Kontroler prikaza znakova proširen

Koristio sam generički prikaz znakova, a izgradio sam i2c kontroler i koristio ga sa svojom prilagođenom bibliotekom.

Ali ako želite, možete uzeti normalni i2c kontroler (manji od 1 €) sa standardnom bibliotekom, kôd ostaje isti. Sav kôd prikaza ima funkciju crtanja pa ga možete promijeniti bez mijenjanja drugih stvari.

Ovdje je bolje objasniti.

Korak 4: Oglasna ploča: Prikaz znakova s integriranim I2c

Oglasna ploča: Prikaz znakova s integriranim I2c
Oglasna ploča: Prikaz znakova s integriranim I2c

Ista shema bez kontroliranog i2c proširena.

Korak 5: Realizacija

Za mjerenje napona koristimo princip razdjelnika napona (više informacija na Wikipediji).

Jednostavnim riječima, ovaj kôd je faktor množenja za mjerenje napona baterije.

batResValueGnd / (batResValueVolt + batResValueGnd)

Umetnuo sam 2 otpora vrijednosti batResValueVolt i batResValueGnd nakon i prije analogne žice za čitanje.

batVolt = (sample1 / (1023.0 - ((BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)) * 1023.0))) * vcc;

uzorak1 je prosječno analogno očitanje;

vcc referentni Arduino napon;

1023.0 je referentna maksimalna vrijednost analognog čitanja (Arduino analogno čitanje ide od 0 do 1023).

Da biste dobili amperažu potreban vam je napon nakon i prije otpornika.

Kad izmjerite napon nakon i prije otpornika za napajanje, možete izračunati miliampere koji troše bateriju.

MOSFET se koristi za pokretanje i zaustavljanje pražnjenja baterije iz otpornika napajanja.

Radi sigurnosti umetnuo sam 2 termistora za praćenje temperature baterije i otpornika napajanja.

Korak 6: Proširivost

Proširivost
Proširivost
Proširivost
Proširivost

Pokušavam stvoriti prototipnu ploču koja se može proširiti, ali za sada koristim samo minimalni skup pinova (u budućnosti ću dodati LED diode i druge gumbe).

Ako želite napon potpore veći od 10v, morate promijeniti vrijednost otpornika baterije i otpor prema formuli

(BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)

u shemi Napon snage otpornika

Napon snage otpornika GND 1/2/(Napon snage otpornika 2/2 + Napon snage otpornika GND 1/2)

Roza je lemljenje prema dolje

Korak 7: Popis dijelova

Količina Svojstva vrste dijela

  • 2 Terminalni vijak za pričvršćivanje vijaka za pričvršćivanje PCB -a 5 mm 8A 250V LW SZUS (eBay)
  • 1 Arduino Pro Mini klon (kompatibilan Nano) (eBay)
  • 1 osnovni FET P-kanalni IRF744N ili IRLZ44N (eBay)
  • 11 Otpor otpornika 10 kΩ 10 kΩ (eBay)
  • 2 Senzor temperature (termistor) 10kΩ; (eBay)
  • * Opći muški oblik zaglavlja ♂ (muški); (eBay)
  • * Opći ženski oblik zaglavlja ♀ (ženski); (eBay)
  • 1 PerfBoard ploča Prototipna ploča 24x18 (eBay)
  • 10R, 10W

    energetski otpornik (eBay) Našao sam svoj u starom crt televizoru.

Korak 8: Ploča: Resetirajte, tipkom Gnd E odaberite bateriju

Ploča: Resetirajte, tipkom Gnd E odaberite bateriju
Ploča: Resetirajte, tipkom Gnd E odaberite bateriju

U lijevom dijelu pinova možete pronaći gumb i zujalicu.

Koristim 3 gumba:

  1. jedan za promjenu vrste baterije;
  2. jedan za početak pražnjenja odabrane baterije;
  3. tada koristim pin za ponovno pokretanje i aktiviranje nove operacije.

Sav pin je već povučen prema dolje pa morate aktivirati pomoću VCC -a

Resetiranje se aktivira pomoću GND -a

Roza je lemljenje prema dolje

Korak 9: Ploča: I2c i Igle za napajanje

Ploča: I2c i Igle za napajanje
Ploča: I2c i Igle za napajanje

Do baze možete vidjeti VCC, GND i SDA, SCL za prikaz (i druge u budućnosti).

Roza je lemljenje prema dolje

Korak 10: Ploča: Termistor i mjerni napon

Ploča: Termistor i mjerni napon
Ploča: Termistor i mjerni napon

S desne strane nalaze se pinovi za očitavanje vrijednosti termistora, jedan za termistor naponskog napona, a drugi za termistor baterije (muški/ženski pinovi za pričvršćivanje).

Zatim postoje analogni pinovi koji mjere diferencijalni napon nakon i prije otpornika snage.

Roza je lemljenje prema dolje

Korak 11: Ploča: Otpor do mjernog napona

Ploča: Otpornik za mjerenje napona
Ploča: Otpornik za mjerenje napona
Ploča: Otpornik za mjerenje napona
Ploča: Otpornik za mjerenje napona

Ovdje možete vidjeti otpornik koji dopušta da podržava napon dvostruko veći od arduino pina (10v), morate to promijeniti da podrži veći napon.

Roza je lemljenje prema dolje

Korak 12: Korak lemljenja: Sve igle

Korak lemljenja: sve igle
Korak lemljenja: sve igle
Korak lemljenja: sve igle
Korak lemljenja: sve igle

Prvo dodajem sve igle i lemim ga.

Korak 13: Koraci lemljenja: Pulldown otpornik i termistor

Koraci lemljenja: Pulldown otpornik i termistor
Koraci lemljenja: Pulldown otpornik i termistor
Koraci lemljenja: Pulldown otpornik i termistor
Koraci lemljenja: Pulldown otpornik i termistor

Zatim dodam sve pulldown resitor (za gumbe) i i2c konektor (zaslon).

Zatim otpornik za napajanje jako je važan, jer se kiselinska baterija previše zagrijava.

Korak 14: Koraci lemljenja: MOSFET, otpornost na provjereni napon

Koraci lemljenja: MOSFET, otpornost na provjereni napon
Koraci lemljenja: MOSFET, otpornost na provjereni napon
Koraci lemljenja: MOSFET, otpornost na provjereni napon
Koraci lemljenja: MOSFET, otpornost na provjereni napon

Sada moramo umetnuti MOSFET za aktiviranje pražnjenja i otpor za provjeru napona.

2 otpora za napon prije otpornika snage 2 otpora za napon nakon otpornika snage, kada imate ovaj napon možete izračunati potrošnju u miliamperima.

Korak 15: Kodiranje

Mikrokontroler je kompatibilan s nano, pa morate postaviti svoj IDE da biste učitali Arduino Nano.

Za rad morate preuzeti kôd iz mog github spremišta.

Zatim morate dodati 3 biblioteke:

  1. Žica: standardna arduino knjižnica za i2c protokol;
  2. Knjižnica Termistor odavde nije knjižnica koju možete pronaći u arduino IDE -u, već moja verzija;
  3. LiquidCrystal_i2c: ako koristite proširenu/prilagođenu verziju i2c adaptera (moja verzija), morate preuzeti biblioteku odavde, ako koristite standardnu komponentu, biblioteku možete preuzeti iz arduino IDE -a, ali ovdje je sve bolje objašnjeno.

Ne testiram LCD sa standardnom bibliotekom. Čini mi se da su zamjenjivi, ali ako ima problema, slobodno me kontaktirajte.

Korak 16: Rezultat nakon sastavljanja

Image
Image
Rezultat nakon sastavljanja
Rezultat nakon sastavljanja
Rezultat nakon sastavljanja
Rezultat nakon sastavljanja

Osnovna ploča je na fotografiji, pa je možemo testirati.

Korak 17: Prvo odaberite Vrsta baterije

Prvo odaberite Vrsta baterije
Prvo odaberite Vrsta baterije

Kako je opisano, imamo kartu vrijednosti s konfiguracijom baterije.

// Struktura tipa baterijestruktura BatteryType {naziv naziva [10]; plovak maxVolt; plovak minVolt; }; #define BATTERY_TYPE_NUMBER 4 Vrsta baterije BatteryTypes [BATTERY_TYPE_NUMBER] = {{"18650", 4.3, 2.9}, {"17550", 4.3, 2.9}, {"14500", 4.3, 2.75}, {"6v Acid", 6.50, 5.91 }};

Korak 18: Počnite s pražnjenjem

Počnite pražnjenje
Počnite pražnjenje
Počnite pražnjenje
Počnite pražnjenje

Klik na drugi gumb za početak pražnjenja.

Na zaslonu se mogu vidjeti trenutni miliamperi, miliamperi/sati, postotak pražnjenja, napon baterije i temperatura otpornika i baterije.

Korak 19: Izuzeci: Baterija je uklonjena

Image
Image
Izuzeci: Temperaturno upozorenje
Izuzeci: Temperaturno upozorenje

Ako uklonite pražnjenje baterije, proces će se zaustaviti, kada ga ponovno umetnete Ponovno se pokreće na zadnjoj vrijednosti.

Korak 20: Izuzeci: Temperaturno upozorenje

Izuzeci: Temperaturno upozorenje
Izuzeci: Temperaturno upozorenje
Izuzeci: Temperaturno upozorenje
Izuzeci: Temperaturno upozorenje
Izuzeci: Temperaturno upozorenje
Izuzeci: Temperaturno upozorenje

Ako temperatura (baterija ili otpornik za napajanje) postane vruća, proces pražnjenja ide u stanku.

#define BATTERY_MAX_TEMP 50

#define RESISTANCE_MAX_TEMP 69 // 70 ° na podatkovnom listu (otpornici s smanjenjem vrijednosti) #define TEMP_TO_REMOVE_ON_MAX_TEMP 20

Zadana vrijednost za maksimalnu temperaturu je 50 ° za bateriju i 69 za otpornik snage.

Kao što možete vidjeti na komentaru, otpor snage utječe na smanjenje pri prelasku preko 70 °.

Ako je upozorenje podignuto, pokrenite TEMP_TO_REMOVE_ON_MAX_TEMP sekunde pauze da biste postavili nisku temperaturu.

Korak 21: Ispitivanje amperaže

Ispitna amperaža
Ispitna amperaža

Rezultat ispitivanja amperaže je dobar.

Korak 22: Paket

S odvojenom komponentom rezultat paketa jednostavan za realizaciju.

U kutiji mora biti pravokutnik za LCD, rupe za gumbe i vanjska ženska cijev za opskrbu naponom iz napajanja.

Pritiskom na gumb nije potreban otpornik jer ga dodajem već na ploči.

Kad imam malo vremena, kreiram ga i objavim.

Preporučeni: