Forum: Digitale Signalverarbeitung / DSP ADC mit höherer Aufösung vs Oversampling


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von MKr (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Hallo Forum,
man kann ja durch Oversampling die Auflösung eines ADCs erhöhen. Gibt es 
dabei neben dem größen Zeit- und Rechenaufwand weitere Nachteile 
gegenüber einem ADC, der von sich aus eine höhere Auflösung hat?
Anders gefragt: Wenn ich mit den beiden genannten Nachteilen leben kann, 
gibt es dann einen Grund, statt einem 10bit-ADC und 2x Oversampling 
einen mit 12-bit zu nutzen?
Addieren sich z.B. die Messfehler des ADC mit auf?

Vielen Dank im Voraus!

von PIClig (Gast)


Bewertung
-4 lesenswert
nicht lesenswert
> man kann ja durch Oversampling die Auflösung eines ADCs erhöhen

Nimm mal einen Controller mit einem "ordentlichen" 10 bit AD-Wandler.
Z.B. einen PIC12F675 und nicht diesen Atmelmurks.
Schliesse 4 Si-Dioden in Flussrichtung über einen 10k an Vcc an.
Dann miss 4x hintereinander die Spannung über alle 4 Dioden.
Da wird in 99 % aller Fälle der selbe Wert vom AD-Wandler geliefert.

Wo sollen da 2 bit mehr herkommen?

Richtig, nirgendwo.

von Meister E. (edson)


Bewertung
1 lesenswert
nicht lesenswert
MKr schrieb:
> einem 10bit-ADC und 2x Oversampling
!=
> 12-bit

Überdenke er diesen Teil.

von MKr (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Meister E. schrieb:
> MKr schrieb:
>> einem 10bit-ADC und 2x Oversampling
> !=
>> 12-bit
>
> Überdenke er diesen Teil.

http://ww1.microchip.com/downloads/en/appnotes/doc8003.pdf

Wenn das nicht 10bit-ADC und 2x Oversampling == 12-bit, dann erkläre mir 
bitte jemand den Unterschied

von M. K. (mkn)


Bewertung
3 lesenswert
nicht lesenswert
MKr schrieb:
> Wenn das nicht 10bit-ADC und 2x Oversampling == 12-bit, dann erkläre mir
> bitte jemand den Unterschied

Unterschied zu was?
Das eine ist ein 10bit, das andere ein 12bit.

Rauscht das Signal mit min 1bitauflösung, kannst Du durch 4fach 
Oversampling die Auflösung um 1 Bit verbessern.
Für 12bit also schon 16fach Oversampling.

Da Du aber wohl kaum in der Lage sein wirst Deine Schaltung so 
aufzubauen, das sie über den vollen Einsatzbereich unter eine 
Bitauflösung driftet / rauscht, ist das alles rein theoretischer Natur.
Auflösung und Genauigkeit haben nichts miteinander zu tun.

von Carl D. (jcw2)


Bewertung
1 lesenswert
nicht lesenswert
MKr schrieb:
> Meister E. schrieb:
>> MKr schrieb:
>>> einem 10bit-ADC und 2x Oversampling
>> !=
>>> 12-bit
>>
>> Überdenke er diesen Teil.
>
> http://ww1.microchip.com/downloads/en/appnotes/doc8003.pdf
>
> Wenn das nicht 10bit-ADC und 2x Oversampling == 12-bit, dann erkläre mir
> bitte jemand den Unterschied

Weil, wie die AppNote ausführt für die erschlichenen n Bits 4^n 
Messungen gemacht werden müssen. 2Bit mehr also 16-Fach abtasten.

von MKr (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Carl D. schrieb:
> Weil, wie die AppNote ausführt für die erschlichenen n Bits 4^n
> Messungen gemacht werden müssen. 2Bit mehr also 16-Fach abtasten.

OK, mein Fehler. Ich habe für 1bit mehr die Bezeichnung 1x Oversampling 
genommen. Dass ich mehr Messungen machen muss, 4^n Mssungen machen muss, 
war mir bewusst

M. K. schrieb:
> Da Du aber wohl kaum in der Lage sein wirst Deine Schaltung so
> aufzubauen, das sie über den vollen Einsatzbereich unter eine
> Bitauflösung driftet / rauscht, ist das alles rein theoretischer Natur.
> Auflösung und Genauigkeit haben nichts miteinander zu tun.

Es geht mir an dieser Stelle auch nicht um höhere Genauigkeit, sondern 
tatsächlich nur um höhere Auflösung.
Die Frage
> Addieren sich z.B. die Messfehler des ADC mit auf?
bezog sich darauf, ob der Messfehler des ADC sich soweit aufsummiert. Ob 
ich also bei angenommen(!) einem Bit Messfehler nach dem Oversampling 
immernoch nur 1 Bit Fehler vorliegt oder ob bei einem gewonnenen Bit 
dann die unteren 2 Bit Fehler sind

von Burkhard (Gast)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> Ob
> ich also bei angenommen(!) einem Bit Messfehler nach dem Oversampling
> immernoch nur 1 Bit Fehler vorliegt oder ob bei einem gewonnenen Bit
> dann die unteren 2 Bit Fehler sind

Wird alles in der Appnote erklärt - und am Ende (Seite 13) noch mal klar 
zusammengefasst. Vom Oversampling läßt sich profitieren, wenn das Signal 
während des  Oversamplens sich nur relativ wenig ändert und diese 
Änderungen daher als Rauschen gelten können. Dann kann durch 
Oversampling das SN-Verhältnis verbessert werden. Zur Not muss Rauschen 
künstlich hinzugefügt werden (Dithering). Und ja, die unteren zwei Bits 
(im Beispiel von 14) müssen rausskaliert werden.

MKr schrieb:
> gibt es dann einen Grund, statt einem 10bit-ADC und 2x Oversampling
> einen mit 12-bit zu nutzen?

Ja, Oversampling heisst auch, dass die höhere, virtuelle Auflösung durch 
eine niedrigere Samplerate erkauft wird.

N.B: Es gibt auch ADCs mit integriertem Oversampling Block, z.B. der 
AD7380 von Analog Devices.

von Markus K. (markus-)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> Wenn ich mit den beiden genannten Nachteilen leben kann,
> gibt es dann einen Grund, statt einem 10bit-ADC und 2x Oversampling
> einen mit 12-bit zu nutzen?

PIClig hat es zwar schon angedeutet, aber das scheint nicht angekommen 
zu sein: Man braucht dafür ausreichend starkes Rauschen. Wenn man das 
nicht hat, dann wird man einfach jedes mal den selben Wert messen. Es 
bringt nichts, davon den Mittelwert zu bilden.

Außerdem muss das Rauschen natürlich mittelwertfrei sein.

Edit: Burkhard war schneller.

: Bearbeitet durch User
von MKr (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Burkhard schrieb:
> Ja, Oversampling heisst auch, dass die höhere, virtuelle Auflösung durch
> eine niedrigere Samplerate erkauft wird.
Danke, der Punkt war mir bewusst und steht schon im Eröffnungsbeitrag

Burkhard schrieb:
> Und ja, die unteren zwei Bits (im Beispiel von 14) müssen rausskaliert werden.
14 was? Bit? Also von 10 Bit auf 14 Bit?

Markus K. schrieb:
> aber das scheint nicht angekommen zu sein
Meine Frage ist prinzipieller Natur. Es geht mir nicht darum, ob mein 
nicht näher spezifiziertes Signal die Voraussetzungen erfüllt oder 
nicht.
Und wenn meine Frage dann von vorn herein als völlig absurd abgestempelt 
wird, "kommt das nicht an".
Es geht mir um die Frage, ob es neben der geringeren Samplingrate und 
ja, dem Signal, dass ein paar Voraussetzungen erfüllt werden muss, 
weitere Gründe gibt, statt Oversampling auf ADCs mit größerer Auslösung 
zu setzen. Ich habe deswegen nicht vor, alles mit Oversampling zu lösen 
sondern z.B. zu wissen, wann ich es einsetzen kann

von Burkhard (Gast)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
>> Ja, Oversampling heisst auch, dass die höhere, virtuelle Auflösung durch
>> eine niedrigere Samplerate erkauft wird.
> Danke, der Punkt war mir bewusst und steht schon im Eröffnungsbeitrag

Guten Morgen. Vielleicht zu implizit. Du sprichst dort von Zeit- und 
Rechenaufwand.

MKr schrieb:
>> Und ja, die unteren zwei Bits (im Beispiel von 14) müssen rausskaliert werden.
> 14 was? Bit? Also von 10 Bit auf 14 Bit?

Bezieht sich auf das Beispiel in der AVR-Appnote - dort werden bei 16x 
Oversampling 14 Bit benötigt um zunächst das Ergebnis aufzunehmen, davon 
werden die zwei LSB wieder rausskaliert, weil: "the  last  two  bits 
are  not  expected  to  hold  valuable  information.  To  get  ‘back’ 
to  12-bit it is  necessary  to  scale  the  result."

MKr schrieb:
> Und wenn meine Frage dann von vorn herein als völlig absurd abgestempelt
> wird, "kommt das nicht an".
> Es geht mir um die Frage, ob es neben der geringeren Samplingrate und
> ja, dem Signal, dass ein paar Voraussetzungen erfüllt werden muss,
> weitere Gründe gibt, statt Oversampling auf ADCs mit größerer Auslösung
> zu setzen.

Die Frage ist nicht absurd, nur sehr allgemein gestellt. Oversampling 
ist eine Form von "Noise Shaping" (wie es auch in Delta-Sigma ADCs zur 
Anwendung kommt). Richard Lyons rechnet das in Kapitel 13.8.1 in 
"Understanding DSP" durch.

Ob ein konkretes Projekt davon profitiert, hängt auch von Faktoren wie 
Kosten (höhere Auflösung ~ höherer Preis), Stromaufnahme (höhere 
Samplingrate ~ höhere Stromaufnahme), Integrationsaufwand (bringt der 
ADC schon ein Filter mit oder muss ich selbst rechnen) usw. ab. Es ist 
also immer eine Abwägung anhand der konkreten Projektanforderungen und 
den verfügbaren ADC-Kandidaten.

von PIClig (Gast)


Bewertung
0 lesenswert
nicht lesenswert
So allgemein ist die Frage schon absurd. Weil allgemein brauche
ich fuer ein Ergebnis mit N Bit Aufloesung auch einen N Bit AD-Wanler.

Punkt.

Ist das Signal rauschfrei gegen eine N Bit Aufloesung,
und genauso der AD-Wandler, kann man oversamplen so lange
man will. Ob das nun zu dir dringt ist mir egal.

Enhaelt das Signal Rauschanteile, muessen diese auch geeignet sein.
Ein Signal das mit Popcorn- oder Schrotrauschen daher kommt, ist
es z.B. nicht.

Oversampling ist eben keine generische Methode zur Verbesserung
der Aufloesung. Nur im konkreten Spezialfall kann es nutzbar sein.

von MKr (Gast)


Bewertung
0 lesenswert
nicht lesenswert
PIClig schrieb:
> Ist das Signal rauschfrei gegen eine N Bit Aufloesung,
> und genauso der AD-Wandler, kann man oversamplen so lange
> man will.
Diesen Punkt habe ich durchaus schon nach dem 3. Beitrag verstanden.

Burkhard schrieb:
> Vielleicht zu implizit. Du sprichst dort von Zeit- und
> Rechenaufwand.
Ist ein höherer Zeitaufwand nicht mit einer geringeren Samplingrate 
gleichbedeutend? Wenn ich mehr Zeit für etwas brauche, kann ich es in 
gegebener Zeit seltener tun. Oder gibt es Fälle, in denen das nicht so 
ist?

Burkhard schrieb:
> dort werden bei 16x
> Oversampling 14 Bit benötigt um zunächst das Ergebnis aufzunehmen, davon
> werden die zwei LSB wieder rausskaliert, weil: "the  last  two  bits
> are  not  expected  to  hold  valuable  information.  To  get  ‘back’
> to  12-bit it is  necessary  to  scale  the  result."
Das Verfahren an sich, dass ich nach den 4^n Messungen um n Bit 
rechtsschiebe, also n Bit wieder verliere, ist mir bewusst. Aber in den 
verbleibenden (um bei Deinem Beispiel zu bleiben) 12Bit, haben sich da 
die Fehler des ADC aufsummiert oder haben die in den 2 verworfenen Bits 
gesteckt?

Burkhard schrieb:
> Es ist
> also immer eine Abwägung anhand der konkreten Projektanforderungen und
> den verfügbaren ADC-Kandidaten.
PIClig schrieb:
> Nur im konkreten Spezialfall kann es nutzbar sein.
Und vielleicht eine grobe "Liste" dieser Spezialfälle würde meine Frage 
beantworten. Dass die Methode nicht generisch ist, lässt sich zum Teil 
daraus schließen, dass es sauteure ADCs mit hoher Auflösung gibt.

Vielleicht das konkrete Beispiel, das mich zu der Frage veranlasst hat: 
In einem Ladegerät messe ich mit 2 Eingängen eines ADC die Spannung über 
einen Shunt. Soll heißen, ich messe an beiden Enden und bilde die 
Differenz. Über den Widerstandswert ermittle ich den Strom. Das Problem 
ist, dass die beiden Eingangsspannungen zwischen etwa 2,5 und etwas über 
2 V liegen, ich also die Referenzspannung meines ADC nicht kleiner 
machen kann, die Differenz der beiden liegt aber bei maximal bei 450mV. 
Bei den 5V Referenz und meinem 10Bit ADC komme ich damit also nur auf 
eine Auflösung des Stroms von ~9mA. Ich wollte mir die Verstärkung der 
Differenz mittels OPV sparen und stattdessen durch Oversampling die 
Auflösung etwas erhöhen. Da das Ergebnis auf einem Display angezeigt 
wird, ich also nur mit verhältnismäßig geringer Frequenz ein Ergebnis 
brauch, fällt die geringere Samplingrate nicht ins Gewicht.

Hätte ich konkret nach diesem Beispiel gefragt, hätte ich ein mehr oder 
weniger begründetes Ja oder Nein bekommen und in der nächsten Situation 
entweder wieder fragen müssen oder wieder (nicht) auf Oversampling 
gesetzt. Deswegen die allgemeine Frage

von PIClig (Gast)


Bewertung
0 lesenswert
nicht lesenswert
"Das kann nach Aktenlage nicht beschieden werden."

Wenn das Rauschen "schlecht" ist, baust du dir eine Anzeige die mit
> verhältnismäßig geringer Frequenz
sich staendig aendernde Werte anzeigt.
Das ist nicht das was man wirklich will.
Wenn es zuwenig rauscht, springt das Ergebnis.
Etwa so als wenn der ADC "Missing Codes" haette.
Das ist auch nicht das was man wirklich will.


Beispiel:
Ich bevorzuge auch heute noch fuer geneue Messungen von Frequenzen
im NF-Bereich einen Zaehler der die Eingangsfrequenz verzehn- oder
verhundertfacht. Ein Reziprokzaehler koennte das zwar auch, liefert
aber bei jedem Messvorgang in den letzten Stellen nur Hausnummern.

von A. S. (achs)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> Ist ein höherer Zeitaufwand nicht mit einer geringeren Samplingrate
> gleichbedeutend? Wenn ich mehr Zeit für etwas brauche, kann ich es in
> gegebener Zeit seltener tun. Oder gibt es Fälle, in denen das nicht so
> ist?

Nein. RechenZeit und sampleRate haben miteinander nichts zu tun. In den 
meisten Fällen limitiert Zeit nicht die Rate.

von A. S. (achs)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> Ich wollte mir die Verstärkung der Differenz mittels OPV sparen und
> stattdessen

Ein qualitativ notwendiges Rauschen zu erzeugen wäre deutlich 
aufwendiger

von A. S. (achs)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> grobe "Liste" dieser Spezialfälle

ADC vorgegeben.

von Burkhard (Gast)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> Ich wollte mir die Verstärkung der
> Differenz mittels OPV sparen

IMHO an der falschen Stelle gespart: Du schmeisst mehr als 4/5 des 
ADC-Eingangsbereiches weg und versuchst die Auflösung "durch die 
Hintertür" wieder reinzuholen. Zudem fehlt ohne vorgeschalteten 
ADC-Treiber (OpAmp) eine möglicherweise erforderliche Impedanzanpassung 
- dazu sollte das Datenblatt das gewählten ADC Aufschluss geben.

von MKr (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
PIClig schrieb:
> sich staendig aendernde Werte anzeigt.
Das ist tatsächlich ein Phänomen, mit dem ich Kämpfe
Ich schließe daraus, dass mein Signal ungeeignet ist

A. S. schrieb:
> Nein. RechenZeit und sampleRate haben miteinander nichts zu tun. In den
> meisten Fällen limitiert Zeit nicht die Rate.
Verständnisfrage: Durch das Oversampling baue ich mir doch in Software 
einen "virtuellen" ADC mit entsprechend höherer Auflösung, aber dadurch, 
dass ich mehrere Messungen mit dem echten ADC mache, die mehr Zeit 
brauchen und den im Verhältnis geringen Anteil an Rechenzeit, geringerer 
Samplingrate. Also begrenzt mir der Zeitaufwand doch die Samplingrate 
des virtuellen ADC?

A. S. schrieb:
> ADC vorgegeben
Geht nicht, weil die Frage an der Stelle dann wohl zu allgemein ist.

Burkhard schrieb:
> Zudem fehlt ohne vorgeschalteten
> ADC-Treiber (OpAmp) eine möglicherweise erforderliche Impedanzanpassung
> - dazu sollte das Datenblatt das gewählten ADC Aufschluss geben.
Ist der Ausgang eines Spannungsreglers, der definitiv mehr Strom als ein 
OPV liefert, nicht niederohmig genug?
Es handelt sich um einen Atmega. (An dieser Stelle bitte kein 
Atmel-Bashing...)
Das Datenblatt sagt dazu
"The ADC is optimized for analog signals with an output impedance of 
approximately 10 kOhm or less". Die Bedingung habe ich doch locker 
erfüllt?

Abgesehen davon sehe ich ein, dass ich an der falschen Stelle sparen 
wollte. Kommt halt doch noch der OPV dazu.

Schlussfolgerung an dieser Stelle ist damit für mich, dass ich 
Oversampling nie einsetzen kann, weil ich nicht abschätzen kann, wann 
mein Signal die nötigen Kriterien erfüllt oder welche Kriterien ein ADC 
erfüllen müsste.

von A. S. (achs)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> die mehr Zeit brauchen und den im Verhältnis geringen Anteil an
> Rechenzeit,

Du hast von Zeitaufwand gesprochen im Urpost. Was du Jetzt mit zweitem 
Halbsatz hier meinst, erkenne ich nicht.


MKr schrieb:
> A. S. schrieb:
>> ADC vorgegeben
> Geht nicht, weil die Frage an der Stelle dann wohl zu allgemein ist.
Das war eine Antwort, keine Bitte.

von MKr (Gast)


Bewertung
0 lesenswert
nicht lesenswert
A. S. schrieb:
> Das war eine Antwort, keine Bitte.
Tut mir Leid, dann verstehe ich die Antwort nicht. Meinst Du, dass ich 
den ADC vorgeben muss, damit mir eine grobe Liste gegeben werden kann?

A. S. schrieb:
> Du hast von Zeitaufwand gesprochen im Urpost. Was du Jetzt mit zweitem
> Halbsatz hier meinst, erkenne ich nicht.
Wenn mein Hardware-ADC mit angenommen 10 Bit 250KS/s schafft, also für 
eine Messung 4us braucht, braucht mein virtueller Software-ADC mit 
angenommen 12 Bit, also 16x Oversampling, entsprechend 16x die Zeit des 
Hardware-ADC, also 4x16=64us. Die Rechenzeit, die zum Abfragen der 
Ergebnisse, Summieren und den Rechtsshift nötig ist, kommt noch dazu. 
Letztere fällt aber, meiner Einschätzung nach, kaum ins Gewicht. Diese 
angenommen ~64us meinte ich im Urpost mit Zeitaufwand. Ist mit dieser 
Erklärung auch mein Halbsatz verständlich geworden?
Wenn ich jetzt von dieser Situation ausgehe, meine 16 Messungen 64us 
brauchen, komme ich auf eine Samplingrate für den Software-ADC von 
250Ks/s:16=15,625kS/s. Nach meinem Verständnis stehen Samplingrate und 
Zeit also im (festen) Verhältnis zueinander?

von Christoph M. (mchris)


Bewertung
0 lesenswert
nicht lesenswert
Das Thema scheint mir hier schon mal diskutiert:
Beitrag "Erhöhung ADC Genauigkeit durch Rauschen"

von A. H. (pluto25)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb :
>Das ist tatsächlich ein Phänomen, mit dem ich Kämpfe
>Ich schließe daraus, dass mein Signal ungeeignet ist
Im Gegenteil. Das Signal ist sogar gut dafür geeignet. Einfach 10 
Messungen machen und die Kommastelle um eins verschieben. Ist sie immer 
noch nervös dann 100 Messungen (bzw so viele wie die Zeit zuläßt)und die 
letzte(n) Stelle (n)vergessen. Bei ruhigen Signalen geht das nicht so 
einfach (rauschen addieren)

von A. S. (achs)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> Tut mir Leid, dann verstehe ich die Antwort nicht. Meinst Du, dass ich
> den ADC vorgeben muss, damit mir eine grobe Liste gegeben werden kann?
Ein vorgegebener ADC ist ein Punkt auf der
MKr schrieb:
> "Liste" dieser Spezialfälle
egal ob weil er schon da ist, weil er preiswerter ist, ...

> Nach meinem Verständnis stehen Samplingrate und Zeit also im (festen) Verhältnis 
zueinander?
Wenn Du mit Zeit die Samplezeit meinst, ja. Sie sind reziprok. Du hast 
es also vorher schon gewusst, nur nicht so beschrieben. Dann weiss 
Burkhard nun,  dass sein Hinweis auf diesen Nachteil unnötig war.

Burkhard schrieb:
> MKr schrieb:
>>> Ja, Oversampling heisst auch, dass die höhere, virtuelle Auflösung durch
>>> eine niedrigere Samplerate erkauft wird.
>> Danke, der Punkt war mir bewusst und steht schon im Eröffnungsbeitrag
>
> Guten Morgen. Vielleicht zu implizit. Du sprichst dort von Zeit- und
> Rechenaufwand.

von MKr (Gast)


Bewertung
0 lesenswert
nicht lesenswert
A. H. schrieb:
> MKr schrieb :
>>Das ist tatsächlich ein Phänomen, mit dem ich Kämpfe
>>Ich schließe daraus, dass mein Signal ungeeignet ist
> Im Gegenteil. Das Signal ist sogar gut dafür geeignet. Einfach 10
> Messungen machen und die Kommastelle um eins verschieben. Ist sie immer
> noch nervös dann 100 Messungen (bzw so viele wie die Zeit zuläßt)und die
> letzte(n) Stelle (n)vergessen. Bei ruhigen Signalen geht das nicht so
> einfach (rauschen addieren)
Im Moment habe ich 64x Oversampling drin und mittle das ganze dann über 
4 dieser Messungen. Ich kann aber die Mittlung auch noch vergrößern. Ich 
probiere das nachher mal

von MKr (Gast)


Bewertung
0 lesenswert
nicht lesenswert
A. S. schrieb:
> Wenn Du mit Zeit die Samplezeit meinst, ja. Sie sind reziprok
Welche Zeit meinte er denn?

von A. H. (pluto25)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> Im Moment habe ich 64x Oversampling drin und mittle das ganze dann über
> 4 dieser Messungen.
Heißt das 60 Messungen nicht genutzt werden? Besser alle Messungen 
addieren und dann durch einen brauchbaren Teiler. Oder so viele 
Messungen machen das nicht mehr umgerechnet werden braucht. z.B. eine 
Messung hat 5mV Auflösung so wären 50 addierte Messungen ein Ergebnis in 
zehntel mV

von MKr (Gast)


Bewertung
0 lesenswert
nicht lesenswert
A. H. schrieb:
> MKr schrieb:
>> Im Moment habe ich 64x Oversampling drin und mittle das ganze dann über
>> 4 dieser Messungen.
> Heißt das 60 Messungen nicht genutzt werden? Besser alle Messungen
> addieren und dann durch einen brauchbaren Teiler. Oder so viele
> Messungen machen das nicht mehr umgerechnet werden braucht. z.B. eine
> Messung hat 5mV Auflösung so wären 50 addierte Messungen ein Ergebnis in
> zehntel mV
Ich mache derzeit 4 Messungen a 64x Oversampling und mittle über diese

von Theor (Gast)


Bewertung
1 lesenswert
nicht lesenswert
MKr schrieb:
> A. S. schrieb:
>> Wenn Du mit Zeit die Samplezeit meinst, ja. Sie sind reziprok
> Welche Zeit meinte er denn?

:-) Die dazu reziproke Zeit.

Ich denke, mit Verlaub, Du erwartest, auf der Basis unzureichenden 
Wissens und m.M.n. zu wenig mitdenken, zuviel von dem Forum.

Und jetzt sind wir bei der Notwendigkeit angelangt, Dir den Unterschied 
zwischen "vergehender Zeit" und "Zeitaufwand" oder den zwischen "Dauer" 
und "Rate" zu erklären. Sorry. Aber das sind schon fast Trivialitäten, 
bzw. Allgemeinwissen.

Dein Thread fing gleich mit einer Rundumschlagsfrage an und Du darfst 
Dich nicht wundern, wenn dabei nichts herauskommt. Man verweigert Dir 
die Antwort nur nicht rundweg.
Immerhin hat man Dich freundlich auf eine ganz wesentliche Voraussetzung 
für das Verfahren hingewiesen. Nur dass Du dann auffälligerweise weitere 
Wissenslücken offenbart hast, die wirklich eher grundlegend sind.
Im Grunde muss man zu der Ansicht gelangen, dass Du mit einer 
tatsächlichen Antwort (die in etwa den Umfang eines Kapitels erreichen 
würde) gar nichts anfangen könntest. Mal abgesehen davon, dass 
Eigenschaften nicht grundsätzlich Vor- oder Nachteile sind. (Eine 
Wissenslücke oder ein Denkfehler, je nach dem). In jedem Fall aber, ist 
das Forum hier nicht dazu da, Lehrbücher zu schreiben.
Inzwischen, da Du offenbar irgendeine Antwort erzwingen willst, erzählt 
man Dir jetzt schon was vom Pferd.

Lies Dir am besten erstmal erstmal die hier verlinkte App-Note, un den 
verlinkten Thread sowie die wiederum dort verlinkten Artikel und PDFs 
durch.

Das wäre eigentlich eine gute Frage gewesen: "Bitte gebt mir 
Literaturhinweise zum Oversampling. Ich möchte etwas über deren 
Eigenschaften wissen". Das hätte gezeigt, dass Du gewillt bist Dir 
selbst Wissen anzueignen.

Du wirst nicht alles gleich verstehen. Das ist völlig in Ordnung, aber 
Du kannst nach dann nach bestimmten , eindeutig abgegrenzten Punkten 
fragen. Aber eben genau das! Bestimmte, dedizierte Fragen.

Ich wünsche Dir viel Erfolg.

von Theor (Gast)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> A. H. schrieb:
>> MKr schrieb:
>>> Im Moment habe ich 64x Oversampling drin und mittle das ganze dann über
>>> 4 dieser Messungen.
>> Heißt das 60 Messungen nicht genutzt werden? Besser alle Messungen
>> addieren und dann durch einen brauchbaren Teiler. Oder so viele
>> Messungen machen das nicht mehr umgerechnet werden braucht. z.B. eine
>> Messung hat 5mV Auflösung so wären 50 addierte Messungen ein Ergebnis in
>> zehntel mV
> Ich mache derzeit 4 Messungen a 64x Oversampling und mittle über diese

"Sampling" ist das selbe wie "Messung".

von Harald W. (wilhelms)


Bewertung
1 lesenswert
nicht lesenswert
Theor schrieb:

> "Sampling" ist das selbe wie "Messung".

Ja, und wenn man das übertreibt, hat man sich übermessen.

von MKr (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Theor schrieb:
> :-) Die dazu reziproke Zeit.
Die Zeit, die reziprok zur Samplezeit ist?
Eine Rate gibt an, wie oft etwas in einem gegebenen Zeitraum passiert. 
Eine Samplerate  von 100/s bedeutet, dass 100 Messungen in einer Sekunde 
passieren. Und jede Messung dauert entsprechend 10ms. Wie Frequenz und 
Periodendauer. Ich kenne den Unterschied.
Wenn also Zeit und Rate reziprok sind, wie kann dann bitte eine Zeit 
reziprok einer Zeit sein?

> Ich denke, mit Verlaub, Du erwartest, auf der Basis unzureichenden
> Wissens und m.M.n. zu wenig mitdenken, zuviel von dem Forum.
Ich habe unzureichendes Wissen, das gebe ich gern zu, deswegen bin ich 
hier. Zu wenig mitdenken tu ich mit Sicherheit nicht. Vielleicht denke 
ich auf Grund meines unzureichenden Wissens in die falsche Richtung, das 
mag sein. Vielleicht benutze ich Begriffe uneindeutig. Von reinem 
App-Note lesen lerne ich aber nicht, dass zu verbessern.

> Und jetzt sind wir bei der Notwendigkeit angelangt, Dir den Unterschied
> zwischen "vergehender Zeit" und "Zeitaufwand" oder den zwischen "Dauer"
> und "Rate" zu erklären. Sorry. Aber das sind schon fast Trivialitäten,
> bzw. Allgemeinwissen.
s.o.
> Dein Thread fing gleich mit einer Rundumschlagsfrage an und Du darfst
> Dich nicht wundern, wenn dabei nichts herauskommt. Man verweigert Dir
> die Antwort nur nicht rundweg.
Das habe ich gemerkt. Und ich habe entsprechend reagiert und begründet, 
warum ich so anfing.

> Inzwischen, da Du offenbar irgendeine Antwort erzwingen willst, erzählt
> man Dir jetzt schon was vom Pferd.
Ich will keine Antwort erzwingen. Ich lege meine Überlegungen dar, damit 
sie bestätigt oder korrigiert werden können. Soweit ich weiß, 
funktioniert Wissensvermittlung so.

> Lies Dir am besten erstmal erstmal die hier verlinkte App-Note, un den
> verlinkten Thread sowie die wiederum dort verlinkten Artikel und PDFs
> durch.
Die App-Note habe ich gelesen, dort blieben meine Fragen offen, weswegen 
ich hier gelandet bin. Den anderen Thread habe ich bis jetzt noch nicht 
gelesen, hatte ich aber tatsächlich heute Abend oder morgen vor.

> Das hätte gezeigt, dass Du gewillt bist Dir
> selbst Wissen anzueignen.

> Du wirst nicht alles gleich verstehen. Das ist völlig in Ordnung, aber
> Du kannst nach dann nach bestimmten , eindeutig abgegrenzten Punkten
> fragen. Aber eben genau das! Bestimmte, dedizierte Fragen.
>
> Ich wünsche Dir viel Erfolg.
Danke für Deine Kritik, sie ist immerhin freundlich formuliert. Selbst 
dazu sind in diesem Forum manche nicht in der Lage

Theor schrieb:
> "Sampling" ist das selbe wie "Messung".
Wie wäre denn die korrekte Formulierung?
"Ich führe 64-faches Oversampling 4 mal durch und bilde über diese 4 
Ergebnisse das arithmetische Mittel?"

von PIClig (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Um sich das Signal einmal anzusehen, solltest du es einfach mit
einigermassen maximaler Rate wandeln und z.B. seriell auf
einen PC zu schaufeln.
Dann kann man die Amplitudenverteilung und etwaige spektrale
Anteile beurteilen.
U.U. ist da einfach z.B. ein Netzbrumm ueberlagert.

Da die AD-Wandler hinreichend schnell sind, und auch die
Berechnungen keine relevante Zeit brauchen, ist eine zeitliche
Betrachtung unnoetig.

von Theor (Gast)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> [...]

Na dann. Viel Erfolg. Ich glaube nur nicht d'ran.

von Manfred (Gast)


Bewertung
0 lesenswert
nicht lesenswert
MKr schrieb:
> In einem Ladegerät messe ich mit 2 Eingängen eines ADC die Spannung über
> einen Shunt. Soll heißen, ich messe an beiden Enden und bilde die
> Differenz. Über den Widerstandswert ermittle ich den Strom. Das Problem
> ist, dass die beiden Eingangsspannungen zwischen etwa 2,5 und etwas über
> 2 V liegen, ich also die Referenzspannung meines ADC nicht kleiner
> machen kann, die Differenz der beiden liegt aber bei maximal bei 450mV.
> Bei den 5V Referenz und meinem 10Bit ADC komme ich damit also nur auf
> eine Auflösung des Stroms von ~9mA.

Ist das Ladegerät schon fertig oder sind umfangreiche Änderungen 
machbar?

Ich finde Deinen Ansatz unglücklich: Mit 5 Volt Referenz und 2,5 Volt 
Pegel ist schonmal ein Bit weg, es wird ja nur der halbe Bereich des ADC 
genutzt.

Wenn der µC ein AT328 ist, nutze die interne Referenz von 1,1 Volt und 
teile beide Spannungen herunter, damit verdoppelt sich die Auflösung.

Weitaus schöner ist es, den vollen A/D-Bereich zu nutzen, dafür bräuchte 
es einen Differenzverstärker über dem Shuntwiderstand. Das muß ein 
anständiger OP sein, den, ach so beliebten, LM324 habe ich vor Jahren 
wütend in den Müll geworfen, weil ich dank dessen Drift meine Anzeige 
nicht stabil bekommen habe. Ich würde nicht auf 5V verstärken, sondern 
die internen 1,1V des AT328 verwenden - unnötig hohe Verstärkung bringt 
unnötige Drift.

Klar ist auch, dass auf das letze Bit kein Verlass ist: Beträgt der 
Meßwert 500 digit, werden mal 499 oder 501 angezeigt. In meinem 
Akkutester addiere ich 25 Werte mit jeweils 1ms Pause, werfe den 
kleinsten und größten weg und teile das durch 23, damit habe ich die 
letzte Stelle ruhig. Die 25 habe ich einfach 'mal so ausgeguckt', Du 
darfst auch gerne mehr holen - das wird die Auflösung aber nicht weiter 
verbessern. Von der Zeit her ist das unkritisch, die Spannungsquelle 
(Akku) ändert sich weitaus langsamer als die etwa 30ms, die ich für 
Messung und serielle debug-Ausgabe brauche.

------

Wenn Du noch grundlegende Änderungen kannst und willst: Beim Chinamann 
gibt es Platinchen mit dem INA219 sehr gut bezahlbar. Der kann in der 
Plusleitung bis zu 26 Volt arbeiten, löst 12 Bit über den Shunt 
vollständig auf und hat den Differenzverstärker direkt mit drin. Dank 
fertiger Arduino-Library ist er recht einfach zu handhaben - Anbindung 
per I2C.

MKr schrieb:
> Ist der Ausgang eines Spannungsreglers, der definitiv mehr Strom als ein
> OPV liefert, nicht niederohmig genug?

Niederohmig genug auf jeden Fall. Aus Erfahrung: Es schadet nicht, 
direkt am Analogport einen Kondensator nach GND zu setzen, ich nehme 
meist 100nF MKT.

von MKr (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Ich finde Deinen Ansatz unglücklich
Wirklich gefallen hat mir die Situation auch nicht. Weil ich die 
Schaltung einfach halten wollte, wollte ich aber trotzdem versuchen, das 
ganze in Software zu kompensieren. Im Moment ist immer auch ein wenig 
Experiment mit dabei, wegens Lerneffekt

> Ist das Ladegerät schon fertig oder sind umfangreiche Änderungen
> machbar?
Die Platine an sich ist fertig, ich habe aber kein Problem damit, alles 
noch mal neu aufzubauen

> Mit 5 Volt Referenz und 2,5 Volt
> Pegel ist schonmal ein Bit weg, es wird ja nur der halbe Bereich des ADC
> genutzt.
Ich sehe gerade, dass da ein Fehler in meiner Angabe ist. Ich war der 
Meinung, ich hätte das korrigiert gehabt, bevor ich das veröffentlichte. 
Die Spannung liegen zwischen 2,5V und gut 4V (!!!). Genauer:
Pin5 wird von etwa 3 bis knapp über 4V steigen, Pin2 von 2,6 (falls er 
das mitmacht, sonst muss ich früher laden oder doch mit negativer 
Hilfsspanung arbeiten...) bis 3,6V

Trotzdem danke für Deine Anregungen. Ich denke, ich werde zunächst mal 
PICligs Versuch durchführen und wenn sich das ganze nicht in Software 
lösen lässt, werde ich den Differenzverstärker ergänzen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.