Widerstand mit atmega328 messen, aber Diode im Spannungsteiler.

Gast #6014354
Guten Abend zusammen,

ich würde gerne eine bestehende Schaltung mit einer Überwachungsfunktion 
erweitern. Dazu muss ich den aktuellen Wert von R3 ermitteln um zu 
erkennen, ob er zwischen 0 und ca. 30 Ohm liegt... Was darüber liegt, 
ist für die Überwachung im Grunde nicht interessant.

Aber wie komme ich von dem Wert, den der 10Bit ADC misst, auf den 
Widerstand R3?

Die Beispiele, die ich gefunden habe, passen irgendwie nicht.

An dem Spannungsteiler selber, den Werten und der Diode, kann ich leider 
nichts ändern... nur den ADC andocken.

Weiß jemand, wie das gehen könnte?

Dankeschön, Sebastian
Angehängte Dateien:
#6014377
Sebastian Frank schrieb:
> ... muss ich den aktuellen Wert von R3 ermitteln um zu
> erkennen, ob er zwischen 0 und ca. 30 Ohm liegt...

> Aber wie komme ich von dem Wert, den der 10Bit ADC misst, auf den
> Widerstand R3?

Die Anordnung der drei Bauteile D1, R2 und R3 ist für die Messung egal. 
Wenn du die Diode nach unten verschiebst, dann bilden R1 und (R2+R3) 
einen Spannungsteiler, dessen Fußpunkt auf ~ 0.4V liegt. Am ADC mißt du 
damit

Ux = 0.4V + (Vcc - 0.4V)·(R2+R3)÷(R1+R2*R3)

umstellen nach R3 darfst du selber. Da du nur einen Schwellwert von 30Ω 
detektieren willst, kommst du einfacher, wenn du einmal R1, R2 und 
R3=30Ω einsetzt und Ux ausrechnest. Dann nochmal für R3=0. Und schon 
hast du die Grenzwerte, zwischen denen Ux erlaubterweise liegen darf.

Tip: die Flußspannung der Diode schwankt mit dem Exemplar und der 
Temperatur. Sonderlich genau wird das ganze nicht werden.
Gast #6014378
Sebastian Frank schrieb:
> Wert von R3 ermitteln um zu
> erkennen, ob er zwischen 0 und ca. 30 Ohm liegt

5V minus ADC-Spannung = Differenz

Differenz geteilt duech 390ohm = Strom X

Zweiten ADC-Kanal zwischen R2 und R3 anschließen und UR3 durch Strom x 
teilen und du hast deinen Widerstand.
#6014385
Sebastian Frank schrieb:
> Weiß jemand, wie das gehen könnte?

Rechnen?

angenommen 5V, dann:
5V/400ohm = ca. 12.5mA, also passt das mit 0.4V für die Diode

dann teilen sich 4.6V auf alle Widerstände:
Wert am ADC = (R2 + R3) / (R1 + R2 + R3) * 4.6V + 0.4V
= 0.52V für R3 = 0
= 0.83V für R3 = 30

Auflösen nach R3 kann man das bestimmt, aber darauf hab ich nun wirklich 
keine Lust.

Als Aref würd ich die internen 1.1V wählen , dann wirds genauer.
Gast #6014631
Guten Morgen zusammen,

boar Danke Leute! Da wäre ich im Leben nicht drauf gekommen.

Der Vollständigkeit halber die umgestellte Formel:

Ux = zuvor gemessene Spannung am ADC
V(f)Diode = 0.4
AVCC = 5.0
1
R3 = (V(f)Diode * R1 - AVCC * R2 + Ux * R1 + Ux * R2) / (AVCC  - Ux)

Vielen Dank und einen schönen Tag!

PS: Danke auch für den Hinweis mit der Ermittlung der Grenzwerte durch 
das Einsetzen und Messen eines 0 Ohm bzw. 30 Ohm  Widerstandes. Das wäre 
auch noch eine Möglichkeit

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 7 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.