Como Construir Una Fresadora CNC Casera de 3 Ejes Con Arduino y A4988
Como Construir Una Fresadora CNC Casera de 3 Ejes Con Arduino y A4988
Como Construir Una Fresadora CNC Casera de 3 Ejes Con Arduino y A4988
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!!!
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:
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
Costes
Bueno como supongo que es una pregunta que todos os estareis haciendo aquí dejo la lista de los
precios.
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.
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:
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.
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.
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.
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.
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.
Los pines que vamos a usar de nuestro Arduino son los siguientes:
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.
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
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.
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/
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.
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!!!
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…
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.
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.
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.
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.
Un saludo!!!