FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: FHEM-User22 am 28 Februar 2016, 11:47:57

Titel: Z-Wave Bewegungsmelder
Beitrag von: FHEM-User22 am 28 Februar 2016, 11:47:57
Hallo,
ich bräuchte mal einen Anstupser, ich versuche mich seit gestern an einem FGMS001.

Wie kann ich damit ganz einfach eine Lampe bei Bewegung schalten? Ich weiss, das sind Grundlagen, aber mir fehlt einfach der Anfang.

ein list ZWave_SENSOR_BINARY_3
bringt Folgendes:
Internals:
   CFGFN
   DEF        f712869a 3
   IODev      ZWDongle_1
   LASTInputDev ZWDongle_1
   MSGCNT     12
   NAME       ZWave_SENSOR_BINARY_3
   NR         148
   STATE      wakeupInterval 86400 01
   TYPE       ZWave
   ZWDongle_1_MSGCNT 12
   ZWDongle_1_RAWMSG 0004000303200100
   ZWDongle_1_TIME 2016-02-28 09:46:40
   homeId     f712869a
   isWakeUp   1
   nodeIdHex  03
   Helper:
     Dblog:
       Basicset:
         Mydblog:
           TIME       1456649200.07663
           VALUE      00
   Readings:
     2016-02-27 15:18:38   CMD             ZW_APPLICATION_UPDATE
     2016-02-27 15:19:18   UNPARSED        ASSOCIATION 0485030205
     2016-02-27 15:19:17   assocGroup_1    Max 5 Nodes ZWDongle_1
     2016-02-27 15:19:18   assocGroup_2    Max 5 Nodes
     2016-02-27 15:19:19   assocGroup_3    Max 1 Nodes
     2016-02-27 15:18:47   assocGroups     3
     2016-02-28 09:46:40   basicSet        00
     2016-02-27 11:08:48   battery         100 %
     2016-02-27 15:18:47   configAmbientIlluminationLevelAbove83 1000
     2016-02-27 15:18:47   configAmbientIlluminationLevelBelow82 100
     2016-02-27 15:18:48   configBASICOFFCommandFrameValue 0
     2016-02-27 15:18:49   configBASICONCommandFrameValue 255
     2016-02-27 15:18:50   configBasicCommandClassFrames12 BASICONAndBASICOFFCommandFrames0
     2016-02-27 15:18:51   configIlluminationReportThreshold 200
     2016-02-27 15:18:52   configIlluminationReportsInterval 0
     2016-02-27 15:18:53   configIntervalOfTemperatureMeasuring 900
     2016-02-27 15:18:54   configLEDBrightness 50
     2016-02-27 15:18:55   configLEDIndicatingTamperAlarm LEDIndicatesTamperAlarm
     2016-02-27 15:18:57   configLEDSignalingMode LongBlinkThenShortBlinkLEDColour10
     2016-02-27 15:18:58   configMaximumTemperatureResultingInRed87 28
     2016-02-27 15:18:59   configMinimumTemperatureResultingIn86 18
     2016-02-27 15:19:00   configMotionAlarmCancellationDelay 30
     2016-02-27 15:19:01   configMotionSensorSBlindTime2 15
     2016-02-27 15:19:02   configMotionSensorSSensitivity 10
     2016-02-27 15:19:03   configNightDay  200
     2016-02-27 15:19:04   configPIRSensorOperatingMode PIRSensorAlwaysActive
     2016-02-27 15:19:05   configPIRSensorSPulseCounter 1
     2016-02-27 15:19:05   configPIRSensorSWindowTime 2
     2016-02-27 15:19:06   configTamperAlarmBroadcastMode TamperAlarmIsNotSentInBroadcast0
     2016-02-27 15:19:07   configTamperAlarmCancellationDelay 30
     2016-02-27 15:19:08   configTamperOperatingModes Tamper
     2016-02-27 15:19:09   configTamperSensitivity 15
     2016-02-27 15:19:11   configTemperatureOffset 0
     2016-02-27 15:19:12   configTemperatureReportThreshold 10
     2016-02-27 15:19:13   configTemperatureReportsInterval 0
     2016-02-27 15:19:17   model           FIBARO System FGMS001 Motion Sensor
     2016-02-27 15:19:17   modelConfig     fibaro/fgms.xml
     2016-02-27 15:19:17   modelId         010f-0800-1001
     2016-02-27 10:33:40   state           wakeupInterval 86400 01
     2016-02-27 15:19:20   transmit        OK
     2016-02-27 15:19:15   wakeupReport    interval 65535 target 1
