Forum: Mikrocontroller und Digitale Elektronik gas-gauge - Sigma-Delta-ADC Verständnissfrage


von Gästchen (Gast)


Lesenswert?

Hallo,

aktuell schaue ich mir grade solche gas-gauges an, also sowas:
http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00219947.pdf
Die Dinger messen Strom in definierten Zeitabständen und summieren den 
Wert auf, das ist so eine Art Stromzähler, den man verwendet um den 
Akkustand bei Lithiumakkus anzuzeigen. Die Last ist eine µC-Schaltung 
mit idle und sleep - d.h. Strom fließt in kurzen Peaks, aber wenig 
konstantes.

Meine Frage betrifft die Abastrate der Strommessung:
Das Ding verwendet einen Sigma-Delta-Wandler mit 500ms Abtastzeit. Was 
ja viel zu langsam wäre.
Jetzt tastet der SDADC aber schneller ab, so dass der Nyquist erst mal 
nicht trifft. Und solche Peaks müssten ja in den Gleichanteil des 
Signals eingehen.

Ist die Annahme richtig, dass das Ergeniss der Mittelwert aus dem Strom 
Innerhalb der 500ms ist?
Wie kann ich den Fehler durch sehr kurze Stromimpulse (z.B. 1ms) 
realistisch einschätzen?

von Abtasttheoretiker (Gast)


Lesenswert?

Gästchen schrieb:
> so dass der Nyquist erst mal
> nicht trifft

Schon wieder jemand, der mal den Namen Nyquist gehört hat und meint, den 
mit popeligen Gleichspannungsmessungen verknüpfen zu müssen.

von Gerhard (Gast)


Lesenswert?

Hm, ob das Verfahren bei stark schwankenden Lasten funktioniert? Klar, 
wenn die Abtastrate hoch genug ist. Aber wann ist sie hoch genug? Da 
muss man schon das Signal genauer kennen.

Vielleicht ist eine analoge Lösung mit Integrator + Komparator die 
bessere Lösung.

von Abtasttheoretiker (Gast)


Lesenswert?

Gästchen schrieb:
> Sigma-Delta-Wandler mit 500ms Abtastzeit

Das ist nicht die Abtastzeit, sondern die Wandlungszeit, und zwar bei 14 
Bit. Bei 12 Bit ist die Wandlungszeit 125ms. Sie berechnet sich aus 2 
hoch n mal 1 durch 32768, mit n gleich 12 bis 14.

von Gästchen (Gast)


Lesenswert?

Abtasttheoretiker schrieb:
> Gästchen schrieb:
>> so dass der Nyquist erst mal
>> nicht trifft
>
> Schon wieder jemand, der mal den Namen Nyquist gehört hat und meint, den
> mit popeligen Gleichspannungsmessungen verknüpfen zu müssen.

Ja, dachte ich zunächst auch. Dann hab ich mir mal die Stromaufnhame 
eines µC mit sleep angesehen.
10µA, dann für 3ms 20mA (das ist ein Sprung um den Faktor 2000). Dann 
für einige 100ms wieder 10µA.
Da würde ein SAR-ADC mit 500ms nur Quatsch messen.

Gerhard schrieb:
> Hm, ob das Verfahren bei stark schwankenden Lasten funktioniert?
> Klar,
> wenn die Abtastrate hoch genug ist. Aber wann ist sie hoch genug? Da
> muss man schon das Signal genauer kennen.
>
> Vielleicht ist eine analoge Lösung mit Integrator + Komparator die
> bessere Lösung.

Ein gas gauge ist halt ideal für den Zweck: I2C, geringe Stromaufnahme, 
winzig, µC kann weiterpennen, Zellschutz quasi mit drin. Daher will ich 
zunächt genau berechnen, was ich für Fehler mache. Das muss doch 
klappen, die Dinger sind in jedem Handy drin. Das mach ja auch idle...

Abtasttheoretiker schrieb:
> Das ist nicht die Abtastzeit, sondern die Wandlungszeit, und zwar bei 14
> Bit. Bei 12 Bit ist die Wandlungszeit 125ms. Sie berechnet sich aus 2
> hoch n mal 1 durch 32768, mit n gleich 12 bis 14.

Das ist natürlich richtig. Danke für die Korrektur.

von dhgfj (Gast)


Lesenswert?


von Lurchi (Gast)


Lesenswert?

Das IC ist nicht so gut für die Ladungsmessung geeignet. Die 500 ms 
Wandlungszeit sind im Prinzip nicht das Problem, sondern dass nicht 
durchgängig gemessen wird, sondern im Wechsel der gleiche AD noch die 
Temperatur und ggf. was anderes misst. Auch ist die Auflösung eher zu 
gering um mit der hohen Dynamik klar zu kommen, zumindest ohne externe 
Filterung.

