Howto - zentrales Beschattungssteuerungsprogramm zBSP (per zPNP)

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

MartinBr
Beiträge: 393
Registriert: 25.01.2017, 10:51
Wohnort: Bei Berlin
Hat sich bedankt: 3 Mal
Danksagung erhalten: 8 Mal

Re: Howto - zentrale Beschattungssteuerung (zBSP) V1.2

Beitrag von MartinBr » 22.03.2019, 12:55

dtp hat geschrieben:
22.03.2019, 12:42
MartinBr hat geschrieben:
22.03.2019, 11:31
Du überprüftst ja anhand des TFK ob das Rollo oben ist und fährst dann dieses beim Status Oben nicht runter (-> Aussperrschutz).
Das trifft so nicht ganz zu. Anhand des TFK bzw. Fenster-Drehgriffsensors wird lediglich der Zustand des Fensters selbst (geschlossen, offen oder ggf. gekippt) überprüft. In Abhängigkeit dieses Zustand kann dann ein Offset definiert werden, auf den der Rollladen fährt. Also z.B. 0+20 % bei gekippten oder 0+100% bei offenem Fenster. Statt der Offset-Werte kann man auch mit absoluten Werten arbeiten. Wenn also bei offenem Fenster ein Offset von 100 % eingestellt ist, bedeutet das nichts anderes, als dass der Rollladen oben bleibt. Bei gekippten Fenster kann ein Offset sinnvoll sein zur Belüftung oder dergleichen. Der TFK bzw. Fenster-Drehgriffsensor hat also nichts mit dem aktuellen Zustand des Rollladen zu tun. Der wird aber auch vom Skript erfasst. Und zwar über den Rollladenaktor selbst. Das dient dann dazu, dass die Rollladenaktoren nur angesteuert werden, wenn es notwendig ist. Thema DC und Funkhygiene.
MartinBr hat geschrieben:
22.03.2019, 11:31
Kannst du dir auch folgende Situation vorstellen:
Das Rollo ist unten (z.B. Spät, Winter etc.) und die Bewohner wollen trotzdem mal auf die Terasse.
Natürlich. Ist ja nicht so abwegig. ;) Allerdings betätigen wir in dem Fall unsere Rollläden einfach manuell per Schaltwippe oder per Sprachsteuerung. Man muss ja nicht alles automatisieren. So möchte man ja in der Regel nicht, dass der Rollladen jedes Mal automatisch rauf oder runter fährt, wenn man die Tür oder das Fenster auf oder zu macht. Irgendwo sind halt die Grenzen einer Automatik erreicht, da sie bisher noch keine Gedanken lesen kann. 8)
Wir haben eine zentrale Lüftung mit Wärmerückgewinnung. Die "Fenster", also die Terassentüren öffnen wir eigentlich nur, wenn wir auf die Terasse wollen.
MartinBr hat geschrieben:
22.03.2019, 11:31
Aktuell triggere ich den TFK und fahre dann das Rollo hoch. Nach Schliessen der Terassentür geht das Rollo wieder runter.

Soll ich das weiterhin über getrennte Programme ansteuern?
Wenn du das unbedingt automatisiert haben möchtest, dann solltest du das in der Tat über getrennte Programme steuern. Du kannst dafür aber trotzdem das zBSP verwenden. Damit kann man ja schließlich auch einzelne Rollläden ansteuern. Ich nutze z.B. auch für jede Ansteuerung der Rollläden das zBSP, selbst, wenn es nur ein einziges Fenster betrifft. Das ist kein Problem.

Gruß,

Thorsten
So war das auch geplant. Ich werde das Programm nutzen, um zentral morgens und abends die Rollos zu fahren. Der Aussperrschutz ist auch auch im Script enthalten. Die Sonnenbeschattung hast du ja auch ausführlich beschrieben. Ich werde bei mir dann pro Terassentür noch eine Steuerung der Rollos, wie oben beschrieben, über den TFK einbauen. Ich finde das bequemer: Wenn ich auf die Terasse will, dann muss ich ja die Terassentür öffnen. Dann kann das Rollo auch direkt hoch gehen, wenn es gerade unten ist (weil Mittags beschattet wird oder weil es Abends schon runtergefahren ist).

Am Wochenende fange ich mal mit dem Zental-Programm Morgens Hoch und Abends runter an.

Danke und Gruß
Martin

P.S.
Du sprachst von Sprachsteuerung. Ich habe es bisher nicht geschafft, Alexa beizubringen, auf den Befehl "Schlafzimmer Rollladen hoch" zu reagieren.
Steuerst du das über den ioBroker oder über eine Alexa Routine?
RaspberryMatic-3.59.6 auf Tinkerboard S, CUxD 2.6, XML-1.20, ioBroker (HM,HMIP, Zigbee, Zwave und Shelly) und Alexa in einer VM unter Proxmox, VitoComfort 200

dtp
Beiträge: 10660
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 321 Mal
Danksagung erhalten: 501 Mal

Re: Howto - zentrale Beschattungssteuerung (zBSP) V1.2

Beitrag von dtp » 22.03.2019, 13:52