Attributes:
   IODev      ZWDongle_1
   classes    SENSOR_BINARY WAKE_UP ASSOCIATION BATTERY MULTI_CMD CRC_16_ENCAP MANUFACTURER_SPECIFIC VERSION CONFIGURATION MULTI_CHANNEL_ASSOCIATION SENSOR_MULTILEVEL SENSOR_ALARM BASIC
   room       ZWave
   vclasses   1


Aber nun fehlt mir der Anfang.

Schönen Sonntag
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: tom44 am 23 März 2016, 21:30:31
Hast Du Dein Problem schon gelöst?
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: FHEM-User22 am 06 April 2016, 15:26:09
leider nein, bin keinen Schritt wieter.
Der Bewegungsmelder gefällt mir. Würde mich freuen, wenn ich ihn an FHEM benutzen könnte.

Gruß
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: marvin78 am 06 April 2016, 15:36:20
Auf die Idee gekommen, es im ZWave Bereich zu probieren?
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: FHEM-User22 am 06 April 2016, 15:53:17
Noch nicht,
ich dachte es wäre so was von blutigen Anfänger.....

Ich werds mal machen.

Dankeschön
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: FunkOdyssey am 06 April 2016, 15:56:00
Ich habe mein Homematic-Code mal schnell (und ungetestet) auf Z-Wave portiert.
Ich habe zwar auch ein Fibaro BM, aber den nicht in einer helligkeitsabhängigen Lichtsteuerung.
Notfalls nimmst du den Luminanz-Kram einfach raus.
Die Einschaltung einer Lampe könnte auch einfacher. Also "set lampe on". Aber ich habe den Rest einfach mal gelassen.

Probiere doch einfach mal:

define di_motion DOIF (\
## Bewegungsmelder ausgelöst\
[motionsensor:"open"] and\
## und wenn nicht sowieso hell genug ist.\
[?motionsensor:luminance] < 300 \
) \
(\
set lampe:FILTER=state!=on on-for-timer {(int(rand(3))+1)*60}\
)
attr di_motion do always


Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: digiart am 06 April 2016, 15:58:53
Ich hab bei mir den Bewegungsmelder zwar (noch) nicht mir dem Licht gekoppelt, aber ich ändere ein Dummy-Device für eine bestimmte Zeit. Den Code habe ich bei irgendeiner Anleitung für eine Alarmanlage gefunden:

Dummy:
define Bewegung_Fibaro dummy
attr Bewegung_Fibaro devStateIcon on.*:user_available@red off.*:user_unknown@grey

define FileLog_Bewegung_Fibaro FileLog /opt/fhem/log/Bewegung_Fibaro-%Y-%m.log Bewegung_Fibaro
attr FileLog_Bewegung_Fibaro logtype text


Zum Ändern des Dummy:
define check_Bewegung_Fibaro DOIF ([ZWave_SENSOR_BINARY_5:basicSet] eq "ff" ) ( set Bewegung_Fibaro on;; defmod reset_Bewegung_Fibaro at +00:05:00 set Bewegung_Fibaro off )


ZWave_SENSOR_BINARY_5 ist der Bewegungsmelder
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: tom44 am 06 April 2016, 19:14:53
Zitat von: FHEM-User22 am 28 Februar 2016, 11:47:57
Hallo,
ich bräuchte mal einen Anstupser, ich versuche mich seit gestern an einem FGMS001.
Wie kann ich damit ganz einfach eine Lampe bei Bewegung schalten? Ich weiss, das sind Grundlagen, aber mir fehlt einfach der Anfang.

