Motores paso a paso con Arduino y driver A4988 o DRV8825


arduino-a4988-drv8825

¿Qué es un A4988 o DRV8825?

El A4988 y el DRV8825 son controladores (drivers) que simplifican el manejo de motores paso a paso desde un autómata o procesador como Arduino.

Estos controladores nos permiten manejar los altos voltajes e intensidades que requieren estos motores, limitar la corriente que circula por el motor, y proporcionan las protecciones para evitar que la electrónica pueda resultar dañada.

Para su control únicamente requieren dos salidas digitales, una para indicar el sentido de giro y otra para comunicar que queremos que el motor avance un paso. Además permiten realizar microstepping, una técnica para conseguir precisiones superiores al paso nominal del motor.

El A4988 ha alcanzado una gran popularidad en sus últimos tiempos debido a su uso en proyectos como, por ejemplo, en impresoras 3D caseras. Por su parte el DRV8825 es una versión mejorada del A4988 y, por tanto, tiene unas características ligeramente superiores.

Anuncio:

En particular, el DRV8825 permite trabajar con tensiones superiores al A4988 (45V frente a 35V), e intensidades superiores (2.5A frente a 2A). Además, añade un nuevo modo de microstepping (1/32) que no está presente en el A4988.

Por lo demás, aparte de unas pequeñas diferencias, ambos dispositivos son similares en su montaje y uso. Incluso pueden ser compatibles entre sí, es decir, bajo ciertas condiciones podemos usar indistintamente uno u otro, e incluso una combinación de ambos de forma simultánea.

ModeloA4988DRV8825
ColorVerde o RojoMorado
Intensidad máxima2A2.5A
Tensión máxima35V45A
Microsteps1632
Rs típico0.05, 0.1 o 0.20.1
FórmulasI_max = Vref / ( 8 * Rs)I_max = Vref / ( 5 * Rs)
Vref = I_max * 8 * RsVref = I_max * 5 * Rs

Ambos controladores pueden alcanzar altas temperaturas durante su funcionamiento y es necesario disipar el calor para que el dispositivo no se dañe. Para intensidades superiores 1A en el A4988 y a 1.5A en el DRV8825 es necesario añadir un sistema de disipación de calor, e incluso ventilación forzada.

Disponen de protecciones contra sobreintensidad, cortocircuito, sobretensión y sobretemperatura. En general, son dispositivos robustos y fiables siempre que realicemos la conexión correctamente, e incorporemos disipación de calor si es necesario.

El A4988 y el DRV8825 son muy empleados en una gran variedad de proyectos que requieren el uso de motores paso a paso, como máquinas de CNC, plotters, robots que dibujan, impresoras 3D, y escáneres 3D.

También son un componente frecuente en proyectos para controlar robots y vehículos, especialmente en aquellos que requieren variar de forma individual la velocidad de cada rueda, como en vehículos con omniwheel o mecannum wheels.

Precio

Actualmente ambos controladores son dispositivos baratos ya que han visto bajar su precio gracias al aumento de su popularidad. Es posible encontrar un driver A4988 por 0.75€, y un DRV8255 por 1.15€, en vendedores internacionales en eBay o AliExpress.

arduino-a4988

Con una diferencia de precio tan estrecha lo normal es que elijamos el DRV8255, dado que tiene unas características técnicas superiores,

arduino-drv8825

¿Cómo funciona el A4988 y el DRV8825?

Como en la mayoría de los controladores de motores el componente fundamental es un puente-H. En el caso del A4988 y DRV8825, destinados a controlar motores paso a paso, se dispone de dos puentes-H (uno por canal) constituidos por transistores MOSFET.

Sin embargo, a diferencia de controladores más simples como el L298N o el TB6612FNG, que presenta una electrónica relativamente simple, el A4988 y el DRV8825 tienen una electrónica considerablemente más compleja.

A modo de ejemplo, la siguiente imagen tenemos el esquema del DRV8255 y, cómo vemos, los puentes-H (remarcados en azul) representan una parte muy pequeña del conjunto.

arduino-a4988-drv8825-funcionamiento

Uno de los motivos para esta complejidad es que únicamente requieren dos señales digitales de control para hacer funcionar el motor, y que incorporan las protecciones necesarias para su manejo.

El otro motivo de la complejidad de su electrónica es que incorporan funciones especialmente diseñadas para el control de motores paso a paso, como son el regulador de intensidad y el Microstepping. Veremos estas funcionalidades a continuación.

Regulación de intensidad (Chopping)

Ambos controladores disponen de reguladores de intensidad incorporados. El motivo es que los motores paso a paso de cierto tamaño y potencia, como por ejemplo los NEMA 17 o NEMA 23, necesitan tensiones superiores a las que podrían soportar las bobinas por su corriente nominal.

Por ejemplo, supongamos que tenemos un motor NEMA 17 con 1.2A de intensidad nominal y 1.5 Ohm de resistencia por fase. Según la ley de Ohm deberíamos aplicar 1.8V a cada bobina para que circule la intensidad nominal de 1.2A. Sin embargo, con esa tensión el motor ni se movería.

Para el que el motor funcione correctamente necesitamos aplicar una tensión superior. En este ejemplo, la tensión nominal podría ser 12V. Pero si aplicáramos 12V directamente, nuevamente por la ley de Ohm, pasarían 8A por la bobina, lo cual destruiría el motor en poco tiempo.

Por este motivo, los controladores incorporan un limitador de intensidad, que permiten alimentar el motor a tensiones nominales superiores a las que es posible por su resistencia e intensidad máxima admisible.

Por supuesto, la ley de Ohmn debe cumplirse en todo momento por lo que, continuando con nuestro ejemplo, cuando alimentemos el motor a 12V por la bobina pasará inevitablemente 8A.

El limitador interrumpe la señal proporcionando una señal pulsada PWM de forma que el valor promedio de la intensidad que atraviesa la bobina es la intensidad nominal del motor. Terminando nuestro ejemplo, el limitador de tensión aplicaría el pulso durante el 15% del tiempo y mantendrá el motor apagado el 85% restante.

A este mecanismo de limitación de intensidad se le denomina Chopping.

Para regular la intensidad que proporcionara el limitador y ajustarlo al valor del motor que vayamos a emplear ambas placas disponen de un potenciómetro que regula la intensidad del limitador.

Una forma de estimar la intensidad del regulador es medir la tensión (Vref) entre el potenciómetro y GND y aplicar una fórmula que depende del modelo, que encontraréis en la tabla del principio de la entrada.

Estas fórmulas dependen el valor Rs de las resistencias ubicadas en la placa que pueden variar en función del fabricante. Los valores típicos también aparecen en la tabla, pero debéis comprobar el valor de las resistencias que monta vuestra placa.

Por ejemplo, con los valores de Rs habituales las fórmulas se reducen a:

ModeloRsFórmula reducida
A498850I_max = 0,625 * V_ref
A4988100I_max = 1,25 * V_ref
A4988200I_max = 2 ,2* V_ref
DRV8825100I_max = 2 * V_ref

No obstante, el valor obtenido mediante esta medición es sólo una aproximación y puede ser inexacto, por lo que lo emplearemos sólo como una calibración inicial, y terminaremos el ajuste fino midiendo la corriente real que proporciona el controlador al motor mediante un amperímetro.

Microstepping

Como hemos dicho, el microstepping es una técnica que permite obtener pasos inferiores al paso nominal del motor paso a paso que vamos a controlar.

Cuando vimos las secuencias típicas de encendido de un paso a paso, vimos que aplicando un control todo a nada a las bobinas teníamos varias posibles combinaciones, de las cuales vimos las tres más habituales (1-fase, 2-fases, media-fase). Pero nadie ha dicho que tengamos que encender o apagar por completo las bobinas.

El microstepping hace variar la corriente aplicada a cada bobina emulando un valor analógico. Si pudiéramos a ambas bobinas dos señal eléctrica senoidal perfecta desfasadas 90º conseguiríamos un campo magnético rotatorio perfecto en el interior del motor.

arduino-motor-paso-a-paso-microstepping

Por supuesto el controlador digital no genera valores analógicos perfectos, si no valores discretizados (“a saltos”), por lo que la señal eléctrica que aplica es igualmente una función senoidal discretizada.

El resultado es un campo magnético un campo magnético rotativo con un paso inferior al paso nominal, que depende del número de niveles de discretos que podemos emplear en las señales de excitación de la bobina.

Cuando funcionamos sin microstepping (Modo full step), los controladores aplican una secuencia de 2-fases, por lo que aplican de forma permanente el 71% de la corriente del limitador a cada bobina. Únicamente varían el sentido en el que la corriente circula por la bobina.

arduino-motor-paso-paso-secuencia-2-fases

Sin embargo, si aplicamos microstepping en cualquier de sus modos de funcionamiento, el controlador llega a aplicar el 100% de la corriente a una de las bobinas en un determinado paso. La cantidad de corriente concreta aplicada a cada bobina varía con cada paso.

Por ejemplo, con resolución 1/4 de paso, en el primer paso de la secuencia tendremos una bobina al 100% y la bobina B al 0%, en el segundo paso la bobina A al 92% y la bobina B al 38%, en el tercer paso la bobina A al 71%, y así sucesivamente.

El hecho de que sin microstepping la corriente aplicada es siempre el 71%, y si aplicamos microstepping (en cualquier resolución) la corriente aplicada llegará a ser del 100% en algún paso, es muy importante a la hora de calibrar la intensidad que circula por las bobinas.

Finalmente, la resolución con la que queremos que funcione el controlador se controla aplicando tensión a los Pines M0, M1 y M2. Estos pines están puestos a tierra mediante resistencias de Pull-Up, por lo que si no conectamos nada estarán a Low, y sólo deberemos forzar los pines en High.

ResolucionPines M0, M1 y M2
A4988DRV8825MODE0MODE1MODE2
Full stepFull stepLowLowLow
1/2 step1/2 stepHighLowLow
1/4 step1/4 stepLowHighLow
1/8 step1/8 stepHighHighLow
1/16 stepLowLowHigh
1/32 stepHighLowHigh
1/32 stepLowHighHigh
1/16 step1/32 stepHighHighHigh

Dejar todos los pines desconectados dará lugar a usar modo Full Step

Esquema de montaje

El esquema de conexión de ambos controladores es muy similar. Incluso, como hemos dicho, bajo ciertas consideraciones ambos dispositivos son compatibles entre si.

En el caso del A4988 el esquema es el siguiente

arduino-a4988-esquema

Que visto desde Arduino quedaría de la siguiente forma.

arduino-a4988-conexion

En el caso del DRV8825 el esquema es muy similar, con la excepción de que el pin Vdd se sustituye por el pin Fault.

arduino-drv8825-esquema

El esquema desde Arduino sería idéntico al anterior.

arduino-drv8825-conexion

Observar que el potenciómetro está ubicado en extremos diferentes en ambos modelos. Por tanto a la hora de cambiar uno por otro, porque es fácil equivocarse en la orientación, y dañar el dispositivo.

Comprobar la orientación del controlador durante el montaje y antes de dar la alimentación al sistema

Proceso de montaje

El proceso de montaje del A4988 o el DRV8825 no es demasiado complicado. La única parte que resulta un poco peliaguda es el proceso de ajuste y calibración del regulador de intensidad.

Ambos controladores son bastante robustos y difíciles de romper cuando están trabajando, si respetamos las necesidades de disipación de calor (cuando sea necesario).

Pero son extremadamente sensibles a desconectar el motor cuando el controlador está alimentado. Hacer esto causará, casi con total seguridad, que dañemos el controlador.

En general, evitar conectar o desconectar cualquier cable mientras el controlador esté alimentado.

