Ankündigung
Einklappen
Keine Ankündigung bisher.
OpenKNX-Logikmodul release
Einklappen
X
-
Moinsen, eine Frage da ich ein Logikmodul benötige. Kann ich das Logikmodul eigentlich auch auf dem OpenKNX REG1-Eth installieren und diesen dann zusätzlich als IP Router nutzen?
Einen Kommentar schreiben:
-
Wieso? Du kannst ja den Ausgang von dem Logikkanal weiter verwenden, auch in einer Benutzerformel. Bevor Benutzerformeln da waren, gingen Berechnungen ausschließlich durch Verkettung von Kanälen.Zitat von Alloc Beitrag anzeigenIch weiß, aber das hilft halt wirklich nur, wenn man außer dem Min/Max nichts machen will
Gruß, Waldemar
Einen Kommentar schreiben:
-
Ich weiß, aber das hilft halt wirklich nur, wenn man außer dem Min/Max nichts machen will
Einen Kommentar schreiben:
-
Ich formuliere das mal so: Wenn ich wieder was an den Benutzerformeln mache, kann ich gerne mal min und max einbauen. Ich würde den Topf jetzt aber nicht "extra" dafür aufmachen, vor allem, weil Du ja schon selber einen Workaround gefunden hast. Ist also nicht abgelehnt, wird aber nicht forciert. Kann somit schon ein Langläufer werden, mit Realisierungszeiten von > 1 Jahr oder so...
Gruß, Waldemar
- Likes 1
Einen Kommentar schreiben:
-
Wenn Du zwei feste Argumente hast, gibt es die bereits eingebaut.Zitat von Alloc Beitrag anzeigenBenutzerfunktionen "min" und "max"
Einen Kommentar schreiben:
-
Ah, dachte das wäre was eigenes. Dann wäre der Zusatzaufwand natürlich kaum vertretbarZitat von willisurf Beitrag anzeigenNur über ein zusätzliches Parsen, weil es in der genutzten Library nicht enthalten ist. Da es einfach über Vergleiche nachzubilden ist, lohnt es nicht den Zusatzaufwand.
Wenn ich Software entwickle dann hab ich gerne Code, der von sich aus schon direkt erkennen lässt, was er macht. Doku dann eher für den größeren KontextZitat von willisurf Beitrag anzeigenDafür kann man ja die Kommentare bei der Benutzerformel nutzen
Aber das geht ja schon so - solange man nicht noch mehr verschachteln muss. Aber dann könnte man das natürlich auch über zwei Funktionen abbilden, oder sich sogar allgemein Benutzerfunktionen "min" und "max" bauen, die man immer wieder verwendet.
Einen Kommentar schreiben:
-
mxcxpx sofern nicht schon anderweitig verwendet, könntest Du das ggf. direkt über die Urlaubsbehandlung abbilden:
https://github.com/OpenKNX/OFM-Logic...aubsbehandlung
- Likes 1
Einen Kommentar schreiben:
-
vielleicht kann mir jemand behilflich sein.
aktuell nutze ich die Logic mit der Zeitschalfuhr und Feiertagsoption zum Öffnen meiner Jalousie.
ich würde gern noch die Schulferien integrieren. diese habe ich aktuell auf einer KNX Gruppenadresse als binär-sensor.
Schulferien ja -> binär 01
und das würde ich gern verwenden wie ein Feiertag in der Logic.
wie stelle ich das am besten an. danke euch
Einen Kommentar schreiben:
-
Nur über ein zusätzliches Parsen, weil es in der genutzten Library nicht enthalten ist. Da es einfach über Vergleiche nachzubilden ist, lohnt es nicht den Zusatzaufwand.Zitat von Alloc Beitrag anzeigenWäre es eventuell Möglich, min und max einzubauen?
Dafür kann man ja die Kommentare bei der Benutzerformel nutzenZitat von Alloc Beitrag anzeigenvor allem da nicht direkt ersichtlich ist, was das Ziel istZuletzt geändert von willisurf; 21.12.2025, 19:13.
- Likes 1
Einen Kommentar schreiben:
-
Och Mensch, das hab ich doch schonmal übersehen...
Danke dir, Cornelius.
Einen Kommentar schreiben:
-
Alloc https://github.com/OpenKNX/OFM-Logic...#logik-trigger - kannst dort auch individuelle Eingänge festlegen: https://github.com/OpenKNX/OFM-Logic...ngstelegrammenZuletzt geändert von coko; 21.12.2025, 18:32.
Einen Kommentar schreiben:
-
Achja, und direkt noch eine weitere Frage:
Kann man verhindern, dass ein Eingang bei einem Logikkanal die Auswertung triggert? Ich habe hier zwei Eingänge, einer soll die Auswertung triggern, der andere dient nur dazu, den letzten Dimmwert vom Bus zu speichern (der dann in der Formel verändert wird und eben auf einer anderen GA gesendet). Aber aktuell löst auch jeder Empfang eines neuen Dimmwertes vom Bus ein Senden aus, weil eben dieser zweite Eingang auch immer mit als Auslöser dient.
Ich hätte jetzt intuitiv vermutet, dass man bei der Hauptseite der Logik unter "Logik-Trigger" auswählen kann, welche Eingänge triggern. Da sehe ich aber nur allgemeine Einstellungen. Ansonsten wäre das natürlich denkbar bei den einzelnen Eingangsselektoren (z.B. inaktiv, normal/invertiert aktiv, normal/invertiert aktiv aber nicht als Trigger), würde aber logischerweise die Auswahloptionen verdoppeln. Oder dann auf den jeweiligen Einstellungsseiten der Eingänge, dort kann ich aber wohl nur kontrollieren, ob der Dimmwert als logisch falsch oder logisch wahr gewertet wird, ändert aber dann auch nichts an der Auswertung der Logik.
Übersehe ich da noch etwas oder ist dies aktuell wirklich nicht möglich?
Etwas konkreter als Beispiel:
CODE]OpenKNX,cv1,0xA012:0x51/LOG:0x37/10§f~Name=Dimm%2B%20Test§f~Logic=1§f~NameInput1=Ex t.%20Trigger§f~E1=1§f~NameInput2=Dimmstatus§f~E2=1 §f~E2Dpt=3§f~E2LowDpt5001:1=0§f~I1Name=Schaltstatu s§f~I1=1§f~I1Kind=2§f~I1FunctionRel=1§f~NameOutput =Dimmwert§f~ODpt=3§f~OOn=8§f~OOnAll=8§f~OOnFunctio n=202§f~OOff=0§f~OOffAll=0§;OpenKNX[/CODE]
Die referenzierte Logik +1 spielt inhaltlich keine Rolle. Sie liefert einfach nur eine weitere Komponente (0/1) für die logische UND-Verknüpfung.
Letztlich will ich:
- Eingang 2 speichert den letzten empfangenen Wert vom Bus
- Ausgang wird nur geschrieben, wenn Logik True ergibt - also Eingang 1 und interner Eingang 1 jeweils True sind (Eingang 2 ist so definiert, dass er immer True ist) (der Teil funktioniert natürlich schon).
- Die Logik soll aber nur ausgewertet werden, wenn auf Eingang 1 ein Wert empfangen wird - Ereignisse auf Eingang 2 oder dem internen Eingang 1 sollen *nicht* zu einer Auswertung führen.
Aktuell ist es halt so, dass wenn Eingang 1 zuerst True wird, und danach interner Eingang 1 True, dann wird dabei schon ein Wert gesendet. Ebenso wird dann auch jedesmal ein Wert gesendet, wenn Eingang 2 den Wert ändert. Ich will aber halt nur, dass wenn Eingang 1 einen Wert empfängt (und interner Eingang 1 bereits True ist), dass dann auch ein Wert gesendet wird.Zuletzt geändert von Alloc; 21.12.2025, 17:43.
Einen Kommentar schreiben:
-
Huhu, wollte gerade mal wieder eine Logik mit Benutzerformel aufbauen. Ich bräuchte dabei aber die Möglichkeit, den Wert zu limitieren. Wollte also sowas wie "min(E1+0.25, 1)" schreiben. Nun sehe ich aber in der Liste der unterstützten Funktionen kein "min". Wäre es eventuell Möglich, min und max einzubauen?
Man kann das natürlich mit nem if nachbauen ("if(E1+0.25 > 1, 1, E1+0.25)"), aber das ist natürlich nicht elegant, vor allem da nicht direkt ersichtlich ist, was das Ziel ist
Einen Kommentar schreiben:
-
Am einfachsten wenn du die Funktionsblöcke benutzt, da hast du bis zu 9 Eingänge. Die Funktionsblöcke gibt es aber nicht als eigene FW, sondern die sind bei sehr vielen anderen dabei. Z.B. bei unseren neuen RaumController.Zitat von BooStar Beitrag anzeigench würde gerne den Mittelwert von mind. 3, oder 4 Eingängen auf den Ausgang senden, geht das irgendwie?
Einen Kommentar schreiben:


Einen Kommentar schreiben: