Hallo,
ich habe mehrer LifePo4 Zellen in Reihe geschaltet und habe an jeder
Zelle einen AVR hängen.Ich möchte mittels I2C(TWI) Informationen von
einem AVR zu anderen AVRs mitteilen.
Die GNDs der AVRs liegen nicht auf dem gleichen Potential wie man auf
dem Bild sieht.
Ich möchte keine Optokoppler verwenden, wegen der langsamen
Übertragungsrate und wegen der etwas höheren Kosten der schnelleren
6N136 usw.
Was gibt es sonst noch für Möglichkeiten? Gibt's eine Schaltung mit
Transistoren, die diese Aufgabe übernimmt? Gibt es Probleme, wenn ich
wie im Bild eine Kapazität zur Potentialtrennung benutze?
Im Bild sind die beiden Widerstände die Pullups für den I2C Bus. Das
Bild ist nur beispielhaft.
Meinst DU das Optokoppler teurer sind als kaputte uC?
Hör auf mit dem Unsinn.
>Informationen von einem AVR zu anderen AVRs mitteilen.
Was für Informationen? NUR Spannung des einzelnen Akkus?
Dann nimm einen Wandler, welcher einen delta-sigma Ausgang hat. Da
reicht Optokopplerkanal um alle auf dieselbe Masse zu bringen.
Etwa sowas meine ich:
http://www.analog.com/en/analog-to-digital-converters/ad-converters/ad7400a/products/product.html
Überleg mal, was der Ladestrom des Cs anrichtet? Ich hab den Stromkreis
mal reingemalt. Wie gross ist der Strom? Wieviel darf durch die internen
Dioden fliessen?
Nagut.
Aber es muss doch noch eine andere Möglichkeit geben.
Im Prinzip möchte ich ja nur eine Spannung auf Masse beziehen. Gibt es
dazu nicht einen Begriff.
Einen Differenzverstärker könnte man nehmen, was gibt es noch für
Möglichkeiten?
Denkbar wäre ein Speicherkondensator mit z.B. 100nF, der mit einem
Multiplexer sequentiell an die Verbindungspunkte zwischen den Zellen
geschaltet wird.
Das masseseitige Ende muss natürlich mit Umladestrombegrenzung
(z.B.1kOhm)
und Abfangvorrichtung gegen neg. Spannung und U > Vcc versehen sein.
Reihenfolge der Schritte:
C an n-ten Verbindungspunkt legen, anderes Ende an Masse legen, C nimmt
Potential des ersten Verbindungspunktes an, als Nullpunkt.
Öffnen der Masseverbindung.
Umschalten des C auf (n-1)ten Verbindungspunkt. Anderes Ende auf
Analogeingang legen. Dort liegt dann Spannungsdifferenz zwischen n-tem
und (n-1)tem Punkt an.
/AD wandlung.
nächster Zyklus.
Bei den AVR's kann das auf Masse legen und Umschalten auf Messung an
einem einzelnen Pin erfolgen, da man ja von input auf Output umschalten
kann.
>Die Idee ist gut, damit könnte ich die einzelnen Zellspannungen messen.
Finde ich nicht. Es ist und bleibt ein Gebastel mit Risiken. Optokoppler
wurden genau dafür erfunden: Um grosse Potentialdifferenzen zu
überbrücken. Deshalb: Mach es richtig und baue nur den ADC an die
Batterie. Die Datenleitungen über Opto getrennt und fertig.
Und günstiger im Sinne von Material, Aufwand wird es definitiv nicht.
Es kommt halt drauf an, was der TE unter "gewissen Informationen"
versteht.
Wenns nur um Spannungsüberwachung der Zellen geht, kann man die
Schaltfolge gering halten, vor Allem beim Laden oder beim Leerlauf.
Der Stromverbrauch ist dann sicher geringer als bei Optokopplern, ganz
zu schweigen von den zusätzlichen Analogwandlern oder Prozessoren für
jede einzelne Zelle.
>Der Stromverbrauch ist dann sicher geringer als bei Optokopplern, ganz>zu schweigen von den zusätzlichen Analogwandlern oder Prozessoren für>jede einzelne Zelle.
Auch Du solltest oben auf den Link von mir klicken und das
Blockschaltbild ansehen. Man braucht keine extra Optos oder µC oder
sowas. Nur der eine Chip pro Batterie
Hallo,
ich habe noch eine Transistor-Schaltung gefunden, mit der ich die
Signale auf höhere Potentiale übertragen kann.
Mit dem Kondensator konnte ich die Schaltzeiten verkürzen.
Gibt es noch so andere Möglichkeiten, die Schaltzeiten zu verbessern?
Johannes schrieb:> Ich möchte keine Optokoppler verwenden, wegen der langsamen> Übertragungsrate und wegen der etwas höheren Kosten der schnelleren> 6N136 usw.
Warum langsam? Wieviele Datenpakete willst du denn pro Sekunde
übertragen? Und vor Allem: WARUM ?
Magnus M. schrieb:> Johannes schrieb:>> Ich möchte keine Optokoppler verwenden, wegen der langsamen>> Übertragungsrate und wegen der etwas höheren Kosten der schnelleren>> 6N136 usw.>> Warum langsam? Wieviele Datenpakete willst du denn pro Sekunde> übertragen? Und vor Allem: WARUM ?
Das frage ich mich auch. Zumal I²C ja von Haus aus schon schnarchlahm
ist. Außerdem will man an dieser Stelle sowieso kein I²C verwenden,
sondern eher SPI, weil da die einzelnen Leitungen unidirektional sind.
XL
Nimm, wenn es ein µC pro Zelle sein soll, SPI oder UART und die
billigsten Optokoppler die du kriegen kannst, pass dann die Datenrate
an. Die Batteriespannung ändert sich doch so langsam dass du mit ein
paar 100bit/s immer noch total gut dran bist.
Nur, warum sollte es überhaupt schnell sein? Den Strom kann man dank
Serienschaltung messen wo es bequem ist, die Spannung und die Temperatur
sind alle 10 Sekunden oder so interessant.
Alternative Lösung:
Du könntest an jede Zelle einen Spannungs-zu-Frequenzwandler hängen.
Über einen einzelnen Koppelkondensator pro Zelle kannst du dann alle
Signale zusammen auf einem Potential am µC auswerten. Auf der Seite des
µC müssen pro Signal nur zwei Klemmdioden und ein
Strombegrenzungswiderstand angebracht werden, um die Eingänge bei
unerwarteten Transienten zu schützen.
Gruß, RS