FB_MTP_AnaDrv

The function block FB_MTP_AnaDrv
is an object for controlling a drive with variable speed from different sources: internal PLC logic or manual operation (e. g. via OPC UA). Switching requests and value specifications are managed independently of each other via the state machines of Operation Mode and Source Mode. The OPC UA access rights are described in the variable tables.
Controlling the drive
The direction of rotation of the drive is specified via the switching requests Fwd*
, Rev*
and Stop*
. The state machine of the Operation Mode manages whether and from which source new switching requests are processed. With simultaneous requests from Fwd*
and Rev*
, both are prioritized equally and the drive remains in its state. Stop*
is prioritized highest at SafePos
= FALSE
with simultaneous requests from Fwd*
, Rev*
and Stop*
. If SafePos
= TRUE
, the switching requests Fwd*
, Rev*
and Stop*
are prioritized equally and the drive remains in its current state in the event of simultaneous requests.
When Locking is active, it is no longer possible to control the drive, depending on the type of interlock.
Setpoint specification
The speed is set via Rpm*
variables. The speed specification is managed by the state machine Source Mode and is output according to the diagram below:

Safety position
The safety position is defined via the variables SafePos
, SafePosDirRpmEn
, SafePosDir
and SafePosRpm
.
The variable SafePos
is used to specify whether the safety position of the drive is the de-energized state or an active state.
![]() | The variables |
Safety position: de-energized state (SafePos = FALSE
)
In the de-energized state, the drive is stopped (FwdCtrl
= FALSE
, RevCtrl
= FALSE
and Rpm = 0
)
Safety position: active state (SafePos = TRUE
)
If the state is active, the default direction of rotation and speed can be activated (SafePosDirRpmEn = TRUE
) and the direction of rotation (SafePosDir
) or speed (SafePosRpm
) can be specified.
If SafePosDirRpmEn = FALSE
, the current movement state (forward, reverse or stop) is the safety position.
If the default setting (SafePosDirRpmEn = TRUE
) is activated, the safety position is forward (SafePosDir = FALSE
) or reverse (SafePosDir = TRUE
) with the defined safety speed (SafePosRpm
).
The following table shows the operating options for the drive (Fwd*
, Rev*
, Stop*
and Rpm*
) when Permit
is active, depending on the initial state of the drive (stop drive, set drive to forward movement and set drive to reverse movement) and the defined safety position:
SafePos | SafePos | SafePosDir | Drive set to Stop | Drive set to Forward | Drive set to Reverse |
---|---|---|---|---|---|
| - | - |
|
|
|
|
| - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x: Switching requests and/or value specifications are no longer taken into account
✓: Switching requests and/or value specifications are taken into account
Further characteristics
Inputs
Name | Type | Description | OPC UA access |
---|---|---|---|
TagName | STRING | Name of the interface | - |
TagDescription | STRING | Description of the interface | - |
WQC | BYTE | Worst Quality Code | Read |
OSLevel | BYTE | Level must be defined for system. Value 0 is reserved for local operation. | Read/write |
Src* |
| See Source Mode |
|
RpmInt | REAL |
| Read |
RpmUnit | INT | Speed Unit | Read |
RpmMin | REAL | Upper limit of the speed setpoint | Read |
RpmMax | REAL | Lower limit of the speed setpoint | Read |
RpmFbkCalc | BOOL | Source of the actual speed value: 1: Calculated 0: Sensor | Read |
RpmFbk | REAL | Actual speed value | Read |
RpmSclMin | REAL | Speed scale start | Read |
RpmSclMax | REAL | Speed scale end | Read |
Perm* Int* Prot* |
| See Locking |
|
Trip | BOOL | Signaling contact for motor protection: 1: No error 0: Motor protection tripped. | Read |
SafePos | BOOL | 1: Retain current state. 0: Stop | Read |
SafePosDirRpmEn | BOOL | 1: Rotation direction specification for 0: No rotation direction specified | – |
SafePosDir | BOOL | Rotation direction specification for 1: reverse 0: forward | – |
SafePosRpm | REAL | Speed specification for safety position, if | – |
ResetAut | BOOL |
1: Reset requested. 0: No reset requested. | Read |
Outputs
Name | Type | Description | OPC UA access |
---|---|---|---|
State* |
| See Operation Mode |
|
FwdCtrl | BOOL | Forward movement: 1: active 0: inactive | Read |
RevCtrl | BOOL | Reverse movement: 1: active 0: inactive | Read |
Src* |
| See Source Mode |
|
Rpm | REAL | Speed setpoint on drive | Read |
SafePosAct | BOOL | Safety position enabled: 1: Safety position is active. 0: Safety position is not active. | Read |
External variables
Name | Type | Description | OPC UA access |
---|---|---|---|
State* |
| See Operation Mode |
|
StopOp | BOOL |
(Relevant if 1: Execute stop. 0: Do not execute a stop. | Read/write |
FwdOp | BOOL |
(Relevant if 1: Execute forward movement. 0: Do not execute any forward movement. | Read/write |
RevOp | BOOL |
(Relevant if 1: Execute reverse movement. 0: Do not execute any reverse movement. | Read/write |
Src* |
| See Source Mode |
|
RpmMan | REAL |
| Read/write |
RpmRbk | REAL | Unprocessed value of the | Read |
ResetOp | BOOL |
0→1: 1→0: Request has been processed. | Read/write |
Methods
Name | Description |
---|---|
SetOffline SetOperator SetAutomatic | See Operation Mode |
SetInternal SetManual | See Source Mode |