Kapazitäten von massenhaft 18650 Liion Zellen Messen......

Der chaotische Hauptfaden

Moderatoren: Heaterman, Finger, Sven, TDI, Marsupilami72, duese

Antworten
Benutzeravatar
Wulfcat
Beiträge: 1867
Registriert: Mi 14. Aug 2013, 22:43
Wohnort: Neuss, NRW, Dland,Kontinent Europa, Planet Erde, 3ter Planet Solsystem, Nördliche Spiralarm Milchstr

Kapazitäten von massenhaft 18650 Liion Zellen Messen......

Beitrag von Wulfcat »

Zum Sortieren und zusammenstellen von 18650 Liion Zellen aus alten Laptopaccus zum bauen von E Bike Fahraccus, möchte ich das Ausmessen der Kapazität Automatisieren, da ich mitlerwile beträchtliche Mengen davon zusammengetragen habe/Brauche (36V/30Ah Fahraccu angedacht... da stecken dann 150 zellen drin. :twisted: )

Angedacht ist, Lade/Endlade/Messgerät am PC Druckerport.
Budget wie üblich keins, daher nach möglichkeit 100% Altmaterial.

Im Müden Kopf ist mir folgendes aus dem Hirn gekrochen:
Aus einer Jüngst gefundenen Platine hab ich einen 8Bit AD mit 16fach Analog Multiplexer. Dazu gibt es noch ein Paar Klassiker, 8255 Portextender. Naheliegend also eine TTL Kiste in Fädeltechnik.
Über angepasstem Messverstärker nur den Spannungsbereich von 2,5 bis 4,2V abfragen ----> Bei 8 Bit und einer ausgewehrteten Spannungsdiffferenz von 1,7V eine auflösung von besser als 7mV. Ich würde sagen für eine Kapazitätsmessung mehr als ausreichend.... :mrgreen:
Der 16Bit Multiplexer legt nahe, das ich paralell bis zu 16 Zellen messsen könnte.

Ladung paralell von allen Zellen über 16 Relais von gemeinsamen "starkem"Ladegerät.(5V Schiene von PC Netzteil auf 4,2V umhäkeln???/Stromregelung)

Entladung über Transistoren und Lastwiderstände.

Gesteuert über den Druckerport/8255 Portextender + diversem Hühnerfutter und TTL Käfern.

Was haltet ihr grundsätzlich von dem groben Hardware Konzept

Weiche Wahre:

Steuersoftware die auf den Druckerport zugreift ---> Ladung, entladung steuert/Gemultipext die einzelnen Zellen abfragt und lade/ Endladekurven aufnimmte/Wh für jede Zelle errechnet. Zum Rechnen könnte man natürlich die Daten an so etwas wie Exel weiterreichen, das dann gleichzeitig auch die Ergebnisse dokumentiert.
In was würdet IHR die Software programmieren, die auf den Druckerport Zugreift, Steuert und die Daten an zb Exel weiterreicht.
Ich stehe momentan zwischen VB und C++ (Beides müsste ich mir erst in den Kop kloppen, wobei ich eher zu C++ tendiere)
Was denkt IHR? (Ausser das ich da mal wider zuviel abgebissen hab... :) )
Benutzeravatar
zauberkopf
Beiträge: 9532
Registriert: So 11. Aug 2013, 15:33
Wohnort: gefährliches Halbwissen

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von zauberkopf »

Hi !

Ich habe mir den hier mal aufgebaut : http://www.instructables.com/id/Arduino ... i-IonNiMH/
Den könntest Du leicht erweitern.. auf 4stk parallel. (der braucht 2 AD pro zelle).
Benutzeravatar
TecVictor
Beiträge: 786
Registriert: Do 30. Apr 2015, 17:10
Wohnort: Bonn
Kontaktdaten:

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von TecVictor »

Ich würde zum laden aber auf jeden Fall einen schaltregler nutzen der an der 12v Schiene des PC NTs hängt.
So kannst du direkt die Spannung besserer einstellen und hast über die 12v Schiene mehr Leistung.
Wen du einen guten Regler kaufst dann kannst du sogar den strom begrenzen damit eine defekte bzw niederohmige zelle nicht das ganze nt abschalten lässt.
So kannst du auch die Steuerung übers PC nt (5v) versorgen.

