INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Temperatursensor ST1147 "misst" falschherum
22.11.2020, 22:17
Beitrag #9
RE: Temperatursensor ST1147 "misst" falschherum
(22.11.2020 11:19)SpaghettiCode schrieb:  @ Bitklopfer,

Du hast schon Recht mit dem DS18B20, auch ich habe mir erst wieder welche bestellt, weil es so schön einfach ist.
Wenn man es noch genauer haben will, dann nimmt man einen NTC Wink
Mit der Steinhart-Hart-Gleichung und einem ordentlichen Aufbau und Abgleich kann man den angegebenen Fehler von 0,5K beim DS18B20
getrost noch eine Stelle nach hinten schieben. Da aber Otto-Normalverbraucher nicht das Equipment zum kalibrieren hat, ist da der DS18B20
eher angebracht, wobei man ohne kalibrieren ganz leicht auf die Werte des DS18B20 kommt, wenn man ein Datenblatt zum NTC hat.
....

Ich muß zugeben das ich nicht gerade der Freak für Werte in den Datenblättern der NTC's sind zumal in diesem Fall des ST1147 Moduls von dem verwendeten MF52-3950 nicht mal die Herstellertoleranz angegeben ist die sich bei 1, 2 oder 5% bewegt...wobei ich kaum annehmen das bei diesen Preiswertmodulen die 1% Version verbaut wird. Da in dem Fall der NTC nur in einem Spannungsteiler arbeitet der dann z.B. im meisten interessierenden Temperaturbereich von -20 bis +40 Grad operiert begrenzen sich auch die Bits des ADC auf diesen Bereich wo dann wohl 2/3 der ADC Werte gar nicht genutzt werden...ergo erstreckt sich wenn überhaupt der genutzte Bereich vom ADC auf rund 300 Digits. Meine grob angenommenen 60 Grad ergeben dann eine Auflösung von 0,2°/Digit. Das schlägt der DS18B20 um Längen.
Und ohne Abgleich geht da dann beim Absolutwert auch nichts weil auch die Toleranz vom Pullup Widerstand auch noch mitspielt. Zudem hat man nur einen Dreileitermessanschluß wo dann über die GND Leitung auch noch der sich Temperaturabhängige Sensorstrom fließt.
Wenn ich wirklich genau eine Temperatur messen will dann greife ich zum PT100 oder dem PT1000 wenn ich den Einfluss der Leitungslängen minimieren will und das dann im Vierleiter Anschluss an die Messelektronik. Hinzu kommt noch das auf den Arduino Boards es bei den CPU's keinen getrennten Analog GND Pin gibt was die Sache weiterhin ungenau macht. Wenn man das alles zusammen betrachtet sind die 0,5° Genauigkeit des DS18B20 mit einfachen Mitteln nicht zu toppen.
Und ja...die Linearisierung eines NTC birgt weitere Abweichungen... denke mal ich kenne mich da ein bischen aus weil ich das Thema auch schon Beruflich gestreift habe...
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.11.2020, 12:21 (Dieser Beitrag wurde zuletzt bearbeitet: 23.11.2020 12:23 von DerMaschbaustudent.)
Beitrag #10
RE: Temperatursensor ST1147 "misst" falschherum
[quote='nbk83' pid='77693' dateline='1605994300']
Moin Maxi,

Ich glaube nicht, dass der Sensor "falscherum" misst, sondern irgendwo ein Fehler in der Umrechnung ist. Denn wenn Du den Sensor erwärmst und die Anzeige von -24 bis -17 geht, ist das ja eine Temperaturerhöhung. (Wenn dein Nick ansatzweise etwas mit Deiner Tätigkeit zu tun hat, würde ich mir entweder Gedanken um Deine Berufswahl oder Vorzeichen machen Wink).
Mir ist aufgefallen, dass sich irgendein Textfragment in die Celsius-Kelvin-Umrechnung geschlichen hat. Vielleicht liegt ja da der Hund begraben.
[quote='DerMaschbaustudent' pid='77671' dateline='1605966776']
...
Temp= Temp - 273.1
Code:
5; // Umwandlung in Celsius
...
[/quote]


Hey Jan, natürlich sind -17 °C wärmer als -25°C, aber es wäre dann immer noch verdammt kalt in meinem Zimmer ;)

Das Tauschen der Spannungsversorgung führt bei mir zu einer Raumtemperatur von cirka 90°C, beim Erwärmen der Sensoreinheit fällt der Wert weiterhin. (auf cirka 81°C)

