TimeControlledTelegram Zeitgesteuerte Telegramme)

Dieser Baustein gehört zum Paket „Calculate/Tine (Berechnung/Zeit)“.

Paket-Preis: 22,50€

Kurzbeschreibung

Diese Funktion dient dazu, einen bestimmten Wert zeitgesteuert weiterzugeben. Sie wird aktiviert, wenn ein Startsignal gegeben wird, und sendet den Wert nach einer festgelegten Verzögerung. Dabei kann gewählt werden, ob der Wert nur gesendet werden soll, wenn er sich verändert hat. Zusätzlich gibt die Funktion Informationen zum Ausführungszeitpunkt und zu möglichen Fehlern als Text zurück.

Besonderheit

  • Funktionale Flexibilität:

    • Die Verzögerungszeit kann individuell angepasst werden.

    • Möglichkeit, zwischen „nur bei Änderung senden“ und „immer senden“ zu wählen.

    • Unterstützt verschiedene Datentypen – etwa Zahlen, Texte oder Schaltbefehle.

  • Fehlerbehandlung:

    • Bei jeder Ausführung und beim Zeitplanstart wird geprüft, ob Fehler aufgetreten sind.

    • Entsprechende Fehlermeldungen werden in Textfeldern ausgegeben – so ist eine einfache Analyse möglich.

  • Grenzen und Validierungen:

    • Keine festen Maximal- oder Minimalwerte.

    • Es wird geprüft, ob sich der Wert tatsächlich geändert hat (wenn die entsprechende Option aktiv ist).

    • Beim ersten Start wird der aktuelle Wert direkt weitergegeben, ohne auf die Verzögerung zu warten.

Diese Funktion hilft dabei, Steuerungswerte mit einer zeitlichen Verzögerung zu übertragen. Sobald das Startsignal gesetzt wird, beginnt ein Zeitplan, der regelmäßig prüft, ob ein neuer Wert gesendet werden soll. Die Verzögerung ist einstellbar – standardmäßig beträgt sie 10 Sekunden, kann aber individuell angepasst werden.

Es gibt die Möglichkeit, einzustellen, ob nur dann ein Wert weitergegeben wird, wenn sich dieser gegenüber dem vorherigen unterscheidet. Das ist besonders hilfreich, um unnötige oder doppelte Übertragungen zu vermeiden.

Während der Ausführung speichert das System intern den zuletzt übermittelten Wert. Bei jeder neuen Prüfung wird dieser mit dem aktuellen Eingangswert verglichen. Nur bei Änderung (sofern diese Option aktiv ist) wird der Wert erneut gesendet.

Zudem kann die Funktion durch ein Stoppsignal deaktiviert werden. Dabei wird auch die geplante Übertragung beendet. Alle relevanten Vorgänge, inklusive Fehler oder Ausnahmen, werden in zwei separaten Textfeldern protokolliert und können somit zur Fehlersuche oder Analyse verwendet werden.

Die erste Ausführung nach dem Start sendet den Eingangswert sofort, bevor der Zeitplan startet.

  • Activate (bool):
    Aktiviert oder deaktiviert den Baustein.
  • OnlyWriteChangedValue (bool):
    Steuert, ob ein Wert nur dann übertragen wird, wenn er sich gegenüber dem vorherigen unterscheidet.
    True bedeutet: Nur bei Änderung wird gesendet.
    False bedeutet: Jeder aktuelle Wert wird weitergegeben, unabhängig davon, ob er sich verändert hat.
  • Input (any): 
    Der zu übertragende Wert (z. B. Zahl, Text, Logikwert).
    Dieser Wert wird – je nach Einstellung – nach einer Verzögerung ausgegeben.
  • Delay (timespan):
    Zeitliche Verzögerung, bevor der Wert gesendet wird.
    Standardwert: 10 Sekunden.
    Kann beliebig angepasst werden (z. B. 5 Sekunden, 1 Minute etc.).
  • Output (any):
    Der Ausgangswert – entspricht dem Eingangswert, wird jedoch zeitlich verzögert ausgegeben.
    Optional nur bei Änderung.
  • LogExecute (string):
    Gibt Informationen zur Ausführung zurück, insbesondere bei Fehlern oder Ausnahmen.
    Nützlich zur Analyse, falls keine Werte übertragen werden.
  • LogSchedule (string):
    Zeigt Informationen zur geplanten Übertragung und dokumentiert ebenfalls Fehler, falls beim Starten oder Stoppen des Zeitplans Probleme auftreten.

Beispiel 1 – Temperaturmeldung alle 30 Sekunden, nur bei Änderung:

Eine Temperatur wird alle 30 Sekunden an das zentrale System gesendet – jedoch nur, wenn sie sich verändert hat.

  • Eingabe:
    • Activate: true
    • OnlyWriteChangedValue : true
    • Input : 22.5
    • Delay : 30s
  • Ausgabe:
    • Output = 22,5°C (nur, wenn sich der Wert geändert hat)
Wie kann ich die Zeitverzögerung ändern?

Die Verzögerung wird über den Eingang Delay festgelegt. Tragen Sie hier die gewünschte Zeitspanne (z. B. 00:00:30 für 30 Sekunden) ein.

Warum wird kein Wert gesendet, obwohl ich alles aktiviert habe?

Prüfen Sie, ob der Eingangswert sich geändert hat und ob die Option OnlyWriteChangedValue aktiviert ist. Ist sie aktiviert, wird nur bei Änderung gesendet.

Kann ich diese Funktion auch für Texte oder andere Datentypen nutzen?

Ja. Der Eingang und Ausgang sind flexibel und können beliebige Werte – wie Texte, Zahlen oder Schaltbefehle – verarbeiten.

  • Version 3.0.10
    • First Release

Baustein-Support

Wenn Sie X1-Logik-Baustein-Support benötigen, senden Sie uns bitte zusätzlich den Log (LogExecute und LogSchedule, welcher als Ausgang des Bausteins ausgegeben wird) und eine detaillierte Beschreibung des Problems zu!