Hallo, ich habe festgestellt das die DS18B20 Sensoren Teils einige Minuten benötigen bis Sie genaue Werte anzeigen. Ca erst nach 1 Minute kann ich mich dann auf deren werte verlassen... Weiß jetzt nicht ob dies mit der Anzahl der Abfragen/Minute zu tun hat oder wie ich das in meinem Programm berücksichtigen muss. Wie macht man dies am besten? Ich möchte ja nicht dass wenn ich alle 10 Minuten die Sensoren abfrage diese erstmal 1 Minute lang in einer Programmschleife warmlaufen lassen muss Grüße Jürgen
Die Sensoren zeigen sofort exakte Werte. "Warmlaufen" kommt durch Eigenerwärmung bei zu häufiger Abfrage oder Wärmezufuhr aus der Schaltung über die Anschlussdrähte.
Jürgen schrieb: > bis Sie genaue Werte anzeigen. Mit genaue Werte meine ich Die Sensoren sind bei einer Temp ~ 30 C° um ca. +/- 0,5 C° im meines Referenzwertes eines TESTO 905-T1 Messgerätes. Beim Neustart des Programms und beim ersten Auslesen weichen die DS18B20 Sensoren bis zu 3 Grad voneinander ab. Lasse ich die Sensorenabfrage in einer Schleife mit 3 Sekunden Wartezeit laufen, so pendeln sie sich nach ca 1 Minute ein und zeigen fast alle die gleichen Werte. Die DS18B20 weichen dann im Differenzbereich von ca 0,2 - 0,6 C° voneinander ab und sind auch im bereich von +/- 0,5 C° zum TESTO 905-T1 Messgerätes. Das ist natürlich kein 100% genaues Gerät das TESTO aber doch so genau, dass ich mit den Werten gut leben kann Anscheinend brauchen die DS18B20 Sensoren etwas Aufwärmzeit. Hatte vor einiger Zeit mal eine test darüber gelesen dort war es ähnlich. Mich würde mal interessieren wie man das am besten programmiertechnisch machen sollte
Jürgen schrieb: > ich habe festgestellt das die DS18B20 Sensoren Teils einige Minuten > benötigen bis Sie genaue Werte anzeigen. Das kann ich bestaetigen.Liegt aber unter anderem hauptsaechlich daran wie der IC verpackt ist. Hab mir auf Ebay vor einiger Zeit so ein Temperaturmessgeraet DST1000 besorgt um meine Zimmertemperatur genau zu erfassen.Das funktioniert soweit auch ganz gut aber fuer schnelle Messungen ist das ganze etwas zu traege:Um z.B. die eigene Koerpertemperatur zu messen benoetigt man schon so 1-3 Minuten.... Benutzte Sonde https://www.ebay.de/itm/1-2-5-10-PCS-Waterproof-Digital-Thermal-Probe-or-Sensor-DS18B20-Length-1M/311947905932?hash=item48a18b4b8c:m:mZGL7NIZoNatddmOty30mEQ DST100 https://www.ebay.de/itm/DST1000-DC12-72V-AC110-220V-Temperature-Controller-Thermostat-and-DS18B20-Probe/401674631125?hash=item5d85ac77d5:m:mWOyTn1V-Kb_E8yg7yovUJA
Jürgen schrieb: > Anscheinend brauchen die DS18B20 Sensoren etwas Aufwärmzeit. > Hatte vor einiger Zeit mal eine test darüber gelesen dort war es > ähnlich. > > Mich würde mal interessieren wie man das am besten programmiertechnisch > machen sollte Die erste Messzeit speichern und später mit weiteren Messzeiten vergleichen? Der Vergleich kann ja dann entfallen wenn die erste Zeit abgelaufen ist. Ausserdem sollte man nicht zu oft hintereinander messen um Eigenerwärmung von DS zu vermeiden.
Abfragen alle 3s führen bereits zu einer geringen Eigenerwärmung. Das die Messwerte erst nach einigen Messungen genau sind kann ich nicht bestätigen.
Einhart P. schrieb: > Die Sensoren zeigen sofort exakte Werte. Also ich hatte eine Bericht gelesen da war es ähnlich das die Sensoren nach X-sekunden genauere Werte zeigten... mir ist leider der Link abhanden gekommen. Damals wurden BME280, DS18B20, DHT22 und SHT Sensoren getestet Wenn Du aber auch mehrere Sensoren an einen Bus hast und sofort genaue werte gezeigt werden dann muss bei mir was nicht stimmen. Ich habe alle Sensoren Sternförmig geschaltet (ja ich weiss das ist nicht die idealste Verkabelung. ich verwende ein 2x2x0,8 geschirmtes Kabel Die Strecken der Sternschaltung schwanken zw. 1,5 und 3,5 Meter. Insgesamt sind ~ 20 Meter verbaut. Es hängen insgesamt 11 Sensoren an dem Bus Bis zum 9 Sensor reichte der Pull-Up mit 4,7K ab dem 10. Sensor musste ich einen weiteren 4,7K Pull-Up parallel schalten mmmhh?
Toxic schrieb: > Um z.B. die eigene Koerpertemperatur zu messen benoetigt Achtung: Nicht das ich es falsch erklärte. Die Sensoren lagen bei diesem Test schon Stunden im Raum. Deren Hülle hat sich also schon an die Umgebungstemp angepasst. Bei einer Körpermessung dauert das ja bis sich die Hülle des Sensors an die Umgebung angepasst hat. Das würde mir sofort einleuchten das ich hier etwas mehr warten muss Es geht hier in meiner Frage also rein um den Sensor der schon lange Zeit hatte sich die zu messende Umgebung in seinem Baukörper anzugleichen.
Einhart P. schrieb: > Das > die Messwerte erst nach einigen Messungen genau sind kann ich nicht > bestätigen. Wieviele sensoren hast Du an einem Bus und wie lange sind da die einzelnen Strecken? Vielleicht liegt es bei mir ja doch an der Verkabelung
Einhart P. schrieb: > Das > die Messwerte erst nach einigen Messungen genau sind kann ich nicht > bestätigen. ich weiss das die Eigenerwärmung meiner NETIO Platine auf den Sensor durchkommt, Sensor auf NETIO Platine ist immer etwas wärmer als der abgesetzte Sensor.
Jürgen schrieb: > ich habe festgestellt das die DS18B20 Sensoren Teils einige Minuten > benötigen bis Sie genaue Werte anzeigen. Nö. > Ca erst nach 1 Minute kann ich mich dann auf deren werte verlassen... Die stärkste Wärmekopplung erfolgt über die Anschlüsse auf den IC. Das Kunststoffgehäuse wirkt eher wie eine Wärmeisolation. Also solltem man die Anschlüsse an eine möglichst große Kupferfläche anschließen, damit Temperaturänderungen schnell auf den IC wirken könnnen. Dann reagiert der IC in ein paar Sekunden und ist vielleicht in 10s-20s auf den Endwert eingeschwungen. > Weiß jetzt nicht ob dies mit der Anzahl der Abfragen/Minute zu tun hat > oder wie ich das in meinem Programm berücksichtigen muss. Man sollte die Sensoren nicht zu oft abfragen, denn die Aktivität des ICs erzeugt Wärme auf dem IC. Nicht viel, aber genug um das Ergebnis um 1-2°C zu verfälschen, denn während der Messung zieht der IC ca. 1,5mA * 5V = 7,5mW für ca. 750ms. Wenn man mal von geschätzen 300K/W Wärmewiderstand des TO92 Gehäuses ausgeht, macht das grob
1 | 7,5mW * 0,75s * 300K/W = 1,7K |
wenn man den IC mit 1 Hz ausliest. Ganz schön viel. Irgendeine Application Note empfiehlt wohl 10s und mehr als Pause zwischen den Abfragen. > Ich möchte ja nicht dass wenn ich alle 10 Minuten die Sensoren abfrage > diese erstmal 1 Minute lang in einer Programmschleife warmlaufen lassen > muss Muss man nicht.
Falk B. schrieb: > Ganz sicher nicht. Wie ist dies dann zu erklären? Das mit der Eigenerwärmuung durch häufiges Abfragen versuchte ich durch größere Wartezeiten auch zu testen. Kann es an der Verkabelung liegen? Das meine Kabellängen in der Sternschaltung nicht alle gleich sind?
Jürgen schrieb: > Falk B. schrieb: >> Ganz sicher nicht. > > Wie ist dies dann zu erklären? Gute Frage ;-) > Das mit der Eigenerwärmuung durch häufiges Abfragen versuchte ich durch > größere Wartezeiten auch zu testen. Mach mal. > Kann es an der Verkabelung liegen? Sehr unwahrscheinlich. Eher an verschiedenen thermischen Kopplungen. Ein Sensor hat eine gute Kopplung über die Anschlüsse und große Metallflächen, der andere nicht. > Das meine Kabellängen in der Sternschaltung nicht alle gleich sind? Das ist vollkommen egal. Aber um Übertragungsfehler auszuschließen, sollte man auf jeden Fall eine CRC-Prüfung der Empfangsdaten vornehmen. "Beim Neustart des Programms und beim ersten Auslesen weichen die DS18B20 Sensoren bis zu 3 Grad voneinander ab." Was ist das für ein Programm? Sind da irgendwelche "schlauen" Filter drin, die vielleicht nicht korrekt initialisiert sind und dadurch den "Meßwert" verfälschen? Wie werden deine Sensoren mit Strom versorg? Normal mit 3 Leitungen oder parasitär? Wie lang sind deine Leitungen? Wir hatten hier schon einen Fall, wo an einer recht langen Leitung mit unklarer Leitungsführung und Störeinkopplung erst dann saubere Meßwerte empfangbar waren, nachdem ein 100nF Kondensator nah am IC platziert wurde. Wenn man mehrer Sensoren mit identischem Aufbau für vielleicht 30min temperieren läßt, müssen die beim 1. Auslesen schon alle nahezu die gleichen Werte anzeigen.
probleme mit der Verkabelung führen vielleicht zu einzelnen komplett falschen Werten aber niemals zu geringen systematischen Abweichungen.
Falk B. schrieb: > Wie lang sind deine Leitungen? Wir hatten hier schon einen Fall, wo an > einer recht langen Leitung mit unklarer Leitungsführung und > Störeinkopplung erst dann saubere Meßwerte empfangbar waren, nachdem ein > 100nF Kondensator nah am IC platziert wurde. Das kann ich bestätigen, das ist sehr wichtig. Ich halte eine Wartezeit zwischen Messungen von mind. 20 Sek. ein.
Falk B. schrieb: > Wie werden deine Sensoren mit Strom versorg? Normal mit 3 Leitungen oder > parasitär? > > Wie lang sind deine Leitungen? Wir hatten hier schon einen Fall, wo an > einer recht langen Leitung mit unklarer Leitungsführung und > Störeinkopplung erst dann saubere Meßwerte empfangbar waren, nachdem ein > 100nF Kondensator nah am IC platziert wurde. Ok... habe nun nochmal alles neu verbunden (die Kabelenden) die Sensoren hängen alle auf gleicher Höhe, sind also keine Temp-Unterschiede jetzt ist die Abweichung bei ~ 0,8 C°... das wäre NOCH im Rahmen für meine Anforderung Vielleicht wird es noch besser wenn die Enden dann sauber verlötet sind. Ein Propblem an der Verkabelung habe ich noch Die wasserdichten Sensoren haben alle das Billig-Kabel dran was nicht geschirmt ist... hoffe das dies keine Probleme macht Ist es hier besser sich wasserdichte Sensoren selbst zu bauen... mit geschirmten Kabel und in Epoxy eintauchen? anbei mal ein Bild was u.U nicht viel aussagt Ich habe sie nicht parasitär angeschlossen sondern über 3 Adern auch direkt mit Spannung versorgt Da es ab dem 9. Sensor zu Problemen kam, habe ich nun einen zweiten 4.7K Widerstand parallel geschaltet um den Pull-up zu erhöhen Seit dem werden alle 11 auch gefunden und ausgelesen Ich habe hier 7 x DS18B20 lose Sensoren und 4 x DS18B20 wasserdichte Sensoren an den üblichen Billig-Kabeln angeschlossen die 4 wasserdichten Sensoren habe ich über billige nicht wasserdichte Mikrofone-Kupplungen verbunden (da sie im Raum keiner Luftfeuchtigkeit unterliegen brauche ich bei den Kupplungen nichts wassserdichtes) Die einzelnen Kabel sind zw. 1,5m und ~ 4m lang Aktuell habe ich am Testsystem alle Leitungen nur mit einer E-Klemme verbunden, also nicht sauber zusammengelötet (die Sensoren sind jedoch gelötet) Evtl ist das ein Problemchen... Hier der Code Sorry weiß nicht wie ich diesen hier sauber formatiert einfügen kann Es ist ein Standardcode aus der Lib ################################################################# #include <OneWire.h> // OneWire DS18S20, DS18B20, DS1822 Temperature Example // // http://www.pjrc.com/teensy/td_libs_OneWire.html // // The DallasTemperature library can do all this work for you! // http://milesburton.com/Dallas_Temperature_Control_Library OneWire ds(2); // on signal pin (a single 4.7K resistor is necessary) void setup(void) { Serial.begin(9600); } void loop(void) { byte i; byte present = 0; byte type_s; byte data[12]; byte addr[8]; float celsius, fahrenheit; if ( !ds.search(addr)) { Serial.println("No more addresses."); Serial.println("________________________________________________________ _"); ds.reset_search(); delay(10000); return; } Serial.print("ROM ="); for( i = 0; i < 8; i++) { Serial.write(' '); Serial.print(addr[i], HEX); } if (OneWire::crc8(addr, 7) != addr[7]) { Serial.println("CRC is not valid!"); return; } Serial.println(); // the first ROM byte indicates which chip switch (addr[0]) { case 0x28: Serial.println(" Chip = DS18B20"); type_s = 0; break; default: Serial.println("Device is not a DS18x20 family device."); return; } ds.reset(); ds.select(addr); ds.write(0x44, 1); // start conversion, with parasite power on at the end delay(1000); // maybe 750ms is enough, maybe not // we might do a ds.depower() here, but the reset will take care of it. present = ds.reset(); ds.select(addr); ds.write(0xBE); // Read Scratchpad Serial.print(" Data = "); Serial.print(present, HEX); Serial.print(" "); for ( i = 0; i < 9; i++) { // we need 9 bytes data[i] = ds.read(); Serial.print(data[i], HEX); Serial.print(" "); } Serial.print(" CRC="); Serial.print(OneWire::crc8(data, 8), HEX); Serial.println(); // Convert the data to actual temperature // because the result is a 16 bit signed integer, it should // be stored to an "int16_t" type, which is always 16 bits // even when compiled on a 32 bit processor. int16_t raw = (data[1] << 8) | data[0]; if (type_s) { raw = raw << 3; // 9 bit resolution default if (data[7] == 0x10) { // "count remain" gives full 12 bit resolution raw = (raw & 0xFFF0) + 12 - data[6]; } } else { byte cfg = (data[4] & 0x60); // at lower res, the low bits are undefined, so let's zero them if (cfg == 0x00) raw = raw & ~7; // 9 bit resolution, 93.75 ms else if (cfg == 0x20) raw = raw & ~3; // 10 bit res, 187.5 ms else if (cfg == 0x40) raw = raw & ~1; // 11 bit res, 375 ms //// default is 12 bit resolution, 750 ms conversion time } celsius = (float)raw / 16.0; fahrenheit = celsius * 1.8 + 32.0; Serial.print(" Temperature = "); Serial.print(celsius); Serial.print(" Celsius, "); Serial.print(fahrenheit); Serial.println(" Fahrenheit"); } ##################################### hier die Ausgabe ROM = 28 E0 87 8B A 0 0 8A Chip = DS18B20 Data = 1 78 1 4B 46 7F FF 8 10 51 CRC=51 Temperature = 23.50 Celsius, 74.30 Fahrenheit ROM = 28 F4 CD 89 A 0 0 5E Chip = DS18B20 Data = 1 7D 1 4B 46 7F FF 3 10 24 CRC=24 Temperature = 23.81 Celsius, 74.86 Fahrenheit ROM = 28 72 D 5D 5 0 0 74 Chip = DS18B20 Data = 1 70 1 4B 46 1F FF 10 10 71 CRC=71 Temperature = 23.00 Celsius, 73.40 Fahrenheit ROM = 28 1A 63 8B A 0 0 F2 Chip = DS18B20 Data = 1 7B 1 4B 46 7F FF 5 10 1D CRC=1D Temperature = 23.69 Celsius, 74.64 Fahrenheit ROM = 28 6 BD 8A A 0 0 A7 Chip = DS18B20 Data = 1 7B 1 4B 46 7F FF 5 10 1D CRC=1D Temperature = 23.69 Celsius, 74.64 Fahrenheit ROM = 28 86 55 8B A 0 0 26 Chip = DS18B20 Data = 1 7D 1 4B 46 7F FF 3 10 24 CRC=24 Temperature = 23.81 Celsius, 74.86 Fahrenheit ROM = 28 66 23 8A A 0 0 71 Chip = DS18B20 Data = 1 7C 1 4B 46 7F FF 4 10 9 CRC=9 Temperature = 23.75 Celsius, 74.75 Fahrenheit ROM = 28 56 45 8A A 0 0 11 Chip = DS18B20 Data = 1 7B 1 4B 46 7F FF 5 10 1D CRC=1D Temperature = 23.69 Celsius, 74.64 Fahrenheit ROM = 28 E 30 5D 5 0 0 F9 Chip = DS18B20 Data = 1 78 1 4B 46 1F FF 8 10 C1 CRC=C1 Temperature = 23.50 Celsius, 74.30 Fahrenheit ROM = 28 FF A EC 1 17 3 65 Chip = DS18B20 Data = 1 70 1 4B 46 1F FF 1F 10 69 CRC=69 Temperature = 23.00 Celsius, 73.40 Fahrenheit ROM = 28 FF BB FA 53 17 4 61 Chip = DS18B20 Data = 1 78 1 4B 46 1F FF 1F 10 43 CRC=43 Temperature = 23.50 Celsius, 74.30 Fahrenheit No more addresses.
Jürgen schrieb: > habe nun nochmal alles neu verbunden (die Kabelenden) > die Sensoren hängen alle auf gleicher Höhe, sind also keine > Temp-Unterschiede Hmmm. Wenn du aber Zugluft hast, und das geht schnell, auch wenn man es nicht merkt, hast du wieder Unterschiede. So eine genaue Temperaturmessung ist nicht ganz trivial, auch wenn die Sensoren sehr gut sind. > jetzt ist die Abweichung bei ~ 0,8 C°... das wäre NOCH im Rahmen > für meine Anforderung Kauf dir mal 5 IC, pack die auf Lochraster und steck die in eine Kiste. Dann test nochmal. Dann hast du eine Chance, die wahre Toleranz der Sensoren zu sehen. > Vielleicht wird es noch besser wenn die Enden dann sauber verlötet sind. Nein. > Die wasserdichten Sensoren haben alle das Billig-Kabel dran was nicht > geschirmt ist... > hoffe das dies keine Probleme macht Denke nicht, wenn du nicht gerade EXTREME Störquellen in der Nähe hast. > Ist es hier besser sich wasserdichte Sensoren selbst zu bauen... mit > geschirmten Kabel und in Epoxy eintauchen? Eher nicht. Aber auf denen Bildern sehe ich viel Kunststoff. Ich vermute, daß die thermische Kopplung vom IC zum Gehäuse bei den Sensoren nicht so dolle ist. Einfach den IC in ein Metallröhrchen stecken und mit Epoxidharz vergießen ist KEINE gute Anbindung, eher eine Isolation! > Da es ab dem 9. Sensor zu Problemen kam, habe ich nun einen zweiten 4.7K > Widerstand parallel geschaltet um den Pull-up zu erhöhen Zu verringern. Es erhöht sich nur der Pull-Up Strom. Man kann bis auf ca. 1,2kOhm bei 5V runter gehen, das müssen alle ICs runter ziehen können. > Die einzelnen Kabel sind zw. 1,5m und ~ 4m lang Das ist unkritisch. > Aktuell habe ich am Testsystem alle Leitungen nur mit einer E-Klemme > verbunden, also nicht sauber zusammengelötet (die Sensoren sind jedoch > gelötet) > Evtl ist das ein Problemchen... Wenn du keine Wackelkontakte gebaut hast, ist das unkritisch. > Hier der Code >Sorry weiß nicht wie ich diesen hier sauber formatiert einfügen kann Einfach als Anhang! >Es ist ein Standardcode aus der Lib Welche? Sieht nach Arduino-Standard Lib aus. > ds.write(0x44, 1); // start conversion, with parasite power on at the end Warum das? Wenn deine Sensoren keine parasitäre Versorgung haben, braucht man das nicht. GGf. macht das auch Probleme, (Naja, eher nicht, denn HIGH ist ja der Ruhezustand des Busses). Trotzdem sollte man solche Widersprüche nicht einbauen. Der Rest sieht OK aus.
Jürgen schrieb: > Aktuell habe ich am Testsystem alle Leitungen nur mit einer E-Klemme > verbunden, also nicht sauber zusammengelötet (die Sensoren sind jedoch > gelötet) > Evtl ist das ein Problemchen... Ich kann mir schwer vorstellen, dass es bei digitaler Übertragung einen Einfluss auf das Messergebnis gibt. Entweder wird das Messergebnis richtig oder total falsch übertragen. Mit einem gerade vorhandenen Experimentieraufbau (Regelung eines Heizkörperventils) habe ich mal über 10min die Raumtemperatur gemessen, gespeichert und als Diagramm dargestellt. Messtakt: 4s. Vor Beginn der Messung war der Aufbau tagelang abgestellt. Nur die letzte Stelle (0,0625K) "rauscht". Es ist kein Trend erkennbar. Bei mir hängen bei einer anderen Anwendung 8 DS10B20 problemlos an bis zu 10m langen Kabeln. Mist: Ein Diagramm ist zu viel
:
Bearbeitet durch User
Falk B. schrieb: > her nicht. Aber auf denen Bildern sehe ich viel Kunststoff. Ich > vermute, daß die thermische Kopplung vom IC zum Gehäuse bei den Sensoren > nicht so dolle ist. Einfach den IC in ein Metallröhrchen stecken und mit > Epoxidharz vergießen ist KEINE gute Anbindung, eher eine Isolation! > Das interessiert mich Ich habe das 2x2x0,8 Kabel so nah als möglich zu den Lötpunkten abgeschirmt gelassen die einzelnen Adern damit sie auch ja nicht zusammenkommen habe ich mit Isolierband gegen Kontakt geschützt anschliessend habe ich es mit Schrumpfhülsen isoliert Wie sollte ich die Sensoren sonst ans kabel anbringen und später isolieren? Mir würde hier nur noch Epoxy oder Flüssigplastik einfallen Meine Anbindung also die Lötstellen sollten ganz ok sein.. > > Welche? Sieht nach Arduino-Standard Lib aus. Ja, der Link zur Lib steht im Code > >> ds.write(0x44, 1); // start conversion, with parasite power on at the > end > > Warum das? Das war wohl so in dem Beispielcode eingebaut... wahrscheinlich um alle Eventualitäten abzudecken Wenn die Sensoren nun sauber laufen dann kopiere ich mir das das dem code was ich tatsächlich nur benötige >
Die Verkabelung ist bei den Sensoren nicht kritisch. Im normalen Umfeld sind geschirmte Leitungen nicht notwendig. Meine 12 Sensoren liegen an einem ~ 10m langen Bus mit Stichleitungen (bis 2m Länge). Da kommen verschiedene ungeschirmte Kabel mit geringem Querschnitt zum Einsatz. Falsche Werte bekomme ich nicht.
Einhart P. schrieb: > Meine 12 Sensoren liegen an einem ~ 10m langen Bus mit Stichleitungen > (bis 2m Länge). Da kommen verschiedene ungeschirmte Kabel mit geringem > Querschnitt zum Einsatz. Falsche Werte bekomme ich nicht. das muss ich mal hinterfragen die ~ 10m sind für mich ja ok... aber die 2m Stichleitungen und das ungeschirmt mmmhh was für ein Microcontroller-Board nutzt Du? aktuell ist es ja so das ich ganz zufrieden bin. Nur wenn ich so eine Verkabelung sehe frage ich wieso ich so nen Aufwand mache
Jürgen schrieb: > Nur wenn ich so eine Verkabelung sehe frage ich wieso ich so nen Aufwand > mache Weil du scheinbar den Sensor und die Datenübertragung nicht verstanden hast. Es steht hier schon etliche Male im Thread, dass die Datenübertragung nicht von den Kabeln abhängt. Entweder die Daten kommen "heile" an oder nicht. CRC prüfen wurde auch genannt. Aber Messergebnisse des Sensors verfälschen sie nicht weil eine Abschirmung fehlt es sei denn direkt daneben ist eine Leitung die sehr starke EMV-Abstrahlung hat. Da du auch geschrieben hast, dass du nicht wusstest, wie du am besten Code anhängst, kann man davon ausgehen, dass du nicht alles liest, bervor du ein System verwendest. Wenn mal über das Eingabefeld deines Postings schaust, findest du "Wichtige Regeln - erst lesen, dann posten!". Wenn du gelesen hättest, dann wüsstest du..... Und so verhält es sich evtl. auch mit der Doku des Sensors. Lies mal und verstehe. Dann könntest du die meisten Unklarheiten selber lösen. Edit: der Sensor hat keine Aufwärmzeit wenn du ihn nicht thermisch abschirmst.
:
Bearbeitet durch User
Der DS18B20 zieht bei der Wandlung bis zu 1,5mA, d.h. er heizt sich mit 7,5mW auf. Daher sollt man nicht öfter als alle 10s messen.
900ss D. schrieb: > nicht. CRC prüfen wurde auch genannt. Aber Messergebnisse des Sensors > verfälschen sie nicht weil eine Abschirmung fehlt es sei denn direkt > daneben ist eine Leitung die sehr starke EMV-Abstrahlung hat. Da wäre ich vorsichtig. Wenn Störungen in VCC einkoppeln kann das die Messung beeinflußen! Erst recht, wenn kein Entkoppelkondensator am IC angebracht ist (obwohl vermutlich im IC bzw. Gehäuse eine sitzt, denn bei parasitärer Versorgung gibt es keinen externen Entkoppelkondensator)
Jürgen schrieb: > Die Sensoren sind bei einer Temp ~ 30 C° um ca. +/- 0,5 C° im meines > Referenzwertes eines TESTO 905-T1 Messgerätes. Moin, und kalibriert? Ist die Eigenerwärmung an Luft bekannt? Ist die Hysterese bekannt? Sollte man schon wissen .... Jefe
Toxic schrieb: > Um z.B. die eigene Koerpertemperatur zu messen benoetigt man > schon so 1-3 Minuten. Solange hat früher das Fiebermessen auch gedauert.
Falk B. schrieb: > Da wäre ich vorsichtig. Wenn Störungen in VCC einkoppeln kann das die > Messung beeinflußen! Ja sicher. Aber ich denke, er hat Bedenken, dass seine Kabel ihm die Daten, die er einliest, kaputt machen.
Peter D. schrieb: > Der DS18B20 zieht bei der Wandlung bis zu 1,5mA, d.h. er heizt sich mit > 7,5mW auf. Daher sollt man nicht öfter als alle 10s messen. Komisch! Warum ist bei mir Autor: wolle g. (wolleg) Datum: 12.05.2019 14:01 bei der Messung aller 4s mit dem DS18B20 auch nach 10min noch keine Erwärmung nachweisbar?
wolle g. schrieb: > Komisch! > Warum ist bei mir > Autor: wolle g. (wolleg) > Datum: 12.05.2019 14:01 > bei der Messung aller 4s mit dem DS18B20 auch nach 10min noch keine > Erwärmung nachweisbar? Bist bestimmt ein cooler Typ! Oder du wohnst in Lappland?
900ss D. schrieb: > Und so verhält es sich evtl. auch mit der Doku des Sensors. Lies mal und > verstehe. Dann könntest du die meisten Unklarheiten selber lösen. Was sollen hier diese Vorwürfe? Man kann ein Datenblatt zigmal lesen und sich einbilden, man hat es verstanden. Da die Datenblätter in der Regel in Englisch verfasst sind, kommen evtl. noch Übersetzungsfehler hinzu. Also, lasst bitte solche unnützen Bemerkungen. Das hilft niemanden, aber verbraucht nur unnötig Energie.
900ss D. schrieb: > Es sollte kein Vorwurf sein. Das soll kein Vorwurf sein? >Lies mal und verstehe. Ich "rege" mich deshalb darüber auf, weil hier im Forum öfter mal ähnliche Formulierungen vorkommen, die aber niemanden weiterhelfen.
wolle g. schrieb: > Vor Beginn der Messung war der Aufbau tagelang abgestellt. > Nur die letzte Stelle (0,0625K) "rauscht". Ob die letzte Stelle rauscht oder nicht, hängt von der Temperatur ab. Wenn es ein paar 1/100K wärmer oder kälter ist, kann es genaus gut passieren, dass der Ausgabewert auf einem Wert festhängt. Das liegt daran, dass das Rauschen des Sensors im DS18B20 kleiner ist als die Höhe der Quantisierungsstufen.
Jürgen schrieb: > Die Sensoren sind bei einer Temp ~ 30 C° um ca. +/- 0,5 C° im meines > Referenzwertes eines TESTO 905-T1 Messgerätes. Dein Testo ist als Referenz denkbar ungeeignet, weil es selbst zu ungenau ist(kann man hier https://www.testo.com/de-DE/testo-905-t1/p/0560-9055 nachlesen). Als nächste wäre noch interessant wie gut Dein Fühler vom Testo und Deine DS1820 thermisch gekoppelt waren.
wolle g. schrieb: > Man kann ein Datenblatt zigmal lesen und sich einbilden, man hat es > verstanden. Dass ein 18x20 eine Einschwingzeit im Bereich von Minuten hat, ist einfach unglaubwürdig und entspricht nicht meiner Erfahrung. Erst im Verlauf des Threads zeigt sich, dass Jürgen die Dinger konfektioniert in Metallhülse hat. Solche habe ich auch hier, die haben eine schlechte Wärmekopplung und reagieren sehr langsam auf Änderungen der Umwelt.
wolle g. schrieb: > die aber niemanden weiterhelfen Und mich regt auf, wenn jemand die einfachsten Dinge nicht beherrscht, obwohl sie deutlich und klar beschrieben sind. Jürgen schrieb: > Sorry weiß nicht wie ich diesen hier sauber formatiert einfügen kann Und das zeigt mir, dass er den Rest seiner technischen Dokumentation sehr wahrscheinlich(!) auch nicht liest um sie zu verstehen. Der Sensor ist so schnell, dass man es direkt an den Messwerten sieht, wenn man mit der Hand in seine Nähe kommt. Wenn die Dinger in Metallhülsen stecken, sind sie sicher langsamer.
Ich habe die Erfahrung gemacht, das man mindestens 5-6 Sekunden zwischen Messungen warten muss, damit sich beim DS18B20 eine Eigenerwärmung nicht bemerkbar macht. Bei der Edelstahl Version handelt es sich um einen TO92, der in die Stahlhülle eingesteckt wurde. Die Ansprechzeit dieser Versionen dauert daher wesentlich länger. Ich habe mal einen Edelstahl Typ geknackt...
Jörn P. schrieb: > Ich habe mal einen Edelstahl Typ geknackt... Diesen? https://de.wikipedia.org/wiki/Man_of_Steel_(Film)
Jörn P. schrieb: > Bei der Edelstahl Version handelt es sich um einen TO92, der in die > Stahlhülle eingesteckt wurde. So habe ich das vermutet, aber noch keinen aufgeschliffen. Dass die Dinger sehr träge sind, habe ich bemerkt, aber die meisten Temperaturänderungen sind ja auch eher langsam. > Die Ansprechzeit dieser Versionen dauert daher wesentlich länger. > Ich habe mal einen Edelstahl Typ geknackt... Sehe ich auf deinen Bildern richtig, dass die Beinchen mit Gewebeschlauch isoliert und dann das gesamte in Schrumpfschlauch in die Hülse gepresst wird? Edelstahl ist eine schlecht leitende Legierung und die unterlegen die noch zusätzlich mit Kunststoff? Viel dämlicher kann man das garnicht bauen!
Manfred schrieb: > Viel dämlicher kann man das garnicht bauen! Ab 62 US-Cent -> was erwartest du da?
Jörn P. schrieb: > Ich habe die Erfahrung gemacht, das man mindestens 5-6 Sekunden zwischen > Messungen warten muss, damit sich beim DS18B20 eine Eigenerwärmung nicht > bemerkbar macht. Das passt aber mit dem Diagramm: Autor: wolle g. (wolleg) Datum: 12.05.2019 14:01 nicht zusammen. Um wie viel K würde nach Deinen Messungen die angezeigte Temperatur durch Eigenerwärmung steigen? Nur mal so: Geht es hier um die Eigenerwärmung des DS18B20 oder um die Sprungantwort eines Messfühlers?
:
Bearbeitet durch User
Manfred schrieb: > Sehe ich auf deinen Bildern richtig, dass die Beinchen mit > Gewebeschlauch isoliert und dann das gesamte in Schrumpfschlauch in die > Hülse gepresst wird? Siehst du exakt richtig ;-) Das To92 Gehäuse stößt direkt gegen den Deckel der Stahlhülse, deshalb wurde das TO92 Gehäuse beim Absägen des Deckels auch etwas "mitgenommen".
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.