MC_GearOutExt
Ab TwinCAT 2.11 wird bei einem Abkoppeln die Slaveachse beschleunigungsfrei gefahren und mit der sich einstellenden konstanten Geschwindigkeit weitergefahren. Es erfolgt keine Positionierung um den mit dem Koppelfaktor umgerechneten Masterverfahrweg, sondern es stellt sich ein Verhalten wie nach einem MC_MoveVelocity ein.
MC_GearOutExt ist ein erweitertes universelles Abkoppelkommando, das die Slave-Achse gleich nach dem Abkoppeln mit einem Folgeauftrag versorgt. Somit ist ein nahtloser Übergang aus einer gekoppelten in eine eigenständige Bewegung möglich.
Anmerkung: Das Folgekommando kann nur ausgeführt werden, wenn die Slave-Achse in der Bewegung abgekoppelt wird. Im Stillstand ist kein Folgekommando möglich.
Wenn der Sollwertgeneratortype der Achse auf "7 Phasen (optimiert)" eingestellt ist, wird die Slaveachse nach dem Abkoppeln beschleunigungsfrei gefahren und mit der sich einstellenden konstanten Geschwindigkeit weitergefahren.
Es erfolgt keine Positionierung um den mit dem Koppelfaktor umgerechneten Masterverfahrweg, sondern es stellt sich ein Verhalten wie nach einem MC_MoveVelocity ein.
In TwinCAT 2.10 ist der Sollwertgeneratortyp wählbar.
Ab TwinCAT 2.11 ist der Sollwertgeneratortype fest auf "7 Phasen (optimiert)" eingestellt.
Bei der Umstellung eines Projektes von TwinCAT 2.10 auf TwinCAT 2.11 ergibt sich damit das hier beschriebene Verhalten. Ein Update bestehender Applikationen auf Version 2.11 kann daher, je nach Anwendung, eine Anpassung des SPS-Programms erforderlich machen.
VAR_INPUT
VAR_INPUT
Execute : BOOL;
Mode : E_DecoupleMode;
Position : LREAL;
Velocity : LREAL;
Acceleration : LREAL;
Deceleration : LREAL;
Jerk : LREAL;
END_VAR
Execute : Mit der steigenden Flanke wird das Kommando ausgeführt.
Mode: beschreibt das Folgekommando, das unmittelbar nach dem Abkoppeln der Slave-Achse ausgeführt wird.
TYPE E_DecoupleMode :
(
MC_DECOUPLEMODE_STOP, (* 0 Stop after decoupling *)
MC_DECOUPLEMODE_ORIENTEDSTOP, (* 1 Oriented stop after decoupling *)
MC_DECOUPLEMODE_ENDLESS, (* 2 endless motion at actual velocity after decoupling *)
MC_DECOUPLEMODE_ENDLESS_NEWVELO, (* 3 endless motion at parameterized velocity after decoupling *)
MC_DECOUPLEMODE_NEWPOS, (* 4 stop at parameterized position after decoupling *)
MC_DECOUPLEMODE_NEWPOSANDVELO, (* 5 move at parameterized velocity after decoupling and stop at parameterized position *)
MC_DECOUPLEMODE_INSTANTANEOUSSTOP (* 6 instantaneous stop (jump to velocity zero) *)
);
END_TYPE
Position : Absolute Zielposition auf die positioniert werden soll. Wenn der Mode OrientedStop verwendet wird, ist Position eine Modulo-Position
Velocity : Maximale Geschwindigkeit mit der gefahren werden soll (>0).
Acceleration : Beschleunigung (≥0). Bei einem Wert von 0 wirkt die Standardbeschleunigung aus der Achskonfiguration im System Manager.
Deceleration : Verzögerung (≥0). Bei einem Wert von 0 wirkt die Standardverzögerung aus der Achskonfiguration im System Manager.
Jerk : Ruck (≥0). Bei einem Wert von 0 wirkt die Standardruck aus der Achskonfiguration im System Manager.
VAR_OUTPUT
VAR_OUTPUT
Done : BOOL;
Busy : BOOL;
CommandAborted : BOOL;
Error : BOOL;
ErrorID : UDINT;
END_VAR
Done : Wird TRUE, wenn die Entkopplung erfolgreich durchgeführt wurde und je nach Folgekommando die Zielposition oder eine konstante Geschwindigkeit erreicht wurde.
Busy : Wird TRUE, sobald der Baustein aktiv ist. Busy wird mit der steigenden Flanke am Execute-Eingang TRUE und wird FALSE, wenn die Funktion beendet oder abgebrochen wurde und der Baustein eine neue steigende Flanke am Execute-Eingang akzeptiert.
CommandAborted : Wird TRUE, wenn das Kommando nicht vollständig ausgeführt werden konnte. Der Grund kann ein Stopp oder ein überlagerter Fahrbefehl sein.
Error : Wird TRUE, sobald ein Fehler eintritt.
ErrorID : Liefert bei einem gesetzten Error-Ausgang die Fehlernummer.
VAR_IN_OUT
VAR_IN_OUT
Slave : NCTOPLC_AXLESTRUCT;
END_VAR
Slave : Achsstruktur des Slaves.
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken |
---|---|---|
TwinCAT v2.10 Build 1313 | PC (i386) | TcMC.Lib |