You are on page 1of 30

Montar la electrónica

vamos con la parte final, en esta ocasión va ver como configurar Arduino, montar la electrónica, configurar
la máquina quizás se nos haga algo largo, pero es necesario. Así que vamos a ello.

Como comenté en la presentación del proyecto vamos a basar nuestra máquina en arduino uno, es lo más
económico y sencillo que podemos hacer en estos casos.

Aparte de nuestro Arduino Uno, vamos a necesitar los siguientes elementos:

CNC_Shield

CNC Shield —> Está placa, por si sola no hace realmente nada, pero nos va a reducir enormemente el tema
de cablear las cosas, normalmente conectaríamos nuestro arduino, a los drivers y estos a los motores, con un
sinfín de cables. Bueno pues esta placa viene a sustituir ese montón de cables, tiene la posibilidad de
conectar 4 drivers, lo que nos permite usar 4 motores, podemos clonar uno de los ejes, conexión de servo,
etc. Me voy a centrar en las partes que voy a usar, si usamos alguna otra funcionalidad, la veremos cuando
toque.
Driver A4988

Drivers A4988 —> Vamos a necesitar 4, 1 por motor, arduino le dice a estos drivers que es lo que tiene que
tiene que hacer el motor y ellos se encargan de dar suministrar corriente a las 2 bobinas de cada motor, para
que éstos se muevan con la orden de arduino, sí es una explicación muy poco técnica, pero espero que así lo
entienda todo el mundo. Estos drivers llevan un pequeño potenciómentro para configurar la cantidad de
corriente a los motores, luego veremos como podemos configurarlo correctamente. También podemos usar
los DRV8825, hacen exactamente lo mismo, solo que estos últimos permiten usar motores con un amperaje
más alto.

Motores Nema 17 —> Los motores nema 17 son los que


encajan con la estructura que hemos hecho, son motores paso a paso, es decir, pueden girar en fracciones de
vuelta, le podemos decir que gire un 1/4 de vuelta o vuelta en entera, etc, la precisión dependerá del número
de pasos del motor, por lo general son 200 pasos. O lo que es lo mismo, podemos dar una vuelta entera en
pasos de 1,8 grados. Éste es uno de los datos importantes que debemos conocer de nuestros motores. El otro
dato importante es la corriente del motor, como nuestra máquina de serie económica y no está pensada para
mover una gran herramienta, ni fresar materiales muy duros, con los motores de 1,7 amperios será
suficiente, se puede poner de más pero nuestros drivers tiene un limite en la corriente que pueden
suministrar, y aunque funciona, estaríamos desaprovechado esa potencia. Estos datos que necesitáis se
encuentran fácilmente en google poniendo el numero de referencia de vuestro motor, por ejemplo
” 42BYGHW609 datasheet”.

Fuente de Alimentación —> Vamos a necesitar una fuente de Alimentación de 12v, las fuentes que se
suelen vender para las impresoras 3D son una buena opción, tampoco vamos a necesitar nada del otro
mundo. Ahora mismo yo estoy funcionando con una fuente de PC que da los 10 amperios en su salida de
12V. Aunque acabaré poniendo una fuente de éstas que os he comentado ya que es más estética y se puede
colocar fácilmente debajo de nuestra máquina.

También necesitaremos cables para alargar los que vienen con los motores, cable un poco más grueso para la
fuente de alimentación, una cajita para meter toda la electrónica y un ventilador de 12v para refrigerar los
drivers que generan calor y así evitar que se rompan. El tamaño del ventilador y de la caja pues irá un poco
al gusto de cada uno, yo he usado un ventilador de 40x40mm y la caja que voy a usar está impresa en 3D y
la podéis encontrar aquí.

Con el tiempo le iré añadiendo más cosillas pero con esto tenemos lo fundamental, para hacer funcionar
nuestra CNC.
Instalación de Firmware en arduino

Nuestro firmware va a ser Grbl, es fácil de cargar y fácil de utilizar aunque de momento vamos a ver como
se carga en nuestro arduino. Es libre y por lo tanto podemos usarlo libremente, si pinchais en el logo, os
llevará a su web donde podeis encontrar toda la información disponible, eso sí, está en ingles.

Lo primero que tenemos que hacer es descargarlo y para ello nos vamos aquí y una vez dentro su GitHub
pinchamos en clone download y download ZIP
Nos descargará un fichero Zip que debemos descomprimir por ejemplo en nuestro escritorio. Entramos en la
carpeta y copiamos la carpeta que se llama grbl.

NOTA: Para los siguientes pasos debemos tener instalado el IDE de arduino que podéis descargar
Aquí.

Nos vamos a la carpeta Documentos\Arduino\Libraries en nuestro PC y pegamos la carpeta.

Con esto lo que hemos hecho es añadir una librería nueva a nuestro IDE de arduino, ahora al abrirlo ya la
tendremos disponible.

Abrimos nuestro IDE de arduino y conectamos nuestro arduino Uno al PC mediante un cable USB. Y lo
primero que debemos hacer es configurar la tarjeta y el puerto COM de arduino como se ve en las Imágenes,
OJO en el puerto debéis poner el que le haya asignado el PC a vuestra tarjeta.
Ahora debemos abrir el sketch de carga y nos vamos a archivo\ejemplos\grbl\grblUpload, nos abrirá el
sketch y pinchamos en subir
Esperamos a que termine y con esto ya tenemos el firmaware instalado, faltaría configurarlo pero eso lo
veremos un poco más adelante.

CONEXIONES
Antes de conectar nada debemos identificar las bobinas de los motores, por lo general los motores ya traen
conector y el primer par de pines es una bobina y el segundo par la otra. Así que procurad que al comprarlo
traen conector.
En caso de no traer conecto, se lo tendréis que poner y para identificar las bobinas necesitamos la ayuda de
un multímetro. Ponemos el multímetro en comprobación de continuidad vamos comprobado los cables por
pares, si dan continuidad habremos identificado una de nuestras bobinas, el otro par corresponde a la otra
bobina. Y como comenté antes el primer par de pines de nuestro conector será una bobina y los otros dos la
otra.

