www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Einfach zu handhabender Temperaturfühler gesucht.


Autor: Michael Kirsten (onkel_michi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit viel Recherche hier im Forum habe ich es nun endlich kapiert, wie 
das AVR NET IO Board denn zum Messen von Temperaturen und vor allem der 
Ausgabe der Temperaturen im Netzwerk bewegt werden kann.

Nun bin ich mutig geworden und habe angefangen mich mit 
Temperaturfühlern zu beschäftigen.

Bei mir im Keller läuft eine Heiungsanlage (Solarunterstützte 
Ölbrennwerttechnik) von Vaillant.

Die Auromatic gibt schon viel aus, allerdings sind einige Werte nicht 
nachvollziehbar.

Ich will nun an den Vorlauf und den Rücklauf der Solarkollektorleitung 
einen Anlegefühler bauen.

Je einen Anlegefühler an den Vor- und Rücklauf des Brennwertkessel und 
zusätzlich die Zonen des Solarspeichers noch mit messen. (An der 
Vorderseite sind 12 Stopfen und 6 Rohre über die Höhe des Speichers 
verteilt. Wenn ich da Anlegefühler dranmache, dann sollte man da die 
Zonentemperaturen doch rauskriegen.)

Nun ist mein Problem aber, das die Vielfalt der Temperaturfühler und die 
Vielfalt der Auswertemöglichkeiten mich ein wenig erschlagen.

Diese 1-Wire Sache sieht super aus, einfach ein geschirmtes 3-Adriges 
Kabel durch den Raum ziehen und die Fühler dranlöten. Allerdings komme 
ich mit der Software für 1-Wire überhaupt nicht klar.

PT-100 könnte ich in der Firma aus der Ausschußkiste (Solche Fühler die 
bei über 150°C aus der Toleranz laufen.) kriegen. Dann muß ich aber 
aufwendige OP Schaltungen bauen und ausserdem Verstärkungsfaktoren 
einsetzen die die EMV Abschirmung nicht mehr so ganz trivial machen. 
(Als Ansatz habe ich die Schaltungen von den MicroSPS Seiten genommen.)

Gibt es nicht einen einfachen Fühler (NTC oder PTC) den man mit 
Panzertape an ein Rohr kleben kann und mit 1 bis 2 mA Konstantstrom dann 
auf Basis des Spannungsabfalles mit einer relativ linearen Kennlinie in 
eine Temperatur im Bereich 20 - 150°C auswerten kann ?

Am besten so, das da bei 1 mA und 150° C 5 Volt rauskommen. (Also bei 
PTC mit 5 kOhm bei 150°C)

Nichts desto trotz werde ich aber weiter in Richtung 1-Wire 
recherchieren.

Michael

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>  relativ linearen Kennlinie ... im Bereich 20 - 150°C auswerten kann ?
Die KTY10...21 fallen mir da sofort ein...
Such den mal hier im Forum.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael Kirsten schrieb:

> Nichts desto trotz werde ich aber weiter in Richtung 1-Wire
> recherchieren.

Mit dem Stichwort "DS1820" solltest du in der Codesammlung fündig 
werden.

Beitrag "DS1820, DS18B20 in C"

Autor: Holger S. (strabe)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,

wenn Du in deiner Vorlaufleitung Temperaturen > 100° mißt, dann würd' 
ich mir Gedanken machen ( von wegen Dampf, Druck, Bersten...) Ich denke 
mit 'nem KTY so wie Lothar vorgeschlagen hat, bist Du gut bedient.
Hält Panzerband eigentlich 150° aus ?

Gruß Strabe

Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Diese 1-Wire Sache sieht super aus, einfach ein geschirmtes 3-Adriges
> Kabel durch den Raum ziehen und die Fühler dranlöten.

Dieses Protokoll ist sowieso schon Murks und fuer Anfaenger gleich 
dreimal. Zum einen weil es in gaengigen Microcontrollern nicht bereits 
eingebaut ist, zum anderen weil es Timinguntergrenzen gibt.
Selbst wenn man das Programm von jemand anderem uebernimmt ist das schon 
nicht ganz unproblematisch weil man sich sein muss das in der eigenen 
Software keine IRQs laufen die das Timing zerstoeren. Oder man 
programmiert es als Statemachine mit einem eigenen Timer im IRQ, sollte 
dem aber dann auch eine hohe Prioritaet geben und man muss erst noch so 
einen Timer in der eigenen Anwendung frei haben.

Diese gangen Mist mit 1-Wire tut man sich nur aus drei Gruenden an.

1. Der Fuehler ist vom Hersteller abgeglichen und 0.25-0.5Grad genau
   bei einer Aufloesung von 0.1Grad, aeltere Typen sogar 0.01Grad.
   Das muss man mit einer selbstgebauten Loesung erstmal schaffen.

2. Die Bauform ist gut geeignet um ihn irgendwo in ein Loch zu stecken.

3. Sehr verbreitet. Es wird den Fuehler wohl aehnlich lange geben wie
   den NE555

Ansonsten hasse ich das Teil aber!

Relativ einfach waere soetwas wie ein KTY81 an einem AD-Eingang. Sehr 
einfach ist auch ein LM335. Da braucht man nur einen Widerstand und kann 
den direkt an den Controller anschliessen.
Sollte die Leitung zum Controller laenger sein waere eigentlich ein 
Fuehler mit Stromausgang guenstiger, leider will mir da gerade keine 
Bezeichnung einfallen.

Olaf

Autor: Michael Kirsten (onkel_michi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Olaf
So stand / stehe ich auch vor diesen Dingern.
Seit ich aber in einer LinuxUser einen Artikel darüber gelesen habe und 
die Vorzüge aus Recherche hier im Forum kenne, werde ich mich damit 
irgendwann mal versuchen.

@Lothar Miller
Danke, die Fühler sehen schon ganz vielversprechend aus. Dann noch eine 
Konstantstromquelle und ab dafür. Das mit dem ADC Eingang am Mega 8 
beginne ich gerade so zu begreifen.

@Holger S
Die 150°C sind im Sommer in der Vorlaufleitung vom Solarkollektor keine 
Seltenheit. Zwar nie über viele Stunden aber doch schon so mal eine 
halbe Stunde, bis die Umwälzung im Solarspeicher "Platz" für mehr 
Energie gemacht hat. Das Solarmedium hat laut Hersteller einen 
Siedepunkt von 197,5° C da ist noch Platz nach oben bei 150° C. Die 
Vorlaufleitung vom Heizkessel hat max. 80° C der Rücklauf weniger. Aber 
ich will die gleichen Fühler überall einsetzen können.

Michael

Autor: nasowas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Olaf

das kannst Du nur ironisch gemeinst haben.. Viele AVRs, z.B. der Mega8 
hat Hardware-TWI an Board. Timing und Interrupts sind bei dem hier 
genannten Vorhaben kaum interessant, ich denke selbst eine Messung pro 
Sekunde wäre da noch viel zu viel (so agil ändert der Kessel ja seine 
Temperatur nicht..)

Kopier Dir halt die Messfunktion in Dein Pogramm, rufe sie auf und 
werwende den Rückgabewert, einfacher geht es nicht. Kalibrieren mußt Du 
auch nicht. Kabellänge ist unkritisch.

Deshalb sind sie ja so verbreitet.. :-)

Autor: Rainer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sprut.de ist immer wieder eine Fundgrube:

http://sprut.de/electronic/temeratur/temp.htm

Rainer

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@nasowas:

...und TWI ist KEIN 1-wire...

Ich hänge gerade in einer ähnlichen Überlegung, 1-Wire wäre nett
wegen der oben genannten Gründe. Es ist aber wegen dem Timing einfach
eklig in ein schon existierendes Programm zu integrieren. Da denke
ich im Moment echt schon drüber nach einen Tiny nur als 1-Wire-nach-
TWI oder UART-Wandler zu spendieren. So kommt man zu intelligenten
Sensoren.

Jens

Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> das kannst Du nur ironisch gemeinst haben.. Viele AVRs, z.B. der Mega8
> hat Hardware-TWI an Board.

Noe, du hast nicht richtig gelesen. Es geht hier um den DS1820. Der
hat 1-Wire Protokoll und kein I2C.

> Timing und Interrupts sind bei dem hier
> genannten Vorhaben kaum interessant, ich denke selbst eine Messung pro
> Sekunde wäre da noch viel zu viel (so agil ändert der Kessel ja seine
> Temperatur nicht..)

Die Timings werden aber interessant wenn du es selber programmieren 
musst. :-)
Gerade fuer Anfaenger weil man bei diesem Protokoll eben nicht mal eben 
alles ganz langsam machen kann, mit dem Debugger zwischen durch was 
kucken usw.

