Und Verknüpfung 1&1=1, 1&0=0, 0&1=0, 0&0=0

Begonnen von Hakter51, 20 März 2015, 22:16:50

Vorheriges Thema - Nächstes Thema

Hakter51

Hallo Forum,

Ich habe eine Frage an die FHEM Gurus. Ich möchte Simple "und", "oder", "Xor" Verknüpfungen verwenden.

Im jetzigen Fall zwei Dummy Statusse mit einem anderen Dummy Status zu verknüpfen.

z.B.
"Bewohner_1.imHaus" (1) oder "Bewohner_2.imHaus" (1)                := "Bewohner.imHaus" (set 1)   
"Bewohner_1.nichtimHaus" (0) und "Bewohner_2.nichtimHaus" (0)  := "Bewohner.imHaus" (set 0)   

Momentan verwende ich 2 notify einen zum setzen und einen zum rücksetzen. Leider klappt das rücksetzen nicht.

Set on
notify_Bewohner_on notify (Bewohner_1:on.*|Bewohner_2:on.*) set Hausbewohner on

Set off
notify_Bewohner_off notify (Bewohner_1:off.*|Bewohner_2:off.*) set Hausbewohner off

Was muss ich anstelle des " | " eintragen?

Leider habe ich noch keinen entsprechenden Forum Beitrag gefunden. Falz es doch einen gibt Bitte Posten.

Danke
Pollin AVR-NET-IO mit Ethersex => Ethersex 4 x 1-Wire, 1 x DHT22, 1 x LCD, 1 x ADC (LDR)
Raspberry PI mit FHEM5.6 Phillips Hue, Phillips, PIONEER AVR VSX2021, Eltako Funk  (EnOcean), MAX!, Fritz 546e

der-Lolo

Es geht sicher auch anders - aber ich habe es mit einer structure gelöst, schau mal in die comandref.
Eleganter wäre es das Residents Modul einzusetzen und auf <1 zu triggern...

gero

Vielleicht so etwas in der Art?:

notify_Bewohner_off notify (Bewohner_1:off.*|Bewohner_2:off.*) {if((ReadingsVal("Bewohner_1","state","off") eq "off") && (ReadingsVal("Bewohner_2","state","off") eq "off")) {fhem("set Hausbewohner off ")}}

(ungetestet)

Gruß,
Gero

Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor

Hakter51

Hallo gero,

Ich komme aus der SPS-Schiene da muss ich mir immer aus setzen und rücksetzen meine wege finden. Leider schweint wohl dein weg der einzigste mit notify zu sein. .. sehr komplex für so eine simple sache.

Ich versuche es mal mit  RESIDENTS.

Danke

Pollin AVR-NET-IO mit Ethersex => Ethersex 4 x 1-Wire, 1 x DHT22, 1 x LCD, 1 x ADC (LDR)
Raspberry PI mit FHEM5.6 Phillips Hue, Phillips, PIONEER AVR VSX2021, Eltako Funk  (EnOcean), MAX!, Fritz 546e

KernSani

RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

Hakter51

#5
Hallo,

To KernSani:  Danke KernSani. werde ich gleich auch Probieren


To der-Lolo: Ich habe mir eben Residents bzw. auch ROOMMATE angeschaut und eingefügt.  Ich kann nur sagen!!  da hat sich ja einer sehr gute gedanken gemacht. Genau das benötige ich :)
Personen anlegen, Wecker anlegen, Status abfragen  ....  cool


Pollin AVR-NET-IO mit Ethersex => Ethersex 4 x 1-Wire, 1 x DHT22, 1 x LCD, 1 x ADC (LDR)
Raspberry PI mit FHEM5.6 Phillips Hue, Phillips, PIONEER AVR VSX2021, Eltako Funk  (EnOcean), MAX!, Fritz 546e

der-Lolo

Ja, Residents und die zugehörigen untermodule sind gut gelungen - structure hätte dir auch geholfen - bei FHEM führen oft verscheidene wege zum ziel, die kunst ist es erstmal die einfachen zu finden ;-)

Hakter51

#7
Zitat von: der-Lolo am 20 März 2015, 23:05:40
die kunst ist es erstmal die einfachen zu finden ;-)

Wie war wie war. Leider ist es bei allen Programmiersprachen so ;)

Pollin AVR-NET-IO mit Ethersex => Ethersex 4 x 1-Wire, 1 x DHT22, 1 x LCD, 1 x ADC (LDR)
Raspberry PI mit FHEM5.6 Phillips Hue, Phillips, PIONEER AVR VSX2021, Eltako Funk  (EnOcean), MAX!, Fritz 546e

Bennemannc

Hallo,

ändere doch bitte die Überschrift - das gibt es so nicht!
1&1=1, 1&0=0, 0&1=0, 1&1=0 - geht nicht, weil 1&1 zweimal definiert ist und mit unterschiedlichem  Ergebnis.
1&1=1, 1&0=0, 0&1=0, 0&0=1 - das geht, ist exclusiv und
1&1=0, 1&0=1, 0&1=1, 0&0=0 - das geht, ist exclusiv oder

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF

Hakter51

Zitat von: Bennemannc am 20 März 2015, 23:50:55
Hallo,

ändere doch bitte die Überschrift - das gibt es so nicht!
1&1=1, 1&0=0, 0&1=0, 1&1=0 - geht nicht, weil 1&1 zweimal definiert ist und mit unterschiedlichem  Ergebnis.
1&1=1, 1&0=0, 0&1=0, 0&0=1 - das geht, ist exclusiv und
1&1=0, 1&0=1, 0&1=1, 0&0=0 - das geht, ist exclusiv oder

Gruß Christoph

stimmt sorry. habs geändert
Pollin AVR-NET-IO mit Ethersex => Ethersex 4 x 1-Wire, 1 x DHT22, 1 x LCD, 1 x ADC (LDR)
Raspberry PI mit FHEM5.6 Phillips Hue, Phillips, PIONEER AVR VSX2021, Eltako Funk  (EnOcean), MAX!, Fritz 546e

Hakter51

Lösung

Bewohner_0 Dummy //  Gemeinsamer Dummy
Bewohner_1 Dummy //
Bewohner_2 Dummy //
Bewohner_3 Dummy //

([Bewohner_1] eq "off" and [Bewohner_2] eq "off" and [Bewohner_3] eq "off") (
set Arbeitstag_Hausbewohner off)
DOELSEIF ([Bewohner_1] eq "on")(set Bewohner_0 on)
DOELSEIF ([Bewohner_2] eq "on")(set Bewohner_0 on)
DOELSEIF ([Bewohner_3] eq "on")(set Bewohner_0 on)
...


([Bewohner_1] eq "on") Permanente Abfrage
([Bewohner_2:?on]) Event Abfrage auch möglich
Pollin AVR-NET-IO mit Ethersex => Ethersex 4 x 1-Wire, 1 x DHT22, 1 x LCD, 1 x ADC (LDR)
Raspberry PI mit FHEM5.6 Phillips Hue, Phillips, PIONEER AVR VSX2021, Eltako Funk  (EnOcean), MAX!, Fritz 546e

der-Lolo

Wenn Du Residents einsetzt brauchst du doch keinen gemeinsamen Dummy, im Residents gibt es doch ein entsprechendes reading...