Zeit & Astroabhängige Lichtszenenschaltung

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Luemmelpaeppi
Beiträge: 21
Registriert: 20. Mär 2020 09:46
Answers: 0

Re: Zeit & Astroabhängige Lichtszenenschaltung

Beitrag von Luemmelpaeppi »

Scheint, soweit zu funktionieren, bin mir nicht sicher, ob time cron richtig geschrieben ist.

Aber habe jetzt noch ein anderes anliegen, wollte eine Farbige Hue Lampe integrieren. Die Item Color hat ja 3 Werte, muss das dann als String geschrieben werden??

Darkwin101
Beiträge: 424
Registriert: 6. Mär 2019 11:19
Answers: 14

Re: Zeit & Astroabhängige Lichtszenenschaltung

Beitrag von Darkwin101 »

Flur_Hinten_Farbe.sendCommand("0,90,100") das kannst du so schreiben der letzte Wert ist die Helligkeit.(Ja als Text)
Ich mache es immer so das ich mir die Farbe einstelle die ich haben möchte und dann ins Log schauen wie die Werte aussehen.
Time cron "20 0 19 * * ? *" steht für 19:00:20 Uhr und das täglich so als Beispiel wenn es falsch wäre müsste er aber in den Logs meckern.

Luemmelpaeppi
Beiträge: 21
Registriert: 20. Mär 2020 09:46
Answers: 0

Re: Zeit & Astroabhängige Lichtszenenschaltung

Beitrag von Luemmelpaeppi »

Code: Alles auswählen

var Number Dimmer_Global = 100
var Number ColorTemp_Global = 63
var Number Color_Global = "30,64,100"
var Number Dimmer_Gedimmt = 31  // Variablen an Anfang der Datei setzen
var Number ColorTemp_Gedimmt = 62
var Number Color_Gedimmt = "30,64,31"
var Number Dimmer_Hell = 100
var Number ColorTemp_Hell = 62
var Number Color_Hell = "30,64,100"
var Number Dimmer_Nachtlicht = 1
var Number ColorTemp_Nachtlicht = 85
var Number Color_Nachtlicht = "27,100,1"

rule "Automation Dimming Sunrise" // erster Zeitpunkt jeder Zeitpunkt bekommt eigene Rule mit entsprechenden Helligkeitswerten
when
        Channel 'astro:sun:local:rise#event' triggered Start
then
        Dimmer_Global = Dimmer_Gedimmt
        ColorTemp_Global = ColorTemp_Gedimmt
        Color_Global = Color_Gedimmt
        
end

rule "Automation Dimming Day"
when 
        Time cron "1 0 10 * * ?"
then
        Dimmer_Global = Dimmer_Hell
        ColorTemp_Global = ColorTemp_Hell
        Color_Global = Color_Hell
end

rule "Automation Dimming Sunset"
when 
        Channel 'astro:sun:local:set#event' triggered Start
then
        Dimmer_Global = Dimmer_Gedimmt
        ColorTemp_Global = ColorTemp_Gedimmt
        Color_Global = Color_Gedimmt
end

rule "Automation Dimming Night"
when 
        Time cron "1 0 23 * * ?"
then
        Dimmer_Global = Dimmer_Nachtlicht
        ColorTemp_Global = ColorTemp_Nachtlicht
        Color_Global = Color_Nachtlicht
end

rule "Automation Light Ankleide"
when 
        Item MotionSensorPresence_Ankleide changed to ON
then
        if(Automation_Ankleide.state == ON)
        {
        GLight_Dimmer_Ankleide.sendCommand(Dimmer_Global)
        GLight_ColorTemp_Ankleide.sendCommand(ColorTemp_Global)
        }
end

rule "Automation Light Bad"
when 
        Item MotionSensorPresence_Bad changed to ON
then
        if(Automation_Bad.state == ON)
        {
        GLight_ColorTemp_Bad.sendCommand(ColorTemp_Global)        
        GLight_Color_Bad.sendCommand(Color_Global)
        }
end

rule "Automation Light Flur"
when 
        Item MotionSensorPresence_Flur changed to ON
then
        if(Automation_Flur.state == ON)
        {
        GLight_Dimmer_Flur.sendCommand(Dimmer_Global)
        GLight_ColorTemp_Flur.sendCommand(ColorTemp_Global)
        }
