Zum Ende der Metadaten springen
Zum Anfang der Metadaten

Ein kostengünstiger Luftfeuchtigkeitsfühler inklusive Temperaturmessung kann mit etwas Lötgeschick selbst gebaut werden. Hierbei verwendet man den 1-Wire-Chip "DS2438 Battery Smart Monitor", der eigentlich dafür gedacht ist in Handys z. B. die Akkuleistung zu überwachen. Aber der Chip kann an einem seiner Eingänge auch eine Spannung überwachen. Das macht man sich zu Nutze, indem man an diesem Eingang einen Luftfeuchtigkeitssensor anschließt, der in Abhängigkeit der gemessenen Luftfeuchtigkeit seinen Widerstand ändert und somit auch die Spannung am Eingang des Chips verändert. Über eine Formel kann man dann sehr einfach die tatsächliche Luftfeuchtigkeit ausrechnen.

Anwendungsbeispiele

  • Automatische Aktivierung der Ablüfter im Bad beim Duschen
  • Automatische Aktivierung der Dunstabzugshaube in der Küche beim Kochen
  • Regelung der WRL (Wohnraumlüftungsanlage) nach Luftfeuchtigkeit (hier wohl besser: CO2-Sensor nehmen)

Einkaufsliste

  • 1-Wire Chip DS2438 Battery Smart Monitor, ca. 5 EUR
  • Honeywell HIH-4000-02 Feuchtefühler, ca. 25 EUR, erhältlich bei den meisten Elektronikversandhändlern
  • SOIC 8 Platine zum Auflöten des Chips, 0,60 EUR, da etwas schwerer zu finden hier ein Link zu einem Fachhändler: Embedded Channel

Datenblätter:

Datenblatt 1-Wire Chip DS2438 Battery Smart Monitor
Datenblatt Honeywell HIH-4000-02 Feuchtefühler

Zusammenbau:

Beschreibung und Bilder sind der folgenden frei zugänglichen Anleitung entnommen: https://docs.google.com/viewer?url=http://bit.ly/JvRe70&pli=1

Der DS2438 wird auf die SOIC Platine gelötet, damit der sehr kleine Sensor vernünftig verbaut werden kann. Wir nehmen die Platine mit dem eckigen Lötanschluss nach unten (gelber Draht) und den DS mit dem eingestanzten Punkt nach oben rechts. Die Beinchen des DS werden nun auf das Platinenraster gelötet. Möchte man auch Feuchte messen, kann man den Feuchtesensor an die jeweiligen Anschlüsse der SOIC Platine anlöten (siehe Schaltplan).

Nun werden drei Drähte (weiss, gelb, schwarz) von hinten an die entsprechenden Anschlüsse der SOIC Platine gelötet. Als Draht nutze ich 0,75 er Buskabel. Zur Sicherheit sollten nun die Anschlüsse nochmals auf Durchgang geprüft werden. Der Feuchtesensor wird mit der offenen Seite in Richtung dem eingestanzten Punkt des Sensors platziert und an den Anschlüssen 1,4 und 5 festgelötet. Dazu können natürlich auch die Lötaugen der Platine genutzt werden.

Die drei farbigen Drähte entsprechen den Farben am Loxone 1-Wire Modul :

Achtung die Anschlüsse der SOIC Platine sind ggf. um 90° verdreht. Der Schaltplan oben zeigt die Anschlüsse des DS2438 und nicht die der SOIC Platine. Am besten die Platine vorher einmal auf Durchgang prüfen, um zu ermitteln, welches Lötauge auf welchem Anschluss sitzt.

Fertig aufgebaute Platine:

 

Ergänzung: Hier paar Bilder von meinen Lötarbeiten und der Unterbringung in einem Gira 2-fach Rahmen

ANSCHLUSS UND PROGRAMMIERUNG

Der Sensor wird ganz normal an den 1-Wire-Bus angeschlossen. Wichtig ist, dass er eine 5V-Versorgungspannung, die der 1-Wire-Bus ja auch mitbringt, benötigt. Anschließend wird er über die Suchfunktion im Loxone Miniserver eingerichtet.

Man hat dann folgende Werte aus dem Sensor zur Verfügung:

  • Temperatur
  • Spannung der Versorgung (5V)
  • Spannung am Ausgang des Sensors

Aus diesen 3 Werten lässt sich dann über folgende Formel (aus dem Datenblatt des Sensors) die Relative Luftfeuchtigkeit berechnen:

 

Zur Berechnung verwendet man den Loxone Formelbaustein. Die entsprechende Formel, die dort eingetragen werden muss, sieht so aus:

(((VAD/VDD)-0,16)/0,0062)/(1,0546-(0,00216*Temp))

VAD liegt am Eingang I1

VDD am Eingang I2

und die Temperatur des DS auf I3

 

Test mit einem Billig-Feuchtigkeitsmesser einer kleinen Wetterstation:

Installation im Haus

Generell muss der Sensor gut von der (feuchten) Luft umströmt sein, damit er gut und vor allem schnell misst. In normalen Räumen kann man ihn z. B. in einer Leerdose unterhalb der Taster/Schalter platzieren und dann auch gleich eine Temperaturmessung für die Heizungssteuerung. Dazu kann man sich einen Blinddeckel seines Schalterprogramms besorgen und entsprechende Lüftungsbohrungen mit einem Dremel dort hineinbohren (Bild: ganz unten).

Bei hohen Luftfeuchtigkeiten (z. B. beim Duschen) funktioniert diese Messung einwandfrei. Bei eher niedrigen Luftfeuchtigkeiten (Kochen) allerdings nicht, Hier sollte der Sensor direkt z. B. oberhalb des Herdes platziert werden.

 

 

19 Kommentare

    1. Siehe Datenblatt! HIH-4000-003 ist nur eine andere Bauform.

  1. NicoS sagt:

    Hallo

    Kann man denn als Feuchtigkeitssensor als kostengünstigere Alternative auch den sy-hs-230 benutzen der bei der universelle 1-wire-Platine verwendet wurde?

    Danke

    Grüße

  2. Tolle Lösung! Vielen Dank!

    Eine Frage noch zur Genauigkeit der Temperaturmessung...
    Es heißt ja grundsätzlich, wer misst, misst Mist. Aber reichen die +-2°C im alltäglichen Betrieb aus, oder
    wäre man eher besser beraten, noch einen 18B20 mit draufzupacken?

    Lg
    Andi

     

    1. Hallo Andreas,

      die Temperaturkompensationsformel der HIH4000-Serie lautet:

      RH ... Relative Humidity

      TrueRH = (Sensor RH)/(1.0546 – 0.00216T)

      Beispiel 1: Der HIH-Sensor liefert 70% Feuchtigkeit bei einer Realtemperatur von 25°C

      Liefert der Temperatursensor 25 Grad, erhältst du 69,96% echte Luftfeuchtigkeit --> Richtiger Wert.

      Liefert der Temperatursensor 23 Grad, erhältst du 69,66% echte Luftfeuchtigkeit.

      Liefert der Temperatursensor 27 Grad, erhältst du 70,26% echte Luftfeuchtigkeit.

       

      Beispiel 2: Der HIH-Sensor liefert 45% Feuchtigkeit bei einer Realtemperatur von 15°C

      Liefert der Temperatursensor 15 Grad, erhältst du 44,02% echte Luftfeuchtigkeit --> Richtiger Wert

      Liefert der Temperatursensor 13 Grad, erhältst du 43,84% echte Luftfeuchtigkeit.

      Liefert der Temperatursensor 17 Grad, erhältst du 44,21% echte Luftfeuchtigkeit.

       

      Wie du siehst, zwei Grad Ungenauigkeit kann man eigentlich vernachlässigen.

       

       lg, Christian

  3. Hallo Christian!

    Vielen Dank für Deine umfangreichen Ausführungen. (Lächeln)
    Was mich jedoch interessieren würde, ob ich diese Temperatur auch sinnvoll als Raumtemperaturanzeige, bzw. -regelung
    einsetzen kann, oder besser noch einen 18B20 huckepack mit draufsetze.

    Lg
    Andi

    1. Zur Raumtemperaturmessung schadet der 18D20 sicher nicht. 

      Andererseits liefert der DS2438 die Werte in Schritten von 0.03125°C (jedoch mit einer Toleranz von 2°C). Wenn du die genaue Temperatur WISSEN willst, brauchst du einen 18B20. Wenn du die Temperatur nach Gefühl einstellst ("mir ist es zu kalt/zu warm"), reicht der DS2438 aus. Es ist ja nicht so, dass der Sensor um +/-2°C herumspringt, sondern einfach der Wert nicht exakt ist (entweder immer zu hoch oder immer zu niedrig). Da die Platine in einer UP-Dose verbaut ist, musst du generell damit rechnen, dass (mit beiden Sensoren) die Temperatur nicht exakt stimmt, bzw. der Raumtemperatur nachläuft. Also wenn's für dich ein erträglicher Aufwand ist, würde ich den 18B20 jedenfalls schon zusätzlich einsetzen.

  4. q421 sagt:

    Der Link zum Google Doc steht funktioniert nicht mehr. Oder steht in diesem Doc eigentlich das, was man hier lesen kann? (Lächeln)

    1. Ja, steht exakt das, was du hier lesen kannst. Hier sind allerdings noch einige Dinge zusätzlich erläutert. Der Link ist anscheinend tot, aber als Quelle hier trotzdem genannt.

  5. Vit sagt:

    es gibt verschiedene DS2438 Sensoren, welchen ich nehnen würde spielt keine Rolle oder?

     

    DS2438Z+ DS2438 8-Pin SOIC

    DS2438Z+T&R DS2438 DS2438Z+ on Tape-and-Reel

    DS2438AZ+ DS2438A 8-Pin SOIC

    DS2438AZ+T&R DS2438A DS2438AZ+ on Tape-and-Reel

    DS2438Z DS2438 8-Pin SOIC

    DS2438Z/T&R DS2438 DS2438Z on Tape-and-Reel

    DS2438AZ DS2438A 8-Pin SOIC

    DS2438AZ/T&R DS2438A DS2438AZ on Tape-and-Reel

  6. Volker Helms sagt:

    Hallo,

    ich habe auch versucht den Feuchtefüher nachzubauen. Momentaner Stand ist, dass ich alles angeschlossen habe und die 5V anliegen, der HIH eine Spannung zurückgibt und am 1Wire Data Anschluss 4,69V anliegen. Allerdings kommen keine Daten. Hier mal ein kleines Bild - vielleicht habe ich ja etwas falsch gemacht:

    1. (weiß) liegt das Signal vom HIH an. Geht an den PIN unten rechts.

    2. (rot) liegt 5V an und geht an den PIN oben rechts

    3. (grün) liegt 1Wire Data an und geht an den PIN oben links

    4. (schwarz) liegt an GND an und geht an den PIN unten links

    Vielleicht hat ja jemand eine Idee? Was mir aufgefallen ist, ich habe wohl einen DS2438Z+ statt einen DS2438. Wenn ich es richtig verstanden habe, sollte das aber egal sein, oder?

    1. Hi,

      ich habe exakt das gleiche Problem hast du eine Lösung gefunden?

      Ich konnte zwar den Sensor finden aber ich bekomme leider keine Werte. Ich habe die Schaltung schon mehrmals geprüft und kann keine Fehler finden.

  7. Bouni sagt:

    Hi Volker,

    Das du einen DS2438Z+ hast ist nicht weiter schlimm, einen DS2438 ohne Z gibts ohnehin nicht und das + steht nur für Bleifrei. Funktionalität sollte die gleiche sein.

    Was hast du soanst alles an 1-wire Geräten am Bus?

  8. Ich habe anscheinend das gleiche Problem wie der Volker.

    Ich habe derzeit einen Testaufbau mit den HIH-4000-002 (DS2438Z+) und einen DS18B20 (Temperaturfühler) der auch funktioniert.

    Meine Platine habe ich nach diesen Plan gelötet:

    Das ist mein Aufbau:

     DQ ... rot, GND ... gelb, VDD ... schwarz

    Der HIH-4000-002 wurde so wie oben auf den Bild  am DS2438 angelötet (GND → 1, OUT → 4, VDD → 5).

    Kabel: DQ ... rot → 8, GND ... gelb → 1, VDD ... schwarz → 5

    Im Loxone Konfigurator konnte ich den Sensor mit der Seriennummer einbinden:

    Jedoch bekomme ich leider keine Werte bzw. habe ich immer nur 0.00V.

    Ich würde mich über eure Hilfe sehr freuen.

     

     

  9. Ich habe heute eine zweite Schaltung aufgebaut und das gleiche Problem.

    Aber heute habe ich einmal nachgemessen und auf der Platine kommen die 5V an.

    Dann habe ich noch gemessen zwischen HIH-4000-002 OUT und GND und da bekomme ich 2,89V. Daher gehe ich davon aus dass die Schaltung richtig gelötet ist.

    Hat jemand eine Idee?

  10. Hallo Gerhard
    Versuche einen AD Wandler zwischen den ds2438 Eingang und den Sensor. Möglicherweise unterstützt loxone den ad wandler im ds2428 nicht (muss vom busmaster
    initialisiert werden).

    Schönen tag

    1. Hi, obwohl ich zum Problem nichts beitragen kann, ist zumindest deine Antwort ganz verkehrt. Der DS2438 wird unterstützt, sonst gäbe es nicht dieses Howto. Der DS2438 ist ein AD-Wandler, da braucht man keinen zusätzlichen.

      1. Hi,

        was mir komisch vorkommt, ist dass bei der Suche "Unbekannter Chip" steht. Ist das normal?

        1. Axel Blümer sagt:

          Hallo!

          Ich weiß nicht genau, was die Loxone da für eine Adresse anzeigt, aber das erste Byte der Adresse ist der Famiy-Code.

          Der ist bei einem DS18B20 Hex 28

          Bei einem DS2438 Hex 26

          Die angezeigt Adresse stammt offensichtlich nicht von einem DS2438

          Tauchen immer wieder andere Adressen auf, wenn Du neu suchst? Es könnten Datenfehler sein? Pull-Up Widerstand / Leitungsverlegung?

          Mehr fällt mir da im Moment auch nicht ein.

           

          Viele Grüße,

          Axel