Howto - zentrales Beschattungssteuerungsprogramm zBSP (per zPNP)
Moderator: Co-Administratoren
-
- Beiträge: 48
- Registriert: 07.01.2017, 19:19
- Hat sich bedankt: 16 Mal
- Danksagung erhalten: 2 Mal
Re: Howto - zentrales Beschattungssteuerungsprogramm zBSP (per zPNP)
Hi zusammen,
nach Umzug habe ich nun Fenster mit 2 Flügeln. Alle haben aber nur einen Rollladen davor.
Nun habe ich den Umstand dass der BROLL : "Rollladen Fenster Abstellraum" heißt und die beiden SWDO-I heißen "Fenster Abstellraum Links" und "Fenster Abstellraum Rechts".
Ich möchte das der Rollladen offen bleibt, wenn einer der beiden offen/gekippt ist.
Ich sehe aber aktuell nur die Möglichkeit für jedes Fenster eine Systemvariable anzulegen, damit diese dann im zBSP genutzt werden kann.
Hat jemand zufällig eine andere Idee? Ich habe schon an das Replace gedacht und einen SWDO-I "Fenster Abstellraum " nennen und den anderen "Fenster Abstellraum Zusatz" und dann das " Zusatz" gegen ein Leerzeichen Replacen, denke aber bei 2 gefundenen Aktoren wird es da zu Problemen kommen.
Grüße
nach Umzug habe ich nun Fenster mit 2 Flügeln. Alle haben aber nur einen Rollladen davor.
Nun habe ich den Umstand dass der BROLL : "Rollladen Fenster Abstellraum" heißt und die beiden SWDO-I heißen "Fenster Abstellraum Links" und "Fenster Abstellraum Rechts".
Ich möchte das der Rollladen offen bleibt, wenn einer der beiden offen/gekippt ist.
Ich sehe aber aktuell nur die Möglichkeit für jedes Fenster eine Systemvariable anzulegen, damit diese dann im zBSP genutzt werden kann.
Hat jemand zufällig eine andere Idee? Ich habe schon an das Replace gedacht und einen SWDO-I "Fenster Abstellraum " nennen und den anderen "Fenster Abstellraum Zusatz" und dann das " Zusatz" gegen ein Leerzeichen Replacen, denke aber bei 2 gefundenen Aktoren wird es da zu Problemen kommen.
Grüße
-
- Beiträge: 10660
- Registriert: 21.09.2012, 08:09
- System: CCU
- Wohnort: Stuttgart
- Hat sich bedankt: 321 Mal
- Danksagung erhalten: 501 Mal
Re: Howto - zentrales Beschattungssteuerungsprogramm zBSP (per zPNP)
Was spricht denn dagegen, beide Fenstersensoren in einer Systemvariablen per Programm miteinander zu verknüpfen?
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.
-
- Beiträge: 48
- Registriert: 07.01.2017, 19:19
- Hat sich bedankt: 16 Mal
- Danksagung erhalten: 2 Mal
Re: Howto - zentrales Beschattungssteuerungsprogramm zBSP (per zPNP)
Naja, der Umstand 20 neue Programme und 20 Sysvariablen anzulegen
Vll. ist auch der innere Monk Schuld...
War mir halt nicht sicher wie man es noch lösen könnte.
Vll. ist auch der innere Monk Schuld...
War mir halt nicht sicher wie man es noch lösen könnte.
-
- Beiträge: 10660
- Registriert: 21.09.2012, 08:09
- System: CCU
- Wohnort: Stuttgart
- Hat sich bedankt: 321 Mal
- Danksagung erhalten: 501 Mal
Re: Howto - zentrales Beschattungssteuerungsprogramm zBSP (per zPNP)
Sprich, du hast 20 Rollläden vor 20 doppelflügeligen Fenstern mit insgesamt 40 Sensoren?
Es gibt da leider keine andere Lösung, weil dann ggf. irgendwann jemand kommt und sagt, dass er neben zwei Fenstersensoren auch noch einen Drehgriffsensor mit berücksichtigt haben möchte. Sprich, das Skript braucht einfach gewisse Rahmenbedingungen, die man erfüllen muss. Und dafür habe ich ja neben den Sensornamen auch noch die Möglichkeit zur Einbindung einer Systemvariablen geschaffen, so dass man hier eine Art Zwischenfilter implementieren kann. Wie man diesen dann bildet, bleibt jedem selbst überlassen.
Es gibt da leider keine andere Lösung, weil dann ggf. irgendwann jemand kommt und sagt, dass er neben zwei Fenstersensoren auch noch einen Drehgriffsensor mit berücksichtigt haben möchte. Sprich, das Skript braucht einfach gewisse Rahmenbedingungen, die man erfüllen muss. Und dafür habe ich ja neben den Sensornamen auch noch die Möglichkeit zur Einbindung einer Systemvariablen geschaffen, so dass man hier eine Art Zwischenfilter implementieren kann. Wie man diesen dann bildet, bleibt jedem selbst überlassen.
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.
-
- Beiträge: 48
- Registriert: 07.01.2017, 19:19
- Hat sich bedankt: 16 Mal
- Danksagung erhalten: 2 Mal
Re: Howto - zentrales Beschattungssteuerungsprogramm zBSP (per zPNP)
Moin moin,
eine Sache hätte ich noch.
Ich habe überall die Sensoren für den verdeckten Einbau installiert SWDO-I.
Die haben nun 2 Kanäle:
Kanal 0 und Kanal 1.
Der Status befindet sich in Kanal 1. Im zBSP wird wahrscheinlich nur der Kanal 0 ausgewertet und daher fährt der zugehörige Rollladen immer hoch, obwohl ich OPEN100 als Parameter angelegt habe.
Mit einer SV funktioniert OPEN100. Ist es möglich die SWDO-I noch mit einzubauen?
Falls du Infos und Tester brauchst steh ich gern zur Verfügung
Grüße
eine Sache hätte ich noch.
Ich habe überall die Sensoren für den verdeckten Einbau installiert SWDO-I.
Die haben nun 2 Kanäle:
Kanal 0 und Kanal 1.
Der Status befindet sich in Kanal 1. Im zBSP wird wahrscheinlich nur der Kanal 0 ausgewertet und daher fährt der zugehörige Rollladen immer hoch, obwohl ich OPEN100 als Parameter angelegt habe.
Mit einer SV funktioniert OPEN100. Ist es möglich die SWDO-I noch mit einzubauen?
Falls du Infos und Tester brauchst steh ich gern zur Verfügung
Grüße
-
- Beiträge: 10660
- Registriert: 21.09.2012, 08:09
- System: CCU
- Wohnort: Stuttgart
- Hat sich bedankt: 321 Mal
- Danksagung erhalten: 501 Mal
Re: Howto - zentrales Beschattungssteuerungsprogramm zBSP (per zPNP)
Nein, im zBSS werden alle Kanäle eines Fenster- oder Drehgriffsensors durchlaufen, um nach einem STATE-Wert zu suchen.
Lass mal bitte das folgende Skript für deinen SWDO-I (unter closureName den Namen des Fenstersensors eingeben) durchlaufen und poste die Ausgabe:
Code: Alles auswählen
string closureName = "OG Büro Fenster";
string closureChannelsList = ""; string closureState = ""; string closureChannel;
closureChannelsList = (dom.GetObject(ID_DEVICES).Get(closureName)).Channels().EnumUsedNames();
closureState = "";
foreach(closureChannel, closureChannelsList){
if((dom.GetObject(ID_CHANNELS).Get(closureChannel)).DPByHssDP("STATE")){
closureState = (dom.GetObject(ID_CHANNELS).Get(closureChannel)).DPByHssDP("STATE").Value().ToString()#" "#closureState;
}
closureState = closureState.StrValueByIndex(" ", 0);
}
WriteLine(closureState);
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.
-
- Beiträge: 48
- Registriert: 07.01.2017, 19:19
- Hat sich bedankt: 16 Mal
- Danksagung erhalten: 2 Mal
Re: Howto - zentrales Beschattungssteuerungsprogramm zBSP (per zPNP)
Den State wertet das zBSP korrekt aus (1), wird aber trotzdem runter gefahren, hier nochmal die Parameter für den Aufruf:
Hier nochmal die Abfrage:
Ausgabe: 1
Code: Alles auswählen
! Beschattungsgeräte steuern durch Aufruf des zBSP
! +++++ Liste der Beschattungsgeräte, Behanghöhen bzw. Ausfahrwerte und Korrekturwert für geöffnete bzw. gekippte Fenster und Türen +++++
string blindsList = "Rollladen Fenster Abstellraum|0|OPEN100|ne\t
Rollladen Fenster Arbeitszimmer|0|OPEN100|ne";
! +++++ Globale Werte für Behanghöhe bzw. Ausfahrwert, Korrekturwert, Bediensperre und Auslösebedingung +++++
string blindsGlobalValues = "SAFE"; !"" zur Berücksichtigung der lokalen Werte in "blindsList"
! +++++ Zusatzinformation, die als Push-Nachricht versendet werden soll +++++
string blindsMessage = "--"; ! "--" zur Unterdrückung von Push-Nachrichten
! +++++ Namen der für die Beschattung benötigten Systemvariablen gem. zBSS +++++
string svBlindsList = "CCU SV Beschattung Liste"; ! Liste der Beschattungsgeräte, obligatorisch
string svBlindsGlobalValues = "CCU SV Beschattung Globalwerte"; ! Globale Werte für Behanghöhen, Ausfahrwerte und Offsets, optional
string svBlindsMessage = "CCU SV Beschattung Nachricht"; ! Beschattung Nachricht, optional
! +++++ Name des zentralen Programms zur Beschattungssteuerung zBSP +++++
string zBSP = "CCU PRG Beschattung";
! #####################################################################
! ##### ab hier bitte keine weiteren Einstellungen mehr vornehmen #####
! #####################################################################
(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svBlindsList)).State(blindsList);
(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svBlindsGlobalValues)).State(blindsGlobalValues);
(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svBlindsMessage)).State(blindsMessage);
! +++++ zBSP ausführen +++++
(dom.GetObject(ID_PROGRAMS).Get(zBSP)).ProgramExecute();
Code: Alles auswählen
string closureName = "Fenster Arbeitszimmer";
string closureChannelsList = ""; string closureState = ""; string closureChannel;
closureChannelsList = (dom.GetObject(ID_DEVICES).Get(closureName)).Channels().EnumUsedNames();
closureState = "";
foreach(closureChannel, closureChannelsList){
if((dom.GetObject(ID_CHANNELS).Get(closureChannel)).DPByHssDP("STATE")){
closureState = (dom.GetObject(ID_CHANNELS).Get(closureChannel)).DPByHssDP("STATE").Value().ToString()#" "#closureState;
}
closureState = closureState.StrValueByIndex(" ", 0);
}
WriteLine(closureState);
-
- Beiträge: 10660
- Registriert: 21.09.2012, 08:09
- System: CCU
- Wohnort: Stuttgart
- Hat sich bedankt: 321 Mal
- Danksagung erhalten: 501 Mal
Re: Howto - zentrales Beschattungssteuerungsprogramm zBSP (per zPNP)
Das ist echt blöd, dass eQ-3 da so extrem inkonsistent ist. Bei den Drehgriffsensoren steht der State 2 für geöffnet, 1 für gekippt und 0 für geschlossen. Bei einigen Fenstersensoren steht true für geöffnet und false für geschlossen. Und bei wieder anderen Fenstersensoren scheint nun 1 für geöffnet und 0 für geschlossen zu stehen.
Kannst du es mal mit der angefügten Version 3.6.5 testen und berichten. Danke.
Kannst du es mal mit der angefügten Version 3.6.5 testen und berichten. Danke.
- Dateianhänge
-
- zBSS365.hsc
- (36.56 KiB) 44-mal heruntergeladen
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.
-
- Beiträge: 9681
- Registriert: 27.04.2020, 10:34
- System: CCU
- Hat sich bedankt: 700 Mal
- Danksagung erhalten: 1626 Mal
Re: Howto - zentrales Beschattungssteuerungsprogramm zBSP (per zPNP)
Es gilt im allgemeinen:
True = 1
False = 0
Passt also soweit
LG, Michael.
Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.
Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++
Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.
Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++