AVR-NET-IO und PT100-Temperaturfühler

Hallo zusammen,

da meine Vaillant-Solarsteuerung leider keinen RS232-Anschluss für das Übermitteln der Signale besitzt, möchte ich gerne die Temperaturfühler abgreifen und mit dem AVR-Board erfassen.
Die Temperaturfühler sind PT100-Elemente in 2-Draht mit 5V Versorgungsspannung.
Ich hab mir nun gedacht, dass ich die Spannung einfach an der Vaillant-Steuerung parallel abgreife und auf die ADC-Eingänge des AVR-Boards lege. Also ein Kabel an GND (J8), das andere an den jeweiligen ADC-Eingang.
Den AREF-Jumper (J4) muss ich doch dann auf „Extern“ stellen, ohne eine Spannungsversorgung anschließen zu müssen, oder?
Funktionier das so, oder kann da was schiefgehen? Die zusätzliche Leitungslänge beträgt nur ca. 1 Meter.

Wenn mir da jemand einen Tipp geben könnte, wär ich sehr dankbar! :slight_smile:

Gruß
dfhome

Ich denke, das wird nicht funktionieren. ein PT100 ist ja nur ein veränderlicher Widerstand. Am ADC kannst Du Spannungen bis zur Höhe der Referenzspannung messen. Wenn Du es so machst wie Du geschrieben hastm wirst Du immer nur „0“ bekommen, weil die einzige Verbindung nach GND(über den PT100) geht. Gewöhnlich macht man es aber so, dass man mit einem PT und einem bekannten Festwiderstand einen Spannungsteiler zwischen Plus, ADC-Eingang und GND aufbaut. Der PT100 hat mW einen Nennwiderstand von 10k. Mit einem weitern 10k Widerstand (Metalfilm, enge Toleranz+Temperaturstabil)gegen Plus hast Du eine Spannung von 2,5V am ADC bei 25 Grad.
Wenn Du du AREF auf extern stellst(und nichts anschliesst) , mußt Du die interne Referenzspannung aktivieren. Das sind mW. 2,5V (oder 1,1V-Datenblatt lesen!). Damit hast Du einen Messbereich von 0-2,5V in 0,0025V-Schritten bei 10bit Auflösung. Wenn Du den AREF-Jumper so läßt, ist die Referenzspannung 5V und Du hast einen Messbereich von 0-5V (in 0,005V Schritten bei 10bit). Da man mit dem 10/10 Spannungsteiler auch über 2,5V kommt, würde ich letzte Variante empfehlen, auch wenn man damit den fast halben Messbereich verschenkt. Das ist aber nicht so schlimm, da die Toleranzen sowieso größer sind als die verbleibende Auflösung.
Alternativ kannst Du an AREF=extern dort auch eine eigene Referenzspannung mit einem passenderen Wert anlegen.

Tommi

Hallo tommi,

Danke erstmal für deine Antwort. Das heißt aber, dass ich nicht rein eine Spannung messen kann (analog Multimeter)? Denn genau das wollte ich ja tun.
Wenn das so ist, wie Du schreibst, bleibt mir ja nur die Möglichkeit, einen separaten Satz PT100-Elemente über die interne Referenzspannung anzuschließen, um damit die Temperaturen nach IPS zu holen.

Hallo dfhome,
mit einem LM35 Temp-Sensor kannst du deine Temperaturen messen und die Analogspannung direkt über deine Analogeingänge einlesen. So wie du dir es mit den PT100 Sensoren vorgestellt hat. Hier findest du den Sensor
Der LM 35 ist ein „Dreibeiner“ der 5V, Masse und die Ausgangsspannung als Anschlüsse hat.

Grüße
Andrge

