Seite 1 von 2

[V4.0 IP11] KNX Response auf Read-Telegram schicken (State Machine)

Verfasst: Di Apr 30, 2024 10:25 am
von kleinklausi
Hallo,

Gibt es eine Möglichkeit, mit dem Timberwolf auf ein KNX Lese-Telegram ein KNX Response zu schicken?

Ich würde gerne eine Art "State-Machine" bauen. Der Wert eines Write-Telegrams wird gespeichert. Bei einem Read-Telegram wird der gespeicherte Wert als Response-Telegram geschickt.
Anwendung bei mir: ich habe einige Status, wie z.B. "Schlafen Kind". Über KNX wird Ein und Aus geschaltet. Es gibt aber kein Gerät, dass den Status speichert.

Danke und Grüße,
Moritz

Re: [V4.0 IP11] Response auf Read-Telegram schicken (State Machine)

Verfasst: Di Apr 30, 2024 11:18 am
von blaubaerli
Hallo Moritz,

bitte nimm doch das Protokoll auf das sich die Frage bezieht noch mit in den Betreff. Ich vermute zwar, dass du KNX meinst, aber klar ist das nicht wirklich. ;-)

Danke.

Beste Grüße
Jens

Re: [V4.0 IP11] Response auf Read-Telegram schicken (State Machine)

Verfasst: Di Apr 30, 2024 11:31 am
von gbglace
Wenn es um KNX, geht, dann ein KO in der TWS-Applikation einrichten, die passende GA dran verbinden und die passenden Flags (K,L,S) setzen. Dann wäre der TWS Empfänger des Telegramms und reagiert mit Response-Telegrammen auf Leseanfragen zu der angebundenen GA.

Allerdings wenn über KNX Ein und Aus geschalten wird, dann ist die Frage, was ist da bei Dir KNX? Nur eine virtuelle Software irgendwo im LAN? Warum dann eigentlich überhaupt KNX?
Wenn es irgendwie per Taster abgebildet ist, dann hast Du doch dein KNX-KO dem man auch diese Information entlocken kann. Es muss nur die passenden Flags bekommen. Jedes standardkonforme KNX-KO kann dann auf Leseanforderungen antworten egal ob Sensor oder Aktor.

Re: [V4.0 IP11] Response auf Read-Telegram schicken (State Machine)

Verfasst: Di Apr 30, 2024 11:44 am
von kleinklausi
blaubaerli hat geschrieben: Di Apr 30, 2024 11:18 am bitte nimm doch das Protokoll auf
Habe es oben mit aufgenommen. (Da ich im KNX Unterforum gepostet hatte, hatte ich es weg gelassen. Macht Sinn, erhöht die Lesbarkeit später.)

Re: [V4.0 IP11] Response auf Read-Telegram schicken (State Machine)

Verfasst: Di Apr 30, 2024 11:50 am
von kleinklausi
gbglace hat geschrieben: Di Apr 30, 2024 11:31 am Wenn es irgendwie per Taster abgebildet ist, dann hast Du doch dein KNX-KO dem man auch diese Information entlocken kann. Es muss nur die passenden Flags bekommen. Jedes standardkonforme KNX-KO kann dann auf Leseanforderungen antworten egal ob Sensor oder Aktor.
Ich habe z.B. für alle drei Kinderzimmer eine Status-GA "Schlafen". Die triggert einige Sachen in der Beschattung, Beleuchtung etc. Die GA kann mit KNX-Taster oder der Visu geschrieben werden. Was mir dabei fehlt ist ein Gerät, das sich den Zustand merkt.

Oder ist es wirklich so, dass ein "Taster" (hier z.B. ein Siemens TC5 oder ein Zennio Z38i) sich bei der beschriebenen Situation den Zustand merkt und auch auf Read-Requests reagiert (wenn ich das KO Leseflag setze)?

Danke und Grüße

Re: [V4.0 IP11] KNX Response auf Read-Telegram schicken (State Machine)

Verfasst: Di Apr 30, 2024 12:52 pm
von blaubaerli
Hallo @kleinklausi,

