Akkukapazität

Gast #122202
Hallo,

da bei meinem Projekt Akkulader, soweit alles funktioniert, möchte ich
jetzt eine Kapazitätsanzeige einfügen. Damit will ich dann die
eingeladene oder entladene Kapazität anzeigen. Nur steh ich momentan
auf dem Schlauch, wie ich das realisieren soll. Mit einem Timer, ist
mir schon klar, der frei wäre Timer0 (ATmega32).

Mfg Sascha
Gast #122203
Ich nutze folgendes um die Restkapazität der Akkus in Wohnmobil zu
bestimmen:
Ladestrom * Zeieinheit = Delta mAH der Batterien.

dazu brauche ich allerdings einen definierten Anfangszustand.
Weiterhin lasse ich Ladeströme < 50 mA unter den Tisch fallen verrechne
aber alle Entladeströme.

Das ganze hatte ich 4 Wochen im Testbetrieb und es hat funktioniert.
Gast #122204
Hi,

ich glaube, ich habe mich wohl unverständlich ausgedrückt. Habe einen
Akkulader mit einem ATmega32 gebaut. Nun will ich die Kapazität die ich
einlade, oder die, die ich entlade auf dem Display anzeigen.

Mfg Sascha
Gast #122207
Also.

Mein Problem ist der ermittlung der Zeit, in der ich 1mAh ge- oder
entladen habe. Auf dem Papier ist das weniger ein Problem. Mehr dafür,
den Wert in C zu errechnen und einen Timer dafür zu programmieren.

Mfg Sascha
Gast #122208
Ich habe das Problem anders angegangen:

Nimm eine feste Zeiteinheit (1 Sekunden z. Beispiel) und ermittle dafür
den durchschnittlichen Strom.

Damit kannst du dann die die Energie errechnen.
(ist das richtig?? mAH = Energie)
Gast #122209
Ich möchte ja einen fortlaufenden Zähler haben. Der Strom, der fließt,
ist ja bekannt. Demnach kann ich die Zeit, die ich brauche, um 1mAh ge-
oder entladen zu haben, ermitteln. Mit der Zeit will ich dann einen
Timer programmieren. Der soll dann bei jedem Überlauf den
Kapazitäts-Zähler um 1 erhöhen.

Mfg Sascha
Gast #122211
Das geht auch ein bißchen anders.
Update doch den angezeigten Wert in einem festen Intervall, z.B. 1s.
Die Ladung hat sich in der vergangenen Sekunde dann um [aktueller
Strom]*[Intervalldauer] Amperesekunden erhöht. 1As = 1C = 0,278 mAh
Gast #122212
Hi,

ich bin absoluter Anfänger in Programmierung, habe mir ganz neu ein
System gekauft (PIC-Basic.de).

Genau Dein Wunsch war auch meiner, seit gestern Abend läuft mein
Akkukapazitätsmesser (PIC 16871) problemlos.

Ich messe über einen Spannungsabfall an einem Shuntwiderstand den
Strom, teile den Wert durch 3600, bekomme so den Wert in mAh heraus.
Nach genau 1 sec. erfolgt die nächste Messung, der neue Wert wird zum
alten Wert addiert.
So habe ich eine fortlaufende Messung, Anzeige in Milliamperestunden.
Die Zeit der Stromentnahme wird ebenfalls angezeigt.

Wenn kein Strom fliesst, so läuft die Messung weiter, der Wert der mAh
bleibt stehen, die Zeitangabe ebenfalls.

Da ich noch keine Ahnung habe, wie ich eine "saubere" Zeitmessung
realisieren kann, fülle ich mit einem "Pause" Befehl die
Schleifenzeit auf, bis 1sec. erreicht wird.
Bei 1 Stunde Messzeit habe ich jetzt eine Abweichung von 5 sec, damit
kann ich leben.

Gruss,

Werner

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.