Manufactura y automatización experimental
1
Programación con Macros Por: Jorge Andrés García Barbosa
R ESUMEN ESUMEN El siguiente escrito presenta un ejercicio práctico de programación con macros realizado por la empresa Mecanizados CNC LTDA y fue implementado en el centro de mecanizado Leadwell V20 con control FANUC que se encuentra ubicado en el laboratorio de mecatrónica de la Universidad Nacional de Colombia, con el fin de apoyar las clases de manufactura y automatización experimental. Se realiza una reseña de la importancia de la programación con macros así como su alcance y se presenta el código de programación del ejercicio propuesto.
flexible y parametrizable, se pueden variar condiciones de velocidad de husillo, avance, órdenes de desplazamiento entre muchas otras. Los ciclos para simplificar la programación como los ciclos de taladrado, roscado, rimado, etc. son macros que ya vienen implementadas en el control y que son invocadas como un subprograma por medio de un código especial.
•
Palabras Clave—Manufactura, Clave—Manufactura, automatización, programación con macros.
•
•
I. I NTRODUCCIÓN Las máquinas de control numérico como los centros de mecanizado pueden ser programadas desde un computador o directamente por el operario. Un programa CAD/CAM esta en la posibilidad de generar trayectorias NC para la máquina a partir de una forma geométrica generada en un sistema CAD, este programa NC es transmitido del computador al control de la máquina por intermedio de un programa de transmisión de datos y puede ser almacenado en la memoria del control o ser transmitido a este por bloques en el caso de que el código NC sea muy extenso y no quepa en la memoria del control. Otra forma de programar la máquina consiste en que el operario introduce el código NC directamente en la pantalla del control de la máquina, esta es denominada programación manual. Existen dos tipos de programación manual: la programación lineal y la programación con macros. En la programación lineal el código se ejecuta línea por línea y es por lo general empleada para necesidades muy específicas. En la programación con macros se presenta la posibilidad de trabajar con variables y con sentencias condicionales (IF, Go to, etc..) como en los lenguajes usuales de programación. Existen variables locales y variables para el usuario que permiten a un programa ser Artículo entregado el 29 de Marzo de 2004. El autor es egresado de la Maestría en materiales y procesos de manufactura en la Universidad Nacional de Colombia. Jorge Andrés García Barbosa:
[email protected] [email protected]
II. OJETIVOS Comprender los principios de la programación con macros. Comprender la importancia de la programación con macros en un ambiente industrial. Comprender cuando es conveniente utilizarlas y cuando no.
III. JUSTIFICACIÓN El centro de mecanizado vertical es un máquina de tres ejes, en la que se pueden desarrollar operaciones tecnológicas como planeados, canteados, series de agujeros en placas y formas tridimensionales. Sin un software CAD/CAM indudablemente la máquina es subutilizada puesto que realizar sólidos tridimensionales por medio de programación manual es una tarea compleja y demorada. Las operaciones típicas de 2D como planeados, canteados y agujeros pueden ser desarrolladas con facilidad por medio de programación manual, pero lleva más tiempo desarrollar el programa manualmente que por intermedio de un software. Entonces, si se hace indispensable tener un software cuando se cuenta con un centro de mecanizado, ¿para qué utilizar cualquier tipo de programación manual? Cuando se tienen que mecanizar piezas con rasgos de manufactura muy similares, pero que varían dimensionalmente (parametrizables), se puede hacer uso de la programación con macros para realizar la tarea tecnológica. Por ejemplo, se tiene una familia de platinas con el mismo ancho y diferentes longitudes, en las cuales se realiza una cantidad n de agujeros espaciados una distancia “ x” . En este caso utilizando un software se realizaría un programa para cada pieza, en cambio, si se emplea la programación con macros se
Manufactura y automatización experimental puede realizar un único programa parametrizable en el cuál se indique el número de agujeros y la distancia entre ellos directamente en el control de la máquina. IV. PLANTEAMIENTO DEL PROBLEMA Una de las actividades tecnológicas más empleadas en una empresa que cuenta con un centro de mecanizado es la preparación del material. Por ejemplo, las placas de material deben ser planeadas y escuadradas antes de ser utilizadas para la elaboración de cavidades en la manufactura de moldes y troqueles. Si se cuenta con una placa de diferentes dimensiones en sus tres ejes, se deben realizar al menos tres programas para poder alistar el material. Se quiere realizar una macro para realizar operaciones de planeado. La Fig. 1 ilustra el material que debe ser alistado. La macro debe ser funcional para cualquiera que sean las dimensiones de la placa a trabajar.
2
Como la placa a trabajar puede ser de cualquier material y el diámetro de la herramienta que realizará el trabajo también puede cambiar, las condiciones de corte deben ser variables, la variable #506 representa las revoluciones a la cuál debe girar la herramienta y la variable #507 su avance. La definición de variables y operaciones matemáticas se pueden implementar en cualquier parte del programa, pero es recomendable seguir la estructura ilustrada en la Fig. 2.
Definición de variables
Operaciones matemáticas
Solución del problema
Fig. 2 Estructura del programa
Las operaciones matemáticas principales se utilizan para definir otras variables adicionales necesarias para la ejecución del programa e inicializar algunas en un valor predeterminado, no significa que en la solución del problema no se utilicen. El código desarrollado para la solución del problema planteado es el siguiente: Fig. 1 Placa para planeado
V. SOLUCIÓN A continuación se ilustra el programa NC realizado para satisfacer los requerimientos funcionales del problema propuesto. Las variables #501 y #502 determinan el largo (eje X) y el ancho de la placa (ejeY). Dependiendo de estas dimensiones se selecciona el diámetro de la herramienta a ser utilizada, es por esto que se convierte también en una variable y es identificada como #503. Muchas veces el material a ser desbastado no puede ser retirado en una sola pasada, se debe repetir el ciclo a diferentes profundidades. La variable #504 determina la profundidad total a desbastar y la #505 determina el espesor a ser retirado en cada pasada.
:0101(MACRO DE PLANEADO) (Definición de variables) (#501=LONGITUD EJE X EN mm) #501=300. (#502=ANCHO EJE Y EN mm) #502=200. (#503=DIAMETRO HTA EN mm) #503=50. (#504=PROFUNDIDAD TOTAL EN mm) #504=2. (#505=PROFUNDIDAD DE PASADA EN mm) #505=.5 (#506=RPM DE LA HTA) #506=2000 (#507=AVANCE DE LA HTA EN mm/min) #507=800. (Operaciones matemáticas) #100=[#501/2]+[#503/2]+5 #101=[#502/2]-[#503/4]
Manufactura y automatización experimental #105=-#101 #120=#504/#505 #121=FIX[#120] #122=#505*#121 #102=#504-#122 (Solución del problema) G80G40G94G17 /G91G28Z0 /G28X0Y0 G90G54 M6T20 IF[#102NE0]THENGOTO5 #102=#505 N5#103=[#503*3]/4 #106=[#502/2] #107=[#503/2]-2 G0X0.Y0. G43H20Z20.M3S#506 N10G0X#100Y#105 #104=#105 G0Z2.M8 G1Z-#102F50. G1X-#100F#507 G0Z20. N15#104=#104+#103 #108=#106-#104 IF[#502LT#103]THENGOTO20 G0X#100Y#104 G0Z2. G1Z-#102F50. G1X-#100F#507 G0Z20. M01 IF[#108LE#107]THENGOTO20 GOTO15 N20#102=#102+#505 IF[#102GT#504]THENGOTO30 GOTO10 N30G91G28Z0M9 G0X0.Y0. M30
3
% Si bien el programa desarrollado en la empresa Mecanizados CNC se realizó también para una máquina Leadwell, con controlador FANUC, este no es de la misma referencia que el del centro de mecanizado de la Universidad Nacional. Se recomienda estudiar el manual del control específico de cada máquina puesto que pueden existir diferencias.
Por ejemplo, en el control de la máquina de la empresa el condicional IF se expresa IF[#102GT#504]THENGOTO30, en cambio en el de la universidad se expresa como IF[#102GT#504]GOTO30.
•
•
•
VI. CONCLUSIONES En caso de realizar operaciones en piezas con rasgos de manufactura similares es conveniente utilizar macros puesto que se disminuye el tiempo de implementación del trabajo tecnológico. Los programas resultantes de la programación con macros son flexibles, de fácil utilización y de un número de bloques relativamente reducido en comparación con la variedad de piezas que pueden trabajar. Así como en los lenguajes de programación, la potencia de la aplicación depende de la experiencia del programador y pueden realizarse tan completos y funcionales como este lo desee. R EFERENCIAS
[1] Operator’s Manual, FANUC Series 21 – MB, B-62704EN/02, FANUC LTD, 1995.