www.mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik Spannungsmessung mit AVR


Autor: Johann L. (gjlayde) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hi, ich versuche gerade eine Spannungsmessung mit einem AVR ATmega8 zu 
realisieren.

Ich hatte schon mal ein C-Meter gebaut, das ganz gut funktioniert mit 
einer Auflösung bis zu einigen pF:

Kondensator C hängt an AIN- des Analog-Komparators (AC) und wird 
entladen, indem man AIN- auf HIGH setzt. Nachdem er entladen ist, 
schaltet man AIN- hochohmig und misst die Zeit, bis die Spannung an AIN- 
unter die Referenzspannung U_ref gefallen ist, die am AIN+ des AC hängt. 
Dazu verdrahtet man U_S = GND und der C lädt sich über R auf.

Soweit ein alter Hut, und das geht wie gesagt bis zu einigen pF genau.

Das wollte ich nun verwenden, um eine schnelle Spannungsmessung zu 
realisieren, indem ich nicht U_S=GND wähle, sondern bei bekannten Werten 
U_ref, C und R die Spannung U_S bestimme gemäss

U_0 ist die Vorspannung am Kondensator, also U_0=VCC (ich messe kein 
Unterschied zwischen HIGH-Pegel am AVR-Pin und VCC).

Durch Messen der Zeit t sollte es also möglich sein, U_S zu bestimmen.

Dummerweise stimmen die gemessenen Werte nicht mit den berechneten 
überein, und ich hab keine Ahnung, woran das liegen könnte. Sämltliche 
Werte hab ich nachgemessen, und die exakten Werte für die Berechnung 
verwendet.

Eigentlich ist dieses Verfahren ganz nett, denn
-- die Messung ist einigermassen hochohmig
-- je nach RC-Konfiguration kann man Zeit gegen Genauigkeit eintauschen
-- man kann negative Spannungen messen

Hier mal ein paar Messwerte
U_S -> Ticks @ 16MHz
0.0 -> 120
0.2 -> 125
0.4 -> 129
0.6 -> 134
0.8 -> 140
1.0 -> 147
1.2 -> 155

Wie man sieht geht die Messung sehr fix im Vergleich zu einem ADC, ist 
aber natürlich nicht so exakt. In der Anordnung reichen zur Messung 12µs 
(das sind 200 Ticks).

Die nach der Formel berechneten Werte
U_S -> Ticks @ 16MHz

0.0 -> 83
0.1 -> 85
0.2 -> 87
0.3 -> 89
0.4 -> 91
0.5 -> 93
0.6 -> 95
0.7 -> 98
0.8 -> 100
0.9 -> 103
1.0 -> 105
1.1 -> 108
1.2 -> 111
1.3 -> 114
1.4 -> 118

Ticks -> U_S
10 -> -35.167312
20 -> -15.195828
30 -> -8.538683
40 -> -5.210123
50 -> -3.212997
60 -> -1.881587
70 -> -0.930588
80 -> -0.217344
90 -> 0.337395
100 -> 0.781182
110 -> 1.144276
120 -> 1.446850

Die Anordung müsste doch hochohmig genug sein, um die Spannung am 
Spannungsteiler R1/R2 nicht allzusehr zu beeinflussen? Durch R fliessen 
nicht mehr als 3µA, durch den U_ref-Teiler hingegen 500µA...

Georg-Johann

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
**ARGL**

Hatte alles ausgemessen bis auf den C, hätte mich eigentlich stutzig 
mchen müssen der Unterschied bei U_S=0V...

Da hat's wohl einige parasitäre Kapazitäten oder so. Für C=144 pF 
berechne ich folgende Werte:
U_S -> Ticks @ 16MHz
0.0 -> 120
0.1 -> 123
0.2 -> 125
0.3 -> 128
0.4 -> 131
0.5 -> 134
0.6 -> 137
0.7 -> 141
0.8 -> 144
0.9 -> 148
1.0 -> 152
1.1 -> 156
1.2 -> 160
1.3 -> 165
1.4 -> 170

Ticks -> U_S
50 -> -6.727945
60 -> -4.810697
70 -> -3.441239
80 -> -2.414150
90 -> -1.615307
100 -> -0.976236
110 -> -0.453362
120 -> -0.017637
130 -> 0.351050
140 -> 0.667066
150 -> 0.940944
160 -> 1.180585
170 -> 1.392031

Das sieht schon mal brauchbarer aus. Vielleicht kann man ja trotzdem 
noch was verbessern?

Georg-Johann

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.
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.

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