Frage zum Zentral Aus KNX und Visu

Hallo liebe Community,

mit IP Symco bin ich noch Neuling. An folgendes hänge ich gerade.
In meiner KNX Anlage gibt es einen Zentral Aus Befehl. Diesen habe ich in die Kachelvisualisierung gepackt.
Dazu habe ich mir eine Hilfsvariable erstellt und eine Ablaufplan/Auslöserautomatisierung. Sobald eine Schaltvariable eines Beleuchtungsaktors auf die True schaltet, wird meine Hilfsvariable auch auf True gesetzt. Diese habe ich als Rückmeldeadresse auf meine Zetral Aus Instanz gelegt.
Funktioniert super. Sobald auch nur eine einzige Leuchte eingeschatet wird, zeigt mir die Visu das an und ich kann den Zentral Aus Befehl senden.
Auch wird es mir auf meine Beleuchtung Zentral Aus Statusadresse auf meinen KNX Bus gesendet. Hier kann ich es für die Glastaster auch nutzen.
Das ist wirklich praktisch.
Nur wie kann ich es verhindern, dass im Falle keiner eingeschateten Leuchte man in der Visu auf die Fläche lickt und damit alle meinen Leuchten angehen?
Ich möchte nicht, dass die Visufläche toggelt, sondern, dass sie nur Aus senden kann.

Ich hoffe es ist verständlich.

VG
Jan

Hallo Jan,

willkommen bei den Aktiven!

Schau mal, ob du hiermit schon etwas anfangen kannst, ansonsten gerne fragen!

Die Idee ist, bei Tastenbetätigung nicht direkt den Wert zu senden sondern diesen per Aktionsscript abzufangen und immer ein AUS zu senden.

Viel Erfolg!
Volker

Vielen lieben Dank.

Ich habe es schon befürchtet, dass ich das Thema Scripte erlernen muss.
Ich hatte gehofft, dass man irgendwie die Eigenschaften der Vidufläche parametrieren kann.

Ich werde es versuchen. :muscle:t2:

Ansonsten hatte ich auf grafische Logikpläne gehofft.
Ich komme eher aus dieser Welt.

VG
Jan

Die funktionieren aktuell noch nicht so gut für Aktionsskripte. Aber wir bekommen das bestimmt zusammen hin.

Probier mal was aus und schreib deine Ergebnisse und wir helfen dir. Sollten eher so 3-4 Zeilen Code sein die du brauchst.

paresy

ChatGPT kann hier in Ansätzen schon mal ganz gut weiterhelfen.
Musst nur zu Beginn klarmachen, dass du eine Programmierung für IP Symcon benötigst - dann passt die KI das Script schön darauf hin an.

also z.B.
die Variable 1234 soll in IP Symcon bei der Aktion "sowieso" nur dann ausgeführt werden können, wenn sie auf "true" gesetzt wird und nicht wenn sie auf "false" steht. Anbindung an KNX bitte berücksichtigen

Das sollte dir schon mal ein erstes Script liefern, mit dem du arbeiten kannst :wink:

<?php // ID der zu überprüfenden Variable $variableID = 14295; // Aktuellen Wert der Variable abfragen $value = GetValueBoolean($variableID); // Bedingung prüfen und Aktion ausführen if ($value === true) { // Aktion ausführen, wenn die Variable auf true steht // Beispielaktion: Schalten eines KNX-Geräts $knxDeviceID = 25876; // Ersetzen Sie dies durch die ID des KNX-Geräts EIB_Switch($knxDeviceID, true); // Schaltet das KNX-Gerät ein // Weitere Aktionen hier einfügen } else { // Optionale Aktion, wenn die Variable auf false steht // echo "Die Aktion wird nicht ausgeführt, da die Variable auf false steht."; } ?>

Das hat mir ChatGPT erstellt.Leider erzeugt es folgende Fehlermeldung:

Warning: Instance does not implement this function in /mnt/data/symcon/scripts/41362.ips.php on line 13

Code kannst du im Editor mit der Formatierung mit den spitzen Klammern kennzeichnen, dann wird der sauber dargestellt.

Das EIB_Switch() das ChatGPT vorschlägt gilt nur für die alten EIB_Instanzen, die inzwischen durch die KNX-Instanzen abgelöst sind. Das wird für ein frisches Symcon also nicht passen. Bei den KNX-Instanzen vom Typ DPT1 würde man stattdessen KNX_WriteDPT1(InstanzID, true) benutzen.

Zeig einfach mal einen Screenshot der Instanz im Objektbaum, die du schalten möchtest, so dass wir Typ und ID sehen. Dann kann man mit einem passenden Code helfen.

Jetzt funktioniert es. Ich hatte die KNX Geräte über den neuen semantischen Import angelegt. Dann sind es KNX Geräte. Ich habe den Zentral Aus gelöscht und manuell als KNXDPT1 Gerät angelegt und dann funktioniert es. Ansonsten kommt wieder die Fehlermeldung.
ier könnte Verbesserungsbedarf bestehen.

<?php
// ID der zu überprüfenden Variable
$variableID = 44253;

// Aktuellen Wert der Variable abfragen
$value = GetValueBoolean($variableID);

// Bedingung prüfen und Aktion ausführen
if ($value === true) {
    // Aktion ausführen, wenn die Variable auf true steht
    // Beispielaktion: Schalten eines KNX-Geräts
    $knxDeviceID = 30132; // Ersetzen Sie dies durch die ID des KNX-Geräts
    KNX_WriteDPT1($knxDeviceID, false); // Schaltet das KNX-Gerät ein
    // Weitere Aktionen hier einfügen
} else {
    // Optionale Aktion, wenn die Variable auf false steht
    // echo "Die Aktion wird nicht ausgeführt, da die Variable auf false steht.";
}
?>
1 „Gefällt mir“

Oh je, dann haben wir inzwischen 3 Varianten einer KNX GA. Das macht es bei Forumsfragen zukünftig noch schwieriger passend zu antworten.

@paresy, gibt’s zum „KNX Gerät“ schon Doku?

Und eine Anmerkung: Wer in die Doku schaut findet primär die EIB_xxx Funktionen, das nicht mehr wirklich neue KNX_WriteDPT taucht nicht auf. Und nun halt noch das KNX Gerät als neue Variante. Zum Themenfeld KNX wäre eine Durchsicht + Aktualisierung der Doku sinnvoll, sonst sind die Einsteiger verloren.

1 „Gefällt mir“

Glückwunsch, dass du es mit dem Skripten versuchst! Auf lange Sicht ist das ein sehr wertvolles Werkzeug. Wenn du nun bspw irgendwann eine Leuchte hinzufügst, die nicht am KNX hängt sondern irgendeinem Funksystem (bspw weil sie einen einfachen Stecker hat und dort keine schaltbare Steckdose ist) wirst du sie mit Hilfe des Skripts unkompliziert mit in die „Zentral Aus“ Funktion einbinden können. Hierin liegt die Stärke von IPS.

1 „Gefällt mir“

Ich stand mal vor der gleichen Aufgabe das Eine Varaiable an KNX nur aus senden sollte und nie an wurde mir hier im Super geholfen

Taster für KNX - #4 von gogo20012002