L_MC4P_MoveEllipticalAbsolute

Mit diesem FB lässt sich für eine Achsgruppe eine Fahrt entlang einer elliptischen Bahn zu einer absoluten Position im spezifizierten Koordinatensystem durchführen.

  • Bei der Ellipseninterpolation wird eine absolut angegebene Zielposition alrEndPoint auf einem Ellipsenbogen angefahren. Die Startposition ist die Zielposition des zuletzt beauftragten FBs oder die aktuelle Position, falls die Achsgruppe im Zustand "GroupStandby" ist.
  • Die Programmierung der Ellipse erfolgt über den Mittelpunkt alrAuxPoint und Endpunkt alrEndPoint .
    Dies entspricht beim FB MC_MoveCircularAbsolute der Programmierung über
    CircMode := L_MC4P_CircMode.Center;
  • Diese Programmierung wird aktuell nicht unterstützt:
    CircMode := L_MC4P_CircMode.Border
  • Ellipsenbögen mit 180° und 360° müssen aus mehreren Befehlen zusammengesetzt werden.
  • Zur Definition des Ellipsenbogens müssen der Endpunkt und der Mittelpunkt als absolute Positionen vorgegeben werden.
  • Zur eindeutigen Beschreibung der Ellipsengeometrie müssen die Abmaße der beiden Halbachsen lrSemiMajorAxis (große Halbachse der Ellipse) und lrSemiMinorAxis (kleine Halbachse der Ellipse) angegeben werden.
  • Nach Erreichen der Zielpositionen befindet sich die Achsgruppe im Zustand "GroupStandby", wenn keine weiteren Bewegungskommandos anstehen.
Gefahr!

Alle Bahnen müssen immer erst mit Override oder im Simulationsmodus mit virtuellen Achsen getestet werden!

Hinweis!

Kartesische Bahnbewegungen (CP) lassen sich nur durchführen, wenn alle Antriebsachsen auf die im Abschnitt " Unterstützte Kinematiken " definierten Nulllagen referenziert sind.

 

 

 

L_MC4P_MoveEllipticalAbsolute

 

 

 

AXES_GROUP_KIN

-

AxesGroup

AxesRef

-

AXES_GROUP_KIN

BOOL

-

xExecute

xDone

-

BOOL

ARRAY [1..12] OF LREAL

-

alrAuxPoint

xBusy

-

BOOL

ARRAY [1..12] OF LREAL

-

alrEndPoint

xActive

-

BOOL

LREAL

-

lrSemiMajorAxis

xCommandAborted

-

BOOL

LREAL

-

lrSemiMinorAxis

xError

-

BOOL

MC_CIRC_PATHCHOICE

ePathChoice

xErrorID

-

L_IE1P_Error

LREAL

-

lrVelocity

LREAL

-

lrAcceleration

LREAL

-

lrDeceleration

LREAL

-

lrJerk

L_MC4P_CoordSystem

-

eCoordSystem

MC_BUFFER_MODE

-

eBufferMode

MC_TRANSITION_MODE

-

eTransitionMode

ARRAY [ 1..12 ] OF LREAL

-

alrTransitionParameter

ARRAY [1..6] OF
L_MC4P_AuxMode

-

aeAuxMode

L_MC4P_Orientation_Mode

-

eOrientationMode

ARRAY[4..6] OF MC_DIRECTION

-

aeDirection

 

 

 

 

 

 

 

 

Eingänge

Name

Datentyp

Info/Einstellmöglichkeiten

AxesGroup

AXES_GROUP_KIN

Achsgruppenreferenz

xExecute

BOOL

FALSE ä TRUE

Ausführung des FBs starten

alrAuxPoint

ARRAY [1..12] OF LREAL

Array mit absoluter Mittelpunktposition in [Units] für jede Dimension im spezifizierten Koordinatensystem

Hinweis: Beim alrAuxPoint wird nur die Position (X, Y, Z) für die Berechnung der Ellipsengeometrie verwendet. Auf die Interpolation der Orientierungsachsen und Hilfsachsen hat der alrAuxPoint keinen Einfluss.

alrEndPoint

ARRAY [1..12] OF LREAL

Array mit absoluten Endpunkt-Koordinaten in [Units] für jede Dimension im spezifizierten Koordinatensystem.

Zielpunkt der Ellipse

  • Index 1 ... 6:
    • Coordsystem = ACS : Zielpunkt der Antriebsachsen
    • Coordsystem = WCS , MCS oder PCS : Zielpunkt des TCP in dem ausgewählten Koordinatensystem
  • Index 7 ... 12:
    • Zielpunkt der optional vorhandenen Hilfsachsen

lrSemiMajorAxis

LREAL

Große Halbachse der Ellipse

lrSemiMinorAxis

LREAL

Kleine Halbachse der Ellipse

ePathChoice

MC_CIRC_PATHCHOICE

Durchfahrtrichtung (Cw / Ccw)

  • CLOCKWISE: Kürzerer Weg (<180°)
  • COUNTERCLOCKWISE: Längerer Weg (>180°)

