[Frage] [V4.8 IP6] Logikbaustein als "Parameterseite" für weitere Verarbeitung gesucht.

Informationen und Diskussionen über Logik-Engine und Logik-Editor
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln
Antworten

Ersteller
ho5enth1en
Beiträge: 16
Registriert: So Jul 02, 2023 10:23 pm
Wohnort: Göllheim
Hat sich bedankt: 14 Mal
Danksagung erhalten: 18 Mal

[V4.8 IP6] Logikbaustein als "Parameterseite" für weitere Verarbeitung gesucht.

#1

Beitrag von ho5enth1en »

Hallo,
ich benötige eine "Logik" als "Parameterseite".
Kurz gesagt, auf der Eingangsseite sollen 10 (oder mehr) Eingänge als "Parameter" eingegeben werden. Zu jedem Eingang einen dazugehörigen Ausgang. Zusätzlich einen Trigger (Objekt, Zeit) um die Parameter im regelmäßigen Abständen zu senden.


Parameter 1 --> Ausgang 1
Parameter 2 --> Ausgang 2
Parameter 3 --> Ausgang 3
+ ...
Trigger [Zeit, Objekt] --> alle Ausgangswerte im Intervall oder per Abruf senden

Sinn der ganzen Sache: Ich möchte übergreifend in einer Logik alle Korrekturwerte für weitere Berechnungen in anderen Logiken verwalten.
Ist so etwas möglich oder jemand dafür bereits eine Lösung? Meine Erfahrung in Logik Programmieren ist im Augenblick leider noch bei ziemlich 0 (Parallel zum Post versuche ich mich aber gerade mit Hilfe der Wiki).

