MC_ReadStatus

MC_ReadStatus 1:

Mit dem Funktionsbaustein MC_ReadStatus wird der aktuelle Betriebszustand einer Achse ermittelt und signalisiert ihn an den Ausgängen des Bausteins.

Der aktualisierte Betriebszustand wird zusätzlich in der Ausgangsdatenstruktur Status und in der Achsdatenstruktur Axis.Status abgelegt. Dadurch ist es ausreichend, den Betriebszustand einmalig am Anfang jedes SPS-Zyklus zu lesen und im weiteren Programmverlauf auf Axis.Status zuzugreifen.

Die Axis-Variable (Typ: AXIS_REF) enthält bereits eine Instanz des Funktionsbausteins MC_ReadStatus. Dadurch ist es einfach möglich, den Betriebszustand einer Achse am Anfang eines SPS-Zyklus durch den Aufruf von Axis.ReadStatus zu aktualisieren.

Beispiel:

PROGRAM MAIN
VAR
    Axis1 : AXIS_REF
END_VAR

(* call the read status function *)
Axis1.ReadStatus;

MC_ReadStatus 2: Eingänge

VAR_INPUT
    Enable : BOOL; 
END_VAR

Name

Typ

Beschreibung

Enable

BOOL

Wenn Enable = TRUE ist, wird der Betriebszustand der Achse mit jedem Aufruf des Bausteins aktualisiert.

Siehe auch: Allgemeine Regeln für MC-Funktionsbausteine

MC_ReadStatus 3: Ein-/Ausgänge

VAR_IN_OUT
    Axis : AXIS_REF;
END_VAR

Name

Typ

Beschreibung

Axis

AXIS_REF

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

MC_ReadStatus 4: Ausgänge

VAR_OUTPUT
    Valid              : BOOL; 
    Busy               : BOOL; 
    Error              : BOOL;
    ErrorId            : UDINT;
    (* motion control statemachine states: *)
    ErrorStop          : BOOL; 
    Disabled           : BOOL; 
    Stopping           : BOOL; 
    StandStill         : BOOL; 
    DiscreteMotion     : BOOL; 
    ContinuousMotion    : BOOL; 
    SynchronizedMotion : BOOL; 
    Homing             : BOOL;
    (* additional status *)
    ConstantVelocity   : BOOL;
    Accelerating       : BOOL;
    Decelerating       : BOOL; 
    (* status data structure *)
    Status             : ST_AxisStatus; 
END_VAR

Name

Typ

Beschreibung

Valid

BOOL

Zeigt an, dass der an den weiteren Ausgängen angezeigte Betriebszustand der Achse gültig ist.

Busy

BOOL

TRUE, solange der Funktionsbaustein mit Enable = TRUE aufgerufen wird.

Error

BOOL

TRUE, wenn ein Fehler auftritt.

ErrorID

UDINT

Liefert bei einem gesetzten Error-Ausgang die Fehlernummer.

ErrorStop

BOOL

Zustand der Achse gemäß des PlcOpen-Zustandsdiagramms

Disabled

BOOL

Zustand der Achse gemäß des PlcOpen-Zustandsdiagramms

Stopping

BOOL

Zustand der Achse gemäß des PlcOpen-Zustandsdiagramms

StandStill

BOOL

Zustand der Achse gemäß des PlcOpen-Zustandsdiagramms

DiscreteMotion

BOOL

Zustand der Achse gemäß des PlcOpen-Zustandsdiagramms

ContinuousMotion

BOOL

Zustand der Achse gemäß des PlcOpen-Zustandsdiagramms

SynchronizedMotion

BOOL

Zustand der Achse gemäß des PlcOpen-Zustandsdiagramms

Homing

BOOL

Zustand der Achse gemäß des PlcOpen-Zustandsdiagramms

ConstantVelocity

BOOL

Die Achse fährt mit konstanter Geschwindigkeit.

Accelerating

BOOL

Die Achse beschleunigt.

Decelerating

BOOL

Die Achse bremst ab.

Status

ST_AxisStatus

Erweiterte Status-Datenstruktur mit weiteren Status-Informationen. (Typ: ST_AxisStatus)

Siehe auch: Allgemeine Regeln für MC-Funktionsbausteine

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken

TwinCAT v3.0.0

PC oder CX (x86 oder x64)

Tc2_MC2