Innehållsförteckning:

Arduino batteritester med WEB -användargränssnitt: 5 steg
Arduino batteritester med WEB -användargränssnitt: 5 steg

Video: Arduino batteritester med WEB -användargränssnitt: 5 steg

Video: Arduino batteritester med WEB -användargränssnitt: 5 steg
Video: When The Quiet Kid Does Your Homework 💀 #electronics #arduino #engineering 2024, November
Anonim
Arduino batteritester med WEB -användargränssnitt
Arduino batteritester med WEB -användargränssnitt

Idag använder elektronisk utrustning reservbatterier för att rädda det tillstånd där operationen lämnades när utrustningen stängdes av eller när utrustningen av misstag stängdes av. Användaren, när den slås på, återvänder till den punkt där han stannade och slöser därmed varken tid eller ordningsföljd för sina uppgifter.

Steg 1: Introduktion

Introduktion
Introduktion

Jag gör ett projekt för att mäta tillståndet för batterier med olika kapaciteter och spänningar med hjälp av metoden: Två nivåer DC-belastning. Denna metod består i att dra en liten ström från batteriet i 10 sekunder och en hög ström i 3 sekunder (IEC 61951-1: 2005 standarder). Från denna mätning beräknas det inre motståndet och därmed dess tillstånd.

Arbetsstationen kommer att bestå av flera kontakter, en för varje typ av batteri och en dator. För detta krävs ett användargränssnitt (UI). Den viktigaste delen av denna handledning är användargränssnittet eftersom dessa metoder för batteritestning har beskrivits i andra instruktioner. Jag försökte bearbeta och fick bra resultat men bestämde mig för att göra min egen programvara med en lokal webbserver och dra nytta av potentialen i HTML, CSS och php.

Det är känt att det är mycket svårt att skicka information från Arduino till en Windows -dator men i slutändan lyckades jag. Alla program ingår i denna handledning.

Steg 2: Vad vi ska mäta och hur

Vad vi ska mäta och hur
Vad vi ska mäta och hur
Vad vi ska mäta och hur
Vad vi ska mäta och hur

Internt motstånd.

Varje riktigt batteri har ett internt motstånd. Vi antar alltid att det är en idealisk spänningskälla, det vill säga att vi kan få mycket ström som håller den nominella spänningen konstant. Batteristorlek, kemiska egenskaper, ålder och temperatur påverkar dock mängden ström ett batteri kan hämta. Som ett resultat kan vi skapa en bättre modell av ett batteri med en idealisk spänningskälla och ett motstånd i serie, som visas i figur 1.

Ett batteri med lågt internt motstånd kan ge mer ström och håller sig kall, men ett batteri med högt motstånd får batteriet att värmas upp och spänningen sjunka under belastning, vilket utlöser en tidig avstängning.

Det interna motståndet kan beräknas utifrån ström-spänningsförhållandet som ges av två punkter i en urladdningskurva.

Tvåstegs DC-lastmetoden erbjuder en alternativ metod genom att applicera två sekventiella urladdningsbelastningar med olika strömmar och tidslängder. Batteriet laddas först ut med en låg ström (0,2C) i 10 sekunder, följt av en högre ström (2C) i 3 sekunder (se figur 2); Ohms lag beräknar motståndsvärdena. Utvärdering av spänningssignaturen under de två belastningsförhållandena ger ytterligare information om batteriet, men värdena är strikt resistiva och avslöjar inte laddningsläget (SoC) eller kapacitetsuppskattningar. Lasttestet är den föredragna metoden för batterier som driver likström.

Som tidigare nämnts finns det många metoder för att mäta batterier som behandlas i andra instruktioner och som kan implementeras med Arduino, men i det här fallet, även om det inte ger en fullständig bedömning av batteriets tillstånd, ger det värden som kan vara används för att uppskatta deras framtida beteende.

Det interna motståndet hittas genom att använda relationen

Var

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

? 1-spänning mäts under låg ström och längre tid;

? 2-spänning mätt under hög ström och kortare tidpunkt;

? 1 - Ström under längre tid;

? 2 - Ström under kortare tid.

Steg 3: Krets

Krets
Krets
Krets
Krets
Krets
Krets

Kretsen är en strömkälla som drar 0,2C (i detta fall 4mA) och 2C (i detta fall 40mA) från batterier med endast en krets som styrs med PWM -signalen från Arduino. På så sätt är det möjligt att mäta alla reservbatterier med C = 20mAh, oavsett spänning i intervallet från 1,2V till 4,8V och andra batterier med annan kapacitet. I den första versionen använde jag två transistorer var och en med en belastning för att tömma 4mA och de andra 40mA. Den varianten var inte lämplig för framtiden eftersom de ville mäta andra batterier med olika kapacitet och detta schema krävde ett stort antal motstånd och transistorer.

