Como Construir Una Fresadora CNC Casera de 3 Ejes Con Arduino y A4988

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 28

Como construir una fresadora CNC casera de 3

ejes con Arduino y A4988 (Parte 1 – Estructura)


Hola, en este artículo y en los sucesivos, vamos a dedicarnos a la construcción de una fresadora
CNC casera, es decir, una máquina controlada por ordenador que es capaz de moldear, gravar,
tallar y fresar todo tipo de materiales de la forma y tamaño que deseemos. ¿qué significa esto?,
pues esto, es ver realizado el sueño de todo aficionado al DIY!!!, ya que puedes crear todas las
piezas que necesites para tus proyectos con un solo click de ratón. Al igual que puedes hacer tus
propias placas PCB o tallar maravillosas esculturas 3D.

Todo es posible con una CNC!!!

Mirad un pequeño ejemplo de un trabajillo que hice el otro día con mi CNC.

Ahora que sabemos cuales son las posibilidades de esta maravillosa máquina, empezemos a
construirla!!!

1. Primer paso – Materiales

Necesitaremos muchos materiales para la realización de este proyecto. Desde electrónica hasta
piezas mecánicas y motores. Ahora voy a nombrar los necesarios para hacer la estructura:

 Madera o metal para la estructura


 3 motores paso a paso de al menos 1.5 g/cm (esto es la fuerza del motor) dependiendo el tamaño
de la CNC
 1 herramienta rotativa
 Varillas roscadas
 Tornillos y tuercas
 Herramientas

¿Qué son motores paso a paso?

El motor paso a paso es un dispositivo que convierte una serie de impulsos eléctricos en
desplazamientos angulares, lo que significa, que es capaz de avanzar una serie de grados (pasos)
dependiendo de la orden que se le de. El motor paso a paso es un motor altamente preciso ya que
su eje gira de 1.8º en 1.8º lo que quiere decir que para hacer 360º debe dar 200 pasos. Esto les
confiere una precisión increíble, la cual transferida a la CNC proveerá de una gran capacidad para
hacer piezas muy pequeñas y delicadas, aunque también se pueden hacer piezas grandes.
Chips A4988

Los A4988 de Pololu son unos drivers


electrónicos que se usan para controlar
motores paso a paso, permiten decidir la
dirección de giro y velocidad de estos. Los
motores, irán conectados a Arduino, que
imagino, ya sabéis perfectamente que es,
si no, en Ikkaro podéis encontrar
información sobre esta placa. No es
necesario que sepamos mucho más sobre
estos chips, pero si queréis profundizar
podéis informaros de todo en la web del
fabricante, y este otro enlace podéis
descargar el datasheet del A4988.

Costes
Bueno como supongo que es una pregunta que todos os estareis haciendo aquí dejo la lista de los
precios.

 3 Chips A4988 – 45 € (15 € cada uno)


 Arduino UNO – 26 € ( ahora el Leonardo sale por 20 € )
 3 Motores paso a paso – 36 € los 3 por ebay
 1 PCB – 5 €
 Madera DM – 30 €
 Fresadora – 50 € ( la mía es de marca pero las hay por 20 € )
 Varillas roscadas y tuercas – 0.50 €
 Fuente ATX – 20 € / 50 € ( yo la saque de un ordenador viejo )

Total – 200 € aprox.

2. Segundo paso – Montaje

Bueno, ahora llega el momento de la verdad, la construcción de la máquina. Os dejo este video
explicativo en el que se enseña de forma general cuales son los rasgos más importantes a la hora de
construir vuestra CNC y como tenéis que hacerlo para que funcione correctamente. Además debajo
del vídeo tenéis una explicación de los pasos más importantes a la hora de montar y cortar las
piezas para la estructura, aunque recomendaría ver el video para que veáis la forma y disposición
de las piezas.

Una vez informados, vamos a detallar algunos pasos:

En primer lugar, vamos a cortar las tablas que formarán el cajón principal de la máquina dentro del
cual se colocará la electrónica y sobre este, la fresadora trabajará los materiales.
Las medidas de este cajón son
totalmente personalizables y
cada uno de vosotros podéis
elegir las medidas de la base,
dependiendo del tamaño de
las piezas que queréis
moldear. Tened en cuenta que
lo que mida el cajón será el
área máxima sobre la cual, la
máquina podrá trabajar. Todas
las medidas de la máquina son
personalizables y podéis usar
este tutorial como guía pero el
tamaño de vuestra CNC es
cosa vuestra.

