Inhaltsverzeichnis:

DIY Arduino Batteriekapazitätstester - V1.0 - Gunook
DIY Arduino Batteriekapazitätstester - V1.0 - Gunook

Video: DIY Arduino Batteriekapazitätstester - V1.0 - Gunook

Video: DIY Arduino Batteriekapazitätstester - V1.0 - Gunook
Video: Akku Tester - selbst gebaut ! 2024, November
Anonim
Image
Image
DIY Arduino Batteriekapazitätstester - V1.0
DIY Arduino Batteriekapazitätstester - V1.0

[Video abspielen]Ich habe so viele alte Laptop-Batterien (18650) gerettet, um sie in meinen Solarprojekten wiederzuverwenden. Es ist sehr schwierig, die guten Zellen im Akkupack zu identifizieren. Früher in einem meiner Power Bank Instructable habe ich erzählt, wie man gute Zellen durch Messen ihrer Spannungen identifiziert, aber diese Methode ist überhaupt nicht zuverlässig. Also wollte ich wirklich eine Möglichkeit haben, die genaue Kapazität jeder Zelle anstelle ihrer Spannungen zu messen.

Update vom 30.10.2019

Sie können meine neue Version sehen

Vor einigen Wochen habe ich das Projekt mit den Grundlagen begonnen. Diese Version ist wirklich einfach und basiert auf dem Ohmschen Gesetz. Die Genauigkeit des Testers wird nicht 100% perfekt sein, aber er liefert vernünftige Ergebnisse, die verwendet werden können und mit anderen Akkus verglichen, so dass man gute Zellen in einem alten Akkupack leicht erkennen kann. Während meiner Arbeit habe ich festgestellt, dass es viele Dinge gibt, die verbessert werden können. In Zukunft werde ich versuchen, diese Dinge umzusetzen. Aber vorerst bin ich damit zufrieden. Ich hoffe, dass dieser kleine Tester nützlich ist, deshalb teile ich ihn mit euch allen. Hinweis: Bitte entsorgen Sie die schlechten Batterien ordnungsgemäß. Haftungsausschluss: Bitte beachten Sie, dass Sie mit Li. arbeiten -Ionen-Akku, der hochexplosiv und gefährlich ist. Für Sach-, Sach- oder Personenschäden übernehme ich keine Haftung. Dieses Tutorial wurde für diejenigen geschrieben, die Kenntnisse über die wiederaufladbare Lithium-Ionen-Technologie haben. Bitte versuchen Sie dies nicht, wenn Sie Anfänger sind. Bleib sicher.

Schritt 1: Erforderliche Teile und Werkzeuge:

Erforderliche Teile: 1. Arduino Nano (Gear Best / Banggood)2. 0,96 OLED-Display (Amazon / Banggood)3. MOSFET - IRLZ44 (Amazon)4. Widerstände (4 x 10K, 1/4W) (Amazon / Banggood)5. Leistungswiderstand (10R, 10W) (Amazon)6. Schraubklemmen (3 Nos) (Amazon / Banggood)7. Summer (Amazon / Banggood)8. Prototype Board (Amazon / Banggood)9. 18650 Batteriehalter (Amazon)

10. 18650-Akku (GearBest / Banggood)11. Abstandshalter (Amazon / Banggood) Erforderliches Werkzeug: 1. Drahtschneider / Abisolierer (Gear Best) 2. Lötkolben (Amazon / Banggood) Verwendetes Instrument: IMAX Balance Charger (Gearbest / Banggood)

Infrarot-Thermometerpistole (Amazon /Gearbest)

Schritt 2: Schema und Funktion

Schema und Funktion
Schema und Funktion
Schema und Funktion
Schema und Funktion

Schema:

Um den Schaltplan leicht zu verstehen, habe ich ihn auch auf eine Lochplatte gezeichnet. Die Positionen der Komponenten und der Verkabelung sind ähnlich wie bei meinem tatsächlichen Board. Einzige Ausnahmen sind der Summer und das OLED-Display. In der eigentlichen Platine sind sie drinnen, aber im Schaltplan liegen sie draußen.

