Richiesta avvio comunicazione ciclica
Questa istruzione FP avvia il nodo su cui viene fatta la richiesta di avvio e scrive il risultato nella variabile di uscita d_Result. La tabella del numero di nodo è specificata da FP_ETHERNETIP_STATE_TABLE_DUT.
Ingresso
Tabella numero di nodo per richieste di avvio
Indirizzo dell'area di memoria che memorizza il numero massimo di nodi (1-256) o una costante.
Uscita
Destinazione in cui viene scritto il dato
0: Avvio di nodo specificato completato
1: Elaborazione avvio di nodo specificato in corso.
2: Avvio di nodo specificato fallito
3: Avvii multipli di FP_ETHERNETIP_START
se l'area di lettura supera l'intervallo utilizzabile
se l'istruzione viene eseguita in un programma di interrupt
se l'area di lettura supera l'intervallo utilizzabile
se l'istruzione viene eseguita in un programma di interrupt
Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.
VAR
bEnable: BOOL:=FALSE;
wResult: WORD:=0;
dutNodes_NodeTableStart: FP_ETHERNETIP_STATE_TABLE_DUT;
END_VAR
Quando le variabili sys_bIsEtherNetIPStartStopControllable e bEnable sono impostate su TRUE, la funzione viene eseguito.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 8 ;
NETWORK_BODY
B(B_VARIN,,dutNodes_NodeTableStart,13,5,15,7,);
B(B_VAROUT,,wResult,27,5,29,7,);
B(B_CONTACT,,bEnable,12,3,14,5,);
B(B_CONTACT,,sys_bIsEtherNetIPStartStopControllable,8,1,10,3,);
B(B_F,FP_ETHERNETIP_START!,,15,3,27,7,,?DEN?Dd_dutStateTable?AENO?Cd_Result);
L(1,2,8,2);
L(14,4,14,5);
L(14,5,15,5);
L(10,2,10,4);
L(10,4,12,4);
L(1,0,1,8);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF (sys_bIsEtherNetIPStartStopControllable) AND (bEnable) then
FP_ETHERNETIP_START(d_dutStateTable := dutNodes_NodeTableStart,
d_Result => wResult);
End_if;
END_IF;