Openhab 2 - Bticino alle Rolläden gleichzeitig auf und zu machen

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

calimero
Beiträge: 27
Registriert: 20. Dez 2019 07:17
Answers: 0

Openhab 2 - Bticino alle Rolläden gleichzeitig auf und zu machen

Beitrag von calimero »

Hallo zusammen,

ich habe meine Bticino Anlage mit den Openhab verbunden und kann auch schon alle Lichter/Rolläden einzeln Steuern.

Die frage an euch ist - Wie schaffe ich es damit ich alle Rolläden gleichzeitig Auf und zu machen kann?

Danke im Voraus.

mfg

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: Openhab 2 - Bticino alle Rolläden gleichzeitig auf und zu machen

Beitrag von sihui »

calimero hat geschrieben: 20. Dez 2019 07:21 Die frage an euch ist - Wie schaffe ich es damit ich alle Rolläden gleichzeitig Auf und zu machen kann?
Per Gruppensteuerung:

https://www.openhab.org/docs/configurat ... tml#groups
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

calimero
Beiträge: 27
Registriert: 20. Dez 2019 07:17
Answers: 0

Re: Openhab 2 - Bticino alle Rolläden gleichzeitig auf und zu machen

Beitrag von calimero »

Hallo sihui,

danke für deine Antwort.

Das habe ich schon vermutet das dass per Gruppensteuerung funktioniert.

Rollershutter RollUpShutter_1 "Roller-up shutter 1" (Living, RollerUpShutters) {bticino="if=webserver;who=2;what=0;where=46"}
Rollershutter RollUpShutter_2 "Roller-up shutter 2" (Living, RollerUpShutters) {bticino="if=webserver;who=2;what=0;where=47"}

das ist der Befehlt für die Rolladen Steuerung mit der Gruppe RollerUpShutters.

Für die Gruppe:
Group RollerUpShutters ["labeltext"] [<iconname>] [(group1, group2, ...)]

für was ist group1,group2 ?

mfg

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

Re: Openhab 2 - Bticino alle Rolläden gleichzeitig auf und zu machen

Beitrag von udo1toni »

Das ist einfach eine allgemeine Beschreibung. Jedes Item kann selbst Member einer oder mehrerer Gruppe(n) sein. Das gilt auch für Group Items. Kleine Einschränkung: Man sollte es tunlichst vermeiden, Schleifen zu bilden, also etwa so:

Code: Alles auswählen

Group group1 (group2)
Group group2 (group1)
Das ist in der Doku nicht explizit erwähnt, weil der Sachverhalt extrem selbstverständlich ist...

Wenn Du die Steuerbefehle für die Gruppe verwenden willst, sollte der Gruppentyp festgelegt werden:

Code: Alles auswählen

Group:Rollershutter gShutters "My Shutters"
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

calimero
Beiträge: 27
Registriert: 20. Dez 2019 07:17
Answers: 0

Re: Openhab 2 - Bticino alle Rolläden gleichzeitig auf und zu machen

Beitrag von calimero »

Hallo udo1toni,

vielen Dank für die Hilfe, aber ich komme nicht weiter :)

ich habe deinen Gruppencode eingefügt aber wie steuere ich dann die Rolläden an ?

mfg

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

Re: Openhab 2 - Bticino alle Rolläden gleichzeitig auf und zu machen

Beitrag von udo1toni »

Na ja, indem Du den Befehl an die Gruppe schickst, statt an ein einzelnes Item.

Falls ein gShutters.sendCommand(DOWN) (z.B.) nicht funktionieren sollte, musst Du mit einer Rule arbeiten:

Code: Alles auswählen

rule "alle Läden schließen"
when
    Time cron "0 0 18 * * ?" // täglich 18 Uhr
then
    gShutters.members.forEach[s|
        s.sendCommand(DOWN)
    ]
end
an jeden Member der Gruppe gShutters wird nacheinander das Kommando DOWN gesendet. Falls einzelne Läden nicht zuverlässig fahren sollten, gibt es vermutlich verschluckte Nachrichten auf dem Bus (kam bei mir früher in Zusammenhang mit knx vor), dann muss man ein Delay zwischen die einzelnen Befehle einbauen:

Code: Alles auswählen

rule "alle Läden schließen"
when
    Time cron "0 0 18 * * ?" // täglich 18 Uhr
then
    gShutters.members.forEach[s|
        s.sendCommand(DOWN)
        Thread::sleep(100)
    ]
end
legt nach jedem sendCommand() eine kleine Pause ein.
Wenn man vomBus eine Rückmeldung bekommt, auf welcher Position sich ein Laden befindet, kann man noch weiter gehen und die Rule so gestalten, dass die nicht geschlossenen Läden immer wieder den Befehl zum Schließen erhalten (bis sie geschlossen wurden). Die Möglichkeiten sind vielfältig...
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

calimero
Beiträge: 27
Registriert: 20. Dez 2019 07:17
Answers: 0

Re: Openhab 2 - Bticino alle Rolläden gleichzeitig auf und zu machen

Beitrag von calimero »

Guten Morgen udo1toni,

vorab vielen Dank für deine Hilfe.
ich hätte jetzt alles mögliche probiert aber es funktioniert nicht.

Ich kann alle Rolladen einzeln steuern das funktioniert soweit aber mit einer gruppe schaffe ich es nicht.

Kannst du mir bitte den entsprechendend code zeigen was ich wo hin schreiben muss?

Hier meine items datei:

Code: Alles auswählen

// Gruppen
Group gEG 	// Gruppe Erdgeschoss
Group gOG 	// Gruppe Obergeschoss
Group allerollos

Group OG_Schlafzimmer	"Schlafzimmer"	<bedroom>		(gOG)
Group OG_Ankleide		"Ankleide"		<bedroom>		(gOG)
Group OG_buero			"buero"			<office>		(gOG)
Group OG_Kinderzimmer	"Kinderzimmer"	<baby_1>		(gOG)
Group OG_WC				"WC"			<toilet>		(gOG)
Group OG_Bad			"Bad"			<Bath>			(gOG)
Group OG_Flur			"Flur OG"		<corridor>		(gOG)

Group EG_Kueche			"Kueche" 		<kitchen>		(gEG)
Group EG_Esszimmer		"Esszimmer" 	<kitchen> 		(gEG)
Group EG_WC				"WC"			<bath>			(gEG)
Group EG_Wohnzimmer		"Wohnzimmer"	<sofa>			(gEG)
Group EG_Technik		"Technik"		<washingmachine>(gEG)
Group EG_Windfang		"Windfang"		<frontdoor>		(gEG)
Group EG_Flur			"Flur EG"		<corridor>		(gEG)


/*Licht*/
Switch Licht_OG_Schlafzimmer	"Licht Schlafzimmer"	(OG_Schlafzimmer) 	{bticino="if=webserver;who=1;what=0;where=23"}
Switch Licht_OG_Ankleide		"Licht Ankleide"		(OG_Ankleide) 		{bticino="if=webserver;who=1;what=0;where=24"}
Switch Licht_OG_buero			"Licht buero"			(OG_buero)			{bticino="if=webserver;who=1;what=0;where=30"}
Switch Licht_OG_Kinderzimmer	"Licht Kinderzimmer"	(OG_Kinderzimmer) 	{bticino="if=webserver;who=1;what=0;where=25"}
Switch Licht_OG_WC				"Licht WC"				(OG_WC)				{bticino="if=webserver;who=1;what=0;where=26"}
Switch Licht_OG_Bad				"Licht Bad"				(OG_Bad)			{bticino="if=webserver;who=1;what=0;where=32"}
Switch Licht_OG_Bad_Spiegel		"Licht Spiegelschrank"	(OG_Bad)			{bticino="if=webserver;who=1;what=0;where=33"}
Switch Licht_OG_Flur			"Licht Flur"			(OG_Flur)			{bticino="if=webserver;who=1;what=0;where=29"}
Switch Licht_OG_Stiege			"Licht Stiege"			(OG_Flur)			{bticino="if=webserver;who=1;what=0;where=13"}


