IF_RobotConfiguration - AddRotativeTrackingSystem (Methode)

Übersicht

Typ:

Methode

Verfügbar ab:

V2.16.0.0

Dieses Kapitel enthält Informationen zu folgenden Aspekten:

oAufgabenstellung

oBeschreibung

oSchnittstelle

oDiagnosemeldungen

Aufgabenstellung

Hinzufügen eines rotativen Trackingsystems zum Roboter.

HINWEIS: Diese Methode wird von Modicon M262 Motion-Steuerungen nicht unterstützt.

Beschreibung

Mit der Methode AddRotativeTrackingSystem(...) kann ein rotatives Trackingsystem zum Roboter hinzugefügt werden.

Die Trackingrichtung verläuft um eine der positiven kartesischen Achsen (X, Y oder Z) des Koordinatensystems, das innerhalb dieser Methode definiert ist. Die Geschwindigkeitsquelle wird auf dieser Achse abgebildet.

Die Konfiguration des logischen Gebers wird während der Konfiguration des Trackingsystems geprüft.

oDer Parameter Enable muss TRUE sein.

oDer logische Geber darf nicht mit einer anderen Geschwindigkeitsquelle verbunden sein.

oDie Parameter PhaseEnable, GearEnable und EngageEnable müssen FALSE sein.

Wenn die Geschwindigkeitsquelle die Schnittstelle SystemConfigurationItf.IF_Mechan­icMandatory implementiert, werden die folgenden Parameter Direction, GearIn, GearOut und FeedConstant geprüft. Die Parametrisierung dieser Parameter muss gleich der Parametri­sierung der Geschwindigkeitsquelle sein.

Wenn sich der Roboter im Trackingsystem bewegt, wird der logische Geber ebenfalls dahingehend überwacht, ob eine Manipulation der Position aufgetreten ist. Wenn eine Manipulation erkannt wird, hält der Roboter sofort an. Die Überwachung der Position ist auch aktiv, wenn eine Änderung des Trackingsystems durch Aufrufen der Methode IF_Robot­Motion.ChangeCoordinateSystem angefordert wird.

Mit den Eingängen i_stOffset, i_etOrientationConvention und i_stOrientation kann das Koordinatensystem des Trackingsystems definiert werden. Die Rotation erfolgt immer um eine der Achsen des Koordinatensystems, das heißt, dass Ursprung des Koordinatensystems immer der Mittelpunkt der Rotation ist.

HINWEIS: Sobald mindestens ein rotatives Trackingsystem konfiguriert ist, müssen Nothaltparameter und Stopp-Parameter für alle konfigurierten Tracking-Koordinatensysteme mithilfe der Methode IF_RobotConfiguration.SetTrackingStopParameters(…) festgelegt werden. Andernfalls ist es nicht möglich, die Methode IF_RobotConfiguration.ConfigDone(…) erfolgreich aufzurufen.

Siehe auch Kapitel Konfiguration eines rotativen Trackingsystems.

Schnittstelle

Eingang

Datentyp

Beschreibung

i_etSystemId

ET_CoordinateSystem

ID des Trackingsystems

i_ifVelocitySource

SystemConfigurationItf.IF_IdentificationMandatory

Geschwindigkeitsquelle des Trackingsystems

Einheit: [°/Sek.]

i_lencEncoder

SystemConfiguration.L_ENC

Logischer Geber, der mit der Geschwindigkeitsquelle verbunden ist.

i_stOffset

PDL.ST_Vector3D

Beschreibt die Verlagerung des Ursprungs des rotativen Trackingsystems in Bezug auf das Roboterkoordinatensystem ET_CoordinateSystem.CSR.

Einheit: [mm]

i_etOrientationConvention

ET_OrientationConvention

Konvention für die Drehwinkel der Orientierung i_stOrientation.

Gültige Werte sind:

oET_OrientationConvention.XYZ

oET_OrientationConvention.ZYX

oET_OrientationConvention.ZXY

i_stOrientation

PDL.ST_Vector3D

Drehung des rotativen Trackingsystems in Bezug auf das Roboterkoordinatensystem ET_CoordinateSystem.CSR.

Einheit: [°]

i_xClockwiseRotation

BOOL

TRUE: Drehung im Uhrzeigersinn um die Achse, festgelegt mit i_etTrackingRotationAxis.