Por otro lado, el potenciómetro del regulador de intensidad no tiene tope físico, por lo que es posible pasar de cero al máximo de valor sin danos cuenta, y podríamos dañar accidentalmente el motor.

Para no dañar ni el controlador ni el componente, debemos seguir siempre el proceso rigurosamente sin saltarnos ningún paso.

  • Conectar el driver a tensión, sin el motor y sin microstepping
  • Medir con un voltímetro la tensión entre GND y el potenciómetro
  • Ajustar el potenciómetro hasta que la tensión sea el valor proporcionado por la fórmula
  • Apagar el montaje
  • Conectar el motor, interponiendo en medio un amperímetro
  • Realizar con cuidado el ajuste fino del potenciómetro, hasta que la intensidad sea la nominal del motor
  • Apagar el montaje
  • Retirar el amperímetro, y conectar el motor definitivamente
  • Conectar Arduino al montaje

Como hemos dicho, el hecho de que vayamos a usar posteriormente microstepping influye en el valor limite que debemos fijar en el regulador de intensidad.

Si no vamos a usar Microstepping, podemos aplicar aumentar el límite del regulador de intensidad hasta el 100% de la intensidad nominal del motor.

Si vamos a usar Microstteping, el valor que hemos medido es el 71% del que luego circulará realmente por la bobina. Por tanto, en el amperímetro debemos ajustar el 71% de la intensidad nominal del motor.

Ejemplo de código

Aunque entender los pormenores del A4988 y el DRV8825 puede haber tenido su dificultad, las ventajas de su uso claras. El código necesario para su control es extremadamente sencillo, lo cual hace de ellos unos componentes muy prácticos y útiles de usar.

Simplemente tenemos que indicar mediante dos salidas digitales el instante en el que queremos que el motor avance un paso, y el sentido de giro. La velocidad de giro se controla por el tiempo que dejamos transcurrir entre paso y paso.

El siguiente ejemplo, hace girar el motor paso a paso una revolución en un sentido, y dos en sentido contrario a una velocidad ligeramente superior.

const int dirPin = 8;
const int stepPin = 9;

const int steps = 200;
int stepDelay;

void setup() {
	// Marcar los pines como salida
	pinMode(dirPin, OUTPUT);
	pinMode(stepPin, OUTPUT);
}

void loop() {
	//Activar una direccion y fijar la velocidad con stepDelay
	digitalWrite(dirPin, HIGH);
	stepDelay = 250;
	// Giramos 200 pulsos para hacer una vuelta completa
	for (int x = 0; x < steps * 1; x++) {
		digitalWrite(stepPin, HIGH);
		delayMicroseconds(stepDelay);
		digitalWrite(stepPin, LOW);
		delayMicroseconds(stepDelay);
	}
	delay(1000);

	//Cambiamos la direccion y aumentamos la velocidad
	digitalWrite(dirPin, LOW);
	stepDelay = 150;
	// Giramos 400 pulsos para hacer dos vueltas completas
	for (int x = 0; x < steps * 2; x++) {
		digitalWrite(stepPin, HIGH);
		delayMicroseconds(stepDelay);
		digitalWrite(stepPin, LOW);
		delayMicroseconds(stepDelay);
	}
	delay(1000);
}
Si te ha gustado esta entrada y quieres leer más sobre Arduino puedes consultar la sección Tutoriales de Arduino

Descarga el código

Todo el código de esta entrada está disponible para su descarga en Github.



5 20 votes
Article Rating

Anuncio:

Previous Controlar dos motores DC con Arduino y driver TB6612FNG
Next Cómo usar un acelerómetro en nuestros proyectos de Arduino
45 Comments
oldest
newest
Inline Feedbacks
View all comments
Maximus
6 years ago

¿Es posible que donde dices DRV8225, quieras decir DRV8825?

Genial, el artículo … saludos

luisllamas
6 years ago
Reply to  Maximus

Muy posible, tengo una tendencia horrorosa a mezclar DRV8225 y DRV8825 y A4998 y A4988 XD
Está re-revisado, y creo que no me he dejado ninguna. Gracias por el aviso!

manuel macugo
6 years ago

Buenas.
Primero que nada felicitarte por la currada que te has pegado con este blog.
Y ahora la consulta.Compre un nema 23 para un proyecto con su arduino uno R3, su shield y un driver DVR8825. Trato de ajustar el driver como tu bien explicas pero no consigo que se mueva el dichoso motor. Hace un ruidito cada segundo mas o menos y ahi se queda. Le he metido 0.7 V al driver.
Gracias

luisllamas
6 years ago
Reply to  manuel macugo

¿A que te refieres con que les has metido 0.7V? (¿te refieres al valor del potenciómetro? ¿has ajustado el regulador con un amperímetro?)
¿Tu nema que valores nominales de tensión e intensidad máxima tiene? ¿Que tensión alimentación le has puesto? ¿Has medido la intensidad que está atravesando el motor?

manuel macugo
6 years ago
Reply to  luisllamas

Primero gracias por responder, y ahora te contesto por orden tus preguntas. 1º y 2º Me refiero a que es el valor que me da poniendo el positivo del polimetro en el potenciometro y el negativo en GND. (por cierto que he puesto mal el dato, son 0,98V) 3º Si, pero puesto en Voltios y ajustando el potenciometro hasta que me dio esos 0,98 V. 4º Tension nominal por fase de 3,2V y de 2,8A 5º Tengo el shield alimentado por una bateria de plomo 12 Voltios y 7 Amperios de capacidad. (como las de las motos) 6º Lo he… Read more »

luisllamas
6 years ago
Reply to  manuel macugo

¿Has mantenido en todo momento la precaución de no desconectar el motor mientras está el montaje encendido? (incluido durante la medición con el amperímetro)
Si no, es posible que hayas dañado el driver (porque por el resto de cosas que cuentas, debería funcionarte, el resto parece que está bien)

manuel macugo
6 years ago
Reply to  luisllamas

No entiendo bien tu ultima contestacion. Pero si te refieres a lo de manipular el montaje mientras este tenia tension, ya te digo que no (lo pones muy clarito en tu expicacion). Apago todo, tanto la alimentacion del driver, como el arduino. En el codigo que tu pones de ejemplo, yo solo cambio el pin de direccion (5) y el de pulso (2).
Un saludo y gracias por contestar

luisllamas
6 years ago
Reply to  manuel macugo

Sí, me refería a eso, a manipular en tensión (si tienes un amperimetro midiendo la intensidad de fase del motor, puede ser que se suelte, y eso es como desconectar el motor, y el driver tiende a petar, lo digo por triste experiencia jaja) Es que realmente, no tengo muchas más ideas, si has respetado eso, y el cableado, no debería fallar. Yo he montado varios, y ningún problema. Cosas que se me ocurren – Driver roto, que por lo que has dicho pensemos que no – El motor que estás usando necesita más tensión de 12V para funcionar. Por… Read more »

mundomorro
5 years ago

Crees que tenga problemas con un motor NEMA 23 de 2.3 A , con el DRV8825 ?

luisllamas
5 years ago

50 000 micro segundos?? Eso es muchisima espera para un Nema17 + A4988. Has comprobado que está correctamente alimentado, y has calibrado bien el regulador de intensidad?

luisllamas
5 years ago

Tienes que realizar el proceso de calibrado de la intensidad. Tu motor tiene una intensidad nominal de 1.7A.
No dices cuál es la Rs de tu A4988, pero con 0,5V tienes entre 1.25V y 0,3V.
Estas por debajo de la intensidad nominal, y por eso el motor no va todo lo rápido que podría ir.

Luis Alvarez
5 years ago

Hola Luis,en primer lugar me gustaría darte las gracias por compartir tus conocimientos. Como dice Juan lo explicas todo super claro. Ahora mi duda. Estoy utilizando el código que has puesto de ejemplo para intentar mover un nema 17 con una ramps 1.4 cambio los valores de : const int dirPin = 48; const int stepPin = 46; ya que utilizo el zocalo Z y según la documentación de la ramps estos son los pines que utiliza. El motor no hace nada (movimiento, ruido ….). Mi pregunta es, ¿Debería de funcionar? o al utilizar un escudo como ramps hay que… Read more »

luisllamas
5 years ago
Reply to  Luis Alvarez

Bueno, lo primero decir que ahora mismo no tengo una Ramps, así que respondo “a ojo” 😀 Según entiendo, tienes razón. El Ramps no es más que un shield para conectar fácilmente los componentes de la impresora, en particular los drivers de los paso a paso. Así que sí, el código de esta entrada debería funcionar. Mirando en el esquema de la ramps, los drivers de los steppers tienen la entrada Enable (negada) conectada a Vcc a través de una resistencia de Pull-up. En el eje Z, el pin correspondiente es el A8. Es decir, prueba a definir el pin… Read more »

luisllamas
5 years ago

Gracias a ti!

luisllamas
5 years ago

No, puedes cambiarlo sin hacer reset. De hecho, el pin de dirección y el de step, actúan en la electrónica del módulo controla los puentes H, pero están “muy alejados” de la parte que controla la potencia. A efectos prácticos, tiene la misma influencia dar un paso en un sentido o en otro.

Las únicas consideraciones realmente que hay que tener en cuenta para no dañar el módulo son:
– Nunca cambiar una conexión (mover cables) mientras esté alimentado.
– Añadir un condensador de >47uF para absorber picos de corriente.
– Poner las tierras en común.

luisllamas
5 years ago

Hombre… son de 2.1A nominal y el A4988 da un máximo de 2A. Eso no es casi nada de diferencia. El A4988 limitará la intensidad a sus 2A máximos (que es lo que hacen estos drivers, limitar la corriente) y no deberías notar prácticamente diferencia en el stepper.
Eso sí, metele un disipador bien gordo y si es posible un ventiladorcete no le iría mal, porque trabajando a 2A se van a poner calentitos calentitos.

juan C
5 years ago

hola, gracias por el post, una pregunta si tengo un motor nema 17 1.4 A y mi fuente para motor es de 12v 6 A, es posible conectar al pololu ?

luisllamas
5 years ago

Pues sin más información, no lo puedo saber. Toma mediciones en salida y entrada, o prueba con otro driver u otro motor

JOSE CAMPOS
5 years ago

hola felicitaciones por el post, una pregunta los pines reset y sleep en la shield van conectados entre si pero no se ve que vayan conectados a otro lado, es decir estan al aire, es correcto o me equivoco? gracias

jose
5 years ago

Exactamente, ¿donde tomo Vref?

Raul Torralbo
5 years ago

Buenas Luis. Tengo una duda respecto al A4988. Me estoy montando una CNC casera y comprobar la Vref, desde una tierra y el potenciometro, siempre me da 5,02v, independientemente de a donde mueva el potenciometro. Lo tengo montado en una shield y esa a su vez en un arduino Uno. Solo tengo alimentado el arduino para modificar la Vref pero no hay manera. Sabes si estoy haciendo algo mal? Muchas gracias.

marko
4 years ago
Reply to  Raul Torralbo

tengo el mismo problema pero a mi me da o.3 volts mueva el potenciometro en cualquier direcccion los drivers son drv8825

Rafael Fernandez Diez
4 years ago

Es posible utilizar estos drivers para controlar dos simples motores CC al igual que el conocido L298 o 293? Me falten los pines pwm para modular la velocidad, o eso creo.

Kira
4 years ago