Switch Licht_EG_Kueche			"Licht Kueche"			(EG_Kueche)			{bticino="if=webserver;who=1;what=0;where=17"}
Switch Licht_EG_Esszimmer		"Licht Esszimmer"		(EG_Esszimmer)		{bticino="if=webserver;who=1;what=0;where=16"}
Switch Licht_EG_WC				"Licht WC"				(EG_WC)				{bticino="if=webserver;who=1;what=0;where=12"}
Switch Licht_EG_Abstellraum		"Licht Abstellraum"		(EG_Abstellraum)	{bticino="if=webserver;who=1;what=0;where=11"}
Switch Licht_EG_Flur			"Licht Flur"			(EG_Flur)			{bticino="if=webserver;who=1;what=0;where=31"}
Switch Licht_EG_Technik			"Licht Technik"			(EG_Technik)		{bticino="if=webserver;who=1;what=0;where=11"}
Switch Licht_EG_Windfang		"Licht Windfang"		(EG_Windfang)		{bticino="if=webserver;who=1;what=0;where=28"}
Switch Licht_EG_Stiege			"Licht Stiege"			(EG_Flur)			{bticino="if=webserver;who=1;what=0;where=77"}

/*Dimmer*/
Dimmer Licht_EG_Wohnzimmer		"Licht Wohnzimmer"		(EG_Wohnzimmer)		{bticino="if=webserver;who=1;what=0;where=14"}

/*Rollos*/

Group:Rollershutter gshutters "Alle Rollos"	

Rollershutter Rollo_EG_Wohnzimmer 	"Rollo Wohnzimmer"		(EG_Wohnzimmer) 	{bticino="if=webserver;who=2;what=0;where=85"}
Rollershutter Rollo_EG_Terrasentuer	"Rollo Terrassentuer"	(EG_Wohnzimmer) 	{bticino="if=webserver;who=2;what=0;where=84"}
Rollershutter Rollo_EG_Essen 		"Rollo Essen_Fenster"	(EG_Esszimmer)	 	{bticino="if=webserver;who=2;what=0;where=86"}
Rollershutter Rollo_EG_Essen_tuer	"Rollo Essen_tuere"		(EG_Esszimmer) 		{bticino="if=webserver;who=2;what=0;where=87"}
Rollershutter Rollo_EG_Kueche	 	"Rollo Kueche"			(EG_Kueche) 		{bticino="if=webserver;who=2;what=0;where=89"}
Rollershutter Rollo_EG_Technik		"Rollo Technik"			(EG_Technik) 		{bticino="if=webserver;who=2;what=0;where=81"}
Rollershutter Rollo_EG_WC			"Rollo WC"				(EG_WC)		 		{bticino="if=webserver;who=2;what=0;where=83"}
Rollershutter Rollo_EG_Stiege_Links	"Rollo Stiege_Links"	(EG_Flur)		 	{bticino="if=webserver;who=2;what=0;where=97"}
Rollershutter Rollo_EG_Stige_Rechts	"Rollo Stiege_Rechts"	(EG_Flur)		 	{bticino="if=webserver;who=2;what=0;where=96"}