end
Er Spuckt mir jetzt folgenden Fehler aus.
[ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Automation Light Bad': An error occurred during the script execution: Could not invoke method: org.eclipse.smarthome.model.script.actions.BusEvent.sendCommand(org.eclipse.smarthome.core.items.Item,java.lang.Number) on instance: null

Sollte ich die "3" Werte der Farbigen Lampe einzeln erfassen und über

Code: Alles auswählen

MyColorItem.sendCommand(new HSBType(new DecimalType(123), new PercentType(45), new PercentType(67))) 
es versuchen aus zugeben?

Darkwin101
Beiträge: 424
Registriert: 6. Mär 2019 11:19
Answers: 14

Re: Zeit & Astroabhängige Lichtszenenschaltung

Beitrag von Darkwin101 »

var Number Color_Nachtlicht = "27,100,1" das ist keine Number sondern Text
also var Color_Nachtlicht = "27,100,1"

Luemmelpaeppi
Beiträge: 21
Registriert: 20. Mär 2020 09:46
Answers: 0

Re: Zeit & Astroabhängige Lichtszenenschaltung

Beitrag von Luemmelpaeppi »

Vielen Lieben Dank! Soweit sieht das jetzt alles gut aus.

Luemmelpaeppi
Beiträge: 21
Registriert: 20. Mär 2020 09:46
Answers: 0

Re: Zeit & Astroabhängige Lichtszenenschaltung

Beitrag von Luemmelpaeppi »

Hallöchen, darf ich mich noch einmal zu Wort melden?

Bin jetzt gerade dabei Lichtszenen auf Schalter zu programmieren.

Dahinter steckt, das ich gerne auf Knopfdruck die "Szenen" ändern möchte. Habe mir gedacht, das über ein Zählwerk zu realisieren. Habe das vor 3 Jahren schon mal soweit programmiert gehabt und hat soweit auch funktioniert. Habe aber leider die Codes nicht mehr und so Wirkich die Foren wie ich sie früher gefunden habe, kann ich nicht mehr aufspüren.

Der Code lehnt sich an eure vorherige Realisierung an, komme aber nicht so wirklich mit dem Zählwerk und den variablen weiter

Vielleicht könnt Ihr mir helfen oder Tipps geben =)

Code: Alles auswählen

var Number Dimmer_HmIP_Global = 100
var Number ColorTemp_HmIP_Global = 64
var String Color_HmIP_Global = "30,64,100"
var Number Counter_Switch01

//Systemstart
rule "Startup"
when
    System started
then
    Counter_Switch01 = 0
end

// Homematic IP Schaltersteuerung

// HmIP Schalter Terasse Taster 1
rule "HmIP Schalter Terasse Taster 1 (EIN)"
when
    Channel 'homematic:HmIP-WRC6:3014F711A0001F5A4993FBA7:000B5A49A07A4E:1#BUTTON' triggered SHORT_PRESSED
then
    Light11_ColorTemp.sendCommand(ColorTemp_HmIP_Global)
    Light11_Color.sendCommand(Color_HmIP_Global)    
end

rule "HmIP Schalter Terasse Taster 1 (AUS)"
when
    Channel 'homematic:HmIP-WRC6:3014F711A0001F5A4993FBA7:000B5A49A07A4E:1#BUTTON' triggered LONG_PRESSED
then
    Light11_Toggle.sendCommand(OFF)
    Counter_Switch01 = 0     
end

rule "HmIP Schalter Terasse Taster 1 (Zählwerk)"
when
    Channel 'homematic:HmIP-WRC6:3014F711A0001F5A4993FBA7:000B5A49A07A4E:1#BUTTON' triggered DOUBLE_PRESSED
then
    Counter_Switch01 = Counter_Switch01 + 1
end

rule "HmIP Schalter Terasse Taster 1 (Szenenschaltung)"
when
    Counter_Switch01 received update
then
    if(Counter_Switch01.state == 1)
    {
    Light11_ColorTemp.sendCommand(67)        
    Light11_Color.sendCommand(11,87,78)
    }
end

Luemmelpaeppi
Beiträge: 21
Registriert: 20. Mär 2020 09:46
Answers: 0

Re: Zeit & Astroabhängige Lichtszenenschaltung

Beitrag von Luemmelpaeppi »

Bekomme folgende Fehlermeldung: 2020-03-21 17:24:14.509 [WARN ] [el.core.internal.ModelRepositoryImpl] - Configuration model 'Homematic.rules' has errors, therefore ignoring it: [42,5]: no viable alternative at input 'Counter_Switch01'

Darkwin101
Beiträge: 424
Registriert: 6. Mär 2019 11:19
Answers: 14

Re: Zeit & Astroabhängige Lichtszenenschaltung

Beitrag von Darkwin101 »

if(Counter_Switch01.state == 1) einen Variable hat kein state also if(Counter_Switch01 == 1)

Luemmelpaeppi
Beiträge: 21
Registriert: 20. Mär 2020 09:46
Answers: 0

Re: Zeit & Astroabhängige Lichtszenenschaltung

Beitrag von Luemmelpaeppi »

Ach ja, stimmt. Manchmal sind die Dinge so banal.


2020-03-21 17:45:39.932 [WARN ] [el.core.internal.ModelRepositoryImpl] - Configuration model 'Homematic.rules' has errors, therefore ignoring it: [34,5]: no viable alternative at input 'Counter_Switch01'

In Zeile 34 ist auch noch ein Fehler, kann jetzt aber nicht ausmachen, was für einer =(

Benutzeravatar
peter-pan
Beiträge: 2758
Registriert: 28. Nov 2018 12:03
Answers: 30
Wohnort: Schwäbisch Gmünd

Re: Zeit & Astroabhängige Lichtszenenschaltung

Beitrag von peter-pan »

...eigentlich ist das ja kein Fehler, sondern eine Warnung.
Wenn man den Inhalt deiner Zeile 34 wüsste, wäre evtl. eine Problemerkennung einfacher.

Falls es diese Zeile sein sollte:

Code: Alles auswählen

Counter_Switch01 received update
liegt es wohl daran, dass eine Variable kein Trigger für eine Regel sein kann (zumindest ist mir das nicht bekannt).
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian

Antworten