- LiTime Speicher und Akkus         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 14 von 14

Thema: Temperatur mit BMP180 und DS18B20 entspricht nicht der Real-Temperatur

  1. #11
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    55
    Beiträge
    2.197
    Anzeige

    Praxistest und DIY Projekte
    Die Luftdruck-Angabe meines BME ist sehr genau.
    Ich hab ein Garmin GPS mit barometrischen Höhenmesser hier (keine Ahnung, was das genau für einer ist), der stimmt mit dem BME sehr genau überein.
    Zumindest, wenn ich den gemessenen Luftdruck ausgebe (mach ich normal nicht, da auch die Wetterfrösche den auf Meeresniveau angeben), passt das.
    Auch beim BMP. Du sagst "analoges Gerät"- hast du ein "altes" mit Dose oder sowas? Die Dinger müssen auch justiert werden, auf die genaue Höhe (und zeigen trotzdem nicht ganz exakt, weil der Luftdruck _nicht nur_ von der Höhe abhängt.

    Die Temperatur und der Offset: bei meinem (dem, der geheizt wird) läuft es so, dass der ganz zu Anfang stimmt. Aber dann steigt er binnen einiger Stunden (um runde 3 Grad), bleibt dann aber wiederum so.
    Betrifft aber den Luftdruck nicht, der stimmt!

    Man könnte, mit ner Referenz, einige Werte zwischendrin aufnehmen, und daraus ne Art Graphen erstellen, so dass man ne ganze Reihe Korrekturwerte über die Zeit hat. Oder einfach den Sensor erstmal ignorieren (so mache ich das, da es ne reine Bastelplatine mit allem möglichen Kram drauf ist), bis alles warmgelaufen ist, und dann halt die 3 Grad einfach abziehen.
    Alternative: viele Chips (z.B. die DS3231, aber auch die Arduino-Prozessoren selber) haben einen Temperatursensor eingebaut.
    Eventuell kann man auch damit ne Korrektur stricken...wobei ich bei der 3231 _weiss_ dass auch die sich erwärmt- und der Temperatursensor das natürlich mit misst.
    Wäre mir alles zu wackelig, ehrlich gesagt.
    Daher ist es am sinnvollsten, so einen Sensor entsprechend anzuordnen: Wärme steigt nach oben. Wenn ich also das Layout so baue, dass er "ganz unten" angeordnet ist (am besten der reine Sensor, denn auf dem Breakout sind auch Widerstände oder gar Spannungsregler, die auch warm werden könnten), und von unten auch ausreichend frische Luft nachströmen kann, dürfte man der Wirklichkeit ziemlich nahe kommen.

    Und zum Schluss "vermittele" ich das Ergebnis sowieso noch, weil es nervt, wenn die Anzeige sich nahezu pausenlos ändert, ungefähr so:

    temp=(tempGemessen*0.7)+(tempVorherGemessen*0.3).

    Dann ändert sich nicht alle Sekunden was- und das Ergebnis bleibt immernoch ausreichend genau.
    Ich zeichne den Temperaturverlauf auch auf, über 24 Stunden, da kann man später an den Graphen trotzdem noch ablesen, wann ich mal die Tür kurz offen hatte.
    Beim Luftdruck ist es übrigens ganz ähnlich: wenn man nicht gerade nen präzisen Höhenmesser braucht (den man allerdings auch vor jeder Messung kalibrieren muss), ist der tatsächliche Wert nicht sehr nützlich- der Verlauf ist interessant!
    Damit kann man schon bisschen Prognosen stricken, der reine Wert dagegen sagt so gut wie nichts.

    Das mit dem Höhenmesser hab ich allerdings auch noch vor- ich will mal so einen BMx in ne Modellrakete stecken...dauert aber noch.

    Da ich aber nun von ausgehe, dass, wenn der BME Temperatur und Luftdruck sehr genau ausgibt, auch die Luftfeuchte stimmen wird, und man eben alles zusammen in einem Kästchen hat (und das auch noch super bequem per I2C auslesen kann) ist das Ding einfach meine beste Wahl.
    Für alle Fälle kann man den BME (den BMP bestimmt auch, nur vom BME hatte ich neulich erst das Datenblatt vor der Nase) auch wieder "justieren"- z.B. wenn er mal abgesoffen ist.
    Geht übrigens bei den DHT-Sensoren auch...
    Geändert von Rabenauge (07.01.2018 um 11:48 Uhr) Grund: Fehler in der Formel rauseditiert
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

  2. #12
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.187
    Wenn ich mich da auch nur Dunkel daran erinnere...
    Gab's da nicht mal ein Problem das es DS18B20 gelabelte Sensoren, die aber eigentlich DS18S20 waren?
    Das Temperaturregister hat dabei unterschiedliche Auflösungen, was deine Temperaturabweichung auch erklären würde.

    Ist zwar schon ein paar Jahre her, hatte da aber auch mal ein Problem.

  3. #13
    HaWe
    Gast
    @Rabenauge:
    temp=((tempGemessen*0.7)+(tempVorherGemessen*0.3)/2).
    der Lowpassfilter (gleitender Durchschnitt) in der Art
    Code:
    tempd=(tempGemessen*0.7)+(tempd*0.3)  // Aktualisierung des gleitenden Durchschnitts tempd
    macht Sinn, das stimmt, aber ohne die /2

    @Robotrader:
    wenn du eine genaue Raumtemp. willst, dann miss sie nicht auf dem Shield mit ominösen Schätzfaktoren, sondern spendiere ein paar EUR für einen externen Sensor (BME280 z.B.) und miss dann genau dort, wo es maßgeblich ist und wo es darauf ankommt !

  4. #14
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    55
    Beiträge
    2.197
    Ups- hast recht. Das kommt davon, wenn man einfach ausm Kopf tippt.
    Danke für den Hinweis-ich habs korrigiert.
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. Temperatur wert wird nicht aktualisiert.
    Von Ferdinand im Forum C - Programmierung (GCC u.a.)
    Antworten: 3
    Letzter Beitrag: 31.03.2012, 21:52
  2. Temperatur anzeige auf dem LCD wird nicht aktualisiert?
    Von Ferdinand im Forum C - Programmierung (GCC u.a.)
    Antworten: 16
    Letzter Beitrag: 16.01.2012, 14:55
  3. temperatur
    Von Che Guevara im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 4
    Letzter Beitrag: 13.07.2008, 20:21
  4. Temperatur via I2C
    Von Haveaniceday im Forum C - Programmierung (GCC u.a.)
    Antworten: 13
    Letzter Beitrag: 05.09.2007, 21:12
  5. ATmega16 mit M24C16 und DS18B20 Temperatur messen & spei
    Von logikbomb im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 0
    Letzter Beitrag: 08.09.2005, 10:10

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiTime Speicher und Akkus