Orientamento pezzi

Sera e Buona Domenica a Tutti

non saprei se questa domanda la dovevo forse postare in "Bar"
è giusto un’informazione che vorrei acquisire per conoscenza
a volte capita in tv o sul web di vedere sia in metarlugia o nelle
industrie tessili macchinari che tagliano pezzi in automatico

e mi sono sempre chiesto con quali comandi e algoritmi
posso andare a dire ad un programma di cad: il primo pezzo lo metti li
con questo orientamento, il secondo in questo modo ed orientamento
e cosi via per tutta l’area di lavoro della superficie da tagliare ? ? ? ?
ripeto non mi serve realizzare il comando (credo non sia facile facile)

Ciao Salvio !

Per le lavorazioni automatiche serve il CAM ( Computer-Aided Manufacturing ), cioe’ il programma che
importa la geometria dal CAD e genera i percordi utensile richiesti dalla … macchina utensile, appunto. :wink:

Altri con esperienze piu’ vaste e recenti della mia sapranno darti ulteriori particolari.
Ad esempio, se non sbaglio, Lucio lavora sia con frese che con laser.

Ciao !

servono programmi di nesting ed anche Rhino ha plugin appositi.
ciao

Stefano

Come già detto da Emilio e Stefano,

  • Il profilo viene creato con il CAD
  • Si generano dei percorsi macchina con il CAM seguendo il profilo
  • I percorsi vengono ottimizzati sul grezzo da lavorare con un programma di Nesting (oppure a mano) da cui viene generato un programma principale che richiama i sottoprogrammi.

La cosa è abbastanza complessa da affrontare perchè ogni controllo numerico ragiona a modo suo con quote in assoluto / relativo e varie funzioni per attivare le lavorazioni specifiche della macchina.
Il fattore Nesting, poi, è la parte più complessa in assoluto in quanto il “ragionamento” che deve fare il programma per trovare la soluzione migliore (ruotando, spostando, aggiungendo pezzi, togliendo pezzi) è molto pesante e richiede algoritmi studiati molto bene per non inchiodare il computer per ore.
Io, al momento, mi posizioni i pezzi manualmente perchè ho visto che il più delle volte trovo soluzioni migliori rispetto ai programmi automatici… poi dipende da che tipo di lavoro devi fare (se devi tagliare 1000 pz uno diverso dall’altro devi avere un software automatico che ti gestisca tutto altrimenti impazzisci letteralmente).

1 Mi Piace

un saluto e un grazie a tutti per le risposte

ciao Emilio :slight_smile:

grazie Stefano andrò sicuramente a fare qualche ricerca

ciao Lucio è vero ahahahah, infatti ho visto alcune immagini cercando “Nesting” diciamo che non è proprio il massimo nel far combaciare per bene i pezzi. mi sà che a tetris non durerebbe tanto una partita :slight_smile:
beh batture a parte sarà stata una foto datata, sicuramente gli ultimi software saranno più efficienti credo

a questo punto la domanda e per entrambi i software, quello che mi interessava sapere sia per la parte Cam che Nesting come vengono programmati? viene usato il linguaggio C o ci sono altri programmi specifici?

Scusa Salvio, vuoi sapere come si usano o come si costruiscono ( i programmi per nesting e CAM ) ?

Uhmmm… la domanda è strana… se intendi con che linguaggio i programmatori software fanno il programma CAM-NESTING (o il plug-in), la risposta è “con quello che più gli piace”…
Se, invece, intendi il linguaggio di programmazione macchina (quello che dai in pasto al controllo numerico) allora si parla di istruzioni ISO con una miriade di personalizzazioni per ogni controllo.
Ti dico, sinceramente, non è un argomento da affrontare così a caso… devi avere un minimo di idea su cosa stai facendo (andare a lavorare su un controllo numerico) prima di affrontare il discorso programmazione…
Cioè, giusto per chiarire, c’è gente che lavora da una vita sui controlli che si mette a fare da consulente o programmatore software… devi sapere le dinamiche della macchina, i cicli di lavorazione, cosa serve ad un operatore cnc per poter lavorare in maniera semplice, quali trucchi del mestiere servono per portare a casa il lavoro senza fare danni, i materiali, gli utensili… ma guarda, una roba che neanche immagini le rogne…
Se lo fai per te, allora puoi rischiare, ma se lo fai per altri… puoi fare danni con da D maiuscola! (calcola che le macchine cnc arrivano a costare svariate centinaia di migliaia di euro e mi è già capitato di vedere un movimento in rapido che ti pianta il mandrino sul pezzo utilizzando software seri).

