MC_GearInPosCA

MC_GearInPosCA 1:

Der Funktionsbaustein MC_GearInPosCA koppelt eine Slave-Achse an eine Master-Achse. Die gesetzten Werte bilden immer die Quelle für die Master-Werte. Die Collision Avoidance hat eine höhere Priorität als die Achskopplung. Die Slave-Achse kann entkoppelt werden, indem ein Bewegungskommando unter Verwendung des Puffermodus BufferMode mcAborting gesendet wird.

Optimierungen bzgl. MC_GearInPosCA ab TF5400 v3.2.27

MC_GearInPosCA 2: Eingänge

VAR_INPUT
    Execute             : BOOL;
    ContinuousUpdate    : BOOL;
    RatioNumerator      : MC_LREAL := 1;
    RatioDenumerator    : UINT := 1;
    MasterSyncPosition  : MC_LREAL := MC_INVALID;
    SlaveSyncPosition   : MC_LREAL := MC_INVALID;
    SyncStrategy        : MC_SYNC_STRATEGY := mcSyncStrategyLate;
    SyncMode            : MC_SYNC_MODE;
    MasterStartDistance : MC_LREAL := MC_IGNORE;
    Velocity            : MC_LREAL := MC_INVALID;
    Acceleration        : MC_LREAL := MC_DEFAULT;
    Deceleration        : MC_LREAL := MC_DEFAULT;
    Jerk                : MC_LREAL := MC_DEFAULT;
    Gap                 : MC_LREAL := MC_DEFAULT;
    BufferMode          : MC_BUFFER_MODE := mcAborting;
    Options             : ST_GearInPosCAOptions;
END_VAR

Name

Typ

Beschreibung

Execute

BOOL

Das Kommando wird durch eine steigende Flanke an diesem Eingang ausgelöst.

ContinuousUpdate

BOOL

In dieser Version steht die kontinuierliche Aktualisierung nur für den Gap zur Verfügung.

RatioNumerator

MC_LREAL

Ein Getriebefaktor kann gesetzt werden, indem an den Eingängen RatioNumerator und RatioDenumerator ganzzahlige Werte eingegeben werden oder indem für den RatioNumerator ein Dezimalwert eingegeben und der RatioDenumerator unverändert gelassen wird (der Standardwert ist 1). Der Getriebefaktor wird als Faktor eingegeben, z. B. bedeutet der Wert 0.8, dass die Slave-Geschwindigkeit 0.8 * master axis velocity (oder 80 % der Geschwindigkeit der Master-Achse) beträgt. Der Wert für den Faktor ist nicht beschränkt, er könnte größer als 1.0 oder negativ sein.

RatioDenumerator

UINT

Nenner des Getriebefaktors.

MasterSyncPosition

MC_LREAL

Dieser Eingang weist den Typ LREAL auf. Position des Masters, an der der Slave InSync ist und den richtigen Getriebefaktor aufweist.

SlaveSyncPosition

MC_LREAL

Dieser Eingang weist den Typ LREAL auf. Position des Slaves, an der er mit dem richtigen Getriebefaktor InSync ist.

SyncStrategy

MC_SYNC_STRATEGY

Definiert die Strategie, die der Slave für die Synchronisation verwendet (siehe MC_SYNC_STRATEGY). Die default Strategie ist mcSyncStrategyLate.

SyncMode

(verfügbar ab V3.1.10.1)

MC_SYNC_MODE

Definiert die Richtung, wie die SlaveSyncPosition interpretiert werden soll, siehe MC_SYNC_MODE.

MasterStartDistance

MC_LREAL

Wenn ein positiver Wert gesetzt wird, beginnt die Slave-Achse erst mit der Synchronisation, wenn die Master-Position größer oder gleich ist (MasterSyncPosition – MasterStartDistance). Wenn ein negativer Wert gesetzt wird, beginnt die Synchronisation erst, wenn die Master-Position kleiner oder gleich ist (MasterSyncPosition – MasterStartDistance).

Wenn MasterStartDistance nicht gesetzt wird, beginnt der Slave mit der Synchronisation, so-bald der Funktionsbaustein das Signal Active gibt. Das genaue Verhalten der Slave-Achse während der Synchronisationsphase hängt von der SyncStrategy ab.

Velocity

MC_LREAL

Maximale Geschwindigkeit der Slave-Achse während der Synchronisationsphase. Der Geschwindigkeitswert muss größer 0 sein. Er wird automatisch durch den Achsparameter 'Maximum Velocity' der Slave-Achse beschränkt. Es muss immer eine Geschwindigkeit vorgegeben werden.

 

Spezielle Eingangswerte:

MC_DEFAULT = ungültig, da es keine Standardgeschwindigkeit gibt

MC_MAXIMUM = entspricht dem Wert des Achsparameters 'Maximum Velocity' der Slave-Achse

Acceleration

MC_LREAL

Maximale Beschleunigung der Slave-Achse während der Synchronisationsphase. Der Beschleunigungswert muss größer gleich 1 sein und ist durch den Achsparameter 'Maximum Acceleration' der Slave-Achse beschränkt. Der Eingang ist mit MC_DEFAULT vorbelegt.

 

Spezielle Eingangswerte:

MC_DEFAULT = entspricht dem Wert des Achsparameters 'Default Acceleration' der Slave-Achse

MC_MAXIMUM = entspricht dem Wert des Achsparameters 'Maximum Acceleration' der Slave-Achse

