Discussion in 'Opencharge' started by MalteS, Sep 2, 2008.

  1. MalteS

    MalteS Member

    Hallo Leute (falls hier noch jemand gelegentlich reinschaut)

    wie sieht es denn hinsichtlich Balancer aus, hat jemand Interesse daran?

    Randbedingungen für mich:
    12s
    min. 500mA Entladestrom pro Stufe

    Meine Gedanken dazu bisher:
    Strommessung über DG408/DG409 an Differenzverstärker
    - vor jedem Eingang der DG muss ein Spannungteiler
    - muss einzeln kalibriert werden, geht aber über präzisen Spannungsteiler in einem Schritt
    - recht gut skalierbar
    - Entweder differenziell mit dem DG409 oder interleaved mit dem DG408. Letzeres braucht einen Käfer weniger

    Entladestufe
    - Pegelwandler mit UDN2981
    - PNP Transistor (welchen?)

    Im Prinzip hadere ich gerade mit dem PNP Transistor für die Entladestufe. Dieser sollte min. 50V Uce aushalten, hfe von >100 haben und 1W Verlustleistung abkönnen. Ich würde da auch wieder auf SMD setzen, aber auch Durchkontaktiert wäre mal ein Anhaltspunkt.

    Hat da jemand Interesse sich daran (d.h. auch an der Arbeit) zu beteiligen?

    Gruß
    Malte
  2. MalteS

    MalteS Member

    So...
    als Entlade-Transistor macht der BC640, BCP53, BCX53 (unterschiedliche Packages) einen guten Eindruck.
  3. hawk72

    hawk72 New Member

    Bin auch seit einiger Zeit am "grübeln" allerdings als Standalone Lösung. Soll der Opencharge Lader nur als "Anzeige" dienen oder soll der Balancer direkt integriert werden .... ?

    Gruß Norbert
  4. MalteS

    MalteS Member

    Das ist ziemlich offen.

    Laut gedacht:
    Bei meinem Lader habe ich wohl die Option den Balancer über I2C Port Expander zu steuern. Allerdings sind bei mir gegenwärtig auch die Strom und Spannungsmessung über den internen ADC realisiert. Da dieser quasi die gesamte Regelung triggert ergibt sich einiges an Konsequenzen wenn 12 Spannungen zusätzlich gemessen werden müssen.
    Hätte aber den Vorteil das ich nur eine SW updaten müsste und da ist auch noch das neue Layout mit externen Wandlern. Das hätte das Problem nicht...

    Ich denke sinnvollerweise würde man auf einem Layout mal beides (Port Expander und einen ATMEGA) vorsehen und den ATMEGA evtl. nicht bestücken. Das dürfte dann vieleicht 1€ teuerer werden :)

    Interesse dich zu beteiligen?
  5. Space

    Space New Member

    Ja, großes sogar.

    Ich habe vor einiger Zeit einen Balancer gebaut, wo pro Zelle jeweils ein kleiner Tiny13 eine Zelle vermessen hat und das Ergebnis per UART und Optokoppler Entkopplung an eine "Hauptprozesor" versendet hat.
    Die Befehle des Hauptprozessors, also welcher Tiny seinen Balancerstrom (1A) aktiv werden lassen soll, wurden ebenfalls per "Optobus" an die Tinys versendet.

    Vom Konzept her war das sehr skalierbar. Allerdings gab es das Problem, daß der interne Takt der Tiny bei wechselnder Betriebsspannung (Zelladung) sich veränderte und die UART Kommunikation teilweise nicht mehr funktionierte. Mit eine Quarzoszilator pro Tiny oder einer gemeinsamen entkoppelten Taktleitung, währe auch diese Problem zu lösen gewesen. Alles in allem ist das aber zu aufwändig.

    Ich habe mir dann weiter Gedanken gemacht, wie man es auch lösen könnte. Ich bin dann schliesslich auch bei einem differentiell Multiplexer Konzept gelandet, also wie es dir wohl auch vorschwebt :).

    Spassbremse ist ja leider immer die Spannungsfestigkeit der Chips und das die Versogungsspannung der Multiplexer immer ein wenig größer sein muss als die durchzuschaltenden Spannungen. Deshalb hast du ja auch die Spannungsteiler ja vor dem Multiplexer vorgesehen. Das bedingt leider viele genaue Widerstände oder aber viele Einzel Kalibriervorgänge.

    Als Endladekombi würde ich eine FET (zB IRLD024, 60V, 3Vgs = 1Ads, DIP4, 47ct) und eine Widerstand 2W vorschlagen.

    Die Spannungsmessungen an den Zellen dürfen bei 500mA Balancerstrom nur in Balancerpausen erfolgen, wei die Balancer Leitungs und Kontaktwiderstände kein genaues Ergebnis ermöglichen. Das ist aber "nur" ein Software Problem.

    Die Anzeige und die Übergabe der Soll Balancerspannung an den Balancer würde ich durch Opencharge machen lassen.
    2 Pins am M32 sind ja noch wieder frei, was einen SW UART zum senden ermöglichen würde.
    Zum Empfang der Daten ( also Balancer -> Lader) müsste man das ganze entweder Interrupt gesteuert per HW UART (der RX am M32 mach ja ausser beim SW Update nichts) oder aber per "Meldeleitung", die Kommunikation synchronisieren.
  6. MalteS

    MalteS Member

    hey hier ist noch Leben :D Cool

    Hallo Thomas

    Hinsichtlich Multiplexer:
    Ich hätte hier auf Widerstandsnetzwerke als Eingangsspannungsteiler gesetzt um den Bestückungsaufwand in Grenzen zu halten. Für die Kalibrierung kann man (wenn man es schnell machen möchte) eine hohe Spannung (z.B. für 12s -> 50.4V) über einen Spannungsteiler aus 12x .1% Widerständen an alle Eingänge legen und dann den Kalibriervorgang automatisch ablaufen lassen.

    Die Spannungsversorgung der Multiplexer kann m.E. direkt aus der Versorgungsspannung (Batterie +) des Akkus erfolgen, auch wieder unter Verwendung eines Teilers der jedoch eine geringfügig grössere Spannung als des grössten Eingangs bereitstellt. Da gilt es aber noch etwas zu testen.

    Hinsichtlich FET:
    Da hatte ich auch schon drüber nachgedacht, es dann aber aufgrund der Problematik verworfen das die Gate to Source Spannung recht gross werden kann. Wohin schaltet man dann eigentlich Gate?
    Der Vgs kann man durch eine Z Diode und einen Widerstand Rechnung tragen.
    Die Transistorlösung braucht wohl noch zwei Widerstände und eine Diode.
    Bin an dieser Stelle vieleicht ein wenig durch den Balancer vorbelastet den re-engineered habe :cool:

    Ich habe die Transistorlösung schon angefangen zu zeichnen. Ich denke ich stelle das morgen Abend mal hier rein. Hast du hinsichtlich der Lösung mit FETs schon mal eine Skizze gemacht?

    Alles weitere deckt sich mit meinen derzeitigen Vorstellungen.

    Gruß & Gute Nacht
    Malte
  7. MalteS

    MalteS Member

    So hier mal der Status:

    (bisher nur für 6 Zellen, aber das kann man jetzt einfach kopieren)

    Attached Files:

  8. MalteS

    MalteS Member

    So jetzt noch ein paar Erklärende Worte:

    1) Der UDN2981 schaltet nach + durch. Das ist hier natürlich Quatsch. Da muss ein ULN2803 rein, der gegen Masse schaltet.

    Basierend auf dem Eingang des ULN2803 wird die Basis des Schalttransistor entweder auf den Emitter gezogen (über R6-R12). Damit sperrt der Transistor. Liegt am ULN für den jeweiligen Eingang eine posiives Signal an, so wird der Ausgang gegen GND geschaltet. Damit fließt ein Basisstrom der für einen Entladestrom in der jeweiligen Zelle sorgt. R38-R44 begrenzen den Basisstrom, R1-R5, R10 sind der Lastwiderstand.
    Die Diode sorgt dafür das die Zellen bei Verpolung nicht entladen werden da dann über Kollektor-Basis p-n Strecke und R6-R12 ein Strom fliessen würde. Auch dieser macht dann AFAIK die Kollektor-Emitterstrecke leitend.
  9. MalteS

    MalteS Member

    So das ist der Stand incl. dem Multiplexer für die Spannungen.
    Der Nachteil dieser Geschichte ist das die Eingangspannungen für den Multiplexer durch den Spannungteiler geteilt werden müssen. Gleichzeitig werden sie durch den Differenzverstärker (noch nicht gezeichnet) belastet. Bin jetzt etwas unschlüssig.

    Entweder man macht den Teiler Hochohmig, damit die Akkus nicht stark entladen werden. Dann muss man für den Differenzverstärker einen Instrumentation Amplifier einsetzen. Der ist a) teuer, und b) nicht allzu Spannungsfest. Hab jedenfalls noch keinen Typ für ~25V gefunden.
    Edit: INA 125 (bei Reichelt scheint geeignet zu sein). Alternativ vieleicht auch AD 620, der kann bis 18V. (Wobei ich eigentlich vorhatte die Spannungen im Verhältniss 1/2 zu teilen)

    oder
    Teiler recht niederohmig, schaltet das ganze aber ab (FET vor GND). Dann geht auch ein normaler Opamp.

    Vieleicht gibt es auch einen Mittelweg. Ein 10k Teiler ist vieleicht geeignet. Müsste man mal drüber nachdenken.

    Gruß
    Malte

    Attached Files:

  10. Space

    Space New Member

    Hallo Malte,

    eine Bitte vorweg, den Schalplan bitte als Orginal Eagle (ZIP) File oder aber Gif, Tif oder PNG anhängen. Ein JPG ist für Schrift und Zeichnungen nur schwer lesbar.
    Ich muss erstmal ein wenig in das Thema wieder reinkommen. Entschuldige bitte, wenn ich mal mit meinen Kommentaren daneben liege.

    Ich verstehe die von dir geschilderte Problemstellung zu dem Differenzverstärker, welcher die Spannunsgteiler belastet, nicht ganz. Der Eingang eines typischen Opamp ist sehr hochohmig (2nA Eingangsstrom), im Vergleich zu einem 10K Ohm Spannunsgteiler ( 200µA) praktisch ( 10^5) zu vernachlässigen.

    Der INA 125 ist denke ich eine gute Wahl als Instrumenten Verstärker. Leider ist er mit 4,40€ nich günstig. Ich bin am überlegen ob nicht ein einfacher OpAmp als Differnezverstärker ausreichend ist. .....mhh, bedingt wohl deutlich mehr SW Kalibrierung.


    Was nicht funktionieren wird, die Ausgänge der 3 Multiplexer einfach zusammen zu schalten. Auch wenn zeitgleich nur einer durchgeschaltet ist, weisst du nicht sicher was die Ausgänge der beiden passiven Multiplexer "mit reinbringen" oder ob sie gar kaputt gehen (Ausgänge nie einfach zusammen schalten) Ab 9 Zellen wird man die Multiplexer Ausgänge wohl nochmal über einen weiteren zusammen multiplexen. Der Einfachheit halber würde ich mich beim Prototypen hierauf erstmal beschränken.


    Ich denke du hast dir auch schon Gedanken zu der Spannungsversorgung der ICs gemacht.
    Ein Punkt ist hier die Gesamtspannung am Balancerstecker auch bei eine Akku < 12s abzugreifen.

    Am einfachsten währe es, diese direkt an den Akkuklemmen von Opencharge abzugreifen. Um den Balancer aber autark betreiben zu können (ohne gesteckten Akkukabel), würde ich Dioden in Sperrichtung zu jeder Lipozelle vorsehen, so das am Abgriff der Zelle 12 , immer die Gesamtspannung ( minus Diodenspanungsabfälle) anliegt. Diese Spannung würde ich dann mit seriellem Widerstand und Z-Diode auf max 35V (max Chipspannungen) begrenzen.


    So, muss ins Bett...
    Thomas









  11. MalteS

    MalteS Member

    Hi Thomas,

    komisch, hatte irgendwie im Kopf das wäre PNG.

    Der Opamp Eingang ist hochohmig, aber um aus dem Opamp einen Differenz- (Subtrahierer) zu machen musst du den Opamp beschalten. Diese Beschaltung belastet deinen Spannungsteiler.

    Das gute ist: Ich glaube das fällt bei uns nicht so ins Gewicht, weil wir immer die gleiche (oder sehr ähnliche) Differenzspannungen messen. Ich checke aber nochmal das meine Rechnung dazu stimmt.

    Die Multiplexer kann man zusammen Schalten weil sie einen Enable Eingang haben, mit dem sich der Ausgang hochohmig abschalten lässt.

    Die Spannung würde ich entweder direkt aus der + Leitung abzapfen (so war mein Plan) oder den Ausgang der ULN2803 verwenden (da sind Dioden eingebaut). Das könnte zu einem geringen Grad gehen, muss man sich aber nochmal genauer überlegen. Nicht das dann ein Basisstrom fliesst und die entsprechende Enladestufe durchschaltet.


    Soviel for now
    Malte
  12. MalteS

    MalteS Member

    Also ich glaube wir brauchen doch einen Instrumentenverstärker. Ich habe jetzt mal den AD620 rausgesucht. Taucht zumindest in der Standard Bauteilliste bei microkontroller.net auf.
  13. Space

    Space New Member

    Endlich wieder Zuhause :)


    Ich habe gerade den Schalplan (nicht 100% fertig gezeichnet und nicht erprobt ) meines damaligen neuen Balancer-Konzeptes gefunden. Ich hatte damals versucht Analogtechnik mit den zu erwartenden Toleranzproblemen, also z.B. einen Instrumentenverstärker, zu vermeiden. Ich erläuter mal das grundsätzliche Konzept, vielleicht kann ich dich ja ein wenig überzeugen ;) :

    Angelehnt ist die grundsätzliche Idee an das Verfahren, wie ein normaler Techniker (Mensch) ausgestattet mit einem Multimeter mit 2 Messstrippen die Einzelspannungen eines Lipopacks erfassen würde.
    Das ist ja im Prinzp ganz einfach. Die beiden Messspitzen werden immer an Plus und Minus der zu messenden Zelle gelegt und die Spannung notiert.

    Warum geht das bei unserem Anliegen nicht so einfach, den ADC mittels Multiplexer an die jeweiligen Balancerkontakte bringen?

    Klar, der ADC wird von der gleichen Stromquelle versorgt, von wo aus auch der Akku geladen wird. Das ist eigentlich nur das Problem, warum wir über Instrumenten Verstärker nachdenken und mit Spannungsteilern rummachen. Wenn der kleine Techniker die Zellspannungen erfasst, hat das Multimeter seinen eigenen 9V Block als Stromversorgung drinne und alles ist auf einmal kein Problem mehr.;)

    In dem Konzept soll nun die 9V Batterie durch einen Kondensator (Goldcap 0,1F) ersetzt werden. Das Multimeter ist ein kleiner Tiny24. Alternativ ist aber auch ein Miniübertrager oder aber eine Zuführen der Spannung mit über die Multiplexer (das sollte man nochmal weiter durchdenken...) möglich.

    Die Kommunikation des Multimeters zur Aussenwelt (Atmega88) muss natürlich auch galvanisch getrent sein (3x Optokoppler für SPI Bus).

    Viel Energie brauch der Tiny (also das Multimeter) nicht. Laut Datenblatt sind das 0,8mA @1MHz. Ausreichend sollte aber auch schon 128KHz interner Takt sein, was etwa 0,2mA (+ ggf. den Strom für die Optokoppler LED beim Senden) bedeutet. Also dir Versorgung über die Multiplexer sollte wohl gehen, weil da nur 16mV bei Worstcase 2x40Ohm Multiplexerwiderstand abfallen. Die kann man auch per Software noch korrigieren.

    Ich hatte damals als Multiplexer normale HC Typen eingeplant. Die von die vorgeschlagenen DG40x sind da um Längen (Spannungsfestigkeit, Widerstand) besser. Die n Spannungsteiler vor dem Multiplexern in meinem Schalplan könnte mann dann eigentlich auch weglassen.

    Der Entladeteil wurde auch wieder mit Optos angegangen. Da ist deine Lösung wieder etwas eleganter.

    Guck dir den Schaltplan einfach mal an...

    Thomas

    Attached Files:

  14. MalteS

    MalteS Member

    Interessanter Ansatz.
    Wenn ich das richtig verstanden habe verwendest du einen Kontrollprozessor um dann deinen Prozessor zum messen umzuschalten. Eigenlich könnte man ja auch gleich einen externen AD Wandler umschalten (Ich habe/werde in meinem Lader den MAX110 durch den ADS1100 ersetzt)

    Braucht aber schon recht viele Bauteile das ganze.
  15. Space

    Space New Member

    Ja, eien nackter ADCsollte auch funktionieren. Ein kleiner Tiny ist aber (häufig) günstiger als ein nackter 10Bit ADC. Man hat mit einem Tiny auch die Option Funktionen hier gleich auszulagern, wie z.B. eine Mittelwertbildung. Aber nackter DAC geht sicher auch...

    Im Vergleich mit meinem Schaltplan zur analogen Instrumentenverstärker Variante brauch man ....

    die Stromversorgungsgmimik (Q1, Q3, T9, D10, C3, R51, R52)

    und die galvanische Trennung des SPI (OK1, OK2, OK3, R21, R22, R23, R25, R26)

    und natürlich der Tiny.


    Wenn die Stromversorgung des Tiny mit über die Multiplexer erfolgt, fällt die obere Aufzählung schon mal wech.
    Ich denke wesentlich ist der Unterschied zur analogen Variante nicht. Eine M88 als Beispiel als Steuerprozessor braucht man auch hier. Ich werde mal zeichnen....
  16. Space

    Space New Member

    Guck mal, habe ich gerade gefunden. Steuerprozessor mit ADC ran, Software entwickeln ---> Fertig

    2 Nachteile:

    Die Beschaffung des Chips
    Max 200mA Balancerstrom oder man weicht wieder auf externe FETs aus.
  17. MalteS

    MalteS Member

    Hi Thomas,

    wo hast du den den ausgegraben? Klingt sehr gut. Ich sehe mir in einer ruhigen Minute mal das Datenblatt genauer an.

    Hast du schon einen überblick? Was passiert bei dem Chip bei verpolung einzlner Zellen oder wenn Zellen verkehrt angesteckt werden (50V auf Zelle 1)

    Gruß
    Malte
  18. Space

    Space New Member

    Die Balancerstecker sind normalerweise ja codiert, so daß eine Verplungssituation eigentlich nicht eintreten kann. Höchstens über die Gesampversorgungsspannung welche von den Akkuklemmen abgegriffen werden soll. Wenn man diese allerdings vor dem Längsfet von Opencharge (Wandlerspannung) abgreift, kann auch hier keine Verpolung eintreten. Dann allerdings müsste wieder ein rudimentärer Überspannungsschutz etabliert werden.
    Oder eben die Diodenlösung, wie ich es in meinem Schalplan abgebildet habe. Das ist eigentlich das, was ich präferiere die Dioden sowieso vorzusehen, da dies auch eine Bedingung für einen eventuellen Standalone Betrieb des Balancers ist.


    Ich kann mich für die Analogvariante immer noch nicht ganz erwärmen. Knackpunkt ist derzeit auch für mich die symetrische Versogungsspannung, welche die Differenzverstärker welche in Deutschland im Einzelhandel beschaffbar sind, vorraussetzen.

    Ich habe meine Idee mit dem "wandernden Multimeter" nochmal durchdacht und habe nun einen anderen vielversprechenden Ansatz gefunden.
    Ich führe nicht das Multimeter galvanisch an die Einzelspannungen heran, sondern ich entnehme nur Proben (Kondensator) der Einzelspannungen und lege diese Spannungsprobe an den ADC an.

    Klar wird die Kondensatorspannung bei der Messung immer < als die reale Zellenspannung sein. Da das Umschalttiming aber immer fix und schnell ist und die Entladekurve des Kondensators zwar logaritmisch aber bei den hohen Entladewiderständen recht flach sein wird, kann man dies per Software recht einfach korrigieren. Der ADC Eingang eines Atmel hat 14pF und >1kOhm in Serie.

    Von der Bauteilanzahl und den Bauteilkosten (keine hochwertigen OpAmp, keine Präzisionswiderstände bis 6S) liegt man hier unter dem analogen Konzept.

    Attached Files:

  19. MalteS

    MalteS Member

    Hi Thomas,

    klasse Idee. Sollten wir mal zu Ende denken.

    Ich glaube das wirft quasi folgende Fragen auf:

    Ich denke wir Trennen den Balancer in 2x 6s Teile auf (wie das ja die derzeit käuflichen auch tun). Verpolungschutz möchte ich eigentlich innerhalb des Teils haben. Ich habe einen Kollegen, der nur eine Stiftleiste in den Balancerstecker steckt und der wird die sicher auch mal verpolen. Wenn man 2x 6s Stiftleisten hat, passiert dabei auch nichts.

    Der Spannungsteiler verhindert ein schnelles Laden des Kondensators. Andererseits ist er erforderlich um mit einem Prozessor beide DG40x zu steuern. Damit stellt sich für mich die Frage ob wir:

    a) auf einen Prozessoren für jeden der 6s Teile setzen
    b) auf einen Prozessor gesamt setzen und die DG40x auf unterschiedlichen Potenzialen betreiben (und über Pegelwandler steuern)
    c) einen Prozessor + Spannungsteiler verwenden

    Standalonebetrieb wird mit den DG40x nicht möglich sein wenn man den Spannungsteiler weglässt. Schliesslich liegt dann die Versorgungspannung durch die Dioden unter der Maximalspannung. Die Zeitkonstante bei 1uF und 10k Teiler liegt bei 10ms. Das sollte eigentlich vertretbar sein. 10k Teiler scheint mir auch realistisch dabei fließen max. 1mA.

    Klingt für mich als ob man den Spannungsteiler mal versuchen könnte.

    Irgendwelche Meinungen dazu?

    Die Variante mit dem Subtrahierer braucht übrigens keine Symetrische Versorgungspannung, wohl aber eine negative Spannung weil die Opamps nicht Rail to Rail gehen. INA125 hatte ich zum Schluss rausgesucht. Den Schaltplan als Basis hänge ich mal an.

    Sollen wir die Schaltpläne mal harmonisieren? Macht natürlich nur Sinn wenn wir die gleiche Bestückung einsetzen wollen. Ich würde meinen in SMD aufbauen wollen. Hattest du durchkontaktiert angedacht?

    Attached Files:

  20. MalteS

    MalteS Member

    So, bevor meinem Laptop der Strom ausgeht hier der Stand der Dinge.
    Beide Boards habe ich weitgehend integriert. Fehlt noch die Spannungsversorgung und die restliche ATMEGA Beschaltung (sowie den Rest den ich vergessen habe)
    Ich habe jetzt beide Methoden der Spannungsmessung mal vorgesehen, kann man ja wahlweise bestücken.
    Was ich dann noch gerne vorsehen würde sind Port-Expander und ein paar Messports um den ATMEGA evtl. wegzulassen.

    Soweit das
    10 Minuten Strom übrig, ich stelle das besser mal rein....

    MAlte

    Attached Files:

Share This Page