Ruido en entradas digitales

Buenas a todos… estoy usando un arduino mini para automatizar un porton, nada muy complicado, dos reles para el motor principal, otro para un cerrojo, y cuatro entradas, control remoto, switch del cerrojo (para saber si ya abrio) y fines de carrera del porton (abrierto y cerrado).
Moviendo el porton a mano (sin la parte 220v ac conectada) pude verificar que todo estaba funcionando correctamente, pero al conectar la parte de ac las entradas comenzaron a cambiar de estado erraticamente, todas ellas.

Todo da que pensar que estoy teniendo problemas de interferencias, el cableado esta realizado con pares trenzados sin ningun blindaje, y van a la par de los cables que comandan al motor, y todo esta montado en un protoboard.

Por donde empiezo a tratar de filtrar estos ruidos? Cables apantallado? Entradas optoacopladas? Capacitores? Mejor me hago mecanico? jejeje.

Les dejo algunas fotos del “montaje” (palabra que le queda grande…) como para que critiquen.

Tambien agrego que el mismo cableado con la placa original del motor funciona correctamente. Tambien probe usando la resistencias pullup internas y externas de 10K, siempre con el mismo problema.

IMG_6990.JPG
IMG_6991.JPG

Amigo Dieguitofernandez. Disculpa mi poca imaginación, pero la foto del protoboard, no distigo bien de donde vienen y donde van los cables. Otra cosa, utilizando cables de colores, ayuda al seguimiento de los mismos. Es una observación que te hago, para un mejor intercambio de ideas.

Saludos.

P.D. Has unido las masas (ojo con la altena).

Muchas gracias por responder... pues ya lo daba por muerto al post! =( Las masas de la parte DC están todas unidas, no así con la parte alterna. La parte AC es comandada pura y exclusivamente por la plaqueta que esta anexada arriba del proto mediante dos relay. Aunque puede ser que me meta interferencias al estar cerca, al fin y al cabo todo empezaba a andar mal cuando colocaba el fusible en dicha plaqueta.

La primer va a ser usando optoacopladores para aislar las entradas, y cable apantallado conectado a masa, paralelo a la instalación actual, porque necesito que el porton siga andando!

Respecto a los cables del proto es cierto, esta un poco complicado...ensucia mucho los leds que testean las salidas del arduino y del uln2803, voy a volver a armar todo, con una sola entrada para minimizar los cables y poder probar el caso mas limpio.

También tengo un arduino duemilanove, ¿ estará mejor filtrada la tensión de entrada al micro en esa placa que en la mini con la que probe yo?

Lo que no consigo ver es como tienes alimentado la mini.

Los reles deberian aislarte del ruido, pero... Depende mucho de como conectes todas las masas. No veo ningun lineal, supongo que a la izquierda en la proto tienes un transformador.

Un esquematico ayudaria.

dieguitofernandez: Buenas a todos... estoy usando un arduino mini para automatizar un porton, nada muy complicado, dos reles para el motor principal, otro para un cerrojo, y cuatro entradas, control remoto, switch del cerrojo (para saber si ya abrio) y fines de carrera del porton (abrierto y cerrado). Moviendo el porton a mano (sin la parte 220v ac conectada) pude verificar que todo estaba funcionando correctamente, pero al conectar la parte de ac las entradas comenzaron a cambiar de estado erraticamente, todas ellas.

Todo da que pensar que estoy teniendo problemas de interferencias, el cableado esta realizado con pares trenzados sin ningun blindaje, y van a la par de los cables que comandan al motor, y todo esta montado en un protoboard.

Por donde empiezo a tratar de filtrar estos ruidos? Cables apantallado? Entradas optoacopladas? Capacitores? Mejor me hago mecanico? jejeje.

Les dejo algunas fotos del "montaje" (palabra que le queda grande...) como para que critiquen.

Tambien agrego que el mismo cableado con la placa original del motor funciona correctamente. Tambien probe usando la resistencias pullup internas y externas de 10K, siempre con el mismo problema.

¿Tierenes los relés con transistores?

Los relés los estoy comandando mediante un ULN2803. Les debo el esquema completo (voy a ver si al mediodia tengo tiempo de hacerlo) pero basicamente la alimentacion, tanto de 5v como de 12v para los relés se toma de una fuente de PC.

Acá esta el esquema, la alimentación como comente antes viene de una fuente de pc que esta destinada a esta prueba. Respete mas o menos la ubicación de los componentes tal como esta en la foto, pero simplificando a una sola entrada y una sola salida para que sea mas claro. El resto de las resistencias y leds que se ven en la foto estaban para poder observar el estado de las salidas mientras probaba el circuito sin habilitar la parte de 220v.
El motor ademas tiene tres cables para permitir el cambio de sentido de giro, también simplifique el diagrama.

Pues de buenas a primeras no veo nada raro ni muy llamarivo. Prueba a conecta la alimentacion del motor en una fase y los 5V y 12V en otra.

el integrado, ¿lo tienes bien alimentado? no veo que tenga alimentación permanente. yo le daría + y - siempre y activaría una de sus salidas con una salida del arduino. la tensión continua es 12V?

dieguitofernandez: Acá esta el esquema, la alimentación como comente antes viene de una fuente de pc que esta destinada a esta prueba. Respete mas o menos la ubicación de los componentes tal como esta en la foto, pero simplificando a una sola entrada y una sola salida para que sea mas claro. El resto de las resistencias y leds que se ven en la foto estaban para poder observar el estado de las salidas mientras probaba el circuito sin habilitar la parte de 220v. El motor ademas tiene tres cables para permitir el cambio de sentido de giro, también simplifique el diagrama.

Tienes el arduino sin alimentación. Métele el positivo por el VIN, no por el 5V que creo que es lo que haces.

Si lo alimenta por Vin va a ir a parar a la entrada del regulador y no va a funcionar. Por la entrada +5V lo que hará es alimentar a toda la circuitería.

Pero quizás hayas dado con la tecla: ponle un condensador de 100nF (0,1uF) de desacoplo en la entrada +5V. Si no funciona añádele otro de 1uF.

Yo lo digo porque trabajo con arduino nano y siempre alimento por Vin, que es por donde se alimenta. El pin de 5V lo uso para alimentar cosas externas. Veo más seguro alimentar el arduino por Vin, porque si le está metiendo un voltaje que no es al micro, éste se bloqueará, o hará cosas raras.

Eso es lo que me pasaba a mi. Un saludo

Si lo alimenta por Vin, tendrá que hacerlo con una tensión de entre 6V - 7V mínimo para que funcione bien el regulador. Es igualmente factible.

Hola, ya se que hace 5 años que nadie da solucion al este peoblema. Yo dejo mi solucion para aquellos que esten desesperados, como yo lo estube un buen tiempo en un priyecto industrial.

Pues bien para comenzar olvidaros de PullUp de 10 k externas y de las internas del arduino.

Con esos valores las entradas digitales van bien para proyectos compactos sobre arduino o protoboard. Pero cuando sacas un cable de mas de 5 centimetros de largo se convierte en antena receptora de ruido. Yo lo solucione, colocando PullUp de 2,2 Kohms. Va divino. E implante debounce por software, y va divino.

Un Saludo.