ScaleLin

PLCopen motion icon

 Function - Scaling - linear conversion.

Inputs

Input

Data Type

Range

Unit

Default

Description

IN

REAL

 

 

 

Real value.

IMIN

REAL

 

 

 

Minimum input value.

IMAX

REAL

 

 

 

Minimum input value.

OMIN

REAL

 

 

 

Minimum output value.

OMAX

REAL

 

 

 

Minimum output value.

Outputs

Output

Data Type

Range

Unit

Description

Q

REAL

 

 

Result: OMIN + IN * (OMAX - OMIN) / (IMAX - IMIN).

Remarks

Truth Table

Inputs

OUT

IMIN >= IMAX

= IN

IN < IMIN

= OMIN

IN > IMAX

= OMAX

other

= OMIN + IN * (OMAX - OMIN) / (IMAX - IMIN)

FBD Language Example

FFLD Language Example

  • In the FFLD Language, the operation is executed only if the input rung (EN) is TRUE. 
    • The output rung (ENO) keeps the same value as the input rung.
    • The function is executed only if EN is TRUE.
    • ENO keeps the same value as EN.

IL Language Example

  • In the IL Language, the input must be loaded in the current result before calling the function.
Op1: LD       IN
     ScaleLin IMAX, IMIN, OMAX, OMIN
     ST       OUT

ST Language Example

OUT := ScaleLin (IN, IMIN, IMAX, OMIN, OMAX);