Nos da igual cual sea la bobina 1 o la 2, lo importante es que quede como en la foto. Podremos conectarlo a
la CNC Shiled de una manera o de otra, que no sé romperá nada, lo que nos puede ocurrir es que nuestros
ejes se muevan en la dirección opuesta a la que queremos, si nos ocurre esto simplemente le damos la vuelta
al conector y listo. Este método es poco científico, lo sé, pero de esta manera intento que perdáis un poco el
miedo a conectar algo mal y de paso aprendéis a invertir la dirección de un eje en caso de que sea necesario.

Otra cosa que debemos hacer con los motores es ponerle un cable suficientemente largo para conectarlo a la
electrónica, el largo dependerá del tamaño de vuestra máquina y de donde vayáis a conectar la electrónica.

Ahora vamos a conectar la CNC Shiel con nuestro arduino y los drivers a4988, simplemente los vamos
pinchado tal y como se ve en las fotos:
Ojo si usamos Drivers DRV8825, se colocan con el potenciomentro orientado hacia arriba, es decir, al
contrarío de como se ve en las fotos.

Antes de conectar los drivers, debemos asegurarnos de que no tenemos conectado ningún jumper en la zona
que va debajo de los drivers, ya que vamos a usar una configuración “FullStep”, es decir que vamos a usar
los 200 pasos de nuestro motor, poniendo Jumpers podríamos aumentar la precisión de nuestro motores con,
lo que se llama micropasos, pero a costa de perder fuerza en nuestros motores. Otro día os explico más cosas
acerca de este tema, pero de momento lo dejamos sin ningún Jumper.
Alguno ya se habrá dado cuenta de que tenemos 3 ejes y 4 motores, en la CNC shiel vereis los ejes X, Y, Z
perfectamente identificados y un cuarto que está marcado como A. Este eje se podría usar de forma
independiente, pero nuestra máquina lleva 2 motores en el eje Y, entonces lo que tenemos que hacer es
clonar éste eje.

En la parte derecha de nuestro CNC Shield veremos una serie de pines, otra vez identificados como X, Y, Z,
para clonar nuestro eje Y debemos poner dos Jumpers, como ya os habréis dado cuenta, en los pines
identificados con la Y. De esta manera lo que hacemos es que nuestros dos motores del eje Y hagan los
mismos movimientos y al mismo tiempo.
Prácticamente ya lo tenemos todo conectado, pero antes de conectar los motores vamos a calibrar los
drivers.

CALIBRAR LOS DRIVERS


Cuando hablamos de calibrar los drivers, estamos hablando de limitar o configurar la corriente correcta para
que nuestro motores funcionen de una manera óptima, no pierdan pasos y evitemos que le llegue demasiada
corriente y se quemen. Entonces lo que debemos hacer es calcular esto.

Para esto debemos conocer como os decía antes la corriente de nuestros motores, como os dije antes esta
información se puede sacar del propio fabricante. Vamos a suponer que nuestros motores soportan 1,7
amperios. También debemos conocer el valor de una de las resistencias de nuestro driver, en concreto las
que se ven en la imagen, casi todas suelen ser de 0.1 Ohmios, pero podemos asegurarnos buscando la hoja
de datos de nuestro driver, una vez más debemos acudir al fabricante.

Una vez conocemos estos datos debemos resolver esta pequeña fórmula que está sacada del fabricante del
chip de nuestro driver y que nos dará el voltaje de referencia indicado para nuestro motor:

Imax = Vref / (8 x Rs)


Donde Imax es la corriente de nuestros motor (1,7 amperios) y Rs (0,1 Ohmios) es la resistencia que os
comentaba antes, como lo que queremos saber es la Vref despejamos y nos queda:

Vref = Imax x 8 x Rs
Si aplicamos los valores de nuestro motor y resistencia nos queda

Vref = 1,7 x 8 x 0.1 o lo que es lo mismo Vref = 1,36 V


Ahora bien, el fabricante del chip A4988 también nos dice que si vamos a utilizar una configuración
“FullStep” como os dije antes, solo necesitamos el 70% de este voltaje, es decir, debemos multiplicar el
resultado anterior por 0.7:

Vref = 1,36 x 0,7 ———> Vref = 0,952 V o lo que es lo mismo 952 mV

Sí el tema es algo complicado, pero es necesario. Si os quedan dudas os dejo este enlace a un vídeo que lo
explica con más detalle y además también explica la formula a seguir si usamos drivers DRV8825
Pues una vez tenemos este dato vamos a necesitar de nuevo el multímetro, esta vez debemos ponerlo en la
posición para medir tensión continua y asegurarnos de que estamos midiendo en mV.

Conectamos el arduino por usb a nuestro PC y debemos medir tensión entre los puntos marcados en la foto,
con un destornillador pequeño vamos moviendo el potenciometro hasta ponerlo en el valor que calculamos
antes.

Como puede ser un poco rollo, medir, calibrar, volver a medir y así hasta dar con el valor exacto podéis
ayudaros de unos “cocodrilos”, conectándolos a los bornes del multímetro por un extremo y por el otro, el
positivo a nuestro destornillador y el negativo a cualquier GND de la CNC Shield. De esta manera mientras
vamos moviendo el potenciómetro vemos el valor en el multímetro en tiempo real. Hacemos lo mismo con
nuestros 4 Drivers.
CONECTAR MOTORES
Conectar los motores no es ningún misterio, veremos a la derecha de cada driver una fila de 4 pins. Esto es
el conector para cada uno de los motores. Vamos conectando cada motor den su eje correspondiente,
recordad que hemos clonado el eje Y, por lo tanto en el conector identificado como A, debemos conectar el
segundo motor de nuestro eje Y.
Como os comenté en apartados anteriores, se pueden conectar de dos maneras. Si los conectamos al revés,
NO se va romper nada, ni vamos a quemar nada, simplemente cambiaremos el sentido del movimiento de
nuestro eje, si vemos que al mover un eje a la derecha se mueve a la izquierda, hay que darle la vuelta a ese
conector. Por eso cuando probemos si todo se mueve lo haremos en pequeños pasos, para evitar se desplace
hacia donde no queremos. Teniendo especial cuidado en el eje Y ya que tiene 2 motores.

Un truco para evitar problemas es seguir los colores de cables los conectamos todos siguiendo el mismo
orden, de esta manera todos se moverán igual.

CONFIGURACIÓN Y SOFTWARE
A estas alturas ya podemos decir que tenemos una máquina CNC, pero como toda máquina, necesita un
software que la controle o que le diga que es lo que tiene hacer.

En esta ocasión, vamos usar Universal Gcode Sender, es un software libre y por sus caracteristicas creo es
ideal para iniciarse en este mundo de las CNC. Es sencillo de usar, no tiene un aspecto visual muy
desarrollado, pero es precisamente eso lo que lo hace tan fácil de usar. Además es completamente
compatible con el firmware GRBL que hemos instalado en nuestro arduino.

NOTA: Para poder usar este software es necesario tener instalado Java.
Para descargarlo nos vamos a su página, entramos en descargas y nos descargamos la versión 1.0.9, hay una
superior pero todavía está en pruebas así que nos vamos a centrar en esta.

Nos descargará un fichero Zip, que descomprimimos en una carpeta de nuestro escritorio, ejemplo.

Para abrirlo debemos ejecutar el archivo start-windows.bat si estamos en windows o el


universalgcodesender.jar desde linux o mac. Se nos debe abrir una ventana como esta.

Explicar todas las parte de UGS, me llevaría demasiado tiempo así que de momento me voy a centrar en
aquellas partes que necesitamos para poder hacer funcionar nuestra máquina. Pero en la wiki de su web
podéis encontrar todo lo necesario.

Conectamos Arduino al PC por USB y donde pone Port debemos poner el puerto de nuestro arduino (será el
mismo que cuando instalamos el firmware) y en Baud lo ponemos a 115200 y le damos a Open, para que
conecte con nuestros arduino. En la consola nos indicará que está conectado.
Ahora tenemos que configurar algunos parámetros de nuestra máquina, pero antes debemos conocer los
pasos que tiene dar nuestro motor para recorrer un milímetro y esto se saca conociendo 2 datos.

El primero dato es lo pasos por vuelta que tiene nuestro motor, esto lo debemos sacar una vez más de la hoja
de datos de nuestro fabricante. Por lo general el fabricante nos indica el angulo que recorre el motor en cada
paso, suele ser 1,8 grados por paso; Una vuelta completa son 360 grados. Dividimos:
360 grados de la vuelta completa / 1,8 grados cada vuelta = 200 PASOS por vuelta
El otro dato que necesitamos conocer es cuanta distancia va a recorrer nuestro husillo cuando de una vuelta
completa, una vez más debemos ir al vendedor o fabricante para que nos de este dato. pero por lo general los
husillos suelen ser de paso 2 y recorren 8mm en cada vuelta.

Esto quiere decir que nuestro motor no tiene que dar una vuelta completa para recorrer 1mm, dividimos de
nuevo:

200 paso por vuelta del motor / 8 mm que recorre el husillo = 25 pasos por mm
Lo que conseguimos con los husillos es que la maquina sea algo más rápida.

Teniendo en cuenta esto, podéis usar otro tipo de husillos no esta restringido a usar husillo de paso 2.

Ahora si estamos listos para configurar nuestra máquina. Vamos a linea de comandos y escribimos $$ y
presionamos “enter”, esto nos dará la lista de todos los parámetros configurables de nuestro CNC.

Como os dije antes, solo me voy a centrar de momento en los elementos más básicos para hacer funcionar
nuestro CNC, que son los pasos/mm de cada eje y la velocidad.

$100 son los pasos/mm del eje X

$101 son los pasos/mm del eje Y

$102 son los pasos/mm del eje Z

Para configurarlo escribimos de nuevo en la linea de comandos $100=25 y presionamos “enter”, con esto
hemos cambiado los pasos/mm de nuestro eje X, repetimos el proceso con el resto.
Si volvemos a ejecutar $$ veremos que los datos han cambiado y ya tienen la configuración correcta.

La velocidad de nuestros ejes no la vamos a cambiar, es mejor empezar con velocidad de 200mm/min para
probar pero para que podáis hacer pruebas los parámetros $110, $111 y$112 hacen referencia a la velocidad
de los Ejes X,Y y Z respectivamente.

Si queremos cambiarlos, se haría de la misma manera que hemos los pasos/mm de cada eje.

Se pueden configurar más cosas y las veremos más adelante, pero esto ya está siendo demasiado largo. Pero
las veremos con más calma más adelante.

Ya estamos listos para encenderla

CONEXIÓN Y PRUEBA DE MOVIMIENTO


Lo primero que vamos a hacer es conectar la fuente de alimentación a nuestra CNC Shield, como estoy
usando una fuente de PC lo que he hecho es coger un cable adaptador IDE hembra y me he quedado con los
cables Amarillo y negro que son los que nos dan 12V, he conectado el cable amarillo a positivo y el negro a
GND. Lo veréis más claro en las fotos. En este conector también podemos conectar el ventilador para
refrigerar los drivers A4988.
Ahora sí volvemos a conectar el arduino al PC, conectamos nuestras fuente de alimentación al conector que
le hemos puesto y arrancamos de nuevo Universal Gcode Sender.

Debemos abrir la conexión de nuevo, el procedimiento es el mismo que seguimos en los pasos anteriores
cuando configuramos los paramentos de nuestra máquina. Una vez abierta la conexión nos vamos a la
pestaña Machine Control y de momento nos fijamos en los botones que tenemos que a la derecha.
Aquí lo que tenemos son unos botones que nos permiten mover la máquina, es decir si pulsamos X+, el eje
X se moverá hacia la derecha, si pulsamos Y+ se moverá hacia adelante y si pulsamos Z+ el eje Z subirá.
Hará Justo lo contrario su pulsamos en los botones marcados con un -.

Donde pone Step size, lo vamos a dejar a 1, esto quiere decir que se moverá 1 mm cada vez que pulsemos
un botón en la dirección elegida.