klar kannst Du eine Spannung messen, der ADC kann gar nichts anderes, doch dazu muss erstmal eine Spannung da sein. Wenn man das eine Ende des PT100=10k-Widerstand an GND legt, welche Spannung ist dann dann am anderen Ende ohne Zusatzschaltung??? Genau 0V! Irgendwo muss der Plus noch ran. Den auf den ADC-Eingang zu legen, macht kein Sinn, so messe ich ja genau diese Spannung, die sich nicht ändern wird, auch wenn sich der PT100-Widerstand ändert.U=R*I. Also Spannungsteiler mit einem Festwiderstand an Plus zu ADC, von dort der PTC an Gnd. Wenn sich jetzt der Widerstand des PT100 temperaturbedingt ändert, ändert sich die Spannungverteilung am ADC-Eingang, die kannst Du jetzt mit Multimeter oder ADC messen. Die Spannung ist proportional dem Verhältnis der Widerstandswerte(unbelasteter Spannungsteiler). Da der Festwiderstand sich nicht ändert (soll), ist die Spannung am ADC nur noch vom PT100 und damit von der Temperatur abhängig. Die Spannungswerte sind nicht proportional zur Temperatur, deswegen legt man sich i.d.R. auch eine Wertetabelle an, die man vorher ausgemessen oder bekommen hat.
Wem das alles zu viel Arbeit ist, kauft sich gleich einen Sensor mit direkter Temperaturausgabe (wie LM75 oder DS1820)

Tommi

Was vielleicht nicht richtig rüberkam: die PT100-Elemente werden ja schon mit einer Spannung versorgt (durch die Solarsteuerung). Ich kann ja jetzt schon auf den zwei Adern der Sensoren mit dem Multimeter die Spannung messen - und das will ich eben mit dem AVR machen.

Welche Spannung, die der Spannungsversorgung oder eine sich temperaturabhängig ändernde Spannung? Wie ist das geschaltet?
Ich meine es so:

 Plus Versorgungsspannung---Widerstand---ADC Eingang---PT100---GND

Fehlt der Vorwiderstand, liegt am ADC die Versorgungsspannung direkt an, dann spielt die Temperatur keine Rolle mehr für die Messung.
Wenn Du aber schon eine sich ändernde Spannung hast-Prima. Jetzt nur noch aufpassen, das diese nicht größer als AREF wird und diese darf nicht grösser als VCC=5V werden.

Tommi

Hallo tommi,