Mfg Victor
Benutzeravatar
BMS
Beiträge: 220
Registriert: Di 13. Aug 2013, 10:56

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von BMS »

Hallo,
zum Aufladen kann man auch diese Boards mit TP4056 (z.B. Pollin, ca. 3 Euronen) verwenden, die können eine Zelle über USB mit dem CCCV-Verfahren laden. Die Ladeendspannung soll bei LiIo auf 50mV und besser eingehalten werden. Da wäre so eine Fertiglösung recht einfach.

Zum Entladen kann man Konstantstromsenken bauen, z.B. mit LM317 (wird aber knapp wegen Dropout Voltage) und die Zeit messen werden, bis die Zelle unter 3,x Volt fällt. Die Kapazität ist dann einfach Zeit mal Strom. Das vereinfacht die Programmierung sehr. Bei einer Last mit konstantem R dagegen muss ich ja immer den aktuellen Strom ausrechnen und alles aufintegrieren... Vielleicht kann man auch darüber nachdenken, als Last eine High-Power-LED zu verwenden, die mit Konstantstrom gefüttert wird. Dann wäre die Energie nicht sinnlos in Wärme umgesetzt.... allerdings schwierig und wohl nur nice-to-have :mrgreen: Mit welcher Stromstärke soll entladen werden? 0,5A, 1A, 2A ... ?

Den Parallelport für die Kommunikation finde ich nicht so komfortabel. Mein Vorschlag wäre zunächst, einen ATmega einzusetzen, der sich um die Lade/Entladegeschichte kümmert und die Messdaten per serieller Schnittstelle raushaut. Die ließe sich auch nachträglich mit einem Konverter zukunftssicher zu USB wandeln. Die Daten kann man im Klartext übertragen und direkt aus den bekannten Terminals rauskopieren bzw. in eine Datei schreiben. Wenn das z.B. im CSV-Format gemacht wird, lässt sich das direkt in die Tabellenkalkulationen importieren.
Der ATmega hätte dann auch schon einen ADC mit 10Bit, bei 5V Referenz sind das <5mV Auflösung.

Grüße, Bernhard
Benutzeravatar
ferdimh
Beiträge: 9430
Registriert: Fr 16. Aug 2013, 15:19

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von ferdimh »

Ich mag Parportlösungen ;-)
Generell würde es reichen, pro Akku ein Steuerbit "Laden oder nicht" zu haben. Laden kann man gut mit einem LM317, der auf 4,2V eingestellt ist. +/- 50mV sind da gar kein Problem, wenn der LM317 gescheit gekühlt ist.
Entladen kann man mit einem weiteren LM317, der mit einem 2,2 Ohm-Widerstand als Konstantstromsenke geschaltet ist. Den Entladestrom messen!
Jetzt brauchts pro Kanal einen Lade-LM317, einen Entlade-LM317.
Ein "Leer"-Komparator (den ich bei 3,3V ansetzen würde, dann ist die Dropoutspannung des LM317 noch nicht unterschritten und danach kommt bei wenig ILast eh nicht mehr viel) wird mit 4051 (bei Bedarf mehrere) durch die Zellenbank geschaltet.
Für 8 Zellen reicht hier ein Parport. Die Datenleitungen steuern Laden/Entladen, die Steuerleitungen wählen die Zelle aus und eine Statusleitung hängt am Komparator.
Ein Relais schaltet zwischen "Laden" und "Entladen" um. Geladen wird einfach mal pauschal 6 Stunden, dann ist das Teil garantiert voll. Eine sinnvolle "Voll"-Erkennung ist bei Li-Zellen eh problematisch.
Benutzeravatar
Bastelbruder
Beiträge: 11566
Registriert: Mi 14. Aug 2013, 18:28

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von Bastelbruder »

