mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Probleme beim Umrechen einer Spannung vom Spannungteiler auf Entspannung


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 Jan N. (jan_n497)


Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

Ich baue mir zurzeit aus ein Mikrocontroller(Atmega328p, 16 Mhz) und ein 
20x4 LCD ein Messgerät.

Für den Anfang wollte ich erst mal beim Spannung messen bleiben. Da die 
AVR Controller ja maximal 5 Volt am ADC Eingang messen können. Darf die 
Spannung zb. von einer 9V Block Batterie nicht direkt an denn ADC 
Eingang(Auch wenn er sehr hochohmig ist(glaubig. 100MOhm)).

Dafür habe ich mir gedacht das ich mir ein Spannungteiler baue. Dieser 
besteht aus 2 Widerständen. In denn Mitte greife ich die Spannung ab.

Der erste Widerstand(R1) hat denn Wert: 1 MOhm

Der zweite Widerstand(R2) hat denn Wert: 100 KOhm

Wenn ich dann die Spannung in der Mitte abgreife bekomme ich ca. 0,63 
Volt bei einer Batterie Spannung von 8,09 Volt.

Das umrechen von ein Digitalen Messwert in eine Analoge Spannung im 
Programm Code ist kein Problem:

float mV = (messWert / 1023.0) * ARef;

Mein Problem ist mehr wie ich jetzt wieder auf die richtig Spannung von 
8,09 Volt komme. Denn der Controller misst ja die Spannung am 
Spannungsteiler, diese liegt bei 0,63 Volt. Die 0,63 Volt muss ich 
irgendwie wieder auf die 8,09 Volt bekommen.

Könnt ihr mir sagen wie man das umrechnet so das ich wieder auf die 
Entspannung von 8,09 Volt komme? Hatte dieses mal vor langer Zeit 
umgesetzt(Also wie man auf die Entspannung kommt), jedoch weis ich es 
nicht mehr.

Mfg Jan.

von Thomas E. (picalic)


Bewertung
3 lesenswert
nicht lesenswert
Entspanne Dich!

Die Formel für die Eingangs-Endspannung gibt's hier:
https://de.wikipedia.org/wiki/Spannungsteiler

von spess53 (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hi

>Der erste Widerstand(R1) hat denn Wert: 1 MOhm
>Der zweite Widerstand(R2) hat denn Wert: 100 KOhm

Atmel empfielt einen Quellwiderstand von 10k.

Datenblatt:

The ADC is optimized for analog signals with an output impedance of 
approximately 10 kΩ or less.


>Das umrechen von ein Digitalen Messwert in eine Analoge Spannung im
>Programm Code ist kein Problem:

>float mV = (messWert / 1023.0) * ARef;

ist schon mal falsch. Der ADC hat 1024 Stufen.

MfG spess

von Jan N. (jan_n497)


Bewertung
0 lesenswert
nicht lesenswert
Thomas E. schrieb:
> Entspanne Dich!
>
> Die Formel für die Eingangs-Endspannung gibt's hier:
> https://de.wikipedia.org/wiki/Spannungsteiler

Danke hat mir sehr weiter geholfen, so habe ich es gemacht:

Wiederstände berechnen:
R1  + R2 = Rgesamt
15K + 1K = 16K

Strom ausrechenen:
U      / Rgesamt = I
7,46 V / 16,000  = 0,00046625

Teilspannung(U2) ausrechnen:
U    / Rgesamt * R2    = U2
7,46 / 16,000  * 1,000 = 0,46625 Volt(gerundet(0,46 V))

Entspannung(Teilspannung Formel umgestellt):
U2 / R2 * Rgesamt = U

0,46625 / 1,000 * 16,0000 = 7,46 V

U2 bekomme ich ja dann vom ADC

spess53 schrieb:
> Atmel empfielt einen Quellwiderstand von 10k.
>
> Datenblatt:
>
> The ADC is optimized for analog signals with an output impedance of
> approximately 10 kΩ or less.

Ohh, Auf dem Artikel von Mikrocontroller.net(Spannungsteiler) steht ein 
Geheimtipp, ich habe nun die Widerstände von 15K und 1K genommen. So wie 
es da steht.

c-hater schrieb im Beitrag #4698111:
> Nein, den Code hast du garantiert gekönnt per C&P übernommen, da habe
> ich absolut keine Zweifel.

Ja ist ja gut, dieses habe ich aus einen anderen Projekt von mir 
Kopiert.

c-hater schrieb im Beitrag #4698111:
> Du lerntst einfah so lange, bis du den geklauten Code wirklich
> verstehst. Dann änderst du ihn entsprechend deinen Bedingungen. Auch das
> ist: "Programmieren"!

Ah okay. Danke.

Lg Jan.

von Thomas E. (picalic)


Bewertung
0 lesenswert
nicht lesenswert
Jan N. schrieb:
> Entspannung(Teilspannung Formel umgestellt):
> U2 / R2 * Rgesamt = U

Wenn die Berechnung der Endspannung am Ende stimmt, kann man sich in 
Ruhe zurücklehnen und Entspannen! ;)

