Fabio96 Inserito: 10 agosto Segnala Share Inserito: 10 agosto Buongiorno. Siamo abituati, penso tutti noi, a programmare le automazioni secondo delle sequenze di fasi prestabilite, la macchina a stati finiti insomma. Ma se dovessimo lasciare la possibilità all’utilizzatore, tramite HMI, di creare la giusta sequenza fasi, come potremmo implementare questa soluzione nel nostro software PLC? Attenzione, le procedure a cui mi riferisco non sono i singoli passi del programma ma delle macro fasi che possono essere inglobate in FB. Se quindi ad esempio ho 4 blocchi funzione A, B, C, D e devo permettere di comporre qualsiasi tipo di sequenza per questi, con la sola condizione di passaggio che la fase precedente sia terminata, come posso fare? Ulteriore problematica sarà dare la possibilità a pannello operatore di cambiare questa sequenza. Spero di essere stato chiaro nell’esporre il concetto. Grazie in anticipo per le possibili idee e pareri che potete dare. Link al commento Condividi su altri siti More sharing options...
drn5 Inserita: 10 agosto Segnala Share Inserita: 10 agosto (modificato) Costruisci dei blocchi in cui a parte i valori di interfaccia che servono per l'operazione a cui il blocco deve fare riferimento in input o output, hai dei campi che definiscono quando iniziare il processo del blocco e quando il blocco ha terminato il suo compito. Nell'hmi l'operatore assembla graficamente la sequenza dei blocchi e viene di conseguenza generato un vettore che contiene la sequenza numerica dei campi che passerai ai blocchi suddetti. Questo vettore viene dato in pasto ad un sequenziatore che sovraintende al main del ciclo. Tieni anche presenti magari la necessità di fare sequenze del tipo B,C,A,B,D,C,B cioè duplicate e non sequenziali, con magari possibilità di pause o interventi operatore, ecc... E' un processo che richiede una stesura logica delle varie parti e che va affrontata prima ancora di mettersi a scrivere il codice per non rischiare poi di impantanarsi... Cosa che comunque va sempre fatta per questo tipo di professione. Modificato: 10 agosto da drn5 Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 11 agosto Segnala Share Inserita: 11 agosto 11 ore fa, drn5 ha scritto: E' un processo che richiede una stesura logica delle varie parti e che va affrontata prima ancora di mettersi a scrivere il codice Questo è il modo corretto di affrontare non solo la programmazione, ma anche qualsiasi attività progettuale. Buttarsi a scrivere cosice, in caso di programmazione onformatica, senza un'analisi precedente, è come voler costruire un'edificio partendo dal tetto. Purtroppomolto spesso si inizia da subito a codificare, così si creano programmi sconclusionati, inutilmente intricati che rendono impossibile una corretta manutenzione, oltre ad assere quasi inmpossibili da collaudare efficacemente. Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 11 agosto Segnala Share Inserita: 11 agosto Qualcosa di simile lo feci per un miscelatore, dove la sequenza delle operazioni non era predeterminabile. Feci così: assegnai ad ogni "passo" (il tuo A, B...) un numero. Le operazioni nel passo erano definite (per esempio, carico materiale per tot kg, miscelazione a velocità x per y tempo, ecc) La sequenza generale era ovviamente una sequenza di passi, con un numero speciale che definiva la fine. L'operatore a display selezionava il passo (numero) da inserire nella sequenza, e gli apparivano a display i parametri del passo. Il trucco stava nel passaggio dati, che era un array (un elemento per sequenza passi) di strutture, ciascuna contenente il numero descrittivo e i dati necessari. Non veramente ottimizzato agli ingombri (magari ogni struttura aveva 5 parametri, ma in alcuni casi ne sarebbero serviti meno), ma posso dirti che ha funzionato bene. Un po' di lavoro anche sul HMI per la visualizzazione corretta, ma con il Weintek era facile. PS: ovviamente col cavolo che ho usato PLC Siemens... Link al commento Condividi su altri siti More sharing options...
acquaman Inserita: 11 agosto Segnala Share Inserita: 11 agosto 7 ore fa, Ctec ha scritto: PS: ovviamente col cavolo che ho usato PLC Siemens... Sarebbe stato altrettanto facile, se non di più. Link al commento Condividi su altri siti More sharing options...
drn5 Inserita: 11 agosto Segnala Share Inserita: 11 agosto 8 ore fa, Ctec ha scritto: PS: ovviamente col cavolo che ho usato PLC Siemens... per curiosita... con cosa lo hai fatto? Link al commento Condividi su altri siti More sharing options...
Sophiealexandra Inserita: 12 agosto Segnala Share Inserita: 12 agosto Ciao! Puoi implementare una lista dinamica che permette all'operatore di selezionare e ordinare i blocchi funzione tramite l'HMI. La sequenza verrà poi eseguita nel PLC seguendo l'ordine scelto, con il controllo che avanza solo quando la fase precedente è completata. Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 12 agosto Segnala Share Inserita: 12 agosto (modificato) 13 ore fa, drn5 ha scritto: per curiosita... con cosa lo hai fatto? PLC LS Electric, ma anche un'altra volta con un Mitsubishi FX5U (con quelli più vecchi è un casino) Ovviamente è solo un esempio di realizzazione. Però devo dire che ha funzionato bene e l'operatore ha capito subito il sistema. Modificato: 12 agosto da Ctec Link al commento Condividi su altri siti More sharing options...
ETR Inserita: 12 agosto Segnala Share Inserita: 12 agosto 15 ore fa, acquaman ha scritto: Sarebbe stato altrettanto facile, se non di più. Siamo in ferie (si fa per dire) e poi cominciano le schermaglie ! Il concetto è il medesimo (strutture dati predeterminate con dati di interscambio uniformati, coordinate con una visualizzazione non troppo complicata). Poi dal dire al fare c'è di mezzo come tradurre questo concetto nei vari ambienti e a questo punto potremmo non finire nel discutere. L'unico appunto che mi viene è che più si imparano queste cose in forma astratta e generica (qualsiasi sia il livello della formazione che si affronta) e più si è liberi e flessibili nel mondo "reale". Se può essere utile a @Fabio96 che B&R ha una funzione che permette di gestire direttamente all'operatore a pannello tutto questo discorso, creando una sorta di programmazione ladder dedicata (ovviamente cosa può fare questa programmazione lo decide poi chi realizza il software) con un ambiente grafico già pronto. Poi però torniamo alla mia battuta, sulla programmazione brandizzata. Buona giornata Ennio Link al commento Condividi su altri siti More sharing options...
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