Ce este un postprocesor CAM-CNC?

CAD/CAM/CAE/PDM/PLM/ERP

de Eduard Oprea

Ce este un postprocesor CAM-CNC?

Pentru programarea CNC eficientă, experiența este foarte importantă, dar adesea conduce la o atitudine conservatoare de genul ,,eu știu cel mai bine cum se prelucrează orice metal”. Avansul tehnologic face ca soluțiile să fie disponibile la cât mai multe companii și, astfel, suntem martori la schimbări majore în procesele de fabricație. Primii care se adaptează vor avea avantaje competitive serioase, cei care așteaptă să vadă ce se întâmplă vor realiza prea târziu ce oportunități au pierdut. entru programarea CNC eficientă, experiența este foarte importantă, dar adesea conduce la o atitudine conservatoare de genul ,,eu știu cel mai bine cum se prelucrează oric metal”. Avansul tehnologic face ca soluțiile să fie disponibile la cât mai multe companii și, astfel, suntem martori la schimbări majore în procesele de fabricație. Primii care se adaptează vor avea avantaje competitive serioase, cei care așteaptă să vadă ce se întâmplă vor realiza prea târziu ce oportunități au pierdut.

Există tendința de a investi foarte mult în mașini scumpe de producție și deseori acestea sunt folosite sub adevăratul lor potențial. Exploatarea eficientă a echipamentelor necesită o optimizare a întregului proces de fabricație. În acest proces atât soluția CAM cât și postprocesorul au un rol decisiv în îndeplinirea obiectivelor de cost, timp sau calitate. Înainte de a prezenta ce este un postprocesor CAM-CNC, vreau să clarific contextul și nevoia. Mașinile-unelte cu comandă numerică utilizează limbajul cod G (G-code), cunoscut și ca limbaj NC (NC code). Acesta este un limbaj destul de criptic, fiind conceput așa din cauză că inițial mașinile-unelte cu comandă numerică nu aveau foarte multă memorie la dispoziție.

O linie de program tipică, este formată din cuvinte – litere urmate de numere N110 G90 G00 X5.66 Y120.42 M03 S1500, unde:

  • N110 – numărul de ordine al liniei de program
  • G90 – coordonatele exprimate sunt în sistem de coordonate absolut (față de origine mașinii)
  • G00 – mișcare de poziționare rapidă
  • X5.66 Y120.42 – coordonatele carteziene ale poziției următoare
  • M03 – start spindle
  • S1500 – la turația de 1500 rot/min

Cuvintele sunt grupate împreună astfel încât numai un cuvânt dintr-un anumit grup poate fi activ la un moment dat. Spre exemplu, în grupul cuvintelor referitoare la mișcare, vom regăsi:

  • G00 – mișcare rapidă (de poziționare)
  • G01 – mișcare de avans liniară
  • G02 – mișcare de avans circulară în sensul acelor de ceasornic
  • G03 – mișcare de avans circulară în sensul invers acelor de ceasornic

Este imposibil ca două dintre cuvintele de mai sus să se regăsească în aceeași linie de program (mașina fie are mișcare rapidă, fie de avans). De asemenea, cuvintele pot fi modale – stabilesc valori care rămân active până vor fi schimbate de alte cuvinte modale (start speendle, start lichid răcire) sau non-modale – active o singură dată (schimbare de sculă, rulare subrutină).

Limbajul a fost dezvoltat inițial în anii ’50, fiind standard pentru mașinile cu comandă numerică. Programele erau „scrise” pe cartele perforate, cu  ajutorul unor mașini speciale. Cartelele puteau fi utilizate pe orice CNC, neexistând probleme de com­patibilitate între programe.

Cu timpul, standardul și-a atins limitele, iar producătorii de mașini-unelte au decis să extindă, apoi să dezvolte propriile limbaje de programare pentru CNC-uri. În piață nu a existat o voce unică, astfel încât astăzi fiecare producător de echipament electronic de control pentru CNC oferă și susține versiunea proprie a limbajului de programare NC.

În anii ’70-’80, apar primele soluții software pentru programarea asistată a mașinilor cu comandă numerică, generic cunoscute ca soluții software CAM (Computer Assisted Manufacturing). Acestea eliminau erorile rezultate datorită programării manuale, permiteau realizarea de programe NC mai complexe, făcând astfel posibilă o programare mai eficientă a mașinilor-unelte.