von Michael U. (amiga)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Jan N. schrieb:
> Ohh, Auf dem Artikel von Mikrocontroller.net(Spannungsteiler) steht ein
> Geheimtipp, ich habe nun die Widerstände von 15K und 1K genommen. So wie
> es da steht.

Du kannst auch höhere Werte nehmen, was sich bei Spannungsmessung wegen 
des zusätlichen Stroms für den Spannungsteiler auch empiehlt.

Die Problematik, da0 der AVR-ADC eine relativ niederohmige Quelle für 
die Sample&hoöd Schaltung haben will, kannst Du entschärfen, wenn Du am 
ADC-Eingang einen Kondensator gegen GND legst. 100n sind ein brauchbarer 
Wert.
Nachreil: die Zeit, bis der ADC nach Anlegen Deiner Spannung an den 
Teiler den richtigen Wert mißt, wird länger. Zeitkonstanten kannst Du 
Dir ausrechnen, ganz praktisch spielt das erst eine Rolle, wenn man 
schnell sich ändernde Werte erfassen will. Als Meßgerät, wo Du die 
Prüfspitze irgendwo ansetzt und dann auf die Anzeige schaust, stören 
auch 0,1s nicht, man schaut ohnehin drauf, bis der Wert stabil aussieht.

So als Richtwerte: alte mechanische Vielfachmesser hatten meist 
20kOhm/V, also im 10V-Bereich einen Innenwiderstand von 200kOhm. Das ist 
so gering, daß es schon merkliche Verfälschungen gibt, wenn in einer 
Schaltung hinter einem 100kOhm Widerstand mißt.
Üblichen heutige Multimeter haben 10MOHm, unabhängig vom Meßbereich, das 
ist wesentlich weniger störend.

Gruß aus Berlin
Michael

von Inkognito (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Jan N. schrieb:
> U2 bekomme ich ja dann vom ADC

VOM ADC kommt gar nichts, weil das ein Eingang ist.

Warum nimmst du für deine Rechnerei nicht den Faktor 10, statt 16.
Die Messgerätehersteller machen das seid Jahrzehnten so. Da werden
dann Widerstände in der Größenordnung mit 9, 90, 900, 9000... verwendet
und wenn du mal die richtige Gleichung auf Wikipedia damit fütterst,
wird dir ein Geistesblitz kommen, warum das so ist. Klar kann man das
auch umrechnen, aber frühere Messgeräte hatten diese Intelligenz nicht,
also musste das auch anders gehen.

von Tux (Gast)


Bewertung
0 lesenswert
nicht lesenswert
16 ist einfacher, weil man dann die Rückrechnung mittels Bitshift 
erledigen kann?!

von Germanist (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Jan N. schrieb:
> ... Entspannung

Hier bringst du zwei Dinge ziemlich durcheinander. Ein Spannungsteiler 
hat mit Entspannung nur etwas zu tun, wenn die Beschäftigung damit zu 
deiner Erholung dient. Dann solltest du allerdings die Rechnerei einfach 
mal links liegen lassen, jedenfalls wenn sie dir so viel Kopfzerbrechen 
bereitet, dass du extra einen Thread dafür aufmachen musst.

von Jochen F. (jamesy)


Bewertung
0 lesenswert
nicht lesenswert
Nur so eine Frage zwischendurch: Wenn Du eine 9-Volt-Batterie 
verwendest, die bei einer Belastung von ca. 0.5 mA auf 7.4 Volt geht (an 
einem Zeitpunkt gemessen) - dann ist die praktisch leer. Die Spannung 
wird sich also rapide gegen Null verändern. So kann man sich sicher 
nicht auf das Ergebnis der Berechnungen verlassen.
Tip: Nimm doch eine Knopfzelle als Spannungsquelle, die ist ohne Teiler 
im Bereich und steht fest.

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.