Dafür kannst Du das Modul DOIF verwenden.
Beispiel:
define move.lamp.On DOIF ([21:00-05:45] and [sensor:state] eq "open")(set Lampe on-for-timer 120 ; set az dim 50)
Erläuterung:
In der Zeit von 21 - 5:45 Uhr wird geprüft, ob beim FGMS001 (ich habe ihn umbenannt in sensor) eine Bewegung vorliegt (Status OPEN). Wenn ja, wird die Lampe  für 120 Sekunden angeschaltet,  Gedimmt auf 50%)

Bitte gib uns Feedback, ob und wie du es geschafft hast  ;)
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: krikan am 06 April 2016, 20:02:52
HINWEIS: Die gleiche Frage wurde hier https://forum.fhem.de/index.php/topic,51862.0.html noch einmal gestellt. Dort finden sich auch Antworten.

Bitte solche Doppelpostings vermeiden. Threads können bspw. auch verschoben werden. Danke.

Gruß, Christian
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: FHEM-User22 am 08 April 2016, 15:05:23
Hallo,
ja, wollte ich vermeinden. Habe aber das Verschieben nicht gefunden.

Danke dennoch für Eure Hilfe.

define Z_TEST DOIF ([ZWave_SENSOR_BINARY_3:basicSet] eq "ff" ) (set St01 on-for-timer 10)

so klappt es erstmal. Nun noch die Dämmerungsfunktion finden...

Grüße
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: FunkOdyssey am 08 April 2016, 15:38:10
Ich hatte in meinen DOIF-Beispiel doch eine Prüfung auf den Luminanzwert drinne.
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: FHEM-User22 am 09 April 2016, 09:11:29
Zitat von: FunkOdyssey am 08 April 2016, 15:38:10
Ich hatte in meinen DOIF-Beispiel doch eine Prüfung auf den Luminanzwert drinne.

Stimmt,
ich finde aber in den Readings leine Luminanz, geht es dennoch?

Internals:
   CFGFN
   DEF        f712869a 3
   IODev      ZWDongle_1
   NAME       ZWave_SENSOR_BINARY_3
   NR         148
   STATE      wakeupInterval 86400 01
   TYPE       ZWave
   homeId     f712869a
   nodeIdHex  03
   Readings:
     2016-04-07 07:13:04   CMD             ZW_APPLICATION_UPDATE
     2016-02-27 15:19:18   UNPARSED        ASSOCIATION 0485030205
     2016-02-27 15:19:17   assocGroup_1    Max 5 Nodes ZWDongle_1
     2016-02-27 15:19:18   assocGroup_2    Max 5 Nodes
     2016-04-07 07:13:04   assocGroup_3    Max 1 Nodes
     2016-04-07 07:14:37   assocGroups     3
     2016-04-09 08:22:52   basicSet        00
     2016-02-27 11:08:48   battery         100 %
     2016-04-07 07:14:38   configAmbientIlluminationLevelAbove83 1000
     2016-04-07 07:14:39   configAmbientIlluminationLevelBelow82 100
     2016-04-07 07:14:40   configBASICOFFCommandFrameValue 0
     2016-04-07 07:14:41   configBASICONCommandFrameValue 255
     2016-04-07 07:14:42   configBasicCommandClassFrames12 BASICONAndBASICOFFCommandFrames0
     2016-04-07 07:14:43   configIlluminationReportThreshold 200
     2016-04-07 07:14:44   configIlluminationReportsInterval 0
     2016-04-07 07:14:45   configIntervalOfTemperatureMeasuring 900
     2016-04-07 07:14:47   configLEDBrightness 50
     2016-04-07 07:14:48   configLEDIndicatingTamperAlarm LEDIndicatesTamperAlarm
     2016-04-07 07:14:49   configLEDSignalingMode LongBlinkThenShortBlinkLEDColour10
     2016-04-07 07:14:50   configMaximumTemperatureResultingInRed87 28
     2016-04-07 07:14:51   configMinimumTemperatureResultingIn86 18
     2016-04-07 07:14:52   configMotionAlarmCancellationDelay 30
     2016-04-07 07:14:53   configMotionSensorSBlindTime2 15
     2016-04-07 07:14:54   configMotionSensorSSensitivity 10
     2016-04-07 07:14:55   configNightDay  200
     2016-04-07 07:14:56   configPIRSensorOperatingMode PIRSensorAlwaysActive
     2016-04-07 07:14:57   configPIRSensorSPulseCounter 1
     2016-04-07 07:14:58   configPIRSensorSWindowTime 2
     2016-04-07 07:15:00   configTamperAlarmBroadcastMode TamperAlarmIsNotSentInBroadcast0
     2016-04-07 07:15:01   configTamperAlarmCancellationDelay 30
     2016-04-07 07:15:02   configTamperOperatingModes Tamper
     2016-04-07 07:15:03   configTamperSensitivity 15
     2016-04-07 07:15:04   configTemperatureOffset 0
     2016-04-07 07:15:05   configTemperatureReportThreshold 10
     2016-04-07 07:15:06   configTemperatureReportsInterval 0
     2016-02-27 15:19:17   model           FIBARO System FGMS001 Motion Sensor
     2016-02-27 15:19:17   modelConfig     fibaro/fgms.xml
     2016-02-27 15:19:17   modelId         010f-0800-1001
     2016-02-27 10:33:40   state           wakeupInterval 86400 01
     2016-04-08 19:37:42   transmit        OK
     2016-04-08 19:37:40   wakeup          notification
     2016-02-27 15:19:15   wakeupReport    interval 65535 target 1
Attributes:
   IODev      ZWDongle_1
   classes    SENSOR_BINARY WAKE_UP ASSOCIATION BATTERY MULTI_CMD CRC_16_ENCAP MANUFACTURER_SPECIFIC VERSION CONFIGURATION MULTI_CHANNEL_ASSOCIATION SENSOR_MULTILEVEL SENSOR_ALARM BASIC
   room       ZWave
   vclasses   1
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: dferch am 09 April 2016, 09:17:55
Hi,

ich habe den Bewegungsmelder auch und verwende ihn im Zusammenspiel mit verschiedenen Lampen. Wichtig ist das Reading basicSet - da steht drin, ob eine Bewegung erkannt wurde:

00 => noMotion
ff => MotionDetected

Das kannst Du mit einem Notify abfangen und dann die Lampe schalten. Du kannst noch den min. Interval für einen Motion-Event einstellen - das steht normalerweise auf 30 Sekunden.

Wenn Du jetzt bei Bewegungserkennung eine Lampe schalten möchtest und die soll anbleiben, bis für eine Zeit x keine Bewegung mehr erkannt wurde, musst Du depmod verwenden. Ich kann Dir ggf. mal ein Beispiel von mir posten - falls Du das noch brauchst.

Viele Grüße,
David
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: krikan am 09 April 2016, 09:52:29
Zitat von: FHEM-User22 am 09 April 2016, 09:11:29
Stimmt,
ich finde aber in den Readings leine Luminanz, geht es dennoch?
Weil Du den Controller noch nicht in die Assogroup 3 des Sensors aufgenommen hast. Genau das hatte ich Dir hier https://forum.fhem.de/index.php/topic,51862.msg436014.html#msg436014 in Deinem anderen Thread mit der gleichen Frage gepostet. Jetzt erkennst Du, warum Doppelpostings nicht gerne gesehen sind.  :)

Gruß, Christian
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: FHEM-User22 am 09 April 2016, 09:53:53
Zitat von: dferch am 09 April 2016, 09:17:55

Wenn Du jetzt bei Bewegungserkennung eine Lampe schalten möchtest und die soll anbleiben, bis für eine Zeit x keine Bewegung mehr erkannt wurde, musst Du depmod verwenden. Ich kann Dir ggf. mal ein Beispiel von mir posten - falls Du das noch brauchst.

Viele Grüße,
David

Hallo David,

Ja gerne.

Viele Grüße
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: GeZi3560 am 25 Mai 2016, 11:16:31
Zitat von: dferch am 09 April 2016, 09:17:55

Wenn Du jetzt bei Bewegungserkennung eine Lampe schalten möchtest und die soll anbleiben, bis für eine Zeit x keine Bewegung mehr erkannt wurde, musst Du depmod verwenden. Ich kann Dir ggf. mal ein Beispiel von mir posten - falls Du das noch brauchst.

