perdón por la longitud.
Esta es una continuación de mi pregunta reciente . Tengo una placa optoacoplada de 8 relés que estoy tratando de conectar a mi microcontrolador. He colocado un registro de desplazamiento 74HC595 en línea para consolidar los puertos de entrada. Sin embargo, al hacerlo, la placa ha mostrado un comportamiento extraño.
Si no conecto nada, o solo una pequeña carga en los relés, todo funciona bien usando el registro de desplazamiento. Se encienden y apagan sin problema. Tan pronto como conecto una bomba de más de 1 amperio en el relé, puede escuchar cómo se activa el relé y luego se desconecta rápidamente. El LED IN1 (diagrama de arriba) también se ilumina durante una fracción de segundo. Sin embargo, a veces (1 de cada 5) el relé y la bomba permanecen encendidos. Ahora aquí es donde se pone raro; si elimino el registro de desplazamiento y conecto directamente los pines al microcontrolador, funciona bien al encender la bomba.
Entonces, se mencionó la interferencia en el registro de desplazamiento, pero según tengo entendido, el diseño de la placa de relés, el registro de desplazamiento solo enciende el LED en el optoacoplador (U1) y de ninguna manera está conectado a ninguna otra parte del circuito (registro de desplazamiento y el controlador funcionaban con batería). La placa también es Active Low, por lo que tengo entendido que el registro de desplazamiento está absorbiendo corriente del optoacoplador. ¿Podría ser que el optoacoplador requiera más corriente para cambiar la carga más alta de lo que puede hundirse el registro de desplazamiento? Puedo estar muy lejos ya que esto me tiene desconcertado. Además, ¿hay alguna forma de que la interferencia pueda entrar aunque esté aislada y con una batería?
Todas las pruebas se realizaron con una batería alimentando el microcontrolador \ el registro de desplazamiento y un boceto muy simple que apuntaba a un solo pin de registro de desplazamiento por byte.
El relé de 8 ( información ): actualmente está configurado con una verruga de pared de 5 V separada que alimenta los relés. El microcontrolador proporciona 5 V para alimentar solo el optoacoplador.
Aprecio cualquiera ayuda que me puedas proporcionar.
Actualización 13 de agosto:
Todavía no pude, pero hice muchas más pruebas: moví el registro de desplazamiento y Arduino a 3 pies de distancia de los relés y la red eléctrica. Ambos funcionaban con una batería de 9V. Lo único conectado a la placa de relés era un riel de 5V del Arduino y los 8 cables del registro de desplazamiento a las entradas de la placa de relés. Los mismos resultados, la luz de 100 W funciona muy bien, la bomba hace que se desconecte. Si elimino el registro de desplazamiento y conecto los pines de salida directamente al Arduino, la bomba se enciende sin problemas.
Solo para verificar que no sucedía nada con la verruga de pared de 5 V dedicada que alimenta los relés, la desconecté y reemplacé el puente en JD-VCC y VCC y conecté el Arduino GND. Mismo resultado, la luz de 100 W funciona, la bomba hace que se dispare.
Tiene que ser registro de desplazamiento.
También coloqué un condensador de desacoplamiento de 47 uf en los rieles de alimentación, y el registro de desplazamiento tiene un 104 justo al lado.
Esta noche intentaré poner un multímetro en línea con uno de los pines de salida, quiero ver cuánta corriente está tirando el optoacoplador.
Acabo de comprar un osciloscopio también, así que todavía estoy aprendiendo a usarlo, pero tal vez pueda descubrir cómo medir cualquier interferencia en el riel de 5V o en las líneas de salida.
Actualización 14 de agosto:
Logré capturarlo fallando con mi osciloscopio. Archivos wfm de Rigol a continuación. El canal uno está conectado a un pin de salida en el registro de desplazamiento. El canal dos está conectado al riel de 5V.
Acabo de hacer algunas pruebas y logré reproducir un pico de 500mv-1V (a veces era una caída) tanto en el riel de 5V como en uno de los pines de salida del registro de desplazamiento. ese es el problema verdad? ¿Ese tipo de pico haría que el registro de desplazamiento se disparara y actuara de manera extraña?
15 de agosto:
A continuación se muestra una captura cuando enciendo o apago manualmente la bomba. No usar el registro de desplazamiento para hacerlo. La línea azul es el pin 1 de salida del registro de desplazamiento, la línea amarilla es de 5 V.
También he tomado algunas fotos de la instalación:
También tengo una publicación en el foro en la que también he estado actualizando los resultados: Arduino Forum
16 de agosto:
Pude capturar una imagen mucho mejor hoy. No me di cuenta de que el osciloscopio solo captura tantos puntos cuando se ejecuta a intervalos de 1 segundo (ahora tiene mucho sentido). Aquí está el malvado emi sobre el pin 1 del registro de desplazamiento:
Voy a recoger todos los componentes recomendados este fin de semana e intentaré agregarlos uno por uno.
18 de agosto:
Problema confirmado. La bomba estaba causando tanto ruido que nada de lo que podía hacer en las líneas de baja potencia podía contener las ondas. Esas ondas se abrían paso en el reloj del registro de desplazamiento\latch\pins de datos y causaban corrupción\restablecimientos.
Así que fui al extremo y arranqué un circuito protector de sobrevoltaje APC Rack de alta potencia y lo puse frente a la bomba.
Ahora apenas hay una señal en cualquiera de las líneas en cualquier lugar. ¡Viva!
Ahora, el objetivo principal era mantener esto contenido en el espacio de la carcasa, así que voy a ver si puedo hacer una versión más compacta, ya que creo que esta placa es excesiva y necesitaría una para cada una de las 5 bombas que tengo. Comenzaré con un solo MOV y veré cuánto reduce el ruido.
Problema resuelto: Decidí comprar un filtro de línea para ver si podía filtrar el ruido de la bomba directamente en la fuente. Compré esto: Filtro Delta de alto rendimiento . Ahora ni siquiera recibo ni un parpadeo en el osciloscopio.
Gracias por toda la ayuda a todos, desearía poder marcarlos a todos como solucionadores, pero no puedo, así que se lo di a quien ofreció la mayor cantidad de consejos.
¿Cómo se cablea el registro de desplazamiento? ¿Tiene un condensador de derivación de 0,1 uF entre los cables de alimentación cerca del paquete IC?
Me parece un problema de ruido, especialmente porque solo se activa cuando tienes una carga en los relés. El hecho de que resulte en el restablecimiento del estado de registro del registro de desplazamiento me hace pensar que es un problema de energía.
Además, ¿cómo estás conectando el registro de cambios?
Con un 74HC595, necesita:
Por último, necesita un condensador de derivación de 0,1 uF entre el pin 16 (Vcc) y el pin 8 (Gnd).
Intente mover el Arduino tan lejos del módulo de relé y la bomba como sea práctico. También asegúrese de que ningún cable relacionado con la alimentación (bomba) esté cerca del Arduino.
Luego use un cable de par trenzado o CAT5 para enviar la señal de encendido/apagado del Arduino.
No puedo abrir el archivo wfm (supongo que son algunos valores hexadecimales, pero esto será difícil de visualizar si se abre de todos modos), pero según su descripción, parece que capturó el evento.
Este pico (que puede ser más rápido/más grande de lo que se muestra en su alcance dependiendo del ancho de banda y la configuración) probablemente sea el problema. Queda por descubrir cómo un pico de este tipo llega a sus rieles; creo que en este punto una foto o dos de su configuración probablemente ayudarían mucho, y si es posible, un diagrama detallado de todo su cableado (bomba, módulo de relé, todo fuentes de alimentación, arduino, etc.)
¿Están unidos el adaptador de relé y la tierra de arduino?
EDITAR: mirando la imagen, el diseño no se ve muy bien, es un poco estrecho. Parece que hay cables de alimentación debajo del módulo de relé; estos pueden estar acoplados al lado aislado de Arduino. Trate de alejarlos si puede.
También debería usar CAT5 o similar para la señal de registro de desplazamiento: ejecútelo junto con 5V para disminuir el área del bucle.
En este punto, también intentaría agregar un par de diodos con polarización inversa a 5 V y tierra desde la salida del registro de desplazamiento, para sujetar cualquier pico que aparezca (5 V zener opcional, pero es una buena idea si tiene uno)
También puede colocar un condensador más pequeño de la línea a tierra (por ejemplo, 100 nF), ya que es solo una señal de interruptor.
Para estar completamente seguro de que no hay conexión entre algo que no debería haber, probablemente valga la pena probar la continuidad entre la tierra de Arduino y la tierra del módulo de relé, y Arduino 5V y 5V de relé.
Esto ciertamente suena como un problema de interferencia electromagnética.
La tierra de la fuente de alimentación de Arduino debe estar conectada a la "tierra verde" de su sistema de energía local. Se puede usar un enchufe en blanco con un solo cable a la 'tierra verde'.
Intente separar físicamente el cableado de la bomba del material de la microcomputadora.
También puede agregar un MOV (varistor de óxido de metal) "supresor de sobretensiones" a lo largo de la bomba para absorber los picos que pueden ocurrir cuando se cambia la carga.
¿Qué niveles de voltaje y corriente tiene la bomba?
Su cableado se ve bien.
bruno ferreira
Existir
Oli Glaser
Existir
stevenvh
Oli Glaser
Existir