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
Berechnungsauslösung:
REQ-Ereignis mit TIME_OF_DAY und TIME-WertGültiger Bereich: TOD#00:00:00 bis TOD#23:59:59.999999
Zeitpunktberechnung:
Umrechnung in Sekunden seit Mitternacht
Subtraktion des Zeitintervalls
Tageszeitliche Rückrechnung mit Überlaufbehandlung
Ergebnisausgabe:
CNF-Ereignis mit neuer TageszeitAutomatischer 24h-Überlauf (zirkuläre Berechnung)
Technische Besonderheiten
✔ Mikrosekundengenauigkeit ✔ 24h-Ü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.