Neues Modul: Rolladensteuerung

Begonnen von ThomasRamm, 11 Januar 2016, 00:00:21

Vorheriges Thema - Nächstes Thema

ThomasRamm

Zitat von: grappa24 am 13 Januar 2016, 13:05:15
... genau das, was ich gerade für meine Visualisierung mit smartVISU suche ... ;)

Ich hab allerdings eine EIB/KNX-Rollo-Steuerung und (nur) folgende Befehle zur Verfügung:

- set EIB_3207 on (Rollo runterfahren)
- set EIB_3207 off (Rollo hochfahren)
- set EIB_3208 on/off (Rollo Stop)

Thomas, kann ich da drauf mit Deinem Modul aufsetzen, wie setze ich das auf Deine Kanalsteuerung um?

Ja, können wir einbauen. Ist deine Programmierung so vorgegeben oder hast du dir das selber so gebaut? Frage nur wegen Namensgebung. Wenn das immer bei KNX so ist würde ich Typ=KNX als name nehmen.
Es gibt im Modul nur 2 Stellen an denen die eigentlichen SET-Befehle abgesetzt werden. Dort muss nur eine weitere "Typ-Bedingung" eingetragen werden.
die definition wäre dann define <name> ROLLO EIB_3207 EIB_3208 knx (oder Typ3)

ThomasRamm

Hier mal was zum testen,
habe gerade kein fhem zur Hand, deshalb konnte ich selber noch nicht testen.
Wenn der code ok ist, aktualisiere ich die Datei im ersten Thread

2 Neue Funktionstypen:
Typ3 (für KNX/EIB)
FS20rsu (selbsterklärend :-))

Gruß
Thomas

grappa24

Danke Thomas, kanns kaum erwarten, dass ich hier (Büro) wegkomme und testen kann ...
FHEM 6.1, 2 x RasPi 3B+, Debian Buster; KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200
Rollo-/Lichtsteuerung/-szenarien, T-Sensoren, Fensterkontakte, Heizungssteuerung, HEOS, Sprachsteuerung mit Alexa-FHEM, Netatmo, Nuki, ...

HoTi

Zitat von: grappa24 am 13 Januar 2016, 14:25:54
Danke Thomas, kanns kaum erwarten, dass ich hier (Büro) wegkomme und testen kann ...

Gut das ich vom Büro auf mein FHEM komme, so kann ich an Tagen wie diesem auch mal vom Büro aus Testen.
Viele Grüße aus  Oberbayern
Tim (RettungsTim)

grappa24

Zitat von: ThomasRamm am 13 Januar 2016, 13:48:54
Ja, können wir einbauen. Ist deine Programmierung so vorgegeben oder hast du dir das selber so gebaut?
Ist so vorgegeben ...
FHEM 6.1, 2 x RasPi 3B+, Debian Buster; KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200
Rollo-/Lichtsteuerung/-szenarien, T-Sensoren, Fensterkontakte, Heizungssteuerung, HEOS, Sprachsteuerung mit Alexa-FHEM, Netatmo, Nuki, ...

grappa24

#35
Zitat von: ThomasRamm am 13 Januar 2016, 13:50:40
Hier mal was zum testen,
habe gerade kein fhem zur Hand, deshalb konnte ich selber noch nicht testen.
Wenn der code ok ist, aktualisiere ich die Datei im ersten Thread

2 Neue Funktionstypen:
Typ3 (für KNX/EIB)
FS20rsu (selbsterklärend :-))

Gruß
Thomas

Geht leider noch nicht, allerdings ist bei Funktionsweise auch (noch) Typ1 eingetragen

zu meinen devices:
- set di_rollo_lang on (fährt das Rollo runter)
- set di_rollo_lang off (fährt das Rollo hoch)
- set di_rollo_kurz on (stoppt das Rollo, egal in welche Richtung es fährt)
- set di_rollo_kurz off (stoppt das Rollo, egal in welche Richtung es fährt)

Und so hab ichs definiert: define ROLLO di_rollo_lang di_rollo_kurz Typ3
FHEM 6.1, 2 x RasPi 3B+, Debian Buster; KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200
Rollo-/Lichtsteuerung/-szenarien, T-Sensoren, Fensterkontakte, Heizungssteuerung, HEOS, Sprachsteuerung mit Alexa-FHEM, Netatmo, Nuki, ...