Der Sensor an sich ist gut, ich hab den selber seit >10Jahren in Serie 
laufen und er macht was er soll. (Teilweise in MCS51 Assembler 
Garglvfz!) Aber das Protokoll nervt mich trotzdem.

Allerdings kommt er fuer den OP sowieso nicht in Frage wenn er bis 
150Grad messen will. Da ist wohl ein NTC aus dem Autozubehoerhandel die 
beste wahl. Sicherlich nicht ganz so genau, aber dafuer einfach zu 
bekommen, robust und bereits zum einschrauben gedacht.

Eine andere Moeglichkeit waere vielleicht eine Stromquelle und da einen 
Transistor als Diode nehmen. (Datenblatt REF200)
Das hat den Vorteil das der eigentlich Temperaturfuehler nichts kostet 
und in beliebigen Bauformen verfuegbar ist. Hab ich schon mit einem 
Transistor in SOT23 genutzt als ich einen sehr schnell ansprechenden 
Luftsensor gebraucht habe. Leider ist der REF200 etwas teurer. Das ist 
so ein Teil von dem man immer eine Stange haben sollte, aber sie sich 
nie leisten kann. :-)

Olaf

Autor: Gerd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ich hänge gerade in einer ähnlichen Überlegung, 1-Wire wäre nett
wegen der oben genannten Gründe. Es ist aber wegen dem Timing einfach
eklig in ein schon existierendes Programm zu integrieren

