Process control instructions
964
Part III FP Instructions
SCALE_UINT_INT
Scales UINT input data to INT output data
PLC types see page 1330
Variable Data type Function
uiInput Input signal
uiInputLowerLimit Lower limit of the input range
uiInputUpperLimit
UINT
Upper limit of the input range
iOutputLowerLimit Output value assigned to the upper limit of the input range (can
be lower than iOutputLowerLimit)
iOutputUpperLimit Output value assigned to the lower limit of the input range (can
be higher than iOutputUpperLimit)
Output variable
INT
Scaled output signal
Description
This instruction scales an unsigned INTEGER value between a lower and an upper limit to an
INTEGER output value. Use WITHIN_LIMITS (see page 111) to check if the input value is within
the specified limits.
Data types
Example
In this example the function has been programmed in ladder diagram (LD) and structured text (ST).
The same POU header is used for all programming languages.
POU header
All input and output variables used for programming this function have been declared in the POU
header.
LD
ST
When programming with structured text, enter the following:
if (bScale) then
SCALE_UINT_INT(uiInput := uiInput,
uiInputLowerLimit := 123,
uiInputUpperLimit := 45678,
iOutputLowerLimit := -123,
iOutputUpperLimit := 25836,
iOutput => iOutput);
end_if;