ADC-Differential-Messung

OP #6456180
Lesenswert?
• ▲
▼
Meinem uralt selbst gewickelten Stell-Trenn-Trafo mit zusätzlichem 
Gleichspannungsausgang fehlte eine Spannungs- und Stromanzeige. Die habe 
ich nun mit einem Tiny861 nachgerüstet. Die Strommessung wollte ich 
direkt mit der Differential-Messung und der internen Verstärkung machen 
(siehe Bild 1).
Die Messung wird in einer Loop zur Mittelwertbildung gemacht. Dabei 
werden 3 Single-Messungen für 2 Spg-Bereiche und einer Temperatur und 2 
Differential-Messungen mit V=32 und V=8 für den Strom gemacht.

Beim Umschalten auf Differential gibt es Probleme. Die erste Wandlung 
liefert Null. Erst nach 2 oder 3 Dummy-Wandlungen bekomme ich brauchbare 
Ergebnisse, es geht auch ein Wait-Statement nach Setzen des MUX. Im 
Manual habe ich dazu nichts gefunden. Gibt es dafür Erkärungen? Evtl. 
Umladen interner Kapazitäten?
Ich denke, dass ich keine grundsätzlichen Fehler mache:
ADC-Frequenz von 125kHz
Loop mit:
1. Setzen von ADCSRB und ADMUX
2. Wartezeit von z.B. 500µs
3. Wandlung starten mit ADSC=1
4. Warten auf ADSC=0
5. Ergebnis abholen
Ist die erforderliche Wartezeit normal und wie groß sollte sie sein? 
Gibt es dafür Erklärungen?
Angehängte Dateien:
OP #6457956
Lesenswert?
• ▲
▼
Einen offensichtlichen Grund für die erforderliche Wartezeit scheint es 
wohl nicht zu geben. Das muss man dann wohl einfach ausprobieren.

Ich habe noch ergänzende Untersuchungen zur Differential-Messung 
gemacht. Insbesondere interessierte mich die Linearität. Dazu habe ich 
den ganzen Messbereich durchgemessen. Ich musste auch ohne Wechsel 
zwischen Single und Differential eine Wartezeit zwischen den Messungen 
vorsehen - jedenfalls wurde die Messung damit viel stabiler. Im 
einzelnen:
- 125kHz ADC-Takt
- Vref=1,085V, Verstärkung *32, also 34mV Vollausschlag
- Offset von +1,3 Rohwerten
- 500µs Wartezeit
- Mittelwert aus 100 Messungen
Die blaue Kurve zeigt den absoluten Fehler in mV mit der linken Achse. 
Man sieht eine Überhöhung bei 900 Rohwerten und dann ein Abdriften ins 
negative bei über 1000 Rohwerten. Die gestrichelten roten Linien 
markieren +-1 Rohwert.
Trägt man den relativen Fehler bezogen auf den Messwert auf (gelbe 
Linie, rechter Maßstab), sieht das nicht ganz so dramatisch aus. Im 
mittleren Bereich sind die %-Abweichungen fast Null. Erst bei 100 und 
950 Rohwerten tritt der maximale Fehler von ca. 0,5% auf. Rohwerte unter 
20 und über 1010 sollte man meiden. Je nach Genauigkeitsanforderung muss 
man sich also im mittleren Bereich bewegen.
Die auffälligen symmetrischen Abweichungen bei 100 und 950 Rohwerten 
deuten darauf hin, dass die Kennlinie im ADC-Verstärker im Randbereich 
etwas hingebogen wurde, was dann im Grenzbereich nicht mehr ausreicht.
Angehängte Dateien:
Gast #6633715
Lesenswert?
• ▲
▼
Ich habe auch mal eine Differential-Messung mit T861 für eine direkte 
Strommessung gemacht. Dabei habe ich auch festgestellt dass die erste 
Messung nach dem Umschalten den Wert 0 liefern. Es funktioniert nur mit 
mehreren Dummy-Messungen oder mit einer Wartezeit nach dem Setzen des 
Mux. Seltsamerweise ist eine Wartezeit auch bei jeder 
Differential-Messung ohne Umschaltung nötig. Erst dann sind die 
Messwerte stabil.
Ich hatte das schon mal hier beschrieben:
Beitrag "ADC-Differential-Messung"
Vielleicht hilft es auch, den ADC-Takt niedriger zu wählen. Ich werde 
die Messung noch mit dem T85 wiederholen, da wird wohl nichts anderes 
heraus kommen.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.