Timing ist nur an wenigen Stellen kritisch, dort stellt man für 1uS (Bit 
lesen/schreiben) die Interrupts ab. Der Overhead ist eklig, sonst 
spricht nichts dagegen.

Autor: Gerd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> sonst spricht nichts dagegen

Ausser die 150 Grad. Wird knapp für Silizium, würde Pt1000 nehmen, gibt 
es als Anlegesensor für Rohre. Braucht dann natürlich noch eine kleine 
Schaltung (oder sehr niedrige Auflösung direkt ratiometrisch am AVR).

Autor: aquick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier ist ein entsprechender Umsetzer beschrieben.

Beitrag "ds1820 mit tiny85 auslesen und T mit softuartTXD ausgeben"

Autor: Andreas Ferber (aferber)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jens schrieb:
> Da denke
> ich im Moment echt schon drüber nach einen Tiny nur als 1-Wire-nach-
> TWI oder UART-Wandler zu spendieren.

Warum dann nicht gleich eine fertige I2C-to-1-Wire-Bridge benutzen? Gibt 
es fertig als DS2482-100, z.B. bei Reichelt für 1,75EUR.

http://www.reichelt.de/?;ACTION=3;LA=444;GROUP=A31...

Andreas

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@olaf
Wenn Du Probleme mit dem Timing hast, nimm einen DS2482. Der wird selber 
mittels I2C angesprochen und beherrscht das 1-Wire-Timing von Natur aus.

Autor: Olof Gutowski (ole)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

ich verstehe nicht, wieso sich immer alle mit dem Timing von den 1-wire 
Devices rumschlagen. Es gibt doch einen UART to 1-wire IC. (DS2480b)
http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2923/t/al
Den nutze ich mehrfach bei Anwendungen in Verbindung mit owfs unter 
Linux.
Habe da noch nie was mit nem µC gemacht, aber im Grunde muss man ja nur 
ein paar Bytes aus dem UART schieben und auf die Antwort warten.

Als weiteren Vorteile sehe ich dir größeren möglichen Leitungslängen. 
Mit der  BitBang Methode war bei 5m schluß, mit dem DS2480b habe ich 
jetzt mehr als 30m im Sternaufbau seit über einem Jahr sicher am laufen.

Gruß,

Olof

Autor: Michael Kirsten (onkel_michi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das artet hier ja in eine Art "1 - Wire Krieg" aus ...

Den Artikel in der LinuxUser habe ich heute mal aus meinem Stapel 
herausgesucht. Die Sache hat was ...

Ich habe auch mal die Datenblätter von den Originalfühlern (Soweit mir 
der Mitarbeiter von Vaillant an der Servicehotline da Daten verraten 
wollte) mit meiner Idee abgeglichen.

Es gibt in der ganzen Anlage nur 2 Fühler (Der direkt am Kollektor und 
der in der Vorlaufleitung am Speicher) die mehr als 150° C aushalten 
müssen. Da werde ich definitiv nicht um NTC / PTC oder PT-100 
herumkommen.

Für die anderen Fühler muß ich doch tatsächlich mal Ausschau nach so 
einem Interface für den PC halten. Die DS1820 sind da tatsächlich wohl 
das Mittel der Wahl, wenn ich bedenke was für ein Aufwand doch eine 
Verlegung von Kabeln für die NTC / PTC wäre um da EMV - Frei messen zu 
können.

Danke an  Karl heinz Buchegger die Links und die Links in den Links sind 
und waren ein guter Hinweis.

Also werde ich mir 2 PT-100 besorgen für die "Hochtemperaturanwendungen" 
und den Rest in 1-Wire ausprobieren.

Kann ein wenig dauern, bis ich mich wieder melde, weil das doch ein 
ziemlich umfangreiches Thema ist, in das ich mich da einlesen will.

Michael

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.