lrVelocity

LREAL

Maximale Geschwindigkeit in [Units/s] für das Anfahren der Zielposition

  • In Abhängigkeit der Profilparameter Position , Acceleration , Deceleration und Jerk kann es sein, dass der Antrieb die maximale Geschwindigkeit nicht erreicht.

lrAcceleration

LREAL

Maximale Beschleunigung in [Units/s 2 ]

lrDeceleration

LREAL

Maximale Verzögerung in [Units/s 2 ]

lrJerk

LREAL

Maximaler Ruck in [Units/s 3 ]

eCoordSystem

L_MC4P_CoordSystem

Auswahl des zu verwendenen Koordinatensystems:

  • WCS: World Coordinate System
  • MCS: Machine Coordinate System
  • ACS: Axes Coordinate System
  • PCS_1 ... PCS_16: Product Coordinate System (1 ... 16)

Koordinatensysteme und Transformationen

eBufferMode

MC_BUFFER_MODE

Modus für die Abarbeitung aufeinanderfolgender Bewegungskommandos

BufferMode

eTransitionMode

MC_TRANSITION_MODE

Modus für das Bahnverhalten am Bewegungsende

TransitionMode und TransitionParameter

alrTransitionParameter

ARRAY [1..12] OF LREAL

Beschreibung des Parameters alrTransitionParameter

Parameter für "Überschleifen"
Nur relevant, wenn eTransitionMode = TMCornerDistance ausgewählt wurde.

* alrTransitionParameter[1]

  • Angabe des Verschliffradius des Startpunktes bzw. zur vorherigen Bewegung als symmetrische Distanz in [mm]
  • Wert wird verwendet, wenn TransitionParameter[1] > 0 ist

* alrTransitionParameter[2]

  • Angabe des Verschliffradius des Startpunktes bzw. zur vorherigen Bewegung relativ zur halben Bahnlänge der Bewegungen in [%]
  • Wert wird verwendet, wenn alrTransitionParameter[1] = 0 und alrTransitionParameter[2] > 0 ist

* alrTransitionParameter[3..12]

  • Reserviert für zukünftige Funktionserweiterungen

aeAuxMode

ARRAY [1..6] OF L_MC4P_AuxMode

Modus für die Hilfsachsen:

  • Inactive: Hilfsachskoordinaten werden ignoriert.
  • Continuous: Verschleifen der Hilfsachse über mehrere MC_Move-Bausteine.
  • DiscreteAbsolute: Hilfsachsposition wird am Ende jedes Bewegungssegments gesetzt (ähnlich wie Hauptachsen).
  • DiscreteRelative: Hilfsachsposition wird am Ende jedes Bewegungssegments gesetzt (ähnlich wie Hauptachsen).

Hilfsachsen

eOrientationMode

L_MC4P_Orientation_Mode

Vorgabe der Orientierungsinterpolation für die WCS-Achsen

  • ShortestSpacialWay : Die Zielorientierung wird so angefahren, dass sich für die Summe der Bewegungen der kürzest mögliche Raumwinkel ergibt. Für 4D-Kinematiken ist dies gleichbedeutend mit mcShortestWay für die C-Achse. (default)
  • AxisIndividual : Die Bewegungsrichtung kann über den Eingang Direction für jede Orientierungsachse unabhängig vorgegeben werden.

Siehe auch: Richtungsvorgabe bei Modulo-Achsen

aeDirection

ARRAY[4..6] OF MC_DIRECTION

Richtungsvorgabe für als "Modulo" parametrierte Orientierungsachsen (WCS-Achsen). Der Eingang wird nur ausgewertet bei
OrientationMode:= L_MC4P_Orientation_Mode.AxisIndividual .

Index 4 ... 6: Hauptachsen A, B, C

Zulässige Auswahl:

  • mcPositiveDirection : Positive Richtung
  • mcNegativeDirection : Negative Richtung
  • mcShortestWay : Kürzester Weg (default)

Die Modi mcCurrentDirection , mcPositiveCycle und mcNegativeCycle werden nicht unterstützt.

Siehe auch: Richtungsvorgabe bei Modulo-Achsen

Ausgänge

Name

Datentyp

Wert/Bedeutung

xDone

BOOL

TRUE

Positionierung erfolgreich beendet.

xBusy

BOOL

TRUE

Abarbeitung läuft.

  • Der Ausgang Busy ist dann von Bedeutung, wenn eine Bewegungssteuerung durch mehrere FBs (BufferMode) erfolgt.

xActive

BOOL

TRUE

Das Kommando des FBs wird aktuell ausgeführt.

xCommandAborted

BOOL

TRUE

Das Kommando wurde durch einen anderen FB abgebrochen.

xError

BOOL

TRUE

Es ist ein Fehler aufgetreten. Details siehe ErrorID .

eErrorID

L_IE1P_Error

Wenn Error = TRUE: Fehlernummer zum aufgetretenen Fehler.