上升沿差分
DF是上升沿差分指令。如果触发器i从OFF变为ON状态,则DF指令执行并打开输出o保持单个扫描持续时间。
输入
输出
使用影响程序执行顺序的命令进行编程时要小心,例如:在顺序流程图或功能块中的跳转或循环指令。指令的顺序可能会根据执行指令的时间或输入值而改变。特定的基本JUMP和LOOP指令如下: F19_SJP 间接跳转至标签
所有用于编程此函数的输入和输出变量已在POU头中声明。 所有编程语言使用相同的POU头。
VAR
Increment: BOOL:=FALSE;
Counter: INT:=0;
END_VAR
输入Increment处的每个上升沿可递增计数器。
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,DF!,Instance,7,0,12,3,,?Di?Co);
B(B_VARIN,,Increment,5,1,7,3,);
B(B_F,E_ADD-2!,Instance,16,0,22,5,,?DEN?D?D?AENO?C);
B(B_VARIN,,Counter,14,2,16,4,);
B(B_VARIN,,1,14,3,16,5,);
B(B_VAROUT,,Counter,22,2,24,4,);
L(12,2,16,2);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF DF(Increment) then
Counter:=Counter+1;
END_IF;