Motor DC y arduino ahumado.

Acabo de quemar mi arduino y quiero entender qué pasó. Traté de controlar un motor de CC de 12 V y 4 A con Arduino Pro Mini de 5 V, aquí hay una placa de circuito impreso que hice para esto:

ingrese la descripción de la imagen aquí

En la parte inferior puedes ver los pines de arduino, usé la entrada Raw para alimentar mi arduino con 12V y el pin 11 de PWM para controlar el motor.

Usé IRF3205 N-channel Mosfet y 1N5817 Diode en mi circuito. La resistencia R1 es de 220 ohmios, R2 1KOhm. El circuito que traté de construir es algo como esto (imagen de google): cuando lo ingrese la descripción de la imagen aquíencendí, mi arduino fumó en 3 segundos (creo que en algún lugar cerca del pin "sin procesar", tal vez fue construido- en el regulador). ¿Hay algún error obvio que cometí? UPD: algunas fotos de mi montaje: enlace a imgur.com

No veo nada obvio. ¿Estaba conectado un motor? ¿Estaba el arduino programado para cambiar su pin 11? ¿Conectó la fuente de alimentación correctamente (no al revés)?
fotos de tu montaje? ¿Quizás te corto algo durante la soldadura?
También suponiendo que haya conectado la alimentación de la manera correcta.
@WesleyLee, imgur.com/a/ifF7N aquí puedes encontrar algunas fotos
¿Quizás quemaste tu regulador de voltaje en el pro mini? Las especificaciones oficiales dicen que el voltaje máximo que puede aplicar en el pin RAW es de 12V. Eso lo está reduciendo muy cerca de su voltaje de entrada (cualquier fluctuación de voltaje significará técnicamente que está funcionando fuera de las especificaciones). ¿Quizás verificar que sea de 12V y se mantenga en 12V?
@Suic Para agregar a la pila, también considere que cuando el drenaje vuela a un valor superior a +12 V, esto también tira con fuerza de la capacitancia de la puerta por un momento. Entonces, el voltaje de la puerta en sí mismo aumentará. La mayoría de los pines de E/S tienen una limitación en la corriente máxima del diodo de protección interna y excederla puede provocar un bloqueo. Dado el problema, probablemente también pensaría en agregar un BAV99 (o un par de diodos) del riel a la puerta a tierra. Tal vez dividir R1 en R1a y R1b, cada uno con el mismo valor que tiene ahora, y usar el BAV99 en ese nuevo nodo.
¿Sobrevivió el MOSFET?
@Suic No publique la imagen en los comentarios, agréguela a su pregunta. Además, trate de responder a las otras preguntas que la gente hizo.
@EnricBlanco MOSFET sobrevivió a mi circuito, pero no sobrevivió a la desoldadura :)

Respuestas (3)

El diodo en su tablero está en la posición correcta y debe tratar con la inductancia del motor, así como con el cableado directamente al motor. Sin embargo, no hay nada que evite que la inductancia en los cables de alimentación cause un pico en el voltaje de entrada al regulador cuando el MOSFET se apaga abruptamente. No tiene capacitancia ni ruta para la energía almacenada en la inductancia, y tiene poco margen de error (ver más abajo).

Mirando un clon que tengo dando vueltas, el regulador es un AMS1117 que tiene un voltaje de entrada máximo absoluto de 15V. El tuyo puede usar un chip diferente. El MIC5205, utilizado en algunos, puede soportar 20 V (descontando las consideraciones térmicas). Un 78M05 puede soportar un pico de 35V.

Si se utiliza el AMS1117 o una pieza similar, 12 V está demasiado cerca del máximo absoluto para esperar que un TVS, etc., proteja el regulador. Sería mejor agregar algo de capacitancia de derivación en la placa (tal vez un capacitor cerámico de 2.2uF 25V en paralelo con electrolítico de 100uF / 16V en el suministro de 12V, justo en la placa ) y agregar un pre-regulador como un 78M08 para 'cinturón y tirantes de seguridad.

Considere la siguiente simulación. L1 y R2 representan la inductancia del motor y la resistencia del devanado en reposo (recuerde que no hay fuerza contraelectromotriz con el rotor en reposo, por lo que R2 está determinado por la corriente de bloqueo). L2/L3 representan la inductancia del cable; sería menor para cables cortos y si los retuerces juntos. Cambié el MOSFET (aleatorio) con una resistencia de puerta de 150 ohmios y una fuente de 5V. Entonces, esperaría que esta simulación sea cualitativamente similar a su circuito, pero no necesariamente muy precisa en términos cuantitativos.

esquemático

simular este circuito : esquema creado con CircuitLab

Esto es lo que ve el voltaje de suministro del regulador cuando los interruptores MOSFET:

ingrese la descripción de la imagen aquí

Sí, picos de +165 V a pesar de la conmutación MOSFET relativamente lenta.

Este es un excelente ejemplo de por qué debe tener mucho cuidado cuando hay grandes corrientes flotando que se cambian con relativa rapidez. No se necesita mucha inductancia parásita para generar muchos voltios, lo que puede dañar las cosas. Incluso unos pocos mm de cable recto tienen cierta inductancia (bastante medible).

TL; DR: agregue algunas tapas EN EL TABLERO a través del suministro y cuelgue un 78M08 antes del tablero Arduino.

Gracias. Lo probaré con mi próximo circuito cuando reciba un nuevo Arduino :) Solo para aclarar que lo entendí correctamente: ¿Debo colocar condensadores como este? imgur.com/a/N3UDM
Sí, eso es correcto. Es posible que pueda resucitar el viejo Arduino cambiando el regulador de voltaje. Vale la pena intentarlo.
Aceptaré su respuesta como la más compleja y explicativa. Probaré todas las demás respuestas también tan pronto como pueda. Puede llevar algo de tiempo. Gracias a todos, volveré cuando tenga noticias.
Este es quizás el peor análisis que he visto... nunca verá picos como este. Solo para empezar, el esquema de Pro min muestra que una cerámica de 1 uF está directamente a través del regulador (ya sea Pro mini original o clon). Modele eso y vea cuál es el pulso potencial de la inductancia del cableado. Si hubiera una vez de verdad en las afirmaciones hechas aquí, tendríamos una gran cantidad de LED (alta corriente) de conducción de Arduino que explotarían regularmente.
@JackCreasey Está usando un clon, como queda claro en los comentarios (no necesariamente en la pregunta original). No existe tal capacitor en muchos de los clones, incluido el que tengo frente a mí, solo en la salida. Entonces, nada más que el consumo de corriente ordinario hasta que el regulador se descomponga. Solo hay 3V de margen antes de que eso pueda suceder (sin duda más en la práctica).
La imagen que publicó el OP de su placa (clonada o no) parece tener múltiples mayúsculas grandes alrededor del regulador. Además, no puede tratar los cables de la fuente de alimentación como un simple inductor a granel, de hecho, son una línea de retardo con inductancia y capacitancia dispersas. El problema no es tan crítico como lo presenta en su publicación, si lo fuera, la electrónica estaría en una situación desesperada. No estoy en desacuerdo con que las líneas de suministro de energía pueden tener inductancia y pueden ocurrir picos, solo creo que se pasó de la raya con su descripción.

Mi opinión es que la causa de la corriente de autoinducción del motor. Cuando MOSFET se apaga, aumenta el voltaje en el pin RAW. La energía se suministra en cables largos. Debe utilizar un condensador de derivación electrolítico de gran capacidad (del pin RAW a GND)

¿Notaste el diodo en el circuito? Está ahí para evitar exactamente el problema que mencionaste.
El diodo reduce las fluctuaciones de voltaje de una sola polaridad.
@ utu2012, el otro diodo está en el mosfet.
@ utu2012, creo que se está perdiendo mi punto, a pesar de lo que muestra el esquema de OP, el IRF3205 tiene un diodo INTEGRADO desde el drenaje hasta la puerta.
@Trevor, funciona bien si las resistencias complejas de la fuente de alimentación son bajas. Pero en este caso, la energía se suministra a través de cables largos(en la foto). Corriente de bucle: motor de CC, diodo en el MOSFET, cable largo, fuente de alimentación, cable largo, motor de CC. El cable largo es resistencia e inductor equivalentes en serie.
@utu2012, creo que estamos hablando de cosas diferentes... de todos modos. Estoy de acuerdo con su respuesta y aumenté la mía para implementar una solución similar pero mejorada.

Bueno, al principio pensé que parecía que la conexión a tierra del Arduino estaba conectada al pin TXD.

ingrese la descripción de la imagen aquí

Pero luego descubrí que estabas usando un clon que tiene un pin-out diferente.

(No REALMENTE un clon, supongo... más como un doppelganger).

De todos modos, todo lo que queda es que sus 12 V deben exceder el límite de voltaje del pin RAW de Arduinos.

Le sugiero que se aísle un poco agregando uno o dos diodos entre la ENTRADA DE 12 V en su PCB y el pin RAW. Tampoco estaría de más agregar un capacitor a granel de buen tamaño al pin RAW.

Además, agregaría un diodo en la línea del motor. El razonamiento es este. Cuando el motor alcanza la velocidad, la fuerza contraelectromotriz puede estar muy cerca de los 12 V. Cuando apague el FET, la parte superior del motor saltará a ~12,7 V debido a la ruta de corriente a través del diodo en el MOSFET.

esquemático

simular este circuito : esquema creado con CircuitLab

Nota: Los diodos y los valores de tapa que se muestran son simplemente valores predeterminados del editor.

Por el diseño (en particular, los pines a la derecha) sospecho que está usando otro modelo (posiblemente un clon), como este . Pero sí, debería volver a comprobar sus conexiones.
O tal vez esté usando la documentación del clon.
En mi tablero este pin marcado como Gnd
@suic Debería actualizar su pregunta para indicar qué clon está usando entonces.
@Suic y por si acaso ... verifique que el pin esté realmente conectado a tierra. no solo mal etiquetado.
@Trevor, es un terreno (lo acabo de comprobar con un multímetro)
Entonces, prácticamente lo único que queda es que los 12 V fueron más altos de lo que esperaba. Probablemente sea por el motor o porque tu fuente de alimentación esté un poco alta. Debería considerar colocar eso a través de un diodo o dos antes de alimentar el pin RAW y agregar otra tapa a granel.
Por favor, es Arduino no adrino