Leggi dalla memoria EEPROM
Utilizzando questa istruzione, i dati verranno copiati dalla EEPROM/Flash ROM nell'area di destinazione (DT). La funzione di copia viene eseguita unicamente con blocchi. Non è possibile copiare singole word. La dimensione dei blocchi e il numero di blocchi sono riportati nella tabella "Informazioni specifiche del PLC". Assicuratevi anche che vi siano almeno 64/ 2048 registri dati liberi (1 blocco = 64 word/ 2048 word (DT)) riservati per l'area di destinazione.
Ingresso
Attivazione della funzione (quando EN è in stato TRUE, il Function Block viene eseguito ad ogni scansione del PLC)
Nr. iniziale blocchi EEPROM
Numero di blocchi da leggere La dimensione del blocco è di 64 o 2048 registri di dati a seconda del tipo di PLC (vedere la seguente tabella "Informazioni specifiche del PLC").
Uscita
Una volta eseguita la funzione, ENO viene impostato su TRUE. Utile per il concatenamento di funzioni con funzionalità EN
Indirizzo iniziale DT per le informazioni da scrivere
Tipo di PLC |
FP0 2,7k C10/C14/C1, FP-e |
FP0 5k C32 |
FP0 10k T32CP |
FP-Sigma, FP-X, FP0R |
FP0H |
---|---|---|---|---|---|
ROM |
EEPROM |
EEPROM |
EEPROM |
Flash ROM |
Flash ROM |
Dimensione blocchi (1 blocco) |
64 word (64x16bit) |
64 word (64x16bit) |
64 word (64x16bit) |
2048 word (2048x16bit) |
2048 word (2048x16bit) |
Nr. iniziale blocchi EEPROM |
Da 0 a 9 |
Da 0 a 95 |
Da 0 a 255 |
Da 0 a 15 |
Da 0 a 31 |
Nr. blocchi da leggere / scrivere ad ogni esecuzione |
Da 1 a 2 |
Da 1 a 8 |
Da 1 a 255 |
1 (scrittura) Da 1 a 16 (lettura) |
1 (scrittura) Da 1 a 32 (lettura) |
Durata scrittura (Tempo di scansione aggiuntivo) |
< 20ms per ogni blocco |
< 5ms per ogni blocco |
< 5ms per ogni blocco |
< 100ms per ogni blocco |
< 100ms per ogni blocco |
Durata lettura (Tempo di scansione aggiuntivo) |
Meno di 1ms per ogni blocco |
Meno di 1ms per ogni blocco |
Meno di 1ms per ogni blocco |
9,94ms + (1562,6*numero di blocchi) ms |
|
Numero max. di eventi di scrittura |
100000 |
10000 |
10000 |
10000 |
10000 |
Tempi max. di lettura |
Nessun limite |
Nessun limite |
Nessun limite |
Nessun limite |
Nessun limite |
Il conteggio include spegnimenti e cambi di modalità RUN -> PROG.
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
start: BOOL:=FALSE;
(*activates the instruction*)
datafield: ARRAY [0..63] OF INT:=[64(0)];
(*data field to be uploaded data from EEPROM*)
END_VAR
Quando la variabile start passa da FALSE a TRUE, la funzione viene eseguita.
La funzione legge il primo blocco (= 64 word) dopo il numero iniziale di blocchi 0 dalla EEPROM e scrive le informazioni negli array di dati da datafield[0] fino a datafield[63].BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 6 ;
NETWORK_BODY
B(B_F,F12_EPRD!,Instance,8,1,16,6,,?DEN?Ds1_Start?Ds2_Number?AENO?Cd_Start);
B(B_VARIN,,0,6,3,8,5,);
B(B_VARIN,,1,6,4,8,6,);
B(B_VAROUT,,datafield[0],16,3,18,5,);
B(B_CONTACT,,start,3,2,5,4,);
L(5,3,8,3);
L(1,3,3,3);
L(1,0,1,6);
END_NETWORK_BODY
END_NET_WORK
END_BODY
LD |
start |
DF |
|
F12_EPRD |
0,1,datafield[0] |