F_SUB_TOD_TIME

F_SUB_TOD_TIME


F_SUB_TOD_TIME

Einführung

Der F_SUB_TOD_TIME ist ein standardkonformer Funktionsbaustein zur Subtraktion von Zeitintervallen von Tageszeiten (TIME_OF_DAY), entwickelt unter EPL-2.0 Lizenz. Version 1.0 ermöglicht tageszeitbezogene Berechnungen gemäß IEC 61131-3 Standard.

Schnittstellenstruktur

Ereignis-Eingänge

  • REQ: Berechnungsanforderung (mit Tageszeit und Zeitintervall)

Ereignis-Ausgänge

  • CNF: Berechnungsbestätigung (mit korrigierter Tageszeit)

Daten-Eingänge

  • IN1 (TIME_OF_DAY): Basis-Tageszeit (TOD#hh:mm:ss)

  • IN2 (TIME): Abzuziehendes Zeitintervall

Daten-Ausgänge

  • OUT (TIME_OF_DAY): Berechnete Tageszeit (IN1 - IN2)

Funktionsprinzip

  1. Berechnungsauslösung:

    • REQ-Ereignis mit TIME_OF_DAY und TIME-Wert

    • Gültiger Bereich: TOD#00:00:00 bis TOD#23:59:59.999999

  2. Zeitpunktberechnung:

    • Umrechnung in Sekunden seit Mitternacht

    • Subtraktion des Zeitintervalls

    • Tageszeitliche Rückrechnung mit Überlaufbehandlung

  3. Ergebnisausgabe:

    • CNF-Ereignis mit neuer Tageszeit

    • Automatischer 24h-Überlauf (zirkuläre Berechnung)

Technische Besonderheiten

Mikrosekundengenauigkeit24h-Überlaufbehandlung (zirkuläre Tageszeit) ✔ Negative Intervalle (Addition von Zeit) ✔ Echtzeitfähige Berechnung

Anwendungsszenarien

  • Schichtplanung: Arbeitsbeginn berechnen

  • Lichtsteuerung: Sonnenaufgangszeiten korrigieren

  • Produktionsplanung: Maschinenlaufzeiten rückrechnen

  • Verkehrsleitsysteme: Fahrplananpassungen

Fehlerbehandlung

  • Überlaufbehandlung:

    • Bei Überschreitung: zirkuläre Berechnung (modulo 24h)

    • Beispiel: TOD#01:00:00 - T#2h = TOD#23:00:00

  • Sonderfälle:

    • IN2 = T#0s → OUT = IN1

    • IN2 negativ → Addition der Zeit (TOD#10:00 + T#-2h = TOD#12:00)

⚖️ Vergleich mit ähnlichen Bausteinen

Feature

F_SUB_TOD_TIME

F_ADD_TOD_TIME

F_SUB_DT_TIME

Operation

Tageszeit - Intervall

Tageszeit + Intervall

Zeitstempel - Intervall

Ergebnis

TIME_OF_DAY

TIME_OF_DAY

DATE_AND_TIME

Überlauf

Zirkulär 24h

Zirkulär 24h

Kalenderbasiert

Fazit

Der F_SUB_TOD_TIME-Baustein bietet eine optimierte Lösung für tageszeitliche Berechnungen:

  • Präzise zirkuläre Zeitrechnung

  • Einfache Handhabung von Schicht- und Betriebszeiten

  • Intuitive Behandlung von Tagesübergängen

Ideale Wahl für alle Anwendungen mit tageszeitabhängigen Steuerungen.