FB_BA_MotMdlt
The template is used to control a speed-controlled motor.
It mainly consists of a BO and AO object for controlling the motor (frequency converter) and a BI object for displaying a fault. The function block PlantLock collects all safety-relevant faults. The enables and modulation commands are transmitted to the template via the command structure stCmd.
The initialization of the template takes place within the method FB_Init. |
Block diagram
Syntax
FUNCTION_BLOCK FB_BA_MotCtl EXTENDS FB_BA_View
VAR_INPUT
stCmd : ST_BA_Mdlt;
fValPgm : REAL;
END_VAR
VAR_INPUT CONSTANT
Dst : FB_BA_BI_Raw;
Cmd : FB_BA_BO_Raw;
Mdlt : FB_BA_AO_Raw;
PlantLock : FB_BA_PlantLock;
END_VAR
VAR_INPUT CONSTANT PERSISTENT
{attribute 'parameterCategory' := 'Behaviour'}
fMinModulation : REAL := 20;
{attribute 'parameterCategory' := 'Behaviour'}
fMaxModulation : REAL := 100;
END_VAR
VAR_OUTPUT
bCmd : BOOL;
fMdlt : REAL;
bDst : BOOL;
eActivePrio : E_BA_Priority;
END_VAR
VAR
bPrioSfty : BOOL;
bPrioCrit : BOOL;
PrioSwiVal : FB_BA_PrioSwi_UDI04;
MuxCmd : FB_BA_MMUX_B04;
MuxMdlt : FB_BA_MMUX_R04;
END_VAR
Inputs
Name | Type | Description |
---|---|---|
stCmd | The enables and modulation commands are transmitted to the template via the command structure stCmd. The command with the highest priority determines the switching command at the binary output object Cmd and the control command at the analog output object Mdlt. | |
fValPgm | REAL | Control value for the control of the motor. |
Inputs CONSTANT
Name | Type | Description |
---|---|---|
Dst | Binary input object is used to process a fault. | |
Cmd | The multistate output object is used to output the current switch value. | |
Mdlt | Current value of the analog output object. | |
PlantLock | The function block PlantLock collects all safety-relevant faults at this level of the project structure and triggers switching commands in the template accordingly. |
Inputs CONSTANT PERSISTENT
Name | Type | Description |
---|---|---|
fMinModulation | REAL | Constant minimum value which is output if the modulation command E_BA_MdltCmd.eMin is pending (see E_BA_Mdlt). |
fMaxModulation | REAL | Constant maximum value which is output if the modulation command E_BA_MdltCmd.eMax is pending (see E_BA_Mdlt). |
Outputs
Name | Type | Description |
---|---|---|
bCmd | BOOL | Output of the switch value. |
fMdlt | REAL | Current value of the analog output object. |
bDst | BOOL | The variable is an evaluation of the lock priorities "Safety" and "Critical" of the project structure and indicates a triggered event. |
eActivePrio | Display of the active priority. |
Variables
Name | Type | Description |
---|---|---|
bPrioSfty | BOOL | The variable is an evaluation of the "Safety" lock priority of the project structure. |
bPrioCrit | BOOL | The variable is an evaluation of the "Critical" lock priority of the project structure. |
bPrioSwiVal | The priority switch PrioSwiVal uses the command structure stCmd to determine the modulation command for the multiplexers MuxCmd and MuxMdlt. | |
MuxCmd | The multiplexer MuxCmd determines the current switch value from the command of the priority switch PrioSwiVal. The resulting output is sent to the binary output object Cmd. | |
MuxMdlt | The multiplexer MuxMdlt determines the current control value from the modulation values Ctrl.fPresentValue, fMin, fMax and the modulation command of the priority switch PrioSwiVal. The resulting output is sent to the analog output object Mdlt. |
Requirements
Development environment | Necessary function |
---|---|
TwinCAT from v3.1.4024.35 | TF8040 | TwinCAT Building Automation from V5.2.1.0 |