IF_RobotConfiguration - User3Ax (Methode)
Typ: |
Methode |
Verfügbar ab: |
V1.0.0.0 |
Dieses Kapitel enthält Informationen zu folgenden Aspekten:
Konfigurieren eines 3-achsigen anwenderkonfigurierten Transformationsroboters.
Neben der Verwendung von vorgegebenen Kinematiken besteht die Möglichkeit, anwenderspezifische Kinematiken über die Methode User3Ax(…) zu definieren.
Die Berechnung der direkten und inversen Transformation muss in einer Anwender-POU realisiert werden, der die Schnittstelle IF_UserTransformation3Ax implementiert.
Möglich sind Kinematiken mit bis zu 3 Achsen und bis zu 3 Freiheitsgraden.
Es kann eine Transformation für bis zu 3 Achsen parametriert werden. Soll eine einachsige Transformation parametriert werden, so ist der Eingang i_ifDriveA zu belegen. Bei einer zweiachsigen Transformation die Eingänge i_ifDriveA und i_ifDriveB und bei einer dreiachsigen Transformation entsprechend die Eingänge i_ifDriveA, i_ifDriveB und i_ifDriveC.
HINWEIS: Wurde eine Methode zur Konfiguration einer Transformation einmal erfolgreich (q_etDiag = ET_Diag.Ok UND q_etDiagExt = ET_DiagExt.Ok) aufgerufen, so ist es nicht möglich, durch Aufruf einer weiteren Methode zur Konfiguration einer Transformation die Parametrierung zu überschreiben.
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_ifDriveA |
SystemConfigurationItf.IF_Drive Bei den Modicon M262 Motion-Steuerungen ist der Datentyp CMI.IF_AxisIdentification. |
Antrieb der Achse A |
i_ifDriveB |
SystemConfigurationItf.IF_Drive Bei den Modicon M262 Motion-Steuerungen ist der Datentyp CMI.IF_AxisIdentification. |
Antrieb der Achse B |
i_ifDriveC |
SystemConfigurationItf.IF_Drive Bei den Modicon M262 Motion-Steuerungen ist der Datentyp CMI.IF_AxisIdentification. |
Antrieb der Achse C |
i_ifTransformation |
Schnittstelle mit der Implementierung zur Berechnung der direkten und inversen Transformation. |
Ausgang |
Datentyp |
Beschreibung |
---|---|---|
q_etDiag |
Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose. Ein Wert ungleich GD.ET_Diag.Ok entspricht einer Diagnosemeldung. |
|
q_etDiagExt |
POU-spezifischer Ausgang zur 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. |
q_etDiag |
q_etDiagExt |
Enumerationswert |
Beschreibung |
---|---|---|---|
OK |
0 |
Ok |
|
ExecutionAborted |
105 |
Die Konfiguration ist bereits abgeschlossen. |
|
ExecutionAborted |
106 |
Die Transformation ist bereits konfiguriert. |
|
InputParameterInvalid |
36 |
Der Antrieb A wird bereits verwendet. |
|
InputParameterInvalid |
48 |
Der Antrieb A ist ungültig. |
|
InputParameterInvalid |
110 |
Der Antrieb A ist nicht verfügbar. |
|
InputParameterInvalid |
37 |
Der Antrieb B wird bereits verwendet. |
|
InputParameterInvalid |
49 |
Der Antrieb B ist ungültig. |
|
InputParameterInvalid |
109 |
Der Antrieb B ist nicht verfügbar. |
|
InputParameterInvalid |
38 |
Der Antrieb C wird bereits verwendet. |
|
InputParameterInvalid |
50 |
Der Antrieb C ist ungültig. |
|
InputParameterInvalid |
108 |
Die anwenderkonfigurierte Transformation 3Ax ist ungültig. |
Enumerationsname: |
ConfigurationAlreadyCompleted |
Enumerationswert: |
105 |
Beschreibung: |
Die Konfiguration ist bereits abgeschlossen. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Konfiguration der Robotertransformation war nicht erfolgreich. |
Die Konfiguration des Roboters ist bereits abgeschlossen. Die Methode ConfigDone(...) wurde bereits erfolgreich aufgerufen. |
Sicherstellen, dass keine Methode zur Transformationskonfiguration, zum Beispiel Delta3Ax(...) oder AddAuxAx(...), aufgerufen wird, nachdem die Konfiguration abgeschlossen ist. |
Enumerationsname: |
DriveAAlreadyInUse |
Enumerationswert: |
36 |
Beschreibung: |
Der Antrieb A wird bereits verwendet. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Konfiguration der Robotertransformation war nicht erfolgreich. |
Der am Eingang i_ifDriveA übergebene Antrieb ist bereits im Roboter konfiguriert und kann nicht noch einmal verwendet werden. |
Stellen Sie sicher, dass dem Roboter kein Antrieb mehrmals zugewiesen wird. Ist das der Fall, dann berichtigen Sie dies. |
Enumerationsname: |
DriveAInvalid |
Enumerationswert: |
48 |
Beschreibung: |
Der Antrieb A ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Konfiguration der Robotertransformation war nicht erfolgreich. |
Der am Eingang i_ifDriveA übergebene Schnittstelle ist ungültig. |
Am Eingang i_ifDriveA muss ein gültiger Antrieb übergeben werden. |
Enumerationsname: |
DriveAMissing |
Enumerationswert: |
110 |
Beschreibung: |
Der Antrieb A ist nicht verfügbar. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Konfiguration der Robotertransformation war nicht erfolgreich. |
Am Eingang i_ifDriveB oder i_ifDriveC wurde ein Antrieb übergeben. |
Sicherstellen, dass am Eingang i_ifDriveA ein gültiger Antrieb übergeben wurde. |
Enumerationsname: |
DriveBAlreadyInUse |
Enumerationswert: |
37 |
Beschreibung: |
Der Antrieb B wird bereits verwendet. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Konfiguration der Robotertransformation war nicht erfolgreich. |
Der am Eingang i_ifDriveB übergebene Antrieb ist bereits im Roboter konfiguriert und kann nicht noch einmal verwendet werden. |
Stellen Sie sicher, dass dem Roboter kein Antrieb mehrmals zugewiesen wird. Ist das der Fall, dann berichtigen Sie dies. |
Enumerationsname: |
DriveBInvalid |
Enumerationswert: |
49 |
Beschreibung: |
Der Antrieb B ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Konfiguration der Robotertransformation war nicht erfolgreich. |
Der am Eingang i_ifDriveB übergebene Schnittstelle ist ungültig. |
Am Eingang i_ifDriveB muss ein gültiger Antrieb übergeben werden. |
Enumerationsname: |
DriveBMissing |
Enumerationswert: |
109 |
Beschreibung: |
Der Antrieb B ist nicht verfügbar. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Konfiguration der Robotertransformation war nicht erfolgreich. |
Ein Antrieb wurde am Eingang i_ifDriveC übergeben. |
Sicherstellen, dass am Eingang i_ifDriveB ein gültiger Antrieb übergeben wurde. |
Enumerationsname: |
DriveCAlreadyInUse |
Enumerationswert: |
38 |
Beschreibung: |
Der Antrieb C wird bereits verwendet. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Konfiguration der Robotertransformation war nicht erfolgreich. |
Der am Eingang i_ifDriveC übergebene Antrieb ist bereits im Roboter konfiguriert und kann nicht noch einmal verwendet werden. |
Stellen Sie sicher, dass dem Roboter kein Antrieb mehrmals zugewiesen wird. Ist das der Fall, dann berichtigen Sie dies. |
Enumerationsname: |
DriveCInvalid |
Enumerationswert: |
50 |
Beschreibung: |
Der Antrieb C ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Konfiguration der Robotertransformation war nicht erfolgreich. |
Der am Eingang i_ifDriveC übergebene Schnittstelle ist ungültig. |
Am Eingang i_ifDriveC muss ein gültiger Antrieb übergeben werden. |
Enumerationsname: |
Ok |
Enumerationswert: |
0 |
Beschreibung: |
Ok |
Die Konfiguration der Robotertransformation war erfolgreich.
TransformationAlreadyConfigured
Enumerationsname: |
TransformationAlreadyConfigured |
Enumerationswert: |
106 |
Beschreibung: |
Die Transformation ist bereits konfiguriert. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Konfiguration der Robotertransformation war nicht erfolgreich. |
Die Konfiguration der Transformation des Roboters wurde bereits erfolgreich durchgeführt. |
Darauf achten, dass eine Transformationskonfiguration nur einmal aufgerufen wird. |
Enumerationsname: |
UserTransformation3AxInvalid |
Enumerationswert: |
108 |
Beschreibung: |
Die anwenderkonfigurierte Transformation 3Ax ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Konfiguration der Robotertransformation war nicht erfolgreich. |
Die am Eingang i_ifTransformation übergebene Schnittstelle ist ungültig. |
Sicherstellen, dass am Eingang i_ifTransformation eine gültige Schnittstelle übergeben wurde. |