Autor Thema: Licht Anwesenheitssimulation durch "erlerntes" Muster aus der Vergangenheit  (Gelesen 1009 mal)

Offline enno

  • Full Member
  • ***
  • Beiträge: 489
Ich versuche mich gerade an einer "Anwesenheitssimulation". Einstieg ist das Wiki: https://wiki.fhem.de/wiki/Anwesenheitssimulation.

Empfohlen wird https://wiki.fhem.de/wiki/RandomTimer. Ich würde aber FHEM gerne die Auswahl selbst überlassen. Sprich "Statistik". Ich stelle mir vor, FHEM speichert das tägliche Licht an und ausschalten der Bewohner. Bei Abwesenheit greift FHEM auf diese gespeicherten Muster zurück und schaltet einen beliebigen gespeicherten Tag durch.

Hat so etwas einer von Euch schon mal umgesetzt oder eine Idee wie man das elegant umsetzten könnte?

Gruss
  Enno
Einfacher FHEM Anwender auf Intel®NUC

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19466
irgendwo gibt es einen thread mit einem konzept wie man das mit einer lightscene umsetzen kann.

- lightscene mit allen lampen die beteiligt sein sollen
- per notify auf änderungen in den lampen neue szene mit der aktuellen zeit als namen speichern
- beim abspielen anhand der namen der gespeicherten szenen  das ganze an ungefähr den ursprünglichen zeiten wieder herstellen

FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline Prof. Dr. Peter Henning

  • Developer
  • Hero Member
  • ****
  • Beiträge: 6878
Ich starte im Mai ein neues Projekt zur Mustererkennung im SmartHome mittels neuronaler Netze.

LG

pah

Offline Christoph Morrison

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 898
  • Maintainer von 12 Modulen + holiday-Files
    • Private Website
Maintainer von:
holidays · 59_Twilight · Webcount · Lindy_HDMI_Swich · ALL3076 · ALL4027 · WEBIO · ALL4000T · WEBIO_12DIGITAL · Itach_Relay · VantagePro2 · WEBTHERM · Buienradar

Offline enno

  • Full Member
  • ***
  • Beiträge: 489
@justme1968: Danke für das Stichwort. Habe einiges mit lightscene gefunden. Waren aber alles Lösungen bei denen ich Muster vorgeben muss. Das wollte ich aber auch automatisch haben.

@pah: Das klingt gut. Melde dich wenn es was zu testen oder unterstützen gibt.

Gruss
  Enno
Einfacher FHEM Anwender auf Intel®NUC

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19466
warum vorgeben?

du speicherst zu zeitpunkt x den aktuellen zustand der gerade vorhanden ist ab.
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline enno

  • Full Member
  • ***
  • Beiträge: 489
du speicherst zu zeitpunkt x den aktuellen zustand der gerade vorhanden ist ab.
Das ist aber noch nicht ganz das was ich vorhabe. Ich hatte eher daran gedacht, dass in der Simulation ein Bewegungsmuster mit berücksichtigt wird. Bsp.:

Ich komme im Keller ins Haus:        - Licht im Keller geht an
Ich gehen ins Wohnzimmer:            - Licht im Wohnzimmer geht an, im Keller aus
Ich habe im Keller was vergessen:  -Licht im Keller geht noch mal an und wieder aus
Ich gehe zur Toilette:                       - Licht im WC geht an und nach X-Minuten wieder aus
usw.

Wenn ich das mit lightscene simulieren will, wird das  recht aufwendig... die Schritte diese Muster zu speichern wollte ich dem Rechner überlassen. Der Ansatz von pah geht vermutlich eher in die Richtung. Smart oder KI oder selbst lernenden.

Gruss
  Enno
Einfacher FHEM Anwender auf Intel®NUC

Offline Prof. Dr. Peter Henning

  • Developer
  • Hero Member
  • ****
  • Beiträge: 6878
Einer meiner Doktoranden hat gerade seine Arbeit über spatio-temporale Datenbanken die Ähnlichkeitsanalyse von Trajektorien abgechlossen. Das wird die Basis eines solchen Systems bilden - und ich fürchte, dass diese Forschung gezeigt hat, dass es mit weniger Aufwand nicht geht. Denn die zeitliche Dimension ist dabei wesentlich.

LG

pah
Zustimmung Zustimmung x 1 Liste anzeigen

Offline swsmily

  • Full Member
  • ***
  • Beiträge: 173
