www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Temperatursensoren


Autor: Robert Schillling (robert_s)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo an alle

Für mein Projekt (eine Messstation für E-Motoren) brauch ich mindestens
3 Temperatursensoren.

Die kleinste Messrate hab ich mit 0,5sec. In dieser Zeit muss ich 3
Tempsensoren abfragen, Strom und Spannung digitalisieren und die
Drehzahl messen. Also einiges an Arbeit. Als Prozessor verwende ich
einen Mega128 (mit 16MHz getatktet)

Welche Temperatursensoren kann ich da am besten nehmen?? (Sie müssen
relativ schnell sein).

Ich hab da die DS18B20 gefunden. Die laufen am One Wire Bus. Brauchen
die lange??

Welche kann ich sonst noch nehmen??

Danke im Voraus

Gruß Robert

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja die DS brauchen lange, ca 0,75sec dauert die Messung.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Also einiges an Arbeit. Als Prozessor verwende ich einen Mega128 (mit
16MHz getatktet)"


Ja, der Mega128 ist hoffnungslos überdimensioniert, die CPU-Last wird
unter 1% betragen, die Flash-Belegung unter 3% (~4kB).

Ein Mega8 reicht dicke.

Wie lange die DS18B20 zur Wandlung brauchen, hängt von der Auflösung
ab, 0,5° dauert 94ms.



Peter

Autor: ??? (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit nem Mega128 kann man prima KTY8irgendwas digitalisieren. Da kann man
die Geschwindigkeit also selber bestimmen.

Autor: arc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schnell?
Wenn die Ansprechzeit gemeint ist (Reaktionszeit auf
Temperaturänderungen) sind eigentlich nur Thermoelemente bzw. einfacher
Thermodraht empfehlenswert. Alles andere (insbesondere integrierte
Sensoren) liegt etliche Größenordnungen darüber (z.B. T90 im
Ölbad/Wasserbad beim TMP35 >60s, PT100 bis herunter auf 0.1s,
Thermoelemente bis in den ms und us-Bereich)

Autor: Hauke Radtki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nen geschwindigkeitsvorteil hast du bei analogen sensoren natürlich!
(KTY84-130 z.b.) Die genauigkeit hängt von der hardware ab (aber auch
von der software) dazu musst du die analogen sensoren kalibirieren um
da was vernünftiges raus zu bekommen. Die digitalen sind halt langsamer
(DS1820 braucht ca 0,5s) Aber vom aufwand wesendlich einfacher (kein
abgleich ... kein stress mit leiterbahn führung, kein stress mit langen
kabeln)
Ist halt die frage ob die DS1820 dinger für dich reichen von der
geschwindigkeit.

Autor: arc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die 0.5s des KTY beziehen sich auf die T63-Zeit nicht auf die T90
und die 0.5s beim DS18x20 ist die Zeit, die der Sensor zum Wandeln
benötigt (die Ansprechzeit dürfte in der gleichen Größenordnung liegen
wie ein TMP3x im gleichen Gehäuse)

Autor: Robert Schillling (robert_s)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo an alle

Danke für dei Antworten.

Ich denke nicht, das de Mega128 unterfordert ist. Weiters kommt noch
die  Ansteuerung einer SD Karte mit FAT16 Dateisystem dazu. Und da
brauch SRAM.

Mit schnelle ist gemeint, wie schnell die Wandlung dauert.

Wie lange würde denn eine Wandlung auf eine Auflösung von 0,1° dauern??
(Bzw was für eine Auflösung ist das eihentlich 10Bit).

Eigentlich mag ich die Digitalen Sensoren lieber... ;) Bei einem
Analogen ála PT1000 brauch dann noch analoge Elektronik drumrum. Wie
Messverstärker,...

Gruß Robert

Autor: Jörg S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Siehe Datenblatt DS18B20:

9-bit resolution 93.75 ms (0,5°)
10-bit resolution 187.5 ms (0,25°)
11-bit resolution 375 ms (0,125°)
12-bit resolution 750 ms (0,0625°)

Autor: F.H. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab das mit nem LM35 gemacht 10mV/°C 3 Kanal AD Wandler mit
serieller Schnittstelle

http://www.ees-hartz.de/P64_HLP/page11.html

Autor: Robert Schillling (robert_s)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo an alle

Ich denke ich werde es ähnlich mahcen. Aber mit einem PT100/1000
Thermosensor. Was empfiehlt sich mehr???

Ich werde dann das ganze mit dem 10 Bit AD Wandler des Mega128
digitalisieren, den Offset berechenen...

