Leggere flag di ingresso diretto
Questa istruzione legge il valore di un flag di ingresso (X) utilizzando un comando di esecuzione diretta. L'Input_X verrà letto in modo asincrono all'interno del ciclo PLC attuale.
Ingresso
La variabile globale con l'indirizzo FP o indirizzo utente esplicito deve essere letta direttamente.
Solo FP0H, FP-XH: L'intervallo valido per l'indirizzo FP è X0–X109F al quale viene assegnato un pin di ingresso reale. In caso contrario il PLC va in errore di funzionamento.
Uscita
Valore letto direttamente da Input_X
FP_DIRECT_INPUT (utilizzando FP7)
Nella lista variabili globali si definiscono variabili alle quali possono accedere tutti i POU del progetto.
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
bValue: BOOL:=FALSE;
END_VAR
VAR_EXTERNAL
g_bDirectIn_X1: BOOL:=FALSE;
END_VAR
VAR
bReadInput: BOOL:=FALSE;
END_VAR
Quando la variabile bReadInput è impostata su TRUE, la funzione viene eseguita.
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;