Typ: |
Methode |
Verfügbar ab: |
V2.11.0.0 |
Versionen: |
Aktuelle Version |
Dieses Kapitel enthält Informationen zu folgenden Aspekten:
Diese Methode kann zum Berechnen einer elliptischen Kurve für eine Umsetzbewegung und zur Ausgabe des entsprechenden Fahrbefehls verwendet werden. Sie kann nur für einen Schneider Electric-Roboter der P-Serie und in Kombination mit der Bibliothek SchneiderElectricRobotics verwendet werden.
Die Bewegungsparameter werden automatisch abhängig von der Nutzlast berechnet, um eine hohe Leistungsfähigkeit zu erreichen. Die Werte können mithilfe der Methoden ROB.IF_Motion.SetMotionParameters, ROB.IF_Motion.SetMaxAcceleration, ROB.IF_Motion.SetMaxDeceleration und ROB.IF_Motion.SetMaxVelocity begrenzt werden. Wenn die berechneten Werte größer als die festgelegten Werte sind, werden die Bewegungsparameter auf die festgelegten Werte begrenzt.
Intern werden die Methoden FB_EllipticSpline.CalcFullSpline (i_xHalfSpline = FALSE) und FB_EllipticSpline.CalcHalfSpline (i_xHalfSpline = TRUE) verwendet, um die Kurve zu berechnen. Die Methode IF_RobotMotion.MoveS wird verwendet, um den Fahrbefehl zu senden.
Der Start der Kurve ist die letzte Zielposition (siehe Robotic Bibliothekshandbuch – IF_RobotFeedback.rstLastTarget). Der Bereich der internen MoveS ist auf Null gesetzt, sodass ein Integrieren in einen anderen Fahrbefehl nach dem FastMoveS nicht möglich ist.
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_stTarget |
SE_Math |
Zielpositionskoordinaten des Fahrauftrags im dreidimensionalen Raum. |
i_udiSegmentId |
UDINT |
ID des Fahrauftrags. Die ID eines Fahrauftrags in einer verbundenen Bahn muss eindeutig sein. Wertebereich: i_udiSegmentId > 0 |
i_lrAbsHeight |
LREAL |
Absolute Höhe des Scheitelpunkts (des Apex) der elliptischen Kurve. Wird i_xHalfSpline auf TRUE gesetzt, wird i_lrAbsHeight ignoriert und der Wert wird automatisch berechnet. Wertebereich:
|
i_xHalfSpline |
BOOL |
TRUE: nur eine halbe Kurve (steigender oder fallender Bogen) sollte berechnet werden). |
i_udiNumberOfSplinePoints |
UDINT |
Anzahl der Kurvenpunkte zur Berechnung der elliptischen Kurve. Wertebereich: 3 ≤ udiNumberOfSplinePoints ≤ 98 |
Ausgang |
Datentyp |
Beschreibung |
---|---|---|
q_etDiag |
Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose. Ein Wert ungleich ET_Diag.Ok entspricht einer Diagnosemeldung. |
|
q_etDiagExt |
ROB.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. |
q_etDiag |
q_etDiagExt |
Enumerationswert |
Beschreibung |
---|---|---|---|
OK |
Ok |
0 |
Erfolgreich |
ExecutionAborted |
NoSchneiderElectricRobot |
222 |
Der konfigurierte Roboter ist kein Roboter von Schneider Electric. |
ExecutionAborted |
FastMoveNotConfigured |
223 |
Die FastMove-Funktion wurde nicht konfiguriert. |
Enumerationsname: |
Ok |
Enumerationswert: |
0 |
Beschreibung: |
Erfolgreich |
Der Fahrauftrag war erfolgreich.
Enumerationsname: |
NoSchneiderElectricRobot |
Enumerationswert: |
222 |
Beschreibung: |
Der konfigurierte Roboter ist kein Roboter von Schneider Electric. |
Problem |
Ursache |
Lösung |
---|---|---|
Der Fahrauftrag wurde zurückgewiesen. |
Der konfigurierte Roboter ist kein Schneider Electric-Roboter der P-Serie. |
Verwenden Sie FastMoveS nur in Verbindung mit einem Schneider Electric-Roboter der P-Serie. |
Enumerationsname: |
FastMoveNotConfigured |
Enumerationswert: |
223 |
Beschreibung: |
Die FastMove-Funktion wurde nicht konfiguriert. |
Problem |
Ursache |
Lösung |
---|---|---|
Der Fahrauftrag wurde zurückgewiesen. |
Der konfigurierte Roboter ist kein Schneider Electric-Roboter der P-Serie. |
Verwenden Sie FastMoveS nur in Verbindung mit einem Schneider Electric-Roboter der P-Serie. |
Die Funktion FastMove ist nicht konfiguriert. |
Stellen Sie sicher, dass die Methode FB_RobotPSeries.Configure erfolgreich für den Roboter aufgerufen wurde. |