Trebuie să înțelegem că ceea ce se vede pe monitorul calculatorului atunci când utilizăm o solu-ție CAM – fie ea Siemens NX CAM, Delcam, CAM Works, DELMIA sau MasterCAM – nu este unul și același lucru cu programul NC. În termeni CAM, codul binar din sistemul CAM este translatat într-un text care poate fi înțeles de CNC – programul NC. Un postprocesor CAM-CNC este acel software care translatează datele CAM în programul G-code spe­cific pentru o mașină-unealtă. Pentru comunicarea cu mașinile-unelte, toate soluțiile CAM au nevoie de postprocesoare.

Există 2 metode de bază pentru trans­latarea datelor CAM în limbaj cod G:

  • Cu ajutorul unui postprocesor CAM-CNC, datele sunt transformate direct;
  • Prin intermediul fișierelor de tip Cutter Location Source File (CLSF sau *.cls), generate de sistemul CAM și apoi translatate de un postprocesor specific unui anumit CNC/controller.

Postprocesorul CAM-CNC este ca un driver pen­tru imprimante. Diferența este că pe când impri­mantele sunt vândute în milioane de exemplare identice, mașinile-unelte sunt vândute cu opțiuni diverse, rareori existând două mașini identice. Chiar dacă două mașini sunt identice din punct de vedere mecanic, pot avea controllere diferite sau versiuni de software diferite sau opțiuni diferite active.

Majoritatea producătorilor oferă un număr de postprocesoare împreună cu kitul de instalare al software-ului CAM, dar acestea sunt insuficiente și în 99% din cazuri nu pot fi utilizate ca atare. Prima opțiune pentru utilizatorul final este să modifice un postprocesor CAM-CNC apropiat de nevoile sale, adică să creeze un nou postprocesor. A doua opțiune, nerecomandată, dar des întâlnită, este utilizarea unui postprocesor cât mai apropiat de nevoile proprii și modificarea manuală a programelor NC pentru a putea fi rulate pe CNC. Această metodă (denumită nu degeaba metoda degetului gros – fat finger) prezintă riscuri foarte mari deoarece o greșeală de tastare minoră poate distruge mașina-unealtă. {i este doar o chestiune de timp p#nă ce apar astfel de erori.

De ce nu oferă producătorul soluției CAM o bibliotecă de postprocesoare care să acopere toate situațiile posibile? La un calcul simplu, pentru că:

  • Presupunem că există 20 de producători majori de mașini-unelte (DMG MORI, OKUMA, DOOSAN, MAZAK, HURCO, HAAS etc.),
  • fiecare dezvoltă 5 modele diferite în fieca-re an
  • și oferă 8 opţiuni programabile diferite pentru fiecare din acestea.
  • considerăm toate CNC-urile fabricate în ultimii 20 de ani
  • și poate fi dotat cu un controller provenind de la 3 mari producători (Siemens, Fanuc, Heidenhain), ceea ce înseamnă 48.000 de postprocesoare necesare.

Un alt aspect important în diversitatea postpro­cesoarelor este și faptul că fiecare companie are propriile cerințe/standarde în ceea ce privește codul NC – comentarii specifice în program, bloc de start personalizat, bloc de sfârșit de program personalizat, utilizarea unor anumite cicluri predefinite, numărul de zecimale utilizat ș.a.m.d. Cum numai în Statele Unite, spre exemplu, se estimează un număr de 20.000 de fabrici, înseamnă că ar fi nevoie de cel pu-țin 48.000 x 20.000 = 960.000.000 postprocesoare pentru a acoperi toate situațiile posibile! Din acest motiv postprocesoarele gata de utilizare nu există, fiind nevoie de specialiști, care să le creeze.

Apreciind a fi o investiție mare în mașina-unealtă și soluția CAM, realizarea unui postprocesor CAM-CNC nu trebuie subevaluată și nici ignorată întrucât aceste aspecte influențează foarte mult productivita­tea soluției și reduce riscurile în utilizare.


Eduard Oprea este Cofondator Digital Twin

Partenerul Siemens Industry Software specializat automotive în România.
Digital Twin oferă produse și servicii pentru digitalizarea proceselor industriale cu soluții NX CAD, NX CAM și Teamcenter PDM