读取直接输入继电器
此指令使用直接执行命令读取输入继电器(X)的值。Input_X将在当前PLC循环内异步读取。
输入
包含要直接读取的FP地址或显式用户地址的全局变量。
仅 FP0H, FP-XH:FP地址的有效范围为向其分配真正输入引脚的X0–X109F。否则PLC会出现运算错误。
输出
直接从Input_X读取的值
FP_DIRECT_INPUT(在使用FP7时)
在全局变量列表中,定义项目中所有POU都可以访问的变量。
所有用于编程此函数的输入和输出变量已在POU头中声明。所有编程语言使用相同的POU头。
VAR
bValue: BOOL:=FALSE;
END_VAR
当变量bReadInput设置为TRUE时,执行此函数。
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_CONTACT,,bReadInput,4,1,6,3,);
B(B_F,E_FP_DIRECT_IN!,,15,0,23,4,,?DEN?DInput_X?AENO?CValue);
B(B_VARIN,,g_bDirectIn_X1,13,2,15,4,);
B(B_VAROUT,,bValue,23,2,25,4,);
L(1,0,1,5);
L(1,2,4,2);
L(6,2,15,2);
END_NETWORK_BODY
END_NET_WORK
END_BODY
if (bReadInput) then
bValue:=FP_DIRECT_IN(g_bDirectIn_X1);
end_if;