# Entendiendo entradas optoacopladas.



## vjadan (Oct 14, 2015)

Hola a todos.

Estoy un poco perdido y no entiendo que es lo que pasa en un circuito.

He realizado una especie de "automata" con un atmega328p. Tiene unas 14 entradas y solo 1 salida. Para la entrada, como va a trabajar en una zona de 12 voltios he puesto un optoacoplador. La salida es a relé, a base de transistor.

El dicho aparato va a sustituir una serie de reles que según la configuración de los contactos de entrada, desactivarán dicha salida o no.

En un principio, estaba conectado mas o menos asi:







Como veis, tengo varios relés que no voy a sustituir. Alimentaba todo con la misma fuente, pero al activar/desactivar los relés las entradas del micro se activan al azar. Pensé que era un rebote malo de los relés, aunque le tengo puesto el diodo. Así que pense en usar fuentes independientes. El automata funcionaría con 12Voltios a los contactos, y como su salida es a relé, pensé que estaría totalmente aislada de la otra línea de 12 voltios de los reles. Pero para sorpresa mia, sigue haciendo lo mismo:






He pensado que puede ser problema de la entrada optoacoplada del automata. El esquema que tengo usado es el siguiente:






R1 es la resistencia limitadora, que fija la corriente del led del optoacoplador a 12v, 10mA, ley de Ohm, 1k2.
R2 sirve para limitar la corriente que pasa a través del transistor, y que he puesto de 10K, aunque en realidad, puede ser mas grande, ya que el micro no absorve corriente (o es despreciable) y solo interesa la tensión.

Las masas, son la misma en ambos casos, de hay pensaba que el fallo viene por ahi, sobretodo con los reles. GND-12 es la masa de 12voltios, y GND-MICRO es la masa de 5 voltios, que provienen de un 7805. Pero al separar las alimentaciones solo tengo contactos puros.

La primera duda que me surge es como puede un rebote meterse dentro del automata.

La segunda duda, cuando entienda la primera, es como mejorar la entrada optoacoplada. He visto varios circuitos, con diodos, resistencias y condesadores que luego me gustaria me ayudarais a entender.


----------



## torres.electronico (Oct 14, 2015)

hola, esa configuracion es PullUp, osea, cuando no hay señal de disparo en el opto NPN, la entrada de tu dispositivo se encuentra continuamente en estado alto. Si se dispara el opto, recien ahi tenes un estado bajo... tendrias que asociar otro transistor mas para revertir la logica


----------



## Daniel Lopes (Oct 14, 2015)

Hola a todos , un meo de resolver sin la nesecidad de lo  auxilio de mas un transistor inbersor es conectar la pata 8 del optoacuplador a lo +B y la salida hasta lo micro pasa a sener la pata 7 mas lo resistor de 10KOmios para la tierra (Pull-Donw)   .
Att, 
Daniel Lopes.


----------



## vjadan (Oct 14, 2015)

No utilizo la logica normal, mediante programa interpreto q cuando tengo un 0 en realidad tengo un uno



Daniel Lopes dijo:


> Hola a todos , un meo de resolver sin la nesecidad de lo  auxilio de mas un transistor inbersor es conectar la pata 8 del optoacuplador a lo +B y la salida hasta lo micro pasa a sener la pata 7 mas lo resistor de 10KOmios para la tierra (Pull-Donw)   .
> Att,
> Daniel Lopes.


No lo entiendo, como dices de conectar?


----------



## chclau (Oct 14, 2015)

La resistencia de 10K es un valor muy alto, yo probaria una de 1K si tenes problemas.

Que en estado estatico el micro no absorva corriente no quita que la entrada en cuestion es una carga capacitiva. Cuando la salida pasa de cero a uno una resistencia grande implica una carga lenta del capacitor de entrada en el pin del micro.

Las masas es mejor separarlas, pero para decirte como deberia entender mejor todo el circuito, asi como no se entiende de que rebote estas hablando que le entra al micro, rebote de quien, y en que circunstancias.

En definitiva, sin un circuito completo no se te puede ayudar.


----------



## Scooter (Oct 14, 2015)

No hace falta pullup. Ya hay uno dentro del micro que se puede activar por software.


----------



## vjadan (Oct 15, 2015)

Voy a intentar explicar brevemente el sistema, intentaré no enrollarme demasiado. 

La máquina a controlar en sí es un grupo hidraulico que se encarga de abrir y cerrar los alabes de una turbina de agua. Se compone de un cilindro, motor-bomba y dos electroválvulas. El cilindro es de simple efecto, así que para abrir se pone en marcha la bomba, y para cerrar lo que hay que hacer es abrir las válvulas que estan siempre cerradas. Hay dos porque una es la que permite bajar a una velocidad lenta y la otra hace que el sistema baje deprisa cuando haya un problema.

He aquí un pequeño diagrama eléctrico del sistema:





Como veis, la parte de control la manejo con 12 voltios y tres reles. Un pulsador para subir, otro bajar, uno de parada y un maestro, ahora después explicaré el uso del maestro. Las electrovalvulas son de 110v y el contactor que activa el motor trifásico también. 

El maestro es un relé armable manualmente, de esos antiguos que se abren con una bobina, de 110VDC, pero para cerrarlos hay que girar una palanca. El contacto de este maestro, hace que si se abre dejé de funcionar el sistema y se apague. 

Pues bien, este maestro, tenía conectados una serie de reles auxiliares, de señalización, etc. Estos relés eran activados por una serie de contactos de sensores de protección: máxima y minima velocidad, falta de agua, etc.

Son estos contactos los que yo he conectado a mi placa, a modo de automata. Dicho automata es un microcontrolador con las entradas a los pines optoacopladas tal y como indique al principio. La única salida que dispone la placa es un relé que activa dicho maestro
cuando uno de los contactos se cierra (o se abre, depende del sensor).

La placa se alimenta a 12 voltios e incluye una fuente pequeña de alimentación a base de un 7805, para la alimentación del micro:






Dispone de las entradas optoacopladas que puse anteriormente y una salida con un relé de 5V, montado de la siguiente forma:






Al principio, para alimentar el automata y los contactos de los sensores utilizaba los 12 voltios del esquema eléctrico de los relés que he puesto a principio. Cabe decir que el automata cumple su cometido perfectamente. Pero al activar el sistema hidraulico, vienen los problemas. Por las entradas optoacopladas, cada vez que juego con los relés (totalmente al azar, una veces al arrancar, o al subir, o al bajar, ...) me entran falsas señales y claro, dispara el maestro.

Sé que cuando un relé deja de estar alimentado, se produce una f.e.m inversa que induce una tensión en la bobina y puede hacer daño al circuito. Por eso, y para evitarlo, se les pone un diodo invertido que "soluciona" el problema. Mis relés lo tienen.

Aún así, tenía el problema de falsas señales. Así que opte por no alimentar al automata ni a los sensores con los 12 voltios de los relés, si no que estan con otra fuente independiente. Y aun así sigue estando el mismo problema: sólo funciona, pero cuando intento manejar el sistema hidraulico empiezan a haber señales falsas. 

Ahora bien, y repito, mi duda, ¿puede un relé inducir corrientes en otro circuito? que no tienen nada en común, excepto la entrada de 220voltios que alimentan las dos fuentes.

En cuanto a la entrada optoacoplada es el circuito más simple. Viendo diseños de otras placas y estudiando circuitos (incluso los que hay en este foro), he visto que nada de una sola y simple resistencia en el lado del diodo led, si no que son algo más complejos, que es mi futura duda y pediré asesoramiento.

En el lado del microcontrolador, no me importa si la señal esta invertida. Obviamente, cuando entra corriente por el led del optoacoplador, el transistor se satura y tengo 0v en la entrada del micro. Pero mediante software, interpreto lo contrario: cuando tengo 5voltios es un cero, y cuando tengo 0v es un 1. Así me ahorro el tener que poner un inversor en el diseño de la placa.

Ufff! me enrollé sin querer!!.


----------



## Scooter (Oct 15, 2015)

Necesitas otra fuente para las entradas. Si optoacoplas y luego alimentas de la misma fuente no haces nada
Necesitas una fuente de calidad. El 7805 no es santo de mi devoción para cosas delicadas...
Un largo etcétera.

Busca en el foro, es un tema muy muy recurrente.


----------



## vjadan (Oct 15, 2015)

Consultándolo con la almohada, pensé en lo que me acabas de comentar. Así que una de las pruebas que he hecho esta tarde ha sido alimentar la placa con otra fuente, totalmente ajena, y dejar las entradas con la fuente de 12V. Conclusión: sigue ocurriendo lo mismo.

Ahora bien, he probado una cosa: corto los 110V, con lo que puedo trabajar con los relés pero no puedo activar el motor ni las electroválvulas, y cosa curiosa, el sistema funciona.

He revisado todo el cableado, por si acaso tengo algun cable que me una los 12 y los 110 voltios y no he encontrado nada. El siguiente paso ha sido desconectar los contactos de los relés a 110 y entonces el sistema falla igualmente. 

¿Puede una tensión elevada de continua (110V), provocar algún tipo de ruido electrico, en otra línea de poca tensión (12V) simplemente porque un contacto se abra o cierre? ¿Y si la respuesta es SI, ¿cómo puede evitarse?

En cuanto a los del 7805, miraré que otras alternativas hay. Aunque creo que mas que el regulador que le ponga, el "ki" de la cuestión es que 12V le meta. Tengo un problema similar con otra placa (lector de pt100) que funciona a la mil maravillas siempre y cuando la fuente sea la adecuada. Y no creo que la fuente de un zapatofono movil sea la mas adecuada y es la única que me funciona bien, nada de conmutadas y cosas así.


----------



## Scooter (Oct 15, 2015)

Es totalmente lógico que funcione sin carga. El problema seguramente está en la fuente. Si no hay ruido no entra.
Ahora la pregunta es por donde entra. Lo primero de todo es poner una fuente de calidad y no un cutre7805
Un lm323 parece lo mismo pero no es lo mismo, filtra notablemente mejor.
Colocar varistores l-n l-pe y n-pe etc etc. Lo de siempre y rezar por que salga el problema.


----------



## chclau (Oct 15, 2015)

La apertura y cierre de contactos de reles puede estar acompañada por la formacion de arcos que generan interferencia electromagnetica.

Una cosa que se puede probar para reducir esa fuente de ruido es colocar un circuito RC - "snubber" - en paralelo con el contacto del rele.


----------



## vjadan (Oct 16, 2015)

Para *scooter*:

Creo que sí, tengo problemas, tanto en la fuente, como en la entrada. El lm323 me es más díficil de conseguir, no tanto un lm317, te merece una mejor opinión. ¿alguna otra opción?

Para *chclau*:

No conocía los filtros snubber hasta hace unos días que en otro foro, se lo sugirieron a un chaval y he estado mirando como funcionan. La duda es como calcular los valores de los componentes.






Casi todos los valores que he encontrado en ejemplos y demás están calculados para la línea de 200VAC de casa. Claro, esta línea es de 110VDC:


El valor de la resistencia tengo entendido que hay que calcularla, según se descarge el condensador, dependiendo de la corriente de lacarga, en un orden de 10 veces superior. Ahora no sé que puede consumir la electroválvula, pero pongamos de 100mA, x10, 1A, si la tensión es de 110VDC, ley de Ohm, 1ohm y la potencia 10W.  ¿Me equivoco?
El valor del condensador no tengo ni idea de como calcularlo.
Otro tema es la disposición de ambos elementos. El Condensador al positivo y la resistencia a la carga o al, revés, ¿es importante o no?

P.D. Esta tarde voy a hacer una prueba, quitaré las fuentes de alimentación y alimentaré con baterias, tanto el automata como los relés. Así sabré si me entra algo por la alimentación