FALSE: Drehung entgegen dem Uhrzeigersinn um die Achse, festgelegt mit i_etTrackingRotationAxis.

i_etTrackingRotationAxis

ET_RobotComponent

Positive kartesische Achse des Tracking-Koordinatensystems, die für das Tracking verwendet wird.

Das Tracking dreht sich um diese Achse des Koordinatensystems.

Gültige Werte sind:

oET_RobotComponent.CartesianX

oET_RobotComponent.CartesianY

oET_RobotComponent.CartesianZ

Für weitere Informationen siehe ET_RobotComponent.

Ausgang

Datentyp

Beschreibung

q_etDiag

GD.ET_Diag

Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose.

Ein Wert ungleich ET_Diag.Ok entspricht einer Diagnosemeldung.

q_etDiagExt

ET_DiagExt

POU-spezifischer Ausgang für die Diagnose.

q_etDiag = ET_Diag.Ok -> Statusmeldung

q_etDiag <> ET_Diag.Ok -> Diagnosemeldung

q_sMsg

STRING[80]

Ereignisabhängige Meldung, die zusätzliche Informationen über den Diagnosezustand gibt.

Diagnosemeldungen

q_etDiag

q_etDiagExt

Enumerationswert

Beschreibung

OK

Ok

0

Ok

ExecutionAborted

TransformationMissing

113

Die Transformation ist nicht verfügbar.

ExecutionAborted

ConfigurationAlreadyCompleted

105

Die Konfiguration ist bereits abgeschlossen.

ExecutionAborted

NoMoreTrackingSystemsAvailable

166

Es stehen keine weiteren Trackingsysteme zur Verfügung.

ExecutionAborted

SystemIdAlreadyConfigured

197

Die System-ID wurde bereits konfiguriert.

InputParameterInvalid

VelocitySourceInvalid

167

Die Geschwindigkeitsquelle ist ungültig.

InputParameterInvalid

OrientationConventionInvalid

168

Die Orientierungskonvention ist ungültig.

InputParameterInvalid

OffsetInvalid

152

Das Offset ist ungültig.

InputParameterInvalid

OrientationInvalid

153

Die Orientierung ist ungültig.

InputParameterInvalid

EncoderInvalid

169

Der Geber ist ungültig.

InputParameterInvalid

TrackingRotationAxisInvalid

219

Der Eingang für die für das Tracking verwendete Achse ist ungültig.

InputParameterInvalid

SystemIdInvalid

196

Die System-ID ist ungültig.

UnexpectedProgramBehavior

UnexpectedFeedback

13

Ein Rückgabewert war ungültig.

ExecutionAborted

ExternalPositionSourceConfigured

205

Die externe Positionsquelle wurde konfiguriert.

ConfigurationAlreadyCompleted

Enumerationsname:

ConfigurationAlreadyCompleted

Enumerationswert:

105

Beschreibung:

Die Konfiguration ist bereits abgeschlossen.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Die Konfiguration des Roboters ist bereits abgeschlossen. Die Methode ConfigDone(...) wurde bereits erfolgreich aufgerufen.

Darauf achten, dass die Konfigurationsmethode AddRotativeTrackingSystem(...) nicht aufgerufen wird, nachdem die Konfiguration abgeschlossen ist.

EncoderInvalid

Enumerationsname:

EncoderInvalid

Enumerationswert:

169

Beschreibung:

Der Geber ist ungültig.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Der Typ des am Eingang i_lencEncoder übergebenen Objektes ist ungültig.

Am Eingang i_lencEncoder muss ein Objekt vom Typ SystemConfiguration.L_ENC_TYPE übergeben werden.

-

Der am Eingang i_lencEncoder übergebene logischer Geber ist nicht aktiviert.

Der Wert des am Eingang i_lencEncoder übergebenen Parameters Enable des logischen Gebers muss TRUE sein.

-

Der am Eingang i_lencEncoder übergebene logische Geber wird direkt mit einem Objekt verbunden.

Nicht die Funktion SystemInterface.FC_SetMasterEncoder(...) aufrufen, um den logischen Geber mit einem anderen Objekt zu verbinden.

-

Der am Eingang i_lencEncoder übergebene Phasengenerator ist nicht aktiviert.