Li-Zellen aller Art braucht man nicht erst laden und dann entladen um die Kapazität zu messen. Lithiumchemie gibt exakt die Milliamperestunden wieder raus die man hineingeladen hat. Die Differenz besteht in der durch den Innenwiderstand gegebenen Spannungsdifferenz. Es geht also auch Entladen mit anschließendem Laden. Und weil der Akku anschließend sowieso geladen werden muß, macht die zweite Methode Sinn.
Zellen mit nennenswerter Selbstentladung sind defekt, weg damit.
Der Innenwiderstand ist das Maß mit dem ich die Zellen selektieren würde.
Benutzeravatar
ferdimh
Beiträge: 9430
Registriert: Fr 16. Aug 2013, 15:19

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von ferdimh »

Bastelbruder:
Hierbei musst du aber berücksichtigen, dass Ausschlachtakkus in der Regel mit Schutzschaltung eine Weile gelegen haben und durch letztere sehr wohl eine (teilweise erhebliche) Selbstentladung haben.
Auch kennt man den Ladestand der Zellen nicht.
Also macht es m.E. Sinn, die Zellen erstmal zu laden (wenn man nicht alle vorher von Hand laden möchte, je nach Quelle), dann zu entladen (dabei die Kapazität zu bestimmen - dies ist einfacher als eine Messung beim Laden, weil man beim Entladen bis zu einem definierten Punkt I=const festsetzen kann - und zum Abschluß wieder zu laden.
Benutzeravatar
BMS
Beiträge: 220
Registriert: Di 13. Aug 2013, 10:56

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von BMS »

Der LM317 ist als elektrische Last mit Konstantstrom gut geeignet. Habe das kurz aufgebaut und vermessen (dabei vernünftig entwärmt), für 500mA.
Von 30V bis 3,2V herunter ist die Genauigkeit besser als 1%. Bei 3,1V sinkt der Strom um 2%, bei 3,0V um 9%. Bei 1,2x V Ausgangsspannung und 2V Drop war das zu ja erwarten.
Wenn man sich die typischen Entladekurven ansieht, ist aber sowieso klar dass bei den geringen Spannungen nicht mehr viel Kapazität zu holen ist.
Solange man über den 3,2V bleibt, lohnt es sich bei der Genauigkeit eigentlich nicht, den Entladestrom zu messen. Es reicht, wenn der einmal genau eingestellt wird, z.B. indem man parallel zum Lastwiderstand am Ausgang noch ein Poti mit Serienwiderstand hängt und dann den gewünschten Strom einstellt.
Grüße, Bernhard
Benutzeravatar
Wulfcat
Beiträge: 1867
Registriert: Mi 14. Aug 2013, 22:43
Wohnort: Neuss, NRW, Dland,Kontinent Europa, Planet Erde, 3ter Planet Solsystem, Nördliche Spiralarm Milchstr

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von Wulfcat »

Endlich komm ich wider dazu, mich mit meinen Projekten zu beschäftigen, nach Teppich verlegen, renovieren und kranke Frau pflegen.... :roll:


@ Zauberkopf
>>>>Ich habe mir den hier mal aufgebaut : http://www.instructables.com/id/Arduino ... i-IonNiMH/
Den könntest Du leicht erweitern.. auf 4stk parallel. (der braucht 2 AD pro zelle).<<<<

Ist ein Anduino das richtige Ding um in die Mikrocont. Prog. einzusteigen? Wie schon gesagt, bisher kenn ich die Dinger nur theoretisch/fertig programmiert :) (Vor Jahrzehnten hab ich Z80 Programmiert----> Blanker Hexcode..... :mrgreen: )

@ LordPhintex,
Ladestromquelle ist natürlich ein Problem, Lade Buckconvverter von der 12V Schiene des PC N. ist natürlich überlegenswert, 5V direkt zu Nutzen ist natürlch Nett, könnte jedoch durch den kleinen Verbrauch der µC problemmatisch werden, wenn der 5V Zweig nicht ordentlich belastet ist, wird ein PC-N. instabiel. Ich mag persönlich aber gern, wenn Steuerteil und Kraftstromteil völlig getrennt sind. deshalb eher ein eigenes Netzteil für den µC. (Man könnte natürlich auch die PC N. 5V Standby versorgung heranziehen, die ja meines wissens für 2A spezifiziert ist..... :?: )

