SEL

从两个通道之一选择值

通过SEL的第一个输入变量(数据类型BOOL)可以定义哪个输入变量写入输出变量。如果布尔值 = 0(FALSE),输入变量IN0将被写入输出变量,否则写入IN1

参数

输入

G (BOOL)

第1个输入:在输入值IN0IN1之间选择

IN0 (ANY)

第2个输入:如果G = FALSE,值被写入输出变量

IN1 (ANY)

第3个输入:如果G = TRUE,值被写入输出变量

输出

VAR_OUT (ANY)

结果值作为IN0IN1

标注

当通过FP-eFP0等小型PLC使用数据类型STRING时,确保结果字符串的长度等于或大于源字符串的长度。

示例

POU头

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

	VAR
		channel_select: BOOL:=FALSE;
		channel_0: INT:=0;
		channel_1: INT:=0;
		output: INT:=0;
	END_VAR

在此例中,已声明输入变量(channel_selectchannel_0channel_1)。相反,可以直接在函数的输入触点处输入常量。

POU本体

如果channel_select具有值0,channel_0将被写入输出,否则写入channel_1

LD本体

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,SEL!,Instance,15,0,20,5,,?DG?DIN0?DIN1?C);
B(B_VARIN,,channel_0,13,2,15,4,);
B(B_VARIN,,channel_1,13,3,15,5,);
B(B_VAROUT,,output,20,1,22,3,);
B(B_CONTACT,,channel_select,7,1,9,3,);
L(1,2,7,2);
L(9,2,15,2);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST本体

output := SEL(G := channel_select, IN0 := channel_0, IN1 := channel_1);

IL本体

LD

channel_select

SEL

channel_0,channel_1

ST

output

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