Es mejor hacerlo en movimientos pequeños ya que estamos probando si se mueve de manera correcta, si
vemos que algún eje no se mueve en la dirección será por que hemos conectado el motor al revés en la CNC
Shield. Si ha sido así, apagamos todo, le damos la vuelta al conector y volvemos a probar.
Si todo ha ido bien ya tenemos nuestra CNC lista para el trabajo.

En la próxima entrada veremos como poner herramienta Dremel, configurar el Cero de nuestra CNC y como
Cargar un archivo Gcode para verla funcionando.

 Hola, tengo el GRBL en la placa Arduino UNO.


Instalo el Universal Gcode Sender ver. 1.0.9
En éste último pongo el puerto de mi placa y pongo la velocidad en 115200
Me conecto con el puerto sin problemas
Pongo $$ en la línea de comandos y me sale el siguiente error:
Grbl has not finished booting
Entiendo que no ha terminado de arrancar el programa, sin embargo
cuando lo subí me dió el OK
Algo va mal y permanece sólo encendido el led verde c13
¿intuyes que puede pasar?
gracias

No sé que versión de grbl tienes. Pero es la velocidad seguro. Prueba con varias hasta que inicie.
Saludos

Vale, sólo me conecta a 9600 Baudios


¿podrá funcionar a esa velocidad?
El Gcode Sender me da OK

Si, te va a funcionar imagino que has puesto grbl 0.9 y de ahí esa velocidad. A efectos prácticos y
con respecto a mis tutos publicados creo que solo cambia la velocidad.

Sigo con problemas


En la consola del gcode sender solo salen los parámetros hasta el $22
Y me da error si meto el $100
No sé que hago mal

Bueno igual es culpa mía y cambian más cosas. Porque no instalas en arduino
grbl 1.1 que es el he usado yo

Bueno, srferrete
Una vez descansado he conseguido que me funcione todo.
Los motores se mueven bien
Muchísimas gracias por tu gran ayuda.
Tenías razón, el problema era la versión del GRBL
seguiré con el montaje
Por cierto, me gustaría mandarte unas fotos de mi cnc
Saludos

Hola,
Tengo un problema montando la electrónica del proyecto.
Tengo un Arduino UNO original, con CNC shield y drivers DRV8825 (también tengo los A4988).
Los motores que tengo son NEMA 17 de 2,5A
Estos:
https://store.bq.com/es/kit-motores-impresora-3d-1m
Calibro los drivers, pongo en la shield los jumpers para replicar el eje \”Y\” en el \”A\”, subo el sketch de
GRBL al arduino (grbl 0.9j) y abro el Universal Gcode Sender (version 1.0.9)

Pongo estos valores (para empezar a probar):

$100=25.000 (x, step/mm)


$101=25.000 (y, step/mm)
$102=25.000 (z, step/mm)
$110=200.000 (x max rate, mm/min)
$111=200.000 (y max rate, mm/min)
$112=200.000 (z max rate, mm/min)
$120=200.000 (x accel, mm/sec^2)
$121=200.000 (y accel, mm/sec^2)
$122=200.000 (z accel, mm/sec^2)
$130=200.000 (x max travel, mm)
$131=200.000 (y max travel, mm)
$132=200.000 (z max travel, mm)

Y al probar sólo se mueve el motor del eje Y.


He probado con varios drivers y el resultado es el mismo.
Estoy un poco perdido.
¿Puedes ayudarme?
Saludos!

Si no he entendido mal de los 2 motores del eje Y solo se mueve 1? Revisa que hayas puesto los 2
jumpers para clonar los pines de step y dir. que tienes bien identificadas las bobinas del motor que no
se mueve y que ese driver está bien, pon uno que estés seguro que funciona.

Ojo al colocar los drivers que llevan posición y no se colocan igual los drv8825 que los a4988

Gracias por responder!


Me temo que el problema no es que de los dos motores del eje Y sólo se mueva uno.
Sino que de todos los motores sólo se mueve uno (el del eje Y).

He comprobado que los jumpers para replicar el eje Y en el A están bien puestos.
De todas formas también he probado a quitarlos y los demás ejes (X y Z) siguen sin moverse.

He comprobado y calibrado los drivers (he tenido en cuenta que se ponen al revés los
drv8825 que los a4988, y que se calibran de forma diferente y con diferentes valores en las
fórmulas) y el resultado es el mismo con los a4988 que con los drv8825.
Al probar con los drv8825 he probado también a cambiar de sitio los drivers (el que estaba en
Y ponerlo en X, el que estaba en Z pornelo en Y,…..) y el resultado es el mismo: sólo se
mueve el motor de Y.
He hecho la misma prueba con los drivers a4988 con idéntico resultado.

He probado también con otro Arduino UNO (original) que tenía en casa y más de lo mismo.

los motores que no se mueven hacen algún ruido? o amago de moverse. Si todas las
pruebas que has hecho son correctas solo se me ocurre que pueda fallar por dos
razones.

1 – los motores están mal conectados, las bobinas no van donde deben. o están
rotos(que lo dudo).

2 – Problema con la fuente de alimentación.


mándame alguna foto del montaje a ver si te puedo ayudar contacto@srferrete.es

Misterio resuelto!
Era la shield!!!!!

Tenía en casa otra shield y ha sido probar con ella y funcionar todos los ejes a
la primera!
No sé por qué no lo he probado antes.

Muchísimas gracias por estar al quite!

1. dgferrete dice:

enero 31, 2018 a las 10:49 am

probablemente los condensadores de la shield están quemados. Si los cambias


puedes darle nueva vida esa shield.

Me alegro.

2. José Miguel dice:

junio 27, 2018 a las 5:27 pm

Hola, tengo instalado en un Arduino Uno Grbl 1.1f y cuando mando el gcode
con UGS 1.0.9 todo vuela en la pantalla y detrás de cada línea de comandos
me dice error 9. Pongo arduino con Grbl 0.9 y funciona . Podrías ayudarme.
Gracias
He seguido todos tus pasos pero nada

Hola, ¿tienes en thingiverse la pieza para acoplar la dremel?