@BMS

>>>Hallo,zum Aufladen kann man auch diese Boards mit TP4056 (z.B. Pollin, ca. 3 Euronen) verwenden, die können eine Zelle über USB mit dem CCCV-Verfahren laden. Die Ladeendspannung soll bei LiIo auf 50mV und besser eingehalten werden. Da wäre so eine Fertiglösung recht einfach.<<<

Keine schechte Idee, könnte aber bei der masse von Zellen die ich Paralell Laden, Entladen und Vermessen möchte, ein Budget Problem werden. Vielleicht mal schauen zu was für preisen die oder ähnliche Dinger direkt aus Maos Rotem Reich zu bekommen sind.....
Was spricht eigentlich gegen das zum Laden Paralellschalten(über Relais oder Mosfets) und eine Starke "Zentralstromquelle" --> eben das schon im Eingangstext erwähnte PC N. mit modifizerter 5V Schiene auf 4,2V/ Strombegrenzung.
In Sachen PC N. Modifikation hab ich da was am Start, möchte es Euch aber erst Vorstellen, wenn es (Nachbau) Sicher Funktioniert.. :mrgreen:

>>>>Zum Entladen kann man Konstantstromsenken bauen, z.B. mit LM317 (wird aber knapp wegen Dropout Voltage) und die Zeit messen werden, bis die Zelle unter 3,x Volt fällt. Die Kapazität ist dann einfach Zeit mal Strom. Das vereinfacht die Programmierung sehr. Bei einer Last mit konstantem R dagegen muss ich ja immer den aktuellen Strom ausrechnen und alles aufintegrieren... Vielleicht kann man auch darüber nachdenken, als Last eine High-Power-LED zu verwenden, die mit Konstantstrom gefüttert wird. Dann wäre die Energie nicht sinnlos in Wärme umgesetzt.... allerdings schwierig und wohl nur nice-to-have :mrgreen: Mit welcher Stromstärke soll entladen werden? 0,5A, 1A, 2A ... ?<<<<

Hmmm, Werd mal alle 317zener zusammentreiben und experimentieren. Als Entladestrom dachte ich so an 0,5C.
Ergo bei den 18650 Zellen von denen ich hier rede irgendwas um 1-1,2A

>>>>Den Parallelport für die Kommunikation finde ich nicht so komfortabel. Mein Vorschlag wäre zunächst, einen ATmega einzusetzen, der sich um die Lade/Entladegeschichte kümmert und die Messdaten per serieller Schnittstelle raushaut. Die ließe sich auch nachträglich mit einem Konverter zukunftssicher zu USB wandeln. Die Daten kann man im Klartext übertragen und direkt aus den bekannten Terminals rauskopieren bzw. in eine Datei schreiben. Wenn das z.B. im CSV-Format gemacht wird, lässt sich das direkt in die Tabellenkalkulationen importieren.
Der ATmega hätte dann auch schon einen ADC mit 10Bit, bei 5V Referenz sind das <5mV Auflösung.<<<<

Den Paralellport empfinde ich als recht übersichtlich um eine "Dumme" externe Technik zu steuern. Mit Portextendern Zwischenspeichern und decodern kann mann mit TTL bausteinen schon interressante Dinge tun(Fädeln) und von dem Zeug hab ich reichlich.
Vor dem Einsatz eines µC ziehe ich mich da noch, weil neben der Auswertenden Software, auch noch die Programmierung einer Seriellen oder USB Schnittstellen und zusätzlich der Programmierung von µC und dessen Schnittstelle zum PC.
Wie schon gesagt die Programmierung von allem muss erst in meinem Kopf Fuss fassen ;)

Ist die ATmega Familie ein guter Einsteiger Prozessor? (Hab irgendwo 2Dutzend gleiche, die ich geerntet habe, muss nur mal nachsehen welcher Typ......)

@ ferdimh

