Arduino se bloquea al apagar el relé de 230 V

Aquí está mi esquema de circuito:ingrese la descripción de la imagen aquí

Necesito encender/apagar un ventilador de 230 VCA usando un relé. El relé es alimentado por una fuente de alimentación de 5V DC. El pin digital en la placa Arduino abre o cierra el circuito en PNP, ya que es ALTO o BAJO; Si es ALTO, el relé está encendido, de lo contrario, está APAGADO. También hay un diodo amortiguador para evitar la corriente de la inducción del relé.

El pin digital está controlado por mensaje RX.

Esto funciona muy bien cuando 230V AC está APAGADO, pero cuando está ENCENDIDO, el Arduino falla y no puede recibir mensajes RX.

Creo que algo anda mal en mi circuito. ¿Puedes ayudarme por favor?

Editar

Aquí está mi nuevo esquema: eliminé el transistor y el diodo amortiguador. El pin digital está directamente vinculado al pin de comando en el relé con una resistencia de 2.2k y un LED simple.

ingrese la descripción de la imagen aquí

RX/TX sigue fallando y el arduino parece actuar muy lentamente

En primer lugar, debe conectar la tierra de 5 V CC con la tierra de arduino. El diodo 1N4007 es demasiado lento para evitar correctamente las sobretensiones, pero eso no parece estar relacionado con su problema. ¿Puedes explicar mejor qué quieres decir con "choques"? Y estoy bastante seguro de que está usando un transistor NPN, o su esquema es incorrecto, o su bjt es mágico.
En realidad, no necesita el transistor o el diodo, ambos están integrados en el relé (este es el indicado, ¿no? proton.cz.avg.com/plan/31399/?detail=746216654982669497 ). Necesitas conectar la tierra de 5V a la tierra de Arduino.
Tienes razón, es un transistor NPN, lo siento, quiero decir con "fallos" que no puedo comunicarme con la placa, y los leds RX/TX siempre están encendidos Como me dijiste avakar, quité el transistor de mi circuito (eso es lo que pensé también, todo está integrado) y puse ambos a tierra juntos, pero sucedió el mismo problema ¿Debería poner un led entre el pin digital y el relé?
Como experimento, intente desconectar el ventilador del relé. Necesita un amortiguador allí para suprimir los picos inductivos del ventilador que pueden provocar la formación de arcos en los contactos del relé y también pueden provocar el reinicio de los circuitos cercanos. Vea esta respuesta a un problema similar: electronics.stackexchange.com/a/101879/25328
Cuando el ventilador está desconectado, el comando del relé funciona completamente. De hecho, tengo el mismo problema, así que necesito colocar el amortiguador entre "-" y "+" en el circuito de alimentación del relé.
No, el amortiguador es para el ventilador y la mejor ubicación es en paralelo con el ventilador. Consulte la información de la aplicación en la hoja de datos de Red Lion SNUB0000

Respuestas (2)

Dado que su problema desaparece cuando se desconecta el ventilador, parece que su problema se debe al pico inductivo causado por apagar el ventilador. Si fuera un circuito de CC, la solución sería un diodo flyback; sin embargo, dado que se trata de un ventilador de CA, necesita un Snubber y/o una abrazadera de alto voltaje, como un diodo TVS bidireccional (supresor de voltaje transitorio) o un MOV ( varistor de óxido de metal). Además de causar un "funcionamiento errático", el pico inductivo también puede acortar la vida útil de los contactos de su relé.

Puede hacer su propio amortiguador o puede comprar uno listo para usar, como Red Lion SNUB0000. Consulte la hoja de datos de Red Lion SNUB0000 para obtener información sobre la aplicación. El mejor lugar para conectar el amortiguador es en paralelo con el ventilador.

El amortiguador por sí solo probablemente será suficiente, pero si proporciona una abrazadera de voltaje como un diodo TVS bidireccional o MOV, debe sujetar a un voltaje mayor que el voltaje pico máximo de su línea de 230 V. Recuerde tener en cuenta el hecho de que el voltaje de su línea no está regulado y puede aumentar, y 230 V es RMS (no pico).

Gracias por tu respuesta que es muy útil para mí! :) Desafortunadamente, no tengo los componentes para hacer el amortiguador RC por mí mismo... ¿La capacidad y el valor de la resistencia son importantes para este circuito? (¿Deberían estar bien 0,1 µF y 100 ohmios?)
Es probable que esos componentes estén bien, sin embargo, debe prestar atención a la clasificación de voltaje del capacitor y la clasificación de potencia de la resistencia. Echa un vistazo a esta respuesta de Russell McMahon . Para un ventilador (si no es demasiado grande), probablemente un condensador de 1000 V o más (0.1 µF. Una resistencia de un vatio probablemente estará bien). Un voltaje más bajo probablemente estaría bien, pero asegúrese de que no se caliente.
Hice una prueba y el problema desaparece cuando no uso la comunicación en serie para controlar la placa de relés que he visto en esta respuesta de Prabhat Singh "optoisolate RX and TX" ... ¿Qué significa?
¿Has probado realmente un amortiguador? Cuando se trata de una "operación errática" debido a picos de voltaje inductivo, muchas cosas pueden hacer que cese la "operación errática" sin solucionar realmente el problema. Mover circuitos, cambiar conexiones a tierra, mover cables, etc. La mejor solución es solucionar el problema. Cualquier otra cosa es solo una "curita". Si no lo soluciona, es probable que experimente un "funcionamiento errático" aquí o en algún otro lugar; y aún es probable que dañe los contactos de su relé. Mantengo mi respuesta!
Todavía no recibí los amortiguadores y estoy totalmente de acuerdo con su punto de vista. Mientras tanto, estoy dividiendo mi circuito y haciendo que cada parte funcione por separado y tratando de obtener la mayor cantidad de problemas posibles. 1) El arduino enciende/apaga el relé normalmente sin ninguna entrada de datos RX 2) El arduino enciende/apaga el relé normalmente cuando hay una entrada de datos, pero necesita un gran retraso entre Serial.read() y digitalWrite() 3 ) El arduino envía datos TX normalmente cuando es el único trabajo por hacer
Estoy bastante seguro de que la respuesta que compartiste es mi problema.

Debe colocar el amortiguador de "-" a "+" en la bobina del relé. El problema definitivamente se resolverá.

ingrese la descripción de la imagen aquí