lunes, 4 de julio de 2011

fresadora CNC con icaro y linux (parte uno)

Una fresadora es una máquina herramienta utilizada para realizar mecanizados por arranque de viruta mediante el movimiento de una herramienta rotativa de varios filos de corte denominada fresa. En las fresadoras tradicionales, la pieza se desplaza acercando las zonas a mecanizar a la herramienta, permitiendo obtener formas diversas, desde superficies planas a otras más complejas (definición de la wikipedia).
Una fresadora es una maquina muy polivalente, con capacidad de mecanizar una gran variedad de formas con enorme precisión.


fresadora del Instituto técnico artes y oficio melchore lazo de la vega (panamá)

CNC (control numérico computado) es un sistema para control de maquinas herramientas como una fresadora mediante software de computadora. Permite tener la precisión de una fresadora con la posibilidad de automatización que da la computadora.
En este proyecto, vamos a implementar una fresadora CNC de 3 ejes (X, Y, Z) mediante 3 motores paso a paso.
Cada motor PaP esta conectado a una varilla roscada milimétrica (una especie de tornillo de 1 metro de largo sin cabeza), con cada vuelta que de el motor, la varilla girara y moverá una tuerca que esta agarrada a la plataforma, esto hace que la plataforma se mueva 1 milimetro por cada vuelta de la varilla en un sentido o el otro.
Como los motores paso a paso que estamos usando son de impresora, necesitan activar en orden sus 4 bobinas para hacer un paso, y con 50 pasos el motor da una vuelta completa quedando en la misma posición, si calculamos, por cada vuelta completa el motor activa 200 veces sus 4 bobinas para mover la plataforma 1 mm, eso nos da una precisión de 1/200 mm ( 0.005 mm).

Motor PaP conectado a la varilla con rosca milimetrica


Detalle de la varilla unida a la plataforma.

La forma de trabajo de nuestra fresadora consiste en tener la plataforma Y montada sobre la plataforma X y nuestra pieza a mecanizar sobre las dos bases.
De esta forma moviendo X y Y podemos disponer en calquier espacio cartesiano el material a trabajar. En el eje Z va instalado nuestra mecha fresadora para cortar (en realidad puede ir casi cualquier cosa, desde un laser de corte hasta una jeringa para inyectar silicona y hacer una impresora 3d).

Ejes X/Y y su posición en la maquina.

Vista general delo ejes X/Y y los rieles donde van montados

Ya con nuestra maquina armada y operativa, nos falta el software para controlarla, y es ahi donde usaremos ICARO para mover los motores, python para generar la interface grafica y calcular nuestro dibujo, y por ultimo inkscape para generar la imagen vectorial que vamos a fresar.
INKSCAPE es un programa para dibujo de gráficos vectoriales muy usado por los diseñadores graficos, entre sus muchas aplicaciones y posibilidades esta la de exportar nuestro trabajo al formato .PLT (hpgl) un formato estándar desarrollado por HP para controlar sus plotters. los archivos .plt son una linea de texto plano con todas las coordenadas de los puntos que marcan cada vector de nuestro dibujo.
el formato de estos archivos es facil:

todos comienzan con "IN" y despues van los comandos (PU,PD) y las cordenadas x,yterminadno con el caracter ";".

IN;PU 064,60;PD064,90;PU;

"PU" significa levantar el lapiz, "PD" es para bajar y comenzar a dibujar.


Un dibujo echo con inkscape.

Con nuestro archivo .plt listo, pasamos a programar en python usando pygtk + cairo + ICARO.

Primera versión del programa de control escrito en python

El programa dibuja el archivo .plt y como ven sale la imagen espejada, eso es por la forma de trabajo de los plotters, en nuestro caso no es tan importante.






video de prueba de los motores paso a paso
y la interface.