grappa24

nicht, dass wir uns falsch verstehen, zum stoppen reicht einer der beiden Befehle ...
  } elsif ($hash->{Funktionsweise} eq "Typ3") {
      #BEFEHL ZUM STOPPEN BEI HOCHFAHREN DES ROLLO
      fhem("set $hash->{device} $hash->{portAb} on");
      fhem("set $hash->{device} $hash->{portAb} off");
FHEM 6.1, 2 x RasPi 3B+, Debian Buster; KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200
Rollo-/Lichtsteuerung/-szenarien, T-Sensoren, Fensterkontakte, Heizungssteuerung, HEOS, Sprachsteuerung mit Alexa-FHEM, Netatmo, Nuki, ...

grappa24

hier noch ein Auszug aus meinem logfile:2016.01.13 20:01:34 3: ROLLO sendet: set di_rollo_lang Typ3 on
2016.01.13 20:01:34 3: ROLLO sendet: set di_rollo_lang di_rollo_kurz on
2016.01.13 20:01:34 3: set di_rollo_lang Typ3 on : Unknown argument Typ3, choose one of off on on-for-timer on-till raw string value
2016.01.13 20:01:34 3: set di_rollo_lang di_rollo_kurz on : Unknown argument di_rollo_kurz, choose one of off on on-for-timer on-till raw string value
FHEM 6.1, 2 x RasPi 3B+, Debian Buster; KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200
Rollo-/Lichtsteuerung/-szenarien, T-Sensoren, Fensterkontakte, Heizungssteuerung, HEOS, Sprachsteuerung mit Alexa-FHEM, Netatmo, Nuki, ...

grappa24

#38
sorry, es funktioniert  ;D

Meine Definition war einfach unvollständig, ich hatte den "-" für das fehlende Device vergessen

Bleibt nur die Frage, warum Du im Befehl zum Stoppen beim Hochfahren zwei Befehle gesetzt hast
- set portAB on
- set portAB off

m.E. reicht da einer, man hört es auch, das Rollo klickt 2x ...

Aber ansonsten, Hut ab, eine echte Bereicherung, werde noch etwas testen/spielen und berichten.

D a n k e ....


Lösung:

Stop beim Hochfahren -> set portAB on
Stop beim Runterfahren -> set portAB off

dann läufts ruckelfrei am Ende

jetzt muss ich nur noch mit den Positionen experimentieren, bei 90% fährt das Rollo gerade mal 4 Sekunden ...
FHEM 6.1, 2 x RasPi 3B+, Debian Buster; KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200
Rollo-/Lichtsteuerung/-szenarien, T-Sensoren, Fensterkontakte, Heizungssteuerung, HEOS, Sprachsteuerung mit Alexa-FHEM, Netatmo, Nuki, ...

ThomasRamm

Typ3 jetzt korrigiert, hatte das falsch verstanden.
Typ2 leicht geändert, es wird kein off mehr gesendet wenn der Ausgang bereits off ist um die Funklast zu verringern
FS20rsu ist als 4. Typ implementiert
Es gibt 2 neue Set-Befehle:

extern <positionsname>: startet das Rollo-Modul mit allen Einstellungen ohne das der Hardwarebefehl abgesetzt wird (für Situation das das Rollo per Taster gestartet wird, der nicht abgefragt wird). Beispielkonfiguration für diese Situation folgt noch

reset <positionsname>: setzt nur den internen speicher auf eine beliebige position falls differenzen zwischen ist und soll entstanden sind.

Neue Version und Beschreibung folgen in wenigen minuten im ersten Post

Gruß
Thomas

grappa24

Thomas, wie kommen denn solche Zahlenwerte über 100 zustande?2016.01.13 22:46:14 3: set ROLLO_Dieter state 150 : Please define ROLLO_Dieter first
2016.01.13 22:46:15 3: set ROLLO_Dieter state 190 : Please define ROLLO_Dieter first
2016.01.13 22:55:16 3: set ROLLO_Dieter state 120 : Please define ROLLO_Dieter first
2016.01.13 22:55:18 3: set ROLLO_Dieter state 165 : Please define ROLLO_Dieter first
2016.01.13 22:55:19 3: set ROLLO_Dieter state 195 : Please define ROLLO_Dieter first
FHEM 6.1, 2 x RasPi 3B+, Debian Buster; KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200
Rollo-/Lichtsteuerung/-szenarien, T-Sensoren, Fensterkontakte, Heizungssteuerung, HEOS, Sprachsteuerung mit Alexa-FHEM, Netatmo, Nuki, ...

ThomasRamm

Zitat von: grappa24 am 13 Januar 2016, 23:14:42
Thomas, wie kommen denn solche Zahlenwerte über 100 zustande?2016.01.13 22:46:14 3: set ROLLO_Dieter state 150 : Please define ROLLO_Dieter first
2016.01.13 22:46:15 3: set ROLLO_Dieter state 190 : Please define ROLLO_Dieter first
2016.01.13 22:55:16 3: set ROLLO_Dieter state 120 : Please define ROLLO_Dieter first
2016.01.13 22:55:18 3: set ROLLO_Dieter state 165 : Please define ROLLO_Dieter first
2016.01.13 22:55:19 3: set ROLLO_Dieter state 195 : Please define ROLLO_Dieter first


Ich glaube nicht das diese set-Befehle von meinem Modul kommen. Einen solchen Eintrag gibt es nicht.
Wenn du das definierte rollo öffnest kannst du das attribut verbose mit Wert 4 hinzufügen, dann gibt es einen für mich sehr aussagekräftigen log.

Gruß
Thomas

miche

Hab das jetzt mal installiert.
In der hem.cfg steht: define KROLL ROLLO Kueche_Fenster on off FS20rsu

Als Funktionsweise / Typ wird FS20rsu erkannt, jedoch die Steuerung funktioniert nicht.

Bei Ab/ON Befehl steht folgendes im Log:
ROLLO sendet:
2016.01.14 06:57:26 3: ROLLO sendet: set Kueche_Fenster on off
2016.01.14 06:57:26 3: set Kueche_Fenster on off : Bad time spec

und dies beim Auf/OFF Befehl
06:58:21 3: ROLLO sendet:
2016.01.14 06:58:21 3: ROLLO sendet: set Kueche_Fenster on on
2016.01.14 06:58:21 3: set Kueche_Fenster on on : Bad time spec

entweder hab ich das falsch eingebunden, denn er nimmt immer noch zwei Kanäle beim Befehl senden!

Frini

Morgen zusammen,
ich steh gerade etwas auf dem Schlauch. Ich habe meine Rollos (Homematic Rolladenaktor) in FHEM angelernt und das funktioniert super.
Welche Vorteile hätte ich mit diesem Modul? Entweder ist es noch zu früh für mich, oder ich bin einfach zu blöd das zu verstehen   :o
Ich bin ja immer bereit meine Steuerung zu optimieren  :D

ThomasRamm

Zitat von: miche am 14 Januar 2016, 06:59:47
Hab das jetzt mal installiert.
In der hem.cfg steht: define KROLL ROLLO Kueche_Fenster on off FS20rsu

Als Funktionsweise / Typ wird FS20rsu erkannt, jedoch die Steuerung funktioniert nicht.

Bei Ab/ON Befehl steht folgendes im Log:
ROLLO sendet:
2016.01.14 06:57:26 3: ROLLO sendet: set Kueche_Fenster on off
2016.01.14 06:57:26 3: set Kueche_Fenster on off : Bad time spec

und dies beim Auf/OFF Befehl
06:58:21 3: ROLLO sendet:
2016.01.14 06:58:21 3: ROLLO sendet: set Kueche_Fenster on on
2016.01.14 06:58:21 3: set Kueche_Fenster on on : Bad time spec

entweder hab ich das falsch eingebunden, denn er nimmt immer noch zwei Kanäle beim Befehl senden!

Bitte die Definition folgendermaßen abändern:
define KROLL ROLLO - Kueche_Fenster - FS20rsu
Parameter1: Ein Device dessen Readings als Kanal benutzt werden soll hast du nicht, deshalb -
Parameter2: Der Name des Kanal1 der benutzt werden soll
Parameter3: Der Name von Kanal2 braucht nicht eingegeben werden, da dein Typ nur ein 1-Kanal Rollo ist, hier kann alles stehen, ich habe mal ein - genommen
Parameter4: Dein Steuerungstyp

Gruß
Thomas