Cómo las macros personalizadas simplifican el reemplazo de herramienta y reanudan operaciones sin problemas
Algunos programadores evitan usar macros personalizadas porque sienten que estas hacen más difícil reiniciar un programa desde la mitad de una operación de mecanizado compleja. Esta preocupación a menudo puede superarse con un poco de planificación. De hecho, las macros personalizadas a veces hacen más fácil reiniciar el programa y correr desde la mitad de una operación de mecanizado de una herramienta.
La técnica en este artículo fue inspirada por Chad Kluth de Mid Valley Industries en Kaukauna, Wisconsin. Lo estaba ayudando a resolver un problema diferente en una macro personalizada de mecanizado de agujeros en círculo de pernos. La incluyo aquí ya que es relevante para nuestra discusión.
La aplicación de Kluth involucraba mecanizar componentes de acero 4140 muy grandes y duros usados en la industria minera. Necesitaba taladrar hasta 100 agujeros, cada uno de 2 pulgadas de diámetro, alrededor de un patrón de círculo de pernos en una cara/brida redonda a 6 pulgadas de profundidad. Como puede imaginar, el desgaste y rotura de herramienta son grandes problemas. Incluso un taladro con insertos nuevos puede no llegar hasta el final del ciclo sin desgastarse —y el taladro podría estar en el agujero 90 cuando se desgaste. Para empeorar, una inclusión dura en el material base podría causar que el taladro se rompa en cualquier momento.
Kluth usa una macro personalizada universal de círculo de pernos capaz de realizar varios tipos de operaciones de mecanizado de agujeros, incluyendo taladrado, roscado estándar, roscado rígido, escariado y avellanado. El problema original tenía que ver con roscado rígido. Al ser una macro «universal», el comando M29 necesitaba ignorar roscado rígido si la máquina estaba realizando cualquier otra operación. Para resolver esto, usamos variables locales «vacantes».
En cuanto a saltar agujeros, un argumento en el comando de llamada especifica el número de agujeros a saltar. Por ejemplo, si el taladro se desgasta durante el agujero 90, el usuario necesita establecer este argumento a 89. Usamos la palabra K (palabra L con CNCs FANUC antiguos) en el comando de ciclo enlatado para especificar si la máquina debe saltar un agujero. Si K se establece a cero (K0), el agujero se salta. Si K se establece a uno (K1), el agujero se mecaniza.
Aquí hay un programa de ejemplo conteniendo un comando de llamada de ejemplo:
- O0001
- N005 G90 S500 M03
- N010 G00 X0 Y0
- N015 G43 H01 Z0.1
- N020 G65 P9010 X0 Y0 Z0 C81.0 D6.0 R0.1 B12.0 A90.0 I100.0 F12.0 H89.0
- N025 G91 G28 Z0
- N030 M30
Estos son los argumentos obligatorios que deben estar en el comando de llamada:
- (X = centro X)
- (Y = centro Y)
- (Z = superficie Z)
- (D = Profundidad de agujero)
- (C = Ciclo a usar — G81, G82, G83, G73 o G84)
- (R = Posición rápida Z)
- (B = Radio de círculo de pernos)
- (A = Ángulo inicial)
- (I = Número de agujeros)
- (F = Velocidad de avance)
Estos son los argumentos requeridos solo en casos especiales:
- (T = Necesario con G82 para especificar tiempo de dwell)
- (Q = Necesario con G73 o G83 para especificar profundidad de picado)
- (M29.0 = Necesario si roscado rígido)
- (Sxxxx.x = Necesario si roscado rígido para especificar RPM de husillo)
- (H = Necesario si se saltan agujeros para especificar número de agujeros a saltar)
Aquí está la macro personalizada:
- O9010 (Macro personalizada universal de círculo de pernos)
- #101=1 (Inicializar contador)
- #102=#1 (Inicializar ángulo actual a A)
- #103=360 / #4 (Distancia angular incremental entre agujeros)
- #104=#26 + 0.1 (Plano de aproximación rápida)
- #105=#26 - #7 (Posición Z fondo de agujero)
- #32=1 (Contador de salto de agujeros — usado si H incluido en comando de llamada)
- N1 IF[#101 GT #4] GOTO 99 (Probar si terminó mecanizado de agujeros)
- #110=#24 + COS[#102] * #2 (Posición X para agujero actual)
- #111=#25 + SIN[#102] * #2 (Posición Y para agujero actual)
- #33=1 (Valor palabra K, establecido a 1 en caso que siguiente agujero sea mecanizado)
- IF[#11EQ#0] GOTO5 (Probar si H incluido en comando de llamada)
- IF[#32GT#11] GOTO5 (Probar si terminó saltando agujeros)
- #33=0 (Siguiente agujero será saltado)
- N5 M#13 S#19 (No ejecutado si #13 y #19 son vacantes)
- G#3 X#110 Y#111 R#104 Z#105 P#20 Q#17 F#9 K#33 (Mecanizar agujero actual)
- G80 (Cancelar ciclo)
- #101=#101 + 1 (Incrementar contador)
- #102=#102 + #103 (Incrementar ángulo actual)
- #32=#32+1 (Incrementar contador de salto)
- GOTO 1 (Volver a probar)
- N99 M99 (Fin)
Aquí hay una guía a los elementos en negrita en la macro personalizada:
- M#13 S#19 — Si una palabra CNC contiene una variable local vacante, el CNC ignorará la palabra. Al realizar roscado rígido, el comando de llamada debe incluir las palabras M29.0 y Sxxxx.0 (S especifica RPM para roscado rígido). Si se hace otra operación, los usuarios deben dejar M y S fuera del comando de llamada.
- P#20 y Q#17 — Si el usuario usa avellanado (G82), debe incluir T en el comando de llamada para especificar tiempo de dwell. Al hacer taladrado a picados (G73 o G83), los usuarios deben incluir Q para especificar profundidad de picado.
- K#33 — FANUC tiene dos formatos de programación para ciclos enlatados. Con CNCs FANUC más nuevos, K especifica el número de agujeros mecanizados. CNCs FANUC antiguos usan L para el mismo propósito. Si esta macro no funciona (la máquina no salta agujeros incluso si H está incluido en el comando de llamada), cambie K#33 en este comando a L#33.
Equipo industrial
- Cómo las Herramientas Lean Desbloquean la Fiabilidad: Guía Práctica
- Por qué los equipos fallan justo después del mantenimiento: causas clave y estrategias de prevención
- Cómo arreglar una llave de coche rota: soluciones rápidas y consejos de experto
- Software POS Personalizado: Impulse la Eficiencia Minorista y Eleve la Experiencia del Cliente
- Las 5 principales ventajas de los servicios de mecanizado CNC personalizado para fabricación de precisión
- Herramientas de Divot de Golf Personalizadas: Soluciones de Precisión Impresas en 3D para un Juego Superior
- Torno suizo de 7 ejes avanzado: reducción del 40% en tiempo muerto y operaciones más rápidas
- Desbloquee el Potencial de su Negocio con Nuestros Servicios Premium de Mecanizado Personalizado
- Por qué las piezas mecanizadas a medida superan a las de fábrica en 4 áreas clave
- Doosan Machine Tools: Líder global en soluciones de mecanizado de precisión
- Las tecnologías AR y VR transforman la formación, la eficiencia en almacenes y la precisión en el ensamblaje