Es la que uso y no sabia como acoplarla a la CNC que he hecho.
Gracias
Manuel

febrero 4, 2018 a las 7:51 am

hola, me imagino que has puesto 2 motores en el eje Y para poder cargar con mas fuerza de arrastre usando
unos motores que irian forzados con el peso de dicho eje.
como puedo calcular la diferencia de fuerzaen el eje, usando un solo motor y usando 2 motores?

He comprado por error lo NEMA 17 0.4A de los mas finos y no creo que uno solo funcionaria para mover el
eje X con todo y spindle

He visto CNC con un solo motor en el centro del eje Y el cual arrastra todo el el peso de los ejes X y
Z, pero tu CNC usa 2 motores en los extremos del eje Y para el arrastre de dichos ejes.

Mi pregunta es si usar 2 motores divide el esfuerzo de arrastre y como puedo calcular el peso
maximo que pueden tener los ejes X y Z para poder arrastrarlo con un solo motor y el peso maximo
para poder arrastrarlo con 2 motores.

Que pasaria si le pongo 3 motores? (se divide el esfuerzo entre 3?)

quiero usar:
uno o dos (depende) husillos de 12mm antibackslash aprox 750mm de largo
las barras lineales de 16mm (una por lado)
los motores son 28Ncm Nema 17 Stepper Motor 0.4A 1.8° 4Wire Cable For 3D printer CNC Reprap

espero respuesta, gracias

hola, ya arme y monte mi cnc, pero el motor del eje y hace muchisimo ruido, el del eje x y z funcionan bien,
todos estan configurados de igual forma por que son iguales. que puede ser?
tambien noto que al cambiar el parametro de velocidad en el universal g code sender version 2.0 , la
velocidad de los motoroes no cambia.

un motor del eje Y o los dos?

Hola, ya he armado toda la electrónica compuesta por:


– Fuente de pc 12v 15a
– Arduino chino
– CNC Shield
– Drivers: A4988
– Motores: NEMA 17 1.7a
He seguido las instrucciones y sigo en la misma situación después de tantos intentos.
Mi problema es que no funciona nada, ya he probado instalando de nuevo el firmware GRBL, Universal
Gcode Sender, he cambiado y vuelto desde cero todos los parámetros de GRBL, he cambiando los A4988
por DRV8825 teniendo en cuenta los Vref correspondientes a cada uno, he comprado otra CNC Shield,
también verifique la posición de las bobinas y hasta los motores en el caso de que estén quemados. En fin
creo que probé todo y no encontré la solución.
Señor ferrete si no le seria molestia, podría ayudarme? Muchas gracias

Tienes que ser un poco más concreto, me dices todo lo que has revisado pero no cual es el problema.

HOLA, BUENAS A TODOS.


Voy a empezar un proyecto con arduino.
una cnc con maquina de proxxon mf70.
mi idea , es un aruino uno r3. la shield v3 para dicha arduino. driver popolu drv8825 , motores paso a paso
nema 17 de 1,7A minimo y 2A maximo y fuente de alimentacion 12v 20A 200w, para ir sobrado.
mis preguntas.
poner final de carrera , los de arduino., los hta3d,
y el tema del rele de arranque del motor.

Ese es mi problema que no me funciona nada jajaja te comenté mis soluciones a este problema pero ninguna
funcionó osea que todo seguía sin funcionar, quizás usted sepa alguna solución o se le ocurra, que se me
haya pasado, para ayudarme. Gracias

Pero no funciona nada que significa? no se conecta arduino con el PC, no tienes corriente,se
enciende pero los motores no se mueven, no se conecta, no sé algo concreto, con los datos que das es
imposible ayudarte.

Ya he encontrado la solución. El problema era en la versión del grbl que había cargado en
aurduino, le cargue la versión 8.0 y anduvo todo de maravilla. Muchas gracias igualmente.

Hola, he modificado la CNCshield V3, para poder utilizar los finales de carrera y el control de la velocidad
del motor de la dremel.
Esto sólo funciona a partir de la versión 0.9i de GRBL,
Ademas estoy intentando usar el CNC Control V 2.4 que está genial. Y también necesita el GRBL 0.9
Pero soy incapaz de subirlo al Arduino. La única versión 0.9i que encuentro me da error de compilación.
¿Qué puedo hacer?
Por ahí parece que todo el mundo utiliza el GRBL 0.9i
¿cómo lo habrán hecho?

No sé que error te dá, pero para usar el control de velocidad “en condiciones” la versión 1.1 de
GRBL. El problema con esto es que esta versión cambia algunos pines en arduino y puede crear en
alguna confusión con CNC_shield V3.

por ejemplo, en esta versión, el pin 11 de arduino lo usa como señal PWM para controlar la
velocidad del spindle. Que pasa? que es te pin en el cnc shield es el pin de limite Z y el limite Z pasa
a Spindle enable.

Voy a publicar ahora mismo, el tema de los finales de carrera a ver si te aclara un poco más.

Muchas gracias. Me expliqué mal. Quería montar la versión 0.9 para ver si me funcionaba el
CNC Control. Y lo que no conseguía era cargarlo en el arduino. Me daba error de
compilación.
Has probado el CNC Control? Es un programa muy bonito y muy práctico. En su apartado
grbl permite hacer cambios fácilmente.
No me deja modificar esos cambios y como en el manual dice que está hecho para el grbl 0.9,
quería probar si ese era el problema.

Si lo he probado, de hecho ha sido esta semana, funciona con GRBL 1.1 pero es un
programa que no me termina de gustar del todo, es bastante amigable a la vista y
sencillo de usar. Pero le faltan algunas opciones que necesito.

Hola amigo, quiero hacer un CNC un poco más grande que el tuyo lo utilizaré para cortar lámina con un
plasma, decidí colocarle motores nema 23 ¿Crees que con estos motores pueda utilizar los mismos
controladores y el Arduino?
Cabe destacar que no se mucho de electrónica

Hola sr. Ferrete hace poco lo estoy siguiendo y me exploto la emocion, las posibilidades de hacer, con su
cnc. Soy de mexio michoacan y pues en cua to a materiales estoy economisando mucho y encontre unos
motores a paso en un lugar dode venden pedacera de electonicos, encontre motores de varios modelos. La
pregunta es ¿si encuentro motores a paso con las mismas eapecificasiones que las del nomu 17 me serviran?
Y ya que soy un principiante me gustaria saber si conecta do todo el cerebro conectados tambien los motores
a la fuente de poder de me va a funcionar bien sin riesgo? Que debo de sumar para que me de los 12v de
salida de la fuente de poder? Si no me e sido claro por favor digame, y si pudiera respo der lo.mas rapido
posible que me muero de la emocion por comprar todo y empezarla

HOLA sr. ferrete creo que se borro el comentario anterior quería saber si el motor nemu 17 es un modelo
único? lo que pasa es que estoy ahorrando en materiales y encontré motores a paso con especificaciones
iguales me servirían? y la suma de todos los componentes me tienen que dar 12v para la fuente de poder con
salida 12v? y que tengo que sumar para eso? soy principiante pero la verdad estoy muy emocionado e
impaciente por empezrla.

He buscado motores pero solo he encontrado de 5 cables lo que lo hace unipolares, se pueden hacer bipolare
y funcio ar igual? Y que otro voltaje debe manejar para que fncione

Snor ferrete tengo una pregunta, donde se conecta el ventilador?

el ventilador va a la corriente directamente, rojo al positivo negro al negativo


Una pregunta mas señor ferrete justo hoy he conebsado a probar los motores y tengo el pro lema que no
puedo hacer que se mueva, ninguno se mueve ni hace ruido,
Tengo tres posibles causas:
1) los controladores grbl, el universal g code y arduino para cargar los controladores a las librerias, no son
compatibles entre si (recomebdacion por favor)
2)utilizo por el momento una lap con sistema windous xp, solo le instale el java 7 (el sistema operativo
podria estar opsoleto)
3) he echo mal el calculo para los driver A4988, con motores nema 17 1.4 A, la formula me sale a 1.2 que
multiplico x .8 (80%de la corriente) recomendado por el vendedor(estoy utilizando 1/2 pasos) que
recomendacion me das? Ayudeme sr ferrete le estoy poniendo todas mis ganas a este proyecto

Comienza conectando un solo motor, tiene pinta de que hay algo mal conectado o alimentación
insuficiente.

Saludos sr Ferrete, estoy construyendo una fresadora CNC con Arduino Mega, tarjeta ramps 1.4 y drivers TI
DRV 8825….se presenta un problema con los motores paso a paso no se ponen en movimiento, empleo
Arduino 1.8.4 y universal gcode sender 1.0.9 y el grbl 0.8C, he consultado varias páginas y he tomado en
cuenta los diferentes parámetros para la configuración, cuando activo alguno de los motores desde el control
de máquina los mismos no se mueven aunque el panel donde se observa la posición de la máquina refleja
movimientos, he probado con motores de Nema 23 de 2 y 2,5 amper previo configuración de los respectivos
drivers y no hay respuesta, por favor orienteme que hacer…….

Para empezar, grbl no es compatible con arduino Mega-. Se que hay versiones de terceros para Mega
pero no se como funcionan. Otra cosa es que esa versión de GRBL es bastante antigua.

en cuanto a electrónica, con que fuente estás alimentando la ramps?

Saludos amigo Ferrete, gracias por tu rauda repuesta,…….estoy empleando una fuente ATX
450 watts, investigue previamente ante de adquirir el Arduino Mega y existen muchos
proyectos de CNC con esta plataforma; seguiré investigando, ahora bien que GRBL
recomiendas ?……y muchas gracias

Saludos sr Ferrete, quería consultarle acerca de la calibración de los driver en el caso de usar micropasos de
1/4 la formula de la corriente por que valor de % tendría que multiplicarse? … muchas gracias.

Si usas micropasos hay que usar el 100% y no el 70%

aqui de nuevo sr ferrete, ya intente de todo, verifique que estubieran bien ubicados los cables de cada motor
ya queno importa el orden mientras esten enparejado(A.A.B.B), ya intente con un motor con un driver a 1.12
pero sigue sin funcionar, tengo la cnc shiel v3, con el grbl 0.9j eso tendra algo que ver?

yo adquirí una cnc láser china funcionaba bien hasta que de repente se apago solo quedo funcionando el
ventilador y la bomba de agua me comunique con mi proveedor y me dijo que mirara si era el fusible si
estaba quemado avía que cambiarlo lo cambie pero aun así la maquina no prende volví a comunicarme con
el y no me respondió mas y ya no se que aser voy a cumplir un año así y ya tengo los nervios de punta
ustedes podrían ayudarme o darme un consejo ante mano gracias

Una duda mas señor ferrete, en la cnc shiel en medio del ehe X y Y hay un foquito , podria decirme si es un
fusible?, porqye si lo es mi placa cnc no tiene contunuidad ahi, otra en los primeros comentarios le
mensionaron que el problema era la shiel y menciono que era buena idea cambiar los transistores? Como
puedo saber qye transistores son los correctos para mi cnc?

Buenas Sr Ferrete, ante todo gracias por tus tutoriales y por dedicarnos tu tiempo, me estoy fabricando la cnc
y se me a ocurrido una idea que no se si será factible, es la de usar el montaje de la cnc también para la cnc
láser, lo digo por si la parte mecánica no es la apropiada, ya se que tendría que usar dos partes electrónicas
por separado y conmutar las señales a los motores a una placa u otra, respeto a la parte del cabezal usare el
sistema de la Makita y para el láser hacer un acople e insertarlo en dicho cabezal, así tendría un dos en uno,
como ves mi teoría?, (espero haberme explicado bien).
Gracias por todo y un cordial saludo

Te has explicado bien, pero no es una idea que me guste, yo opino que cada máquina para lo suyo,
aunque sean parecidas, no funcionan igual y eso puede generar problemas.

Hola, de nuevo me surge un problema


Estoy trabajando muy bien con mi CNC pero hay algo que me intriga y es que nunca me aparecen los
valores de las coordenadas en el recuadro correspondiente del Universal Code Sender.
y otra cosa,
¿has probado la nueva Plataforma del Universal Code Sender?
Saludos

Si no recuerdo mal tienes que buscar en las opciones de grbl, para activarlo… no recuerdo cual es
por que me aparcen por defecto.

Bueno, lo comprobé, es el parámetro 10 y, efectivamente, tenía por defecto el 3, que se corresponde con el
1+2, o sea, posición de la máquina y posición de trabajo.
Y aún así no aparecen en pantalla.
Así que sigo igual. Tiene que ser otra cosa.
Ya no se que mirar.
Sigo confiando en tu sabiduria
Gracias por ser tan paciente

Buenas tardes. Para empezar un abrazo Sr. Ferrete por el gran trabajo y las horas que te dejas en este mundo.
Yo he empezado hace poco y me ilusiona un montón. Tengo ya mi impresora 3d, que la compre
despedazada y poco a poco la fui montando. Ahora ya he montado la cnc que proponías, con husillos de 8 y
varillas también de 8 mm. Después de varios problemillas ya esta todo en marcha, pero mi pregunta es la
siguiente:
Toda la maquina cuando esta en marcha hace un ruido espectacular, es normal. O tendría que ir suave y sin
ruido, como la impresora 3d.
Un saludo

Hola Sr Ferrete, gracias por la respuesta, la idea era por el tema de espacio, mi habitación empieza a estar
saturada, y puestos a pedir, nos podrías asesorar en que fresas comprar? la verdad es que e estado mirando
fresas y ando un poco perdido sería para la Makita y el material pcb y madera y si hiciera falta algún acople.
Gracias por tu tiempo y paciencia

tengo un problema: mi cnc laser anda espectacular. esta armada con un arduino 1 con el shield y esto anda
bien pero una vez que mando a imprimir arranca pero a mitad de trabajo se para y no anda mas. que podra
ser.

Saludos amigos, Espero que me puedan ayudar. Construí una CNC casera que usa Arruinó Uno, CNC Shield
v3 y 3 motores paso a paso Nena 23 de 1.8 amo. Le suplo 12V. Esa configuración es nueva pues antes tenía
un controlador de 3 A4988 hecho por mi. Al cambiar al Shield me surge que los motores no se mueven. Se
conectan, pues las varillas no se mueven libremente. Al enviarles señal con Code Sender solo dan un paso.
A veces en una dirección y otras veces en dirección opuesta. Vref = .9v. Que pasará con mi jueguete nuevo?
GRACIAS

Hola no se si pueda ayudarme todo iba de maravilla apenas estaba calibrando las dimensiones de dibujo.
pero ya habia logrado mandar gcode y dibujarlo. tengo Arduino Uno (chino) Easydrivers 4.4(estos se
calientan demasiado)
Motores NEMA 17
fuente de 12 V 1.8A (tambien lo estuve usando con una fuente de (0.45A)
el problema es que de la nada los motores ya no se movieron ni el eje X ni Y. cuando mando el comando
solo hacen el intento de moverse pero es como si estuvieran trabados. Repito no moví nada en la
configuración. Tambien ya hice la prueba del LED en los conectores del motor y si manda el pulso al LED.
Que podrá ser?

Con esa fuente dudo que puedas mover los motores, si solo uno de tus motores llega a los 1.8A con
0,45 el motor ni se inmuta

buenas noches, estoy montando mi primera cnc, despues de mucho esfuerzo y dedicacion tengo la estructura
trabajo con arduino driver 8825 correas dentadas de paso 2.5 en eje X y en en el eje Y en el eje Z tengo un
tornillo helicoidal, conecto todo y abro el universal gcode sender la maquina se mueve en todos los sentidos
segun los botones del programa, izquierda, derecha, adelante, hacia atrás, baja y sube hasta este punto todo
se ve muy normal, por cierto configure los pasos de X, Y en 80 y Z en 50, configuro en el grbl para que
trabaje en milimetros, el diseño o codigo G generado con inkscape elaborado en milimetros, entonces viene
el gran dolor de cabeza que no me deja ni dormir mi maquina hace movimientos muy exagerados supongo
que el sistema esta tomando algo en pulgadas no puedo hacer que trabaje en milimetros espero su
comentario al respecto y gracias por sus aportes !!!

Es por culpa del inkScape, desinstalalo y borra todas las carpetas que deje… una vez hecho esto lo
vuelves a instalar.

Enhorabuena por tu trabajo es realmente impresionante y a la vez muy instructivo. He montado una CNC
láser con 3 motores Nema 17, CNC Shield V 3.00, Arduino UNO, GRBL 1.1 y un láser de 500 mW. Tengo
dos pequeños problemas, el primero es que cuando ejecuto los comandos M3 y/o M5 en el programa “Laser
gbrl” el láser no se enciende ni se apaga; No hace nada, excepto cuando envío la imagen a la maquina y esta
si enciende el láser para empezar el proceso de grabado . Otra cosita más, creo que es por la poca potencia
del láser (500 mW) no llega a grabar en madera, pero si lo hace en madera que este pintada en blanco.

Gracias por tus aportes, saludos !!

Los comandos M5 y M3 no funcionan a no ser que la máquina se mueva, es una medida de


seguridad. Y con tan poquita potencia para quemar en madera debes bajar la velocidad para dejar al
l´´aser que haga lo suyo.

Excelente tutorial. Yo ya tengo toda la electrónica comprada pero mi idea es hacer una caja donde conectaré
los motores y los finales de carrera. Dentro de la caja montaría el arduino, la cnc shield, los conectores y un
ventilador. Mi objetivo es que pueda utilizar la caja tanto para controlar una cnc, como para controlar un rail
fotográfico, etc. Pero tengo algunas dudas y agradecería la ayuda:

1) ¿Es posible añadir un display? Es que una vez colocada la cnc sobre el arduino, no veo la manera de
conectar una lcd para poder modificar el comportamiento de los motores.

2) ¿Es posible alimentar todo el sistema con una única fuente de alimentación? En casa no tendría problema
con una fuente de alimentación pero en el campo tendría que utilizar una LIPO.