Una vez hemos construido la base de la máquina, vamos a hacerle unos “raíles” (se aprecian en la
foto superior) para que el cabezal principal pueda rodar hacia delante y hacia atrás. Estas guías son
simplemente dos listones de madera que van pegados los dos lados opuestos del cajón. Al final
debería quedar algo parecido a esto:

Sobre las guías que acabamos de colocar


rodará la sección principal de la máquina,
la cual se moverá en el sentido del eje X, y
sobre esta se encontrará el cabezal que se
mueve en sentido del eje Y y Z. Pero esto
lo veremos un poco más abajo.

Ahora con dos tablones de madera


construimos una especie de estructura en
forma de portería, como se muestra en la
imagen, pero teniendo en cuenta que
sobre la tabla que va en horizontal hay que
hacer unas ranuras para que corran las ruedas del cabezal principal. Esta es la imagen de la
estructura:
Por debajo, la estructura del cabezal, lleva un listón que une las dos paredes para mayor estabilidad
y que permite, que la varilla roscada pase por él para moverlo. (No os asustéis por el cableado, que
ya lo explicaré en el próximo artículo y veréis que fácil).

En esta foto vemos un detalle de las ranuras del cabezal, hay dos, una arriba (la que se ve) y otra en
la parte inferior, para que el cabezal se sujete mejor:
En esta otra imagen se ve con detalle, donde se encuentran las guías del cajón y como encaja en
ellas el cabezal y sus ruedas. Estas, son ruedas de puertas correderas, como menciono en el vídeo.
Las podéis encontrar en cualquier ferretería.

Con lo que llevamos hasta ahora


la máquina debería haber
tomado ya forma. Centrémonos
entonces en el cabezal que es
donde va la fresadora, la cual
sube y baja. Esta es la parte más
complicada de todo el proceso y
esta pieza debe quedar perfecta
para evitar cualquier
movimiento o cabeceo de la
máquina cuando este
funcionando.

Debemos coger tres tablones de


madera y unirlos para formar
una caja de tres paredes, dentro de la cual se colocará la fresadora. Dicha caja deberá llevar dos
tapas, arriba y abajo, la de la parte superior, con un agujero para que el eje del motor pase por ella
y la de la parte inferior, con un orificio para que la varilla roscada encaje y no se salga de su eje de
rotación. Dentro de esta tabla y en dirección vertical, deben ir tres varillas guías como las de la
imagen, para que la pieza central se desplace a lo largo del eje Z, aunque recomiendo dos tablas
para sujetar la fresadora por dos partes y que no cabecee, ya que cuando funcione hará presión
sobre la punta de la fresadora y esta podría desviarse.
En esta otra imagen se puede ver el cabezal totalmente acabado y con la fresadora insertada.

Una vez que toda la estructura está construida procedemos a colocar los motores paso a paso.

La colocación de los motores debe hacerse con cuidado para evitar el cabeceo de estos. Primero
haremos un agujero en cada una de las tablas de una medida adecuada para que pase el eje del
motor. Introducimos los ejes en los orificios y conectamos las varillas roscadas a ellos. La conexión
de la varilla roscada la dejo a vuestra imaginación, aunque mi sistema fue meter en el eje un taco
metálico, de los que se usan para colgar lámparas del techo, estos tienen una entrada roscada y una
lisa, pues metéis el eje en la lisa y la varilla en la rosca. Estas piezas las venden en cualquier
ferretería. Aquí dejo un detalle de la unión del motor a la varilla:
Las varillas roscadas para el eje X las vamos a cortar de la medida que tenga como profundidad el
cajón principal, para el eje Y, las cortamos de la medida entre los dos tablones laterales que
sostienen el cabezal y la del eje Z se corta respecto a la altura de vuestro cabezal.

Todo el cableado y la electrónica, así como la programación de Arduino lo explicaré en los próximos
artículos. Pincha aquí para ir a la siguiente parte del tutorial.

Nos vemos allí!!!


Como hacer una fresadora CNC casera de 3 ejes
(parte 2 – Hadware)
Bienvenidos a la segunda parte del tutorial de como hacer una fresadora CNC casera de 3
ejes. Para los que aun no habeis visto la primera parte del tutorial, aquí os dejo un enlace.

En esta parte vamos a ver como instalar el hadware necesario para controlar la máquina.

Materiales
 3 Chips A4988 Pololu Robotics
 1 Arduino UNO
 1 Fuente alimentación ATX
 1 Ventilador (opcional)
 1 placa PCB
 3 motores paso a paso (elegid el modelo que os apetezca)
 Soldador
 Estaño
 Fundente

