MC_GearOutExt

MC_GearOutExt 1:

Hinweis

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.

 

Hinweis
Migration zu TwinCAT 2.11

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