Viele Grüße,
David

Hi David,

an dem Beispiel hätte ich auch Interesse.

Gruss Gerd
Titel: Antw:Z-Wave Bewegungsmelder
Beitrag von: DeeSPe am 25 Mai 2016, 13:33:45
Also ich habe auch mehrere Wochen ausgiebigen Testens gebraucht um auf ein für mich zufriedenstellendes Ergebnis zu kommen.
Letzten Endes habe ich dann für jeden Bewegungsmelder eine eigene Funktion in das Modul 99_myUtils.pm geschrieben und dann nur die Notifies diese Funktionen aufrufen lassen.
Ich schalte die Lichter über Lichtszenen (ist einfacher im Nachhinein zu verändern) und nutze zusätzlich noch den Tageslichtwert aus dem Twilight Modul. Somit kann ich zu verschiedenen Dämmerungsstufen verschiedene Lichtszenen starten. Sobald alle Bewohner schlafen gegangen sind und ein Sensor erkennt Bewegung wird die Nachtbeleuchtung eingeschaltet.
Das sieht dann etwa so aus:

Daemmerung = Tageslichtwert aus Twilight Modul
wz_Lichter = alle entsprechenden Lichter als structure
wz_LS = Lichtszene aller entsprechenden Lichter mit Modul LightScene

In die 99_myUtils.pm folgende Funktion:
sub wzBewegungLicht($)
{
        my ($event) = @_;
my $licht = ReadingsVal("Daemmerung","light",7);
my $lichter = Value("wz_Lichter");

# Wenn Bewegung erkannt (Sensor offen)
if ($event eq "open")
{
# Wenn das at zum Ausschalten der Raumlichter definiert wurde, wird es hier gelöscht
                # damit das Licht an bleibt sobald wieder Bewegung erkannt wurde
if (defined $defs{wz_Bewegungsmelder_Licht_aus})
{
fhem ("delete wz_Bewegungsmelder_Licht_aus");
}
# Wenn es anfängt zu dämmern und die Raumlichter ausgeschaltet sind wird die entsprechende LightScene gesetzt
# (falls vorher schon Licht eingeschaltet war, muss es ja nicht erneut/anders eingeschaltet werden)
if ($licht < 6 && $lichter eq "off" )
{
                        # Nachtlicht wenn alle Bewohner schlafen
if (ReadingsVal("rgr_Residents","state","home") eq "gotosleep")
{
fhem ("set wz_LS scene Nacht");
}
                        # Beginn der Dämmerung
elsif ($licht < 6 && $licht > 3)
{
fhem ("set wz_LS scene viel");
}
                        # mittlere Dämmerung
elsif ($licht > 2 && $licht < 5)
{
fhem ("set wz_LS scene mittel");
}
                        # es ist nun richtig dunkel
elsif ($licht < 3)
{
fhem ("set wz_LS scene wenig");
}
}
}
# Wenn keine Bewegung mehr erkannt (Sensor geschlossen)
elsif ($event eq "closed")
{
# Wenn noch Lichter eingeschaltet sind (könnten ja auch manuell ausgeschaltet worden sein)
if ($lichter ne "off")
{
# Setzen des at um die Lichter über eine Lichtszene in 15 min auszuschalten,
# statt dessen könnte auch das structure ausgeschaltet werden
fhem ("define wz_Bewegungsmelder_Licht_aus at +00:15:00 set wz_LS scene off");
}
}
}


Definieren des Notify:
define wz_Sensor_Bewegung notify wz_Sensor:(open.*|closed.*) { wzBewegungLicht($EVENT) }

Ist doch recht komplex geworden, ich hoffe ihr versteht es und könnt es für euch benutzen. Wie gesagt, diese Funktion ist durch viele Wochen probieren entstanden.

Gruß
Dan

P.S. Bin kein Perl Coder und habe das nur so gut es ging für mich umgesetzt. Bitte schlagt mich nicht gleich wenn die Funktion nicht perfekter Code sein sollte.