MC_AxRtLoggerRead_BkPlcMc (ab V3.0)
Der Funktionsbaustein liest eine Meldung aus dem LogBuffer der Library. Näheres über das Anlegen eines LogBuffers finden Sie unter FAQ #10 in der Knowledge Base.
![]() | Dieser Funktionsbaustein wird via ADS von Diagnose-Tools genutzt. Ein direkter Aufruf durch die SPS-Applikation macht in der Regel keinen Sinn. |
Ein-/Ausgänge
VAR_IN_OUT
Entry: INT:=0;
pBuffer: POINTER TO ST_TcPlcMcLogBuffer;
pEntry: POINTER TO ST_TcPlcMcLogEntry;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
Entry | INT | Die Nummer der zu lesenden Meldung, |
pBuffer | POINTER | Hier ist die Adresse einer Variablen vom Typ ST_TcPlcMcLogBuffer zu übergeben. |
pEntry | POINTER | Hier ist als Ziel die Adresse einer Variablen vom Typ ST_TcPlcMcLogEntry zu übergeben. |
Ausgänge
VAR_OUTPUT
Result: DWORD:=0;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
Result | DWORD | Hier wird ein eine codierte Fehlerursache bereitgestellt. |
Verhalten des Funktionsbausteins
Der Funktionsbaustein überprüft bei jedem Aufruf die übergebenen Eingangswerte. Dabei können zwei Probleme erkannt werden:
- Ist Entry nicht im zulässigen Wertebereich 1..20 gibt der Funktionsbaustein dwTcHydAdsErrInvalidIdxOffset als Result zurück.
- Sind pBuffer oder pEntry nicht definiert gibt der Funktionsbaustein dwTcHydAdsErrNotReady als Result zurück.
Ist bei der Überprüfung kein Problem festgestellt worden kopiert der Funktionsbaustein die von Entry selektierte Meldung aus dem LogBuffer pBuffer in die mit pEntry adressierte Meldungsstruktur. Dabei wird Entry als relative Altersangabe verstanden: Mit Entry:=1 wird die zuletzt eingetragene Meldung ausgewählt, mit Entry:=2 die nächst ältere usw. Steht die geforderte Meldung nicht zur Verfügung wird eine leere Meldung bereitgestellt.