MC_GearIn_BkPlcMc (ab V3.0)

MC_GearIn_BkPlcMc (ab V3.0) 1:

Der Funktionsbaustein startet und überwacht eine Kopplung zwischen zwei Achsen. Zum Lösen der Kopplung ist ein MC_GearOut_BkPlcMc Baustein zu verwenden.

MC_GearIn_BkPlcMc (ab V3.0) 2: Eingänge

VAR_INPUT
    Execute:                BOOL;
    RatioNumerator:         INT;
    RatioDenominator:       INT;
    Acceleration:           LREAL;
    Deceleration:           LREAL;
    Jerk:                   LREAL;  (ab/from V3.0.5)
    BufferMode:             MC_BufferMode_BkPlcMc:=Aborting_BkPlcMc;    (ab/from V3.0.8)
END_VAR

Name

Typ

Beschreibung

Execute

BOOL

Eine steigende Flanke an diesem Eingang startet die Kopplung.

RatioNumerator

INT

[1, 1] Diese Parameter beschreiben den Kopplungsfaktor in der Form eines Getriebes.

RatioDenominator

INT

[1, 1] Diese Parameter beschreiben den Kopplungsfaktor in der Form eines Getriebes.

Acceleration

LREAL

[mm/s2] Die für das Aufsynchronisieren zulässige Beschleunigung in Istwert-Einheiten der Achse pro Quadrat-Sekunde.

Deceleration

LREAL

[mm/s2] Die für das Aufsynchronisieren zulässige Verzögerung in Istwert-Einheiten der Achse pro Quadrat-Sekunde.

Jerk

LREAL

[mm/s3] Der anzuwendende Ruck.

BufferMode

MC_BufferMode_BkPlcMc

reserviert. Dieser Eingang wurde vorbereitend ergänzt und sollte derzeit nicht oder mit der Konstanten Aborting_BkPlcMc belegt werden. (ab V3.0.8)

MC_GearIn_BkPlcMc (ab V3.0) 3: Ein-/Ausgänge

VAR_INOUT
    Master:         Axis_Ref_BkPlcMc;
    Slave:          Axis_Ref_BkPlcMc;
END_VAR

Name

Typ

Beschreibung

Master

Axis_Ref_BkPlcMc

Hier ist die Adresse einer Variablen vom Typ Axis_Ref_BkPlcMc zu übergeben.

Slave

Axis_Ref_BkPlcMc

Hier ist die Adresse einer Variablen vom Typ Axis_Ref_BkPlcMc zu übergeben.

MC_GearIn_BkPlcMc (ab V3.0) 4: Ausgänge

VAR_OUTPUT
    Busy:           BOOL;
    InGear:         BOOL;
    CommandAborted: BOOL;
    Error:          BOOL;
    ErrorID:        UDINT;
    Active:         BOOL;
END_VAR

Name

Typ

Beschreibung

Busy

BOOL

Hier wird signalisiert, dass ein Kommando abgearbeitet wird.

InGear

BOOL

Hier wird das erstmalige erfolgreiche Aufsynchronisieren der Achsen signalisiert. Das Signal bleibt anschließend auch dann anstehen, wenn die Synchronisierung zu einem späteren Zeitpunkt zeitweise oder bleibend aussetzt.

CommandAborted

BOOL

Hier wird ein Abbruch der Kopplung signalisiert.

Error

BOOL

Hier wird das Auftreten eines Fehlers signalisiert.

ErrorID

UDINT

Hier wird eine codierte Fehlerursache bereitgestellt.

Active

BOOL

Hier wird signalisiert, dass ein Kommando abgearbeitet wird.

Verhalten des Bausteins

Auf eine steigende Flanke an Execute hin untersucht der Baustein das übergebene Achsinterface. Dabei können eine Reihe von Problemen erkannt und gemeldet werden:

Wenn diese Überprüfungen ohne Problem durchgeführt werden konnten wird die Kopplung initiiert. Die Achse befindet sich ab jetzt im Zustand McState_Synchronizedmotion und der Baustein beginnt mit der Überwachung der Kopplung.

Wenn bei aktiver Kopplung die Slaveachse erstmalig die durch die Kopplung geforderte Geschwindigkeit erreicht wird dies am Ausgang InGear signalisiert. Da die Kopplung derzeit nur im Stillstand aktiviert werden kann ist dies unmittelbar der Fall. Sollte während aktiver Kopplung die Slaveachse aus einem beliebigen Grund den Vorgaben nicht folgen können bleibt InGear unverändert.

Tritt bei aktiver Kopplung im Bewegungsgenerator ein Fehlercode auf wird mit Error und ErrorID:=Bewegungsalgorithmus-Fehlercode reagiert.

Eine fallende Flanke an Execute löscht alle anstehenden Ausgangssignale. Wird Execute bereits bei noch aktiver Kopplung auf FALSE gesetzt bleibt die bestehende Kopplung unbeeinflusst wirksam.

MC_GearIn_BkPlcMc (ab V3.0) 5:

Der Ausgang Active ist derzeit mit dem Ausgang Busy identisch.