Das Tricksen mit dem Vorzeichen in den system.print funktioniert ja leider nur, wenn der Temperaturwert absolut stationär bleibt. Die Änderung des Wertes ins Kleine trotz einer Erhöhung der Temperatur bleibtja trotzdem bestehen.

Mit freundlichen Grüßen,

Maxi

Edit: Das [code] in dem Programmiercode in der Arudino IDE kam durch eine Falschsetzung des [code] und
in dem Forum.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.11.2020, 12:58
Beitrag #11
RE: Temperatursensor ST1147 "misst" falschherum
Gib mal als absoluten Nullpunkt -223,15 anstelle von -273,15 ein (in Deinem ersten Sketch) dann Verstehst Du, was ich meinte, als ich sagte, dass das Vorzeichen nicht das Problem ist. Du wirst dann Werte bekommen, die eher der Realität entsprechen, aber das ist dann richtig gepfuscht...
Gruß Jan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.11.2020, 18:44
Beitrag #12
RE: Temperatursensor ST1147 "misst" falschherum
(23.11.2020 12:58)nbk83 schrieb:  Gib mal als absoluten Nullpunkt -223,15 anstelle von -273,15 ein (in Deinem ersten Sketch) dann Verstehst Du, was ich meinte, als ich sagte, dass das Vorzeichen nicht das Problem ist. Du wirst dann Werte bekommen, die eher der Realität entsprechen, aber das ist dann richtig gepfuscht...
Gruß Jan

Hallo Jan,
ich glaube mal das du mit diesem Tipp gar nicht so falsch liegst weil:
ich vermisse in der Formel die Berücksichtigung des 0° oder den 25° Wertes des ADC auf den dann der Koeffizient des NTC Widerstandswertes hinzugerechnet wird bzw. den 25° Wert des NTC finde ich in der Rechenformel auch nicht wieder. Und beide Werte sollten in der Berechnung auftauchen.
Ich bin jetzt nicht der Mathematiker der nun die Formel überprüfen kann...ich bin Praktiker und gehe bei solchen Berechnungen anderster vor. Zudem weiß ich jetzt nicht ob diese math.lib auch so viele Nachkommastellen verarbeiten kann.
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.11.2020, 19:31
Beitrag #13
RE: Temperatursensor ST1147 "misst" falschherum
Moin BK,
den Referenzwert (25°C) hat er (etwas versteckt) drin, das ist die 10000 (also 10k) in folgender Zeile: Temp = log((10240000/RawADC) - 10000);
@TO: kannst Du bei der Ausgabe der Temperatur mal den RawADC mit ausgeben?
Wenn Du die beiden Werte nebeneinander stehen hast, kannst Du ja mal von Hand gegen rechnen.
Gruß Jan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.11.2020, 20:45 (Dieser Beitrag wurde zuletzt bearbeitet: 23.11.2020 20:55 von DerMaschbaustudent.)
Beitrag #14
RE: Temperatursensor ST1147 "misst" falschherum
(23.11.2020 19:31)nbk83 schrieb:  Moin BK,
den Referenzwert (25°C) hat er (etwas versteckt) drin, das ist die 10000 (also 10k) in folgender Zeile: Temp = log((10240000/RawADC) - 10000);
@TO: kannst Du bei der Ausgabe der Temperatur mal den RawADC mit ausgeben?
Wenn Du die beiden Werte nebeneinander stehen hast, kannst Du ja mal von Hand gegen rechnen.
Gruß Jan

Ich habe grade den Wiederstandswert mit auslesen lassen und komme auf das Ergebnis:

