FB_CTRL_SERVO_MOTOR_SIMULATION

FB_CTRL_SERVO_MOTOR_SIMULATION 1:

Mit diesem Funktionsbaustein kann das Verhalten eines Stellantriebs simuliert werden.

Verhalten des Ausgangs

FB_CTRL_SERVO_MOTOR_SIMULATION 2:

FB_CTRL_SERVO_MOTOR_SIMULATION 3: VAR_INPUT

VAR_INPUT
    bMovePos       : BOOL;
    bMoveNeg       : BOOL;
    fManSyncValue  : FLOAT;
    bSync          : BOOL;
    eMode          : E_CTRL_MODE;
END_VAR

Name

Typ

Beschreibung

bMovePos

BOOL

Eingang, der den simulierten Stellantrieb in positive Richtung fährt.

bMoveNeg

BOOL

Eingang, der den simulierten Stellantrieb in negative Richtung fährt.

fManSyncValue

FLOAT

Eingang, mit dem die simulierte Motorstellung gesetzt werden kann, oder auf dessen Wert im Manual-Mode gefahren wird.

bSync

BOOL

Mit einer steigenden Flanke an diesem Eingang wird die simulierte Motorposition auf den Wert „fManSyncValue“ gesetzt.

eMode

E_CTRL_MODE

Eingang, der die Betriebsart des Bausteins festlegt.

FB_CTRL_SERVO_MOTOR_SIMULATION 4: VAR_OUTPUT

VAR_OUTPUT
    fMotorPositon      : FLOAT;
    fMotorState        : FLOAT;
    bUpperLimitSwitch  : BOOL;
    bLowerLimitSwitch  : BOOL;
    eState             : E_CTRL_STATE;
    eErrorId           : E_CTRL_ERRORCODES;
    bError             : BOOL;
END_VAR

Name

Typ

Beschreibung

fMotorPositon

FLOAT

Simulierte Motorstellung im Intervall [ fMovingRangeMin ... fMovingRangeMax ]

fMotorState

FLOAT

Simulierte Motorstellung im Intervall [ 0 ... 100.0 ]

bUpperLimit
Switch

BOOL

Simulierter Endschalter am positiven Anschlag des Stellantriebs

bLowerLimit
Switch

BOOL

Simulierter Endschalter am negativen Anschlag des Stellantriebs.

eState

E_CTRL_
STATE

State des Funktionsbausteins

eErrorId

E_CTRL_ERRORCODES

Liefert bei einem gesetzten bError-Ausgang die Fehlernummer.

bError

BOOL

Wird TRUE, sobald ein Fehler eintritt.

VAR_IN_OUT

VAR_IN_OUT
    stParams        : ST_CTRL_SERVO_MOTOR_SIMULATION_PARAMS;
END_VAR

Name

Typ

Beschreibung

stParams

ST_CTRL_
SERVO_MOTOR_SIMULATION_
PARAMS

Parameterstruktur des Funktionsbausteins

stParams besteht aus den folgenden Elementen:

TYPE ST_CTRL_SERVO_MOTOR_SIMULATION_PARAMS:
STRUCT
    tCtrlCycleTime   : TIME := T#0ms;
    tTaskCycleTime   : TIME := T#0ms;
    fMovingRangeMin  : FLOAT := 0;
    fMovingRangeMax  : FLOAT := 0;
    tMovingTime      : TIME := T#0ms;
    tDeadTime        : TIME := T#0ms;
END_STRUCT
END_TYPE

Name

Typ

Beschreibung

tCtrlCycleTime

TIME

Zykluszeit, mit der der Regelkreis bearbeitet wird. Diese muss größer oder gleich der TaskCycleTime sein. Der Funktionsbaustein berechnet mit dieser Eingangsgröße intern, ob die Zustands- und Ausgangsgrößen in aktuellen Zyklus aktualisiert werden müssen.

tTaskCycleTime

TIME

Zykluszeit, mit der der Funktionsbaustein aufgerufen wird. Diese entspricht der Task-Zykluszeit der aufrufenden Task, wenn der Baustein in jedem Zyklus aufgerufen wird.

fMovingRange
Min

FLOAT

Minimale Position des simulierten Stellantriebs

fMovingRange
Max

FLOAT

Maximale Position des simulierten Stellantriebs

tMovingTime

TIME

Die Zeit, die benötigt wird, um den simulierten Stellantrieb von einem Anschlag zum anderen zu fahren.

tDeadTime

TIME

Totzeit des simulierten Stellantriebs