Superando los límites del mecanizado doméstico con G-Code, GRBL, CNCJS y Macro Magic

por | 10 de marzo de 2024 | DIY CNC de 5 ejes, 工作機械の基礎, CNCルーター | 0 Comentarios

Programas a utilizar con la función macro CNCjs

Programa de mecanizado lineal continuo

Este programa CNC está diseñado para una operación de mecanizado que corta secuencialmente a lo largo de tres líneas definidas por los puntos A, B y C, en tres pasadas separadas, cada una más profunda que la anterior. Aquí hay un desglose de las variables y su uso:

variables

  • PETENCIA: La profundidad total del corte, establecida en -9 unidades. Este valor es negativo porque las máquinas CNC usan valores negativos para representar el movimiento hacia abajo en el material.
  • %POINT_A_X, %POINT_A_Y: Las coordenadas X e Y del punto A, que marcan el inicio de la primera línea.
  • %POINT_B_X, %POINT_B_Y: Las coordenadas X e Y del punto B, el final de la primera línea y el inicio de la segunda.
  • %POINT_C_X, %POINT_C_Y: Las coordenadas X e Y del punto C, el final de la segunda línea y teóricamente de regreso al origen si es una forma cerrada.

Uso

  1. Configuración: Asegúrese de que la máquina CNC esté configurada para unidades métricas (G21) y la velocidad del husillo (S5000) y velocidad de avance (F30) se establecen.
  2. Posicionamiento inicial: El programa comienza moviendo la herramienta a una altura segura (Z5) encima del material y luego posiciona la herramienta en el origen (X0Y0).
  3. Proceso de corte:
    • La herramienta desciende hasta la superficie (Z0) y luego comienza el proceso de corte.
    • En cada una de las tres pasadas, la herramienta desciende un tercio de la profundidad total (PETENCIA/3) y luego se mueve secuencialmente a lo largo de las líneas desde el punto A al B y al C, creando una ruta continua.
    • Después de cada pasada, la herramienta se retrae a una altura segura (Z13), detiene el husillo (M5), regresa al origen (X0Y0), y hace una pausa (M0). Antes de comenzar la siguiente pasada, el husillo se reinicia (M3), y la herramienta vuelve a bajar (Z-13 menos la profundidad adicional).
  4. Terminación: Después del pase final, el programa termina con M30, señalando el final del programa y reiniciando la máquina para la siguiente operación.

Puntos clave

  • La profundidad de la herramienta aumenta gradualmente con cada pasada, lo que hace que este programa sea ideal para la eliminación gradual de material, garantizando precisión y evitando una carga excesiva en la herramienta.
  • El uso de coordenadas relativas (G91) para el movimiento garantiza que cada acción se base en la anterior, lo que facilita ajustes sencillos en la ruta sin tener que volver a calcular desde un origen fijo.
  • Este programa es adecuado para operaciones que requieren múltiples pasadas de profundidad controlada, como grabado, corte de canales o creación de formas complejas con control de profundidad preciso.
Programa de mecanizado lineal continuo (Awesome LINES Freak)

; Impresionante LÍNEAS Freak

G90 G94
G17
G21;MM
PTH = -9

;Ingrese como G91
%POINT_A_X = 60
%POINT_A_Y = 0

%POINT_B_X = 11
%POINT_B_Y = -11

%POINT_C_X = 0
%POINT_C_Y = 0

S5000 M3
F30

G90
G0 Z5
X0Y0

G0Z0

;1
G91 G1 Z[PROFUNDIDAD/3]G91 G1 X[PUNTO_A_X] Y[PUNTO_A_Y]
G91 G1 X[PUNTO_B_X] Y[PUNTO_B_Y]
G91 G1 X[PUNTO_C_X] Y[PUNTO_C_Y]

G91 G0 Z13
M5
G90X0Y0
M0
M3
G91 G0 Z-13

;2
G91 G1 Z[PROFUNDIDAD/3]G91 G1 X[PUNTO_A_X] Y[PUNTO_A_Y]
G91 G1 X[PUNTO_B_X] Y[PUNTO_B_Y]
G91 G1 X[PUNTO_C_X] Y[PUNTO_C_Y]

G91 G0 Z13
M5
G90X0Y0
M0
M3
G91 G0 Z-13

;3
G91 G1 Z[PROFUNDIDAD/3]G91 G1 X[PUNTO_A_X] Y[PUNTO_A_Y]
G91 G1 X[PUNTO_B_X] Y[PUNTO_B_Y]
G91 G1 X[PUNTO_C_X] Y[PUNTO_C_Y]

G91 G0 Z13
M5
G90X0Y0
M30

Programa de fabricación de agujeros

En este programa CNC, se utilizan configuraciones variables y ramificaciones condicionales para automatizar y ejecutar con precisión operaciones de perforación o ranurado circular repetidamente. Aquí hay una explicación detallada:

