Blocking Predetection
This library was specially developed for shredder applications and ensures reliable prevention of potential drive faults.
TB_BlockingPreDetection
The function block TB_BlockingPreDetection was specifically designed for shredder applications and ensures reliable prevention of potential drive errors, including overloads due to current or thermal energy (i²t) as well as blockages.
By continuously monitoring current and speed, this module enables proactive detection and prevention of critical operating conditions that could lead to disruptions. This helps minimize potential downtime and ensures smooth and trouble-free operation in shredder applications.
The function block provides four distinct monitoring levels:
Empfohlene Task: Cyclic / Event
Verwendete Bibliotheken: TECH_TOOLS_40bd08 oder höher
Eingänge
| Marking: | Data type: | Data range: | Description: |
|---|---|---|---|
| x_Enable | BOOL | - | Release of the function block |
| x_Acknowledge | BOOL | - | Resets the *LimitExceeded outputs. |
| x_AcknowledgeByTorqueDirChange | BOOL | - | Enables automatic resetting of the *LimitExceeded outputs when the direction of rotation changes. |
| x_NoDetectionAcc | BOOL | - | If this input is set to TRUE, the working or blocking detection is not active in the acceleration phase. |
| x_NoDetectionDec | BOOL | - | If this input is set to TRUE, the working or blocking detection is not active in the deceleration phase. |
| x_DriveState_InVel | BOOL | - | Indicates whether the drive is in the speed state. |
| x_DriveState_InAcc | BOOL | - | Indicates whether the drive is in the acceleration state. |
| x_DriveState_InDec | BOOL | - | Indicates whether the drive is in the deceleration state. |
| us_MaxNrBlockings | USINT | 1 .. 255 | Maximum number of blockings allowed before a blocking error x_BlockingMaxCntReached = TRUE occurs. |
| t_BlockingCountDownTime | TIME | T > 0s | Time after which the blockage counter is counted down, provided that the current motor current is below the limit values. |
| t_BlockingFreeRunTime | TIME | T > 0s | Time period that the drive must run freely to reset the output x_BlockingMaxCntReached. |
| t_WorkingCurrentTimeout | TIME | 0s | Time period after which a working current exceeded is detected. |
| t_BlockingCurrentTimeout | TIME | T > 0s | Time period after which a blovking current exceeded is detected. |
| ui_WorkingCurrentThreshold | UINT | 0% | Sets the working current limit in percent of the nominal motor current. |
| ui_WorkingCurrentHysteresis | UINT | 1% | Sets the Hysteresis of the working current limit in percentage. |
| ui_BlockingCurrentThreshold | UINT | 0% ui_WorkingCurrentThreshold | Sets the blocking current limit in percent of the nominal motor current |
| ui_BlockingCurrentHysteresis | UINT | 1 | Sets the Hysteresis of the blocking current limit in percent. |
| ui_BlockingVelocityDeviation | UINT | 1% | Sets the velocity deviation from the setpoint r_SetpointVelocity in percent at which velocity monitoring is triggered. |
| r_ActualCurrent | REAL | - | Contains the actual motor current in percent. |
| r_ActualVelocity | REAL | - | Contains the actual motor speed in percent, related to the nominal motor current. |
| r_SetpointVelocity | REAL | v >= 1% | Contains the setpoint speed of the motor in percent, related to the nominal motor current. |
| r_SetpointAcceleration | REAL | a >= 1% | Contains the setpoint acceleration of the motor in milliseconds. |
Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_WorkingLimitExceeded | BOOL | Indicates whether the maximum working current limit has been exceeded. |
| x_WorkingLimitReached | BOOL | Indicates whether the working current limit has been reached and the timer started. |
| x_BlockingLimitExceeded | BOOL | Indicates whether the maximum blocking current limit has been exceeded. |
| x_BlockingLimitReached | BOOL | Indicates whether the blocking current limit has been reached and the timer started. |
| x_BlockingMaxCntReached | BOOL | Indicates whether the maximum number of blockings has been reached. |
| us_BlockingCounter | USINT | Displays the number of detected blockages. |
| x_Active | BOOL | Indicates whether the function block is active. |
| x_Busy | BOOL | Indicates whether blockage detection is active, depending on the input configuration and drive status. |
| x_Warning | BOOL | Indicates whether a warning has been detected and a valid w_WarningID is available. |
| w_WarningID | WORD | Number to identify the warning:
1 - MaxNrBlockings must be greater than 0. 2 - BlockingCountDownTime must be greater than 0s 3 - BlockingFreeRunTime must be greater than 0s 4 - WorkingCurrentTimeout must be greater than 0s 5 - BlockingCurrentTimeout must be greater than 0s 6 - WorkingCurrentTimeout must be greater than BlockingCurrentTimeout 7 - WorkingCurrentThreshold must be greater than 0%. 8 - BlockingCurrentThreshold must be greater than 0%. 9 - WorkingCurrentThreshold must be smaller than BlockingCurrentThreshold 10 - BlockingVelocityDeviation must be greater than or equal to 1% and less than or equal to 95%. 11 - WorkingCurrentHysteresis must be greater than or equal to 1% and less than or equal to 10%. 12 - BlockingCurrentHysteresis must be greater than or equal to 1% and less than or equal to 10%. 13 - SetpointVelocity must be greater than or equal to 1%. 14 - SetpointAcceleration must be greater than or equal to 1%. 15 - BlockingCurrentHysteresis disabled, SetpointVelocity or SetpointAcceleration invalid. |
| x_Error | BOOL | Indicates whether an error has occurred and w_ErrorID is valid. |
| w_ErrorID | WORD | Number to identify the error that has occurred:
1 - MaxNrBlockings must be greater than 0. 2 - BlockingCountDownTime must be greater than 0s 3 - BlockingFreeRunTime must be greater than 0s 4 - WorkingCurrentTimeout must be greater than 0s 5 - BlockingCurrentTimeout must be greater than 0s 6 - WorkingCurrentTimeout must be greater than BlockingCurrentTimeout 7 - WorkingCurrentThreshold must be greater than 0%. 8 - BlockingCurrentThreshold must be greater than 0%. 9 - WorkingCurrentThreshold must be smaller than BlockingCurrentThreshold 10 - BlockingVelocityDeviation must be greater than or equal to 1% and less than or equal to 95%. 11 - WorkingCurrentHysteresis must be greater than or equal to 1% and less than or equal to 10%. 12 - BlockingCurrentHysteresis must be greater than or equal to 1% and less than or equal to 10%. |

TB_BlockingPreDetection
The function block TB_BlockingPreDetection was specifically designed for shredder applications and ensures reliable prevention of potential drive errors, including overloads due to current or thermal energy (i²t) as well as blockages.
By continuously monitoring current and speed, this module enables proactive detection and prevention of critical operating conditions that could lead to disruptions. This helps minimize potential downtime and ensures smooth and trouble-free operation in shredder applications.
The function block provides four distinct monitoring levels:
Empfohlene Task: Cyclic / Event
Verwendete Bibliotheken: TECH_TOOLS_40bd08 oder höher
Eingänge
| Marking: | Data type: | Data range: | Description: |
|---|---|---|---|
| x_Enable | BOOL | - | Release of the function block |
| x_Acknowledge | BOOL | - | Resets the *LimitExceeded outputs. |
| x_AcknowledgeByTorqueDirChange | BOOL | - | Enables automatic resetting of the *LimitExceeded outputs when the direction of rotation changes. |
| x_NoDetectionAcc | BOOL | - | If this input is set to TRUE, the working or blocking detection is not active in the acceleration phase. |
| x_NoDetectionDec | BOOL | - | If this input is set to TRUE, the working or blocking detection is not active in the deceleration phase. |
| x_DriveState_InVel | BOOL | - | Indicates whether the drive is in the speed state. |
| x_DriveState_InAcc | BOOL | - | Indicates whether the drive is in the acceleration state. |
| x_DriveState_InDec | BOOL | - | Indicates whether the drive is in the deceleration state. |
| us_MaxNrBlockings | USINT | 1 .. 255 | Maximum number of blockings allowed before a blocking error x_BlockingMaxCntReached = TRUE occurs. |
| t_BlockingCountDownTime | TIME | T > 0s | Time after which the blockage counter is counted down, provided that the current motor current is below the limit values. |
| t_BlockingFreeRunTime | TIME | T > 0s | Time period that the drive must run freely to reset the output x_BlockingMaxCntReached. |
| t_WorkingCurrentTimeout | TIME | 0s | Time period after which a working current exceeded is detected. |
| t_BlockingCurrentTimeout | TIME | T > 0s | Time period after which a blovking current exceeded is detected. |
| ui_WorkingCurrentThreshold | UINT | 0% | Sets the working current limit in percent of the nominal motor current. |
| ui_WorkingCurrentHysteresis | UINT | 1% | Sets the Hysteresis of the working current limit in percentage. |
| ui_BlockingCurrentThreshold | UINT | 0% ui_WorkingCurrentThreshold | Sets the blocking current limit in percent of the nominal motor current |
| ui_BlockingCurrentHysteresis | UINT | 1 | Sets the Hysteresis of the blocking current limit in percent. |
| ui_BlockingVelocityDeviation | UINT | 1% | Sets the velocity deviation from the setpoint r_SetpointVelocity in percent at which velocity monitoring is triggered. |
| r_ActualCurrent | REAL | - | Contains the actual motor current in percent. |
| r_ActualVelocity | REAL | - | Contains the actual motor speed in percent, related to the nominal motor current. |
| r_SetpointVelocity | REAL | v >= 1% | Contains the setpoint speed of the motor in percent, related to the nominal motor current. |
| r_SetpointAcceleration | REAL | a >= 1% | Contains the setpoint acceleration of the motor in milliseconds. |
Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_WorkingLimitExceeded | BOOL | Indicates whether the maximum working current limit has been exceeded. |
| x_WorkingLimitReached | BOOL | Indicates whether the working current limit has been reached and the timer started. |
| x_BlockingLimitExceeded | BOOL | Indicates whether the maximum blocking current limit has been exceeded. |
| x_BlockingLimitReached | BOOL | Indicates whether the blocking current limit has been reached and the timer started. |
| x_BlockingMaxCntReached | BOOL | Indicates whether the maximum number of blockings has been reached. |
| us_BlockingCounter | USINT | Displays the number of detected blockages. |
| x_Active | BOOL | Indicates whether the function block is active. |
| x_Busy | BOOL | Indicates whether blockage detection is active, depending on the input configuration and drive status. |
| x_Warning | BOOL | Indicates whether a warning has been detected and a valid w_WarningID is available. |
| w_WarningID | WORD | Number to identify the warning:
1 - MaxNrBlockings must be greater than 0. 2 - BlockingCountDownTime must be greater than 0s 3 - BlockingFreeRunTime must be greater than 0s 4 - WorkingCurrentTimeout must be greater than 0s 5 - BlockingCurrentTimeout must be greater than 0s 6 - WorkingCurrentTimeout must be greater than BlockingCurrentTimeout 7 - WorkingCurrentThreshold must be greater than 0%. 8 - BlockingCurrentThreshold must be greater than 0%. 9 - WorkingCurrentThreshold must be smaller than BlockingCurrentThreshold 10 - BlockingVelocityDeviation must be greater than or equal to 1% and less than or equal to 95%. 11 - WorkingCurrentHysteresis must be greater than or equal to 1% and less than or equal to 10%. 12 - BlockingCurrentHysteresis must be greater than or equal to 1% and less than or equal to 10%. 13 - SetpointVelocity must be greater than or equal to 1%. 14 - SetpointAcceleration must be greater than or equal to 1%. 15 - BlockingCurrentHysteresis disabled, SetpointVelocity or SetpointAcceleration invalid. |
| x_Error | BOOL | Indicates whether an error has occurred and w_ErrorID is valid. |
| w_ErrorID | WORD | Number to identify the error that has occurred:
1 - MaxNrBlockings must be greater than 0. 2 - BlockingCountDownTime must be greater than 0s 3 - BlockingFreeRunTime must be greater than 0s 4 - WorkingCurrentTimeout must be greater than 0s 5 - BlockingCurrentTimeout must be greater than 0s 6 - WorkingCurrentTimeout must be greater than BlockingCurrentTimeout 7 - WorkingCurrentThreshold must be greater than 0%. 8 - BlockingCurrentThreshold must be greater than 0%. 9 - WorkingCurrentThreshold must be smaller than BlockingCurrentThreshold 10 - BlockingVelocityDeviation must be greater than or equal to 1% and less than or equal to 95%. 11 - WorkingCurrentHysteresis must be greater than or equal to 1% and less than or equal to 10%. 12 - BlockingCurrentHysteresis must be greater than or equal to 1% and less than or equal to 10%. |
