MC_MoveCircRel
Dieser Funktionsbaustein beauftragt eine zirkular interpolierte Bewegung der Achsen einer Achsgruppe, indem die Zielposition durch Vorgabe relativer Strecken vorgegeben wird.
Blockdiagramm
Parameter des FB
VAR_IN_OUT | ||
Variablenname | Datentyp | Beschreibung |
AxesGroup | AXES_GROUP_REF | Achsgruppenreferenz |
VAR_INPUT | ||
Variablenname | Datentyp | Beschreibung |
Execute | BOOL | Bei steigender Flanke startet die linear interpolierte Bewegung der Achsen, entsprechend den vorgegebenen relativen Strecken. |
CircMode | MC_CIRC_MODE | Dieser Eingang legt fest, welche Bedeutung die Werte an den Eingängen „AuxPoint“ und „PathChoice“ haben. Erlaubte Werte für diesen Eingang sind mcCenter = 1 mcRadius = 2 und in Bedeutung des Eingang „CircMode“ bei Relativprogrammierung näher beschrieben. |
AuxPoint | ARRAY [0..HLI_CH_AX_MAXIDX] OF LREAL | Relativkoordinaten eines Punktes im aktuellen Koordinatensystem. Von welcher Art der zusätzliche Punkt ist, wird durch den Wert an Eingang „CircMode“ festgelegt. Standard-Einheit [0,1 µm] |
EndPoint | ARRAY [0..HLI_CH_AX_MAXIDX] OF LREAL | Relativkoordinaten des Endpunktes der Kreisbewegung im aktuellen Koordinatensystem. Standard-Einheit [0,1 µm] |
PathChoice | MC_CIRC_PATHCHOICE | Bestimmt, ob vom Startpunkt aus im Uhrzeigersinn oder gegen den Uhrzeigersinn, auf der durch die Werte an „CircMode“, „AuxPoint“ und „EndPoint“ definierten Kreisbahn, zum Endpunkt gefahren wird. In Bedeutung des Eingang „PathChoice“ sind die zulässigen Werte für diesen Eingang beschrieben. |
MainPlane | MCV_MAIN_PLANE | Der Wert dieses Eingangs legt die Hauptebene des Programmierkoordinatensystems fest, in welcher der Kreis interpoliert wird. Erlaubte Werte für diesen Eingang sind mcvMpXY = 0 mcvMpZX = 1 mcvMpYZ = 2 |
Velocity | LREAL | Maximale Bahngeschwindigkeit der Bewegung. Diese wird nicht zwingend erreicht. Standard-Einheit [10-3 °/s] |
BufferMode | MC_BUFFER_MODE | Der Eingang legt fest, wann die Aktivierung eines Auftrags stattfindet, wenn bei der Beauftragung des FB bereits andere Aufträge aktiv sind oder auf die Ausführung warten. Außerdem wird damit die Bahnerzeugung am Übergang zwischen 2 Aufträgen festgelegt. Folgende Werte sind möglich: mcAborting = 0 mcBuffered = 1 mcBlendingPrev = 3 |
TransitionMode | UDINT | 0: TMNone (es wird keine Überschleifbewegung eingefügt, Standardeinstellung) 2: TMConstantVelocity 3: TMCornerDistance 4: TMMaxCornerDeviation 10: TMConstDeviation 11: TMIntermediatePoint 12: TMDynamicOptimized |
TransitionParameter | MCV_ARRAY_TRANS_PARAM | Siehe Kapitel Konturüberschleifen und Übergangsbedingungen |
VAR_OUTPUT | ||
Variablenname | Datentyp | Beschreibung |
Done | BOOL | TRUE zeigt an, dass die Achsen ihre Endposition erreicht haben. |
Busy | BOOL | TRUE zeigt an, dass der FB mit einem Auftrag beschäftigt ist. |
Active | BOOL | TRUE zeigt an, dass der FB den Auftrag an den MC gegeben hat. |
CommandAborted | BOOL | TRUE zeigt an, dass der über diesen FB abgesetzte und noch aktive Auftrag durch einen anderen Auftrag abgebrochen wurde. |
Error | BOOL | TRUE zeigt an, dass ein Fehler aufgetreten ist. |
ErrorID | WORD | Fehlerkennung |
JobID | UDINT | Ordnungsnummer des letzten über den FB abgesetzten Auftrages. |
Hinweis
Ergibt sich durch die Vorgaben an den Eingängen „AuxPoint“ und „EndPoint“ eine Strecke in Richtung der 3. Hauptachse des in der Ebene der Kreisbahn aufgespannten orthogonalen Koordinatensystems, so führt die Anwendung dieses FB zu einer schraubenförmigen Bewegung (siehe [PROG//Helikalinterpolation]).