Controlar el motor de CC en el Arduino directamente desde Analógico

0

¿Es posible controlar un motor de juguete DC (5V) en un Arduino directamente desde el pin analógico (o digital con PWM) sin dañar la placa? Sé que los motores de CC generalmente se controlan a través de un transistor, pero estoy pensando en controlarlo de esta manera. Mi código de Arduino es:

    void setup() {
         pinMode(6, OUTPUT);
         Serial.begin(9600);
    }
    void loop() {
         int val = Serial.parseInt();
         if( val >= 0 && val <= 1024) {
             analogWrite(6,val);
             delay(5000);
         }
    } 

Mi esquema:

GND --------------------- MOTOR -------------- | < | ------ -D6 (PWM)

    
pregunta bolzano

2 respuestas

5

Hay un número de problemas con su enfoque: si bien es simple, enfrentará una serie de desafíos.

  1. La salida de corriente máxima de su Arduino probablemente será de aproximadamente 40 mA ( enlace ). Esto es insuficiente para conducir un motor de hobby. La mayoría de los motores de proyectos pequeños consumirán de 100 a 500 mA de corriente. Creo que podría correr el riesgo de dañar su Arduino.

  2. Incluso si el motor pudiera funcionar a una corriente muy baja (menos de 40 mA), los motores son ruidosos: utilizan cepillos y contactos que crean ruido eléctrico que puede causar interferencia con el microcontrolador. Existen técnicas para eliminar este ruido, como usar condensadores de filtro conectados a tierra y, a veces, un diodo a través del motor ( enlace ).

  3. Por último, estaría limitado al voltaje suministrado por el microcontrolador (en este caso, 5 VCC). Muchos motores funcionan a diferentes voltajes, como 6V o 12V.

¡Hay muchos buenos circuitos que describen cómo ejecutar un motor usando componentes fáciles de encontrar si haces una búsqueda rápida en Google!

    
respondido por el Mark
1

" Depende ":-)

Si el motor en cuestión tiene una clasificación de corriente de bloqueo muy por debajo de la corriente que puede extraerse con seguridad de un Arduino GPIO, entonces sí, dicho motor de CC podría ser accionado directamente desde el pin GPIO.

Se recomienda encarecidamente un diodo de protección que atraviese el motor, preferiblemente un diodo Schottky rápido, para desviar el EMF de la conmutación del motor y evitar que se dañe el pin Arduino.

simular este circuito : esquema creado usando CircuitLab

Personalmente, restringiría tales aventuras a motores con una clasificación de corriente de parada de 20 mA o inferior (para las placas Arduino clásicas). Algunas de las nuevas placas Arduino tienen una calificación de corriente más baja por pin GPIO, por lo que caveat emptor .

    
respondido por el Anindo Ghosh

Lea otras preguntas en las etiquetas