Der Wert des am Eingang i_lencEncoder übergebenen Parameters PhaseEnable des logischen Gebers muss FALSE sein.

-

Das am Eingang i_lencEncoder übergebene Getriebe des logischen Gebers ist aktiviert.

Der Wert des am Eingang i_lencEncoder übergebenen Parameters GearEnable des logischen Gebers muss FALSE sein.

-

Die am Eingang i_lencEncoder übergebene Kupplung des logischen Gebers ist aktiviert.

Der Wert des am Eingang i_lencEncoder übergebenen Parameters EngageEnable des logischen Gebers muss FALSE sein.

-

Die am Eingang i_ifVelocitySource übergebene Geschwindigkeitsquelle implementiert die Schnittstelle SystemConfigurationItf.IF_MechanicMandatory.

Der Wert des am Eingang i_lencEncoder übergebenen Parameters Direction des logischen Gebers passt nicht zum Wert des am Eingang i_ifVelocitySource übergebenen Parameters Direction der Geschwindigkeitsquelle.

Darauf achten, dass beide Werte gleich sind.

-

Die am Eingang i_ifVelocitySource übergebene Geschwindigkeitsquelle implementiert die Schnittstelle SystemConfigurationItf.IF_MechanicMandatory.

Der Wert des am Eingang i_lencEncoder übergebenen Parameters GearIn des logischen Gebers passt nicht zum Wert des am Eingang i_ifVelocitySource übergebenen Parameters GearIn der Geschwindigkeitsquelle.

Darauf achten, dass beide Werte gleich sind.

-

Die am Eingang i_ifVelocitySource übergebene Geschwindigkeitsquelle implementiert die Schnittstelle SystemConfigurationItf.IF_MechanicMandatory.

Der Wert des am Eingang i_lencEncoder übergebenen Parameters GearOut des logischen Gebers passt nicht zum Wert des am Eingang i_ifVelocitySource übergebenen Parameters GearOut der Geschwindigkeitsquelle.

Darauf achten, dass beide Werte gleich sind.

-

Die am Eingang i_ifVelocitySource übergebene Geschwindigkeitsquelle implementiert die Schnittstelle SystemConfigurationItf.IF_MechanicMandatory.

Der Wert des am Eingang i_lencEncoder übergebenen Parameters FeedConstant des logischen Gebers passt nicht zum Wert des am Eingang i_ifVelocitySource übergebenen Parameters FeedConstant der Geschwindigkeitsquelle.

Darauf achten, dass beide Werte gleich sind.

ExternalPositionSourceConfigured

Enumerationsname:

ExternalPositionSourceConfigured

Enumerationswert:

205

Beschreibung:

Die externe Positionsquelle wurde konfiguriert.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Für die Roboterkomponenten Kartesisch, Orientierung und Hilfsachsen wurde eine externe Positionsquelle konfiguriert.

Die Konfiguration eines Trackingsystems ist nicht möglich, wenn für die Roboterkomponenten eine externe Positionsquelle konfiguriert wurde.

Kein Trackingsystem konfigurieren.

NoMoreTrackingSystemsAvailable

Enumerationsname:

NoMoreTrackingSystemsAvailable

Enumerationswert:

166

Beschreibung:

Es stehen keine weiteren Trackingsysteme zur Verfügung.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Es können keine Trackingsysteme des Roboters mehr konfiguriert werden.

Die maximale Anzahl der konfigurierbaren Trackingsysteme ist Gc_udiMaxNumberOfTrackingSystems.

OffsetInvalid

Enumerationsname:

OffsetInvalid

Enumerationswert:

152

Beschreibung:

Das Offset ist ungültig.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Eine zweidimensionale Transformation in der XY-Ebene wird konfiguriert.

Sicherstellen, dass der Eingang i_stOffset.lrZ auf 0 gesetzt ist.

Eine zweidimensionale Transformation in der XZ-Ebene wird konfiguriert.

Sicherstellen, dass der Eingang i_stOffset.lrY auf 0 gesetzt ist.

Eine zweidimensionale Transformation in der YZ-Ebene wird konfiguriert.

Sicherstellen, dass der Eingang i_stOffset.lrX auf 0 gesetzt ist.

Ok

Enumerationsname:

Ok

Enumerationswert:

