Vai al contenuto
PLC Forum


Funzione Particolare...


Messaggi consigliati

Inserito:

Un cliente ha una segatubi con la funzione di misura del tubo caricato.Ora lo stesso mi chiede se sia possibile in serire nel PLC S7300 una funzione

per gestire l'ottimizzazione del taglio delle barre. PE...si impostano le lunghezze desiderate....e il PLC automaticamente genera la sequenza dei tagli

in modo da generare minor scarto possibile...

Qualcuno ha mai visto qualcosa del genere su un PLC?

Federico


Inserita:

In Base a quale regola si ottimizza ?

Magari data una certa Lunghezza in metri di tubo disponibile, ricavare

l' ordine di esecuzione o di taglio delle varie lunghezze.

Oppure in base agli ordini di evasione coordinare gli ordini di lunghezza più convenienti nella produzione?

Oppure al rilevamento di difetti lungo il tubo riuscire a generare delle sequenze, di lunghezza

ottimizzata, generando solo lunghezze utili e commerciabili ?

Inserita:

in base alla lunghezza di una barra(pe lunga 14578 mm)...il sistema dovrebbe calcolare la sequenza dei tagli le quali lunghezze dovrebbero essere scelte tra quelle impostate, in modo da generare meno scarto possibile...

ciao

Inserita: (modificato)

Se ho capito bene, per esempio nel tuo caso

avendo a disposizione 14578mm

con una tabella di produzione ad esempio :

6000mm

5000mm

8000mm

3000mm

scelgo per esempio :

1°) 6000+5000+3000 = 14000mm

2°) 8000+6000 = 14000mm

quindi scelgo la 2° soluzione perchè realizzo solo 2 pezzi ?

Dovresti allora ricavare un ricorsione in cui previlegi la maggior lunghezza, e poi

la ricorsione abbina da prima le lunghezze più lunghe e poi quelle più corte.

Ma forse non sarebbe ancora corretto.

Però penso che ci sia già un algoritmo, che realizzi questa tua necessità.

hai cercato in qualche sito che tratta di matematica ?

Modificato: da Beatrice_Ru
Inserita:

Un problema simile esiste anche in informatica, quando si Deframmenta

dei File, ed a disposizione si ha ben poca memoria.

Come ad esempio nella Torre di Hanoi.

Nelle reti nel trovare la Strada più corta verso la destinazione, avendo più vie e nodi a disposizione.

Inserita:

penso che ti sia utile usare

la soluzione chiamata "Knapsack problem"

in italiano penso che sia "il problema dello Zaino",

puoi cercare con un motore di ricerca questa problematica

Inserita: (modificato)

Ciao,

Questo sarebbe un programma per la gestione del "carico macchina" .. ma secondo me meglio fare una applicazione su PC che accede anche ai data base delle ordine , prelevando le lunghezze da tagliare, con le respettive data d'ordine e di consegna cosi anche come il movimento del magazzino per le materie prime disponibile ed in arrivo.... poi il programma ricevendo l'input da tutte queste variabili, renderebbe la "coda per il carico macchina" ...giornaliero e con previsioni settimanale (esempio).. una volta elaborata, la lista viene scaricata al PLC attraverso un blocco di dati . Il PLC solo controllarebbe i tagli emettendo dei successivi reports dei lavori compiuti.

Spero di non avere esagerato ... :rolleyes:

Modificato: da Savino
Inserita:

Sto giusto affrontando in questi giorni le valutazioni per la revisione di un impianto simile.

La soluzione usata è un applicativo su PC che riceve i dati delle commesse e calcola le lunghezze di taglio in base al N° di pezzi da produrre e alla quantità e lunghezza di barre disponibili.

La penso come Savino, secondo me la cosa fatta sul PLC è un po' limitata, non nel senso che non si possa fare, ma tenere conto delle quantità di barre, della loro lunghezza, di quanti pezzi si possono mettere su una singola barra di una certa lunghezza, etc....., beh, mi sembra proprio il tipico lavoro legato ad un database.

Inserita:

Walter...hai ragione anche tu...ma al cliente in questione basta ed avanza la singola ottimizzazione del taglio, infatti non conosce nemmeno la

lunghezza delle barre che va a caricare.Non a caso la misurazione la deve fare la macchina (e gia' lo fa).

Livio Orsini
Inserita:

Questo tipo di ottimizzazione è un classico. Generalmente si risolve con algoritmi di tipo euristico e con una sorta di auto apprendimento. Ritengo anch'io che non sia una soluzione ideale con PLC; però dipende da come si pone il problema.

Se ad esempio si caricasse tutta una commessa su un PC che esegue l'algoritmo di ottimizzazzione, si potrebbe poi passare al PLC la sequenza dei tagli barra per barra.

Se, invece, ci si accontenta di ottmizzare lo sfrido di una singola barra il lavoro può essere fatto da PLC ma i risultati sono veramente modesti.

Ipotizzare che un PLC esegua l'ottimizzazione di un'intera commessa, per ottenere il massimo dell'ottimizzazione, non credo sia praticabile. Anche ammesso che i calcoli siano eseguiti prima dell'inizio dei lavori ci vuole comunque troppo tempo e troppa memoria, oltre ad un'interfaccia uomo complessa.

Meglio affiancare al PLC un PC che, oltre ad effettuare la funzione HMI, esegua l'algoritmo di ottimizzazione.

Inserita:

Problema ti taglio...se ti accontenti di algoritmi caserecci e relativi scarti lo puoi anche fare, generi una decina di sequenze di calcolo e tieni quella con il minor scarto (che non è quella con meno scarto in assoluto).

Una cosa fatta bene però richiede grande capacità di calcolo ti consiglio un bel PC.

Inserita:

Guarda quì che bel trattato da leggersi a letto alla sera! :)

