WITHIN_LIMITS

评估一个值是否在限值范围内

此指令评估IN输入值是否位于MN最小值和MX最大值设定的限值范围内。

参数

输入

MN (ANY)

最小限值

IN (ANY)

与限值比较的值

MX (ANY)

最大限制

输出

VAR_OUT (BOOL)

如果IN输入值位于下限与上限之间,则结果为TRUE

示例

POU头

所有用于编程此函数的输入和输出变量已在POU头中声明。 所有编程语言使用相同的POU头。

	VAR
		iMinValue: INT:=50;
		iValidateValue: INT:=750;
		iMaxValue: INT:=1000;
		bResult: BOOL:=FALSE;
	END_VAR

LD本体

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 6 ;
        NETWORK_BODY
B(B_F,WITHIN_LIMITS!,,12,1,20,6,,?DMN?DIN?DMX?C);
B(B_VARIN,,iMinValue,10,2,12,4,);
B(B_VARIN,,iValidateValue,10,3,12,5,);
B(B_VARIN,,iMaxValue,10,4,12,6,);
B(B_VAROUT,,bResult,20,2,22,4,);
L(1,0,1,6);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST本体

bResult := WITHIN_LIMITS(MN := iMinValue,
                           IN := iValidateValue,
                           MX := iMaxValue);

最后更新日期: 此页面上的反馈松下热线