Edit:
ich bin mittlerweile weiter, aber meine Logik lässt sich nicht speichern :-(
Bild


Gruß
Torsten
Zuletzt geändert von ho5enth1en am Sa Mär 21, 2026 11:47 am, insgesamt 4-mal geändert.
TimberWolf #1192 3500XL VPN offen Reboot jederzeit

eib-eg
Beiträge: 920
Registriert: Fr Sep 14, 2018 5:03 pm
Hat sich bedankt: 1720 Mal
Danksagung erhalten: 672 Mal

#2

Beitrag von eib-eg »

Da gibt’s glaube ich schon was ist ca 4 Monate her
Wurde auf ein anders System gesendet
Nutze mal die Suche wenn du nicht klar kommst meldest dich mit genauester Beschreibung und ich versuche den Kanon zu beauftragen
Oft ist es aber dan so das man an verschiedene Sachen nicht daran denkt warum die Logik noch nicht ausgegeben wird vom Kanon

Dadurch entstehen immer Rückfragen und Verzögerungen
Mache eine Beschreibung von mir aus mit 50 Seiten
Dann verstehst was dahintersteckt wenn du alle kleinsten Details erklärst

Wenn du es schaffst das der Kanon beim ersten Mal ohne nachzufragen weil ihm noch was abgeht die Logik liefert habe ich eine Kleinigkeit für dich als Überraschung.
TW 2600_99 seit 1.1.2018 / VPN zu

Ersteller
ho5enth1en
Beiträge: 16
Registriert: So Jul 02, 2023 10:23 pm
Wohnort: Göllheim
Hat sich bedankt: 14 Mal
Danksagung erhalten: 18 Mal

#3

Beitrag von ho5enth1en »

@eib-eg
danke für deine Antwort, über die Suche bin ich leider nicht fündig geworden.
Off Topic
Wer oder Was ist Kanon ?
TimberWolf #1192 3500XL VPN offen Reboot jederzeit

gbglace
Beiträge: 4319
Registriert: So Aug 12, 2018 10:20 am
Hat sich bedankt: 1522 Mal
Danksagung erhalten: 2068 Mal

#4

Beitrag von gbglace »

in ganz grob / kurz. Ein großer umfangreicher gut sortierter Prompt als Input für eine KI, die dann in der Lage ist TWS Custom-Logiken zu bauen.

Wenn Du Custom-Logiken hier vorstellst und was nachfragst bitte immer den Code im Thread mit reinpacken, nur auf dem Bild kann man ja nix erkennen welche Module Du im Innern verwendet hast und dort ggf nur einen Syntaxfehler drinnen hast.

Ich würde es wohl mit der Definition von Eingangsobjekten und Ausgangsobjekten machen und als Verbindung je Pärchen ein LATCH. Ansonsten nimm einige Andere Logiken die hier im Forum zur Nutzung freigegeben wurden und schaue nach wie dort Timer als Trigger umgesetzt werden. bei meinem Zählerbaustein ist auch intern ein Timer enthalten der halt mindestens alle 15 Minuten los geht oder eben bei neuen Eingangswerten.

Ansonsten wie gesagt Code hier einstellen.
Grüße Göran
#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#PV 43,2 kWh Akku; 3x VE MP2 5000; 6,7 kWp > 18 Panele an 4x HM1500 + 1 HM800 WR; Open-DTU

AndererStefan
Beiträge: 455
Registriert: Sa Mär 02, 2024 11:04 am
Hat sich bedankt: 244 Mal
Danksagung erhalten: 309 Mal

#5

Beitrag von AndererStefan »

Hi,
ich nutze eine solche Methode. Du kannst dich gerne an diesem Beispiel bedienen. Ich fülle die Inputs üver die Visu, aber du kannst die Eingaben auf „Parameter“ umstellen und die Werte direkt eintragen. Einen Zeittrigger kannst du bei Bedarf in der graphischen Modul-Ansicht über das „+“ bei den Parametern hinzufügen .

Code: Alles auswählen


/**
**Pkt 00: Zielsetzung**
Diese Logik dient als zentrale Verwaltung und als Speicher (Merker) für die Betriebsparameter der PV-Batteriesteuerung. Sie fungiert als Bindeglied zwischen einer Visualisierung (die Werte setzt und anzeigt) und der eigentlichen Haupt-Steuerungslogik.

**Pkt 01: Funktionsprinzip**
Die Logik ist bewusst einfach gehalten. Bei jeder Wertänderung an einem der Eingänge wird der neue Wert sofort auf den entsprechenden Ausgang kopiert. Dies wird durch `Latch`-Module realisiert, die bei jeder durch eine Eingangsänderung ausgelösten Neuberechnung der Logik die Werte durchreichen.

**Pkt 02: Ein- und Ausgänge**
Die Logik verwaltet die folgenden Parameter, wobei jeder Parameter einen eigenen Ein- und Ausgang hat:
*   Min. Ladeleistung (W)
*   Max. Ladeleistung (W)
*   Min. Einspeisung (W)
*   Min. Entladeleistung (W)
*   Max. Entladeleistung (W)
*   Min. Rest-Bezug (W)
 */

{
    "Module": [
        // Version: 1.0.1, Datum: 2025-10-01
        // Kopiert jeden Eingangswert bei einer Änderung auf den entsprechenden Ausgang
        ["Latch", "$in_minLadeleistung", "$out_minLadeleistung", "$ConstTrue", 0],
        ["Latch", "$in_maxLadeleistung", "$out_maxLadeleistung", "$ConstTrue", 0],
        ["Latch", "$in_minEinspeisung", "$out_minEinspeisung", "$ConstTrue", 0],
        ["Latch", "$in_minEntladeleistung", "$out_minEntladeleistung", "$ConstTrue", 0],
        ["Latch", "$in_maxEntladeleistung", "$out_maxEntladeleistung", "$ConstTrue", 0],
        ["Latch", "$in_minBezug", "$out_minBezug", "$ConstTrue", 0]
    ],
    "Level": [
        // --- Konstanten ---
        ["$ConstTrue", "bool", true],
        // --- Eingangs-Variablen ---
        ["$in_minLadeleistung", "float", 400.0],
        ["$in_maxLadeleistung", "float", 1200.0],
        ["$in_minEinspeisung", "float", 200.0],
        ["$in_minEntladeleistung", "float", 150.0],
        ["$in_maxEntladeleistung", "float", 800.0],
        ["$in_minBezug", "float", 30.0],
        // --- Ausgangs-Variablen (ohne Init-Wert, um Start-Senden zu erzwingen) ---
        ["$out_minLadeleistung", "float", 0.0],
        ["$out_maxLadeleistung", "float", 0.0],
        ["$out_minEinspeisung", "float", 0.0],
        ["$out_minEntladeleistung", "float", 0.0],
        ["$out_maxEntladeleistung", "float", 0.0],
        ["$out_minBezug", "float", 0.0]
    ],
    "Input": [
        ["Min. Ladeleistung (W)", "Setzt die minimale Ladeleistung", "$in_minLadeleistung", "c"],
        ["Max. Ladeleistung (W)", "Setzt die maximale Ladeleistung", "$in_maxLadeleistung", "c"],
        ["Min. Einspeisung (W)", "Setzt die minimale Netzeinspeisung", "$in_minEinspeisung", "c"],
        ["Min. Entladeleistung (W)", "Setzt die minimale Entladeleistung", "$in_minEntladeleistung", "c"],
        ["Max. Entladeleistung (W)", "Setzt die maximale Entladeleistung", "$in_maxEntladeleistung", "c"],
        ["Min. Rest-Bezug (W)", "Setzt den minimalen Netzbezug", "$in_minBezug", "c"]
    ],
    "Output": [
        ["Min. Ladeleistung (W)", "Aktueller Wert", "$out_minLadeleistung", "c"],
        ["Max. Ladeleistung (W)", "Aktueller Wert", "$out_maxLadeleistung", "c"],
        ["Min. Einspeisung (W)", "Aktueller Wert", "$out_minEinspeisung", "c"],
        ["Min. Entladeleistung (W)", "Aktueller Wert", "$out_minEntladeleistung", "c"],
        ["Max. Entladeleistung (W)", "Aktueller Wert", "$out_maxEntladeleistung", "c"],
        ["Min. Rest-Bezug (W)", "Aktueller Wert", "$out_minBezug", "c"]
    ]
}
VG
Stefan
TWS 3500XL ID:1486, VPN aktiv, Reboot nach Rücksprache

Ersteller
ho5enth1en
Beiträge: 16
Registriert: So Jul 02, 2023 10:23 pm
Wohnort: Göllheim
Hat sich bedankt: 14 Mal
Danksagung erhalten: 18 Mal

#6

Beitrag von ho5enth1en »

@AndererStefan
Danke, das sieht sehr gut aus, denke damit kann ich was anfangen und meine Grundkenntnisse etwas erweitern. Langsam werden die Logiken logischer für mich.

Habe gestern lange mit eib-eg telefonert und er hat mir einiges über Kanon erklärt. Nebenbei haben wir herausgefunden das wir sonst noch an sehr ähnlichen Projekten arbeiten. @eib-eg - riesen Dank für den Gedankenaustausch. Ich versuche mal, mit in nächster Zeit eine Anleitung zu der gesuchten Logik zu schreiben um den Kanon zu füttern.

Die KI hat echt Potenzial und wenn wir sie so Füttern können das sie entsprechend lernt um fehlerfrei zu arbeiten ist es echt ein Gamechanger und eröffnet viele weitere Möglichkeiten für den TWS.
TimberWolf #1192 3500XL VPN offen Reboot jederzeit
Antworten

Zurück zu „Logikengine & Logik-Editor“