¿Por qué necesitaría un relé entre un motor de CC y mi Arduino?

1

Me dijeron que debía colocar un relé entre mi motor de 5 V y mi Arduino. Le pregunté por qué, pero ellos no sabían.

¿Por qué necesito separarlos con un relé? El motor requiere 5V y el Arduino proporciona 5V.

También, ¿necesito separar todos los componentes del motor con un relé o podría, por ejemplo, ponerlos en el orden:

Arduino -> Relay -> Demultiplexer -> Motors?
    
pregunta Peter

2 respuestas

4

Debe usarse un pin de salida Arduino para suministrar una corriente de no más de 0.02A (20mA). (un pin tiene una corriente de seguridad máxima absoluta de 40 mA, sin embargo, se reduce si se usan otros pines en el mismo puerto de 8 pines como salida).

La mayoría de los motores eléctricos necesitan mucho más corriente de lo que puede suministrar un pin Arduino. Un pequeño motor eléctrico de bajo costo, el tipo de cosa que se usa en los juguetes, puede requerir una corriente de 0.5A

Un motor utiliza la mayor parte de la corriente cuando se está iniciando, o algo mantiene el eje del motor lo suficientemente fuerte como para detenerlo (bloqueo). Así que verifique el voltaje y la corriente nominal para el funcionamiento y la corriente de bloqueo de un motor.

Un relé puede permitir que un pin Arduino suministre una pequeña cantidad de corriente y, al mismo tiempo, controle una corriente mucho mayor para el motor. Un relé puede ser activado por el pin Arduino, y sus contactos pueden ser capaces de satisfacer las necesidades del motor. Es no automáticamente cierto que un Arduino puede manejar un relé. Un usuario también puede usar más corriente de la que un pin Arduino puede suministrar de manera segura. Por lo tanto, una especificación de relé también se debe verificar No debe requerir más de 40 mA de máximo absoluto, a 5 V para funcionar.

Hay otras tecnologías que permiten que un pin Arduino cambie cargas eléctricas que son mucho más grandes de lo que puede suministrar directamente. Por ejemplo, cosas llamadas relés de estado sólido, transistores de potencia 'BJT' o transistores MOSFET de potencia. También hay circuitos integrados (circuitos integrados) diseñados para impulsar motores.

Editar (para incorporar el comentario de Andreas Wallner):
Cuando se apaga la alimentación del motor, el motor continuará girando por un corto tiempo. Mientras está girando, actúa como un generador de electricidad. Si el motor estuviera conectado directamente a un pin Arduino, esa potencia intentaría pasar a través de la electrónica del pin y probablemente lo dañaría. Un motor conectado a un relé generará electricidad cuando se abra el relé. La tensión producida por el motor aumentará rápidamente, e incluso podría causar un 'arco' o chispa. El voltaje generado por los motores generalmente se aleja para evitar este efecto utilizando un diodo. (Busque esto usando el término 'diodo de rueda libre'). El diodo se conectará en la dirección opuesta al flujo de corriente al motor.

Si el motor se está moviendo en las direcciones ambas , entonces use cuatro diodos dos en cada cable del motor. Dos diodos, uno en cada cable, conectarán los cables del motor a tierra. Dos, uno en cada cable, conectarán el cable del motor a la fuente de alimentación positiva. Los cuatro diodos se conectarán de modo que la energía no fluya normalmente. Conducirán lejos cualquier potencia producida por el motor y evitarán que se produzcan arcos en un relé, o que la energía vuelva a funcionar a través de la electrónica.

También vale la pena señalar que un motor eléctrico de CC funciona haciendo y rompiendo el contacto, a través de sus 'cepillos', continuamente, mientras gira. Esto también puede generar arcos o chispas. Esto crea un lote de ruido eléctrico, que puede "alterar" la electrónica, como un Arduino. El ruido eléctrico puede hacer que la electrónica funcione de manera poco confiable. Este ruido generalmente se reduce drásticamente al conectar un capacitor de cerámica o poliéster, de aproximadamente 1nF a 10nF, a través de los terminales de los motores.

Normalmente, suministraría un motor mediante un relé y mantendría separados otros componentes, por ejemplo, un demultiplexor no formaría parte del circuito de los motores.

    
respondido por el gbulmer
5

En primer lugar, un motor es un dispositivo que consume mucha energía. Un pin Arduino IO solo puede proporcionar un máximo absoluto de 40mA desde un pin IO, y Atmel no garantiza nada por encima de 20mA. Un motor generalmente toma mucho más que eso, especialmente durante la fase de aceleración.

Alimentar un motor directamente desde un pin IO no solo es una Bad Idea ™, sino que también está condenado a fallar desde el principio.

Entonces necesita algo para proporcionar más corriente al motor, y eso significa alguna forma de interruptor externo.

Sí, puede usar un relé como ese interruptor, sin embargo, un relé también tiene los mismos problemas que un motor: generalmente tienen mucha falta de energía y necesitan algún tipo de interruptor externo para permitir que Arduino los maneje. Sí, puede obtener relés que son lo suficientemente débiles para que un Arduino los conduzca directamente, y puede obtener relés con circuitos de conmutación incorporados, pero en general, la mayoría de los relés son demasiado potentes para que un simple Arduino los cambie.

Entonces necesitas otra opción, y esa opción es un transistor.

En segundo lugar, los motores (y los relés) son dispositivos muy ruidosos. Independientemente de la cantidad de corriente requerida para conducirlos, crearán montones y montones de picos de voltaje, tanto positivos como negativos, en sus conexiones. Realmente no quieres que esas puntas entren en tu Arduino y hagan que Magic Smoke ™ se escape. Así que necesitas desviarlos a otra parte. Eso requiere un diodo inverso polarizado a través del bobinado / bobina del motor / relé. Además, el transistor que utiliza para impulsar el motor o el relé actúa como una capa adicional de separación del Arduino que mantiene alejados esos picos.

Siga los (circuitos de millones de ejemplos, pregunte a Google) para conducir un relé o motor a través de un transistor desde un Arduino y estará seguro.

    
respondido por el Majenko

Lea otras preguntas en las etiquetas