Rollershutter Rollo_OG_Schlafzimmer	"Rollo Schlafzimmer"	(OG_Schlafzimmer) 	{bticino="if=webserver;who=2;what=0;where=90"}
Rollershutter Rollo_OG_Ankleide		"Rollo Ankleide"		(OG_Ankleide)	 	{bticino="if=webserver;who=2;what=0;where=90"}
Rollershutter Rollo_OG_buero		"Rollo buero"			(OG_buero, gshutters) 			{bticino="if=webserver;who=2;what=0;where=91"}
Rollershutter Rollo_OG_Kinderzimmer	"Rollo Kinderzimmer"	(OG_Kinderzimmer, gshutters) 	{bticino="if=webserver;who=2;what=0;where=92"}
Rollershutter Rollo_OG_WC			"Rollo WC"				(OG_WC)			 	{bticino="if=webserver;who=2;what=0;where=94"}
Rollershutter Rollo_OG_Bad			"Rollo Bad"				(OG_Bad)		 	{bticino="if=webserver;who=2;what=0;where=95"}
Rollershutter Rollo_OG_Stiege_Links	"Rollo Stiege_Links"	(OG_Flur) 			{bticino="if=webserver;who=2;what=0;where=97"}
Rollershutter Rollo_OG_Stiege_Rechts"Rollo Stiege_Rechts"	(OG_Flur) 			{bticino="if=webserver;who=2;what=0;where=96"}



Rollershutter alle 					"Alle Rolladen"  		(allerollos, gshutters)  gShutters.sendCommand(DOWN)


sitemap:

Code: Alles auswählen

sitemap Haus label="Hauptmenue"
{
  Frame {
	Group item=gOG	label="Obergeschoss"	icon="firstfloor"
	Group item=gEG	label="Erdgeschoss"	icon="groundfloor"
	Group item=allerollos label="Alle Rollos"

	
        }

  
}

Rule:

Code: Alles auswählen

var Boolean frei = true
rule "Gesamte Rolladen Steuerung"
when 
    Item allerollos received command 
then
    if(frei){
        frei = false
        gshutters.members.forEach[ rs | 
            rs.sendCommand(receivedCommand)
            Thread::sleep(100)
        ]
        frei = true
    }
end
Danke nochmals im voraus.

mfg

Benutzeravatar
PeterA
Beiträge: 1106
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: Openhab 2 - Bticino alle Rolläden gleichzeitig auf und zu machen

Beitrag von PeterA »

Hi calimero,

ich habe hier Shelly 2.5 Rollershutter Aktoren. Alle über Mqtt an OpenHab angebunden.
Wenn ich ALLE gleichzeitig runter oder hoch fahren möchte mache ich das nicht über eine Rule sondern nur über die Sitemap:

Code: Alles auswählen

Switch    item=grAllshutters                              label="Alle Rolladen"             icon="rollershutter" mappings=[0="open",70="70%",100="close"]
In der Gruppe "grAllshutters" sind alle meine Aktoren.

Gruß
Peter
- OpenHab 2.4
#PWRUP

calimero
Beiträge: 27
Registriert: 20. Dez 2019 07:17
Answers: 0

Re: Openhab 2 - Bticino alle Rolläden gleichzeitig auf und zu machen

Beitrag von calimero »

Hallo Peter,

danke für deinen Beitrag.
habe ich soeben probiert aber funktioniert leider nicht.

mfg
Pascal

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: Openhab 2 - Bticino alle Rolläden gleichzeitig auf und zu machen

Beitrag von sihui »

calimero hat geschrieben: 21. Dez 2019 08:57 Hier meine items datei:
Du hast dort ein ziemliches Durcheinander von Befehlen, die in eine Rules Datei gehören und Mehrfachgruppen, die keiner Funktion zugeordnet sind.
Du müsstest damit auch einige Fehlermeldungen in deinem openhab.log angezeigt bekommen.

Überdenke noch einmal deine diversen Gruppen, Gruppen sind aufgrund einiger Nachteile nicht die erste Wahl um per Sitemap schalten zu können.
Um einen ersten Erfolg zu haben bitte folgendes durchführen:

Löschen folgender Zeilen:

Code: Alles auswählen

Group:Rollershutter gshutters "Alle Rollos"	
Rollershutter alle 					"Alle Rolladen"  		(allerollos, gshutters)  gShutters.sendCommand(DOWN)
Dann ersetzt du deinen Rollershutter-Block mit

Code: Alles auswählen

/*Rollos*/

Group:Rollershutter gAlleRollos

Rollershutter Rollo_EG_Wohnzimmer 	"Rollo Wohnzimmer"		(gAlleRollos,EG_Wohnzimmer) 	{bticino="if=webserver;who=2;what=0;where=85"}
Rollershutter Rollo_EG_Terrasentuer	"Rollo Terrassentuer"	(gAlleRollos,EG_Wohnzimmer) 	{bticino="if=webserver;who=2;what=0;where=84"}
Rollershutter Rollo_EG_Essen 		"Rollo Essen_Fenster"	(gAlleRollos,EG_Esszimmer)	 	{bticino="if=webserver;who=2;what=0;where=86"}
Rollershutter Rollo_EG_Essen_tuer	"Rollo Essen_tuere"		(gAlleRollos,EG_Esszimmer) 		{bticino="if=webserver;who=2;what=0;where=87"}
Rollershutter Rollo_EG_Kueche	 	"Rollo Kueche"			(gAlleRollos,EG_Kueche) 		{bticino="if=webserver;who=2;what=0;where=89"}
Rollershutter Rollo_EG_Technik		"Rollo Technik"			(gAlleRollos,EG_Technik) 		{bticino="if=webserver;who=2;what=0;where=81"}
Rollershutter Rollo_EG_WC			"Rollo WC"				(gAlleRollos,EG_WC)		 		{bticino="if=webserver;who=2;what=0;where=83"}
Rollershutter Rollo_EG_Stiege_Links	"Rollo Stiege_Links"	(gAlleRollos,EG_Flur)		 	{bticino="if=webserver;who=2;what=0;where=97"}
Rollershutter Rollo_EG_Stige_Rechts	"Rollo Stiege_Rechts"	(gAlleRollos,EG_Flur)		 	{bticino="if=webserver;who=2;what=0;where=96"}


Rollershutter Rollo_OG_Schlafzimmer	"Rollo Schlafzimmer"	(gAlleRollos,OG_Schlafzimmer) 	{bticino="if=webserver;who=2;what=0;where=90"}
Rollershutter Rollo_OG_Ankleide		"Rollo Ankleide"		(gAlleRollos,OG_Ankleide)	 	{bticino="if=webserver;who=2;what=0;where=90"}
Rollershutter Rollo_OG_buero		"Rollo buero"			(gAlleRollos,OG_buero, gshutters) 			{bticino="if=webserver;who=2;what=0;where=91"}
Rollershutter Rollo_OG_Kinderzimmer	"Rollo Kinderzimmer"	(gAlleRollos,OG_Kinderzimmer, gshutters) 	{bticino="if=webserver;who=2;what=0;where=92"}
Rollershutter Rollo_OG_WC			"Rollo WC"				(gAlleRollos,OG_WC)			 	{bticino="if=webserver;who=2;what=0;where=94"}
Rollershutter Rollo_OG_Bad			"Rollo Bad"				(gAlleRollos,OG_Bad)		 	{bticino="if=webserver;who=2;what=0;where=95"}
Rollershutter Rollo_OG_Stiege_Links	"Rollo Stiege_Links"	(gAlleRollos,OG_Flur) 			{bticino="if=webserver;who=2;what=0;where=97"}
Rollershutter Rollo_OG_Stiege_Rechts"Rollo Stiege_Rechts"	(gAlleRollos,OG_Flur) 			{bticino="if=webserver;who=2;what=0;where=96"}
Dann nimmst du deine Sitemap und fügst folgendes hinzu:

Code: Alles auswählen

Switch item=gAlleRollos label="Alle Rollos" mappings=[UP="Auf", STOP="X", DOWN="Zu"]
Ich nehme an Bticino untersützt UP/DOWN/STOP ...

Danach liest du dir mal in Ruhe die Doku zu den Groups durch und liest die diversen Forenbeiträge in diesem Forum zum Thema "Nachteile von Gruppen".

Have fun.
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

Antworten