Das Design ist sehr einfach und basiert auf Arduino Nano. Zur Anzeige der Batterieparameter dient ein OLED-Display. Für den Anschluss der Batterie und des Lastwiderstandes werden 3 Schraubklemmen verwendet. Ein Summer wird verwendet, um verschiedene Warnungen zu geben. Zwei Spannungsteilerschaltungen werden verwendet, um die Spannungen über dem Lastwiderstand zu überwachen. Die Funktion des MOSFET besteht darin, den Lastwiderstand mit der Batterie zu verbinden oder zu trennen.

Arbeiten:

Arduino überprüft den Batteriezustand, wenn die Batterie gut ist, geben Sie den Befehl zum Einschalten des MOSFET. Es lässt Strom vom Pluspol der Batterie durch den Widerstand fließen, und der MOSFET schließt dann den Weg zurück zum Minuspol. Dadurch wird der Akku über einen gewissen Zeitraum entladen. Arduino misst die Spannung am Lastwiderstand und dividiert dann durch den Widerstand, um den Entladestrom zu ermitteln. Dies wird mit der Zeit multipliziert, um den Wert in Milliamperestunde (Kapazität) zu erhalten.

Schritt 3: Spannungs-, Strom- und Kapazitätsmessung

Spannungsmessung

Wir müssen die Spannung am Lastwiderstand ermitteln. Die Spannungen werden unter Verwendung von zwei Spannungsteilerschaltungen gemessen. Es besteht aus zwei Widerständen mit Werten von jeweils 10k. Der Ausgang des Teilers ist mit den analogen Pins A0 und A1 von Arduino verbunden.

Der analoge Arduino-Pin kann Spannungen bis zu 5 V messen, in unserem Fall beträgt die maximale Spannung 4,2 V (vollständig geladen). Dann fragen Sie sich vielleicht, warum ich unnötigerweise zwei Trennwände verwende. Der Grund ist, dass mein zukünftiger Plan ist, denselben Tester für die Multi-Chemie-Batterie zu verwenden. So kann dieses Design leicht angepasst werden, um mein Ziel zu erreichen.

Strommessung:

Strom (I) = Spannung (V) - Spannungsabfall über dem MOSFET / Widerstand (R)

Hinweis: Ich gehe davon aus, dass der Spannungsabfall über dem MOSFET vernachlässigbar ist.

Hier ist V = Spannung am Lastwiderstand und R = 10 Ohm

Das erhaltene Ergebnis ist in Ampere. Multiplizieren Sie 1000, um es in Milliampere umzurechnen.

Also maximaler Entladestrom = 4,2 / 10 = 0,42A = 420mA

Kapazitätsmessung:

Gespeicherte Ladung (Q) = Strom (I) x Zeit (T).

Den Strom haben wir bereits berechnet, die einzige Unbekannte in der obigen Gleichung ist die Zeit. Die millis()-Funktion in Arduino kann verwendet werden, um die verstrichene Zeit zu messen.

Schritt 4: Auswahl des Lastwiderstands

Auswahl des Lastwiderstands
Auswahl des Lastwiderstands

Die Auswahl des Lastwiderstands hängt von der Menge des benötigten Entladestroms ab. Angenommen, Sie möchten die Batterie bei 500 mA entladen, dann ist der Widerstandswert

Widerstand (R) = Max. Batteriespannung / Entladestrom = 4,2 /0,5 = 8,4 Ohm

Der Widerstand muss etwas Leistung ableiten, daher spielt die Größe in diesem Fall eine Rolle.

Abgeführte Wärme = I^2 x R = 0,5^2 x 8,4 =2,1 Watt

Wenn Sie etwas Spielraum behalten, können Sie 5W wählen. Wenn Sie mehr Sicherheit wünschen, verwenden Sie 10W.

Ich habe 10 Ohm, 10W Widerstand anstelle von 8,4 Ohm verwendet, da er zu dieser Zeit in meinem Lager war.

Schritt 5: Auswahl des MOSFET

Auswahl des MOSFET
Auswahl des MOSFET

Hier wirkt MOSFET wie ein Schalter. Der digitale Ausgang vom Arduino-Pin D2 steuert den Schalter. Wenn dem Gate des MOSFET ein 5V-Signal (HIGH) zugeführt wird, kann Strom vom Pluspol der Batterie durch den Widerstand fließen, und der MOSFET schließt dann den Weg zurück zum Minuspol. Dadurch wird der Akku über einen gewissen Zeitraum entladen. Daher sollte der MOSFET so gewählt werden, dass er den maximalen Entladestrom ohne Überhitzung verarbeiten kann.