Como expliqué en la primera parte del tutorial los chips A4988 de Pololu son unos controladores de
motores paso a paso, que mediante las señales enviadas por Arduino controlarán los motores.
La explicación de como funciona un motor paso a paso está también en el tuto anterior y la podéis
consultar.
Lo primero que vamos ha hacer es plantear como vamos a diseñar la placa PCB, yo compré esta en
dx.com y sobre ella soldé los componentes.
Toda la electrónica debería quedar así:
Aquí otra imagen desde más cerca:

Aquí dejo una foto de la placa PCB sin el ventilador: (Me decidí por cables en vez de pistas, una
chapucilla).
Os dejo una imagen de como deben ir todas las conexiones y os adjunto el archivo de Fritzing
(programa con el que he hecho la imagen) para que os lo descargueis y lo veais más de cerca.
Pinchad aquí para descargar el archivo. En este otro enlace os dejo la web para descargar Fritzing.
Los chips A4988 deben estar conectados como se explica en este vídeo:

La fuente que vamos a utilizar es una ATX (una fuente de ordenador) con la que podremos
alimentar desde los chips hasta los motores y la fresadora. He elegido una ATX ya que es la más
barata y ademas la podéis sacar de un ordenador viejo. Para hacerla funcionar necesitais puentearla
y para ello os dejo este vídeo:

La fuente tiene salidas de diferentes voltajes para poder conectar toda la electrónica a la misma
ATX y así solo usamos una toma de corriente a la pared.

Los voltajes de las diferentes salidas de la fuente se muestran es la siguiente imagen:


Os dejo una descripción de los voltajes del chip (también se ven en el vídeo) y de la utilidad de cada
pin:

 VDD — Entrada de corriente del chip: 3,3 V / 5 V cables naranja o rojo de la ATX. (Podéis elegir entre
ambos voltajes aunque recomiendo 3,3 V)
 GND — Tierra del A4988. Se conecta con la tierra de la ATX, cables negros de la ATX.
 VMOT — Entrada de alimentación para los motores paso a paso. 7 V / 36 V (el voltaje depende del
motor y debe corresponder con el del motor, ya que es este voltaje el que se le pasará al motor
para que se mueva.)
 GND — Es la tierra del motor. Esta debe estar conectada con la tierra de los A4988!!!.
 RESET — Resetea el chip para devolverlo a las condiciones iniciales. Y cambia entre los modos
Stand-bye y Enable.

En esta imagen se ven las conexiones:


IMPORTANTE: Para evitar el mal funcionamiento de la máquina todas las tierras deben estar
conectadas entre sí, es decir, que la tierra de los A4988 debe estar conectada con la de los motores
paso a paso y con la tierra de Arduino. No es problema que los voltajes sean diferentes, aunque el
chip tenga 5 V y el motor 12 V las tierras se pueden interconectar entre sí. Eso sí, esto funciona si la
fuente es una ATX, no he probado si es peligroso con otras fuentes asi que si no usais una ATX, no
conectéis nada entre sí y probad antes. Aunque para mi la mejor opción es una ATX ya que es la más
económica y potente que encontré.

Una vez todos los A4988 esten conectados a la fuente y los motores estén conectados a los A4988,
podemos proceder a conectar los cables de pulsos de Arduino.

Control de los A4988 mediante Arduino


Arduino controlará los chips mediante los pines de salidas digitales. De cada chip, vamos a usar 3
entradas digitales (STEP,DIR y RESET), y por tanto, harán falta, 3 salidas digitales de Arduino.
Cuando arduino envíe un pulso a STEP el motor avanzará un paso. Si DIR recibe señal, el motor
girará en sentido de las agujas del reloj, si no recibe, en sentido contrario. El pin RESET se usa para
resetear el chip.

Los pines que vamos a usar de nuestro Arduino son los siguientes:

 Pines 2, 4 y 7 para el los pines STEP de los A4988


 Pines 3, 5, y 6 para los pines DIR de los chips
 Pines 9, 10, 11 para los pines RESET de nuestros A4988

A continuación os dejo un esquema de las conexiones del chip:


Como se puede observar los pines DIR usan salidas PWM de Arduino, y los demás simplemente
usan salidas normales, por lo tanto no es obligatorio seguir este esquema sino simplemente
conectar a PWM los DIR y los demás a donde os apetezca.
Opcionalmente podemos colocar un ventilador o un disipador a los chips debido a que si el motor
es de más de 1 Amp el chip A4988 se calienta y puede quemarse. Para motores de menos de 1 Amp
esto no es necesario.
La programación de Arduino y de la máquina así como el software necesario para mecanizar piezas
lo veremos en el próximo artículo.
Un saludo!!!
Como hacer una fresadora CNC casera de 3 ejes
(parte 3 – Software)
Hola, bienvenidos a la tercera parte del tutorial de cómo construir una CNC casera de tres ejes. En
esta parte vamos a tratar el software.

