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 Baustein wird via ADS von Diagnose-Tools genutzt. Ein direkter Aufruf durch die SPS-Applikation macht in der Regel keinen Sinn. |
Ein-/Ausgänge
VAR_INOUT
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 Bausteins
Der Baustein ü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 Baustein dwTcHydAdsErrInvalidIdxOffset als Result zurück.
- Sind pBuffer oder pEntry nicht definiert gibt der Baustein dwTcHydAdsErrNotReady als Result zurück.
Ist bei der Überprüfung kein Problem festgestellt worden kopiert der Baustein 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.