Ich habe einen n-Kanal-Leistungs-MOSFET-IRLZ44 mit Logikpegel verwendet. Das L zeigt, dass es sich um einen MOSFET mit Logikpegel handelt. Ein MOSFET mit Logikpegel bedeutet, dass er so ausgelegt ist, dass er sich vom Logikpegel eines Mikrocontrollers vollständig einschaltet. Der Standard-MOSFET (IRF-Serie usw.) ist für den Betrieb mit 10 V ausgelegt.

Wenn Sie einen MOSFET der IRF-Serie verwenden, wird er durch Anlegen von 5 V von Arduino nicht vollständig eingeschaltet. Ich meine, der MOSFET führt nicht den Nennstrom. Um diese MOSFETs einzuschalten, benötigen Sie eine zusätzliche Schaltung, um die Gate-Spannung zu erhöhen.

Daher empfehle ich die Verwendung eines MOSFET mit Logikpegel, nicht unbedingt IRLZ44. Sie können auch jeden anderen MOSFET verwenden.

Schritt 6: OLED-Display

OLED-Display
OLED-Display

Um die Batteriespannung, den Entladestrom und die Kapazität anzuzeigen, habe ich ein 0,96-Zoll-OLED-Display verwendet. Es hat eine Auflösung von 128 x 64 und verwendet den I2C-Bus, um mit dem Arduino zu kommunizieren. Zwei Pins SCL (A5), SDA (A4) in Arduino Uno werden verwendet für Kommunikation.

Ich verwende die U8glib-Bibliothek, um die Parameter anzuzeigen. Zuerst müssen Sie die U8glib-Bibliothek herunterladen. Dann müssen Sie sie installieren.

Wenn Sie mit OLED-Display und Arduino beginnen möchten, klicken Sie hier

Die Anschlüsse sollten wie folgt sein

Arduino-OLED

5V -Vcc

GND GND

A4-- SDA

A5-- SCL

Schritt 7: Summer für Warnung

Summer für Warnung
Summer für Warnung
Summer für Warnung
Summer für Warnung

Um verschiedene Warnungen oder Warnungen bereitzustellen, wird ein Piezo-Summer verwendet. Die verschiedenen Warnungen sind

1. Batterie niedrige Spannung

2. Batterie Hochspannung

3. Keine Batterie

Der Summer hat zwei Anschlüsse, der längere ist positiv und der kürzere ist negativ. Auf dem Aufkleber des neuen Summers ist auch ein " + " markiert, um den positiven Anschluss anzuzeigen.

Die Anschlüsse sollten wie folgt sein

Arduino Summer

D9 Pluspol

GND Minuspol

In der Arduino-Skizze habe ich eine separate Funktion beep() verwendet, die das PWM-Signal an den Summer sendet, auf eine kleine Verzögerung wartet, es dann ausschaltet und dann eine weitere kleine Verzögerung hat. Daher piept es einmal.

Schritt 8: Herstellung der Schaltung

Den Kreislauf machen
Den Kreislauf machen
Den Kreislauf machen
Den Kreislauf machen
Den Kreislauf machen
Den Kreislauf machen

In den vorherigen Schritten habe ich die Funktion jeder der Komponenten in der Schaltung erklärt. Bevor Sie die endgültige Platine herstellen, testen Sie zuerst die Schaltung auf einer Brotplatine. Wenn die Schaltung auf der Brotplatine perfekt funktioniert, dann bewegen Sie sich, um die Komponenten auf der Prototypplatine zu löten.

Ich habe eine 7cm x 5cm Prototypenplatine verwendet.

Montage des Nano: Zuerst zwei Reihen von Buchsenleisten mit jeweils 15 Stiften schneiden. Ich habe eine Diagonalzange verwendet, um die Header zu schneiden. Dann die Header-Pins löten. Stellen Sie sicher, dass der Abstand zwischen den beiden Schienen zum Arduino Nano passt.

OLED-Display montieren: Schneiden Sie eine Buchse mit 4 Pins. Dann löten Sie es wie im Bild gezeigt.

Montage der Klemmen und Komponenten: Löten Sie die restlichen Komponenten wie in den Bildern gezeigt