Gracias de nuevo.

Hola amigos, me conseguí un motor de código 42D2058-01, pero no se cuales son sus características
(amperaje, voltaje, torque, etc) , si me pueden ayudar mil gracias desde ya.

excelente tutorial, tengo una cnc que recien termino de armar con arduino uno y driver a4988 y unos
motores nema 17 de 1.68 de alto torque, el problema que tengo es que cuando hago los movimientos de
gcodesender desde la parte de machine control se muee bien y sin ningun problema pero cuando cargo el
archivo la maquina se empieza a trabar y a hacer mucho ruido. desde ya agradeceria de su ayuda

Hola hoy probé los motores fuera de la estructura del CNC y cuando movía el eje Y se movian 3 motores,
que problema puede ser? desde ya muchas gracias.

por favor necesito la respuesta de alguien, ya tengo la maquina armada, y cuando hago funcionar los
ejes y o z se mueven los 3 motores al mismo tiempo, (los dos del eje y, y el del eje z ) simplemente
no se si es problema de la cnc shield, o de la configuracion en mi pc, desde y muchas gracias.

hola saludos para todos


para empezar e construido una cnc casera en metal, aluminio y hierro, utilizo el programa Candle v1.1.7
con GRBL 1.1F o el GRBL 0.9j que funciona muy bien, les recomiendo el programa, mi problema es que
cuando estoy frezando una pieza el eje Z empieza hacer cosas raras como subir y baja mas de lo normal
utilizo arduino uno r3 con la CNC Shield V 3.00 y los A4988 y motores nema 14 de 1,4 A de 5,5 V la fuente
de PC 500W que da 12 V con 23 A mas que suficiente para alimentar todo.
tengo un dremen de los chino y un motor de 12 V para el grabado de eso que vende banggood .

esta es mi configuración con el GRBL 1.1 F

$0=10 Step pulse, microseconds


$1=25 Step idle delay, milliseconds
$2=0 Step port invert, mask
$3=0 Direction port invert, mask
$4=0 Step enable invert, boolean
$5=0 Limit pins invert, boolean
$6=0 Probe pin invert, boolean
$10=1 Status report, mask
$11=0.010 Junction deviation, mm
$12=0.002 Arc tolerance, mm
$13=0 Report inches, boolean
$20=0 Soft limits, boolean
$21=0 Hard limits, boolean
$22=1 Homing cycle, boolean
$23=0 Homing dir invert, mask
$24=25.000 Homing feed, mm/min
$25=500.000 Homing seek, mm/min
$26=250 Homing debounce, milliseconds
$27=1.000 Homing pull-off, mm
$30=1000. Max spindle speed, RPM
$31=0. Min spindle speed, RPM
$32=0 Laser mode, boolean
$100=25.000 X steps/mm
$101=25.000 Y steps/mm
$102=25.000 Z steps/mm
$110=500.000 X Max rate, mm/min
$111=500.000 Y Max rate, mm/min
$112=500.000 Z Max rate, mm/min
$120=300.000 X Acceleration, mm/sec^2
$121=300.000 Y Acceleration, mm/sec^2
$122=300.000 Z Acceleration, mm/sec^2
$130=200.000 X Max travel, mm
$131=200.000 Y Max travel, mm
$132=200.000 Z Max travel, mm
si algunos amigos me pueden ayudar con mi problema con el eje Z,
gracias a todos y un gran trabajo el de nuestro amigo sr ferrete
saludos para todo desde la gomera las islas canarias.

hola, primero darle la horabuena por la calidad de la pagina

En segundo lugar exponer mi problema, estoy montando el Laser, todo excepto que los motores del eje YY
solo funcionan en una dirección, alguna idea de porque esto está pasando?

Tengo un problemilla, estoy intentado montar el laser pero no soy capaz de hacer que los dos motores del eje
yy se muevan en las dos direcciones, si quito los jumpers de replicar YY en AA va bien pero si los pongo no
funciona bien solo funciona en una dirección, alguna idea de porque me pasa esto???

Buenas mi cnc tiene una falla se cuelga a medio maquinar a que se deberá que se cuelgue

Todo me salio bien, excepto en colocar el ventilador, cuales son los pines en los que debe de ir el ventilador
en la shield o en el arduino,

He seguido sin problemas todo el montaje de la electrónica, la calibración de los drivers y la modificación
de los parámetros $100, $101 y $102 en Universal GCode Sender. Hasta aqui todo OK!.

Pero cuando intento controlar la maquina no me responden los motores, no se mueven ni hacen ningún
ruido. ¿A que puede ser debido esto? ¿Motores defectuosos?

Hola le escribo desde Argentina. Estoy por comprar un cnc que me parece muy conveniente ya que viene
configurado para Husillo y láser (e incluye ambos elementos de corte).
Me gustaría hacerlo de cero pero no cuento con el tiempo necesario. Lo único malo es el área de trabajo
(18x30cm).
Mi pregunta para usted es la siguiente: es posible con el tiempo ampliar el área de trabajo con varillas y
guías más largas? obviamente ampliando también las bases ya que soy carpintero.
Es decir, se puede configurar para que los recorridos sean mas largos?
Le paso el link por si me puede ayudar con el tema:
https://articulo.mercadolibre.com.ar/MLA-736960600-router-cnc-3018-er11-laser-55w-_JM

Eh montado la cnc muy similar a la q armaste en tus videos, todo anda bien hasta el momento de configurar
los motores para el momento en el que realiza el trabajo; mis motores son nema 17 1.7A, y cuando mando el
archivo para que comience a trabajar(mediante UGS) es como si no hubiese configurado nada, basicamente
van a la velocidad ni la aceleracion que yo configure en $$, y hace muchisimo ruido al andar a muy baja
velocidad, pero cuando muevo los ejes manualmente con los botones en UGS se mueven segun la
configuracion que hice en $$,es decir, los movimientos y el archivo los representa correctamente, pero las
velocidades aceleraciones y toda la configuracion hace lo que quiere la maquina xD

You might also like