FB_EllipticSpline - CalcHalfSpline (Methode)

Übersicht

Typ:

Methode

Verfügbar ab:

V1.4.1.0

Dieses Kapitel enthält Informationen zu folgenden Aspekten:

oAufgabenstellung

oBeschreibung

oSchnittstelle

oDiagnosemeldungen

Aufgabenstellung

Berechnen von Kurvenpunkten für eine elliptische Kurve.

Beschreibung

Auf der Grundlage der Eingänge i_stStart und i_stTarget und des Werts der Eigenschaft udiNumberOfSplinePoints berechnet diese Methode eine Positionstabelle für eine Kurvenin­terpolation im dreidimensionalen Raum. Die Verfahrbewegung entlang dieser Positionen kann mit dem Fahrbefehl IF_RobotMotion.MoveS realisiert werden. Eine Positionstabelle wird von der Startposition bis zur Zielposition sowie von der Zielposition bis zur Startposition berechnet. Dazu wird immer ein ellipsenförmiger Halbast berechnet: von der Startposition hinunter oder bis zur Zielposition.

Halbe Kurve von der Startposition bis zur Zielposition:

G-SE-0064057.1.gif-high.gif

 

 

Halbe Kurve von der Startposition bis hinunter zur Zielposition:

G-SE-0064056.1.gif-high.gif

 

 

Schnittstelle

Eingang

Datentyp

Beschreibung

i_stStart

PDL.ST_Vector3D

Startposition in kartesischen Koordinaten

Wertebereich: i_stStart.lrX / lrY <> i_stTarget.lrX / lrY

i_stTarget

PDL.ST_Vector3D

Zielposition in kartesischen Koordinaten

Wertebereich: i_stStart.lrX / lrY <> i_stTarget.lrX / lrY

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

Bausteinspezifischer 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_stForward

ST_SplineTable

Berechnete Kurventabelle von der Start- bis zur Endposition.

q_stReverse

ST_SplineTable

Berechnete Kurventabelle von der End- bis zur Startposition.

q_lrSplineLength

LREAL

Resultierende Länge der linearen Verbindungen zwischen den Kurvenpunkten der elliptischen Kurve.

Diagnosemeldungen

q_etDiag

q_etDiagExt

Enumerationswert

Beschreibung

OK

Ok

0

Ok

InputParameterInvalid

IdenticalHeight

165

Die Höhen sind identisch.

InputParameterInvalid

IdenticalPosition

163

Die Positionen sind identisch.

InputParameterInvalid

NumberOfSplinePointsRange

89

Die Anzahl der Kurvenpunkte ist außerhalb des Bereichs.

IdenticalHeight

Enumerationsname:

IdenticalHeight

Enumerationswert:

165

Beschreibung:

Die Höhen sind identisch.

Problem

Ursache

Lösung

Die Berechnung der elliptischen Kurve war nicht erfolgreich.

Die kartesische Komponente Z der Startposition (i_stStart) und der Zielposition (i_stTarget) ist in einem Bereich von 0,001 identisch.

Darauf achten, dass die Werte nicht wechselseitig identisch sind.

IdenticalPosition

Enumerationsname:

IdenticalPosition

Enumerationswert:

163

Beschreibung:

Die Positionen sind identisch.

Problem

Ursache

Lösung

Die Berechnung der elliptischen Kurve war nicht erfolgreich.

Die kartesischen Komponenten X und Y der Startposition (i_stStart) und der Zielposition (i_stTarget) sind in einem Bereich von 0,001 identisch.

Darauf achten, dass beide Werte nicht wechselseitig identisch sind.

NumberOfSplinePointsRange

Enumerationsname:

NumberOfSplinePointsRange

Enumerationswert:

89

Beschreibung:

Die Anzahl der Kurvenpunkte ist außerhalb des Bereichs.

Problem

Ursache

Lösung

Die Berechnung der elliptischen Kurve war nicht erfolgreich.

Der bei der Eigenschaft udiNumberOfSplinePoints übergebene Wert liegt außerhalb des gültigen Bereichs.

Darauf achten, dass udiNumberOfSplinePoints größer oder gleich 3 ist.

Darauf achten, dass udiNumberOfSplinePoints kleiner oder gleich 98 ist.

Ok

Enumerationsname:

Ok

Enumerationswert:

0

Beschreibung:

Ok

Die Berechnung der elliptischen Kurve war erfolgreich.