>>>>Ich mag Parportlösungen ;-)
Generell würde es reichen, pro Akku ein Steuerbit "Laden oder nicht" zu haben. Laden kann man gut mit einem LM317, der auf 4,2V eingestellt ist. +/- 50mV sind da gar kein Problem, wenn der LM317 gescheit gekühlt ist.
Entladen kann man mit einem weiteren LM317, der mit einem 2,2 Ohm-Widerstand als Konstantstromsenke geschaltet ist. Den Entladestrom messen!
Jetzt brauchts pro Kanal einen Lade-LM317, einen Entlade-LM317.
Ein "Leer"-Komparator (den ich bei 3,3V ansetzen würde, dann ist die Dropoutspannung des LM317 noch nicht unterschritten und danach kommt bei wenig ILast eh nicht mehr viel) wird mit 4051 (bei Bedarf mehrere) durch die Zellenbank geschaltet.
Für 8 Zellen reicht hier ein Parport. Die Datenleitungen steuern Laden/Entladen, die Steuerleitungen wählen die Zelle aus und eine Statusleitung hängt am Komparator.
Ein Relais schaltet zwischen "Laden" und "Entladen" um. Geladen wird einfach mal pauschal 6 Stunden, dann ist das Teil garantiert voll. Eine sinnvolle "Voll"-Erkennung ist bei Li-Zellen eh problematisch.<<<<

EIN GLEICHGESINNTER!!! :mrgreen:

Wie schon erwähnt steht ein 8Bit AD mit integriertem 16Kanal Mux zurverfügung und die schon erwähnten 8255 Portextender sowie reichlich verschiendenster TTL Käfer.
Damit stehen richlich "Bits" zum Steuern zur verfügung.
Wie Programmierts Du den Paralellport?
Zusätzliche Komperatoren für Leer?
Kapazitätsmessung einfach über Zeit zwischen Ladungsschluss/Entladebeginn und Entladeschluss durch den Komp, sowie eingestelltem entladestrom?
Eigentlich auch ne Methode, die ja dem "Zu Fuss Ausmessen" entspricht, nur halt automatisch

@ Bastelbruder
>>>>Li-Zellen aller Art braucht man nicht erst laden und dann entladen um die Kapazität zu messen. Lithiumchemie gibt exakt die Milliamperestunden wieder raus die man hineingeladen hat. Die Differenz besteht in der durch den Innenwiderstand gegebenen Spannungsdifferenz. Es geht also auch Entladen mit anschließendem Laden. Und weil der Akku anschließend sowieso geladen werden muß, macht die zweite Methode Sinn.
Zellen mit nennenswerter Selbstentladung sind defekt, weg damit.
Der Innenwiderstand ist das Maß mit dem ich die Zellen selektieren würde.<<<<

DAS verstehe ich jetzt nicht wirklich>>Der Innenwiderstand ist das Maß mit dem ich die Zellen selektieren würde.<< :?:

-----------------------------------------
Die Zellen sortiere ich vor, ich hab überall gelesen das Zellen mit unter 2,5V eh einen Knax haben, so kommen Zellen mit übermässiger Selbstendladung eh nicht in die engere Wahl. (Sie wären bei der "Lagerwahre" die ich in die Finger bekomme schon leer..... :mrgreen: )
Welche Spannungs Spanne (Delta U) würdet IHR als "Kapazitätmess Grundlage" zum Rechnen einsetzten?
Von 4,2V runter auf 3,2???

Danke schon mal im Vorraus.
Benutzeravatar
zauberkopf
Beiträge: 9532
Registriert: So 11. Aug 2013, 15:33
Wohnort: gefährliches Halbwissen

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von zauberkopf »

Ist ein Anduino das richtige Ding um in die Mikrocont. Prog. einzusteigen? Wie schon gesagt, bisher kenn ich die Dinger nur theoretisch/fertig programmiert :) (Vor Jahrzehnten hab ich Z80 Programmiert----> Blanker Hexcode..... :mrgreen: )
Mehr Ja als Nein würde ich sagen.
Kennste noch den 8051AH (Basic) ? So in etwa.. ;-)
Nur das die Boards jetzt ab 2,50 zu haben sind..