Die Alexa-Sprachsteuerung mache ich über den ioBroker samt auf meinem Echo Spot installiertem ioBroker SmartHome Skill.
AlexaSmartHome01.jpg
AlexaSmartHome02.jpg
Geht dann über "Alexa, Rollladen im Schlafzimmer auf 100 Prozent" ganz gut. Wenn ich "Alexa, fahre Rollladen im Schlafzimmer hoch" sage, dann fährt Alexa den Rollladen immer nur so um ca. 50 bis 60 % hoch. Siri reagiert da deutlich besser.
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.

MartinBr
Beiträge: 393
Registriert: 25.01.2017, 10:51
Wohnort: Bei Berlin
Hat sich bedankt: 3 Mal
Danksagung erhalten: 8 Mal

Re: Howto - zentrale Beschattungssteuerung (zBSP) V1.2

Beitrag von MartinBr » 22.03.2019, 19:39

Das muss ich mal testen, bisher war meine Tussnelda immer zickig, was Rollos betrifft.
Der Rest läuft gut.
Gruß
Martin
RaspberryMatic-3.59.6 auf Tinkerboard S, CUxD 2.6, XML-1.20, ioBroker (HM,HMIP, Zigbee, Zwave und Shelly) und Alexa in einer VM unter Proxmox, VitoComfort 200

MartinBr
Beiträge: 393
Registriert: 25.01.2017, 10:51
Wohnort: Bei Berlin
Hat sich bedankt: 3 Mal
Danksagung erhalten: 8 Mal

Re: Howto - zentrale Beschattungssteuerung (zBSP) V1.2

Beitrag von MartinBr » 29.03.2019, 20:34

Hallo Thorsten,
ich habe die alten Rollo-Programme deaktiviert und alles auf die neuen zBSP umgestellt. Nun bin ich mal gespannt, ob die Rollos morgen alle hochfahren.
Die Beschattung für die Sonneneinstrahlung werde ich dann später umstellen.

Gruß

Martin
RaspberryMatic-3.59.6 auf Tinkerboard S, CUxD 2.6, XML-1.20, ioBroker (HM,HMIP, Zigbee, Zwave und Shelly) und Alexa in einer VM unter Proxmox, VitoComfort 200

chrishahn
Beiträge: 51
Registriert: 19.02.2015, 08:16
Wohnort: Hessen

Re: Howto - zentrale Beschattungssteuerung (zBSP) V1.2

Beitrag von chrishahn » 29.03.2019, 21:12

Hi.
Super Programm. Habe jetzt lange nach der Ursache gesucht, warum es bei mir nicht funktioniert hat.
Vielleicht kannst du dir das mal anschauen:
In deinem Script zBSS steht ab Zeile 171:

