Soy muy nuevo en electrónica, en electronics.SE.com y este es mi primer proyecto, así que tengan paciencia conmigo si mi pregunta no tiene información clave (en tal caso, solo deje un comentario e intentaré agregar los que faltan bits)
He construido un dispositivo que controla unos 500 LED en más de 106 canales diferentes. Sustancialmente el diseño es:
- 1 fuente de alimentación conmutada de 24 V y 3 A
- 1 regulador de voltaje que emite 5V
- 1 tablero de control que ejecuta un AVR ATmega168 (conectado al regulador de voltaje)
- 106 cadenas de LED (conectadas al riel de alimentación de 24 V)
- 7 controladores TLC5940 (16 canales cada uno) para las cadenas de LED (estos absorben el resto de los 24 V de los LED, pero su lógica se alimenta desde el regulador de 5 V).
Todo funciona bien, pero estoy experimentando graves problemas con el ruido que a veces desencadena un reinicio inesperado de mi dispositivo .
Gracias a un amigo que tiene un DSO, he podido investigar el asunto y estos son mis hallazgos ...
El ruido está en el riel de alimentación de 5 V y es bastante grande, el swing general es de 2.55 V. Los canales SPI son relativamente poco afectados:
El ruido parece ser generado por los LED , no por la transmisión de datos SPI (no existe una correlación obvia entre ninguno de los canales SPI y el ruido). En este video (lo siento, no pude encontrar una manera de incrustarlo aquí) puedes ver que la cantidad de LED que están ENCENDIDOS influyen en la amplitud del ruido, mientras que su intensidad (controlada por PWM) influye en la duración del ruido " burst "[más detalles sobre la descripción del video en youtube].
La frecuencia del ruido es ~ 8MHz , que es una frecuencia que no uso (al menos no explícitamente), dado que mi placa controladora funciona a 16MHz y mi SPI a 250KHz.
Mientras hacía mis experimentos, me di cuenta de que el DSO captaba el ruido incluso cuando solo estaba conectado el terminal de tierra de la sonda. Interpreto esto como una señal de que el ruido no se debe a una inestabilidad de la alimentación de 5 V, sino a un potencial oscilante del nivel del suelo . Estoy en lo cierto?
Siendo totalmente nuevo en electrónica y carente de conocimiento formal en el campo, probé una serie de soluciones "de Internet", es cierto que sin ser 100% tenían sentido en mi escenario. Entre otros probé:
- para construir un filtro de paso bajo usando una resistencia de 1Kohm y un condensador de 100nF y colocarlo en el riel de alimentación de 5V, pero el ruido no cambió mucho en amplitud.
- para desacoplar el riel de 5V con una variedad de condensadores diferentes, incluidos algunos de tantalio [varias clasificaciones] (sin efecto visible)
- para desacoplar la línea de tierra (hizo que el DSO se volviera loco)
- conectar a tierra los LED, la placa TLC y el DSO a diferentes partes de mis circuitos, incluso lo más atrás posible (es decir, conectarlos con cables separados al puerto de tierra de la fuente de alimentación de 24 V para evitar bucles de tierra) ... pero También en este caso no tuve suerte.
Bien podría ser que hice lo anterior de manera incorrecta (es decir, que la solución es una de las anteriores, pero que la implementé mal), entonces, si cree que la solución es una de las anteriores, no dude en decir tal vez, dándome alguna dirección sobre cómo implementarlo "bien".
Nota final: debido al tamaño físico de mi proyecto, realicé todas las pruebas usando solo una de mis placas TLC que quité cuidadosamente del equipo y usé algunos LED de prueba individuales alimentados por una fuente de 5V. Sin embargo, las pruebas menos precisas en el equipo completo muestran que el comportamiento en la "cosa real" es consistente con las lecturas de la prueba.
Gracias de antemano por su tiempo y apoyo!