Kretsen med en strömkälla visas i fig. 3. Frekvensen för PWM -signalen från stift 5 på Arduino -kortet är 940Hz, det är därför Fc för lågpassfilter (LPF) är 8 Hz, det betyder att den första övertonen för PWM -signalen (940Hz) dämpas med 20dB eftersom RC -filtren ger 10 dB dämpning per decennium (var tionde gång kommer Fc - dämpningen att vara 10dB i 80Hz och 20dB i 800Hz). IRFZ44n -transistorn är överdimensionerad eftersom batterier med större kapacitet kommer att testas i framtiden. LM58n, dubbel operationsförstärkare (OA), är gränssnittet mellan Arduino -kortet och IRFZ44n. LPF: n sattes in mellan de två operationsförstärkarna för att säkerställa en bra avkoppling mellan mikroprocessorn och filtret. I figur 3 är stift A1 på Arduino anslutet till källan till transistorn IRFZ44n för att kontrollera strömmen från batteriet.

Kretsen består av 2 delar, under Arduino UNO -kortet och ovanför den aktuella källan, som visas på nästa foto. Som du kan se finns det varken omkopplare eller knappar i den här kretsen, de finns i användargränssnittet i pc.

Denna krets gör det också möjligt att mäta batterikapaciteten i mAh eftersom den har en strömkälla och Arduino -kortet har en timer.

Steg 4: Program

Program
Program
Program
Program
Program
Program
Program
Program

Som nämnts ovan har applikationen på ena sidan ett användargränssnitt gjort med HTML, CSS och på den andra sidan Arduino -skissen. Gränssnittet är extremt enkelt, för tillfället, eftersom det bara utför mätningen av internt motstånd, i framtiden kommer det att utföra fler funktioner.

Den första sidan har en rullgardinsmeny, varifrån användaren väljer spänningen på batteriet som ska mätas (fig. 4). Första sidans HTML -program, kallas BatteryTesterInformation.html. Alla batterier har en kapacitet på 20 mAh.

Andra sidan, BatteryTesterMeasurement.html.

På den andra sidan är batteriet anslutet till den angivna kontakten och startar (START -knappen) mätningen. För närvarande ingår inte denna LED eftersom den bara har en kontakt, men i framtiden kommer de att ha fler kontakter.

När du har klickat på START -knappen börjar kommunikationen med Arduino -kortet. På samma sida visas mätresultatformuläret när Arduino -kortet skickar resultaten av batteritest och START- och AVBRYT -knapparna är dolda. BACK -knappen används för att påbörja testet av ett annat batteri.

Funktionen för nästa program, PhpConnect.php, är att ansluta till Arduino -kort, överföra och ta emot data från Arduino -kort och webbserver.

Obs: Överföringen från PC till Arduino är snabb men överföringen från Arduino till PC har en fördröjning på 6 sekunder. Jag försöker lösa denna irriterande situation. Snälla, all hjälp uppskattas mycket.

Och Arduino -skissen, BatteryTester.ino.

När det resulterande interna motståndet är 2 gånger större än initialt (nytt batteri) är batteriet dåligt. Det vill säga, om batteriet som testas har 10 ohm eller mer och, enligt specifikation, bör den här typen av batteri ha 5 ohm, det batteriet är dåligt.

Detta användargränssnitt testades med FireFox och Google utan problem. Jag installerade xampp och wampp och det fungerar bra i båda.

Steg 5: Slutsats

Denna typ av utveckling med hjälp av ett användargränssnitt på datorn har många fördelar eftersom det tillåter användaren en lättare förståelse av det arbete de utför liksom att undvika användning av dyra komponenter som kräver mekanisk interaktion, vilket gör dem mottagliga för avbrott.

Nästa steg i denna utveckling är att lägga till kontakter och modifiera vissa delar av kretsen för att testa andra batterier, och lägga till en batteriladdare också. Därefter designas och beställs kretskortet.

Användargränssnittet kommer att ha fler ändringar för att inkludera batteriladdarsidan

Vänligen, någon idé, förbättring eller korrigering tveka inte att kommentera för att förbättra detta arbete. Å andra sidan, om du har några frågor, fråga mig, jag svarar så snabbt jag kan.

Rekommenderad: