LIN_TRAFO

这个功能块 ( “函数库 UTIL.Library ”)   用于转化一个 REAL-值,用于线性插补一个值通过定义的最低和最大值,相对于一个 REAL-值位于最低和最大限制的线性关系。以下表达式基于这种变换:

(IN - IN_MIN) : (IN_MAX - IN) = (OUT - OUT_MIN) : (OUT_MAX - OUT)

插图 545: fFBD中功能块 LIN_TRAFO:

输入变量:

变量

数据类型

描述

IN

REAL

输入变量

IN_MIN

REAL

变量范围低值

IN_MAX

REAL

变量范围高值

OUT_MIN

REAL

输出范围的低值

OUT_MAX

REAL

输出范围的高值

输出变量:

变量

数据类型

描述

OUT

REAL

输出值

ERROR

BOOL

错误发生:TRUE,如果IN_MIN = IN_MAX,或者IN 超出指定的输入范围

应用示例:

一个温度是由电压值提供的 (输入 IN)。然而这些温度值将会被转化为温度值 (输出 OUT)。输入(电压) 值的范围是通过 IN_MIN=0 和 IN_MAX=10 进行限制。输出 (温度值) 值的范围是通过 OUT_MIN=-20 和 OUT_MAX=40 进行限制的。

因此对应一个 5 伏电压值将会产生一个 10 度的温度输出。