Deceleration

MC_LREAL

Maximale Verzögerung der Slave-Achse während der Synchronisationsphase. Der Verzögerungswert muss größer gleich 1 sein und ist durch den Achsparameter 'Maximum Deceleration' der Slave-Achse beschränkt. Der Eingang ist mit MC_DEFAULT vorbelegt.

 

Spezielle Eingangswerte:

MC_DEFAULT = entspricht dem Wert des Achsparameters 'Default Deceleration' der Slave-Achse

MC_MAXIMUM = entspricht dem Wert des Achsparameters 'Maximum Deceleration' der Slave-Achse

Jerk

MC_LREAL

Maximaler Ruck der Achse während der Synchronisationsphase. Der Ruck muss ≥100 sein. Der Eingang ist mit MC_DEFAULT vorbelegt.

 

Spezielle Eingangswerte:

MC_DEFAULT = entspricht dem Wert des Achsparameters 'Default Jerk' der Slave-Achse

MC_MAXIMUM = ungültig

Gap

MC_LREAL

Dieser Wert bestimmt den Mindestabstand zum Vorgänger für die Collision Avoidance. Wird kein Wert eingegeben, dann wird der Standardwert der Gruppe verwendet.

Hinweis Bei Verwendung der Geo-Kompensation ist der Abstand besonders zu beachten. Der Mover-Abstand für die Collision Avoidance bezieht sich positionsmäßig und dynamisch immer auf die verschobene Bahngeometrie. Da sich der Abstand bei Verwendung der Geo-Kompensation auf die verschobene Bahn bezieht, können benachbarte Mover in den Kurven kollidieren, wenn er zu gering festgelegt wird. Achten Sie auf ausreichenden Abstand.

BufferMode

MC_BUFFER_MODE

In dieser Version stehen nur mcAborting und mcBuffered zur Verfügung (siehe MC_BUFFER_MODE).

Optionen

ST_GearInPosCAOptions

Die Options können verwendet werden, um das Synchronisationsprofil des Slaves ergänzend zur SyncStrategy zu beeinflussen (ab V3.1.2.47) (siehe ST_GearInPosCAOptions).

MC_GearInPosCA 3:

Die Achse erreicht nicht die Zielgeschwindigkeit, -beschleunigung oder -verzögerung

Die Werte für die Geschwindigkeit, Beschleunigung oder Verzögerung könnten automatisch auf die maximale Achsgeschwindigkeit, -beschleunigung und -verzögerung begrenzt werden. Prüfen Sie die Parameter Maximum Dynamics und Default Dynamics der Achse. Möglich ist auch, dass die Werte von Maximum Dynamics kleiner sind als die Default Dynamics.

MC_GearInPosCA 4: Ein-/Ausgänge

VAR_IN_OUT
    Master   : AXIS_REF;
    Slave    : AXIS_REF;
END_VAR

Name

Typ

Beschreibung

Master

AXIS_REF

Referenz auf eine Achse (siehe AXIS_REF).

Slave

AXIS_REF

Referenz auf eine Achse (siehe AXIS_REF).

MC_GearInPosCA 5: Ausgänge

VAR_OUTPUT
    StartSync     : BOOL;
    InSync        : BOOL;
    Busy          : BOOL;
    Active        : BOOL;
    CommandAborted: BOOL;
    Error         : BOOL;
    ErrorId       : UDINT;
END_VAR

Name

Typ

Beschreibung

StartSync

BOOL

Dieser Ausgang wird gesetzt, sobald der Slave aktiv mit der Synchronisation beginnt, und zu-rückgesetzt, sobald der Slave InSync ist.

InSync

BOOL

Dieser Ausgang wird TRUE, sobald der Slave synchronisiert ist. Ist die Dynamik der Slave-Achse zu gering, um der Bewegung der Master-Achse zu folgen, könnte der Ausgang InSync auf FALSE zurückgesetzt werden, woraufhin die Slave-Achse erneut mit der Synchronisation beginnt.

Busy

BOOL

Dieser Ausgang wird TRUE, wenn das Kommando mit Execute gestartet wird, und bleibt es dann so lange, wie der Funktionsbaustein das Kommando ausführt. Wenn Busy wieder FALSE wird, ist der Funktionsbaustein bereit für ein neues Kommando. Gleichzeitig wird einer der Ausgänge CommandAborted oder Error gesetzt.

Active

BOOL

Wenn Active TRUE ist, steuert der Funktionsbaustein die Achse.

CommandAborted

BOOL

Dieser Ausgang wird TRUE, wenn das Kommando durch ein anderes Kommando unterbrochen worden ist.

Error

BOOL

Dieser Ausgang wird TRUE, wenn bei der Ausführung des Kommandos ein Fehler aufgetreten ist.

ErrorId

UDINT

Enthält den befehlsspezifischen Fehlercode des zuletzt ausgeführten Kommandos. Der Fehlercode kann in der ADS-Fehlerdokumentation oder in der NC-Fehlerdokumentation (Fehlercodes 0x4nnn und 0x8nnn) nachgeschlagen werden.

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende
SPS-Bibliotheken

TwinCAT V3.1.4018.26

TF5400 Advanced Motion Pack V3.1.1.17

PC oder CX (x64)

Tc3_McCollisionAvoidance, Tc3_McCoordinatedMotion, Tc2_MC2