Unterstützung bei Rule für Beleuchtung

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

ThomasW
Beiträge: 33
Registriert: 9. Jan 2021 16:12
Answers: 1

Re: Unterstützung bei Rule für Beleuchtung

Beitrag von ThomasW »

Schön zu hören das es läuft.

ja das ausschalten geht tatsächlich nicht da hat sich in der else if ein Fehler eingeschlichen richtig wäre hier

Code: Alles auswählen

}else if(Shellie_Dimmer_KW_Gross_RelayBrightness.state != 0 && Shellie_Dimmer_KW_Klein_RelayBrightness.state != 0) { //Wenn KW Groß an ist und KW Klein an
         logInfo("Spotklein", "KW Klein aus")
        //hier KW Klein ausschalten und wen WW Klein aus ist Relay ausschalten
    }
und deine Rule für das syncronisierte dimmen sollte auch möglich sein mit einer kleinen klammer

Code: Alles auswählen

rule "spot klein ww synchron"

when 
    Item Shellie_Dimmer_WW_Gross_RelayBrightness changed 
then 
    if(Shellie_Dimmer_WW_Klein_RelayON.state == ON){
        logInfo("Spotklein", "WW synchron")
        Shellie_Dimmer_WW_Klein_RelayBrightness.sendCommand(Shellie_Dimmer_WW_Gross_RelayBrightness.state)
    }
end 
OH3 auf RPI4,
Heizungssteuerung: Fritz DECT,
Zigbee: Conbee2 über Phoscon-GW: Aqara Opple Schalter, Aqara Temperatursensoren, Aqara Fenstersensoren, Aqara Aktoren, IKEA Lichter
Astro Binding
DWDUnwetter Binding
OpenWeatherMap Binding
FritzBox TR 064 Binding
iRobot Binding
Telegramm Binding für Benachrichtigungen und Steuerung von unterwegs
Rolladensteuerung: Rademacher DuoFern über HTTP Binding

Benutzeravatar
udo1toni
Beiträge: 15269
Registriert: 11. Apr 2018 18:05
Answers: 245
Wohnort: Darmstadt

Re: Unterstützung bei Rule für Beleuchtung

Beitrag von udo1toni »

Frage zum Shelly Input: Könnte man den auch so konfigurieren, als wenn ein Schalter angeschlossen ist? Mit verbundenem Taster kämme dann beim Drücken ein ON und beim Loslassen ein OFF.
Der nächste Schritt wäre dann eine Rule in openHAB, die auswertet, wie lange der Taster gedrückt wurde. Ist die ON-Phase z.B. unter 150 Millisekunden, wäre es ein kurzer Tastendruck. dauert der Tastendruck länger, so wird der Dimmvorgang gestartet und gestoppt, sobald das OFF kommt.

Nicht ganz unwichtig ist in dem Zusammenhang natürlich, wie zuverlässig das Timing ausgewertet wird, das müsste man dann halt ausgiebig testen.
openHAB4.3.6 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

Backbe01
Beiträge: 123
Registriert: 19. Jul 2019 21:04
Answers: 0

Re: Unterstützung bei Rule für Beleuchtung

Beitrag von Backbe01 »

@ThomasW
Vielen Dank, ich habe schon nicht mehr daran geglaubt, aber jetzt läuft es genau so, wie es soll! Vielen Dank! Ich hoffe für mich, dass Du dich nicht erst seit deinem Registrierungsdatum mit OH befasst, echt Klasse dein Wissen! :lol:

@udo1toni
Ich bin mir sicher, du kannst da eine Rule aus dem Hut zaubern. Die Frage für mich ist, ob sich das lohnt. Wie auch du schreibst, könnte ich mir vorstellen, dass das Ganze immer Fehleranfälliger wird.

Mein Gedanke war jetzt eher: Im Paper UI gibts ja den Eintrag "Enable Switch events" so wie er jetzt läuft. Mein Gedanke war, ich brücke den Input 2 mit dem Input1(der derzeit nicht in Benutzung ist). Hier könnte ich dann leichter das ON/OFF Signal abgreifen. Noch komme ich relativ einfach an den Shelly2.5 ran. (Aber neugierig wäre ich schon, wie so eine Rule aussehen könnte, ich habe ja noch viele Taster :lol: :lol: )

Nochmals vielen Dank für Eure sehr freundliche und kompetente Unterstützung!!!!
OH 4.1.0M2 auf nuc in Docker

Benutzeravatar
udo1toni
Beiträge: 15269
Registriert: 11. Apr 2018 18:05
Answers: 245
Wohnort: Darmstadt

Re: Unterstützung bei Rule für Beleuchtung

Beitrag von udo1toni »

Die Rule sollte nicht all zu kompliziert sein. Für OH3 muss der createTimer Aufruf angepasst werden. Die Rule muss zwingend aus einer .rules-Datei heraus ausgeführt werden, weil die Timer-Variable zwingend eine globale Variable sein muss. Oder man baut die Rule in Java Script nach...

Code: Alles auswählen

var Timer tStart = null

rule "short of long press with stop"
when
    Item Taster received command
then
    if(receivedCommand == ON) {
        tStart?.cancel
        tStart = createTimer(now.plusMillis(150),[ |
            // long press started
                tStart = null
        ])
    } else {
        if(tStart !== null) {
            tStart.cancel
            tStart = null
            // short press
        } else {
            // long press stopped
        }
    }
end
openHAB4.3.6 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

Backbe01
Beiträge: 123
Registriert: 19. Jul 2019 21:04
Answers: 0

Re: Unterstützung bei Rule für Beleuchtung

Beitrag von Backbe01 »

letzte Frage..

ist dieser Text

Code: Alles auswählen

(Shellie_25_Relay2Input.receivedCommand == OFF)
oder lieber

Code: Alles auswählen

Shellie_25_Relay2Input changed from ON to OFF
für den Teil mit der Dimmung in Ordnung in dem Teil "Abbruchbedingung Schalter losgelassen"? Der Inputschalter ist immer OFF. Wenn des Steuersignal anliegt (Taster gedrückt) wechselt es so lange auf ON bis der Taster wieder losgelassen wird und wechselt wieder auf OFF.

Code: Alles auswählen

var i = 1 //als schalter ob heller oder dunkler
if (LEDstripe_EG_EsszimmerDH.state instanceof DecimalType) {
        percent = ((LEDstripe_EG_EsszimmerDH.state as DecimalType)/5).intValue * 5 //round to 5
        fade_Timer = createTimer(now.plusMillis(200)) [|
            LEDstripe_EG_EsszimmerDH.sendCommand(percent)
            if (percent < 5){ //Richtungswechsel
                i=0
            }else if (percent > 95){
                i=1
            }
            if (i == 1 ) { //runterdimmen
                percent = percent - 5
                fade_Timer.reschedule(now.plusMillis(200))
            }
            else if (i == 0){ //hochdimmen
                percent = percent + 5
                fade_Timer.reschedule(now.plusMillis(200))
            }
          //  if (/* Abbruchbedingung Schalter lossgelassen*/){
             //   fade_Timer.cancel
            //}
        ]
    }
OH 4.1.0M2 auf nuc in Docker

Antworten