Configuraciones variables

  • %TOOL_D = 3: Establece el diámetro de la herramienta en 3 mm.
  • %DIÁMETRO = 20: Establece el diámetro del círculo a mecanizar en 20 mm.
  • %Z_ST = 0: Establece la coordenada Z inicial para el mecanizado en 0.
  • %Z_DEPTH = -8: establece la coordenada Z final para el mecanizado en -8 mm, lo que indica la profundidad total del material que se va a eliminar.
  • %NO_CUT = 20: establece el número de pasadas (rondas de mecanizado) en 20.
  • %A_DEPTH = [Z_PROFUNDIDAD - Z_ST] / NO_CUT: Calcula la profundidad de corte para cada pasada. Esto divide uniformemente la profundidad total por el número de cortes, asegurando que el material se elimine de manera uniforme.

Ramificación condicional

La ramificación condicional se utiliza como %UN = [(CONTAR <= NO_CUT)? CONTAR: -1]. Esto significa “si CONTAR (el número actual de pases) es menor o igual a SIN CORTE (el número total de pases), luego configure %UN a CONTAR; de lo contrario, configúrelo en -1.” Esta lógica verifica si el proceso de mecanizado ha alcanzado el número especificado de pasadas y determina si se han completado todas las operaciones de mecanizado.

Uso dentro del proceso de mecanizado

Con esta lógica, el programa opera de la siguiente manera:

  1. Incremento %CUENTA por 1 para cada ciclo de mecanizado.
  2. Usar %UN para bifurcación condicional, ejecutando el comando de mecanizado (N[ONU] G91 G3...) sólo si %CUENTA es menor o igual a %NO_CUT. Esto garantiza que se siga la trayectoria circular el número de veces especificado.
  3. Una vez que se completa el número especificado de pasadas, el programa deja de ejecutar comandos de mecanizado.

Este método permite que el programa realice de forma automática y precisa las operaciones de perforación o ranurado circular especificadas con profundidad y diámetro predeterminados. El uso de ramificaciones condicionales proporciona flexibilidad en el control del proceso de mecanizado, lo que hace que el programa sea fácilmente ajustable y reutilizable.

Programa de mecanizado lineal continuo (Awesome HOLES Freak)

;Impresionante AGUJEROS Freak

G90 G94
G17
G21;MM
;——————————————————————–
%TOOL_D = 3 ;Diámetro de herramienta
%DIÁMETRO = 20
%Z_ST = 0 ;Inicio de mecanizado Coordenada Z
%Z_DEPTH = -8 ;Mecanizado de la coordenada Z final
%NO_CUT = 20 ;número de rondas (de una máquina)

S5000 M3
F1000
G90 G0 Z5 ;Altura de movimiento
G90 X0 Y0; Asiento del centro de mecanizado estándar

;——————————————————————–

;Mover al punto de inicio
G91 G0 Y[DIÁMETRO/2 – HERRAMIENTA_D/2]G90 G0 Z[Z_ST]

%CONTADOR = 0
%A_DEPTH = [Z_DEPTH- Z_ST] / NO_CUT

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

%COUNT = CONTAR+1;—————————————————————–
%UN = [(CONTAR <= NO_CUT)? RECUENTO : -1]N[UN] G91 G3 J-[DIAMETRO/2 – HERRAMIENTA_D/2] Y-[DIAMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]N[UN] G91 G3 J[DIAMETRO/2 – HERRAMIENTA_D/2 ] Y[DIÁMETRO – HERRAMIENTA_D] Z[A_DEPTH/2 ]

 

G90 G0 Z[Z_ST+5]M5
M30

Programa de colocación

Este programa CNC está diseñado para mecanizar una pieza rectangular con esquinas redondeadas, también conocida como "rectángulo fileteado". Corta gradualmente el material en capas para lograr la profundidad final, utilizando una combinación de movimientos lineales y circulares (G1 y G3). Aquí hay un desglose de sus variables clave, funciones y uso:

Configuración de variables

  • %TOOL_D: Diámetro de la herramienta de corte.
  • %CORNER_R: Radio de las esquinas del rectángulo. Debe ser mayor que el radio de la herramienta para adaptarse al tamaño de la herramienta durante el proceso de redondeo.
  • %X_WIDE y %Y_WIDE: Las dimensiones del rectángulo en las direcciones X e Y, respectivamente.
  • %Z_ST: Coordenada Z inicial para el mecanizado.
  • %Z_DEPTH: Coordenada Z final, que indica la profundidad total del corte.
  • %NO_CUT: Número de pasadas que realiza la herramienta para alcanzar la profundidad final, lo que facilita el corte incremental.

Cálculos clave

  • %TRIMESTRE, %LENGTH, %A_DEPTH, %Z_DEPTH_X, %Z_DEPTH_Y, %Z_DEPTH_R: Estos son valores calculados que se utilizan para controlar la profundidad y la longitud de cada pasada, asegurando una eliminación uniforme del material en todo el rectángulo y sus esquinas redondeadas.

Proceso de mecanizado

  • El programa comienza con la configuración de la máquina con G90, G94, G17, G21 para posicionamiento absoluto, velocidad de avance por minuto, selección del plano XY y medición en milímetros, respectivamente.
  • Luego mueve la herramienta a la posición inicial, teniendo en cuenta el diámetro de la herramienta y el radio de la esquina.
  • Por cada pase (%CUENTA incremento), la herramienta se mueve linealmente (G1) y arcos (G3) alrededor de las esquinas con ajustes de profundidad Z calculados (%Z_DEPTH_X, %Z_DEPTH_Y, %Z_DEPTH_R) para crear el rectángulo fileteado. El proceso se repite para el número especificado de cortes (%NO_CUT).
  • Cheques condicionales (%UN) se utilizan para continuar el bucle hasta completar el número requerido de pasadas, ajustando la profundidad de corte de forma incremental con cada pasada.
  • Finalmente se realiza una pasada de acabado en toda su profundidad para asegurar la calidad superficial final.

Uso

  1. Preparar la máquina: Cargue el programa, configure la herramienta con el diámetro especificado y asegure el material.
  2. Variables del programa: Ajustar el %X_WIDE, %Y_WIDE, %Z_DEPTH, y %NO_CUT variables según sea necesario para los requisitos específicos de su proyecto.
  3. Ejecuta el programa: Inicie el proceso de mecanizado. La herramienta realizará automáticamente los movimientos lineales y circulares necesarios para mecanizar el rectángulo fileteado.

Este programa es particularmente útil para piezas que requieren esquinas redondeadas precisas, comunes en troqueles, moldes y componentes mecánicos. Su enfoque de profundidad incremental minimiza el desgaste de la herramienta y permite una eliminación eficiente del material.

Programa de tragamonedas (Awesome SLOTS Freak)

; Impresionante monstruo de las tragamonedas

G90 G94
G17
G21;MM
;——————————————————————–
%TOOL_D = 3 ;Diámetro de herramienta
%CORNER_R = 11.5; Radio de 4 esquinas. Establezca más que el radio de la herramienta.
%X_WIDE = 23 ;Establecer por encima del diámetro de la herramienta
%Y_WIDE = 23 ;Establecer por encima del diámetro de la herramienta
%Z_ST = 0 ;Inicio de mecanizado Coordenada Z
%Z_DEPTH = -2.8 ;Mecanizado de la coordenada Z final
%NO_CUT = 30 ;número de rondas (de una máquina)

S5000 M3
F1000
G90 G0 Z5 ;Altura de movimiento
G90 X0 Y0; Asiento del centro de mecanizado estándar

;——————————————————————–

%QUARTER =[0.785*[CORNER_R*2 – TOOL_D]]%LENGTH = [QUARTER*4+[X_WIDE – TOOL_D]*2+[Y_WIDE – TOOL_D]*2] ;Distancia por vuelta
%A_DEPTH = [ Z_ST – Z_DEPTH] / NO_CUT ;Un corte

%Z_DEPTH_X = [[[ANCHO_X – HERRAMIENTA_D] / LARGO]*A_PROFUNDIDAD]%Z_DEPTH_Y = [[[ANCHO_Y – HERRAMIENTA_D] / LARGO]*A_PROFUNDIDAD]%Z_PROFUNDIDAD_R = [-[TRIMESTRE / LARGO]*A_PROFUNDIDAD]

;Mover al punto de inicio
G91 G0 X[X_WIDE/2 – CORNER_R*2/2] Y[Y_WIDE/2 – CORNER_R*2/2]G91 G0 Y[CORNER_R*2/2 – TOOL_D/2]G90 G0 Z[Z_ST]

%C_DEPTH =Z_ST
%CONTADOR = 0

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

%COUNT = CONTAR+1;—————————————————————–
%C_PROFUNDIDAD = C_PROFUNDIDAD – A_PROFUNDIDAD
%UN = [(CONTAR <= NO_CUT)? RECUENTO: -1]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2 /2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 X[ X_WIDE – CORNER_R*2] Z[-Z_DEPTH_X]N[UN] G91 G3 J[CORNER_R*2/2 – TOOL_D/2] X[CORNER_R*2/2 – TOOL_D/2] Y [ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2] Z[-Z_DEPTH_Y]N[UN] G91 G3 I-[CORNER_R*2/2 – TOOL_D/2] X-[CORNER_R*2/2 – TOOL_D/2 ] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Z[Z_DEPTH_R]

;仕上げ加工
%UN = 9999
G90 G1 Z[Z_DEPTH]N[UN] G91 G1 X[ -X_WIDE +CORNER_R*2]
N[UN] G91 G3 J-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] X-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2]

N[UN] G91 G1 Y[ -Y_WIDE +CORNER_R*2]
N[UN] G91 G3 I[ESQUINA_R*2/2 – HERRAMIENTA_D/2] X[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Y-[ESQUINA_R*2/2 – HERRAMIENTA_D/2]

N[UN] G91 G1 X[ X_WIDE – ESQUINA_R*2]
N[UN] G91 G3 J[ESQUINA_R*2/2 – HERRAMIENTA_D/2] X[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2]

N[UN] G91 G1 Y[ Y_WIDE – CORNER_R*2]
N[UN] G91 G3 I-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] X-[ESQUINA_R*2/2 – HERRAMIENTA_D/2] Y[ESQUINA_R*2/2 – HERRAMIENTA_D/2]

G90 G0 Z[Z_ST+5]M5
M30