ADSLOGSTR
Die Funktion gibt bei Aufruf eine Message-Box mit einem vorgebbaren Text auf den Bildschirm aus und schreibt einen Eintrag in das Ereignislogbuch des Systems. In den auszugebende Text kann ein String (Zeichenkette) an eine von dem Benutzer vorgebbare Stelle eingearbeitet werden. Dazu muss der angelegte Formatstring an der gewünschten Stelle die Zeichenfolge ‚%s' enthalten.
![]() | Hier muss, wie auch im Beispiel gezeigt, die Funktion flankengesteuert aufgerufen werden (siehe auch Beschreibung ADSLOGDINT). |
Der Rückgabeparameter enthält den Funktionsfehlercode oder 0 falls erfolgreich.
FUNCTION ADSLOGSTR : DINT
VAR_INPUT
msgCtrlMask : DWORD;
msgFmtStr : T_MaxString;
strArg : T_MaxString;
END_VAR
msgCtrlMask : Kontrollmaske, die den Typ und die Wirkung der Meldungsausgabe bestimmt (siehe separate Tabelle bei ADSLOGDINT).
msgFmtStr : Enthält die auszugebende Meldung. Sie kann das Formatierzeichen ‚%d' für die Ausgabe eines DINT-Wertes an beliebiger Stelle enthalten.
strArg : Enthält den in die Meldung einzufügenden String .
Beispiel für den Aufruf der Funktion in FBD:

Die resultierende Message- Box
Hierbei wird der String‚ welcher in der Variable ‚strSFCErrorStep' steht, von dem SPS-Programmierer in die Meldung eingefügt. Die Einfügestelle ist durch das Zeichen ‚%s' im Formatstring markiert.
Beispiel für den Aufruf der Funktion in ST:
strSFCErrorStep : STRING; (* Declaration*)
rtMessageOutput: R_TRIG;
bSFCError: BOOL;
(*--------------------------------------*)
rtMessageOutput(CLK := bSFCError);
IF rtMessageOutput.Q THEN
udiAdsLogRes := ADSLOGSTR( msgCtrlMask :=
ADSLOG_MSGTYPE_ERROR OR ADSLOG_MSGTYPE_MSGBOX,
msgFmtStr := 'PLC Msg.:
Guarding time executed in SFC step: %s', strArg :=
strSFCErrorStep);
END_IF;
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken |
---|---|---|
TwinCAT v2.7.0 | PC or CX (x86) | PLCSystem.Lib |
TwinCAT v2.8.0 | PC or CX (x86) | TcSystem.Lib |
TwinCAT v2.10.0 Build >= 1301 | CX (ARM) | TcSystem.Lib |