Indholdsfortegnelse:

Arduino batteritester med WEB -brugergrænseflade .: 5 trin
Arduino batteritester med WEB -brugergrænseflade .: 5 trin

Video: Arduino batteritester med WEB -brugergrænseflade .: 5 trin

Video: Arduino batteritester med WEB -brugergrænseflade .: 5 trin
Video: When The Quiet Kid Does Your Homework 💀 #electronics #arduino #engineering 2024, Juli
Anonim
Arduino batteritester med WEB -brugergrænseflade
Arduino batteritester med WEB -brugergrænseflade

I dag bruger elektronisk udstyr backup -batterier til at redde den tilstand, hvor operationen blev efterladt, da udstyret blev slukket, eller når udstyret ved et uheld blev slukket. Brugeren vender, når han tænder, tilbage til det punkt, hvor han blev, og spilder dermed hverken tid eller rækkefølgen af udførelsen af sine opgaver.

Trin 1: Introduktion

Introduktion
Introduktion

Jeg laver et projekt for at måle tilstanden af batterier med forskellige kapaciteter og spændinger ved hjælp af metoden: To-lags DC-belastning. Denne metode består i at trække en lille strøm fra batteriet i 10 sekunder og en høj strøm i 3 sekunder (IEC 61951-1: 2005 standarder). Fra denne måling beregnes den interne modstand og dermed dens tilstand.

Arbejdsstationen består af flere stik, et for hver type batteri og en pc. Til dette er en brugergrænseflade (UI) nødvendig. Den vigtigste del af denne vejledning er brugergrænsefladen, fordi disse metoder til batteritest er beskrevet i andre instruktioner. Jeg prøvede behandling og fik gode resultater, men besluttede mig for at lave min egen software ved hjælp af en lokal webserver og udnytte potentialet i HTML, CSS og php.

Det vides, at det er meget svært at sende oplysninger fra Arduino til en Windows -pc, men i sidste ende lykkedes det mig. Alle programmer er inkluderet i denne vejledning.

Trin 2: Hvad skal vi måle og hvordan

Hvad skal vi måle og hvordan
Hvad skal vi måle og hvordan
Hvad skal vi måle og hvordan
Hvad skal vi måle og hvordan

Intern modstand.

Hvert ægte batteri har en intern modstand. Vi går altid ud fra, at det er en ideel spændingskilde, det vil sige, vi kan få meget strøm, der holder den nominelle spænding konstant. Batteristørrelse, kemiske egenskaber, alder og temperatur påvirker imidlertid alle mængden af strøm, et batteri kan levere. Som et resultat kan vi oprette en bedre model af et batteri med en ideel spændingskilde og en modstand i serie, som vist i figur 1.

Et batteri med lav intern modstand er i stand til at levere mere strøm og holder koldt, men et batteri med høj modstand får batteriet til at varme op og spændingen falde under belastning, hvilket udløser en tidlig nedlukning.

Den interne modstand kan beregnes ud fra strøm-spændingsforholdet givet af to punkter i en afladningskurve.

Den tostrengede DC-belastningsmetode tilbyder en alternativ metode ved at anvende to sekventielle udladningsbelastninger med forskellige strømme og tidsvarigheder. Batteriet aflades først ved en lav strøm (0,2C) i 10 sekunder, efterfulgt af en højere strøm (2C) i 3 sekunder (se figur 2); Ohms lov beregner modstandsværdierne. Evaluering af spændingssignaturen under de to belastningsbetingelser giver yderligere oplysninger om batteriet, men værdierne er strengt resistive og afslører ikke ladetilstand (SoC) eller kapacitetsestimater. Belastningstesten er den foretrukne metode til batterier, der driver DC -belastninger.

Som tidligere nævnt er der mange metoder til måling af batterier, der behandles i andre instruktioner, og som kan implementeres med Arduino, men i dette tilfælde, selvom det ikke giver en komplet vurdering af batteriets tilstand, giver det værdier, der kan bruges til at estimere deres fremtidige adfærd.

Den interne modstand findes ved at bruge relationen

Hvor

Ri = (V1 - V2) / (I2 - I1)

? 1-spænding måles under lav strøm og længere tid;

? 2-spænding målt under høj strøm og kortere øjeblik;

? 1 - Strøm i længere tid;

? 2 - Strøm i det kortere øjeblik.

Trin 3: Kredsløb

Kredsløb
Kredsløb
Kredsløb
Kredsløb
Kredsløb
Kredsløb