Leider sind die PT100/1000er Thermosensorelemente nicht so billig :(
Die  billigsten die ich gefunden habe, kosten 6,5€d as Stück :(

So ein LM35 st sicher billliger, hat aber nicht so eine genaue
Linearität, oder?

Dank eim Voraus

Gruß Robert

Autor: Andreas Haimberger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"So ein LM35 st sicher billliger, hat aber nicht so eine genaue
Linearität, oder?"

Du schmeisst da Genauigkeit und Linearität in einen Topf.

Ein LM35 hat eine sehr gute Linearität, aber eine schlechte
Absolutgenauigkeit und eine schlechte zeitliche Konstanz (Alterung).
Ein Pt100 hat eine sehr unlineare Kennlinie, ist aber mit sehr geringer
Toleranz erhältlich (je nach dem, was man für den Sensor ausgeben will)
und hat eine sehr gute Langzeitkonstanz. Das eine hat mit dem anderen
nicht viel zu tun.

Für genaue Messungen in einem größeren Temperaturbereich muß die
Kennlinie des Pt100 linearisiert werden, entweder analog schon im
Meßverstärker oder digital per Software nach der A/D-Wandlung. Tabellen
mit den Werten diverser Temperatursensoren findest du z.B. hier:
http://www.pyromation.com/downloads/tables.asp

Wenn du die Kennlinie eines Pt100 auf Millimeterpapier aufträgst, wirst
du sehen, dass diese Kurve alles andere als linear ist. Man kann sich
aber darauf verlassen, dass die tatsächlichen Werte nur sehr wenig von
dieser Kurve abweichen oder im Lauf der Zeit wegdriften, beim LM35 ist
das genau umgekehrt.

Für Präzisionsmessungen (Auflösung im Zehntelgrad-Bereich oder genauer,
bis maximal 400 °C) werden normalerweise nur Pt100 oder Pt1000
eingesetzt, alle anderen Sensoren sind wesentlich ungenauer. Zweite
Wahl sind dann schon Thermoelemente, dann kommen erst die diversen
integrierten Low-Cost-Halbleitersensoren, dann PTC und NTC. Für den
Temperaturbereich ab 400 °C sind sowieso nur mehr Thermoelemente
einsetzbar, wenn man von sündteuren Pyrometern (Infrarotmessgeräten)
absieht.

Die maximal erzielbare Abtastrate hängt wieder (hauptsächlich) von der
Masse des Sensors ab, man kann keine schnell wechselnden Temperaturen
messen, wenn der Sensor auf Grund seiner Trägheit schon mehrere
Sekunden braucht, um die Temperaturänderungen anzuzeigen.

Man muss also abwägen, was im Einzelfall wichtiger ist, Genauigkeit
oder Schnelligkeit. Ein Pt100 ist schlecht für sehr schnelle Messungen
geeignet, weil meistens zu groß und zu träge, ist aber mit wesentlich
größeren Genauigkeiten als andere Sensoren realisierbar.

Gruß, Andy

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Mit schnelle ist gemeint, wie schnell die Wandlung dauert."

Wozu brauchst Du denn eine schnelle Meßzeit ?

Bei E-Motoren sollte doch selbst in 10s kein nennenswerte
Temperaturänderung auftreten.

Oder sind das besonders kleine E-Motoren ?


Mit dem internen 10Bit-ADC brauchst Du aber ne Menge Analogzeugs und
Abgleichpotis, um auf 0,1° zu kommen. Eine Kennlinienkorrektur in
Software kannst Du jedenfalls vergessen.

Wenn Dir die max 125°C des DS18B20 reichen, warum nicht den nehmen ?


Peter

Autor: Robert Schillling (robert_s)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich vermesse Motoren von 8 - 800g. Sind also nicht sehr groß
(Modellbau). Da ändern sich die Temperaturen sehr schnell.

125° reichen auf jeden Fall. JEdoch hab ich ihn bis jetzt nicht
genommen, da eine Messung relativ lange dauert. (ICh bin mit der Zeit
sehr knapp). Bei 0,5sec muss ich 2 x 16 Bit AD-wandeln, die Drehzahl
messen und die Temperatursensoren abfragen.

Zum internen Ad Wandler brauch sicher eine Spule zum filtern. Was den
sonst noch. Eventuell auch einen Eigene Spannungsreferenz. Ich hab am
board derzeit e h schon eine mit 2,5V für den 16Bit Ad Wandler.

Gruß Robert

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Bei 0,5sec muss ich 2 x 16 Bit AD-wandeln, die Drehzahl
messen und die Temperatursensoren abfragen."

Wenn Du denkst, während der DS18B20 wandelt, muß die CPU Däumchen
drehen, dann bist Du im Irrtum.

Der DS18B20 braucht 0,375s für 0,125°, d.h. Du bist sogar noch 0,125s
zu schnell für Deine 0,5s.

Die CPU muß nur die 3 Messungen auslesen und die nächste Messung
starten, das dauert etwa 0,05s CPU-Zeit.

Nun verstanden ?


Peter

Autor: Robert Schillling (robert_s)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Peter

Danke für die Erklärung. Das klingt super :)

Ich dachte eine die Ausleseroutine dauert 0,75sec.

Dann werd ich die nehemen :)

Gruß Robert

Autor: D. W. (dave) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kommt drauf an, wie du die Routine schreibst...

Wenn du alle Befehle 3x ausführst, dann dauert sie natürlich länger.

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.