Ciao Dep,
"loop"

non capisco che cosa si voglia intendere e per di più il manuale non diece niente a riguardo..ne parla ma io
Appunto come dici, il manuale lo spiega, solo che forse il tuo livello di apprendimento non e' ancora arrivato a quel punto.
Vi sono set di istruzioni che impari ad usare nel tempo e molte che magari non userai mai.
Dal punto di vista della didattica, il PLC non lo si impara in uno o due corsi, ma servono anni di esperienza diretta, per una formazione discreta.
Tornando al nocciolo della domanda, dall'Inglese, Loop significa "nodo scorsoio" , chiaramente non ti aiuta a capire la funzione.In pratica, creando un LOOP , si fa' in modo che l'elaborazione del programma , si blocchi in un determinato punto chiamato NEXT , salta indietro a ritroso e ricomincia dall'istruzione FOR , per poi fermarsi ancora al NEXT e via cosi' , per un numero di volte determinato.
Ecco un esempio di applicazione del loop attraverso FOR & NEXT.
Prima parte , dichiaro che l'istruzione FOR , esegue 10 loop "VW10, 0,
10" , partendo da zero , "VW10,
0, 10",
ed il valore di conteggio reale del numero volte e' contenuto nella word VW10 "
VW10, 0, 10"
Codice: Seleziona tutto
Network 1 // Titolo del segmento
// Presparazione del loop
LD SM0.0 //special flag always ON
FOR VW10, 0, 10 //Impostazione istruzione FOR
Seconda parte, e' il codice da eseguire N.volte, ci puoi mettere quello che ti pare, ma nel mio esempio deve per forza contenere , l'aggiornamento della variabile VW10 , a cui sommo 1 (incermento a passi di 1)ogni scansione del loop.
Terza ed ultima parte, l'etichetta NEXT , a questo punto il programma si arresta e torna indietro alla prima parte del codice, nel punto "FOR VW10, 0, 10" ed esegue tanti salti sino a quando la condizione non e' soddisfatta , cioe' 10.
Alla fine , cioe' alla undicesima lettura (10+1)di LOOP, la condizione e' soddisfatta, ed il programma salta direttamente a NEXT e prosegue oltre.
Queste operazioni, vanno usate con cautela, perche' nel caso non raro , che la condizione per uscire dal loop, sia troppo lunga in termini di tempo di esecuzione del programma o non sia mai soddisfatta (loop infinito), rischi di fare intervenire il "watch dog" della CPU che andra' irrimediabilmente in stop.
Per gli array , apriro' un nuovo topic, e' una cosa ancora piu' complessa.
Ciao
Ivan