kiko03 Inserito: 22 maggio 2007 Segnala Inserito: 22 maggio 2007 Salve a tutti...Devo realizzare l'avvio sequenziale di 14 motori con un plc S7-315. Il problema è che la sequenza di avvio viene impostata da un pc con protoolin modo del tutto casuale e che tra una partenza e l'altra dei motori bisogna attendere unbit di avvenuto avvio utenza. Mi spiego meglio:Posso far partire A poi B poi C poi D ecc...oppure C..A..D..B oppure B..C..A..D e cosi viaQualche consiglio????.....Grazie a tutti
Supertony Inserita: 23 maggio 2007 Segnala Inserita: 23 maggio 2007 Ciao, io per fare una cosa semplice e rapida, per esempio, attiverei un timer "SV" (ad esempio per un secondo) per ogni motore (attivato dall'uscita stessa che attiva il motore!), quindi interrogherei negati tutti gli SV per l'attivazione tutti i motori; in questo modo, quando per esempio il motore 1 viene attivato, parte pure il timer "T1"; anche se verrà richiesto l'avviamento del motore 3, ad esempio, per un secondo questo non verrà attivato.Ad esempio, per 3 motori:U "comando start mot. 1 da PC"UN T1UN T2UN T3= "comando motore 1"L S5T#1SSV T1U "comando start mot. 2 da PC"UN T1UN T2UN T3= "comando motore 2"L S5T#1SSV T2U "comando start mot. 3 da PC"UN T1UN T2UN T3= "comando motore 3"L S5T#1SSV T1E' la prima cosa che mi viene in mente.... ma sono le sette e mezza di mattina, e ho ancora un po' di sonno! ;-)... magari fai una provaCiao
kamikaze Inserita: 23 maggio 2007 Segnala Inserita: 23 maggio 2007 La definizione della sequenza e' casuale, ma l'avvio della sequenza e' univoco?Vale a dire una volta impostata viene fatta partire con un comando?In questo caso una cosa meno semplice ma molto sicura e' l'usi fi un FIFO.Dal PC o pannello attraverso una pagina viene inserita la sequenza , automaticamente ad uno ad uno i dati inseriti in tabella vanno ad aggiornare un FIFO, al comando start , il fifo viene svuotato a mano a mano che un motore ha terminato il suo avviamento.Ivan
Luca Bab Inserita: 23 maggio 2007 Segnala Inserita: 23 maggio 2007 Altra possibile soluzione semplice :Motori numerati da 1 a 14DB con 14 DBW ove tramite PC con protool scrivi in sequenza il numero del motoreCon un puntatore vado a leggere la prima DBW e so' quale motore devo far partire , dopo un timervado a leggere la seconda DBWvado avanti fino alla 14esimaciaoLuca
Luca Bab Inserita: 23 maggio 2007 Segnala Inserita: 23 maggio 2007 Appunto Luca, e' un FIFOLa funzione FIFO di S7 e' un'altra cosa ( metti dentro dei valori uno alla volta e quando chiedi qualcosa in uscita ti da' il primo messo dentro )quello che ho suggerito e' una DB ove impostare una sequenza e andare a leggere dall'inizio con un puntatore che si incrementa ( e i dati li puoi inserire tutti in una volta non first input )comunque non stiamo a punteggiare , si puo' interpretare a piacereCiaoLuca
Gianmario Pedrani Inserita: 23 maggio 2007 Segnala Inserita: 23 maggio 2007 La soluzione di luca mi sembra la piu pulita, e funzionale... anche io farei come ti ha spiegato luca ciao
kiko03 Inserita: 24 maggio 2007 Autore Segnala Inserita: 24 maggio 2007 Grazie a tutii x i consigli..provero con la Db a 14 wordCiaoooooo
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora