MC_ReadActualPosition_BkPlcMc (ab V3.0)
Der Funktionsbaustein ermittelt die aktuelle Position einer Achse.
Eingänge
VAR_INPUT
Enable: BOOL;
END_VAR
Nanme | Typ | Beschreibung |
---|---|---|
Enable | BOOL | Eine steigende Flanke an diesem Eingang löst eine Aktualisierung des Positionswertes aus. |
Ein-/Ausgänge
VAR_IN_OUT
Axis: AXIS_REF_BkPlcMc;
END_VAR
Nanme | Typ | Beschreibung |
---|---|---|
Axis | AXIS_REF_BkPlcMc | Hier ist die Adresse einer Variablen vom Typ AXIS_REF_BkPlcMc zu übergeben. |
Ausgänge
VAR_OUTPUT
Busy: BOOL;
Valid: BOOL;
Error: BOOL;
ErrorID: UDINT;
Position: LREAL;
END_VAR
Nanme | Typ | Beschreibung |
---|---|---|
Busy | BOOL | Hier wird signalisiert, dass ein Kommando abgearbeitet wird. |
Valid | BOOL | Hier wird die erfolgreiche Ermittlung der Istposition signalisiert. |
Error | BOOL | Hier wird das Auftreten eines Fehlers signalisiert. |
ErrorID | UDINT | Hier wird eine codierte Fehlerursache bereitgestellt. |
Position | LREAL | [mm] Die Istposition. |
Verhalten des Bausteins
Auf eine steigende Flanke an Enable hin untersucht der Baustein das übergebene Achsinterface. Dabei können eine Reihe von Problemen erkannt und gemeldet werden:
- Befindet sich die Achse in einem gestörten Zustand und ist die Ursache ein Encoder-Problem wird mit Error und ErrorID:=Errorcode des Encoders reagiert.
Wenn diese Überprüfungen ohne Problem durchgeführt werden konnten wird die Istposition ermittelt und Valid gemeldet.
Eine fallende Flanke an Enable löscht alle anstehenden Ausgangssignale.
![]() | Dieser Funktionsbaustein benötigt keine Zeit zur Durchführung seiner Aufgaben. Der Ausgang Busy wird zu keinem Zeitpunkt den Wert TRUE annehmen und ist nur aus Kompatibilitätsgründen vorhanden. |