quindi mi confermi che si potrebbero dare le istruzioni usando anche RScript o Python in Rhino giusto?
confermando questo mi chiedo: più volte si è parlato che alcuni programmi di Cad o motori di Rendering sono più idonei di altri nel fare determinate cose e viceversa, tenendo conto della risposta di Lucio, sarebbe una strada idonea per avere un buon risultato? o ci sono programmi specifici che non usano un linguaggio scritto?

ripeto è una domanda giusto per un sapere di conoscenza quindi tranquillo Lucio non distruggero nessun cnc :slight_smile:

esatto la domanda era per sapere come e quali “istruzioni” vengono usate per far funzionare un Cam o Nest?
potendo usare RScript o Python quindi è tutto un “gioco” di algoritmi tra “seno e coseno” e formule geometriche o è una questione di sottrazione di “volumi e aree” e viene scelta la combinazione con meno spreco di spazio?

Io, al momento, ho accantonato il plug-in di terze parti che faceva la parte di cam e nesting e sto creando i percorsi di taglio laser (programma principale e sottoprogrammi) tramite Rhinoscript tutto all’interno di Rhino; mi trovo bene e sono più veloce (e se voglio aggiungermi una strategia di taglio o lavorare dei profili in maniera anomala lo posso fare editandomi il codice scritto).
Altro vantaggio è che non ho alcun costo sotto il punto di vista licenze aggiuntive: se voglio un’altra postazione, compro un’altra licenza di Rhino e ci butto tutto quello che mi serve.
Poi il passo per fare i percorsi dell’elettroerosione a filo e del tornio cnc vien da se (sempre parlando di 2D).

ottimo veramente complimenti Lucio. avevo i miei dubbi che si potesse fare tutto ciò con RScript
PS sapevo che questo era il tuo campo ma non immaginavo che andavi a programmare un Cam
sono sicuro che non sia una cosa semplicissima. veramente, ancora complimenti sinceri :clap:

Hmmm … permettimi di avere dei dubbi … :smiley:
Credo che ci sia (stato) un bell’equivoco.
E dato che con i computer, alla fine tutto e’ un ‘programma’, e’ normale faticare a capirsi …
Hehehe.

Comunque sembra che tu NON sia interessato a scriverti un CAM (del nesting non so niente, lo lascio a Lucio :slight_smile: )
Ma sembra che tu chieda come generere un percorso utensile, quindi in pratica vuoi fare tu il lavoro del CAM. :wink:
Quindi lasciamo stare il povero CAM ,dato che nessuno lo vuole … :sob: :wink:
E parliamo invece di percorso utensile. detto anche , all’inglese, ‘G-Code’

Ovviamente confermo quanto detto da Lucio: puoi benissimo scrivere un percorso usando uno script per Rhino.
Oppure lo puoi fare in altri modi, a tuo piacere.
Il percorso utensile e’ solo un file di testo, scritto naturalmente seguendo la sintassi richiesta. Quindi lo puoi scrivere con NotePad o altro.
Il problema non e’ scriverlo … e’ sapere cosa scrivere.
Per cui, nel caso, bisogna imparare le regole del percorso per un certo controllo numerico ecc.
Ma in alcuni casi, ad esempio fresatura a 2 o 3 assi, la cosa puo’ rivelarsi abbastanza semplice. In pratica, oltre ad alcuni comandi specifici della macchina, tipo inzializzazione e parametri vari, puo’ anche essere solo una sequenza di punti che il mandrino deve raggiungere in sequenza, con interpolazione lineare, cioe’ seguendo una traiettoria rettilinea da un punto al successivo.

Confermo anch’io che, per lavorazioni abbastanza semplici, e’ probabile che sia piu’ semplice e veloce fare tutto con Rhino piuttosto che esportare sul CAM, lanciare il CAM ecc. ecc.

Ciao

spero di no Emilio, solo che adesso mi ci hai fatto venire il dubbio anche a me . . . .
ma confido che Lucio abbia afferrato quello che intendevo. spero . . . .

