¿Es correcto el circuito de conducción del motor arduino?

3

Tengo un Arduino Pro Micro y algunas partes para jugar. Quiero controlar un pequeño motor de 5 V desde una fuente de alimentación externa utilizando Arduino para activar un transistor. Así:

¿Es eso correcto? ¿Funcionará? Quiero experimentar pero no quiero romper mi nuevo juguete en el proceso. El transistor que estoy usando es un NPN, 2N3904.

    
pregunta Madagascared

4 respuestas

6

Quieres usar tu transistor como un interruptor. Encontré un buen sitio sobre lo que da a este circuito:

Ahoraolvídatedetodalabasuraytiraeldiseñoaesto:

simular este circuito : esquema creado usando CircuitLab

Su circuito es correcto, excepto que falta la resistencia de base (R1) y la resistencia de bajada (R2). Además, la carga (su motor) debe estar en el colector del transistor, no en el emisor. Por último, use un flyback o volante de inercia con el cátodo a V cc , como en el Primera imagen, para evitar altos voltajes.

Entonces, al final, su esquema se verá así:

simular este circuito

Explicación del circuito:

  • R1 es necesario para limitar la corriente en la base de la resistencia y, por lo tanto, la corriente extraída del Arduino. Si no usa la resistencia de base, su Arduino podría romperse.
  • R2 es una resistencia desplegable que garantiza que el voltaje en la base del transistor sea lo suficientemente bajo como para que no se conduzca siempre que no haya una señal de entrada del Arduino. Así que esta resistencia se asegura de saber en qué estado se encuentra el circuito cuando se desconecta el Arduino. Esta resistencia no es necesaria, pero se recomienda .
  • D1 es un diodo de retorno que elimina el pico de voltaje cuando el motor se detiene o comienza a funcionar. Va demasiado lejos para explicar por qué, pero cada vez que deja que una corriente fluya a través de una bobina o cuando deja de dejar que la corriente fluya, puede ocurrir un pico de voltaje. Con el diodo de retorno, asegúrate de que el pico se elimine de inmediato. El uso de este diodo es altamente recomendado .

Una última cosa que explicar: por qué el motor debe estar en el lado del colector y no en el lado del emisor del transistor. Wouter explica esto en su respuesta , en resumen: con la carga en el lado del colector you están a cargo de qué voltaje recibe el motor; con la carga en el lado del emisor, este voltaje no puede ser más alto que el voltaje en la base (menos algo).

    
respondido por el Keelan
3

Puede funcionar (al menos por un tiempo), pero hay algunos problemas:

  • no mencionó cuánta corriente consumirá el motor. un 2N3904 es un transistor de pequeña señal, puede que no sobreviva a la corriente del motor (tenga en cuenta que un motor bloqueado consume una corriente mucho mayor)

  • como un relé, un motor puede generar picos de voltaje. Yo pondría un diodo en paralelo al motor. (¡observa la polaridad!)

  • utiliza el transistor como seguidor del emisor, por lo tanto, el voltaje en el motor solo puede ser tan alto como el voltaje de salida del arduino (menos 0.6V o menos). Esto podría funcionar, pero preferiría que el motor "en" el cable del colector. Esto requeriría una resistencia adecuada en el 'cable' de la base.

respondido por el Wouter van Ooijen
1

Ni siquiera usaría un tranistor NPN para comenzar debido a la disipación de calor (Pd). Pd se puede calcular utilizando:

NPN / PNP - > Pd = Vf * I = 0.7V * I Como puede ver aquí, si está dibujando 1A, entonces ese transistor se calentará como si no hubiera un mañana. (0.7V) * (1A) = 700mW.

MOSFET - > Pd = I ^ 2 * Ron = número pequeño Como puede ver aquí, incluso en 1A, no es esencial emitir calor. Dado que la resistencia on es típicamente en los miliohms. (1A) ^ 2 * 10mOhm = 10mW.

Además, ¡la mayoría de los MOSFET han incorporado un diodo de retorno!

    
respondido por el NothinRandom
1

Aquí hay una pregunta: usted dice que la fuente de alimentación de 5 V para el motor no está conectada al Arudino en absoluto. En este caso, tengo mis dudas de que el circuito funcionará, a menos que esté conectado a tierra en algún otro lugar (por ejemplo, si su Arduino está alimentado por USB, que está conectado a la tierra de CA, y la alimentación del motor está conectada) a la misma tierra a través de la salida). En cualquier caso, confiar en las cosas que se van a acoplar a través de la red eléctrica no es la forma en que se diseñan los circuitos (por ejemplo, dejará de funcionar si el Arudino o el motor pasan a la energía de la batería). Por ejemplo, en este circuito, el V_be (voltaje del emisor de base) no está definido.

Una solución simple es conectar la tierra del Arduino a la tierra de la fuente de alimentación del motor. Si realmente insiste en no tener un acoplamiento a tierra, necesita tener alguna otra forma de acoplamiento, ya sea ópticamente (optoaislador) o magnéticamente (transformador).

    
respondido por el Zuofu

Lea otras preguntas en las etiquetas