Code: Alles auswählen

   ! ----- Berechnung und ggf. Korrektur der Öffnungswerte für Rollläden -----
    if(blindName.Contains(closureBlinds)){
      closureName = blindName.Replace(closureBlinds, ""); closureName = closureName.Replace("  ", " ");
      closureState = (dom.GetObject(ID_CHANNELS).Get(closureName)).DPByHssDP("STATE").Value();
      closureType = (dom.GetObject(ID_DEVICES).Get(closureName)).HssType();
      blindValueNew = blindValue.ToFloat();
Bei mir wurde der Wert blindValueNew nicht ermittelt. In die if-Abfrage geht er aber rein.
Ich habe den Teil wie folgt geändert:

Code: Alles auswählen

   ! ----- Berechnung und ggf. Korrektur der Öffnungswerte für Rollläden -----
    if(blindName.Contains(closureBlinds)){
      blindValueNew = blindValue.ToFloat();
      closureName = blindName.Replace(closureBlinds, ""); closureName = closureName.Replace("  ", " ");
      closureState = (dom.GetObject(ID_CHANNELS).Get(closureName)).DPByHssDP("STATE").Value();
      closureType = (dom.GetObject(ID_DEVICES).Get(closureName)).HssType();
Damit funktioniert es.
Woran kann das liegen? Es werden doch normalerweise alle Zeilen in der if-Abfrage ausgeführt.

Danke.
Gruß
Chris

dtp
Beiträge: 10660
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 321 Mal
Danksagung erhalten: 501 Mal

Re: Howto - zentrale Beschattungssteuerung (zBSP) V1.2

Beitrag von dtp » 02.04.2019, 08:25

Hi Chris,

in dem von dir geposteten Codeschnipsel dürfte es egal sein, wo die Zeile

Code: Alles auswählen

blindValueNew = blindValue.ToFloat();
steht, da dort weder "blindValue" noch "blindValueNew" für weitere Berechnungen verwendet wird. Der Grund, dass es einmal geht und einmal nicht, muss also irgendwo anders zu suchen sein.
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.

MartinBr
Beiträge: 393
Registriert: 25.01.2017, 10:51
Wohnort: Bei Berlin
Hat sich bedankt: 3 Mal
Danksagung erhalten: 8 Mal

Re: Howto - zentrales Beschattungssteuerungsprogramm (zBSP) V1.2

Beitrag von MartinBr » 07.04.2019, 17:59

Hallo Thorsten,

ich habe nun alle Programme auf deine Beschattung umgestellt. Leider bewegt sich kein Rolladen :(

Ich habe ein Testprogramm zum Schalten eines Rollos erstellt. Auch hier passiert nichts. Die Variablen werden aber sauber geschrieben:

Hier Das Testprogramm:

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 +++++
! Stets nach dem Muster "Beschattungsgerät|Behanghöhe|Korrekturwert(tilt_open_) Bediensperre(lock/unlock)|Auslösebedingung(ne/gt/ge/lt/le)\t
!                       "Beschattungsgerät|Behanghöhe|Korrekturwert(tilt_open_) Bediensperre(lock/unlock)|Auslösebedingung(ne/gt/ge/lt/le)" 
! ausfüllen (trennen mit "\t"). 
! Auslösebedingung für den Vergleich von Soll- und Ist-Wert
! -> ne: Soll <> Ist | gt: Soll > Ist | ge: Soll >= Ist | lt: Soll < Ist | le: Soll <= Ist
! Für gesamtes Beschattungsgewerk Aufruf per blindsList = (dom.GetObject(ID_FUNCTIONS).Get("Beschattung")).EnumUsedNames();
! -> dann muss aber blindsGlobalValues gesetzt sein.
!  -> dann muss aber blindsGlobalValues gesetzt sein.
string blindsList = "HWR Fenster Rollladen|50|open100|ne";

! +++++ Globale Werte für Behanghöhen bzw. Ausfahrwerte und Korrekturwert für geöffnete bzw. gekippte Fenster und Türen +++++
! Wenn gesetzt, sind keine lokalen Werte in blindsList notwendig bzw. werden ignoriert 
! Stets nach dem Muster "Behanghöhe|Korrekturwert(tilt_open_)|Auslösebedingung(ne/gt/ge/lt/le)\t
!                        Behanghöhe|Korrekturwert(tilt_open_)|Auslösebedingung(ne/gt/ge/lt/le)" 
! ausfüllen (trennen mit "\t").
! Für TESTLAUF in Parameter Behanghöhe "test" einfügen.
string blindsGlobalValues = ""; !"" zur Berücksichtigung der lokalen Werte in "blindsList"

! +++++ Zusatzinformation, die als Push-Nachricht versendet werden soll +++++  
string blindsMessage = "Rolle HWR auf 50% - TEST"; ! "--" zur Unterdrückung von Push-Nachrichten

! +++++ Namen der für die Beschattung benötigten Systemvariablen gem. zeBeS +++++
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();
Hier die Systemvariablen:
Bildschirmfoto 2019-04-07 um 17.52.58.png
Hier der Aktor:
Bildschirmfoto 2019-04-07 um 17.54.37.png
Bildschirmfoto 2019-04-07 um 17.55.50.png
Das Testprogramm starte ich manuell aus der Bedienung heraus. Es legt ja auch die Systemvariablen an.

Was mache ich falsch?

Gruß

Martin
RaspberryMatic-3.59.6 auf Tinkerboard S, CUxD 2.6, XML-1.20, ioBroker (HM,HMIP, Zigbee, Zwave und Shelly) und Alexa in einer VM unter Proxmox, VitoComfort 200

dtp
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) V1.2

Beitrag von dtp » 08.04.2019, 08:46

Hallo Martin,

zwei Fragen.

1. Nutzt du das zPNP? Falls nicht, setze mal blindsMessage bitte auf "--", um den Aufruf des zPNP zu unterdrücken.
2. Wie ist der Name deines Aktors (also nicht von Kanal 1, sondern vom Aktor selbst)?

Gruß,

Thorsten
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.

MartinBr
Beiträge: 393
Registriert: 25.01.2017, 10:51
Wohnort: Bei Berlin
Hat sich bedankt: 3 Mal
Danksagung erhalten: 8 Mal

Re: Howto - zentrales Beschattungssteuerungsprogramm (zBSP) V1.2

Beitrag von MartinBr » 08.04.2019, 08:56

Hallo Thorsten,

der Aktor heißt genauso wie Kanal 1:
HWR Fenster Rollladen

Die Verschiedenen Kanäle werden bei mir nur durch die Nummer :1 etc. unterschieden.

Das zPNP kann ich dann heute Abend deaktivieren.

P.S.
Das ist eine tolle Lösung, vielen Dank, dass du den Code der Community gegeben hast :D

Gruß

Martin
RaspberryMatic-3.59.6 auf Tinkerboard S, CUxD 2.6, XML-1.20, ioBroker (HM,HMIP, Zigbee, Zwave und Shelly) und Alexa in einer VM unter Proxmox, VitoComfort 200

dtp
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) V1.2

Beitrag von dtp » 08.04.2019, 09:36

MartinBr hat geschrieben:
08.04.2019, 08:56
Das ist eine tolle Lösung, vielen Dank, dass du den Code der Community gegeben hast :D
Gerne. Aber funktionieren sollte sie dann schon auch noch. 8)

Das zBSP heißt bei dir auch "CCU PRG Beschattung", oder? Kannst du davon evtl. noch einen Screenshot posten?
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.

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“