Translate

27 November 2009

Wie gehts weiter mit dem LIPO-Balancer

Ich konnte es dann doch nicht lassen
und hab mal wieder eine Nachtschicht
eingelegt um mal die serielle Ausgabe
der Spannungsmessung zu
programmieren.
Grundsätzlich geht das schon ganz gut,
aaaaaaaaaber...................
1. momentan wartet der ATtiny auf eine
Eingabe und erst dann wird weiter
balanziert das geht so nicht!
Der soll laufen, egal was an der
Schnittstelle los ist.
Ist sicher nur eine winzige Änderung,
aber ich habs noch nicht gefunden wies
geht- Geduld! wird schon noch!
Das ist mein erstes ATtiny Programm!!!
Da dauert manches halt etwas länger!
Vielleicht hat ja wer die Lösung!

mit:
rcall RdCOM
rcall RdADC
rcall WrCOM
(das sind Unterprogramme
des Microprozessor Lernpakets)

gehts halt nicht, weil das
Programm bei RdCOM
wartet, bis an der
Schnittstelle was passiert.
Bei einem eigenständigen
Spannungsmesser wäre
das aber egal !
Ich müsste das Verfahren dahingehend
ändern, dass der Zustand der Schnittstelle
nur abgefragt und irgendwo abgelegt wird.
Dann müsste entschieden werden wie
es weitergeht.Das Ganze ist aber ohnehin
kein Problem, wenn die Spannungsmessung
so wie ich es plane, völlig unabhängig
von der Balancereinheit laufen soll.

2. Das Ganze soll auch noch laufen wenn
der Akku leer ist also bis 2V und ev. darunter.
(der ATtiny 13v bzw. 25 laufen ab 1,8V stabil)
Eine Kopplung mit einer Art M-Bus kann ich
so nicht realisieren, zumindest nicht mehr
zuverlässig wegen der niedrigen Spannung
und CAN etc ist mir
derzeit noch viel zu kompliziert und braucht
auch zusätzliche Bausteine.
Eventuell wärs mit "Single-Wire" bzw I²C
sogar machbar, aber da fehlts bei mir
noch an Erfahrung.

Wie gehts weiter?
Ich denke, ich werde ADUM5241
Isolierübertrager mit integrierter 5V
DC-DC-Wandlung einsetzen,damit wär
schon mal die galvanische Trennung
der seriellen Schnittstelle
gelöst und mit den isolierten 5V kann
ich einen zweiten ATtiny betreiben
der am selben Spannungsteiler hängt
wie der Balancer. Damit könnte ich
jetzt schon die Spannung auslesen.

Falls ich es gelöst bekomme, die
Balancer- und die
Auslesefunktion zu entkoppeln
würde auch ein ATtiny reichen, aber
ich sollte ihn dann mit 5V versorgen.
Dann wäre der Balancer aber nicht
mehr eigenständig!
So ein ATtiny kostet nur ca 1 bis 1,50 €
was soll der Geiz.....??????
Bevors Probleme gibt, bau` ich halt
zwei drauf!
Das würde auch die Feinabstimmung
wieder vereinfachen.
Jeder Spannungsmesser braucht
eine spezifische Kennung für die
Adressierung.Die könnte dann
einfach so bleiben und zum Einstellen
der Balancerwerte könnte man
vorgefertigte HEX-files nehmen,
weil die ja so wieder unabhängig
von der Kennung der Zelle wären.
Ich bräuchte den Source-Code
nicht veröffentlichen und der
Anwender muss nicht
Programme compilieren,
sondern nur reinladen.
Oberer und unterer Grenzwert
ist eh fest und vom Akku-Typ
abhängig, also müsste nur die
Schwelle des Balancers eingestellt
werden. (in 0,0173V-Schritten)
Allein das spricht schon für
die Version mit zwei ATtinys.
Ausserdem wäre so die
serielle Schnittstelle des
Balancer-ATtiny frei,
also zwei weitere Ports frei
z.B. für "Unterspannungs-
Vorwarnung"
und
"Balancerschwelle
überschritten"
auf Balancer-Ebene,
also mit Schaltausgang
weil ich die serielle
Spannungsauslesung eher
als Option betrachte.
Ich will nicht von der
Funktion eines externen
Rechners abhängig sein!
Eigentlich sollte es reichen,
zu wissen, ob alles ok ist.
Ist der Wert wirklich so
wichtig????
Schön wärs auf alle Fälle,
den ablesen zu können,
das ist klar! Aber halt auch
Luxus!

Die Ausgabe der Meldungen
direkt aus dem Balancer werde ich
ohne galv.Trennung realisieren.
das geht gut mit einer Reihe von
kleinen P-Kanal Mosfet +Widerstand
in Reihenschaltung.
(je einer pro Modul und Meldung)
Wenn einer öffnet ist die Reihe
unterbrochen, ein Transistor an Masse
öffnet und ein Relais schaltet.
Braucht einen Draht je Meldung
durchgeschleift und geht ohne
zusätzliche CPU oder dergleichen.
Es soll ja möglichst einfach bleiben!

Wie ist das aber mit Jack Rickards
Ansichten vereinbar?

Ganz einfach!
So sehr widerspricht sich
das gar nicht!Man darf es nur
nicht zu verbissen sehen!
Letztendlich läuft doch alles
darauf hinaus, dass es nicht ohne
eine Unterspannungs-
Überwachung geht! Das ist es!
Ob nun oben oder unten
balanziert wird ist doch egal!
Der schwächste Akku wird immer
den größten Spannungshub haben,
ganz egal, wie mans macht!
Aber "unten" balanzieren
hat einen riesigen Vorteil!!!!!!!!
Da ja gar nicht mehr bis zum
"Ende" balanziert wird sondern
gewissermaßen mit dem Laden
aufgehört wird wenn die erste Zelle
voll ist, und letztendlich die
Balanzierspannung so angepasst
werden sollte, dass alle Zellen
zugleich leer!!!!! werden,kann
der Shunt-Widerstand viel
schwächer ausgelegt werden
und er braucht gar nicht den
Ladestrom niederzubügeln
sondern es genügt, jede
Zelle sanft in die richtige
Richtung zu schieben.
Somit ist auch das Problem
mit der Abwärme in den
Shunts kein Problem mehr.
Nach etlichen Ladezyklen
sollte alles passen.Ein wenig
Beobachten, den schwächsten
Zelle etwas mehr Ladung geben,
den stärksten etwas weniger
das wars dann schon!
Am Grundprinzip der
Schaltung ändert sich da nichts.
Und auch nicht an der
Tatsache, dass LIPOs allergisch
auf Über- und Unterspannung
reagieren! Nur die Sichtweise
auf die Problematik ist eine
etwas Andere.

Und Ich denke mal:
JACK HAT GRUNDSÄTZLICH RECHT!!!!
es hat ein bisschen gedauert,
bis ich alles verstanden habe,
was er meinte und ich will
auch nicht jede seiner
Meinungen gut heissen,
aber die Richtung stimmt!


Was wird so ein Balancer-Modul
letztlich kosten?????

ATtiny25(oder 13V) je ca 1,20€
1Mosfet für Shunt ca 1€
1Shunt 10R???? ca1€
1 kleiner p-Kanal-Mosfet
je Meldung ca 50cent
ein paar Widerstände,
Bandkabel+Stecker
+Kleinteile.....+Platine
also ca 10€ an Material
je Zelle denk ich mal,
an reinen Materialkosten.

Dafür gibts dann ein
wunderbar konfigurierbares
BMS-System der
Mittelklasse mit Über-
und unterspannungs-
Überwachung.
und eventuell
"Vorwarnung bei
Erreichen der Grenzen"

für serielle Spannungsauslesung
käme noch dazu:
ADUM5241 ca 3,50$
noch ein ATtiny......
also ca 5€

und ein Auslesegerät/Display
hmmmmm............
je nach Luxus..............
bzw was man sich da zurechtschnitzt,
und wie bunt??????
PC?
Handheld-PC ?

ev übers Navi??

LED-Display mit kleinem ATmega?
und Tasten zum durchklicken,
ev MAX-MIN-Anzeige
Das sollte so in der 50€-Region
realisierbar sein.

Wie schon erwähnt will ich
das "Übertragungsprotokoll"
aufs minimalste beschränken.
Derzeitiger Entwicklungsstand:
Zellennummer z.b. 008 wird
gesendet.
Zelle 8 erkennt nur diesen einen
Befehl und antwortet mit dem
AD-Wandler-Wert in 8-BIT
bezogen auf 1,1V Referenz
und ohne Umrechnung des
Eingangsspannungsteilers 1:4.

Zu Kompliziert! Klar!

8Bit bedeutet 255 Stufen,
Referenz am AD-Wandler 1,1V
1,1V / 255= 0,0043V
am Eingang je Einheit.

Spannungsteiler 10k / 3k3
= 4,03 : 1

also 1 Einheit = 0,0173V
(0,0043 x 4,03 = 0,0173)
am Akku

z.B.: 208= ca.3,6V (3,605)

Nochmal : Master schickt 008,
Zelle 008 antwortet 208
also hat Zelle8 gerade 3,6V

Das ist Überschaubar!

Die Umrechnung müsste
im Display erfolgen.

Aufgrund der winzigen Daten-
menge kann die Baudrate
sehr niedrig sein.

Der ATtiny könnte auch 10Bit
aber dann besteht die ausgegebene
Zahl aus 2 Byte; 2Bit + 8Bit
bei den 3,6V von vorhin wären
das dann 3 64
(00000011 01000000
also 3 x 256 + 64 = 832

Das gäbe dann zwar eine
Auflösung der Spannug
in 0,0043V Schritten
am Akku aber davon hat
niemand wirklich was.
Nur die Umrechnung wäre
komplizierter.
.....wenn mir mal
langweilig sein sollte...HA! HA!

Das kann man mit einem
primitiven Terminalprogramm
auslesen, das nur eine Reihe
von Nummern sendet und die
jeweilige Antwort anzeigt.
Vorerst muss man dann
zwar noch die Werte mit
0,0173V multiplizieren,
aber das ist auch noch lösbar,
.......später mal......

mfG Franz

2 Kommentare:

  1. Klingt interessant ... für mich nur begenzt zu verfolgen, aber durchaus interessant :)
    Wenn das mit der Anzeige im Display klappt und die Unterspannungskontrolle funktioniert, wäre das echt der Hammer! Mehr braucht man eigentlich nicht für die Überwachung.

    Wie ja schon geschrieben verfolge ich Jacks Umbauten schon lange und sehe es ähnlich wie Du. Er ist ein prakmatischer Realist und das mag ich an ihm so :)

    AntwortenLöschen
  2. Langsam wirds klar, wie ich es bauen werde.....
    Mit jeder neuen Idee kann sich ja bekanntlich jedes Konzept schlagartig ändern.
    ganz entscheidend:
    Ich werde Balancer und Digitale Anzeige
    voneinander getrennt ausführen.
    Die Fehlermeldungen kommen aber aus dem Balancer und sind somit unabhängig von
    irgendeiner Auswerteschaltung.
    Da beim Balancer die serielle Schnittstelle nun
    frei ist, habe ich zwei Meldungen "über"
    Eine davon wird eine Unterspannungs-Vorwarnung.
    Der Balancer-ATtiny wird aus dem Akku versorgt.
    Der Auslese-ATtiny wird galvanisch getrennt
    vom Fahrzeug versorgt mit 5V wegen der Schnittstelle.
    So kann man ohne Schaltungsänderung verschieden
    luxuriös bestücken:
    Attiny + Mosfet + Shunt =nur Balancer

    + 1Widerst +1 kleiner Mosfet +1Kabel
    =Warnmeldungsschleife

    + 1ATtiny + 1Isolierübertrager
    =Serielle Auslesbarkeit
    (noch nicht fertig getestet,
    Programm läuft aber schon)

    Die Schaltung zum Balazieren inclusive
    der Störmeldungsausgabe ist
    eigentlich schon einsatzfähig.
    Das Auslesen einzelner Werte
    über die serielle Schnittstelle
    geht auch schon.
    Völlig offen ist aber noch wie
    ich die vielen seriellen
    Schnittstellen auf eine zusammenfassen
    werde, und ob mein auf die
    Grundinformation begrenztes
    serielles Protokoll sich in
    der Praxis bewährt.
    (ist schon seeeeeehr einfach)
    Aber für die paar Werte sollte
    es genügen.

    mfG Franz

    AntwortenLöschen