DIV_TIME block
Short summary
Name |
DIV_TIME |
→POU type |
|
Category |
|
Conform to →IEC-standard |
no restrictions |
Graphical interface |
|
Available since |
version 1.19.0 (for logi.CAD 3) |
Functionality
The block divides the time value entered at input IN1 by a numerical value entered at input IN2 (= IN1 / IN2). The block returns the result of this division in format TIME.
No check of invalid connections
For some blocks, invalid connections are not checked by logi.CAD 3. Therefore, enter code in your application to detect invalid connections (e.g. IF-statements).
See "IEC-blocks for the application" for information what the consequences of an invalid connection might be.
An invalid connection due to →overflows or →underflows might occur during a calculation using DIV_TIME. As your used →target system might influence the usage of →time literals in logi.CAD 3 (see "Properties and restrictions specific to the target system"), an overflow/underflow might occur for different return values when using different target systems.
Inputs, return value
|
Identifier |
Description |
|
Inputs: |
IN1 |
TIME |
time value |
IN2 |
REAL, LREAL, USINT, UINT, UDINT, ULINT, SINT, INT, DINT or LINT |
numerical value |
|
Return value: |
– |
TIME |
|
(1) = DIV_TIME uses the highest possible accuracy for the calculations. That means: If a REAL value is connected to IN2, logi.CAD 3 uses a LREAL value for the calculation and a division by a REAL value might result in a not expected result. If you need large values or values with many decimal places, best practice is to use a LREAL value.
Input EN and output ENO are available when →calling
the block. See "Execution control: EN, ENO" for information on input EN and output ENO.
Internal error diagnostic for block
The block checks for a division by 0 before it is executed.
In this error case, the output ENO of the block is set to value FALSE (or an equivalent).
Example for usage within ST-editor
The calculated values are evaluated by using the Assert block .
FUNCTION_BLOCK ExampleDivTime
VAR
result : TIME;
END_VAR
result := DIV_TIME(IN1 := T#1m40s, IN2 :=
2.0
);
Assert(result = TIME#50s);
END_FUNCTION_BLOCK
When creating your application within the ST-editor, enter a call of a block by typing the text as requested by the syntax or use Content Assist.