MC_GearInPos

MC_GearInPos 1:

Mit dem Funktionsbaustein MC_GearInPos wird eine Slave-Achse positionsgenau mit einer Master-Achse (Fliegende Säge) synchronisiert. Die Synchrongeschwindigkeit wird genau am Synchronpunkt von Master und Slave erreicht.

Die Master-Achse muss sich bereits in Bewegung befinden, sonst ist die Synchronisierung nicht möglich.

Die Slave-Achse kann mit dem Funktionsbaustein MC_GearOut abgekoppelt werden. Wird der Slave während der Fahrt abgekoppelt, so behält er seine Geschwindigkeit bei und kann mit MC_Stop oder MC_Halt angehalten werden.

MC_GearInPos 2: Eingänge

VAR_INPUT
    Execute             : BOOL;
    RatioNumerator      : LREAL;
    RatioDenominator    : UINT;
    MasterSyncPosition  : LREAL;
    SlaveSyncPosition   : LREAL;
    SyncMode            : ST_SyncMode;
    MasterStartDistance : LREAL;
    Velocity            : LREAL;
    Acceleration        : LREAL;
    Deceleration        : LREAL;
    Jerk                : LREAL;
    BufferMode          : MC_BufferMode;
    Options             : ST_GearInPosOptions;
END_VAR

Name

Typ

Beschreibung

Execute

BOOL

Mit einer steigenden Flanke am Eingang Execute wird das Kommando ausgeführt.

RatioNumerator

LREAL

Getriebefaktor Zähler. Alternativ kann der Getriebefaktor als Fließkommawert angegeben werden, wenn der Nenner 1 ist.

RatioDenominator

UINT

Getriebefaktor Nenner

MasterSyncPosition

LREAL

Synchronposition des Masters

SlaveSyncPosition

LREAL

Synchronposition des Slaves

SyncMode

ST_SyncMode

In der Datenstruktur SyncMode werden über einzelne Flags die Randbedingungen für den Synchronisierungsvorgang festgelegt.

MasterStartDistance

LREAL

Zurzeit nicht implementiert.

Velocity

LREAL

Maximale Slave-Geschwindigkeit in der Synchronisierungsphase. Wenn keine Geschwindigkeit angegeben wird, wird die Default-Geschwindigkeit der Achse aus den Systemmanager-Daten verwendet. Info: Die hier angegebene Geschwindigkeit wird nur überprüft, wenn die Überprüfung mit der Variablen SyncMode aktiviert wird.

Acceleration

LREAL

Maximale Slave-Beschleunigung in der Synchronisierungsphase. Wenn keine Beschleunigung angegeben wird, wird die Default-Beschleunigung der Achse aus den Systemmanager-Daten verwendet. Info: Die hier angegebene Beschleunigung wird nur überprüft, wenn dies Überprüfung mit der Variablen SyncMode aktiviert wird.

Deceleration

LREAL

Maximale Slave-Verzögerung in der Synchronisierungsphase. Wenn keine Verzögerung angegeben wird, wird die Default-Verzögerung der Achse aus den Systemmanager-Daten verwendet. Info: Die hier angegebene Verzögerung wird nur überprüft, wenn dies Überprüfung mit der Variablen SyncMode aktiviert wird.

Jerk

LREAL

Maximaler Slave-Ruck in der Synchronisierungsphase. Wenn kein Ruck angegeben wird, wird der Default-Ruck der Achse aus den Systemmanager-Daten verwendet. Info: Der hier angegebene Ruck wird nur überprüft, wenn dies Überprüfung mit der Variablen SyncMode aktiviert wird.

BufferMode

MC_BufferMode

Zurzeit nicht implementiert

Options

ST_GearInPosOptions

Die ST_GearInPosOptions enthält zwei Positionswerte als Begrenzung. Die Prüfung auf diese Positionsgrenzen kann eingeschaltet werden. Dazu müssen zwei Flags (GearInSync_CheckMask_OptionalMinPos, GearInSync_CheckMask_OptionalMaxPos) in der Struktur SyncMode gesetzt werden.

MC_GearInPos 3:

Bei einem Verhältnis 1:4 muss der RatioNumerator 1 sein und der RatioDenominator 4. Alternativ kann der RatioDenominator 1 sein und der Getriebefaktor wird im RatioNumerator als Fließkommazahl 0.25 angegeben. Der RatioNumerator darf negativ sein.

MC_GearInPos 4: Ein-/Ausgänge

Die Achsdatenstruktur vom Typ AXIS_REF adressiert eine Achse eindeutig im System. Sie enthält unter anderem den aktuellen Status der Achse, wie Position, Geschwindigkeit oder Fehlerzustand.

VAR_IN_OUT
    Master : AXIS_REF;
    Slave  : AXIS_REF;
END_VAR

Name

Typ

Beschreibung

Master

AXIS_REF

Achsdatenstruktur des Masters

Slave

AXIS_REF

Achsdatenstruktur des Slaves

MC_GearInPos 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

Wird TRUE, wenn die Synchronisierung mit der Master-Achse gestartet wurde.

InSync

BOOL

Wird TRUE, wenn die Kopplung erfolgreich durchgeführt wurde und die Slave-Achse mit der Master-Achse synchronisiert ist.

Busy

BOOL

Der Busy-Ausgang wird TRUE, sobald das Kommando mit Execute gestartet wird und bleibt TRUE, solange der Befehl abgearbeitet wird. Wenn Busy wieder FALSE wird, so ist der Funktionsbaustein bereit für einen neuen Auftrag. Gleichzeitig ist einer der Ausgänge InSync, CommandAborted oder Error gesetzt.

Active

BOOL

Active zeigt an, dass das Kommando ausgeführt wird. (zur Zeit ist Active=Busy, siehe BufferMode)

CommandAborted

BOOL

Wird TRUE, wenn das Kommando nicht vollständig ausgeführt werden konnte. Die Achse kann während des Koppelvorgangs entkoppelt worden sein (gleichzeitige Kommandoausführung).

Error

BOOL

Wird TRUE, sobald ein Fehler eintritt.

ErrorID

UDINT

Liefert bei einem gesetzten Error-Ausgang die Fehlernummer.