O, se preferisci, questo al paragrafo 1.4.6

Ciao

Inserita:
...infatti non conosce nemmeno la lunghezza delle barre che va a caricare.

Con una premessa di questo tipo è difficile ottimizzare qualcosa...!!!

Al massimo puoi misurare la barra in macchina e poi tagliare i pezzi che ci stanno, però da qui ad ottimizzare lo sfrido ce ne passa.

Se al tuo cliente va bene così, misuri poi cominci a tagliare i pezzi più lunghi, e via a decrescere, e quando è finita la barra....stop!

Ma sono quasi sicuro che poi il cliente ti viene a dire che a lui servivano quelli corti...!!! :blink: :blink:

Inserita:

Con una 315 delle più recenti, potresti tentare di eseguire questo algoritmo,

magari schedulando un evento ogni 50ms (esempio in un OB35).

Penso che in una FB possa starci (Relativamente parlando non è cosi complesso come si creda)

ti consiglio di usare il linguaggio SCL, altrimenti penso che ti scoppiera la testa, se usi ad esempio AWL.

Potresti ad ogni aggiornamento della tabella di produzione e del nuovo tratto da ottimizzare riavviare l' algoritmo,

Ottimizzando anche in questo caso le risorse del tuo PLC.

Ovviamente il tempo di End-Process dipende dal numero di elementi presenti nella tabella.

Normalmente penso che con 20-30 elementi di lunghezza copri la maggior parte della Produzione

del tuo cliente.

Inoltre devi specificare la frequenza di utilizzo massimo per ogni singolo elemento della tabella.

Perciò dovrebbe mangiarsela in 40-50 secondi senza problemi (Ovviamente senza

appesantire le risorse della tua CPU) (1000 interazioni circa).

Inoltre è l' occasione giusta, per tentare di ampiare le proprie doti di programmazione

e di conoscenza personale.

Normalmente è in queste occasioni che si creano nuovi spunti per le future applicazioni.

Magari non ci si riesce, ma è uno stimolo evolutivo.

Inserita:

Non ho capito se imposti misure diverse da tagliare per la stessa barra o se imposti una misura e devi ottimizzare il taglio o generare uno scarto più il numero di pezzi..

Per la second ipotesi io ho fatto una cosa simile per una macchina taglia tronchi, dove il tronco viene misurato al "volo" mentre va verso la sega.

Inserita:

Ho affrontato problemi simili , e sono d'accordo con chi dichiara che non e' un compito da PLC ( ovviamente bisognerebbe chiarire di quanti dati parliamo)

tantomeno da 315 ( che e' uguale a 313 e 314 in fatto di velocita' ) ma almeno la serie 400 ( con coprocessore matematico )

Io ho risolto con il pc , dopo alcune prove con il PLC

Da quello che so' , l'unico modo per risolvere il problema e' tentare le possibili combinazioni , salvandosi il risultato e scegliere il migliore ( o dare un valore di scarto acettato e prendere per buona la combinazione che rientra )

ciao

Luca

Inserita:
e sono d'accordo con chi dichiara che non e' un compito da PLC

Sicuramente vero

l'unico modo per risolvere il problema e' tentare le possibili combinazioni

Secondo me è meglio tentare con un algoritmo tipo "bin packing".

Ciao

Inserita:
"bin packing"

mi ricorda qualcosa , spiegati meglio

algoritmo

abbastanza inflazionato come termine

ciao

Luca

emanuele.croci
Inserita:

Bin packing ...è sempre il solito PROBLEMA DELLO ZAINO di cui sopra!

Metti più roba possibile in un solo zaino, oppure metti una TOT quantità di roba nel minimo numero di zaini possibile, variante più, variante meno....

Ciao, Emanuele

Inserita:
mi ricorda qualcosa , spiegati meglio

Dai un'occhio ai rimandi citati nel mio primo post in questa discussione.

C'è un pò di teoria legata all'argomento :)

abbastanza inflazionato come termine

Cos'è... non ti piace l'etimologia della parola?

Da Wikipedia:

In informatica, con il termine algoritmo si intende un metodo per la soluzione di un problema adatto a essere implementato sotto forma di programma.

Ciao

Inserita:
Bin packing

non conoscendo l'esatto termine tecnico , il bin packing e' proprio l'applicazione

su cui ho avuto esperienze , era un'impianto che riempiva dei bin ( contenitori plastici ) con delle stecche di sigarette

e l'impianto veniva chiamato bin packing .

Venivano ricevuti ordini con quantita' di brand diversi e bisognava ottimizzare lo spazio di queste stecche su 3 linee per occupare la minor lunghezza.

anche una lista di tentativi si puo' chiamare algoritmo ?? o e' algoritmo solo quando si parla di formula ??( curiosità personale )

ciao

Luca

Inserita:
anche una lista di tentativi si puo' chiamare algoritmo

Beh, senza scendere nel filosofico, con algoritmo si intende un metodo qualsiasi per risolvere un problema. Questo metodo (o, se preferisci, "funzione") deve accettare dei dati di input e produrre dei dati in output. Quindi, in pratica, un "pezzo di software" che ti risolve il problema.

Anche l'approccio per tentativi quindi si può considerare un "algoritmo".

Ciao

Inserita:
Anche l'approccio per tentativi quindi si può considerare un "algoritmo".

Si dice algoritmo di tipo euristico, cioè "apprendimento per scoperta"

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...