Verkabelung: Machen Sie die Verkabelung gemäß Schaltplan. Ich habe farbige Drähte verwendet, um die Verkabelung herzustellen, damit ich sie leicht identifizieren kann.

Schritt 9: Montage der Abstandshalter

Montage der Abstandshalter
Montage der Abstandshalter
Montage der Abstandshalter
Montage der Abstandshalter
Montage der Abstandshalter
Montage der Abstandshalter

Montieren Sie nach dem Löten und Verdrahten die Abstandshalter an 4 Ecken. Sie bieten ausreichend Abstand zu den Lötstellen und Drähten vom Boden.

Schritt 10: Software

Software
Software
Software
Software

Die Software erledigt die folgenden Aufgaben

1. Spannungen messen

Nehmen Sie 100 ADC-Samples, addieren Sie sie und bilden Sie den Durchschnitt des Ergebnisses. Dies geschieht, um das Rauschen zu reduzieren.

2. Überprüfen Sie den Batteriezustand, um eine Warnung auszulösen oder den Entladezyklus zu starten

Benachrichtigungen

i) Niedrig-V!: Wenn die Batteriespannung unter dem niedrigsten Entladeniveau liegt (2,9 V für Li Ion)

ii) Hoch-V!: Wenn die Batteriespannung über dem voll aufgeladenen Zustand liegt

iii) Keine Batterie!: Wenn der Batteriehalter leer ist

Entladezyklus

Wenn die Batteriespannung innerhalb der Niederspannung (2,9 V) und Hochspannung (4,3 V) liegt, beginnt der Entladezyklus. Berechnen Sie Strom und Kapazität wie zuvor beschrieben.

3. Zeigen Sie die Parameter auf dem OLED an

4. Datenprotokollierung auf seriellem Monitor

Laden Sie den unten angehängten Arduino-Code herunter.

Schritt 11: Exportieren von Seriendaten und Plotten auf Excel-Tabelle

Exportieren von Seriendaten und Plotten auf Excel-Tabellen
Exportieren von Seriendaten und Plotten auf Excel-Tabellen
Exportieren von Seriendaten und Plotten auf Excel-Tabellen
Exportieren von Seriendaten und Plotten auf Excel-Tabellen

Um die Schaltung zu testen, habe ich zuerst einen guten Samsung 18650-Akku mit meinem IMAX-Ladegerät aufgeladen. Dann lege die Batterie in meinen neuen Tester. Um den gesamten Entlassungsprozess zu analysieren, exportiere ich die Seriendaten in eine Tabellenkalkulation. Dann habe ich die Entladekurve gezeichnet. Das Ergebnis ist wirklich toll. Ich habe dafür eine Software namens PLX-DAQ verwendet. Sie können es hier herunterladen.

In diesem Tutorial erfahren Sie, wie Sie PLX-DAQ verwenden. Es ist sehr einfach.

Hinweis: Es funktioniert nur unter Windows.

Schritt 12: Fazit

Abschluss
Abschluss
Abschluss
Abschluss

Nach einigen Tests komme ich zu dem Schluss, dass das Testergebnis recht vernünftig ist. Das Ergebnis ist 50 bis 70 mAh von einem Markenbatteriekapazitätstesterergebnis entfernt. Mit einer IR-Temperaturpistole habe ich auch den Temperaturanstieg im Lastwiderstand gemessen, der Maximalwert beträgt 51 Grad C.

Bei dieser Konstruktion ist der Entladestrom nicht konstant, sondern hängt von der Batteriespannung ab. Die aufgetragene Entladekurve ähnelt also nicht der Entladekurve im Datenblatt des Batterieherstellers. Es unterstützt nur eine einzelne Li-Ionen-Batterie.

In meiner zukünftigen Version werde ich also versuchen, die oben genannten Mängel in der V1.0 zu beheben.

Kredit: Ich möchte Adam Welch meinen Dank aussprechen, dessen Projekt auf YouTube mich dazu inspiriert hat, dieses Projekt zu starten. Sie können sich sein YouTube-Video ansehen.

Bitte schlagen Sie Verbesserungen vor. Geben Sie einen Kommentar ab, wenn Fehler oder Fehler auftreten.

Ich hoffe, mein Tutorial ist hilfreich. Wenn es Ihnen gefällt, vergessen Sie nicht zu teilen:)

Abonnieren Sie für weitere DIY-Projekte. Danke schön.

Empfohlen: