External I2C ADC/DAC Fragen

Gast #5960341
Lesenswert?

Hallo zusammen,

ich bin gerade an einem Projekt wo ich einen externen ADC (MAX11612) und 
DAC (MCP4728) einsetzen möchte.
Es soll ein Universeller Laderegler auf Basis des LTC4020 werden.

Da das Projekt Battery powered ist, läuft der uC nur, wenn er es auch 
"muss". Dabei wird auch der Schaltregler komplett abgeschalten.
Bedeutet ADC und DAC haben keine Versorgungsspannung.
Gleichzeitig kann es aber sein, dass die Spannungen an den ADC/DAC Pins 
weiterhin anliegt.
Um den Stromverbrauch im Ruhezustand weiter zu senken, wird der 
Spannungsteiler am ADC, der die Batterie Spannung misst mittels eines 
FETs ebenfalls "abgetrennt".

Das würde bedeuten, der ADC/DAC sieht im ausgeschaltem Zustand (VCC=OFF) 
die volle Spannung der Batterie (12s LiPo -> 50.4V max.) an den Pins.
Leider kann ich in den Datenblättern keine Angabe dazu finden, was in so 
einem Fall passiert.
Es wird nur spezifiziert, was die max. Ratings sind, wenn das IC mit 
Spannung versorgt ist - und auch hier sind die Limits immer max. VCC 
bzw. VREF - was natürlich irgendwo einleuchtend ist...


Die Fragen die ich mir jetzt stelle ist:
- Halten die IC´s das aus?
- Falls nein: Wie schütze ich den Eingang der IC´s?
Da die Versorgungsspannung nicht vorhanden ist, fällt eine einfache 
Clamp diode weg.
Eine Z-Diode würde permanenten Ruhestromfluss bedeuten - also auch nicht 
unbedingt der "Bringer".
Analogschalter kann ich nur bis 15V max. finden - Also im Grunde das 
gleiche Problem.

Schaltplanauszüge sind im Anhang.

Erläuterungen/Fragen zu den Schaltplänen:
Datei: ADC.png
- VIBAT_ADC: Spannung von einem Current Sense Amplifier.
Misst den Lade- bzw. Entladestrom. Eingesetztes IC: MAX40056.
Gleiche Frage hier: Was passiert, wenn VCC = OFF? Macht dem IC das was 
aus? Auch in diesem Fall fließt evtl. Strom (Power Path) zur Last.
- VBATT_ADC: Batterie-Spannung - max. ~50.4V (12s LiPo).
- VOUT_ADC: Ausgangsspannung des Buck Boost Konverters - max. 55V.
In ausgeschaltenem Zustand identisch zur Batteriespannung (Power-Path).
- VIN_ADC: Eingangsspannung des Buck Boost Konverters.
Voltage Range: 9V ... 48V.

Datei: DAC.png
- Manipuliert die Feedback Spannungsteiler des LTC4020, um die 
Spannungen (Battery-Float, Ausgangsspannung Buck Boost ...) digital 
einstellen zu können. Range 3V ... 53V - Untere Grenze wird später noch 
hochgesetzt. (Späterer Einsatz vermutlich von 3s bis 12s)
- GND_SW: LTC4020 schaltet GNDS auf die Spannungsteiler, wenn VIN 
anliegt. Ansonsten ist der Zustand "High Z", um den Ruhestormvebrauch zu 
minimieren.
- Reicht der Serienwiderstand von 16k3 hier aus, um den DAC ausreichend 
zu schützen?

Der uC läut auf 3.3V. Die ADC´s und DAC´s auf 5V.
Es wäre im Prinzip also auch möglich, die Versorgungsspannung des ADC 
und des DAC im Standby eingeschaltet zu lassen.
Da der Stromverbrauch im Ruhezustand dadurch natürlich wieder höher 
wäre, würde ich das nur machen, wenn es nicht anders geht.

Im Datenblatt beider IC´s steht außerdem auch, dass die Logik 
Eingangsspannung für High-Pegel min. 0,7xVCC (3,5V) betragen sollte.
Bedeutet das, dass ich einen zusätzlichen I2C Levelshifter brauche oder 
würde (sollte) das so auch funktionieren?

Mir fällt gerade irgendwie keine sinnvolle Lösung ein.

Vielen Dank im Voraus!

Gruß Daniel
Angehängte Dateien:
Gast #5960378
Lesenswert?

Typischerweise darf die Spannung an allen Pins nicht mehr als VDD+0,3V 
und nicht weniger als GND-0,3V sein.

Das heißt, die Sache mit deinem Transistor geht so nicht. Wenn der ADC 
keine Spannung an VDD hat, müssen die Eingange auf annähernd Null Volt 
liegen. Dein Transistor bewirkt genau das Gegenteil.

Außerdem wird bei abgeschaltetem Transistor ein unerwünschter Strom von 
+VBATT nach +VOUT_INT (oder anders herum) fließen.

Was den Levelshifter angeht: Den wirst du wahrscheinlich brauchen. 
Kannst du den µC nicht auch mit 5V betreiben oder einen mit 5V 
tolerantem I²C Bus (z.B. STM32) verwenden?
Gast #5960599
Lesenswert?

Stefanus F. schrieb:
> Typischerweise darf die Spannung an allen Pins nicht mehr als
> VDD+0,3V
> und nicht weniger als GND-0,3V sein.

Gilt das auch, wenn garkeine Spannungsversorgung an VDD anliegt?
Oder geht das IC dann schon vorher "hops"?


Stefanus F. schrieb:
> Das heißt, die Sache mit deinem Transistor geht so nicht. Wenn der ADC
> keine Spannung an VDD hat, müssen die Eingange auf annähernd Null Volt
> liegen. Dein Transistor bewirkt genau das Gegenteil.
> Außerdem wird bei abgeschaltetem Transistor ein unerwünschter Strom von
> +VBATT nach +VOUT_INT (oder anders herum) fließen.
Gut das würde sich mit einem zusätzlichen FET erledigen.
Ich denke aber nicht mal, dass das nötig ist, da +BATT über die Body 
Diode des power path FET sowieso mit +VOUT_INT "verbunden" ist.


Stefanus F. schrieb:
> Was den Levelshifter angeht: Den wirst du wahrscheinlich brauchen.
> Kannst du den µC nicht auch mit 5V betreiben oder einen mit 5V
> tolerantem I²C Bus (z.B. STM32) verwenden?
Eine Levelshifter wäre im Grunde kein Beinbruch.

Erstmal ist wichtiger, die ADC und DAC Eingänge zu schützen.
Wie wäre es, ein N-FET vor die Eingänge zu schalten? Die Spannung am 
Gate müsste um die VGS thresholdvoltage höher liegen als die 
Ausgangsspannung des Spannungsteilers?
Entwurf siehe Anhang. Klappt das so? Ich denke den RDSon kann man hier 
vernachlässigen, da die Spannungsteiler um einige Größenordnungen 
hochohmiger sind, als der RDSon der FETs?

Danke und Gruß
Daniel
Angehängte Dateien:
#5960689
Lesenswert?

Daniel schrieb:
> Das würde bedeuten, der ADC/DAC sieht im ausgeschaltem Zustand (VCC=OFF)
> die volle Spannung der Batterie (12s LiPo -> 50.4V max.) an den Pins.

So ist es, also laß den Unsinn.

Daniel schrieb:
> Leider kann ich in den Datenblättern keine Angabe dazu finden, was in so
> einem Fall passiert.

In den Datenblättern steht üblicher Weise, bei VCC = 0V sind an den 
Eingängen max +0.3V erlaubt.

Batteriespannungen ändern sich nicht schnell, man kann also die 
Spannungsteiler hochohmig machen, so daß deren Strom unter der 
Selbstentladung liegt.
Und wenns dem ADC zu hochohmig ist, noch einen OPV davor. Dabei Achtung, 
R2R-OPVs sind nicht wirklich R2R. Die brauchen am Ausgang noch 50..200mV 
Spannungsreserve zu den Rails.
Gast #5960720
Lesenswert?

Hochohmige Widerstände, z.B. bei einem Spannungsteiler, klingen gut, 
wenn es um das Sparen von Energie geht.
Kann aber Dein A/D-Wandler damit leben? Ich habe mir Dein Datenblatt 
nicht reingezogen, aber nach meiner Meinung haben diese Teile keinen 
besonders hohen Innenwiderstand. Explizit nachsehen und berücksichtigen.
Gast #5960956
Lesenswert?

Daniel schrieb:
> Wie wäre es, ein N-FET vor die Eingänge zu schalten?

Verfälscht sicher das Signal.

Wenn der Spannungsteiler hochohmig genug ist, und ESD Schutzdioden 
vorhanden sind, schadet die Überspannung nicht, da der Strom ausreichend 
begrenzt ist.

Allerdings beeinflussen hochohmige Widerstände die Messung. Zum 
Ausgleich kann man Kondensatoren hinzufügen und zwischen den Messungen 
Pausen einfügen, damit sich der Kondensator wieder "erholen" (nachladen) 
kann.

Etwa:
1
            220k          110k
2
Signal o---[===]----+----[===]---|
3
                    |
4
                    +-----||-----| 100nF
5
                    |
6
                    |
7
      VDD o---|<|---+---|<|------| ESD Schutzdioden, meist intern vorhanden
8
                    |
9
                    |
10
                   ADC
Gast #5961386
Lesenswert?

Stefanus F. schrieb:
> Daniel schrieb:
>> Wie wäre es, ein N-FET vor die Eingänge zu schalten?
>
> Verfälscht sicher das Signal.
>
> Wenn der Spannungsteiler hochohmig genug ist, und ESD Schutzdioden
> vorhanden sind, schadet die Überspannung nicht, da der Strom ausreichend
> begrenzt ist.
>
> Allerdings beeinflussen hochohmige Widerstände die Messung. Zum
> Ausgleich kann man Kondensatoren hinzufügen und zwischen den Messungen
> Pausen einfügen, damit sich der Kondensator wieder "erholen" (nachladen)
> kann.
>
> Etwa:            220k          110k
> Signal o---[===]----+----[===]---|
>                     |
>                     +-----||-----| 100nF
>                     |
>                     |
>       VDD o---|<|---+---|<|------| ESD Schutzdioden, meist intern
> vorhanden
>                     |
>                     |
>                    ADC

Okay, leuchtet ein.
Aber ich geh richtig in der Annahme, dass ich die Sache mit dem 
Abschalten der Spannungsteiler lieber lassen sollte?
Also Spannungsteiler immer angeschlossen lassen, dafür aber eben sehr 
hochohmige Spannungsteiler mit Kondensatoren?
Ich brauch keine sehr hohe Samplerate (1x die Sekunde - eher noch 
geringer), daher kann ich damit gut leben.
Wie hoch die Spannungsteiler sein dürfen, werde ich wohl am Prototyp 
ausprobieren müssen.
Im Layout ist mal der Transistor und ein 0R auf GND jedenfalls 
vorgesehen.

Hab im Datenblatt des DAC und ADC nachgesehen. Die haben jeweils 
Schutzdioden integriert.
Hier konnte ich dann auch die schon mehrmals genannten 0.3V finden.

Danke und Gruß
Daniel
Gast #5961439
Lesenswert?

Daniel schrieb:
> Aber ich geh richtig in der Annahme, dass ich die Sache mit dem
> Abschalten der Spannungsteiler lieber lassen sollte?

Ich würde es lassen, weil der Transistor das Signal sicher deutlich 
verfälscht. Es sei denn, ein paar zig Millivolt mehr oder weniger sind 
egal.

Hochohmige Spannungsteiler (um 1MΩ) sind oft die bessere Wahl.

Warum machst du den ganze Zirkus überhaupt? Klar, um Strom zu sparen. 
Aber ist das nötig? Um was für Akkuleistungen und Zeiten geht es 
überhaupt?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren