Hallo Homees
Endlich habe ich es geschafft eine lange gehegte Idee umzusetzten und den Z-Uno als universelles Z-Wave Gerät einzusetzen.
Zum Hintergrund, ich verwende eine handvoll Funkthermometer um Temperaturen und Feuchtigkeiten auf einem Arduino UNO zu sammeln und weiterzuverarbeiten. Das Sammeln der Daten aus dem 433MHz Funkkanal der Thermometer ist ein eigenes Thema. Hier will ich nur von der Einbindung in z-wave Mesh berichten.
Der Z-Uno ist ein programmierbarer MIkroprozessor mit z-wave stack.
Will sagen, er ist ein frei programmierbares z-wave Geräte. Er kann also Schalter, Aktor, Sensor oder alles gleichzeitig sein. Bis zu 10 separate Kanäle sind verfügbar.
In meinem Fall ist der Z-Uno ein 8-kanaliges Thermometer.
EInbindung
Die Einbindung in homee erfolgt als z-Wave ‘Anderes Gerät’ wie gewohnt über einen Schalter auf der Platine.
Je nachdem, welche Funktionen man dem Z-Uno einprogrammiert hat erscheint er als Gerät mit mehreren Schaltern, Dimmern, oder Sensoren.
Anzeige
Das sieht bei mir so aus:
und so:
Abgesehen von der etwas unschönen Warnung ‘kein Geräteprofil’ ist alles da wo es ein sollte.
Nutzung
Was soll ich sagen, es werden halt die Temperaturen angezeigt.
Da ich alle Freiheiten bei der Datenübetragung an homee habe und die Arduino-Zentrale per Netzteil versorgt wird, kann ich mit beliebiger Frequenz Temperaturwerte übermitteln.
Derzeit tue ich dass alle 5 Minuten oder bei mehr als 0.3°C Änderung.
Sinn und Zweck
Nun, abgesehen von der Herausforderung, was ist der Sinn und Zweck all der Arbeit anstelle eines kommerziellen z-Wave Thermometers.
Acht z-Wave Thermometer (potenziell auch mehr) würden mich im Laden 300-500€ kosten.
Meine Funkthermometer kosten 12€ und halten 2-3 Jahre mit 2xAAA. Sie liefern dabei Werte im Minutentakt. Da kommt kein z-Wave Gerät mit.
Ich kann die Daten vor der Übermittlung an homee manipulieren, z.B. die absolute Feuchte anstatt der relativen Feuchte übermitteln. Ich kann die Daten korrigieren/kalibrieren.
Ich kann weitere virtuelle Messwerte hinzufügen, z.B. gleitende Mittelwerte oder Temperaturdifferenzen, die ich wiederum als Trigger in homee verwenden kann.
Ich habe alle Temperaturdaten an einem zentralen Gerät. Ich finde das übersichtlich, aber das ist Geschmackssache.
Ich kann (und werde) einen 10-Kanal Schalter für meine Gartenbewässerung programmieren.
Auch hier wieder alles in einem z-Wave Gerät. Die Alternative wären 5 Stück 2-Kanal Relais z.B. von Fibaro.
Nachteile
Es war es eine Menge Arbeit.
Der Z-Uno ist keine völlig ausgereifte Plattform für Programmierer. Der Compiler nervt in vielerlei Hinsicht.
Das betrifft gar nicht so sehr den z-Wave Teil - der ist kinderleicht.
Ich hatte meinen ersten 4-Kanal Schalter nach 10 Minuten inkludiert. Natürlich rein virtuell, da wurde nichts wirklich geschaltet, sondern nur Dioden auf dem Z-Uno an und ausgeschaltet.
Nein, schwierig wurde es erst als ich anfing ernsthaften C++ Code zu hinterlegen.
Aber es hat geklappt und ich bin happy.
Ein Wort zum Einstieg in die Z-Uno Programmierung
Nicht alle Arduino IDEs funktionieren. Ich verwende jetzt 1.8.5.
Wenn mann sie installiert hat, sollte man diesem Tutorial folgen: