Vai al contenuto
PLC Forum


Istruzione Loop - Istruzione LOOP


cagliostro

Messaggi consigliati

Un ciao a tutti,

cortesemente qualcuno potrebbe fornirmi qualche riga di codice che utilizzi l'istruzione LOOP in S7.

Pur leggendo la guida in linea e anche quella cartacea di S7 con il relativo esempio allegato, non ne ho capito poi tanto.

Gli esempi da me sviluppati che sto testando al simulatore non mi funzionano.

E' ovvio che sto sbagliando qualcosa, quindi se qualcuno anche con un semplice esempio mi delucidasse sul corretto utilizzo della LOOP ne sarei veramente grato.

Ringraziandovi anticipatamente

Saluti e buona seerata

Cagliostro

Link al commento
Condividi su altri siti


Esempio semplificato:

    L    5    //Carica il numero di cicli loop in ACCU 1-L.
NEXT:    T    MW10    //Etichetta = inizio del loop/trasferisce ACCU 1-L al contatore loop.

    ...        // qui metti tutte le operazioni che vuoi ripetere n volte

    L    MW10    //Carica il contenuto del contatore loop in ACCU 1
    LOOP    NEXT    //Decrementa il contenuto di ACCU 1, e salta all'etichetta di salto NEXT, se ACCU1-L > 0.

    ...        // al termine dei loop il programma prosegue normalmente
L'istruzione LOOP ha bisogno di una word che viene usata come contatore, all'inizio la si imposta per il nr. di loop da eseguire (nell'esempio si vogliono fare 5 loops), essa non fa altro che saltare all'etichetta indicata (ma solo finchè ACCCU 1 " è diverso da 0) e nel contempo decrementare il valore in ACCCU 1. In pratica l'operazione LOOP NEXT esegue queste 3 operazioni in una sola riga:
    L   1
    -I
    SPN NEXT

Poi il trucco sta nel posizionare l'etichetta (NEXT) proprio nell'operazione di trasferimento in modo da aggiornare il contatore dei loops con il nuovo valore appena decrementato.

Ciao ;)

Modificato: da JumpMan
Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...