----------



## Scooter (Oct 16, 2015)

Mejor el LM323 por mi experiencia. Tampoco es.milagroso, pero mejora.

En mi experiencia las redes snubber en los contactos de relés sólo me han traído problemas; se perforaban los condensadores y se quedaba cerrado el circuito a través de la red snubber.

A mi lo que mejor me ha ido son los varistores. Eso si que da una diferencia significativa.

Compras una carretilla y vas poniendo por doquier.


----------



## vjadan (Oct 16, 2015)

Perdona mi ignorancia pero donde pones los varistores...


----------



## Dr. Zoidberg (Oct 16, 2015)

Scooter dijo:


> Compras una carretilla y vas poniendo por doquier.



No parece un metodo muy cientifico....


----------



## Fogonazo (Oct 16, 2015)

@Scooter se refiere a emplearlos en paralelo con el contacto del relee para evitar que se generen tensiones demasiado altas sobre los mismos, con esto se aumenta la vida útil del relee y se limitan las emisiones EMI

Los varistores los puedes colocar, además del ejemplo, en cualquier alimentación de tensión que podría recibir o generar una sobre-tensión, también se pueden emplear en entradas de señales.


_____________________________________



Dr. Zoidberg dijo:


> No parece un metodo muy cientifico....



 ¿ Hubo cambio de look ?


----------



## Scooter (Oct 16, 2015)

No será científico, pero es lo más eficaz que he probado a años luz de todo lo demás.


----------



## acalienda (Oct 16, 2015)

Creo que el problema puede venir de un rebote en el contacto del rele que activa el optoacoplador.
Prueba colocar en paralelo con el contacto del rele un condensador de unos 100 nF


----------



## chclau (Oct 17, 2015)

Scooter dijo:


> Mejor el LM323 por mi experiencia. Tampoco es.milagroso, pero mejora.
> 
> En mi experiencia las redes snubber en los contactos de relés sólo me han traído problemas; se perforaban los condensadores y se quedaba cerrado el circuito a través de la red snubber.
> 
> ...



Es cierto, concuerdo, los varistores son mejores. A mi tambien me ha pasado que se perforen capacitores y es un papelon, porque en esos casos tranquilamente se puede quemar la resistencia del snubber. Mira, me paso hace mucho y me hiciste acordar de eso... se ve que por el trauma lo tenia borrado.





Dr. Zoidberg dijo:


> No parece un metodo muy cientifico....



Somos pocos los cientificos por aca, la mayoria, tecnicos e ingenieros.

Se podria hacer un analisis cientifico de interferencias electromagneticas con herramientas de SW y computadoras que, a ojo de buen cubero, superan los 100K Obamas. Y eso sin tomar en cuenta el tiempo y los costos necesarios para modelar el sistema.

Despues de varios meses y varios cientos de miles de dolares, aun no habriamos terminado y Scooter se nos quedaria mirando y riendose desde su lugar de vacaciones, habiendo terminado cinco meses antes que nosotros y a un costo mil veces menor.


----------



## Scooter (Oct 17, 2015)

Para seguir un método científico hay que tener datos científicos y el único que  tengo es "a veces no funciona" así que a partir de esa información averiguar la fuente del problema es complejo.


----------



## Fogonazo (Oct 17, 2015)

​


----------



## Dr. Zoidberg (Oct 17, 2015)

Fogonazo dijo:


> ¿ Hubo cambio de look ?


Seeee...!!!!
Fui al cirujano plastico de Silvina Luna


----------



## vjadan (Oct 17, 2015)

Hola de todos de nuevo, hoy he estado un poco liado hasta ahora y no he podido atender a los mensajes, pero ya veo como ha ido la cosa , hagamos caso a *Fogonazo* no hagamos castillos de arena.

El uso de varistores no sé como encararlos, por que los conozco desde hace poco y no he llegado a usarlos nunca. Entiendo el funcionamiento y estoy buscando información sobre como tratarlos así que no puedo opinar mucho al respecto. Pero no descarto el uso de ellos.

Ayer hice alguna prueba mas o menos interesante. La primera es que quite la fuentes de alimentación y use baterías. Queria comprobar que no era ninguna de las fuentes que era sensible a esos picos. Y cómo me temía me he encontrado que no, que con las baterias es igual.

La siguiente prueba que quiero hacer es montar en una placa unos leds con su resistencia, conectarlos a los contactos como si fueran la entradas de mi automata y observar si se encienden. Teoricamente la entrada de un optoacoplador es un led. La haré máñana por la tarde, así que ya os contare.

Ahora bien, quiero que me ayudeis a estudiar este esquema:






Es un compendio de todas las configuraciones que me he ido encontrando sobre entradas optoacopladas:


 R1 es la resistencia limitadora. Sé que es necesaria para limitar la corriente que entra por el opto. Y su valor dependerá del valor de la tensión en la entrada. Como en la industria se usa 24VDC, el valor general de ella que he visto suele ser de 3k3, pero incluso he visto de 4k7. También dependerá de la corriente If del led del opto. La he puesto en la entrada B, pero también la he visto en A.
 D1 es un simple led, se enciende y punto.
 D3 es un diodo puesto invertido. No sé su función. Sé que en casi todos los esquemas que he encontrado es un 1N4148 (diodo rápido). Si es común en todas las configuraciones que he visto. ¿Alguna idea?
 R2 es una resistencia que he visto que tiene un valor más pequeño que R1. Y creo que sirve para fijar un nivel lógico en la entrada optoacoplada en ausencia de tensión. En mi caso si el contacto esta abierto no hay +12, pero si estan los 0. Si me equivoco corregidme.
 C1 y C2 son meros filtros. No sé si en mi caso harán algo. 
 R4 la he visto en algunas configuración y suele ser de un valor alto, 270K por ejemplo, y supongo que será para evitar una entrada de corriente elevada en el micro.

No he puesto en el circuito "entrada", ni "comun". En su lugar he puesto A y B. He visto que algunos lugares ponen el común al negativo, y dejan la entrada para que sea siempre positivo. En otros es al contrario, ponen la entrada común a positivo y es la misma entrada la que se pone a negativo. En vuestra opinión cual es la configuración mejor: ¿meter masas o 12 voltios?


----------



## Scooter (Oct 17, 2015)

R4 sobra. Si la pones de 270k o una barbaridad semejante seguramente no irá. La entrada de los micros con 10k ya va regular. Dependerá del modelo, pero añadir resistencia ahí no le veo ningún sentido.
El común se pone no común. Para eso se pone un optoacoplador, para "descomunar"
Una vez des-comunado es intrascendente si usas el positivo, el negativo o salteado uno de cada


----------



## vjadan (Oct 18, 2015)

Hola a todos de nuevo.

Hoy he realizado dos pruebas:

La primera ha consistido en poner unos diodos invertidos tanto en las electroválvulas y en el contactor de la moto-bomba. Al ser bobinas, el comportamiento ha de similar a los relés y por eso he pensado que mejoraría algo. Pero no he notado mejoria.

Luego he desconectado el automata y en su lugar, en las entradas, he puesto diodos led con su resistencia. Sigo funcionando con la bateria, así que solo tengo los contactos y los led. Cual es mi sorpresa que, efectivamente, cuando activo tanto electrovalvulas como motor, se encienden. Un pico, pero lo suficientemente fuerte como hacer que el optoacoplador funciones y por lo tanto el micro detecte el pulso.

¿Cómo se podría reducir la sensibilidad del opto para que no detectará pulsos tan cortos?

PD. Ah! como curiosidad y fuera del tema os dejaré una foto con el tapatalk.


----------



## vjadan (Oct 28, 2015)

Hola a todos.

Sigo teniendo el mismo problema, pero he encontrado una "solución" parcial. He analizado la lógica, y me ha permitido hacer que funcione. He usado contactos cerrados, asi que la entrada del "automata" tiene siempre tensión con lo que se hace inmune a los ruidos. El problema viene si utilizo alguna a 0, es decir, sin tensión en la entrada, y despues de unos arreglos software, parece que funciona. Aunque eso si, sigo sin estar convencido. 

Lo que me lleva a una serie de dudas:

Los filtros snubber antes mencionados, son circuitos RC, y creo que ya los venden hechos, ¿verdad?

En corriente alterna, los snubber deben funcionar bien, pero en continua lo suyo es poner un diodo. ¿Qué diodo recomendais para una bobina de relé y otro para un solenoide? ¿Dependerá de la potencia de la bobina?

Y por último, he navegado por el foro y he visto el tema de hacer un automata con un PIC, para el caso el micro es lo de menos. Pero me llamó la atención el uso de un 7414, que además de invertir, reduce el ruido. ¿Cómo?

Gracias por vuestra ayuda y sugerencias.


----------



## dogflu66 (Oct 29, 2015)

vjadan dijo:


> Hola de todos de nuevo, hoy he estado un poco liado hasta ahora y no he podido atender a los mensajes, pero ya veo como ha ido la cosa , hagamos caso a *Fogonazo* no hagamos castillos de arena.
> 
> El uso de varistores no sé como encararlos, por que los conozco desde hace poco y no he llegado a usarlos nunca. Entiendo el funcionamiento y estoy buscando información sobre como tratarlos así que no puedo opinar mucho al respecto. Pero no descarto el uso de ellos.
> 
> ...



D3: absorbe los picos inversos que puedan entrar.
C1: absorbe los picos o impulsos rápidos que puedan llegar.
R2: acelera la descarga de C1 después de la llegada de un pulso.

Sería posible poner una foto del montaje?.


----------



## vjadan (Oct 29, 2015)

Fotos de la placa y del montaje en el armario


----------



## torres.electronico (Oct 29, 2015)

vjadan dijo:


> Sigo teniendo el mismo problema, pero he encontrado una "solución" parcial. He analizado la lógica, y me ha permitido hacer que funcione. *He usado contactos cerrados, asi que la entrada del "automata" tiene siempre tensión con lo que se hace inmune a los ruidos.* El problema viene si utilizo alguna a 0, es decir, sin tensión en la entrada, y despues de unos arreglos software, parece que funciona. Aunque eso si, sigo sin estar convencido.
> 
> Lo que me lleva a una serie de dudas:
> Los filtros snubber antes mencionados, son circuitos RC, y creo que ya los venden hechos, ¿verdad?
> ...



por lo general, en todo microrelay programable home made, empleamos la  logica negativa con una resistencia pullup externa; Es la mejor opcion  para evitar falsas lecturas.
Como ya esta desacoplado el circuito,  puedes agregar transistores para cambiar la logica negativa a una logica  positiva; Si quieres algo mas limpio, implementa un inversor smitch tiger( dale clic al enlace  ) ...


----------



## argi (Oct 29, 2015)

Hola.
Leyendo el tema me he acordado que una vez me paso algo parecido utilizando optoacopladores 4N33.
Tal como te pasa a ti queria pasar señales de entrada a 12 voltios a un pic a 5 voltios y me daba disparos aleatorios.
En algun sitio vi que colocaban una resistencia de un mega entre la pata 6 (la base del transistor del optoacoplador) y gnd, y desde que puse esa resistencia ha ido bien


----------



## dogflu66 (Oct 29, 2015)

Los pic son elementos que contienen todos los módulos en una misma pastilla, esto hace que aumente su inmunidad al ruido externo, pero siempre hay que ayudarles con una distribución adecuada de los componentes en la pcb, el uso de componentes contra las interferencias y una buena pcb como mínimo de dos caras y con buenos planos de masa, distribución de pistas, cuidado con los ángulos de las pistas y un largo etc.
No es menos importante no mezclar en el montaje los cables de señales con los de potencia para no inducir posibles transitorios en los de señal. Cuidado por donde se pasan los cables de alimentación de la electrónica y etc.

En este caso al parecer los problemas los tienes por las entradas ópticas, el tema seria aplicar lo básico expuesto anteriormente, luego seria elegir unos optos más apropiados como el LTV826S.
En tu caso como te indica el compañero si tienes optos con pin de base exterior puedes probar a polarizarla a masa. De todas maneras en general a las entradas siempre que sea posible se les suele aplicar un retardo a la conexión, esto es, si la señal permanece de forma continua durante 500mSeg. por ejemplo, se genera la maniobra.

De todas maneras indico que en mis montajes no menos del 40% de los componentes suelen ser para desparasitado del circuito.


----------



## Scooter (Oct 30, 2015)

¿Medio segundo de retardo?
¿En serio?
Es verdad que en ocasiones un filtrado por software es lo mas efectivo y barato. Pero medio segundo me parece muchísimo para cualquier aplicación.

Por ejemplo yo leía la tensión AC para verificar que los triacs hacían bien su trabajo. En el paso por cero daban lectura errónea como es lógico, así que después de mil pruebas con circuitos los quité todos y filtré por software. El problema es que una avería típica es que se rompa medio triac así que como mucho podía filtrar 10ms, si ponía más ya no detectaba el fallo de medio triac. Por cierto, eran 48 triacs a la vez los que se miraban, sin "multitarea" y sin usar 48 microcontroladores.


----------



## dogflu66 (Oct 30, 2015)

Te entiendo perfectamente, yo tengo aplicaciones que llevan una supervisión de unos pocas docenas de uSeg. a varios segundos, todo de pende de la  aplicación.
Pero no hay que sacar el tema de contexto, indiqué que "siempre que se pueda", y en el caso de la aplicación de este hilo, segun las pruebas que ha realizado y si no necesita respuestas rapidas, es muy posible que se quite el problema aplicando corrección por sotfware, que es tan valida como cualquier otra.


----------



## vjadan (Oct 30, 2015)

> por lo general, en todo microrelay programable home made, empleamos la logica negativa con una resistencia pullup externa; Es la mejor opcion para evitar falsas lecturas.
> Como ya esta desacoplado el circuito, puedes agregar transistores para cambiar la logica negativa a una logica positiva; Si quieres algo mas limpio, implementa un inversor smitch tiger( dale clic al enlace ) ...



A ver si he entendido lo de la lógica negativa y lo de la resistencia pullup. Se me ocurre, así de bote, tener el opto siempre funcionando y hacer que la entrada se corresponda cuando le meto 0v. En esquema sería así, mas o menos:






He entendido lo del 7414, y creo que solucionaria bastante el problema de algunos transitorios no deseados, y en el próximo diseño probablemente lo tenga en cuenta. 

En cuanto al diseño, le digo a *dogflu66*, que intento hacer el diseño de esa manera, aunque también hay que tener en cuenta que el método de fabricación de placas que uso es el del permanente; lo cual, limita mucho el tamaño y el dibujado. Quiero probar el método de la plancha y me temo que tendré que comprar una (madres!! pardiez!!).

El opto que uso es un TLP627, soy electrónico chapucillas y mis conocimientos no dan para mucho, asi que si miro las caracteristicas de unos y de otros, en el datasheet, no se apreciar con detalle las caracteristicas que los puede diferenciar. Se que en lo que se refiere al TLP es que la salida es un darlington, lo cual viene bien si quiero salidas a transistor, que de momento no he usado. No tiene acceso a la base del transistor.

También pensé en usar un retardo por software, pero... ufff, en el que he montado es una simple protección mecánica, y 200-500 ms no es gran cosa. Pero el otro que he de montar es de protecciones electricas y me interesa la instantaneidad.

Por cierto, *Home Made Programmable Microrelay*, me gusta, ¿tiene alguien los derechos, o puedo copiarlo?


----------



## torres.electronico (Oct 30, 2015)

no se, tendria que hablar con mis abogados de la Fogo Inc. 

volviendo a lo de logica negativa / postiva ... actualmente tu circuito funciona de esta manera



Cuando arranco todo, yo te recomendaba implementar un TR mas para cambiar la logica


Es una solucion practica, pero si estamos hablando de hambientes propensos al ruido, la implementacion del inversor smitch trigger, es lo mejor que podes hacer, ya que no tendrias que modificar software para la lectura de disparo... saludos


----------



## Scooter (Oct 30, 2015)

Es intrascendente la lógica negativa o positiva; haces el programa "al revés" llegado el caso y listo. Invertir señales por hardware no tiene sentido.


----------



## torres.electronico (Oct 30, 2015)

tal cual estimadisimo Scooter, pero pasa que que hay veces que nos topamos con automatas comerciales "ya programados", donde no podemos modificar nada por normas y politicas de la empresa, y no queda mas que hacer etas peripecias...
En una petrolera que trabaje, para poder modificar un programa de un PLC "en campo", se tenia que elevar un informe, y en paralelo, no solo pedir permiso al recorredor, supervisor, gente de sistema de guardia, instrumentistas de guardia de la operadora, el pichicho que suele estar en el comedor del yacimiento y sus pulgas incluidas  , si no que tambien rellenar 18 mil formularios para que siempre te digan que "no toques nada", que la gente de sistema se encargara .


----------



## Scooter (Oct 30, 2015)

En ese caso si. 
La verdad es que además de para quitar ruidos los optoacopladores vienen de cine para tener masas separadas etc, para conectar "lo que sea"
Hace poco se me dio el caso co trario; un supervisor de una centralita de coche. Algunas señales eran por cero, otras por uno y otras a saber. Teniendo las masas separadas se puede adaptar cualquier cosa.


----------



## vjadan (Nov 1, 2015)

Hola de nuevo a todos.

He entendido la lógica del circuito que me ha puesto torres.electronico perfectamente, aunque como bien dice scooter, negar lo negado, por software se hace mejor. De todas formas el uso de un inversor trigger smitch, me parece lógico y bueno para reducir transitorios, sobre todo si el contacto vibra.

He estado analizando el último circuito que puse y no me ha gustado lo que me ha venido a la cabeza. Los contactos de los interruptores no son ideales, por lo tanto tienen una resistencia RC. Dicha resistencia si el contacto es nuevo, es cercana a 0 ohms y muy bien, pero con el tiempo, la oxidación, desgaste y el polvo estos contactos suelen tener una resistencia "alta" y no se si daría problemas...






Claro está que si el contacto lo pongo en serie el mismo problema está, pero es un poco diferente.

En cuanto al diagrama que puse:






Llegué a la conclusión de que R2 servia para establecer un nivel lógico predefinido para la entrada cuando el contacto está abierto y para descargar el condensador, también como me comentaron posts atrás. Pero releyendo cosas por internet me he encontrado con la Nota de aplicación AN-3001 de fairchild que dice lo siguiente:



> In some circumstances it is desirable to have a definite threshold for the LED above the normal 1.1 volts of the diode VF. This threshold adjustment can be obtained by shunting the LED by a resistor, the value of which is determined by a ratio between the applied voltage, the series resistor, and the desired threshold. The circuit of Figure 7 shows the relationship between these values. The calculations will determine the resistor values required for a given IFT  and VA. It is also quite proper to connect
> several LED’s in series to share the same IF. The VF of the series is the sum of the individual VF’s. Zener diodes may also be used in series.



Mi inglés está oxidado, pero según leo, dicha resistencia R2 sirve para establecer un límite de tensión umbral para que el diodo funcione, en vez de la tensión del diodo led. 

Por ejemplo, si la tensión usada en las entradas es 24 voltios y queremos una tensión umbral de 20 voltios. Según la nota:

IFT = VF/R2
R1=(VA-VF)/IFT.

IFT es la corriente del led. VF la tensión umbral y VA la tensión de entrada.

R2=VF/IFT = 20/0.01 = 200 ohms.
R1=(VA-VF)/IFT = (24-20)/0.01 = 400 ohms.

Lo del valor pequeño de R2 si me cuadra, lo que no me cuadra es el valor de R1. Así que en teoria dicha resistencia también sirve para ruidos indeseados.

Y sobre el tema de comunes o no comunes, dependerá de la aplicación. En mi caso, uso un común en placa, ya que soy el padre de la criatura y si no hace lo que yo digo lo hecho de casa. Así, cuando hago el cableado exterior, me evito duplicar puentes. En cuanto a lo de si poner común el negativo o el positivo, a nivel teorico, da lo mismo, pero en la vida real olvidate de la teoria. Hay muchos tipos de automatas comerciales y algunos llevan un común, o grupos de entradas con un mismo comun, lo que no he visto ha sido entradas independientes.


----------



## dmc (Nov 1, 2015)

vjadan, en algunas ocasiones he tenido problemas similares, la mayoría se solucionaron toqueteando el hardware (colocando apaga-chispas, varistores, resistencias y un largo, largo etc), otras veces por soft (con retardos, invirtiendo la lógica, etc.), en pocas palabras más o menos todo lo que te aconsejaron y que, a mi parecer es correcto. Pero una vez me toco hacer un control para camas solares (con Pic) y casi me vuelvo esquizofrenico, no había forma de que conectado funcionara bien, todo marchaba mientras no conectara los tubos UV, pero en cuanto los conectaba, comenzaban las fallas y para colmo en forma errática. Luego de mucho renegar descubrí que alejando los cables de control de la zona de los tubos, se solucionaba, llegue a trenzar los cables, cambiarlos por cable helicoidal y nada, la solución fue llevarlos por otro lugar hasta la placa de control por un conducto blindado. Espero que te sirva y, disculpen si  me explaye demasiado.


----------



## dogflu66 (Nov 2, 2015)

Hola dmc; te entiendo perfectamente, para mi el problema principal no son los fallos que se producen porque se terminan solucionando tarde o temprano, sino el grupo de personas que tienes detrás empujando.
Solo una pregunta, ¿la pcb o pcbs eran de varias capas y fabricación profesional?.





vjadan dijo:


> Hola de nuevo a todos.
> 
> He entendido la lógica del circuito que me ha puesto torres.electronico perfectamente, aunque como bien dice scooter, negar lo negado, por software se hace mejor. De todas formas el uso de un inversor trigger smitch, me parece lógico y bueno para reducir transitorios, sobre todo si el contacto vibra.
> 
> ...



No te preocupes por la impedancia de los contactos, esta seguirá siendo muy baja con relación a la de la entrada y por otro lado no se puede evitar.

Y sigues estando en lo cierto, toda la parrafada de la application notes se reduce en dos palabras "bajar impedancia". Cualquier resistencia en paralelo conlleva bajar la impedancia de la línea y, el calculo es, para saber cuanto puedes bajar de valor la resistencia y que siga funcionando el opto, porque si r2 es muy baja con respecto a R1 no funcionará y si es muy alta con respecto a r1, pues no hará nada.

De nuevo:
D2: Absorbe los picos inversos que llegan a la línea (ofrece baja impedancia a los picos inversos).
C1: Absorbe los picos directos que llegan a la línea (dependiendo de la frecuencia de la interferencia).
R2: Al bajar la impedancia de la línea ayuda a la descarga del condensador y absorbe algunos picos de alta impedancia (lo mismo que antes, solo es efectivo dependiendo de la frecuencia de la interferencia).

Si no quieres modificar nada, te aconsejaría que coloques uno o varios toroides en las líneas opto., suelen dar muy buenos resultados.


----------



## dogflu66 (Nov 2, 2015)

Este sistema también suele funcionar bastante bien, pero todo está en el tipo de interferencias:


----------



## dmc (Nov 2, 2015)

dogflu66, los circuitos están (gracias a Dios siguen funcionando) realizados de forma profesional (true hole, eich resist, metalizado,etc.), son de doble faz, porque, por la densidad de componentes y circuito no se justificaba más. La puesta a tierra y el blindado fueron y son una gran debilidad de los PIC, en ese sentido los micros de Atmel se comportan mejor (en mi opinión personal) pero, todo depende de la aplicación y de la disponibilidad de cada uno.
Lo que YO haría sería lo siguiente:
Compruebo el funcionamiento de la placa sin conectar la etapa de potencia, es decir en el banco de trabajo.
Cuando funcione perfectamente (menús, temporizaciones, accionamientos, etc.) lo conecto en el lugar de trabajo final, cuidando de que el gabinete  tenga una buena puesta a tierra y que el blindaje sea bueno, en mi caso, pongo un teléfono celular dentro del gabinete lo cierro y llamo, si recibe la llamada, por algún lugar se cuela RF, luego le conecto la etapa de potencia y simulo (Físicamente) la entrada con pulsadores, potenciómetros, etc. al lado de la placa que esta en el gabinete, cuando todo funcione bien conecto los sensores reales o finales, si tengo problemas de falsos disparos o funcionamiento errático reviso el blindaje de los cables desde los sensores, porque tienen la mala costumbre de hacer de antena a cualquier ruido eléctrico, no solo al del propio equipo, sino a cualquiera.
Con esta explicación no deseo parecer que me las se a todas (cuando en realidad no se casi nada) pero si comentar las experiencias que tuve y como los solucione.
En cuanto a la presión de los clientes, siempre será difícil el trato y es parte del trabajo lamentablemente.


----------



## dogflu66 (Nov 2, 2015)

Ok dmc; ¡y que sigan funcionando!.


----------



## vjadan (Nov 3, 2015)

dogflu66 dijo:


> Este sistema también suele funcionar bastante bien, pero todo está en el tipo de interferencias:



Entiendo el significado de L1 y L2, filtros. Lo que no me queda claro es la configuración de los zener. Puestos así parece que recortan la señal...

En mi caso hice las pruebas en mesa y todo funcionando. Cuando lo coloque en el armario es cuando vinieron los problemas. Digamos que las fuentes de ruido son dos motores, cuatro electrovalvulas, y unos cuantos relés y contactores, 30-40 por alternador, y los alternadores, pero estos en marcha no generan ruido, solo es al acoplar que si. La instalación es antigua y, claro, lógica cableada a base de relés y ninguno de ellos con diodo en la bobina, voy sustituyendo poco a poco y les coloco la protección.

De hecho mi intención es conseguir algo más o menos estable y que no acepte los rebotes de los reles. Para ello estoy probando varias combinaciones en mesa, con un relé sin diodo, para ver si consigo reducir la interferencia, sin ningún resultado hasta el momento.


----------



## dogflu66 (Nov 3, 2015)

No puedo añadir nada sobre el sistema, se que se utiliza y al parecer va bien, es uno más.



De todas formas si me permites un consejo yo probaría colocando vdr (varistores) de un voltaje ligeramente superior junto con unos núcleos de ferrita, y si sigue fallando, utilizaría contactos auxiliares liebres de tensión.


----------



## vjadan (Nov 3, 2015)

En teoria los contactos de entrada al automata son libres de potencial, son simples contactos o si hay algo de "electrónica" tengo a su salida los contactos de un relé. Por ejemplo, me hizo gracia el sensor de temperatura del cojinete donde se apoya el eje del alternador: lleva una sonda metida, que según se calienta, lleva la calor por un cable especial, que calienta gas que esta dentro del medidor e indica la temperatura y mueve el contacto de cierre... acostumbrado a pt100, lm35...

Una cosa que me viene a la cabeza, es el tema del optoacoplador. Veo que hay cientos de optoacopladores, pero para mi, a efectos prácticos son todos iguales: diodo emisor IR/LED y fototransistor, claro está, eso no es así. ¿Alguna guia/consejo/tutorial para analfabetos como yo? Al menos para lograr entender las diferencias.


----------



## dogflu66 (Nov 9, 2015)

¿Algún progreso?.


----------



## vjadan (Nov 9, 2015)

De momento no. Tengo otras faenas menos electrónicas, que hay que hacer leña que viene el frio . He conseguido un 7414 y voy a probarlo en cuanto pueda. De todas formas, sigo mirando configuraciones, y siempre me encuentro la misma: dos resistencias, diodo protector, condensador de filtro y poco más ¡¡¡ lástima de PLC para desmontar y analizar !!! 

De tanto mirar si me he encontrado que los fabricantes ya venden chips con las entradas preparadas como si de un PLC se tratara. Es decir, las entradas aisladas y preparadas en un chip con salida I2C generalmente para conectar al micro. Aunque no he me puesto a buscar donde conseguirlo ya que me gustaria comprender el por qué no funciona, además de que los que he visto son en formato SMD y todavia no me atrevo con ellos.

La última prueba que hice fue en 12 voltios, relé sin diodo, las dos resistencias (1k2 y 220 ohms), condensador de 100 nF y diodo protección inversa en el lado del fotodiodo. En el lado del transistor puse resistencia de 4k7, condensador de 100 nF y un arduino Leonardo que solo se dedica a leer y encender un led si detecta algo. Debo decir que con los condesadores funciona bastante mejor, la resistencia de 220 no hace nada si la quito o no. Y el diodo de inversa, obvio, si lo quito, "nasti de plasti" la polaridad es la correcta.  Si le pongo el diodo al relé, entonces ya no hay tanto ruido, pero también se activa la salida, no tan frecuente, 1 de cada 100...

Estoy preparando el segundo cacharro a montar, al igual que el anterior, si pongo las señales siempre activas, parece ser inmune al ruido. 

Y como curiosidad, metí un movil dentro del armario, lo cerré y llamé. No recibio señal. Algo es algo 

Me habeis aconsejado que ponga diodos en los reles de continua, y poco a poco lo iré haciendo, de todas formas en las electroválvulas lo puse y no hubo mejoria. Y tengo una par de solenoides tochos de 110VDC que no sé que diodo ponerle. ¿Y si le pongo varistores?¿de qué tensión?


----------



## dogflu66 (Nov 9, 2015)

Los utilizo dependiendo de la variación que pueda tener la tensión, un +20% creo que seria un valor razonable para probar.


----------



## vjadan (Nov 10, 2015)

Eso me alegra! 

La foto que puse de la caja de fruta tiene varistores de 275 voltios. Unos pocos, lo cual para relés/contactores de 220v me vienen ni que de perlas.

Esta mañana he tenido algo de tiempo para probar y he estado jugando un rato. Sigo con el mismo planteamiento de conseguir algo efectivo en la placa de pruebas. He montado el 7414 y la verdad, el problema sigue estando. Hasta el momento, aquí mis conclusiones:


 El uso de la resistencia en paralelo, no importa, solo define el umbral de activación del diodo.
 El uso de condensadores mejora el comportamiento. He usado condensadores de 100 nF y 22 pF que son de los que más tengo. Pero sigue siendo muy sensible.
 El uso del diodo de protección inversa del relé es efecto al 100%, algún rebote, pero perdonable.

Como he tenido tiempo, he probado una modificación en el software y le he puesto un retardo al encendido de 100ms, e increiblemente, es efectivo al 100%. Es decir que venga lo que venga por culpa del relé dura menos.

En un futuro tengo pensado diseñar un *Homemade Programmable Microrelay* con más E/S (16/16 al menos). Como el atmega328 no me da tantos pines y tengo unos MCP23017 disponibles los usaré para aumentar las E/S via I2C. Pero si empiezo a poner retardos por software seguro que me quedo sin memoria (tanto de programa como RAM). Así que he pensado en un retardo via hardware. Y aquí ya me pierdo. ¿Alguna sugerencia?


----------



## vjadan (Nov 11, 2015)

¿Qué opinión os da ese varios para un relé de 220v Ac?


----------



## vjadan (Abr 23, 2016)

Bueno, hace tiempo que no escribo en este post nada, así que voy a excribir un poco. 

La solución del retardo por software funciona perfectamente, y usando tan solo 150 ms de retardo. Pero hoy me levantado con ganas de investigar un poco más y he encontrado un circuito que me ha gustado, pero me gustaría que me dijeran su opinión.

Mi objetivo ahora es ahorrarme el retardo por software e intentar hacerlo por hardware, y he visto está configuración:







Creo que funciona así:


Si el led del opto no conduce, el transistor no conduce, asi que mientras el consendador se carga se mantiene un nivel bajo durante un tiempo. Dicho tiempo depende del valor de las resistencias y del condensador. En este caso T=C*(R1+R2).
Si el led del opto conduce, el transistor también lo hará, haciendo que el condensador C se descarge a través de R2, con lo que el tiempo de descarga será T=C*R2.

He echo pruebas con el proteus con valores de R1=10K, R2=1K y C=47uF. He obtenido valores cercanos a un retardo de 150ms en la simulación (tanto para carga como descarga). Aunque en teoría para una carga del condesador el tiempo es de 517ms y para la descarga es de tan solo 47ms. 

¿Qué opinan los expertos?


----------



## Scooter (Abr 23, 2016)

Donde esté un filtro por software que es gratis y reconfigurable y reajustable también gratis = gratis² que se quite el hardware.
Me parece que vale solo con el condensador en paralelo con el transistor.
Ya se carga por la resistencia de pullup que tiene que estar de todos modos, se descarga instantáneo que es lo ideal cuando se active el led.
El inversor también sobra porque invertir por software también es gratis =  gratis³

Yo solo pondría R1, virtualmente porque activaría la resistencia interna del micro y el condensador, osea solo el condensador. Pero mejor nada.


----------



## vjadan (Abr 23, 2016)

> gratis³



Estoy de acuerdo de que si se puede hacer por software es hardware que te ahorras. Pero el coste está en el peso del programa, y claro está, los micros no tienen memoria infinita. Mi idea era, poner un atmega328p, un arduino en toda regla, y como esta escaso de entradas/salidas, recurrir o a expansores I2C o más simple aún con 74xx595 y 74xx165. Empiezas añadiendo lectura de registros, temporizadores para cada entrada, procesamiento de la salida y al final te acabas quedando sin programa. Eso o recurrir a un micro más grande... 

El circuito, el inversor es una báscula trigger schmitt y si la quito supongo que no funcionaría bien del todo el circuito. Otra cosa que me gusta de él, y aunque los tiempos no son iguales, es que el retardo es a la conexión y a la desconexión. Con lo cual los posibles rebotes del contacto se minimizan en ambos sentidos.


----------



## Scooter (Abr 23, 2016)

No se, yo lo hacía con un 8052 a 1MIP, con 32k de eprom y 256 bytes de ram, con 32 entradas digitales, 8 analógicas, un teclado, un display lcd y dos puestos serie y me sobraba tiempo de máquina y memoria.
Obviamente delays ni uno.
La aplicación era muy crítica en cuestión de seguridad;un regulador de tráfico. Se montaron más de 50 funcionando 24h en el mundo real y no fallaron, pero bueno.
Es sólo mi visión del problema. Yo no lo haría por hardware. El que quiera gastar dinero y espacio físico que lo haga, no hay verdades absolutas.


----------



## vjadan (Abr 23, 2016)

Pues veras... me has pillado trasteando el hardware y efectivamente del dicho al hecho hay mucho trecho. He probado con varios valores de resistencia y condensador, un rele sin diodo y detecto mas fallos que beneficios. Le pongo la rutina de retraso y todo ok. Por ende, quien soy para llevarte la contraria ;D





Entre nosotros, hay fotos? Se puede ver? Me apetece sentir envidia sana


----------



## Scooter (Abr 23, 2016)

Fotos habían, ya no se donde están. Era un proyecto comercial del año 96.
Llegué a lesa conclusión por lo mismo que tu, después de probar con varios R y C no iba bien, pero por software si porque se podía ajustar en caliente...


----------