Arduino + Arduino IDE
Der grosse Vorteil von den Arduino-Boards ist, das man sich nicht mehr mit den Fuses rumärgern muss.
Ehrlich.. ich finde, diese Innovation zum KOTZEN !!!
Gute Dokumentation.. schnelle lernkurve.
IDEE... einfach.. aber es gibt ein Menüpunkt "Exampless".. das ist sehr einsteigerfreudig.

Der nachteil : Zeitkritische Dinge.. also im ms bereich.. würde ich sein lassen.
Fritzler kann sicherlich noch mehr Nachteile aufzählen..der ist da besser als ich.

Andere Idee : Arduino-Board und ASM oder GCC Compiler. Dazu ein Makefile von ozonisator und virtex.. und man hat die volle kontrolle über das teil.
Ist aber komplizierter. Mann kann aber gut von Arduino C auf das richtige C später umsteigen, wenn man bereit ist sich mehr mit dem Prozessor zu beschäftigen.

Für das Projekt reicht allerdings Arduino in reinform aus.

Ich kenne übrigens, noch einen, der heute noch seine Programme an einem alten selbstgebauten Z80 testet. In Hex.. mit einem selbstgeschriebenen Monitor Programm.
Das gleiche gilt auch für AVR's..
Nur.. die HEX Codes muss er noch mal gelegentlich nachschlagen.. Die 3 Zeichen vom Assemblercode sind ihm.. zu umständlich..
Das ist der Sondenfranz. http://home.arcor.de/f.macho/ Der hat all seine Decoder für die Wettersonden DFM-06/09 Imet1AB und RS41 in kleine Atmels gegossen, die NF ein und NMEA ausspucken.
Auch der FSK Decoder.. selbstverständlich.. als AVR ..
Getestet allerdings alles auf dem Z80.

lg JAn

Edit : Ich habe noch ein bisserl Z80 Chips rumliegen.. CPU's CTC SIO PIO.... wenn Du es gerne noch mal wissen willst..
Benutzeravatar
ferdimh
Beiträge: 9430
Registriert: Fr 16. Aug 2013, 15:19

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von ferdimh »

Unter DOS mit dem Borland Compiler helfen inportb und outportb auf die entsprechenden adressen.
Unter Linux helfen inb und outb (achtung Die Syntax ist genau andersrum!). Dafür muss man sich vorher per ioperm() Berechtigungen holen.
Linux ist hier praktisch, weil es zu jeder Funktion eine manpage gibt, die erklärt wies geht.
/dev/port ist auch noch eine Option, die kann man quasi immer benutzen.
Benutzeravatar
zauberkopf
Beiträge: 9532
Registriert: So 11. Aug 2013, 15:33
Wohnort: gefährliches Halbwissen

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von zauberkopf »

Benutzeravatar
xoexlepox
Beiträge: 4815
Registriert: So 11. Aug 2013, 19:28
Wohnort: So etwa in der Mitte

Re: Kapazitäten von massenhaft 18650 Liion Zellen Messen....

Beitrag von xoexlepox »

zauberkopf hat geschrieben:Der nachteil : Zeitkritische Dinge.. also im ms bereich.. würde ich sein lassen.
Stimmt! An so Etwas klemptnere ich gerade herum (da kommt es auf 10µs an). Nachdem ich dem "Framework" durch Patchen eines Files den Timer0-Interrupt klauen konnte (trommle direkt auf den Registern herum), funktionierte es zwar so halbwegs, aber es tauchten sehr seltsame Effekte auf. Nun versuche ich es (durch Umstricken der Makefiles) mit "pure gcc", was soeben zur Folge hatte, daß das Nano-Board nun überhaupt nix mehr macht :(
Andere Idee : Arduino-Board und ASM oder GCC Compiler. Dazu ein Makefile von ozonisator und virtex.. und man hat die volle kontrolle über das teil.
Ok, den Weg sind auch schon Andere gegangen... Sind Erfahrungen (bzw. Makefiles) dazu hier verfügbar?

Da meine Aussagen/Fragen hier doch ziemlich OT werden, poste ich das Gleiche nochmal im korrekten Thread für diese Fragen.
Antworten