Code:
20:43:40.036 -> 12106        |247.66 K     |-25.49 °C    |745.80 Ohm
20:43:40.997 -> 13108        |247.91 K     |-25.24 °C    |757.10 Ohm
20:43:41.997 -> 14110        |247.66 K     |-25.49 °C    |745.80 Ohm
20:43:43.037 -> 15113        |247.66 K     |-25.49 °C    |745.80 Ohm
20:43:44.037 -> 16114        |247.66 K     |-25.49 °C    |745.80 Ohm
20:43:45.038 -> 17117        |247.66 K     |-25.49 °C    |745.80 Ohm
20:43:46.038 -> 18118        |247.66 K     |-25.49 °C    |745.80 Ohm
20:43:47.040 -> 19121        |250.26 K     |-22.89 °C    |871.41 Ohm
20:43:48.001 -> 20123        |259.04 K     |-14.11 °C    |1442.95 Ohm
20:43:49.013 -> 21125        |262.76 K     |-10.39 °C    |1772.15 Ohm
20:43:50.013 -> 22127        |263.86 K     |-9.29 °C    |1881.53 Ohm
20:43:51.015 -> 23130        |264.66 K     |-8.49 °C    |1964.91 Ohm
20:43:52.017 -> 24131        |265.71 K     |-7.44 °C    |2077.92 Ohm
20:43:53.017 -> 25134        |266.47 K     |-6.68 °C    |2164.09 Ohm
20:43:54.019 -> 26136        |267.09 K     |-6.06 °C    |2236.84 Ohm
20:43:55.020 -> 27138        |267.33 K     |-5.82 °C    |2266.19 Ohm
20:43:56.022 -> 28140        |255.30 K     |-17.85 °C    |1168.12 Ohm
20:43:57.023 -> 29143        |254.93 K     |-18.22 °C    |1143.79 Ohm
20:43:58.027 -> 30144        |254.56 K     |-18.59 °C    |1119.57 Ohm
20:43:59.029 -> 31147        |253.80 K     |-19.35 °C    |1071.43 Ohm
20:44:00.029 -> 32149        |253.41 K     |-19.74 °C    |1047.52 Ohm

Die machen mal leider gar keinen Sinn. An zwei Beispielen sieht man das ganz gut:
1119,57 Ohm entsprechen eigentlich 346,4 K
2266,19 Ohm entsprechen eigentlich 335,8 K


Mit freundlichen Grüßen,

Maxi
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.11.2020, 21:02 (Dieser Beitrag wurde zuletzt bearbeitet: 23.11.2020 21:12 von nbk83.)
Beitrag #15
RE: Temperatursensor ST1147 "misst" falschherum
Moin Maxi,
mich würde mal der direkte Wert von RawADC (also analogRead(3)) interessieren. Der sollte bei 25° C 512 betragen, wenn dein Modul aus einem Spannungsteiler mit einem 10kOhm Widerstand und einem NTC mit 10kOhm bei 25° besteht. Auf diesen Annahmen basiert zumindest deine Rechnung.
Hast Du mal einen Link, wo du den NTC herhast?
Gruß Jan
p.s.: das mit den Widerstandswerten kann ja schon irgendwie nciht passen, da du ja einen NTC und keinen PTC hast
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.11.2020, 21:35
Beitrag #16
RE: Temperatursensor ST1147 "misst" falschherum
(23.11.2020 21:02)nbk83 schrieb:  Moin Maxi,
mich würde mal der direkte Wert von RawADC (also analogRead(3)) interessieren. Der sollte bei 25° C 512 betragen, wenn dein Modul aus einem Spannungsteiler mit einem 10kOhm Widerstand und einem NTC mit 10kOhm bei 25° besteht. Auf diesen Annahmen basiert zumindest deine Rechnung.
Hast Du mal einen Link, wo du den NTC herhast?
Gruß Jan
p.s.: das mit den Widerstandswerten kann ja schon irgendwie nciht passen, da du ja einen NTC und keinen PTC hast

Es handelt sich dabei um den MF52-3950. mit einem Nominalwiderstandswert von 10kOhm bei 25°C.


Angehängte Datei(en)
.pdf  MF52type.pdf (Größe: 218,24 KB / Downloads: 8)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Temperatursensor DS18B20 direkt auslesen Igom 9 1.489 26.03.2020 19:21
Letzter Beitrag: hotsystems
  Wie misst man korrekt mit dem Arduino ADC? janoslon421 10 2.548 21.12.2018 11:20
Letzter Beitrag: Bitklopfer
  Temperatursensor Obermuda 5 3.549 11.01.2017 11:37
Letzter Beitrag: Obermuda
  Digitaler und analoger Temperatursensor unterschiedlich Pit 3 3.068 16.01.2016 19:05
Letzter Beitrag: Pit
Question Arduino Temperatursensor in exel datei loggen Tom 2 4.313 12.07.2015 10:30
Letzter Beitrag: rkuehle
  Temperatursensor Programmierung Anton11 6 5.254 29.05.2015 09:55
Letzter Beitrag: fraju
  Temperatursensor SHT75 um 3 Grad ungenau Cray-1 4 3.555 26.01.2015 14:45
Letzter Beitrag: RMR
  KTY Temperatursensor mit einem I2C Display auslesen. Einsteiger94 2 2.890 27.10.2014 21:09
Letzter Beitrag: Bitklopfer
  433 MHz Temperatursensor mit einem Arduino Uno auslesen Freddy 1 13.132 16.12.2013 00:10
Letzter Beitrag: rkuehle

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste