Christians Bastel-Laden

Aufbauanleitung für ein Pixi-Therm

Was ist ein Pixi-Therm?

Das Pixi-Therm ist ein Thermo- und Hygrometer. Die Daten werden von einem DHT22-Sensor gemessen, von einem Arduino-Clone verarbeitet, und mit NeoPixel-Stripes angezeigt.

Optional kann auch ein HYT939-Seonsor verwendet werden. Der HYT939 ist ein schneller und hochpräziser Sensor, der über den I2C-Bus kommuniziert.

HYT939-Datenblatt

Bausatz

Das Pixi-Therm basier auf einem Minty. Einen Bausatz für einen Minty gibt es bei Elmotex.

Minty-Bausatz

Wie funktioniert das?

Das Pixi-Therm mißt die Luftfeuchtigkeit und Themperatur mit Hilfe eines DHT22-Sensors und stellt die gemessenen Werte mit hilfe von NeoPixel-Streifen (RGB-Streifen) dar.

DHT22-Datenblatt

Adafruit NeoPixel Überguide

Pixi-Therm: Einleitung

1. Einleitung

Das Pixi-Therm verfolgt die Idee, die Temperatur und relative Luftfeuchtigkeit in einem Raum mit einem DHT22-Sensor (alternativ: HYT939) zu messen und mit NeoPixel-Strips anzuzeigen. Eine Liste der benötigten Teile findet sich in der Einkaufsliste weiter unten auf dieser Seite.

Dabei wird die ideale Raumtemperatur und ideale Luftfeuchtigkeit von zwei schwach grün glimmenden Punkten angezeigt. Außerhalb dieser Bereiche wechselt die Temperaturanzeige nach rot bzw. blau, die relative Luftfeuchtigkeitsanzeige nach rot.

Pixi-Therm: Minty vorbereiten

2. Minty vorbereiten

Als Basis und zur Steuerung dient ein Minty. Dieser muß nicht komplett bestückt werden, da wir keine Shields benutzen und auch keine 3,3 Volt-Versorgung benötigen.

Minty-Anleitung

Pixi-Therm: Stromversorgung

3. Stromversorgung

Das ganze System läuft mit 5 Volt. Hat man ein 5 Volt-Netzteil zur Hand, kann der Spannungsregler entfallen. Dazu überbrückt man den rechten und linken Pin des Spannungsreglers.

Dabei darauf achten, daß der mittlere Pin (GND) keinen Kontakt zu den äußeren Pins (Vin bzw. Vout) bekommt!

Bei der Verwendung des Spannungsreglers kann man das Pixi-Therm mit 6,5-12 Volt speisen. Es müssen dann aber auch mindestens 6,5 Volt sein, sonst regelt der Spannungsregler nicht!

Pixi-Therm: NeoPixel vorbereiten

4. NeoPixel vorbereiten

Laut Adafruits NeoPixel Überguide (den es sich wirklich zu lesen lohnt!) sollte für den korrekten Betrieb von NeoPixel-Strips an jedem Ende ein großer 1000 μF-Elko hängen. Vor DIN (der Einspeisung der Daten) sollte ein 300-500 Ohm-Widerstand sein, die Stromversorgung sollte man aufteilen: an einem Ende +5 Volt, am anderen Ende GND.

Geübte Tüftler/Löter können das natürlich freifliegend aufbauen, für alle anderen gibt es kleine Hilfsplatinen. Diese Platinen können an die NeoPixel-Strips angelötet werden und stellen die Anschlüsse wieder zur Verfügung.

Pixi-Therm: Minty anschliessen

5. Anschluß der Komponenten

Siehe auch den Anschlußplan, Link in der rechten Spalte auf dieser Seite!

Der DHT22-Sensor wird, wie im Adafruit Learning System beschrieben, an Vcc, GND und mit einem Pull-Up-Widerstand an D5 angeschlossen.

Der NeoPixel-Strip wird an D6 (Din) angeschlossen.

Jetzt kann man über die Arduino-IDE die Firmware (Link in der rechten Spalte auf dieser Seite!) auf den ATMEGA328 aufspielen.

Dazu muß die Adafruit NeoPixel-Library im library-Ordner liegen, diese gibt es hier: https://github.com/adafruit/Adafruit_NeoPixel.

Zusätzlich wird die DHT22-Library von Adafruit benötigt, diese gibt es hier: https://github.com/adafruit/DHT-sensor-library.

Pixi-Therm: Skala und Gehäuse

6. Skala und Gehäuse

Wer eine Skala auf seinem Thermometer haben möchte: bei PlottFlott gibt es Folien für die Vorder- und Rückseite (hier auf PLEXIGLAS® LED (truLED), Platte, Black & White 9M500 SC). Ein gefrästes Gehäuse gibt es im Diskussionsforum (Link oben auf dieser Seite).

Wie geht es weiter?

Bei dem Anbringen der Skala auf das Acryl-Glas bzw. der Montage des Acryl-Glases kann es immer vorkommen, daß die Skala nicht exakt auf den LED-Streifen zum Liegen kommt.

Die Skala kann daher kalibriert werden: die Anzeige wird dabei ein wenig verschoben, so daß die Temperatur und Luftfeuchtigkeit wieder stimmt.

Dazu kommentiert man im Sketch den Compiler-Schalter DISPLAY_CALIBRATE ein. Die Anzeige wird dadurch fest auf 25,0 °C bzw. 50 % rel. Luftfeuchtigkeit gesetzt.

Jetzt liest man auf der Skala ab, welche Temperatur bzw. Luftfeuchtigkeit man sieht. Diese Zahlen trägt man im Sketch bei I_SEE_TEMP (Ich sehe Temperatur) bzw. I_SEE_HUMIDITY (Ich sehe Feuchtigkeit) ein.

Als Gegenprobe kann man jetzt DISPLAY_CALIBRATE wieder auskommentieren, dafür DEBUG einkommentieren und im seriellen Monitor (57.600 Baud) überprüfen, ob die gemessenen und angezeigten Werte übereinstimmen.

Einkaufsliste

Name Quelle
Minty Elmotex
DHT22 Seonsor DHT22/AM2302 digital Sensor
NeoPixel-Strip (60 Pixel/Meter; 1 Meter) Exp Tech (4 Meter, alternativ bei eBay; Amazon nach WS2812B Strip suchen)
NeoPixel-Helper Elmotex
Kleinteile Reichelt