CinziaShannon Inserito: 16 marzo 2011 Segnala Inserito: 16 marzo 2011 Ciao a tutti, qualcuno può risolvermi questo problema?Sto "scrivendo" un programma per la gestione di un sistema con silos, ho diversi blocchi funzionali scritti in SFC.Devo fare in modo che il mio sistema cambi modalità di funzionamento ogni N cicli, passando dalla mod 1 alla mod 2 e viceversa.So che esistono dei blocchi funzionali predefiniti: contatori, temporizzatori, ecc...Volevo utilizzare per il mio scopo un contatore. Il mio problema è: come inserire un contatore in un diagramma in SFC?Logicamente ho più o meno tutto in mente...ma sintatticamente non so proprio come utilizzarli...Sarò infinitamente grata a chiunque possa aiutarmi!
batta Inserita: 16 marzo 2011 Segnala Inserita: 16 marzo 2011 Per prima cosa, sarebbe utile conoscere il PLC che stai utilizzando.Parli di SFC quindi si presume sia un Siemens della famiglia S7-300/400, ma è solo una supposizione.Se è così, c'è da dire che i contatori, per usare un eufemismo, lasciano un po' a desiderare.Io non li uso mai, nemmeno nella programmazione in AWL. Figuriamoci in SFC.Meglio usare una variabile da incrementare/decrementare/azzerare a piacere.
CinziaShannon Inserita: 16 marzo 2011 Autore Segnala Inserita: 16 marzo 2011 Non ho un tipo particolare di plc, perché è una traccia universitaria...In genere viene richiesto di scrivere un programma per la gestione di sistema automatizzato: prima si dividono i vari compiti in base ai blocchi e infine si uniscono i vari blocchi (funzionali) istanziati, con i loro ingressi e uscite per la def. del programma.In questo caso è richiesto di scrivere un programma per gestire 5 silos più un canale comune per l'immissione dei liquidi e quindi occuparmi di riempimento, svuotamento, gestione accessi al canale comune.Ho individuato 1 blocco funzionale per la gestione dei silos, un altro per il canale comune. Il corpo di ogni blocco deve essere realizzato in SFC.Ora dovrei occuparmi dell'ultima specifica ovvero : "cambiare modalità di funzionamento del sistema ogni 20 cicli". Purtroppo non so come soddisfare questa specifica, se ci sono altri modi oltre ai contatori conformi agli standard, sarò lieta di venirne a conoscenza.Se è necessario posso fornire altre informazioni oppure lo schema attualmente realizzato.Grazie ancora!
Roberto Gioachin Inserita: 16 marzo 2011 Segnala Inserita: 16 marzo 2011 Crea un passo specifico, all'interno del quale fai incrementare una variabile (INT), che avrai preventivamente impostata a zero.L'incremento dovrà essere eseguito su un fronte di salita del passo stesso, il passo andrà posizionato dopo aver eseguito le operazioni del ciclo.Alla fine, la sequenza riporterà il controllo all'inizzio del blocco SFC.A questo punto crei un'altro passo dove verifichi (istruzione GT o GE) di aver raggiunto o superato il numero di cicli, con questa informazione cambi la tua modalità.Immediatamente dopo imposta a zero la variabile che hai usato per il conteggio dei cicli.CiaoRoberto
batta Inserita: 16 marzo 2011 Segnala Inserita: 16 marzo 2011 Ho confuso l'SFC (graphcet) con l'SCL (linguaggio strutturato).Purtroppo è un linguaggio che conosco solo come struttura generale, ma non ne conosco la sintassi.In ogni caso c'è da dire che la sintassi cambia in base alla marca del PLC.Cosa utilizzi per scrivere il programma?Non c'è una documentazione che spieghi come usare un contatore?
Roberto Gioachin Inserita: 16 marzo 2011 Segnala Inserita: 16 marzo 2011 Scusa Bata, quello che dici tu è vero se si parla di grafcet.Cinzia però parla di SFC (evoluzione del grafcet), quindi significa anche IEC61131, in questo caso il linguaggio diventa standard, lo stesso per tutti i costruttori.Ci pensa il compilatore a realizzare un programma compatibile con il plc usato.Molti plc infatti non dispongono di istruzioni specifiche per questo linguaggio, ma SFC viene supportato lo stesso.CiaoRoberto
CinziaShannon Inserita: 18 marzo 2011 Autore Segnala Inserita: 18 marzo 2011 (modificato) Grazie per il vostro aiuto...credo di aver trovato una soluzione.Ho realizzato un blocco funzionale con corpo in SFC con i suggerimenti che mi ha dato Roberto. Tuttavia ho messo il conteggio del ciclo all'inizio e non alla fine in modo tale da non creare uno stallo all'attivazione del sistema. Il motivo è questo:-nel sistema in esame devo riempire dei silos di liquido A oppure B a seconda se si è in modalità 1 o 2;-ho fatto in modo che i silos inizino a riempire solo dopo che il blocco del conteggio abbia valutato se bisogna cambiare o meno la modalità.Infatti, mentre lo stavo scrivendo (devo fare l'esame su carta-->in risposta a batta che mi chiedeva maggiori dettagli riguardo al programma utilizzato) ho pensato che avrei potuto creare uno stallo all'attivazione del sistema, poiché i silos non sanno in che modalità funzionare.Per saperlo dovrebbero aspettare il conteggio, che si attiva dopo che i 3 silos hanno eseguito un ciclo.Che ne pensate?Magari avrei potuto fare diversamente impostando come condizione iniziale "se il ciclo viene avviato per la prima volta, allora parti da mod1", ma purtroppo non saprei come farlo (un' altra variabile contatore?).E pensare che se fosse un linguaggio di programmazione ad alto livello tipo c o java sarebbe una cosa così semplice Modificato: 18 marzo 2011 da CinziaShannon
Roberto Gioachin Inserita: 19 marzo 2011 Segnala Inserita: 19 marzo 2011 Magari avrei potuto fare diversamenteSempre si può fare diversamente, non esiste un modo unico per risolvere lo stesso problema.Io in genere faccio come ti ho spiegato, ma questo fà parte del mio modo di lavorare, non dell'unico modo di lavorare.E pensare che se fosse un linguaggio di programmazione ad alto livello tipo c o java sarebbe una cosa così sempliceAnche questo è soggettivo, se fosse così come dici, perchè esisterebbero ancora i PLC ?CiaoRoberto
batta Inserita: 19 marzo 2011 Segnala Inserita: 19 marzo 2011 E pensare che se fosse un linguaggio di programmazione ad alto livello tipo c o java sarebbe una cosa così sempliceMi associo a quanto già affermato da Roberto.I linguaggi attualmente utilizzati nel settore dell'automazione industriale hanno sicuramente dei difetti, ma anche dei pregi.Casomai, io aggiungerei che l'SFC non mi pare essere il linguaggio più adatto per il tuo attuale problema.
CinziaShannon Inserita: 19 marzo 2011 Autore Segnala Inserita: 19 marzo 2011 ok...è solo che con gli altri linguaggi citati sono più abituata Come al solito, tutto è relativo!
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