0

Beschreibung:

Ok

Die Konfiguration des Trackingsystems war erfolgreich.

OrientationConventionInvalid

Enumerationsname:

OrientationConventionInvalid

Enumerationswert:

168

Beschreibung:

Die Orientierungskonvention ist ungültig.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Der am Eingang i_etOrientationConvention übergebene Wert ist kein gültiger Wert.

Am Eingang i_etOrientationConvention muss ein gültiger Wert übergeben von ET_OrientationConvention werden.

OrientationInvalid

Enumerationsname:

OrientationInvalid

Enumerationswert:

153

Beschreibung:

Die Orientierung ist ungültig.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Eine zweidimensionale Transformation in der XY-Ebene wird konfiguriert.

Sicherstellen, dass die Eingänge i_stOrientation.lrX und i_stOrientation.lrY auf 0 gesetzt sind.

Eine zweidimensionale Transformation in der XZ-Ebene wird konfiguriert.

Sicherstellen, dass die Eingänge i_stOrientation.lrX und i_stOrientation.lrZ auf 0 gesetzt sind.

Eine zweidimensionale Transformation in der YZ-Ebene wird konfiguriert.

Sicherstellen, dass die Eingänge i_stOrientation.lrY und i_stOrientation.lrZ auf 0 gesetzt sind.

SystemIdInvalid

Enumerationsname:

SystemIdInvalid

Enumerationswert:

196

Beschreibung:

Die System-ID ist ungültig.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Die am Eingang i_etSystemId  übergebene System-ID ist ungültig.

Sicherstellen, dass der Wert von i_etSystemId einem der folgenden Werte entspricht:

ET_CoordinateSystem.Tracking1 … ET_CoordinateSystem.Tracking30

SystemIdAlreadyConfigured

Enumerationsname:

SystemIdAlreadyConfigured

Enumerationswert:

197

Beschreibung:

Die System-ID wurde bereits konfiguriert.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Die am Eingang i_etSystemId übergebene System-ID ist ungültig.

Sicherstellen, dass eine System-ID nur einmal für die Konfiguration eines Trackingsystems verwendet wird.

TrackingRotationAxisInvalid

Enumerationsname:

TrackingRotationAxisInvalid

Enumerationswert:

219

Beschreibung:

Der Eingang für die für das Tracking verwendete Achse ist ungültig.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Der am Eingang i_etTrackingRotationAxis übergebene Wert ist kein gültiger Wert.

i_etTrackingRotationAxis muss einer der folgenden Werte zugewiesen sein:

oET_RobotComponent.CartesianX

oET_RobotComponent.CartesianY

oET_RobotComponent.CartesianZ

TransformationMissing

Enumerationsname:

TransformationMissing

Enumerationswert:

113

Beschreibung:

Die Transformation ist nicht verfügbar.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Es wurde keine Transformation des Roboters konfiguriert.

Sicherstellen, dass die Transformation des Roboters konfiguriert wird, bevor ein Trackingsystem hinzugefügt wird.

UnexpectedFeedback

Enumerationsname:

UnexpectedFeedback

Enumerationswert:

13

Beschreibung:

Ein Rückgabewert war ungültig.

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Das Hinzufügen des Trackingsystems wurde aufgrund eines ungültigen Rückmeldewerts abgebrochen.

VelocitySourceInvalid

Enumerationsname:

VelocitySourceInvalid

Enumerationswert:

167

Beschreibung:

Die Geschwindigkeitsquelle ist ungültig.

Problem

Ursache

Lösung

Die Konfiguration des Trackingsystems war nicht erfolgreich.

Die am Eingang i_ifVelocitySource übergebene Geschwindigkeitsquelle ist ungültig.

Am Eingang i_ifVelocitySource muss eine gültige Schnittstelle (SystemConfigurationItf.IF_IdentificationMandatory) einer Geschwindigkeitsquelle übergeben werden.

Gültige Objekte sind zum Beispiel Antriebe, virtuelle Geber, Inkrementalgeber usw.

Das am Eingang i_ifVelocitySource übergebene Objekt ist vom Typ SystemConfiguration.L_ENC_TYPE.

Objekte des Typs SystemConfiguration.L_ENC_TYPE sind nicht als Geschwindigkeitsquelle gültig.