Hola, En primer lugar, muy buen artículo, se entiende a la perfección. Tengo un problema y no sé cual puede ser el error… He cambiado los A4988 por DRV8825, he ajustado los drivers con la Vref/Iref calculada con los motores, muy comunes, Nema17 2,8v 1,5A. También he calculado los pasos por mm según las correas que tengo y las poleas, he cambiado estos valores en marlin multiplicandos por 2 y a la hora de poner en marcha me he dado cuenta que moviendo en manual los ejes X e Y, de 0 a 300mm que es el ancho de la… Read more »

Juan
4 years ago

Hola,
Muchas gracias por el Blog, encontrar información precisa y estructurada en español no es usual, por eso aprecio mucho tu esfuerzo. Mi duda (soy un lego en arduino): Si deseas controlar dos motores (nema17) con dos driver (drv8825) con una MEGA R3. ¿Como generas el código para que los retardos(delays) de un bucle no afecten al segundo motor en un código lineal como este?. Me puedes orientar en la tecnica adecuada para controlar independientemente el giro de dos o más motores.

Muchas gracias.

Gustavo
4 years ago

Hola tengo un problema cuando pongo tu programa en mi configuración el motor empieza a hacer ruidos de ping pong, tengo un arduino uno con un driver a4988, un nema 17, y querria saber como hacer para que le motor cada vez que aprieto un pulsador avanza un número de pasos gracias, no he encontrado información al respecto…

carlos torres
4 years ago

buenas tardes tengo una duda la conexion es independiente de si el motor es unipolar o bipolar?

Hector
3 years ago

Como afecta el resto de codigo a los microdelays de los pasos, le limitaria la velocidad?

Rodolfo
3 years ago

Buenas noches Luis, en DRV8825 el pin FAULT es una salida, por lo que no puede conectarse directamente a Vdd, cuando se active esa salida se crea un cortocircuito que puede dañar la salida. Por favor revisarlo. Saludos cordiales

Motores Arduino | Aprendiendo Arduino
3 years ago
Alejandro
3 years ago

Hola!
Tengo un motor nema 17 que tiene como amperaje maximo 1,7 y drivers DRV8825 los configure a 0.85 pero cuando lo hago funcionar se calienta, el disipador del driver tambien pero eso es normal, no?
Agrego que el driver esta sobre una ramps 1.4
Saludos

aponte ronald
3 years ago

una consulta, estoy usando una fuente externa para el motor y el arduino lo alimento desde mi pc. debo unir la tierra de arduino y el negativo de la fuente externa? tengo dudas en eso

Lr2
3 years ago

¿ Es posible dejar en una posicion un motor Nema con estos drivers sin que consuma energia ? Por el tema del calor.

Felipe Pérez
2 years ago

Hola, muchas gracias por el artículo. Está muy bien explicado.
Necesito configurar el micropaso a 1/32, es decir: M0=low y M1=M2=high; o equivalentemente M0=M1=M2=high.
Por tanto, ¿es posible hacer un puente entre el M1 y M2 de tal forma de utilizar un sólo pin del arduino?
Soy nuevo en éstos temas, y no sé si dicho puente pueda dañar el driver y/o el arduino.
saludos cordiales
FP

Mega Review Anet A8 a fondo - La impresora 3D ideal para iniciarse
2 years ago

[…] hay una cosa que no me gusta demasiado de la Anet y es que tiene solo un tornillo regulador para todos los drivers y encima no tenemos destornillador cerámico para […]

santiago
1 year ago

segun tengo entendido..eso de 1/32 seria mas presicion pro decirlo asi
pero no tengo del todo claro que placa soporta ya que segun veo mas se usa arduino pero he leido que eso de 1/32 es solo valido para tarjetas de 16bit en adelante y arduino es de 8
no se si em puedas ayudar con esa duda

Javi
1 year ago

Hola! Gracias por regalarnos el que podría ser el post más interesante al respecto. 🙂
Suelo recurrir a tu pagina a documentarme siempre de cosas de arduino.
Pregunta: Con este montaje que tienes, de motor y driver y arduino nano, por ejempo, ¿cuál sería el código más sencillo posible para contar los pasos reales -o muy aproximados- que da el motor, mientras pulsamos un botón?