da die PT100-Elemente als 2-Draht ausgeführt sind, ist die Spannung, die ich messen will, die, die sich über der Temperatur ändert und gleichzeitig die Versorgungsspannung. Einen Vorwiderstand gibt es doch in so einer Schaltung nicht (siehe: pt100 Temperaturfühler Temperatursonden Messtechnik Meßgeräte - FuehlerSysteme eNET International - Temperaturfühler Widerstandsthermometer?

Die Solarsteuerung hat (ohne PT100-Element) diesselbe Spannung wie das AVR-Board (5V) - würde also passen. Nun aber eben meine (vielleicht zu einfache?) Frage: wie schließ ich das ans AVR-Board an, um die Spannung zu messen? :confused:

Ich will einfach nur die Plus- und Minus-Klemme der Solarsteuerung abgreifen und messen.

In Deinem Link wird die Nutzung einer Stromquelle=Konstantstrom vorgeschlagen. Das geht natürlich auch. Dann kannst Du auch die Spannung direkt am Widerstand messen. Das Produkt aus Strom und max. Widerstand darf die Referenzspannung nicht überschreiten, sollte aber wegen der Ausnutzung des Messbereiches nicht wesentlich drunter liegen(U=I*R). Allerdings mußt Du die Stromquelle (ein extra IC oder Transistor mit Referenzdiode) selber implementieren, wenn Du nicht schon einen fertigen Baustein nutzen kannst.
Ich finde den Spannungsteiler einfacher.

Tommi

Hallo Tommi,

wie groß müsste denn der Festwiderstand ausgelegt werden?
Danke schon mal für ne Antwort! :slight_smile:

Hallo dfhome

Ich möchte nun auch noch was zu deinem Problem sagen:
So wie ich das verstehe wird den PT 100 bereits auf irgend eine Art aus der Heizungssteuerung mit einem Konstantstrom versorgt, somit stellt der Pt100
eine, wenn auch etwas hochohmige, Spannungsquelle dar. Diese kannst du wie du ja schon gesagt hast mit einem, meist sehr hochOhmigen, Voltmeter messen. Dein ADC Eingang des AVR-Net stellt auch einen solchen Eingang dar.
Wenn nun die zu messende Spannung nicht über der zulässigen Höchstspannung des ADC liegt, so brauchst du deinen ADC Eingang einfach nur anzuklemmen (also parallel zum PT 100). So das wäre die Theorie, beim Anschluss must du dann einfach mal genau testen, ob durch irgendwelche Einflüsse, der Messwert , der durch deine Heizungssteuerung erfasst wird, verfälscht wird, wenn nicht hast du gewonnen, wenn ja, dann überlegen wir mal weiter.
Vielleicht hilfts.

Hallo,

leider funktioniert da was nicht. Wenn ich analog dem Multimeter den ADC-Eingang auf Plus und Gnd auf Gnd lege, zeigt mir die Solarsteuerung einen Fehler am Sensor an. Ich schätze, das ist irgendein Masseproblem…?
Wenn ich nur den Gnd von der Solarsteuerung auf den ADC lege, springt der Messwert und aus 46°C werden über 100°C. Ich denke, hier fungiert der ADC noch irgendwie als Widerstand…?

Danke schon mal! :wink:

Hallo dfhome
Da hast du wahrscheinlich Recht. Ich hatte es fast schon befürchtet.
Nun habe ich mir das Schaltbild des AVR- NET nochmal genauer angeschaut:

  1. der negative Eingang ist mit deiner Versorgungsspannung - oder GND verbunden.
  2. Der Analog Eingang ist ohne einen weiteren Schutzwiderstand direkt nach aussen geführt(etwas fahrlässig).
  3. Beim schnellen Anschauen des Atmega32 Datenblattes konnte ich nichts über seinen Eingangswiderstand finden, aber aus dem angegebenen max Eingangsstrom lässt sich raten, dass er wahrscheinlich um die 50 Mohm liegt.
    Daraus ergibt sich, dass du ca 100kOhm zur Sicherheit in Serie zu jedem Ad Eingang schalten kannst, ohne den Messwert stark zu verfälschen, dann wird die Sache etwas weniger kritisch.
  4. Nun musst du noch für geordnete Masseverhältnisse sorgen.
    das heisst du musst versuchen zu messen, welcher Anschluss deines PT100
    0 Potential hat( vielleicht auch zu allen weiteren PT100 durchverbunden ist).

Wenn du keinen eindeutigen O Punkt findest, so wird der Aufwand einfach zu gross, dort die Spannung abzugreifen, und ich würde dir auch zu einer separaten Temperaturmessung raten.

Noch eine kleine Ergänzung, du könntest auch mal versuchen den Schutzwiderstand aufzuteilen, 50K in Serie mit dem Ad + Eingang und 50K in den in Serie zum Negativen Eingang, (also deinem Massepunkt), wird aber spätestens wenn du mehrere Pt 100 messen willst verfälschte Werte ergeben.

Mfg RE

Hallo,

vieleicht hilft es :
The 1-Wire Thermocouple - Sensors

gruss thomas

PT100=100Ohm bei 25°. Das bedeutet bei einem Vorwiderstand von 100Ohm an +5V eine Spannung von 2.5V am ADC(Spannungsteiler 1:1). Für den Rest gibts Tabellen(Widerstandstabelle Pt 100)
In der Praxis macht man es etwas anders, weil der Messfehler bei dieser Methode recht hoch sein kann. Für alternative Schlatungen mit Konstantstromquelle und 4-Leiter-Messungen gibt es genug Beispiele im Internet.

Tommi

Das stimmt nicht ganz der Pt100 hat 100Ohm bei 0°C.

Stimmt, mein Denkfehler->wenn ich schon den Link zur Tabelle mitliefere könnte ich ja auch mal selber reinschauen. :rolleyes:
Tommi