SMC_ReadKinTransformForAxis (FB)

FUNCTION_BLOCK SMC_ReadKinTransformForAxis

Dieser Funktionsbaustein gibt die kinematische Transformation einer gegebenen Achse zurück.

Wenn gekoppelte Kinematiken für Achsgruppen verwendet werden, gehört jede Achse zur Positionskinematik, zur Orientierungskinematik oder zu keiner Transformation (zusätzliche Achse).

Wenn keine gekoppelten Kinematiken verwendet werden, gehört jede Achse, die Teil der Kinematik ist (d.h. die keine zusätzliche Achse ist), zur Hauptkinematik.

Um beispielsweise zu testen, ob eine gegebene Achse mit Index i eine Orientierungs- oder Positionsache ist, kann der FB mit IdentInGroup = i aufgerufen werden und dann die zurückgegebene KinTransform getestet werden:

itfOri : TRAFO.ISMOrientationKinematics;
itfPos : TRAFO.ISMPositionKinematics;
isOriAxis := __QUERYINTERFACE(KinTransform, itfOri);
isPosAxis := __QUERYINTERFACE(KinTransform, itfPos);
Ein-/Ausgang:

Gültigkeitsbereich

Name

Typ

Kommentar

Inout

AxisGroup

AXIS_GROUP_REF_SM3

Referenz auf eine Achsgruppe

Eingang

Enable

BOOL

Ermittelt die kinematische Transformationsinformation der Achse kontinuierlich, wenn sie aktiviert ist.

IdentInGroup

IDENT_IN_GROUP_REF_SM3

Der Index der Achse innerhalb der Achsgruppe

Ausgang

Valid

BOOL

TRUE, wenn gültige Ausgänge verfügbar sind

Busy

BOOL

Der Funktionsbaustein ist nicht beendet

Error

BOOL

Zeigt an, dass im Funktionsbaustein ein Fehler aufgetreten ist

ErrorID

SMC_ERROR

Fehlererkennung

KinTransform

TRAFO.MC_KIN_REF_SM3

Die kinematische Transformation für die Achse

identInKinematics

UDINT

Der Index der Achse innerhalb KinTransform