Kredsløbet er en strømkilde, der trækker 0,2C (i dette tilfælde 4mA) og 2C (i dette tilfælde 40mA) fra batterier ved hjælp af kun et kredsløb styret med PWM -signalet fra Arduino. På denne måde er det muligt at måle alle backup -batterier med C = 20mAh, uanset deres spænding i området fra 1,2V til 4,8V og andre batterier med en anden kapacitet. I den første version brugte jeg to transistorer hver med en belastning til at dræne 4mA og de andre 40mA. Denne variant var ikke passende for fremtiden, da de ønskede at måle andre batterier med forskellig kapacitet, og denne ordning krævede et stort antal modstande og transistorer.

Kredsløbet med en strømkilde er vist i fig. 3. Frekvensen af PWM -signal fra pin 5 på Arduino -kortet er 940Hz, derfor er Fc for lavpasfilter (LPF) 8 Hz, det betyder, at den første harmoniske af PWM -signal (940Hz) dæmpes 20dB, fordi RC -filtrene giver 10 dB dæmpning pr. Årti (hver 10. gang vil Fc - dæmpning være 10dB i 80Hz og 20dB i 800Hz). IRFZ44n -transistoren er for stor, fordi batterier med større kapacitet i fremtiden vil blive testet. LM58n, dobbelt operationsforstærker (OA), er grænsefladen mellem Arduino -kortet og IRFZ44n. LPF blev indsat mellem de 2 operationsforstærkere for at sikre en god afkobling mellem mikroprocessoren og filteret. I figur 3 er pin A1 på Arduino forbundet til kilden til transistoren IRFZ44n for at kontrollere strømmen trukket fra batteriet.

Kredsløbet består af 2 dele, under Arduino UNO -kortet og over den aktuelle kilde, som vist på det næste foto. Som du kan se, er der hverken kontakter eller knapper i dette kredsløb, de er i brugergrænsefladen i pc.

Dette kredsløb tillader også måling af batterikapaciteten i mAh, da den har en strømkilde, og Arduino -kortet har en timer.

Trin 4: Programmer

Programmer
Programmer
Programmer
Programmer
Programmer
Programmer
Programmer
Programmer

Som nævnt ovenfor har applikationen på den ene side et UI lavet med HTML, CSS og på den anden side Arduino -skitsen. Interfacet er ekstremt enkelt i øjeblikket, fordi det kun udfører måling af intern modstand, i fremtiden vil det udføre flere funktioner.

Den første side har en rulleliste, hvorfra brugeren vælger spændingen på batteriet, der skal måles (fig. 4). Første sides HTML -program kaldes BatteryTesterInformation.html. Alle batterier har en kapacitet på 20 mAh.

Anden side, BatteryTesterMeasurement.html.

På den anden side er batteriet forbundet til det angivne stik og starter (START -knappen) målingen. I øjeblikket er denne LED ikke inkluderet, fordi den kun har et stik, men i fremtiden vil de have flere stik.

Når der klikkes på START -knappen, begynder kommunikationen med Arduino -kortet. På samme side vises formularen Måleresultater, når Arduino -kortet sender resultaterne af batteritest og START- og CANCEL -knapperne er skjult. BACK -knappen bruges til at starte testen af et andet batteri.

Funktionen af det næste program, PhpConnect.php, er at oprette forbindelse til Arduino -kort, sende og modtage data fra Arduino -kort og webserver.

Bemærk: Overførsel fra pc til Arduino er hurtig, men transmission fra Arduino til pc har en forsinkelse på 6 sekunder. Jeg forsøger at løse denne irriterende situation. Venligst, enhver hjælp er meget værdsat.

Og Arduino -skitsen, BatteryTester.ino.

Når den resulterende interne modstand er 2 gange større end den oprindelige (nyt batteri), er batteriet dårligt. Det vil sige, at hvis det testede batteri har 10 ohm eller mere, og efter specifikation, skal denne slags batteri have 5Ohms, at batteriet er dårligt.

Denne brugergrænseflade blev testet med FireFox og Google uden problemer. Jeg installerede xampp og wampp, og det kører godt i begge.

Trin 5: Konklusion

Denne type udvikling ved hjælp af en brugergrænseflade på pc'en har mange fordele, fordi den giver brugeren en lettere forståelse af det arbejde, de udfører, samt undgå brug af dyre komponenter, der kræver mekanisk interaktion, hvilket gør dem modtagelige for brud.

Det næste trin i denne udvikling er at tilføje stik og ændre nogle dele af kredsløbet for at teste andre batterier og tilføje en batterioplader også. Herefter vil printkortet blive designet og bestilt.

UI'en vil have flere ændringer for at inkludere batterioplader -siden

Alle ideer, forbedringer eller rettelser tøver ikke med at kommentere for at forbedre dette arbejde. På den anden side, hvis du har spørgsmål, så spørg mig, jeg vil besvare det så hurtigt som jeg kan.

Anbefalede: