Attiny85 falla cuando paso un motor por un L293D

Estoy tratando de hacer funcionar un motor a través de un L293D encendido y apagado por un Attiny85. El Attiny85 tiene el cargador de arranque de micronúcleo, por lo que el pin 3 está conectado a una resistencia pull-up.

On the Attiny es un programa que activa y desactiva PB0 cada segundo. Le adjunté un indicador LED y, aunque el motor no está conectado a 1Y, funciona bien. También funciona bien si pongo un LED entre 1Y y tierra. Pero cuando coloco un motor pequeño entre 1Y y tierra, el LED1 parpadea brevemente y luego Attiny se reinicia.

Básicamente, ¿cómo hago para que no se bloquee cuando se ejecuta un motor a través de él?

Motor en L293DTambién probé lo siguiente, poniendo el motor directamente en la fuente de alimentación, lo que evita que el Attiny arranque.

Motor en fuente de alimentaciónEspecificaciones:

  • Fuente de alimentación de pared de 5V con salida de hasta 3000mA.
  • El motor tira alrededor de 300 mA mientras está activo.
  • También intenté encenderlo a través del USB de mi computadora y obtuve los mismos resultados.

Lo que he probado:

  • Reemplazando C2 con un capacitor de 1000uF. Eso me permitió enchufar el motor directamente a la fuente de alimentación con el Attiny85 en funcionamiento.
  • Poniendo el capacitor de 1000uF entre 1Y y gnd. Ningún cambio.

Actualización 1:

La razón por la que estaba usando L293D es porque no tenía ningún diodo viable a la mano durante la prueba. Los únicos que tenía eran demasiado grandes para ponerlos en mi protoboard. Lo conecté a través de pinzas de cocodrilo por ahora e hice los siguientes cambios, y parece estar funcionando bastante bien por ahora:

ingrese la descripción de la imagen aquí

No tienes condensadores de desacoplamiento.
@Toor ¿dónde los pongo?
La regla general es cerámica de 0,1 uF en cada par de pines de alimentación para cada IC lo más cerca posible del IC. Tampoco tienes diodos flyback.
Además de lo que dijo @Toor, su diseño es importante en este sentido. Muestra tu diseño.
@Toor, L293D tiene diodos flyback incorporados. Agregaré algunos condensadores cerca de los pines de alimentación y veré qué sucede.
@Toor, funcionó perfectamente, siéntase libre de ponerlo como respuesta y lo aceptaré.
Su problema final aquí es que su fuente de alimentación no está bien especificada para la carga. Sin embargo, usar el L293 de la forma en que lo hace no tiene sentido: en primer lugar, es un dispositivo con pérdidas terribles y, en segundo lugar, no lo necesita para lograr el control unidireccional que ha diseñado. Lo que desea es una buena fuente de alimentación y un buen N-FET de umbral bajo cableado como un interruptor lateral bajo.
Puede ser un poco descarado, pero puede agregar un diodo entre su riel de alimentación de 5V y el AtTiny. Luego agregue sus tapas de desacoplamiento después del diodo. Entonces, cuando el suministro cae, el diodo evita que los capacitores se descarguen en el motor. La idea es que los capacitores alimenten el AtTiny durante el arranque del motor. Por supuesto, Chris Stratton tiene razón en que la mejor respuesta es un mejor suministro nominal y cambiar a un mosfet de lado bajo. ¡Siga jugando, los apagones resaltan muchos conceptos importantes en electrónica!

Respuestas (1)

No tienes condensadores de desacoplamiento.

Necesita condensadores de desacoplamiento porque cada vez que los circuitos integrados cambian, intentarán generar una oleada de corriente. La fuente de alimentación no puede responder lo suficientemente rápido e incluso si lo hace, el aumento de corriente producirá una caída de voltaje a través de la inductancia parásita de los cables y pistas. Cualquiera de los dos escenarios provocará un apagón.

La regla general es colocar condensadores cerámicos de 0,1 uF en cada par de pines de alimentación lo más cerca posible del IC.

No. Si bien esa es una buena idea como principio general, no es el problema aquí. El problema es que el motor está sobrecargando la fuente de alimentación, sea lo que sea. Si esto "resuelve" el problema es suerte, no ingeniería de sonido.
Los motores consumen mucho más que el estado estable cuando arrancan. Una vez más, los condensadores de derivación son una buena idea. Pero no son una solución sólida a este problema.
OP ha declarado que ya agregaron límites de 1000uF antes de agregar esta publicación, lo que debería haber aliviado los problemas de sobretensión del motor.
Lea su declaración real y verá que pusieron ese límite en un lugar completamente inútil.
Ja, tienes razón. Esa tapa debería atravesar los rieles de alimentación. Una tapa de desacoplamiento solo para el motor, por así decirlo. Cuestiono el razonamiento de que el suministro está subdimensionado si agregar un capacitor satisface los requisitos de sobretensión. No se puede esperar que pueda suministrar directamente la corriente de sobretensión todo el tiempo.
¿Qué sucede cuando cambia la carga en el motor? ¿Cuando lo que sea que gira se atasca mecánicamente?
Los cambios de carga del motor dependen realmente de la aplicación, por lo que es un desconocido en este momento, por lo que es prematuro decir que está subdimensionado. En todo caso, el controlador tiene un tamaño inferior al que puede proporcionar el suministro, pero es posible que esa capacidad no sea necesaria para la aplicación. Y cualquier motor atascado arrastrará un suministro de cualquier tamaño razonable, por lo que es un ejemplo discutible.
@ChrisStratton ¿Dónde coloco el capacitor de 1000uF? Cuando probé, lo puse a través de V y GND de la fuente de alimentación donde ingresó al circuito.
No tengo ningún equipo extremadamente preciso, pero verificar la corriente máxima con un multímetro dice 0.25A, y mi fuente de alimentación tiene una capacidad nominal de 3A.
El 1000uF es otro condensador de desacoplamiento, excepto que es para su motor. Por lo tanto, va directamente a través de los rieles de alimentación. Los condensadores más grandes son para frecuencias más bajas donde la distancia no importa tanto, por lo que no tiene que estar lo más cerca posible de su motor. De lo que habla @ChrisStratton es de cómo los motores extraen una corriente al menos varias veces más alta que la corriente máxima en el arranque, ya que básicamente se estancan en el arranque. Esto es demasiado corto y rápido para verlo con un multímetro. Necesitas un visor para verlo.
@Toor Ok, sí, eso es lo que hice en el primer ejemplo, aunque veo que le puse un valor incorrecto. Debería haber sido 1000uF. Pero supongo que necesito ambos a través de los rieles y uno específicamente para el microcontrolador.
Como acabo de mencionar, los capacitores más grandes no funcionan a frecuencias más altas donde el efecto de las inductancias parásitas es más prominente. Esta inductancia es la razón por la que debe colocar los condensadores más pequeños cerca de los chips. En otras palabras, con capacitores más grandes, no necesita preocuparse tanto por la ubicación física y la cercanía. Entonces, solo un 1000uF para todo debería ser suficiente.