Script CNC stroke

De wikijoan
Salta a la navegació Salta a la cerca

Introducció

Einstein cncstroke.png
Einstein.jpg

Es tracta de fer un script amb C++ que llegeixi la capa stroke d'un projecte LibreCAD, i generi el G-code per tal de fresar les polilínia des de una profunditat de -2mm fins a 0mm. L'objectiu és que el traç del fresat acabi en punta. Està explicat al bloc en aquests dos articles:

$ ./cncstroke -f fitxer_entrada.dxf -o fitxer_sortida.ngc -z depth

El paràmetre depth és la profunditat allà on comença el traç. S'obtenen bons resultats amb z=2mm o z=3mm (es posa el valor positiu, es multiplica per -1 dins el codi). Què vol dir un bon resultat? Doncs que hi hagi continuïtat entre el traç normal, i el traç fet amb cncstroke. En el traç normal en principi faig servir una broca de 2mm. El traç amb cncstroke el faig amb una V-Shape de 40 graus. La profunditat de 3mm és de manera que provoqui un fresat de diàmetre de 2mm (igual que la broca normal).

En el projecte LibreCAD creo la capa stroke, i aquí defineixo les línies enllaçades que seran processades. Compte! Dic línies enĺlaçades perquè utilitzo l'eixa línia en comptes de l'eina polilínia, perquè és molt més fàcil de detectar les línies i per tant més fàcil de processar. Així s'ha fet fins la versió 1.0.0. En una futura versió es pot mirar d'utilitzar directament les polilínies.

Descàrrega


creat per Joan Quintana Compte, setembre 2017