Das ist aber noch nicht ganz das was ich vorhabe. Ich hatte eher daran gedacht, dass in der Simulation ein Bewegungsmuster mit berücksichtigt wird. Bsp.:

Ich komme im Keller ins Haus:        - Licht im Keller geht an
Ich gehen ins Wohnzimmer:            - Licht im Wohnzimmer geht an, im Keller aus
Ich habe im Keller was vergessen:  -Licht im Keller geht noch mal an und wieder aus
Ich gehe zur Toilette:                       - Licht im WC geht an und nach X-Minuten wieder aus
usw.

Wenn ich das mit lightscene simulieren will, wird das  recht aufwendig... die Schritte diese Muster zu speichern wollte ich dem Rechner überlassen. Der Ansatz von pah geht vermutlich eher in die Richtung. Smart oder KI oder selbst lernenden.

Gruss
  Enno

Den gleichen Gedanken hatte ich auch schon mal. Meine Überlegung war, dass das Logfile der Bewegungsmelder von vor z.b. 7 Tagen ausgelesen wird und entsprechend wiederholt wird.
Nur leider fehlt es mir dabei bereits am Ansatz, wie ich ein Logfile auswerten und wieder verarbeiten könnte.

Offline enno

  • Full Member
  • ***
  • Beiträge: 489
@swsmily

Meine Idee war das mit einem DOIF oder Notify zu machen. Immer wenn ein Licht an oder aus, das als Reading mit Tag und Zeitangabe in DbLog speichern. Dann das ganze bei Bedarf abrufen und in der gleichen Reihenfolge "durchschalten".  Also gleiche Idee wie du hast nur nicht mit Logfile sondern SQL. Da ich aber Maschinenbauer und kein Informatiker bin, dauert das etwas. Die Daten in die Datenbank rein, kein Problem, das zurück lesen wird etwas komplizierter. Habe ich aber auch schon mal irgendwo gelesen, nur noch nicht verstanden ;)

Gruss
  Enno
Einfacher FHEM Anwender auf Intel®NUC

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19466
jetzt verwirrst du mich

nur noch mal so als hinweis: speichern und abrufen ist genau das was der LightScene vorschlag von oben macht.

kein grund für irgendwelche db klimmzüge sondern ganz einfacher einstieg um zu schauen ob du deine speicher und abruf logik hin bekommst. später auf db zu gehen geht dann immer noch wenn es aus irgend einem grund nötig sein sollte.
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline enno

  • Full Member
  • ***
  • Beiträge: 489
nur noch mal so als hinweis: speichern und abrufen ist genau das was der LightScene vorschlag von oben macht.
@justme1968
Das Wochenende wird lang (Schulferien), ich bin allein zu Haus da werde ich mal mit den Möglichkeiten "rumspielen" ohne strafende Blicke der Mitbewohner. Ich werde berichten. Zur Zeit lese ich die verschiedenen Ansätze, die ich gefunden habe. LighScene, Randomtimer, DOIF,

Alles noch begrenzt Smart aber vermutlich eine Übergangslösung bis zum "Projekt zur Mustererkennung im SmartHome mittels neuronaler Netze".

Gruss
  Enno
Einfacher FHEM Anwender auf Intel®NUC

Offline enno

  • Full Member
  • ***
  • Beiträge: 489
Den gleichen Gedanken hatte ich auch schon mal. Meine Überlegung war, dass das Logfile der Bewegungsmelder von vor z.b. 7 Tagen ausgelesen wird und entsprechend wiederholt wird.
Nur leider fehlt es mir dabei bereits am Ansatz, wie ich ein Logfile auswerten und wieder verarbeiten könnte.

Ich habe jetzt eine LightScene definiert, in der alle Lampen enthalten sind, die ich für die Simulation nutzen möchte.
Attributes:
   event-on-change-reading state
   followDevices 1
   lightSceneRestoreOnlyIfChanged 1
   showDeviceCurrentState 1

Mit einem DOIF erstelle ich bei jeder Änderung eine neue Scene gleichen Formats: 2019-01-30-Mittwoch-19-55-58

(["^LichtScene$:.state"]) (set LichtScene save {(strftime('%Y-%m-%d_%A_%H:%M:%S', localtime))} )
Soweit das Erstellen des Musters. Jetzt muss ich mir nur noch überlegen wie ich das ganze zum Steuern nutze....
Einfacher FHEM Anwender auf Intel®NUC

 

decade-submarginal