Todo el software que se va usar en este tutorial es totalmente gratuito y se puede descargar y
modificar libremente. Todos los programas estan disponibles para Windows y Linux ( a excepción de
Txapu CNC ) el cual debe ser instalado en Linux sin más remedio, por tanto debemos instalar Linux
(Ubuntu es el que recomiendo) en nuestros PCs.

El software es la parte que comunica el ordenador con Arduino. Vamos a usar algunos programas,
que iremos viendo continuación.

En primer lugar voy a explicar el funcionamiento de todo esto.

Nosotros hacemos un dibujo 2D o un objeto 3D usando un software de diseño, vectorial en el caso


de los dibujos 2D, como Inkscape, o en 3D como es el caso de Blender.

Una vez tenemos lo que queremos mecanizar con la máquina, lo pasamos a otro programa que a
partir del dibujo crea un código llamado Código G, el cual tiene todas las instrucciones para que la
máquina se desplace hasta las coordenadas adecuadas para crear la figura o gravado o PCB o lo que
quiera que estéis modelando.

El tercer paso es enviar el código a la máquina, es decir, mandarlo desde el ordenador a Arduino, el
cual lo interpreta gracias al Firmware que lleva en su interior y mueve los motores de la forma
adecuada. Para ello se usa un programa llamado Txapu CNC que ya explicaremos su
funcionamiento.
Comenzemos el tutorial con la explicación de como crear el código G a traves de un archivo .SVG
previamente creado en Inkscape ( la creación del archivo .SVG no viene al caso en este tutorial pero
en youtube hay miles de ejemplos de como dibujar con Inkscape ) al igual podeis hacer el dibujo con

Corel Draw o con Adobe Fl ash o cualquier programa que


permita el diseño vectorial.

El programa que vamos a usar es PyCam, gratuito y disponible para windows y linux. Este software
nos permite pasar todos nuestros dibujos 2D y modelos 3D en código G. De forma muy intuitiva y
sencilla y también tiene un visor en 3D para ver en tiempo real simulaciones de nuestros modelos.

Hagamos una pequeña introducción de como usarlo:

Link de descarga de Pycam: (Para principiantes descargar y ejecutar solo el primer archivo)

http://pycam.sourceforge.net/download.html

Para abrir archivos .SVG debe estar instalados dos programas más, Inkscape y Pstoedit (debajo de la
imagen dejo los links).
En esta imagen se aprecia donde hay que acceder para ubicar los programas una vez los tengamos
instalados.

Link de Inkscape:

http://inkscape.org/download/?lang=es

Link de Pstoedit:

http://www.pstoedit.net/

Lo primero es abrir un archivo nuevo:


Despues seleccionamos la pestaña Task y seleccionamos las opciones deseadas, en mi caso quiero
gravar en una tabla el texto mostrado en pantalla asi que selecciono “Gravure”
Ahora picamos en “Generate Toolpaths” y esperamos a que termine.
Cuando todo este listo vamos a la pestaña “Toolpaths” y allí “Export all” y guardamos el código G
generado donde deseemos guardarlo.
Ahora abramos el archivo de codigo G con Txapu CNC.

Pasemos ahora a enviar el código que acabamos de crear a nuestra CNC.

Para ello vamos a usar Txapu CNC un programa que solo esta disponible para Linux, por tanto como
dije al principio debeis instalarlo, yo recomiendo Ubuntu pues es la distribución de Linux más facil
de usar y con más seguidores. Instalar Ubuntu es muy sencillo y de nuevo en Youtube hay miles de
tutoriales.

Enlace para descargar Txapu CNC

Todo esto se encuentra explicado en este video:

Una vez que Txapu CNC envie el archivo la CNC comenzará a trabajar con él.

En este video podeis ver como se grava en una tabla con la CNC usando Txapu CNC y un modelo
diseñado en Pycam.

Como sabréis aun nos queda la programación de arduino para que se comunique con el ordenador,
esto lo veremos en la última parte del tutorial.
Un saludo y hasta la próxima!!!

Como hacer una fresadora CNC casera de 3 ejes


(parte 4 – Firmware)
Hola, esta es la última parte del tutorial de como construir una CNC casera, espero que muchos de
vosotros tengáis ya la vuestra construida y estéis casi listos para comenzar a fabricar piezas en 2D y
3D.

En esta última parte vamos a ver como programar Arduino, para que, interprete el código G que le
envía el ordenador y mueva los motores paso a paso.

