ADSLOGLREAL

ADSLOGLREAL 1:

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 auszugebenden Text kann ein LREAL-Wert (Gleitkommazahl) an eine von dem Benutzer vorgebbare Stelle eingearbeitet werden. Dazu muss der angelegte Formatstring an der gewünschten Stelle die Zeichenfolge ‚%f' enthalten. Bedenken Sie, dass die Funktion flankengesteuert aufgerufen werden muss, wie im Beispiel gezeigt (siehe auch Hinweis bei Beschreibung ADSLOGDINT). Der Rückgabeparameter enthält den Funktionsfehlercode oder 0 falls erfolgreich.

FUNCTION ADSLOGLREAL : DINT

ADSLOGLREAL 2: Eingänge

VAR_INPUT
    msgCtrlMask : DWORD;
    msgFmtStr   : T_MaxString;
    lrealArg    : LREAL;
END_VAR

Name

Typ

Beschreibung

msgCtrlMask

DWORD

Kontrollmaske, die den Typ und die Wirkung der Meldungsausgabe bestimmt (siehe separate Tabelle).

msgFmtStr

T_MaxString

Enthält die auszugebende Meldung. Sie kann das Formatierungszeichen %f für die Ausgabe eines LREAL-Wertes an beliebiger Stelle enthalten.

Information: Die Länge der Meldung ist auf 253 Bytes begrenzt (entspricht 253 Zeichen bei Strings im Standardformat).

lrealArg

LREAL

Enthält den in die Meldung einzufügenden numerischen Wert.

Konstante

Beschreibung

ADSLOG_MSGTYPE_HINT

Meldungstyp ist Hinweis.

ADSLOG_MSGTYPE_WARN

Meldungstyp ist Warnung.

ADSLOG_MSGTYPE_ERROR

Meldungstyp ist Fehler.

ADSLOG_MSGTYPE_LOG

Meldung wird in das Logbuch geschrieben.

ADSLOG_MSGTYPE_MSGBOX

Meldung wird in einer Messagebox ausgegeben.
Information: Diese Funktionalität ist nicht für Windows CE verfügbar.

ADSLOG_MSGTYPE_STRING

Meldung ist direkt angegebener String (default).

Die Kontrollmasken können in der gewünschten Kombination mit ODER verknüpft werden.

Beispiel für den Aufruf der Funktion in FBD:

ADSLOGLREAL 3:

Die resultierende Message-Box:

ADSLOGLREAL 4:

Hierbei wird der LREAL-Wert 187.203045 in eine Meldung eingefügt. Die Einfügestelle ist durch das Zeichen %f im Formatstring markiert. Die Zahl wird bei der Ausgabe nach der sechsten Nachkommastelle abgeschnitten.

Beispiel für den Aufruf der Funktion in ST:

PROGRAM MAIN
VAR
    rtMessageOutput: R_TRIG; (* Declaration *)
    bTemperatureTooHigh: BOOL;
    udiAdsLogRes: UDINT;
END_VAR

rtMessageOutput(CLK := bTemperatureTooHigh);
IF rtMessageOutput.Q THEN 
    udiAdsLogRes := ADSLOGLREAL( msgCtrlMask := ADSLOG_MSGTYPE_HINT OR ADSLOG_MSGTYPE_MSGBOX, msgFmtStr := 'PLC Msg.: Max Temp. reached ! Temperature: %f', lrealArg := 187.203045);
END_IF;

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken (Kategoriegruppe)

TwinCAT v3.1.0

PC oder CX (x86, x64, Arm®)

Tc2_System (System)