tanto per far chiarezza togliamo di mezzo tutto quello che interessa CNC (che non me ne voglia Lucio) :slight_smile:
quindi: G-Code Assi Fresatura Mandrino e quant’altro sono cose da non gestire

faccio un esempio giusto per essere sicuri: ho un tot di geometrie (curve chiuse di varie forme fatte in rhino)
ora di queste geometrie le debbo mandare in stampa su fogli A4 per un tot di volte per ogni geometria
quindi in totale mi ritroverò tutte le geometrie ripetute x un num di volte stampate su un tot di fogli A4

ipoteticamente quali comandi e istruzioni potrei usare per dire (in questo caso a Rhino tramite RScript o Python)
inizia in quest’angolo del foglio mettendo questo pezzo orientato in questo modo, poi continua spostandoti di lato ed orientando quest’altro pezzo in quest’altro modo per far si che lo spazio non utilizzato sia il minore possibile?

credo che Lucio aveva inteso che intendevo questo o sbaglio?

Senz’altro Lucio ha capito molto piu’ di me. :slight_smile:

… E ne sa anche molto piu’ di me di nesting (io non l’ho mai usato), quindi non mi resta che abbandonare il campo … :wink:

Ciao !

Si, esattamente, il programma di nesting può esistere per conto suo per fare operazioni di inserimento oggetti da utilizzare anche in altro modo rispetto alla lavorazione cnc.
Un’altro esempio rispetto alla stampa su carta può essere quello di creare un motivo pattern su una stoffa oppure quello di posizionare degli oggetti per un’installazione artistica.
Il programma non fa altro che prendere gli oggetti e posizionarli in un’area/volume senza che questi si tocchino, mantenendo delle distanze minime e replicandoli per un numero di volte dato.
Quindi, i controlli che si possono fare sono legati al bounding box, perimetro, area, se si tratta di una forma definita tipo cerchio o un ellisse… poi si passa all’inserimento nell’area di lavoro con verifica del minimum bounding box e, tramite rotazioni vedere quando gli oggetti si toccano o no…
Ovviamente, per avere un buon risultato, bisogna dare il tempo al programma di considerare tutte le varie opzioni facendo varie pannellature e restituendo quella ottimale.

Grazie, ma se devo dirti la verità, non ho iniziato a fare il cam perchè mi considero meglio dei programmatori che lo fanno per vivere, semplicemente, un giorno, il plug-in non mi faceva la lavorazione che volevo e, siccome dovevo replicarla più volte, mi sono messo a scrivere uno scriptino (che poi si è rivelato uno scriptone) per sopperire al problema… poi da cosa nasce cosa, aggiungi na roba, togline un’altra… ho visto che lo script era molto più veloce e che mi creava programmi macchina più leggeri perchè l’approccio era di base differente rispetto al plug-in (che, giustamente, doveva lavorare considerando di trattare geometrie fatte da disegnatori “cane” e quindi doveva fare molte più verifiche).
Comunque, è un work in progress continuo, non si finisce mai di aggiustare e migliorare quello che si è fatto (quindi capisco benissimo la difficoltà e le tempistiche dei prorgrammatori su software molto più complessi).

beh ovviamente, anch’io nel mio piccolo non ho la presunzione di essere più bravo di chi lo fa per mestiere, quello che cerco di fare e di scrivere alcune righe di codice secondo le mie esigenze e quindi di personalizzare il risultato, ovvio che tutto questo fa si che si evitino passaggi non necessari.

quindi hai realizzato sia la parte Cam che Nesting, e quest’ultima se ho capito bene sarebbe quella che farebbe ciò che io ho mensionato nell’ultimo post:

e scusami un ultima domanda, che poi in pratica è la domanda iniziale “dal riepilogo del post sopra esposto” delle possibili strade che ho mensionato, quale delle due farebbe a caso mio e quale linea dovrei seguire? PS se non sono entrambe da cestinare ovviamente :slight_smile:

ah bhè Lucio,
ora sono curioso,
mi fai giocare con il tuo script di nesting?
intendevo farmene uno ma se lo hai già fatto tu…:slight_smile:

dai… vuoi mettere la soddisfazione di scriverlo personalmente un codice non trovi :slight_smile:

Naaaaa … e’ molto meglio pagare profumatamente Lucio !

… Vero Lucio ? :grinning:

beh Emilio questa era l’altra alternativa ahahahah