Ankündigung

Einklappen

Sammelbestellung ETS6 Vollversionen aktiv!

Sammelbestellung für ETS6 Vollversionen (Prof., Home, Lite) mit 40% Rabatt aktiv! Infos im Forum!
Mehr anzeigen
Weniger anzeigen

OpenKNX-Logikmodul release

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • shortyle
    antwortet
    Zitat von mumpf Beitrag anzeigen
    Szenen 1-4 werden auf dem Bus als 0-3 übertragen.
    oh man...stimmt ja. Aber ist es korrekt mit den DPT Szenen für die Verwendung im VPM?

    Hier mal die Statusausgaben der 4 Logiken ganz aktuell (die ZSU 2-4 scheinen also nicht zu laufen)

    L01 = Ax B1 Cx Dx Q1
    L02 = Ax Bx Cx Dx Qx
    L03 = Ax Bx Cx Dx Qx
    L04 = Ax Bx Cx Dx Qx


    Die Schaltzeiten sind wiefolgt definiert

    L01 jeder - Sonnenaufgang minus Zeitversatz 00h 30m Ein
    L02 jeder - Sonnenaufgang plus Zeitversatz 01h 00m Ein
    L03 jeder - Sonnenuntergang minus Zeitversatz 00h 30m Ein
    L04 jeder - Sonnenuntergang: Spätestens 22h 00m Ein​

    edit:// Hier sehe ich gerade selber das sich L03 und L04 beißen...da muss ich nochmal ran

    Müsste dann jetzt aber nicht L02 einen plausiblen Status ausgeben?

    Und hier noch die Geräteinfo
    Bildschirmfoto 2023-10-20 um 09.32.36.png


    Zum Schluss nochmal die Parameter der Tagesphase die jetzt eigentlich gültig sein müsste L02
    Bildschirmfoto 2023-10-20 um 09.36.31.pngBildschirmfoto 2023-10-20 um 09.36.51.pngBildschirmfoto 2023-10-20 um 09.37.08.png
    Zuletzt geändert von shortyle; 20.10.2023, 08:47.

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Szenen 1-4 werden auf dem Bus als 0-3 übertragen.

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hi David,

    Zitat von shortyle Beitrag anzeigen
    Ich traue mich ja schon gar nicht mehr zu fragen
    Ich möchte betonen, dass man hier immer fragen darf. Ich kann manchmal nicht sofort antworten, netterweise macht auch willisurf mit beim Beantworten der Fragen. Es ist ja auch ein komplexes stück Software, dass wir da haben - das bringt die Flexibilität mit sich.

    Was ich aus Deinem - wirklich ausfühlichen (DANKE) - Protokoll lese:
    • Die eine Zeitschaltuhr, die wir sehen, ist vernünftig definiert, wie willisurf schon sagte, die AUS-Zeiten sind nicht nötig
    • Du hast auch "Den letzten Schaltpunkt nachholen" angehakt, auch prima, dann hast Du nach dem Neustart immer eine passende Tagesphase, allerdings nur, wenn die Zeitintervalle der 4 Zeitschaltuhren keine Lücken haben! Hier vermute ich ein mögliches Problem (also eine Lücke)
    • Der Status für L1 ergibt ein Q0, diese Zeitschaltuhr wurde ausgeführt (hier wurde eine Zeit getroffen), das Ergebnis ist 0, also war die Zeit später as "Sonnenaufgang + 1h". Die Zeitschaltuhr hat dann eine 0 gesendet, der Ausgang sendet kein AUS.
    • Keine der anderen Zeitschaltuhren war bisher aktiv (Qx).
    • Somit ist das Ergebnis richtig, da ein AUS nicht gesendet wird.
    Ich würde jetzt sagen, dass Du die Zeitintervalle nicht korrekt definiert hast... AUSSER Du verwendet nicht die neuste Version des Logikmoduls. Ich hatte vor nicht allzu langer Zeit einen Bug bei der Berechnung vom Zeitversatz.

    Schick mir mal die Geräteinfo für das Gerät, auf dem das Logikmodul läuft. Ich schaue dann, ob in der Version die Korrektur des Logikmoduls schon drin ist.

    Gruß, Waldemar






    Einen Kommentar schreiben:


  • shortyle
    antwortet
    Hab die Flags jetzt mal entsprechend angepasst.
    Bildschirmfoto 2023-10-20 um 08.58.27.png

    Komisch ist jetzt, dass er als Ergebnis "0" liefert. Wobei ich "0" ja nie definiert habe in den 4 Logiken sondern nur 1-4.
    Bildschirmfoto 2023-10-20 um 09.11.31.png

    Bei R07:42 und S18:08 sollte er ja als Wert 2 ausgeben.
    Kann es an den DPT liegen, im Busmonitor gibt er es als DPT5.005 aus. In den Einstellungen hatte ich es ja als Ausgabe mit 17.001 definiert?!

    Eine normale ZSU funktioniert. gerade getestet.

    Einen Kommentar schreiben:


  • willisurf
    antwortet
    Zitat von shortyle Beitrag anzeigen
    Datum und Uhrzeit sind verknüpft und werden bei Diagnose mit "t" korrekt zurückgespielt.
    Gut. Funktioniert denn eine ganz normale Zeitschaltuhr mal probeweise auf einem Kanal?

    Zitat von shortyle Beitrag anzeigen
    Das mit den AUS Zeiten hatte ich auch nur eingerichtet weil es ohne diese auch nicht funktioniert hat.
    Das ist merkwürdig und sollte so nicht sein.

    Zitat von shortyle Beitrag anzeigen
    Bei den Flags stehe ich ein wenig auf dem Schlauch. Also nur bei Kanal 1 (von den besagten 4) die Flags K, L, S, Ü setzen und bei den anderen 3 nur K und Ü?
    Ja genau. Sinn der Einstellung ist, das Du bei einem ReadRequest auf der mit 4 KOs verknüpften GA eine eindeutige Rückmeldung bekommst, auch wenn der 2., 3. oder 4. Kanal zuletzt aktiv war.

    Einen Kommentar schreiben:


  • shortyle
    antwortet
    Das mit den AUS Zeiten hatte ich auch nur eingerichtet weil es ohne diese auch nicht funktioniert hat.

    Datum und Uhrzeit sind verknüpft und werden bei Diagnose mit "t" korrekt zurückgespielt.

    Bei den Flags stehe ich ein wenig auf dem Schlauch. Also nur bei Kanal 1 (von den besagten 4) die Flags K, L, S, Ü setzen und bei den anderen 3 nur K und Ü?

    Einen Kommentar schreiben:


  • willisurf
    antwortet
    Uhrzeit und Datum ist verknüpft? Ansonsten ist das Vorgehen mit den 4 Logikkanälen genau richtig. Ich ändere auch immer noch die Flags, damit nur bei einem Kanal das L-Flag gesetzt ist und setze bei diesem Kanal auch das S-Flag.

    P.S. Du musst keine AUS Zeiten programmieren, diese werden richtigerweise ja beim Ausgang auch nicht gesendet.
    Zuletzt geändert von willisurf; 20.10.2023, 07:14.

    Einen Kommentar schreiben:


  • shortyle
    antwortet
    Ich traue mich ja schon gar nicht mehr zu fragen, bei der Vielzahl in den letzten Tagen im VPM Thread 🙄

    Aber dennoch hoffe ich, dass ich nochmal einen Gedankenanstoß bzgl. Zeitschaltuhr-Funktionalität bekomme

    Ich möchte die für den VPM sinnvollen Tagesphasen mit dem Logikbaustein darin darstellen.

    Ich hätte die 4 Tagesphasen über 4 Logikkanäle dargestellt mit 4 Zeitschaltuhren, die durch ihre Schaltzeiten eine gemeinsame beschreiben.
    Der Auswertung wird allerdings nicht gesendet.

    Hier einmal die Screenshots des ersten Kanals

    Bildschirmfoto 2023-10-19 um 22.00.05.png

    Bildschirmfoto 2023-10-19 um 22.00.16.png

    Bildschirmfoto 2023-10-19 um 22.00.36.png

    Bildschirmfoto 2023-10-19 um 22.03.50.png

    Also Ausgang habe ich DPT Szene gewählt, da beim VPM der Eingang für Tagesphase DPT 17.001 ist.

    Logik 1 hat als Ausgabewert "1", L2 = 2, L3 = 3, L4 = 4

    Problem ist nun, dass keine der Tagesphasen ausgegeben wird. Sunrise und SunSet werden lt. Diagnoseobjekt korrekt ermittelt.
    Der Status für L1 gibt aus Ax B0 Cx Dx Q0.
    Für L2-L4 gibt es als Diagnose Ax Bx Cx Dx Qx

    Alle Kanäle sind aktiviert.

    Das Problem sitzt sicher wieder vor dem Bildschirm, aber ich habe keine Idee wo das Problem in meiner "Logik" drin ist?!
    Angehängte Dateien

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hi Leute,

    es gibt eine neue Version vom Logikmodul 1.5.3. verfügbar. Ab sofort gibt es hier nur einen Verweis auf die Produktinfo in unserem Wiki:

    https://github.com/OpenKNX/OpenKNX/w...nfo-Logikmodul

    Ich werde auch entsprechend den ersten Post anpassen.

    Gruß, Waldemar
    Zuletzt geändert von mumpf; 06.09.2023, 23:02.

    Einen Kommentar schreiben:


  • uncelsam
    antwortet
    Vielen Dank!

    Eigentlich ganz einfach... Ich brauche unbedingt mehr Zeit um mich mit dem Logikmodul zu beschäftigen.
    Ganz genau muss das ganze nicht sein, die Pulse dienen zur Ausgabe der Regenmenge in der letzten Zeiteinheit, als direkten Wert auf den Bus.

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hi,

    es gibt verschiedene Möglichkeiten, Ausgangspunkt ist eine Zeitschaltuhr. Wenn nach 1 Sec. ausgeschaltet werden soll, machst Du in der Ausgangspipeline immer ein Treppenlicht mit 1 Sec, die Zeitschaltuhren müssen dann nur ein EIN senden.
    • Jede Woche: Tagesschaltuhr; den gewünschten Wochentag auswählen, die Einschaltzeit eingeben, Wert EIN.
    • Jeden Tag: Wie Woche, Wochentag bleibt auf "jeder" stehen.
    • Jede Stunde: Wie Tag, Stunde bleibt auf "jede" stehen.
    10 Minuten gibt es so nicht, kann man aber mit 2 Kanälen einfach machen: Du nimmst das Stundensignal (also eine Zeitschaltuhr, die jede Stunde einschaltet) und vervielfachst das mittels blinken:
    • In der Ausgangspipeline nimmst Du ein Treppenlicht ohne verlängern und ohne ausschalten, Zeit 51 Minuten (kann auch 55 Min sein, nur >50 und <60, damit ganz sicher die letzte Schaltzeit ausgeführt wird)
    • Du lässt es im Rythmus 5 Min blinken (5 Min EIN, 5 Min AUS).
    • Den 2. Kanal nutzt Du, um über ein normales Treppenlicht nach 1 Sek. auszuschalten. Da das 2. Treppenlicht nur von einem EIN getriggert wird, wird es nach 1 Sek. ausschalten, das folgende AUS vom blinken wird nicht stören und erst das darauffolgende EIN wird es wieder auslösen.
    • Dadurch hast Du alle 10 Minuten eine 1 Sek. Flanke und kannst über die Zeitschaltuhr bestimmen, zu welcher Minute (innerhalb der Stunde) der Trigger passieren soll.
    Mit einem kleinen Trick kann man auch um den 2. Kanal für 10 Minuten herumkommen:
    Du machst in der Ausgangspipeline der Zeitschaltuhr nach dem Treppenlicht mit blinken auch noch die Ein-/Ausschaltverzögerung aktiv. Du verzögerst das Einschalten um 4 Minuten und 59 Sekunden (also um 299 Sekunden) und das Ausschalten gar nicht. Damit bekommst Du auch alle 10 Minuten eine 1 Sekunden-Flanke, allerdings um 4:59 verschoben (später) zur Minute, die Du in der Zeitschaltuhr vorgibst.

    Hier nochmal der Screenshot mit Ein-/Ausschaltverzögerung:
    Flanke alle 10 Minuten.png
    Grundsätzlich kann man immer mit Schaltzeit + Vervielfältigung arbeiten, das klappt ganz gut.
    Warum nicht nur Treppenlicht und blinken: Die Zeitschaltuhr synchronisiert irgendwelche drifts. Wenn Du 12:07 alle 10 Min ein Signal haben willst, kann es schon sein, dass der 5. Impuls um 12:57:01 kommt. Dann bist Du aber sicher, dass der nächste um 13:07 kommt.

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • uncelsam
    antwortet
    Hallo,

    ich suche gerade eine möglichkeit einen Zeittrigger zu generieren, sprich zu jeder vollen Zeiteinheit (z.B. 10min, Stunde, Tage, Woche) soll für z.B. 1sec "Ein" gesendet werden, anschließend wieder einen "Aus"

    Grüße

    Einen Kommentar schreiben:


  • Lexxs
    antwortet
    mumpf
    Hi Waldemar,

    das heißt dann ich bräuchte 8 Logikkanäle die ich jeweils als UND (intern, Kanalausgänge verbinden) verknüpfe?
    Der "Ausgang" der Logik 1 wird wie im Bild eingestellt? Der "AUS-Zustand", Blau umrandet, ist in diesem Fall für alle Formeln uninteressant oder? Dieser kann auch Ausgeschaltet werden?


    Gruß Lex
    Angehängte Dateien

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hi Lex,

    machen kann man das schon, ist eher aufwändig. Der einfachste Weg wäre eine Benutzerfunktion, aber dann müsstest Du die Firmware selber bauen, das ist zu Zeit eher aufwändig. Oder man macht es mit einzelnen Formelkanälen.

    Dazu erstmal die Formel etwas aufbereiten:

    13.234803266661 * rH * 10^(7.5 * T / (237.3 + T)) / (273.15 + T)

    Dann würde man folgendes rechnen:
    K1 = 237.3 + T
    K2 = 273.15 + T
    K3 = 7.5 * T
    K4 = K3 / K1
    K5 = 10 ^ K4
    K6 = K5 / K2
    K7 = 13.234803266661 * rH
    K8 = K7 * K6

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • Lexxs
    antwortet
    Ich wollte mal nachfragen ob es mit dem Logikmodul möglich wäre eine relative Luftfeuchte in eine Absolute Luftfeuchte umzurechnen?

    Die Formel dazu würde wie folgt lauten:

    10^5 * 18.016/8314.3 * relLuftfeuchte/100 * 6.1078 * 10^((7.5*raumTemperatur) / (237.3+raumTemperatur)) / (raumTemperatur + 273.15)

    Ich habe leider keine Lösung dazu gefunden und wollte nachfragen ob es überhaupt möglich wäre?
    Ebenso stellt sich die Frage ob man zwei Eingangswerte (DPT9) mit "Kleiner/Gleich" vergleichen könnte?


    Gruß Lex
    Zuletzt geändert von Lexxs; 21.08.2023, 18:23.

    Einen Kommentar schreiben:

Lädt...
X