Prototyp Z-Wave Doppler-Radar im Eigenbau

Advertisements

Die Zuverlassigkeit meiner Fibaro Motion Sensoren und deren fatale Umweltbilanz auf Grund des hohen Batterieverbrauchs haben mich dazu bewegt nach Alternativen zu suchen. Da es keine geeigneten fertigen Sensoren gibt, habe ich einen eigenen Z-Wave Doppler-Radar Prototyp gebaut und getestet. In diesem Artikel erkläre ich die Technik dahinter und was bei der Entwicklung eigener Sensoren zu beachten ist. Aber zunächst einmal zu meinen Beweggründen und Bewegungsmeldern im Allgemeinen.

Prototyp Radar-Sensor

Prototyp Radar-Sensor

Was spricht gegen den Motion Sensor?

Eigentlich kaum etwas und ich will das Produkt auch nicht schlecht machen. Der Fibaro Motion Sensor ist auf Grund seiner vielfältigen Funktionen und des markanten Augen-Designs ein tolles Gerät um über Bewegungen Szenen zu starten. Weiterhin um Temperatur-, Lux- und Erschütterungswerte an das Home Center 2 zu senden. Allerdings ist er batteriebetrieben, damit langfristig ein vermeidbarer Kostenfaktor und auch nicht gerade ressourcenschonend und umweltverträglich. Das mag von jemandem der ein Smart Home betreibt etwas merkwürdig klingen, aber ich versuche solche Geräte zu vermeiden.

Jedoch ist die Zuverlässigkeit der Bewegungserkennung das größere „Problem“. So werden bei mir immer wieder Phantombewegungen erkannt und damit Szenen gestartet. Wochenlanges suchen nach der besten Position und den perfekten Einstellungen blieben erfolglos.

Nun ist es nicht weiter dramatisch, wenn durch diese Phantombewegungen mal eine Lichtszene gestartet wird. Ein unzuverlässiger Bewegungsmelder in der Alarmanlage ist da schon deutlich unangenehmer.

Fairerwense muss ich sagen, dass es sich dabei nicht um ein spezifisches Problem des Fibaro Motion Sensors handelt, sondern ein technologiebedingtes ist. Der Motion Sonsor ist – wie die meisten – ein Passiv-Infrarot-Bewegungsmelder. Um die Problematik dahinter zu verstehen ein kurzer Exkurs in die Tiefen der Technik.

Funktionsweise eines PIR-Bewegungsmelders

Jeder Körper, dessen Temperatur über dem absoluten Nullpunkt (-273,5°C) liegt, gibt elektromagnetische Strahlung ab. Diese Strahlung liegt bei unserer Körpertemperatur im Infrarotbereich. Der Pyrosensor des Bewegungsmelders reagiert sobald sich die Infrarot-Wärmestrahlung in seinem Erfassungsbereich verändert. Der daraus resultierende Spannungssprung wird in einen elektrischen Impuls gewandelt und weitergereicht. So einfach funktioniert ein PIR-Bewegungsmelder (PIR = passive infrared).

Vereinfacht ausgedrückt reagiert der Bewegungsmelder auf Veränderungen der Temperatur in seinem Sichtfeld. Und genau diese wird dem Motion Sensor zum Verhängnis. Für die Auslösung ausreichende Temperaturschwankungen treten nämlich auch bei Sonneneinstrahlung auf. Und so werden bei mir scheinbar willkürlich Szenen gestartet, sobald die Sonne scheint.

In reinen Alarmsystem werden auch PIR Sensoren eingesetzt und dort sind solche Fehlauslösungen deutlich seltener. Die dort eingesetzten Sensoren unterscheiden sich jedoch im Auslöseverhalten und sind so konstruiert, dass sie erst bei Auslösung mehrerer Impulse den Alarm auslösen. Auch den Fibaro Motion Sensor kann man so konfigurieren, was allerdings dazu führt, dass die Auslösung deutlich verspätet oder gar nicht stattfindet.

PIR ist also die falsche Technologie um Licht und Alarm mit einem Gerät zu bedienen.

Suche nach Alternativen

Meine Recherche begann an der Eingabemaske meiner favorisierten Suchmaschine. Die Suche nach „Z-Wave Bewegungsmelder“ ergab die üblichen Verdächtigen von Fibaro, Aeotec und die fernöstlichen Alternativen von Neo Coolcam (die man übrigens bei Aliexpress zeitweise für 12$ bestellen kann). Vom Betrieb mit Batterien – der Aeotec Sensor lässt sich auch per USB betreiben – mal abgesehen, alles Geräte mit PIR Technologie und den bekannten Problemen.

Technologisch möglich, aber nicht mit Z-Wave

Alternativ zu den klassischen PIR-Meldern lassen sich Bewegungen auch mit Untraschall- und Radarwellen erfassen. Diese sind wesentlich genauer als die PIR Melder und benötigen auch keinen Sichtkontakt zu sich bewegenden Objekt. Nur leider gibt es keine Z-Wave Geräte damit.

Der Prototyp

Wenn der Markt solche Geräte nicht hergibt, dann baue ich mir selbst eines. Klingt kompliziert, so schlimm ist es aber nicht. Mit ein wenig technischem Verständnis und Geschick sollte das jeder hinbekommen. Als Basis meiner Bemühungen diente zunächst meine Arduino Umgebung die ich von früheren Projekten noch in der Schublade hatte. Ardiuno ist eine Plattform bestehend aus Hard- und Software, die es ohne Studium der Ingenieurswissenschaften ermöglicht, Mikrocontroller-Schaltungen zu bauen. Vom einfachen Temperatursensor bis hin zum Roboter lässt sich damit alles erstellen. Dieser t3n Artikel bietet einen guten Überblick zu Arduino und den Möglichkeiten.

Z-Wave.Me Z-UNO Board für Arduino

Ein für das Projekt entscheidenes Bauteil ist der Z-Uno von Z-Wave.Me. Mit diesem kleinen Gerät ist es möglich auf Arduino basierende Schaltungen Z-Wave fähig zu machen. In meinem Fall also die Bewegungserkennung an das Home Center 2 zu übertragen. Damit hatte ich alle Voraussetzungen um mir meinen eigenen Z-Wave Bewegungsmelder zu bauen.

Z-Wave.Me Z-Uno

Z-Wave.Me Z-Uno

Sensor Technologie Suche

Ich begab mich auf die Suche nach einer geeigneten Sensortechnologie um Bewegungen zuverlässiger erkennen zu können als mit der PIR Variante. Es gibt unzählige Seiten im Netz die sich mit Arduino und den passenden Sensoren beschäftigen. So fiel die Wahl schnell auf Radar Technologie, denn für die Erkennung ist kein Blickkontakt notwendig und es ist eine ausreichende Anzahl Sensoren verfügbar um zu testen.

Doppler-Radar Sensor

Zum Einsatz kam ein Doppler-Radar Sensor mit dem klangvollen Namen RCWL-0516 der für unter einem Euro/Stück bei Amazon verfügbar war. Ich baue mir ein Z-Wave Doppler-Radar. Schnell noch ein paar Beinchen angelötet und schon konnte es losgehen.

RCWL-0516

RCWL-0516 Doppler-Radar Sensor

Der Versuchsaufbau

Die Schaltung war schnell aufgebaut und auch die benötigte Software – Sketch genannt – ist sehr übersichtlich. Beides habe ich hier mal dargestellt. Wenn Interesse an Details besteht, kann ich das Ganze gern noch ausführlich erläutern.

Z-Uno mit Doppler-Radar Sensor

Z-Uno mit Doppler-Radar Sensor

Software

int RADAR = 9;
int val;

// set up channel
ZUNO_SETUP_CHANNELS(
  ZUNO_SENSOR_BINARY(ZUNO_SENSOR_BINARY_TYPE_MOTION, getterMotion)                          
);

void setup() 
{
  Serial.begin();
  pinMode(RADAR, INPUT);
}

void loop() 
{

  val = digitalRead(RADAR);
  Serial.println(val);

  zunoSendReport(1);
  
delay(1000);
};


word getterMotion() {
    return val;
};

Nach dem erfolgreichen Aufbau und der Programmierung des Mikrocontrollers auf dem Z-Uno habe ich den Prototypen über den bekannten Include-Prozess in mein Home Center inkludiert. Die Dur die vorherige Klassifizierung als Motion Sensor wurde das Gerät auch gleich als solches eingerichtet.

Z-Uno Motionsensor im HC2

Z-Uno Motionsensor im HC2

Einsatz des Z-Wave Doppler-Radar

Ich habe den Z-Wave Doppler-Radar in der Küche unsichtbar verbaut und seit ein paar im Betrieb. Von der Präzision und Zuverlässigkeit der Erkennung bin ich begeistert. Betritt man den Raum, schaltet die Lichtszene sofort. Verweilt man eine Zeit im Raum erkennt der Sensor zuverlässig kleinste Bewegungen. Ein völlig anderes Gefühl als mit dem Motion Sensor. Auch konnte ich die Verzögerung bis zum Ausschalten des Lichtes deutlich verkürzen.

Herausforderungen

Z-Wave Netzwerk

Bei der Erstellung solcher Prototypen gibt es einige Dinge zu beachten um das eigene Z-Wave Netzwerk nicht übermäßig zu belasten. So gibt die Z-Wave Plus Spezifikation vor, dass passive Statusänderungen maximal alle 30 Sekunden an den Gateway gesendet werden dürfen.

Mein Prototyp ist jedoch so realisiert, dass der Status des Sensors sekündlich abgefragt und gesendet wird. Bei einer größeren Anzahl Geräte wird dies unweigerlich zu Problemen im Netzwerk führen. Lösen kann man dies mittels Software. Die Einschränkung der Übertragung auf tatsächliche Statusänderungen würde schon ausreichen. Hochwertigere Sensoren lösen dies mit Interrupts die dafür sorgen, dass nur die Veränderung an den Microcontroller gesendet werden. Interrupts haben noch weitere Vorteile und gerade bei komplexeren Schaltungen mit mehreren Sensoren sind sie zwingend erforderlich.

Empfindlichkeit

Anders als Infrarotsensoren machen Radarstrahlen auch vor Wänden keinen Halt. So konnte ich anfangs auch im angrenzenden Wohnzimmer, durch eine 30 cm Wand hindurch, das  Licht in der Küche durch meine Anwesenheit einschalten. Das ist natürlich nicht Sinn der Sache.

Der RCWL-0615 lässt sich nur durch das einlöten eines Widerstandes drosseln. Die Berechnung des erforderlichen Widerstandes ist allerdings ein wenig Glückssache, da die Serienstreuung der günstigen Sensoren unheimlich hoch ist. Ich habe insgesamt 5 der kleinen Dinger getestet. Ohne Drosselung war von 2 bis 9 Metern Erkennungsradius alles dabei. Hochwertigere Sensoren bieten hier mehr Möglichkeiten.

Frequenzbereich des Sensors

Es gibt klare Regeln für die Verwendung bestimmter Frequenzbereichen. In Deutschland sorgt die Bundesnetzagentur die Einhaltung dieser Regeln. Ein Blick in den Frequenznutzungsplan hilft bei der Frage, ob ein Sensor für den Einsatz zugelassen ist. In meinem Fall habe ich widersprüchliche Angaben zu Frequenz des Sensors gefunden. Mal ist die Rede von 3,181 GHz und mal sollen es 5,8 GHz sein. Leider fehlt mir das technische Equipment um es tatsächlich feststellen zu können. Jedoch ist bei der Nutzung von Frequenzen immer die Einhaltung der gesetzlichen Regelung zu prüfen.

Fazit

In aller erster Linie macht es unheimlich Spaß so eine Arduino Schaltung mit dem Z-Uno zu realiseren und das Ergebnis bis ins Home Center übertragen zu können. Nun ist der Versuchsaufbau keine hochkomplexe Lösung, aber es fühlt sich gut an und offenbart ganz neue Möglichkeiten im Smart Home.

Der Z-Wave Doppler-Radar wird in dieser Form nicht dauerhaft zum Einsatz kommen, denn die Unsicherheit bezüglich der Frequenzen, der Aufwand zur Einstellung der Empfindlichkeit und der fehlende Interrupt am Sensor bringen jede Menge Potenzial für Ärger und Probleme mit sich. Aber ich werde nach einem geeigneten Sensor suchen.

Wie ist es bei Dir?

Hast Du Aufgaben im Smart Home die mit den vorhandenen Aktoren und Sensoren nicht hinreichend oder gar nicht realisiert werden können? Im Forum findest Du einen Thread zu diesem Artikel. Und die Kommentarfunktion freut sich auch, wenn sie benutzt wird.

 

Bildquellen

  • Prototyp Radar-Sensor: Bastian
  • Prototyp: Bastian
Posted in Sonstiges and tagged .

15 Comments

  1. Tolle Sache, ich habe meine 7 Motion Sensoren auch über Trafo laufen und die Sendezeit auf 1 Sekunde gestellt habe ich schon seit 1,5 Jahren so.
    Merke nix am Netzwerk ok ab und zu dauert es 2 Sek wenn ich einen Taster drücke bis das Licht angeht.
    Das mit den Radar ist noch geiler aber wie machst du das mit der Dunkelheitserkennung.
    So wie du schreibst geht ja das Licht immer an wenn du den Raum betrittst auch am Tag.
    Aber sowas würde mich auch Interessieren, mach mache mal einen Bericht in deinen Forum wäre Toll.

    • Hallo Martin,

      das Ganze ist im Status Prototyp, also noch nicht bis ins letzte Detail durchdacht. So habe ich beispielsweise noch keinen Lichtsensor eingebunden, wie Du richtig erkannt hast.

      Grüße
      Bastian

  2. Hi Bastian,

    ist ja faszinierend, was man alles selber bauen kann.
    In der Tat habe ich noch einen Arduino ungenutzt rumliegen. Aber der Preis vom Z-Uno ist nicht gerade ein Schnäppchen:-)
    Wobei anhängig vom benötigten Arduino ist es auch nicht teurer als der Motionsensor von Fibaro.
    Was mich zur ersten Frage führt.
    Es gibt so viele verschiedenen Arduinos. Welchen hast Du verwendet bzw. auf welchen müsste es funktionieren?

    Du schreibst, dass der Aufwand bzgl. der Empfindlichkeit nicht ganz ohne ist. Hast Du jetzt nciht einen passenden Widerstand gefunden und kannst diesen „in Serie“ verwenden?
    Und last but not least: Müssten sich die Interrupts nicht programmieren lassen? Dann müsstest Du keinen neuen Sensor suchen.
    Mit der Frequenz ist zwar unschön, aber nicht entscheidend oder?

    Auf jeden Fall ein klasse Projekt. Die Vorteile eines Radarsensors sind nicht von der Hand zu weisen.

    Grüße
    Mr.Coffee

    • Hallo Mr. Coffee,

      ich finde es auch sehr spannend und wenn ich mehrere Sensoren in einen Sketch packen kann, dann rechnet es sich auch schnell.
      Der Arduino den ich hier habe ich ein Uno bzw. eine Kopie davon. Den nutze ich aber nur um meine Sketches zu testen. Wenn diese fertig sind, dann läuft das Ganze ohne Arduino nur auf dem Z-Uno.

      Die Anpassung mit dem richtigen Widerstand war ein kleiner Kraftakt. Meine Geschicke mit dem Lötkolben sind ein bisschen eingerostet. Aber ja, ich könnte den mit einem geeigneten Gehäuse jetzt dauerhaft betreiben und den Interrupt per Software simulieren.

      Bei den Frequenzen bin ich vorsichtig. Die Jungs von der Bundesnetzagentur kennen da keinen Spaß 😉

      Grüße
      Bastian

  3. Sehr Interresantes Projekt, ich frage mich nur wie schaut es aus mit der Radarstrahlung, ist diese für den Menschen schädlich?

    • Hallo Frank,

      dazu habe ich bisher keine Recherchen angestellt, aber danke für die Erinnerung! Ein wichtiger und vor dem Einsatz solcher Lösungen definitv zu prüfender Faktor!

      Grüße
      Bastian

  4. Hi in die Runde,

    der starke Sensor beschäftigt mich immernoch:-)

    Ich frage mich gerade, ob man es ähnlich auch mit einem Fibaro Universalsensor und dem Radar nachbauen könnte?
    Ich besitze allerdings keinen Universalsensor und verstehe das mit dem „potenzialfrei“ auch noch nicht so richtig:-)

    Aber vielleicht habt ihr ja eine Meinung dazu.

    Grüße

    • Hallo Mr. Coffee,

      das scheint Dich wirklich zu beschäftigen. Freut mich.
      Das würde mit dem Universalsensor dann funktionieren, wenn Du es hinbekommst mit der Auslösung einen potentialfreien Kontakt zu schalten. Das könntest Du beispielweise mit einem Optokoppler erreichen (liebe Fachleute, bitte nicht schlagen 😉 gefährliches Halbwissen). Ein potentialfreier Kontakt ist ein Kontakt bei dem keine Spannung anliegt, sich also zum Beispiel beim schalten nur der Widerstand verändert.

      Grüße
      Bastian

  5. Hallo Bastian,
    mit großem Interesse lese ich Deinen Beitrag. Ich bin schon lange auf der Suche nach einem Bewegungsmelder, mit dem man den Bewegungsabstand einstellen kann. Zum Hintergrund: ich möchte in meiner Küche unter die Hängeschränke eine Philips Hue Lichtleiste bauen und diese mit einem Bewegungssensor, der unter den Hängeschrank gebaut ist ein- und wieder ausschalten. Mein Problem ist, dass alle gebräuchlichen Sensoren eine zu große Reichweite haben und das Licht einschaltet, wenn ich nur in der Nähe des Küchenschrankes bin. Ich habe auch schon mit dem Gedanken Universalsensor gespielt, aber noch keine richtige Lösung gefunden.
    Vielleicht läßt sich die Reichweite Deines Sensors auch mit einem Potenziometer steuern? Ich hoffe, Du bleibst noch ein wenig an dem Projekt und kannst uns Deine Erfahrungen weitergeben. Mit Arduino habe ich noch nicht gebastelt, aber meine Sonos_Raspi-Steuerung aus Deinem Blog funktioniert zur vollsten Zufriedenheit, und ich bin überglücklich mit dieser Lösung.
    Vielen Dank für Deine Arbeit hier.
    Salve

    • Hallo Salve,

      freut mich, dass der Beitrag auf Interesse stößt.
      Das mit dem Potenziometer ist eine gute Idee, jedoch wird bei dem von mir eingesetzten Sensor der Widerstand direkt auf der kleinen Platine verlötet. Da ist einfach nicht genug Platz für etwas anders. Aktuell bin ich an einer interessanten Sache dran die dafür evtl. besser geeignet ist. Da ich dafür einen ganzen Haufen C++ programmieren muss und nicht weiß, ob mein Know-How dafür reicht will ich aber noch nicht zu viel verraten. 😉

      Grüße
      Bastian

  6. Hallo zusammen,
    Interessant, ich habe seit 30 Jahren einen Radarschalter von Conrad in der Haustür verbaut. Schaltet über Zeituhr das Hauseingangslicht. Ohne Probleme.
    Nun habe ich diese Idee aufgreifend, wieder vor, einen Conrad-Radar-Schalter mit Poti (!) und den Fibaro-Uni-Schalter zu nehmen, um eventuell deine schöne Idee zu verwirklichen. Schätze etwa 80-90€.
    Gruß bieer

  7. Hallo, erst einmal herzlichen Dank für die Anregungen! Habe jetzt erfolgreich mithilfe des Fibaro Universalsensors einen Radarbewegungssensor zustande gebracht und zwar mit folgenden weiteren Komponenten:
    5 Radarsensoren gab es für knapp 8 Euro bei Amazon: https://www.amazon.de/gp/product/B07CQVFRG2/ref=oh_aui_detailpage_o04_s00?ie=UTF8&psc=1
    Die liefern als Ausgangssignal 3,3 Volt. Bei Conrad Electronics hat man mir erklärt, einen Optokoppler mit einer so geringen Spannung betreiben zu wollen, sei so gut wie nicht machbar. Ich solle eine Relaiskarte nehmen, die eine 12 Volt Fremdspannung benötigen würde. Habe daraufhin ein solche für knapp 3 Euro erworben. (Auf der Bedienungsanleitung der Relaiskarte „zum selber Löten“ findet sich der Hinweis http://www.kemo-electronic.de, ist wohl der Hersteller oder eine Vertriebsfirma der Relaiskarte). Habe zwar auch 10 Optokoppler für 0,84 Euro einschließlich Porto über Amazon bestellt, die angeblich mit 3,3 Volt betrieben werden können, dauert aber bis Ende Januar, bis die eintreffen.
    Als Stromquelle habe ich einen ausrangierten 12 Volt DC Trafo eingesetzt.

    Das Relais schaltet recht laut. Meine Frau hat sich schon beschwert. Aber es funktioniert 🙂 Trafokosten hatte ich keine, aber die Gesamtkosten sollten auch bei gekauftem Trafo bei unter 50 Euro liegen.

    Gruß, Norbert

    • Hallo Norbert,

      das klingt, abgesehen von lauten Relais, doch super.
      Freut mich, dass ich Anregungen liefern konnte.

      Grüße
      Bastian

  8. Hallo Bastian,

    inzwischen habe ich auch eine sinnvolle Anwendung gefunden und zwar entlang eines langgestreckten Kellerflurs mit abgehängter Decke: Es können mehrere Radarsensoren mit der Relaiskarte (Optokoppler) verbunden werden, um darüber den Fibaro – Universalsensor auszulösen. Setze in meinem Fall nun zwei Radarsensoren ein und zwar an jeder Flurstirnseite einen. Die ganze Installation befindet sich unsichtbar hinter der abgehängten Decke, was zugleich das Geräuschproblem beim Schalten des Relais löst. Musste noch oberhalb der Sensoren elektrisch isolieren und darüber ein Blech auflegen, damit nicht vom Stockwerk darüber ausgelöst wird.

    Hatte bisher zwei Sensoren eingesetzt, die auf diese Weise auf einen „Radar“ Bewegungssensor reduziert werden konnten.

    Nochmals herzlichen Dank für Deinen tollen Blog! Werde bei meinen nächsten Amazoneinkäufen von dem Amazon – Link aus starten, der unter der Rubrik „Unterstützung“ zu finden ist 🙂

    Ich wünsche Dir ein schönes Jahr 2019, Norbert

    • Hallo Norbert,

      vielen Dank für das Update. Freut mich, dass mein Beitrag gleich in die Tat umgesetzt wird!

      Ich wünsche natürlich auch ein frohes Neues Jahr!
      Grüße
      Bastian

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Ich akzeptiere