MC_WriteParameter_BkPlcMc (ab V3.0)

MC_WriteParameter_BkPlcMc (ab V3.0) 1:

Der Funktionsbaustein schreibt die nicht boolschen Parameter einer Achse aus. Für boolsche Parameter steht der Baustein MC_WriteBoolParameter_BkPlcMc zur Verfügung.

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

VAR_INPUT
    Enable:             BOOL;
    ParameterNumber:    INT;
    Value:              LREAL;
END_VAR

Name

Typ

Beschreibung

Enable

BOOL

Eine steigende Flanke an diesem Eingang löst einen Schreibvorgang aus.

ParameterNumber

INT

Diese Kennnummer legt den auszulesenden Parameter fest. Es sollten nur benannte Konstanten aus E_TcMCParameter verwendet werden.

Value

LREAL

Hier ist der Wert des Parameters bereit zu stellen.

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

VAR_INOUT
    Axis:       Axis_Ref_BkPlcMc;
END_VAR

Name

Typ

Beschreibung

Axis

Axis_Ref_BkPlcMc

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

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

VAR_OUTPUT
    Busy:       BOOL;
    Done:       BOOL;
    Error:      BOOL;
    ErrorID:    UDINT;
END_VAR

Name

Typ

Beschreibung

Busy

BOOL

Hier wird signalisiert, dass ein Kommando abgearbeitet wird.

Done

BOOL

Hier wird die erfolgreiche Durchführung des Schreibvorgangs signalisiert.

Error

BOOL

Hier wird das Auftreten eines Fehlers signalisiert.

ErrorID

UDINT

Hier wird eine codierte Fehlerursache bereitgestellt.

Verhalten des Bausteins

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

Wenn diese Überprüfungen ohne Probleme durchgeführt werden konnten wird Value in den gewünschten Parameterwert eingetragen und Done wird gemeldet. Wird der Parameter dabei erkennbar verändert wird Axis_Ref_BkPlcMc.ST_TcHydAxRtData.bParamsUnsave gesetzt.

Eine fallende Flanke an Enable löscht alle anstehenden Ausgangssignale.

MC_WriteParameter_BkPlcMc (ab V3.0) 5:

Dieser Baustein benötigt keine Zeit zur Durchführung seiner Aufgaben. Der Ausgang Busy wird zu keinem Zeitpunkt den Wert TRUE annehmen und ist nur aus Kompatibilitätsgründen vorhanden.