Arduino debe llevar en su interior un Firmware, el cual como he mencionado, actua de intérprete
del Código G. Este firmware se puede descargar de este enlace y ahora veremos como programarlo
para adaptarlo a las necesidades de nuestra máquina como por ejemplo, la velocidad, medidas,
aceleración…

Procedamos a ver como programar el microcontrolador:

En este vídeo tenéis muy bien explicado como programar Arduino aunque también lo explico en
esta guía para que os sea más sencillo comprenderlo.
Bien, una vez descargado el firmware que os he dejado en el enlace, debeis abrirlo con el IDE de
Arduino, que se descarga desde este aquí, en caso de que no lo tengáis instalo ya.

Para abrir el firmware descargado, abrid desde el IDE de Arduino el archivo con este nombre:
“reprap_new_firmware” Todos los demas archivos abrirán automaticamente al abrir este.

Como veréis los archivos se reparten cada uno en una pestaña.

Nosotros solo modificaremos datos en dos de ellas, una de ellas la pestaña “rsteppercontroller” en
la cual debemos modificar el Bitrate. En la imagen podemos ver el amarillo cual es la parte que
debemos cambiar, y en caso de que el valor sea diferente de 19200 debéis cambiarlo a 19200.
Ahora pasemos a la pestaña INIT y en ella haremos las modificaciones de la velocidad, pasos por
vuelta y salidas de los pines digitales de Arduino.

Ajuste de los pasos por milímetro


¿Qué significa esto?, pues son la cantidad necesaria de pasos que debe dar el motor paso a paso
para que la varilla roscada avance 1 mm. Esto es característico de cada varilla y por ello debéis
medirlo vosotros. Haced girar a la varilla y medid cuantas vueltas da, para avanzar 1 mm. La parte
de la imagen que veis de color amarillo es la que debéis modificar. El valor que hay que poner es la
cantidad de vueltas de la varilla multiplicada por 200 que son los pasos que da el motor en una
vuelta.

Nota: Se observan 2 valores, uno para los pasos por pulgada y el otro para los pasos por milimetro.
Las pulgadas podéis dejarlas tal cual, pues no van a influir en el código.
Feedrates
Ahora vamos a mirar los feedrates, es decir, la “velocidad” con la que los A4988 alimetarán a los
motores. Esto, se ajusta dependiendo del motor, hay motores que necesitan 100 y motores que
necesitan 1000, en mi caso, los motores necesitan entre 90 y 250, dependiendo la velocidad a la
que quereis que giren los motores.

¿Como comprobar cual es el Feedrate adecuado para tus motores?

Con Txapu CNC probáis a hacer girar los motores usando el control manual, variando poco a poco el
Feedrate en TxapuCNC, si el motor hace un ruido que parece un avión a reacción, os estáis pasando
un montón con el Feedrate, bajadlo!!!. Si el motor suena como una carraca, no es suficiente,
subidlo!!!.
Pins
En esta parte de la programación del chip, vamos a asignar los pines digitales de Arduino
a los pines de los A4988. Todo esto es tan sencillo como escribir el número del pin
Arduino que queremos asignar al pin del chip.

Por ejemplo, X_STEP_PIN es el pin STEP del Chip A4988 que controle al motor del eje X,
por tanto asignamos el número de pin de Arduino correspondiente a este pin, por
ejemplo el 4, aunque podéis asignar los que queráis, teniendo siempre en cuenta que los
pines PWD son para los pines DIR de los A4988.
Extruders pins
En estas últimas líneas de código, asignaremos los pines para una extrusora, en caso de que usemos
una, ya que este tutorial esta orientado al uso de una fresadora, pero igualmente el usuario puede
decidir si colocar una extrusora en lugar de una fresadora y para eso esta esta parte del código, para
que definais los pines correspondientes a la extrusora. ( Como he dicho antes, en caso de que
queráis poner una ).
Con todo esto, y con mucha pena, aquí, acaba el tutorial de “Como hacer una fresadora CNC casera
de 3 ejes”

Estoy muy contento de haberlo escrito y espero que tanto mis videos como el tutorial le sirvan a
mucha gente.

Os dejo un enlace a mi canal de Youtube, por si tenéis dudas de algo y queréis verlo en video.

Podéis comentar todo lo que queráis y hacer todas las preguntas que queráis que las responderé
encantado, si queréis dejar el correo electrónico, para que os responda por e-mail, dejadlo, si no,
formulad directamente vuestras preguntas en la página de comentarios.

Ha sido todo un placer y hasta la próxima!!!!!!!!

Un saludo!!!

También podría gustarte