Im Prinzip geht ein SD Wandler schon relativ gut, weil man da oft den 
Mittelwert über die Messezeit erhält. Man muss aber trotzdem aufpassen 
das man auch in den Spitzen nicht über den erlaubten Bereich (das kann 
mehr als der normale Messbereich sein) hinaus kommt. Zusätzlich muss man 
das Signal auch analog noch etwas Filtern, denn sehr hohe 
Frequenzanteile im bereich der internen Abtastung des SD Wandlers (im 
100 kHz - 10 MHz Bereich) können dann noch wieder Aliases und damit 
Störungen erzeugen.

Bei LiIonen Akkus stellt sich mir die Frage wozu man dass überhaupt 
braucht: den Ladezustand kann man an der Spannung ablesen. Bei NiCd und 
ggf. NiMH Akkus wäre das ggf. schon eher sinnvoll.

von Gästchen (Gast)


Lesenswert?

dhgfj schrieb:
> mit analogem Integrator:
> LTC2942 (http://cds.linear.com/docs/en/datasheet/2942fa.pdf)

Danke, das werde ich mir anschauen.

Lurchi schrieb:
> Das IC ist nicht so gut für die Ladungsmessung geeignet. Die 500
> ms
> Wandlungszeit sind im Prinzip nicht das Problem, sondern dass nicht
> durchgängig gemessen wird, sondern im Wechsel der gleiche AD noch die
> Temperatur und ggf. was anderes misst. Auch ist die Auflösung eher zu
> gering um mit der hohen Dynamik klar zu kommen, zumindest ohne externe
> Filterung.
>
> Im Prinzip geht ein SD Wandler schon relativ gut, weil man da oft den
> Mittelwert über die Messezeit erhält. Man muss aber trotzdem aufpassen
> das man auch in den Spitzen nicht über den erlaubten Bereich (das kann
> mehr als der normale Messbereich sein) hinaus kommt. Zusätzlich muss man
> das Signal auch analog noch etwas Filtern, denn sehr hohe
> Frequenzanteile im bereich der internen Abtastung des SD Wandlers (im
> 100 kHz - 10 MHz Bereich) können dann noch wieder Aliases und damit
> Störungen erzeugen.
>
> Bei LiIonen Akkus stellt sich mir die Frage wozu man dass überhaupt
> braucht: den Ladezustand kann man an der Spannung ablesen. Bei NiCd und
> ggf. NiMH Akkus wäre das ggf. schon eher sinnvoll.

Ui, danke. Das hätte ich gleich mal übersehen. Das wird vermutlich der 
Grund für den günstigen Preis sein.
Der Akku wäre LiFePO4, da wirds mit der Spannung alleine etwas 
schwierig. Vor allem, wenn die Temperatur nicht so konstant ist.

von Hans M. (Gast)


Lesenswert?

Gugg dir mal den DS2740 an.

Hans

von Sönke O. (soenio)


Lesenswert?

aktuelle habe ich den STC3105 (ohne Temperatursensor) für ein Projekt 
aufgebaut und werde ihn nächste Woche noch richtig testen.

Problematisch ist denke ich nicht die Wandlerzeit, sondern die große 
Differenz zwischen den Strömen.

Ich betreibe das ganze auch mit einem LiFePO4, der Ladezustand lässt 
sich nur über Ladungszählung halbwegs genau messen. Wenn du möchtest 
kann ich nächste Woche mal testen wie genau die Messungen bei schnellen 
Änderungen ist.

Gruß

von Hans M. (Gast)


Lesenswert?

Und genau DAS der DS2740, ein akkumulierender Ladungszähler.

Hans

von Hans M. (Gast)


Lesenswert?

Oder als Alternative:
MAX17048 /MAX17049

Dem wird ein Modell der verwendeten Batterie verpasst und der bestimmt 
dann über die Spannungseinbrüche bei Stromfluss und Modell den 
Ladungszustand.
Ohne Shunt und so.

Hans

von Gästchen (Gast)


Lesenswert?

Danke für all die guten Tipps!

Die DS2740 und MAX17049 wären sehr schön, werden vermutlich nicht zum 
Zug kommen können. Der Hersteller hat uns in der Vergangenheit einige 
Male ziemlich sitzen lasssen: Ihr wollt Bauteile? bekommt ihr, in 48 
Wochen. Bei Maxim stellt sich der Einkauf quer :-(

Der LTC2742 gefällt mir persönlich am besten. Den werde ich mir aufbauen 
und evaluieren.

@Sönke O.
Das wäre interssant, danke.

Sonst gibts natürlich noch den bq34z100-G1 zum Beispiel.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.