Interferencias electromagneticas por desconexion de cargas inductivas

Buenas amigos estoy trabajando en un programa que me permita encender un electrovalvula de 110v AC y llenar un recipiente con agua. En el codigo tengo activa la interrupcion 0 del pin 2 respectivamente, la interrupcion esta con la condicion de FALLING, conectada con una resistencia de 10k entre vcc y un pulsador N.O. que al accionarlo pone el pin en estado LOW y acciona la interrupción. Hasta aqui todo funciona correctamente el problema es el siguiente: activo la electrovalvula usando un transistor 2n3904 que acciona un relay de 5V (los 5v los obtengo de otra fuente externa) y permite encender la electrovalvula, el problema es que al momento de apagarse la electrovalvula me acciona la interrupcion, esto ocurre en algunos casos de manera intermitente o simplemente cada vez que se apaga la electrovalvula; investigando un poco encontre que al desconectar cargas inductivas se producen corrientes parasitas por el campo magnetico de la electrovalvula, he de mensionar que accionando el relay unicamente no ocurre la falla, dado que utilizo un diodo en inversa paralelo al relay. dico esto, realice una prueba encendiendo una carga AC no inductiva y santo remedio, no ocurrio la falla por lo cual compruebo que es el campo magnetico de la electrovalvula

Por otro lado, en el codigo yo no declaro el pin 2 como entrada, pero lo seteo en LOW (void setup), no se si usando las resistencias de pull-up internas del arduino pueda evitar este inconveniente osea declarando el pin como entrada y seteandolo en HIGH, esto a nivel de software a nivel de hardware he encontrado soluciones que no estoy muy convencido como usar una especie de jaula de faraday que contenga al arduino o usando ferritas pero no si ni donde colocar la ferrita.

Gracias chicos /

Tienes varios caminos para recorrer e intentar solucionar el problema: 1) lee el proyecto PLC que esta en el subforo proyectos. En el estan discutidas muchas de las consideraciones que se le deben sumar a un arduino para prevenir estos problemas. Sea o no una carga indcutiva Desde ya usa optoacopladores, no compartas fuentes, usa filtros RFI a la entrada de la fuente del Arduino. Limita el slew rate presente en la electroválvula o agrega un disparo por cruce por cero en la electroválvula, eso se puede hacer usando un moc3020 (creo que era el de 110V). Entonces cuando le des la orden a la electroválvula para accionarse, ésta comenzará a recibir tensión al cruce por cero limitando la EMI (interferencia electromagnetica).

primero te doy las gracias por tomarte el tiempo de leer y responder, por brindarme tu ayuda y tu conocimiento.

estuve leyendo un poco acerca del tema por libros y otras fuentes y en varias partes vi lo del cruce por cero para eliminar las interferencias por cargas inductivas, pudieras ser tan amable y brindarme un poco mas de informacion.

Gracias

Algo asi es tu solución

LOAD es tu carga o válvula. Los otros terminales son los de 110VAC. Solo habría que ver si este optoacoplador es el apropiado para 110VAC. Se que lo es para 220VAC. supongo que no habrá problemas.

surbyte muchisimas gracias por el esquema, segui leyendo y estaba caasi decidio a implementar esta solucion y eliminar los rele de mi diseño pero no estaba seguro de como conectarlo, nuevamente gracias por el esquema. Me nace otra duda, de que manera el accionamiento del optotriac de paso por 0 ayuda a eliminar el ruido electrico? gracias por tu ayuda

Te lo expliqué pero va de nuevo. Imagina esto: Tu le das la orden de activar a la válvula que sabemos es inductiva, o sea va a provocar defasaje entre tensión y corriente pero si no hay tensión no hay corriente. Entonces cuando la tensió pasa por cero, que ocurre, la orden recién se establece para actuar sobre la válvula y el efecto de interferencia EMI disminuye a valores que práctiamente no molestan. Tambien el ruido eléctrico que genera un RELE que rebota al ser accionado. Hay muchas cosas que ocurren que uno no ve, pero si pones un osciloscopio verás lo mismo que un switch al ser presionado, o sea rebotes. Estos rebotes a cualqueir tensión generan ruido que pasan por la linea, van a tu arduino y lo disparan. Por eso te sugerí que usaras optos en entradas y salidas (este es para la salida). Pero en ambientes ruidosos se deben considerar todos los aspectos. Prueba esto y si funciona tal vez no debas tomar mas precauciones.

surbyte muchas gracias de verdad por compartir conmigo un poco de tus conocimientos, ya tengo los elementos y claro realice consultas apartes, mire los datasheet y si, ahora mismo voy a realizar las pruebas, luego les comentare mis resultados :D gracias.

Vaya vaya vaya.. no me percate de algo que ahora si. Tu hablas de que la falla se presenta al desconectar la válvula y yo te sugerí algo para la conexión de la misma. La interrupción debe tener un esquema con optoacoplador tambien. Nada de conexión directa a lo que uses ahora. este es básico, debes adaptarlo a tu necesidad. en salida conectas el pin de la interrupción, gnd con la masa del opto. En la entrada tienes un diodo LED, calcula una Vled de 2V mas o menos. 15 mA de corriente Pero mira la hoja de datos al respecto.

De modo que si fueran digamos 24V los que quieres que controlen tu interrupción deberas usar una R = (24-2)/10mA = 2.2Kohms si V es en volts y corriente en mA el resultado es en Kohms

perdon por la demora, realice las pruebas con el moc, tuve que modificar un poco el diagrama eliminando la resistencia entre gate y T1, gracias por la ayuda, doy por solucionado el tema :D