Die Leistungen bewegen sich so im hunderter bis tausender Bereich. Wenn Herd oder so an gehts mal bissel hoch, aber die Leistungen sind alle unter 10k.
Einzig die PV geht mal Richtung 20k.
Hier mal der Mitschnitt vom Gruppenmonitor. Das Ergebnis passt oft richtig gut, aber manchmal ist es einfach daneben. Echt komisch, ich hätte es verstanden wenn die Abweichung hinterm Komma wäre, das mal vom Runden ein bisschen auseinander läuft aber zum Teil ist die Ungenauigkeit ja im Watt Bereich.
Hab da aber ehrlich gesagt auch nicht wirklich Ahnung davon um das beurteilen zu können, eher ein Bauchgefühl.
Ich hab mal die Ergebnisse die nicht passen rot markiert.
Gruppenmonitormitschnitt.jpg
Ankündigung
Einklappen
Keine Ankündigung bisher.
OpenKNX-Logikmodul release
Einklappen
X
-
Ja, das ist erwartungskonform. Hängt vom DPT ab, wie genau eine Zahl dargestellt werden kann. DPT9 ist z.B. wesentlich ungenauer als DPT14. Aber selbst bei DPT14 ist, gibt es keine Möglichkeit, eine exakte Fließkomma-Repräsentation zu bekommen.Zitat von stonie2oo4 Beitrag anzeigenDas rechnen scheint soweit zu funktionieren, aber ich bin immer ein bisschen daneben beim Ergebnis der ersten Logik. Das variiert von 0 Komma bis zu ein paar Watt.
Versuch mal, DPT14.056 im Gruppenmonitor zu senden, z.B. den Wert 34544566. Gesendet wird dann in Wirklichkeit 34544570.
Allerdings wirst Du nicht mit so großen Zahlen arbeiten, oder?
Schick doch mal ein Gruppenmonitor-Mitschnitt...
Einen Kommentar schreiben:
-
Also der Tipp die Berechnung erst mal mit mehreren KO's zu machen war Gold wert. Hatte nämlich noch paar kleinere Fehler drin
.
Das rechnen scheint soweit zu funktionieren, aber ich bin immer ein bisschen daneben beim Ergebnis der ersten Logik. Das variiert von 0 Komma bis zu ein paar Watt.
Bei den nachfolgenden Logiken hab ich bis jetzt nur den weiteren Leistungswert aktiv, also noch nicht das Ergebnis der vorhergehenden Logik verknüpft, hier ist das Ergebnis absolut korrekt. Wobei er da ja auch mit nix (0?) addiert.
Als Logikoperation hab ich ODER gewählt und das bei jedem Telegramm der Wert gesendet wird. DPT = 14.
Ist es möglich das hier was bei der Berechnung schief geht, oder hab ich etwas vergessen zu beachten?
Einen Kommentar schreiben:
-
Vielen Dank
.
Echt der Hammer was so alles geht.
Ich werd es (hoffentlich) morgen mal testen.
Einen Kommentar schreiben:
-
Hi Ben,
zu Deinem Summen-Problem: Löse das erstmal klassisch mit GA an jedem KO, bis Du sicher bist, dass es korrekt funktioniert:- Logik 1: Modbus 1 + Modbus 2 = Modbus A
- Logik 2: Modbus 3 + Modbus A = Modbus B
- Logik 3: Modbus 4 + Modbus B = Modbus C
- Logik 4: Modbus 5 + Modbus C = Modbus D
- Logik 5: Modbus 6 + Modbus D = Modbus E
- Logik 6: Modbus 7 + Modbus E = Modbus F
Zu Deinem 2. Problem: Intern ist das Logikmodul durchaus in der Lage, Bitoperationen zu machen und damit einen Binärwert zu "zerbröseln", wie Du es sagst. Technisch wird das dadurch verhindert, dass derzeit nur 1, 2 und 4 Byte als Eingang funktionieren, Zeit ist aber 3 Byte.
Alternative Idee: Löse das mit Zeitschaltuhren.
Trivial: 24 Zeitschaltuhren, die jede Stunde das Stundensignal senden, das Minutensignal ist ja immer 0.
Besser (weil weniger Logikkanäle): Du machst einen Zähler, der jede Stunde von einer Zeitschaltuhr getriggert wird und seinen Wert um 1 erhöht (und dann sendet). Um Mitternacht wird der Zählerwert auf 0 gesetzt und gesendet.
Gruß, Waldemar
Nachtrag: Ich habe nochmal nachgeschaut, die Logik-Eingänge können auch DPT232, das ist 3 Byte. Damit könntest Du also auch die Uhrzeit empfangen und über Bitoperationen die Zeit auf ein KO mit DPT7 schicken.
- Likes 1
Einen Kommentar schreiben:
-
Ich hätte da 2 Problemchen und frage mich ob sich das mit dem Logikmodul lösen lässt.
Erstens:
Ich hab hier 7 Modbuszähler deren Werte ich auf den KNX schreibe ( Erdgeschoss, Obergeschoss, Keller, PV, usw.). Nun würd ich mir gern eine PV-Überschuss-Logik bauen. Also erstmal alle Leistungen addieren und dann sieht man ja anhand vom Vorzeichen ob Überschuss da ist oder nicht.
Das wäre ein KO.
Ich hab das probiert, aber die Problematik die ich habe, ich weiß nicht ob ich interne KOs addieren kann?
Also pro Logik hab ich ja 2 Eingänge und ich weiß nicht wenn ich es intern weiterreiche ob ich damit dann rechnen kann. Ich hab 4 Logikblöcke mit Oder erstellt und nur der letzte hat am Ausgang die Rechenoperation. Muss ich da über 4 „Dummy-KOs“ gehen?
Wollte ich eigentlich wenn möglich vermeiden, oder hab ich nur mal wieder nen Denkfehler? 😅
Und im zweiten Schritt würde ich gern ein KO erstellen mit 0/1, welches 1 wird sobald Überschuss vorhanden ist.
Mein zweites Problem:
Unsere neue BWWP sendet per Modbus die Systemzeit auf den Bus, bzw. kann man sie darüber auch setzen. Nun ist mir aufgefallen, aus welchem Grund auch immer, läuft die Zeit ziemlich davon.
Ich würde diese gerne stündlich mit der Zeit vom Bus synchronisieren.
Leider hat die BWWP jeweils ein KO für Stunden und Minuten in DPT7.
Lässt sich die KNX Zeit DPT10 mit dem Logikmodul so zerbröseln das ich eben wie ich es bräuchte 2 extra KOs für Stunden und Minuten rausbekomme?Zuletzt geändert von stonie2oo4; 20.08.2023, 13:53.
Einen Kommentar schreiben:
-
Hm, wenn Du das brauchst, dann ist das so. Dafür eine "sinnlose" Logik zu programmieren nur um ein paar Telegramme zu vermeiden halte ich nicht wirklich für erstrebenswert.Zitat von mgeramb Beitrag anzeigenIch wollte dir schon zustimmen, habe jetzt meinen Anwendungsfall nochmal geprüft. Da wären 2 Kanalausgänge und ein Eingang mit eben so einem Flip-Flop zu verschalten, mit deinem Ansatz muss ich die Ausgänge alle auf den Bus schicken obwohl ich sie nicht wirklich dort brauche.
Gruß, Waldemar
- Likes 1
Einen Kommentar schreiben:
-
Na ja, auch gut, dann weiß ich wenigsten dass ich keinen Speicher unnötig verbrate wenn ich eine Zusätzliche Logik dahinter hängeZitat von mumpf Beitrag anzeigenDazu kann ich schon jetzt was sagen: Bei Zeitschaltuhren gibt es keine Eingänge! Der Grund ist ganz einfach... die Definition der Schaltzeiten liegt exakt im gleichen Speicherbereich, in den die definitionen für die Eingänge liegen (Memory-Overlay).
Einen Kommentar schreiben:
-
Ich wollte dir schon zustimmen, habe jetzt meinen Anwendungsfall nochmal geprüft. Da wären 2 Kanalausgänge und ein Eingang mit eben so einem Flip-Flop zu verschalten, mit deinem Ansatz muss ich die Ausgänge alle auf den Bus schicken obwohl ich sie nicht wirklich dort brauche. Ich könnte natürlich auch wieder mit dem K-Flag das verhindern, habs aktuell aber ohnedies schon über eine zusätzliche Logik gebaut.Zitat von mumpf Beitrag anzeigenDa musste ich grinsen, das geht natürlich schon.
Einen Kommentar schreiben:
-
Da musste ich grinsen, das geht natürlich schon. Nimm eine Logik mit einem Eingang und verbinde 2 GA mit diesem Eingang. Jede GA kann einschalten, jede auch ausschalten. Oder anders gesagt: Das ist das Standardverhalten von KNXZitat von mgeramb Beitrag anzeigen- Flip-Flop bei dem jeder Eingang Ein- bzw. Aus- Schalten kann, sprich das letzte Telegram entscheidet ob ein- oder ausgeschalten wird
.
Gruß, Waldemar
- Likes 2
Einen Kommentar schreiben:
-
Dazu kann ich schon jetzt was sagen: Bei Zeitschaltuhren gibt es keine Eingänge! Der Grund ist ganz einfach... die Definition der Schaltzeiten liegt exakt im gleichen Speicherbereich, in den die definitionen für die Eingänge liegen (Memory-Overlay). Es kann also nur das Eine oder das Andere geben.Zitat von mgeramb Beitrag anzeigen- Bei Schaltuhren könnten die Eingänge für Sperren oder Freischalten benutzt werden
Gruß, Waldemar
Einen Kommentar schreiben:
-
Alles klar, ist auch nicht eilig, weil ich gut damit auskommen und es schon funktioniert, ist mir nur aufgefallen weil ich es ursprünglich falsch benutzt habe weil bei den MDT Logiken es ja immer den Modus gibt nur bei Ausgangsänderung Telegram senden. Ich weiß dass das bereits mit deiner Logik geht, hat mich aber auf die falsche Fährte gebracht.Zitat von mumpf Beitrag anzeigen"Bei einer Änderung vom Eingangstelegramm" ändern. Applikationsänderungen dauern aber eine Weile...
Der Baustein ist jedenfalls Megamäßig cool und übernimmt schon einige wichtige Aufgaben:
- Jalousienautomatik automatisch nach deaktivierung in der Nacht aktivieren
- Bewässerung nach Sonnenaufgang und vor Untergang mit Vorwässermodus
- Speicherung von Min- und Max- Temperatur
Ansonsten sammle ich fleißig an Ideen die vielleicht praktisch sein könnten und diskutiert werden sollten:
- Eigene Logik für Wert speichern, das geht zwar aktuell, ist aber doch recht umständlich zu definieren
- Flip-Flop bei dem jeder Eingang Ein- bzw. Aus- Schalten kann, sprich das letzte Telegram entscheidet ob ein- oder ausgeschalten wird
- So wie bei TOR sofort schließen, würde ich mir diese Funktion generell für Eingänge wünsche, die sollen einmalig triggern, dann sich aber selber sofort wieder rücksetzten (Auf den Default-Wert) können.
- Bei Schaltuhren könnten die Eingänge für Sperren oder Freischalten benutzt werden
Einen Kommentar schreiben:
-
Hi,
vielleicht hab ich das missverständlich formuliert. Es ist nicht das Ergebnis des Logikausgangs gemeint, sondern das Ergebnis der Eingangskonverter. Manchmal ist man betriebsblind... ich werde das in "Bei einer Änderung vom Eingangstelegramm" ändern. Applikationsänderungen dauern aber eine Weile...
Anders gesagt: Es soll so funktionieren und für Deinen Fall ist "bei jedem Eingangstelegramm" richtig. Und falls Du nur mit 1 triggern willst, müsstest Du entweder ein Logikkanal als Filter (nur 1 durchlassen) davorschalten oder Deine Logik 2 (falls sie sonst nichts macht außer Treppenlicht) als TOR definieren, das am Dateneingang konstant eine 1 hat und der Toreingang auf Impulssteuerung steht. Dann wird auch nur mit 1 getriggert.
Gruß, Waldemar
Einen Kommentar schreiben:
-
mumpf
Ich habe einen möglichen Bug im Treppenlicht gefunden, kann aber auch sein, dass es so gewollt ist:
Logik 1 sendet 1
Logik 2 nimmt Ausgang Logik 1 als Eingang und hat "Nur bei geänderten Ergebnis" definiert mit Treppenlicht 10 Sekunden
Logik 2 geht auf 1 und wie gewünscht nach 10 Sekunden auf 0
Logik 1 sendet nochmals 1
-> da damit das Treppenlicht seinen Ausgang von 0 auf 1 ändern sollte, hätte ich vermutet das die Einstellung "Nur bei geänderten Ergebnis" das Treppenlicht schaltet lässt. Das passiert aber nicht, erst wenn Logik 1 einmal auf 0 geht aktiviert sich beim nächsten 1 das Treppenlicht wieder.
Mit "bei jedem Eingangstelegramm" funktioniert die Logik wie gewünscht.
Einen Kommentar schreiben:
-
Habs noch nicht probiert, aber sendet der Ausgang dann nicht auch bei jeder Wertänderung?Zitat von mumpf Beitrag anzeigenEingang 1 (z.B. DPT5), Wertintervall (alle Werte liegen im Intervall), ODER, Ausgang DPT5, Wert von Eingang 1 senden.
Einen Kommentar schreiben:


Einen Kommentar schreiben: