CONCAT_DT-Baustein

Kurz-Information

NameCONCAT_DT
→POE-Typ→Funktion
KategorieIEC-Baustein, Time, Baustein mit interner Fehlerdiagnose
Konform zur →IEC-Norm

(tick) keine Einschränkungen

Grafische Schnittstelle

Verfügbar ab

Version 1.27.0 (für logi.CAD 3 )

Funktionalität

Der Baustein liefert ein Datum mit Tageszeit (DATE_AND_TIME), das sich durch die Verknüpfung von Werten ergibt. Geben Sie die Werte an den entsprechenden Eingängen ein.

Spezialfälle (siehe unter "Beispiel für Verwendung im ST-Editor"):

  • Falls ein Wert außerhalb des unten angegebenen Bereichs für einen oder mehrere Eingänge eingegeben ist, erhöht oder verringert  logi.CAD 3  den gelieferten DATE_AND_TIME-Wert entsprechend.
  • Falls kein Wert oder Wert 0 für den Monat eingegeben ist, wird der letzte Monat des Vorjahrs geliefert.
  • Falls kein Wert oder Wert 0 für den Tag eingegeben ist, wird der letzte Tag des Vormonats geliefert.

Eingänge, Ergebniswert


Bezeichner→DatentypBeschreibung
Eingänge:YEAR
USINTUINTUDINTULINTSINTINTDINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_INT

Jahr

MONTH
USINTUINTUDINTULINTSINTINTDINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_INT
Monat (1-12)
DAY
USINTUINTUDINTULINTSINTINTDINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_INT
Tag (1-31)
HOUR
USINTUINTUDINTULINTSINTINTDINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_INT
Stunden (0-23)
MINUTE
USINTUINTUDINTULINTSINTINTDINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_INT
Minuten (0-59)
SECOND
USINTUINTUDINTULINTSINTINTDINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_INT
Sekunden (0-59)
MILLISECOND
USINTUINTUDINTULINTSINTINTDINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_INT
Millisekunden (0-999)
Ergebniswert:DATE_AND_TIME

Der Eingang EN und der Ausgang ENO sind für den →Aufruf des Bausteins verfügbar. Siehe "Ausführungssteuerung: EN, ENO" für Informationen zum Eingang EN und zum Ausgang ENO.

Interne Fehlerdiagnose für Baustein

Der Baustein prüft den vermeintlichen Ergebniswert.
Falls der Ergebniswert < DT#1970-01-01-00:00:00.000 oder DT#2106-02-07-06:28:14.999 wäre, wird der Ausgang ENO des Bausteins auf den Wert FALSE (oder eine Entsprechung) zurückgesetzt.

Beispiel für Verwendung im ST-Editor

PROGRAM Test
	VAR
		result1, result2, result3, result4, result5, result6, result7, result8 : DATE_AND_TIME;
		CheckENO2, CheckENO3, CheckENO5, CheckENO6, CheckENO7, CheckENO8 : BOOL;
	END_VAR

	result1 := CONCAT_DT(2014,3,17,12,33,12,0);
               (* The variable 'result1' evaluates to 'DT#2014-03-17-12:33:12'. *)
	result2 := CONCAT_DT(YEAR := 2014, MONTH := 1, DAY := 35, MILLISECOND := 2987, ENO => CheckENO2);
               (* The variable 'result2' evaluates to 'DT#2014-02-04-00:00:02.987'. Reason: The values for 'DAY' and 'MILLISECOND' increase the other values.  *)
               (* The variable 'CheckENO2' evaluates to 'TRUE' because the return value is within the valid range. *)
	result3 := CONCAT_DT(YEAR := 1968, MONTH := 1, DAY := 3000, ENO => CheckENO3);
               (* The variable 'result3' evaluates to 'DT#1976-03-18-00:00:00'. Reason: The value for 'DAY' increases the other values. *)
               (* The variable 'CheckENO3' evaluates to 'TRUE' because the return value is within the valid range. *)
	result4 := CONCAT_DT(2015, 1, 1, 0, 0, 0, -1);
               (* The variable 'result5' evaluates to 'DT#2014-12-31-23:59:59.999'. Reason: The value for MILLISECOND decreases the other values. *)
	result5 := CONCAT_DT(YEAR := 1971, ENO => CheckENO5);
               (* The variable 'result4' evaluates to 'DT#1970-11-30-00:00:00'. Reason: The missing value for MONTH decreases the value for 'YEAR' - and temporarily sets 'MONTH' to '12'. 
                  The missing value for DAY decreases the returned values for 'MONTH' to '11' and for 'DAY' to '30'. *)
               (* The variable 'CheckENO5' evaluates to 'TRUE' because the return value is within the valid range. *)

	result6 := CONCAT_DT(YEAR := 1969, MONTH := 12, DAY := 17, ENO => CheckENO6);
               (* The variable 'CheckENO6' evaluates to 'FALSE'. Reason: The supposed return value is not within the valid range. *)
	result7 := CONCAT_DT(YEAR := 1971, MONTH := -13, ENO => CheckENO7);
               (* The variable 'CheckENO7' evaluates to 'FALSE'. Reason: The supposed return value is not within the valid range. *)
	result8 := CONCAT_DT(YEAR := 2120, MONTH := 12, DAY := 10, ENO => CheckENO8);
               (* The variable 'CheckENO8' evaluates to 'FALSE'. Reason: The supposed return value is not within the valid range. *)
END_PROGRAM

Bei der Erstellung Ihrer Anwendung im ST-Editor erstellen Sie den Aufruf eines Bausteins, indem Sie den laut Syntax erforderlichen Text eintippen oder die Inhaltshilfe verwenden.