ob das der Taster kann, ergibt sich letztlich durch die Fähigkeiten der angebotenen KNX-Applikation. Wenn du mal in deren Beschreibung schaust, sollte sich etwas dazu finden lassen.

Das ist aber eher zu erwarten. Das mag nicht zwingend die Default-Konfiguration sein. Aber man wird es sich ggf. passend einstellen können.

Beste Grüße
Jens

Re: [V4.0 IP11] KNX Response auf Read-Telegram schicken (State Machine)

Verfasst: Di Apr 30, 2024 2:27 pm
von AndererStefan
KNX-Szenen (auch wenn du den Begriff nicht nennt scheint es inhaltlich eine Szene zu sein) kennen keinen Zustand. Wenn du per Szene „Schlafen“ die Rolladen runter fährst, und das Licht ausmacht und den PM sperrst… dann müsstest du den Zustand aller Aktoren beobachten und bei jedweder Änderung den Status auf von „Schlafen“ auf „unbekannt“ ändern.

Ich verstehe aber dennoch dein Anliegen. Ich habe mit Tagesphasen etwas ähnliches gemacht. Das Haus wird nach dem Aufstehen auf „Morgen“ geschaltet, völlig egal was danach einzelne Aktoren machen. Später dann auf „Tag“.
Es wäre nun schön diesen Zustand (und ggf. weitere) an einem zentralen Ort wie einem Logik-Controller oder eben dem Timberwolf zu tracken. Das finde ich naheliegender als dies in „irgendeinem“ Schalter zu überlassen.

Re: [V4.0 IP11] KNX Response auf Read-Telegram schicken (State Machine)

Verfasst: Di Apr 30, 2024 4:25 pm
von Parsley
Moin zusammen

Schönes Thema.
Beim Lesen habe ich mich daran erinnert, dass es hier ein ähnliches Thema schon mal gab und habe danach in meinen Lesezeichen gesucht. Ich glaube es war dieses:

viewtopic.php?p=20290#p20290

Geht das in die gleiche Richtung?

Re: [V4.0 IP11] KNX Response auf Read-Telegram schicken (State Machine)

Verfasst: Di Apr 30, 2024 11:21 pm
von martin
Hi Moritz,

für jedes Schlafzimmer/Kinderzimmer habe ich bei uns einen Zustandsautomat in der TW-Logik angelegt. Per KNX-Taster im Zimmer kann der Zustand zwischen "Automatik" und "Anwesend&Schlafend" bestimmt werden. Im Zustand "Anwesend&Schlafend" wird dann z.B. die Rolladenautomatik und die Lichtautomatik gesperrt. Der KNX-Taster (MDT Glastaster) ist so parametriert, dass er bei langem Tastendruck den Schlafmodus aktiviert und bei kurzem Tastendruck den Schlafmodus deaktiviert. Der lange Tastendruck geht sowohl in die TW-Logik als auch direkt auf den Präsenzmelder, so dass auch ohne TW der Präsenzmelder sicher deaktiviert werden kann.
Der Raumzustand wird mit dieser Lösung von der Timberwolflogik verwaltet und übersteht mit dem Persistenzflag auch einen Reboot des TWs. Ergänzt werden kann das dann noch mit der obigen Lösung bzgl. "Send after boot" um auch andere Geräte auf dem Bus z.B. nach einem Stromausfall mit dem aktuellen Raumzustand zu versorgen. Vielleicht hilft dir dieser Ansatz auch für deine Fragestellung ...

Bild

Code: Alles auswählen

{
  "Level": [
    ["$Set_SleepMode_In","bool",false],
    ["$State","integer",2],
    ["$State_automated","bool",false],
    ["$State_sleeping","bool",true],
    ["$VAR<Inhibit?>","bool",false]
  ],
  "Module": [
    ["Break",["$VAR<Inhibit?>"]],
    ["Statemachine",
    // 0: init
    // 1: automatik
    // 2: anwesend + schlafend
      [
        ["-$Set_SleepMode_In"    , 1, 1, 0],    // Automatik bleibt
        ["$Set_SleepMode_In"     , 1, 2, 0],    // Schlafen gehen
        ["-$Set_SleepMode_In"    , 2, 1, 0],    // Aufwachen (Automatikbetrieb)
        ["$Set_SleepMode_In"     , 2, 2, 0]     // Weiterschlafen 
      ],
      "$State"
    ],
    ["BinaryDemultiplexer","$State",["$State_automated","$State_sleeping"]]
  ],
  "Input": [
    ["Schlafen gehen","Anforderung Automatik 1/Schlafen 2","$Set_SleepMode_In","a"],
    ["Inhibit","INHIBIT","$VAR<Inhibit?>","u"]
  ],
  "Output": [
    ["Zustand","Zustand","$State","c"],
    ["Automatik","Automatikbetrieb","$State_automated","c"],
    ["Anwesend & Schlafend","Schlafend","$State_sleeping","c"]
  ]
}

Re: [V4.0 IP11] KNX Response auf Read-Telegram schicken (State Machine)

Verfasst: Mi Mai 01, 2024 12:11 am
von gbglace
blaubaerli hat geschrieben: Di Apr 30, 2024 12:52 pm ob das der Taster kann, ergibt sich letztlich durch die Fähigkeiten der angebotenen KNX-Applikation.
Das hat nix mit der Applikation und dem Handbuch zu tun.

Jedes KNX KO ist vollwertiger Teilnehmer am KNX-Bus.

Wenn ein Taster-KO das K und Ü Flag hat, ja dann kann das nur senden was so am Taster gedrückt wird.

Hat man noch ein S Flag dran, dann kann das KO auch mit einem Wert vom Bus aus beschrieben werden. Einfach gebaute Taster Applikationen wollen da auch das S Flag, weil sie ggf kein eigenes KO für den Status zum Umschalten haben. Haben sie ein solches separates KO dann schadet das S Flag aber auch nicht, weil die eingehenden Telegramme dann einfach im Taster nix bewirken. Aber der Inhalt des Telegramms ist dann aber im Stack im KO vorhanden.

Und somit kann man dann neben dem S Flag auch noch das L Flag setzen und dann solte das KO auch mit diesem letzten empfangenen oder auch selbst gesendeten Wert antworten.

Aktoren am Status-Ausgangs KO hingegen schauen auch hier und da bei eingehendem Lesetelgramm in sich hinein und holen von dort den Status. Das wird so ein Taster dann eher nicht tun.

Der Hinweis mit der Szene ist hingegen auch sehr valide.

Es ergibt keinen Sinn an einem Taster-KO oder einem TWS-KO das dafür eingerichtet wurde, eine Szene GA abzufragen. Man erhält dann zwar eine Antwort mit der zuletzt gesendeten Szenennummer aber da eine Szene keinen Staus hat, gerade wenn mehrere individuell bedienbare Geräte involviert sind, ist diese Antwort recht wertlos.
AndererStefan hat geschrieben: Di Apr 30, 2024 2:27 pm Das Haus wird nach dem Aufstehen auf „Morgen“ geschaltet, völlig egal was danach einzelne Aktoren machen. Später dann auf „Tag“.
Es wäre nun schön diesen Zustand (und ggf. weitere) an einem zentralen Ort wie einem Logik-Controller oder eben dem Timberwolf zu tracken.
Naja die Entscheidung dieser Statuswechsel macht bei mir eine Logik. Logiken im TWS mit Wirkung auf dem KNX benötigen als Output ein KO mit GA dran, also hat man hier auch nativ KNX-konform den Statusspeicher am KO, direkt am quasi Verursacher.
Manches macht ein Open-KNX Modul, das hst auch KO und GA und verhält sich entsprechend mit den passenden Flags.

Kommen diese Statusübergänge nur manuell, kann man sich natürlich überlegen wer es speichern soll.
Wobei Manuell via Visu jnd dabei dan TWS Visu auch wieder bedeutet man hat ein KO und GA Verbindung im TWS angelegt und damit auch wieder die Möglichkeiten die der Standard via den Flags bietet.