The purpose of this tutorial is to explain how to insert and use the LIMITALARM functional block in a MasterTool X project.
Components
Equipment: 1 computer/laptop.
Software: MasterTool X
Tutorial Sections
- ARCHITECTURE
- DEVELOPMENT
1. ARCHITECTURE
A computer/laptop will be required to use MasterTool X.
Figure 1. Computer running MasterTool X
2. DEVELOPMENT
The LIMITALARM block is used to monitor integer values and indicate limit conditions, signaling when the variable is within the range, above (overshoot), or below (undershoot) the defined limits.
This block is widely used for supervision of discretized or scaled variables, such as:
- Converted analog values (INT)
- Counts
- Discrete levels
- Already processed process variables
Prerequisite
Like the BLINK and LIN_TRAFO blocks, the LIMITALARM is only available in the Util library.
Therefore, to use it, the library must be previously added to the project via the Library Manager.
Functionality
The LIMITALARM block analyzes an integer (INT) type value and indicates its condition relative to predefined limits.
It operates with three main states:
- Value within the range (normal)
- Value above the limit (overshoot)
- Value below the limit (undershoot)
Inserting the block into the logic
The LIMITALARM block does not appear directly in the toolbox, so it must be inserted manually.
To do this:
- Create a new network in the logic
- Insert a generic box (empty box with EN/ENO)
- From the toolbox (General)
- Or with right-click on the network
- Inside the box, type the block name:
LIMITALARM
After this, the system will automatically recognize the block.
Figure 2. Adding the LIMITALARM Functional Block
Input Parameter
IN (INT)
- Integer value to be monitored by the block
Outputs
Based on the block's structure:
O (Overshoot)
- Activates when the value is above the maximum limit
U (Undershoot)
- Activates when the value is below the minimum limit
IL (OK)
- Indicates that the value is within the normal range
Application Example
Consider a stepped level value:
Configuration:
Analog_Value :INT; //IN
Min_Value_IN: INT := 20; //IN_MIN
Max_Value_IN: INT := 80; //IN_MAX
Situations:
- Value within the range → IL = TRUE
- Value above expected → O = TRUE
- Value below expected → U = TRUE
Figure 3. Parameterization of the LIMITALARM block
Applications in automation
The LIMITALARM block is used in:
- Monitoring integer variables
- Detection of overshoot (limit exceedance)
- Detection of undershoot (value below minimum)
- Alarm systems
- Process protection
Important notes
- The block works with integer values (INT)
- Requires the Util library added to the project
- Can be used together with other logic for corrective actions
- Ideal for already scaled variables (e.g., 0 to 100, 0 to 27648)
In summary, the LIMITALARM block allows quick identification if a value is within the range, above (overshoot), or below (undershoot), being essential for monitoring and safety in automation systems.
Figure 4. Operation of the LIMITALARM block
Comments
0 comments
Please sign in to leave a comment.