mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Ableitung einer Messkurve bilden


Autor: Paul H. (powl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Um meine Akkus zu laden benutze ich derzeit das -dU Verfahren, da das 
aber nicht so gut ist und meine Akkus das scheinbar nicht so mögen 
wollte ich das Verfahren etwas verbessern.

Die Ladekurve eines Akkus steigt ja zunächst immer steiler werdend an, 
wird dann wieder schnell flacher und sinkt letztendlich ab dem -dU Hügel 
wieder. Bisher wurde die Spannungsdifferenz von Maximum und 3mV darunter 
detektiert, jedoch wird der Akku zu diesem Zeitpunkt laut Literatur 
schon überladen.

Wenn ich die Ladung direkt im Maximum oder noch besser im Wendepunkt der 
Ladekurve schon abschalten könnte wäre das Ideal. Das Problem ist, wie 
ermittle ich den Wendepunkt. Je nach Ladezustand kann die Ladung recht 
langsam vonstatten gehen oder recht schnell. Gemessen wird z.B. einmal 
die Sekunde. Der ADC ist so konfiguriert dass ich das Ergebnis direkt in 
mV als ADC-Wert rausbekomme.

Das Problem ist nun, dass ich zur Ableitung nicht einfach die Differenz 
zweier oder mehrere Werte nehmen kann. Bei einer langsamen Ladung 
bekomme ich zig mal hintereinander die gleichen Werte bis die Spannung 
endlich mal etwas steigt: 120 120 120 120 121 121 122 122. Die Differenz 
zweier Messwerte ist meistens 0 => fehlerhafte Ableitung. Wenn ich 
mehrere Messwerte mit einbeziehe und die Ladung zu schnell ist kann es 
sein dass das ganze zu ungenau wird.

Dass die genaue Ableitung zu dem Zeitpunkt wo mehrmals 120 gemessen wird 
bevor es endlich mit 121 121 122 122 weitergeht noch nicht vorhersagbar 
ist, ist klar. Wie könnte ich den Wendepunkt und dann das Maximum 
dennoch zuverlässig erkennen, weitestgehend unabhängig vom Messinterval?

mfg PoWl

Autor: Hannes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>-dU Verfahren, da das
>aber nicht so gut ist und meine Akkus das scheinbar nicht so mögen

Um welche Akkus handelt es sich? Für NiCd ist das Verfahren OK, für NiMH 
eher nicht.

>Gemessen wird z.B. einmal die Sekunde.

>Die Differenz zweier Messwerte ist meistens 0 => fehlerhafte Ableitung.

Deine Software solltest Du so gestalten, dass sie nicht stur jede 
Sekunde misst. Sie muss die Zeitanstände selbständig ermitteln.

Jedoch würde ich allgemein davon abraten, sowas selber zu programmieren. 
Es gibt gute Laderegler-IC's für wenig Bares. Und auch fertige 
Ladegeräte von sehr guten Firmen wie Ansmann. Da steckt jahrzehntelange 
Erfahrung drinnen.

Letztendlich ist es auch nicht ungefährlich, mit halbgaren Ladegeräten 
Akkus (unbeaufsichtigt) zu bestromen.

Autor: Paul H. (powl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es waren NiCd, allerdings minderqualitative weshalb das nicht so 
aussagekräftig ist. Mittlerweile kommen NiMh zum Einsatz. Für ein 
Laderegler-IC ist es leider zu spät, die Schaltung existiert schon und 
ist eingebaut (verklebt usw..)

Autor: vielleicht so (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>120 120 120 120 121 121 122 122

ist klar, bringt nichts. Der Trick ist gleichzeitig zu glaetten und 
hoehere Aufloesung zu haben. Mach ein exponentielles Mittel und schieb 
weniger als du solltest, ein paar mehr Wandlungen als 1 pro sekunde 
duerfens schon sein. Ich wuerd mal schauen, zu ueber den relevanten 
Zeitraum von sagen wir 30 sekunden auf 14-16 bit zu kommen. Das ist 
machbar mit einem Mittel aus 1024, oder mehr Messwerten

Autor: nemon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
schau dir mal das an: 
http://www.elv-downloads.de/service/manuals/Ladesc...
die arbeiten mit 12 bit

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wenn ich die Ladung direkt im Maximum...
Genau, das ist aber irgendwie auch wieder -dU! Man müsste halt -dU mit 
sehr hoher Auflösung messen.

>oder noch besser im Wendepunkt der
>Ladekurve schon abschalten könnte wäre das Ideal.
Ich sehe das überhaupt nicht als Ideal an!
Im Wendepunkt abzuschalten bedeutet, dass der Akku nicht vollgeladen 
wird, was zum einen dem Akku auch nicht gefällt... vielmehr aber den 
Anwender "ärgert", weil die Akkulaufzeit nicht optimal ist!
Man könnte zwar nach dem Wendepunkt mit reduziertem Ladestrom 
weiterladen, wobei dann aber wieder die Frage auftaucht, wann diese 
Top-Off-Ladung beendet werden soll (Zeit, -dU, dT, ...???)

An Deiner Stelle würde ich bei -dU bleiben. Das ist eine bewährte und 
(unter Berücksichtigung des Aufwandes) optimale Lademethode für NiCd und 
NiMH.
Mit deiner -3mV-Schwelle bist Du sehr gut dabei... für NiMH werden 
üblicherweise 5-10mV pro Zelle vorgeschlagen.
Infos zu Ladeparametern von Panasonic:
http://www.panasonic.com/industrial/battery/oem/im...

Autor: avion23 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan
-DU ist schon eine starke Überladung bei NiMh, sogar dU/dt==0 ist eine 
Überladung. "Am besten" ist der Wendepunkt. Dann weiß man, in welchem 
Zustand der Akku sich befindet. Außerdem Tritt bis zu 70% der Ladung 
kaum eine Erwärmung auf. Von diesem Punkt an kann man mit einer Topp-off 
charge arbeiten, um die Zellen durch leichte Überladung an zu gleichen. 
Eine Überladung bei 1/10C verkraften aktuelle Zellen problemlos.

@ Paul Hamacher

Ich habe das selbe Problem wie du, aber keine Lösung. Ich habe es mit 
dem zentralen Differenzenquotienten versucht, das sieht aber nicht schön 
aus:
0, 0, -1, +1, 0, 0, +1, 0, -1, 0, 0, 0, +1, 0, 0

Deswegen habe ich versucht stark zu glätten und lasse einen Counter 
mitlaufen, wie lange die Ladespannung sich nicht mehr erhöht hat. In 
diesem PUnkt müsste die Steigung=0 sein. Das Extremum zeigt sich bei 
dieser Zeitbasis ja als Pleateau.
Elegant ist das nicht :( Ich habe überlegt, dass man ein Array aufmachen 
kannin das immer neue Werte eingelesen werden. Aus diesen Werten werden 
dann mit viel höherer "Pseudoauflösung" Zwischenwerte ähnlich eine 
Gaußkurve berechnet. Diese Werte sind größer und damit bekäme ich eine 
zumindest zahlentechnisch höhere Ableitung und wäre nicht dauernd an der 
Diskretisierungsstufe.

Geholfen hat es auch etwas, die Zeitbasis auf 10s zu vergrößern.

Autor: Paul H. (powl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also die Zeitbasis werde ich noch anpassen. Das Problem ist nur, bei 
relativ vollem Akku geht die Aufladung binnen weniger Minuten 
vonstatten, die ganze Kurve wird superschnell durchlaufen. Bei leerem 
Akku kann sich das über Stunden hinziehen.

lg PoWl

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.