Arduino Forum

International => Español => Hardware => Topic started by: arlaor on Apr 26, 2016, 08:01 pm

Title: Leer estado de rele externo
Post by: arlaor on Apr 26, 2016, 08:01 pm
Hay alguna forma de leer el estado de un rele que no este conectado a VCC y GND del arduino? (conectado a una fuente externa), donde solamente el cable IN desde el rele, se conecte a una entrada de arduino y me permita saber por el voltaje que tenga este si el rele esta encendido o apagado?
He intentado hacerlo por las entradas digitales y por las analógicas, pero el voltaje que tiene el arduino por defecto en cada entrada tanto analógica como digital  de aproximadamente 1.5V no me permite diferenciar el voltaje del IN del rele.

Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 26, 2016, 09:21 pm
Nunca podras saber un estado usando solo un cable. Debe ser un cable mas las conexion de retorno por GND.


Luego de leer todo tu mensaje veo que solo conectaste un cable.

(http://www.luisllamas.es/wp-content/uploads/2014/09/arduino-pulsador-3.png)

Tu problema es como estos dos esquemas. Donde el interruptor o pulsador representan los contactos de tu relé.
Supongamos NO y Comun.
Como verás debes usar una Resistencia por ejemplo de 4k7 pero puede ser de 10k tmb.
Y ese GND debe ser el mismo que el arduino. Y esa fuente si fuese otra mayor a 5V  va a quemar tu entrada asi que solo usa 5V.
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 27, 2016, 03:41 am
Nunca podras saber un estado usando solo un cable. Debe ser un cable mas las conexion de retorno por GND.


Luego de leer todo tu mensaje veo que solo conectaste un cable.

(http://www.luisllamas.es/wp-content/uploads/2014/09/arduino-pulsador-3.png)

Tu problema es como estos dos esquemas. Donde el interruptor o pulsador representan los contactos de tu relé.
Supongamos NO y Comun.
Como verás debes usar una Resistencia por ejemplo de 4k7 pero puede ser de 10k tmb.
Y ese GND debe ser el mismo que el arduino. Y esa fuente si fuese otra mayor a 5V  va a quemar tu entrada asi que solo usa 5V.

(http://i67.tinypic.com/28sx1dj.jpg)
Adjunto una imagen para mostrar lo que quiero hacer para darme a entender. La funcion del rele que esta conectado al circuito de la lampara es encenderse a 5V cuando yo active manualmente la lampara con el interruptor conmutable y este rele se supone comunicara al arduino que se activo manualmente la lampara y si arduino tenia como ultima funcion que estaba apagado, al leer el pin 9 que viene del rele externo, actualice su estado a encendido
Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 27, 2016, 04:33 am
Ves como yo te puse una imagen?
Pues lee las normas del foro y usa los tags correspondientes para hacer lo mismo.
Ya muchos de los que respondemos no bajamos las imagens adjuntadas porque solo llenamos de cosas que no queremos nuestras máquinas. Hay un procedimiento para códigos, enlaces e imágnes explicado en las Normas del foro.
Una leída y lo resuelves.
Espero tu imagen para responderte.
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 27, 2016, 04:45 am
Adjunto una imagen para mostrar lo que quiero hacer para darme a entender. La funcion del rele que esta conectado al circuito de la lampara es encenderse a 5V cuando yo active manualmente la lampara con el interruptor conmutable y este rele se supone comunicara al arduino que se activo manualmente la lampara y si arduino tenia como ultima funcion que estaba apagado, al leer el pin 9 que viene del rele externo, actualice su estado a encendido
No se si esta otra idea es mas descabellada que la anterior.
Puedo leer el puerto de 5V del arduino con uno de los pines digitales del mismo arduino sin que por alguna razon llegue a crear un cortocircuito al cablear los puertos del mismo arduino?
adjunto imagen de mi duda
(http://i64.tinypic.com/2urmi2u.jpg)
https://goo.gl/BkcYnp
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 27, 2016, 05:07 am
Ves como yo te puse una imagen?
Pues lee las normas del foro y usa los tags correspondientes para hacer lo mismo.
Ya muchos de los que respondemos no bajamos las imagens adjuntadas porque solo llenamos de cosas que no queremos nuestras máquinas. Hay un procedimiento para códigos, enlaces e imágnes explicado en las Normas del foro.
Una leída y lo resuelves.
Espero tu imagen para responderte.
gracias por las aclaraciones, he subido las imágenes para verlas directamente en la pagina
Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 27, 2016, 05:28 am
Ahora que veo los esquemas, al menos yo entiendo mejor toda tu idea.
Lo primero que veo es que trabajas con 110VAC.
Quieres ver el estado de un interruptor que acciona sobre una lámpara y conocer justamente su estado.
Esto es a tiítulo de estudiar como funciona todo? Porque hablaste de equipo de audio, tv, etc.

Bien, no he visto en detalle pero en lineas generales tu esquema podría funcionar aunque también puede mejorarse y mucho.
Tu quieres saber si algo esta funcionando o no, y para ello con ver si hay tensión te alcanza. Una manera de hacerlo es usando optoacopladores que para las tensiones involucradas (peligrosas) es muy cómodo ya que no pondras en riesgo tampoco al Arduino.

Este esquema te dirá si del lado del diodo del optoacoplador tienes o no tensión.

(http://i.stack.imgur.com/sw3mO.png)

Puede que el optoacoplador no sea fácil de conseguir. Pero es un esquema muy simple para saber si hay o no tensión.
Si te interesa la idea veré si hay otro esquema con optoacopladores mas comunes.
Aca un ejemplo, incluso mejor porque este si te da el AC on off.

(http://imgur.com/SpQP2ZG.png)
esta pensado para 220VAC asi que solo debes usar una R1 de 120K para 110VAC
Z1, Z2 y Z3 son varistores que puedes usar o no.
El resto si es crítico.
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 27, 2016, 05:53 am
Ahora que veo los esquemas, al menos yo entiendo mejor toda tu idea.
Lo primero que veo es que trabajas con 110VAC.
Quieres ver el estado de un interruptor que acciona sobre una lámpara y conocer justamente su estado.
Esto es a tiítulo de estudiar como funciona todo? Porque hablaste de equipo de audio, tv, etc.

Bien, no he visto en detalle pero en lineas generales tu esquema podría funcionar aunque también puede mejorarse y mucho.
Tu quieres saber si algo esta funcionando o no, y para ello con ver si hay tensión te alcanza. Una manera de hacerlo es usando optoacopladores que para las tensiones involucradas (peligrosas) es muy cómodo ya que no pondras en riesgo tampoco al Arduino.

Este esquema te dirá si del lado del diodo del optoacoplador tienes o no tensión.

(http://i.stack.imgur.com/sw3mO.png)

Puede que el optoacoplador no sea fácil de conseguir. Pero es un esquema muy simple para saber si hay o no tensión.
Si te interesa la idea veré si hay otro esquema con optoacopladores mas comunes.
Aca un ejemplo, incluso mejor porque este si te da el AC on off.

(http://imgur.com/SpQP2ZG.png)
esta pensado para 220VAC asi que solo debes usar una R1 de 120K para 110VAC
Z1, Z2 y Z3 son varistores que puedes usar o no.
El resto si es crítico.

Se me escapo contar el detalle mas importante, no tengo ni idea de electronica, los modulos que utilizo en mi arduino vienen ya montados y listos para plug and play. Por tanto me perdonaras pero no entendí tus imágenes, aunque se ven bonitas.
Si te das cuenta las imagenes que te envie las hice con modulos que ya vienen montados. porque ni idea de hacer un fritzing mas elegante.

Coloque la lampara como ejemplo porque si me sirve para esta me servirá para el circuito donde estan conectados mis electrodomésticos (TV, receiver...etc)
lo de la tension lo descarte porque manejaria al final mas de 15A y no encontre un modulo como el ACS que detectara mA cuando inician en STANDBY.

Quiero manejar mi circuito tanto manual como con arduino y que arduino se entere cuando lo active o desactive manualmente para que actualice la información internamente y me diga si realmente esta apagado o encendido.
Asi por ejemplo si lo saco a Internet yo pueda observar la información correcta del circuito y que no me aparezca encendido cuando realmente esta apagado

Le di una busqueda a algun modulo que contenga el SFH6206 que vi en una de tus imagenes, pero aparece solo el chip sin placa asi que lastimosamente lo descarto, porque si me toca hacerlo, voy perdido desde la imagen.

Leí también entre lineas de tu reply que la lectura del pin de 5V puede hacerse con un puerto del mismo arduino sin hacer un cortocircuito que queme la placa, asi que sin importar lo anticuada o feo que se vea esta solución, si es una solución y sirve a mis intereses pues yo la adopto para mi sistema si no me genera algún riesgo de explosión.
Quedo atento a tu visto bueno para ejecutarle en mi arduino.
Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 27, 2016, 02:51 pm
Yo trabajo con/en electronica.
Hacerlo de otro modo me parece burdo pero estas en tu derecho por tus conocimientos. Pero cuando no se sabe, se debe estudiar/aprender.
 
Si vas a poner una fuente para indicar si una lampara funciona o no, entonces tienes una fuente más una lámpara conectados a la red de energía.
Si todos usaramos tu criterio anti-ecológico la usina generadora de electricidad no podria satisfacer la demanda energética de todos los consumidores.
Sabes cuando una fuente o mejor un transformador representa la mayor ineficiencia para el proveedor electrico? Justamente cuando esta conectado sin carga (vacío), sin que alimente nada. Tal como tu pretendes usarlo.
La gente deja el cargador del celular conectado y eso es pésimo para la red de una ciudad.
Aca pasa lo mismo.
Quieres hacerlo asi, hazlo.

Vas bien, intenta no superar 5V en ninguna entrada del arduino.

Nota: por cierto.. no me ofende ni nada como lo que me has escrito en otro post si mal recuerdo. Si te confundí disculpa.
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 27, 2016, 04:51 pm
Yo trabajo con/en electronica.
Hacerlo de otro modo me parece burdo pero estas en tu derecho por tus conocimientos. Pero cuando no se sabe, se debe estudiar/aprender.
 
Si vas a poner una fuente para indicar si una lampara funciona o no, entonces tienes una fuente más una lámpara conectados a la red de energía.
Si todos usaramos tu criterio anti-ecológico la usina generadora de electricidad no podria satisfacer la demanda energética de todos los consumidores.
Sabes cuando una fuente o mejor un transformador representa la mayor ineficiencia para el proveedor electrico? Justamente cuando esta conectado sin carga (vacío), sin que alimente nada. Tal como tu pretendes usarlo.
La gente deja el cargador del celular conectado y eso es pésimo para la red de una ciudad.
Aca pasa lo mismo.
Quieres hacerlo asi, hazlo.

Vas bien, intenta no superar 5V en ninguna entrada del arduino.

Nota: por cierto.. no me ofende ni nada como lo que me has escrito en otro post si mal recuerdo. Si te confundí disculpa.
Me extrañó el comentario de haberte ofendido en algún lado. No lo tengo en mente y no suelo tratar mal a las personas ni personal ni tras una pantalla. creo que me confundes, no hay problema

Con arduino ando en el proceso de aprendizaje de electrónica (campo muy pero muy amplio). Esta solucion que planteo que es la mas antiecologica por el consumo extra que se genera, es el pago que debo hacer por  mi desconocimiento de electrónica. Se que es una salida rápida a mi problema que por ahora me permite avanzar, porque con el ACS712 estaba estancado. El diagrama que me muestras lo voy a analizar ahora con calma, saber que significa cada símbolo y dibujo de las imagenes y cuando tenga algo mas claro espero poder hacerte algunas preguntas. Primero empezare por ver de donde salio esa imagen ya que supongo ahí debo encontrar alguna información.
Muy agradecido con tus respuestas tus concejos y aclaraciones.

Encontré en un articulo frances esta imagen donde utilizan el chip que tienes en una de las imágenes, ahi dice que lo utilizan para medir el consumo, pero no me queda claro que tan sensible es a bajos mV y cuantos amperios máximos soporta para cuando mi circuito tenga todo encendido.
(http://blog.mymemorydump.info/public/shema.jpg)
Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 27, 2016, 07:35 pm
Vamos a apretar RESET y comenzar de nuevo.
Establezcamos que quieres hacer:
Quieres saber cuando los dispositivos eléctricos de tu casa, esten encendidos consumiendo corriente.
Corriente no es lo mismo que tensión. Amperes no es lo mismo que Voltios. 
Un dispoitivo como un equipo de audio o TV suele estar en bajo consumo cuando dispone de un control remoto para su accionamiento.
Entonces en bajo consumo hablamos de mA o uA, luego en consumo estaremos en algunos casos en Amperes (heladera por ejemplo).
Tu quieres saber que? Cuando esta en Standby y cuando esta consumiendo? Eso es fácil. Pones un ACS712 del valor apropiado y cuando mide esta consumiendo, y cuando no, esta en standby o desconectado/apagado.
La quieres complicar.... con el tv/equipo de audio. Lo mismo. Con el ACS712 sabras cuando consume. Ahora detectar que esta en standby porque lo mides es mas dificil, no imposible. 

Espero tu respuesta porque tal vez te haya dado un punto de vista que no tenías.

Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 27, 2016, 08:15 pm
Vamos a apretar RESET y comenzar de nuevo.
Establezcamos que quieres hacer:
Quieres saber cuando los dispositivos eléctricos de tu casa, esten encendidos consumiendo corriente.
Corriente no es lo mismo que tensión. Amperes no es lo mismo que Voltios.
Un dispoitivo como un equipo de audio o TV suele estar en bajo consumo cuando dispone de un control remoto para su accionamiento.
Entonces en bajo consumo hablamos de mA o uA, luego en consumo estaremos en algunos casos en Amperes (heladera por ejemplo).
Tu quieres saber que? Cuando esta en Standby y cuando esta consumiendo? Eso es fácil. Pones un ACS712 del valor apropiado y cuando mide esta consumiendo, y cuando no, esta en standby o desconectado/apagado.
La quieres complicar.... con el tv/equipo de audio. Lo mismo. Con el ACS712 sabras cuando consume. Ahora detectar que esta en standby porque lo mides es mas dificil, no imposible.

Espero tu respuesta porque tal vez te haya dado un punto de vista que no tenías.


Perdon si te confundi con la imagen. Solo la coloque porque integraba el chip de alguna de tus imágenes.
No quiero hacer mediciones para saber consumos.
Aun me confundo con los términos de tensión y corriente y su voltaje y amperios. Se que si coloco amperes a algo que solo maneja miliamperes lo daño o se calentara si no tiene el soporte suficiente de amperes y que los cables con mas hilos soportan mas amperes
Que si me pide 5V no debo colocarle 30V porque lo quemare. Por ahora con esos pequeños conocimientos  ha sobrevivido mi arduino.
Queme un ACS712 al invertir los cables positivo y negativo por el mal uso del color de los cables, pero creo que hace parte del aprendizaje y te hace estar mas atento. Aun no quemo nada mas. Y si pienso que lo puedo quemar, les pregunto a ustedes que saben bastante de esto.
Si alguna pregunta es muy trivial, solo traten de entender que no todos tenemos el mismo nivel de conocimiento en ciertas cosas y por eso andamos por estos lados.

Vuelvo al ejemplo de la lampara. si tengo una lampara que se activa tanto manual como con arduino: mientras yo la active con arduino, la información que este maneja es la correcta "lampara encendida" "lampara apagada" (suponiendo que la activo desde Internet mediante arduino tengo la información real) Hasta aquí la información que me muestra es correcta. Pero si yo la tengo encendida y por alguna razón mediante el interruptor conmutable de pared, la apago, la información que tiene arduino y que me mostraría por internet es que esta encendida, lo cual es errado y si le doy apagar, lo que estaría haciendo es encendiéndola y viceversa.

El rele lo que hará es activarse cuando accione el conmutable de pared y enviara una señal de 5V al arduino para que sepa que se ha modificado el estado de la lampara (o en mi caso el circuito de conexiones). Con esta señal haré modificaciones al código para que modifique la información que muestra y las acciones

por tanto el rele es solo informativo para el arduino (se ha  modificado el estado SI/NO). Esa es su única función. Se que puedo estar matando moscas a cañonazos pero es lo que tengo a mano y ya construido, que me saca del apuro

Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 27, 2016, 08:34 pm
Esto esta bien y sere paciente con tus preguntas ya que nadie mas participa.
Lo que me interesa como siempre es precisar todo lo que quieres hacer.
'
Lo de la lámpara lo puedes hacer con el optoacoplador que te indiqué y que tu tmb encontraste en esa pagina de la cual aportaste la imagen.
Saber si esta prendida o apagada con el SFH6206 u otro optoacoplador es posible. Asi que sabremos el estado independientemente que este accioinada manual o automática.
Ahora... que quieres hacer con un equipo de TV por ejemplo?
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 27, 2016, 10:35 pm
Esto esta bien y sere paciente con tus preguntas ya que nadie mas participa.
Lo que me interesa como siempre es precisar todo lo que quieres hacer.
'
Lo de la lámpara lo puedes hacer con el optoacoplador que te indiqué y que tu tmb encontraste en esa pagina de la cual aportaste la imagen.
Saber si esta prendida o apagada con el SFH6206 u otro optoacoplador es posible. Asi que sabremos el estado independientemente que este accioinada manual o automática.
Ahora... que quieres hacer con un equipo de TV por ejemplo?
La lampara la coloco solo como ejemplo, (como el de encender un led con arduino). Esta representa toda una linea de conexiones de electrodomésticos sobre una pared.
ahora bien, el arduino lo voy a utilizar para desconectar todos los equipos electronicos (TV, DVD, Consola, Receiver, Woofer, etc.) que estan sobre esta pared, esto con un rele1 que permitirá o impedirá el paso de voltaje hacia estos.
Accionare el rele1 mediante arduino con control remoto y luego lo planteare desde mi teléfono.
Ademas de activarlo o desactivarlo con el rele1, lo haré con un interruptor conmutable de pared. para cuando algo le suceda al arduino, tener la opción de manejarlo manualmente.
Para este interruptor es que instalare el rele2 (cuestion de este hilo) para que le informe al arduino del actuar del interruptor.
Lo anterior lo realizare por tres o sea hay 3 conexiones en diferentes puntos de mi casa donde haré lo misma tarea.

descarte el ACS porque este se colocaría en la linea de corriente que active el interruptor. Al momento incial de activado, todos los electrodomésticos estaran en Standby y registrara una cantidad muy baja de mA, que no detectara, por ser de 20A. Y creo debe ser de 20A porque mas o menos las mediciones hechas a los electrodomésticos conectados sobre esta pared estaran demandando aprox. 15A y si coloco uno de 5A para tener una mejor respuesta a los mA iniciales, no soportara cuando todo este encendido y a mas de 15A.

Pregunta: como informaria el SFH6206 a mi arduino que se ha accionado el interruptor manual?.

en mi desconocimiento de su funcionamiento supongo que enviaria algun voltaje a una entrada de arduino y este voltaje que envía tendrá que tomarlo de la misma parte que lo toma mi rele2 (en mi caso 5V), que es encendido y activado únicamente cuando accione el interruptor de pared, el resto del tiempo se encontrara apagado sin ningún voltaje (no estará en espera). Se puede observar en la primera imagen anexa donde muestro el esquema con la lampara (ver solo la conexion del rele2 al circuito del interruptor, la conexion al arduino se cambio por la imagen 2).

Como mi rele2 es low level, para que se active al presionar el interruptor conmutable de pared,  debo conectar del rele2 el GND y el IN(señal) a tierra y VCC a 5V (como se ve en la segunda imagen, representando las conexiones con 2 lineas amarillas y 1 roja). Así logro que inmediatamente accione el interruptor, se encienda el rele2 y una los 5V que tomo del arduino para ser medido por el mismo por uno de los puertos analógicos o digitales como se ve en la imagen 2.
Esa es la idea que tengo para desarrollar.

Espero no haberte confundido mas con mis explicaciones.

(http://i67.tinypic.com/28sx1dj.jpg)
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 27, 2016, 10:59 pm
esta seria la imagen final con lo comentado anteriormente
la lampara seria la conexión de toma corrientes de los electrodomesticos

(http://drive.google.com/uc?export=view&id=0B3jhI_HoLLTLdEUyVUNKVkpoVnc)
Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 27, 2016, 11:46 pm

Quote
Pregunta: como informaria el SFH6206 a mi arduino que se ha accionado el interruptor manual?.
El SFH reemplaza tu fuente y RELE2 todo en 1. Le informa del mismo modo que tu RELE2 le informa al arduino.
Sabes como reconocer que RELE2 esta on o off bueno el SFH hace lo mismo y arduino lo entenderá.
(http://i.stack.imgur.com/sw3mO.png)
El SFH6206 es un optoacoplador pensado para estos casos. Le falta algo a este esquema pero no te quiero complicar. 
Supongamos que es 100% igual (aunque no lo es).
Esas dos entradas L y N van donde quieres ver si hay o no algo prendido. En paralelo con tu lámpara okay!!!
Si la lampara esta prendida esos diodos a la izq del SFH se iluminaran y hacen que el transistor a la derecha cierre el contacto como si fuera rele, por lo tanto donde dice SENSE POWER tendras 0 cuando haya energía y 1 cuando no la haya.
Esta al revés pero eso es sin importancia para el arduino.

Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 28, 2016, 02:12 pm
Le falta algo a este esquema pero no te quiero complicar.
Supongamos que es 100% igual (aunque no lo es).
Esas dos entradas L y N van donde quieres ver si hay o no algo prendido. En paralelo con tu lámpara okay!!!
Si la lampara esta prendida esos diodos a la izq del SFH se iluminaran y hacen que el transistor a la derecha cierre el contacto como si fuera rele, por lo tanto donde dice SENSE POWER tendras 0 cuando haya energía y 1 cuando no la haya.
Esta al revés pero eso es sin importancia para el arduino.


Si consigo Los circuitos que están relacionados en la imagen no podría unirlos porque falta algo más de lo que muestra la imagen? O sería tal cual?
En la salida del esquema veo una derivación que dice 5v y como una rama de ese otra dice SENSE POWER puedo interpretarlo que son dos cables que van a un misma salida del octocoplador como un VCC y un IN, sólo que la de 5v lleva una resistencia de 2.2K por donde le entrarían 5v desde el arduino?
Los diodos de 3w 10K se pueden buscar con este nombre o como resistencia de 3w 10K? o se debe colocar una resistencia y un diodo LED?
Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 28, 2016, 03:48 pm
Tengo paciencia pero la verdad estas mas perdido que turco en la neblina (es un dicho argentino).
5V es la alimentación del arduino.
Sense POWER es el sensado de la tensión de la que estamos hablando y eso va a un pin de entrada del Arduino.

Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 28, 2016, 04:04 pm
Tengo paciencia pero la verdad estas mas perdido que turco en la neblina (es un dicho argentino).
5V es la alimentación del arduino.
Sense POWER es el sensado de la tensión de la que estamos hablando y eso va a un pin de entrada del Arduino.


Disculpa, creo que me has ayudado lo suficiente. Has sido muy amable conmigo y paciente, no voy a llevarte al limite ni aprovecharme de eso y menos con esta parte ya de electrónica que necesita un estudio muy a fondo para saber lo que estoy haciendo y no adivinar que es lo que en el momento trato de hacer.
Tu ayuda ha sido muy efectiva y quedo muy agradecido por tu tiempo, conocimientos y paciencia.


Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 28, 2016, 04:10 pm
Nooo. No mal interpretes lo que mencioné.
Digo que deberías ponerte a estudiar algo básico de electricidad al menos.

Bien. Quedó claro o no? 

Los dos bornes L y N deben ir al punto que vas a ver si tiene o no electricidad.
Los dos puntos aislados luego del opto SHF GND y Sense Power a un pin del arduino, por ejemplo el pin 2 (o cualquiera hasta el 13, todos menos 0 y 1).

Luego viene el programa que es lo mismo que leer un pulsador, asi que con ver el ejemplo de un pulsador ya estas encaminado.
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 28, 2016, 06:28 pm
Nooo. No mal interpretes lo que mencioné.
Digo que deberías ponerte a estudiar algo básico de electricidad al menos.

Bien. Quedó claro o no?

Los dos bornes L y N deben ir al punto que vas a ver si tiene o no electricidad.
Los dos puntos aislados luego del opto SHF GND y Sense Power a un pin del arduino, por ejemplo el pin 2 (o cualquiera hasta el 13, todos menos 0 y 1).

Luego viene el programa que es lo mismo que leer un pulsador, asi que con ver el ejemplo de un pulsador ya estas encaminado.
No te mal interpreto, solo que te doy la razón y voy estudiando cada tema que voy necesitando.
por ejemplo leí sobre resistencias y sus colores y tolerancias para armar la imagen que aqui adjunto para no verme tan perdido, como con los 10K de la resistencia y la dirección de ubicación del SFH que creo que se ubica 1 y 2 con el corte que tiene en la parte superior. Las resistencias si no se si están invertidas sus direcciones de instalacion, pero creo que si son de 10K al igual que de 2.2K.
Lei en alguna parte de unos diodos led que se encendian pero esos no se si fueron los que remplace con las resistencias de 10K o si existen diodos led de 10K (es lo que menos claro tengo de todo lo que no tengo claro)
Esta imagen es lo que creo tendría que armar según lo que interpreto de tu esquema para quitar el rele y el conector.
Pregunta, cuanto voltaje estaría consumiendo este circuito.
Hay algún desperdicio de voltaje (ejemplo: que disipe algún voltaje por calor, no se si se diga así) o este toma únicamente el voltaje necesario)
Hacia la parte del arduino, creo que no tendría problema con las conexiones y la alimentación de 5V y tierra desde este y el IN lo mandaría a un puerto del arduino para que lea el 1 o el cero del estado.
(http://drive.google.com/uc?export=view&id=0B3jhI_HoLLTLMmEwMF9SNmpmaEE)
Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 28, 2016, 07:50 pm
Las resistencias de 10k son 3W no de 1/4W ojo!!! se te van a quemar rápidamente.
ahora creo que son valores para 220VAC. Dejame ver si funcionará con 110VAC como es tu caso.
Donde resides? USA o Mexico?
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 29, 2016, 12:10 am
Las resistencias de 10k son 3W no de 1/4W ojo!!! se te van a quemar rápidamente.
ahora creo que son valores para 220VAC. Dejame ver si funcionará con 110VAC como es tu caso.
Donde resides? USA o Mexico?
Soy de Colombia
Buscare alguna tabla para ver lo de los 3W porque la de colores que tome, no vi esa parte
Title: Re: Leer estado de rele externo
Post by: Hector_A on Apr 29, 2016, 12:32 am

Arlaor, te voy a pedir un favor.

Está de más hacerle quote al mensaje inmediatamente anterior.

Por favor, si lo haces por comodidad para responder, todo bien, pero antes de presionar el botón de Post, por favor, bórralo.

Gracias y abrazos!
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 29, 2016, 01:26 am
Hector Buenas tardes.
Lo tendre en cuenta de ahora en adelante
Saludos
Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 29, 2016, 01:44 am
Cuando pides la resistencia en la casa o tienda de electrónica le das el valor y le pides que sea de 3 o 5W según lo que tengan. No hay colores para la potencia.
Tienes 110VAC entonces veamos.
La hoja de datos permite muchas opciones.
Con 220VAC dos resistencias de 10k totalizan 20k o sea aproximadamente 10mA por el circuito de entrada.
Asi que remplaza las dos resistencias de 10k por dos de 4k7 o sea 4700 ohms
Potencia = I^2*R = 0.01^2*4700 = 0.47 Watts
De modo que con Resistencias de 4k7 1Watt es suficiente.
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 29, 2016, 04:33 am
Las resistencias creo que las puedo encontrar relativamente cerca en la próxima ciudad.
He ubicado por Internet el SFH6206-3 (315 J68). Sirve para mi propósito esta referencia? o la referencia con el -3 (315 J68) hace que se deba tener en cuenta otras variables.
Lo ubique en una de las paginas orientales que demoran un mes los pedidos.
La otra resistencia de 2.2K no tiene ninguna variación? por ser 110AC, asi como cambiaron las de 10K o se mantiene en 2.2K.
La de 2.2K cuantos W debe manejar

Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 29, 2016, 04:27 pm
Con 220VAC dos resistencias de 10k totalizan 20k o sea aproximadamente 10mA por el circuito de entrada.


Otra pregunta, que formula utilizaste para sacar el valor de 10mA?
Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 29, 2016, 05:02 pm
Ley de Ohm 
Corriente = Tensión/Resistencia
para 220VAC obtuve la corriente que usa el circuito

220VAC/20kohms = aprox a 10mA = 0.01A 
en realidad 220VAC/2000 ohms = 0.01A

Entonces si la corriente es 10mA digo, para 110VAC necesito?

Resistencia = Tensión/corriente = 110VAC/10mA = Resultado en Kohms => 11kohms 
11k pero son dos resistencias asi que dividido 2 = 5.5k Ese valor no existe y uso 4k7 que esta bastante bien.
No pasa nada 

Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 29, 2016, 06:38 pm

No pasa nada
Me va a perdonar por mi desconocimiento, estoy tratando de calcular cuantos W debe tener la resistencia de 2.2K que se coloca al final, trato de aplicar la formula Potencia=I^2*R, pero que sucede; (R) lo conozco (2.2K), (I) viene del SFH, del cual no se que transformación internamente se haga de la corriente que le llega, o que es lo que permite pasar etc, como para decir que es el mismo (1W) que viene de la entrada y que pasa por las resistencias (0.011A) y si la compro de 1W y debe ser menos, no se si estoy incrementando sin necesidad el consumo final del circuito, que por cierto hasta el momento creo que el consume total es de 2W (por las dos resistencias)?.
Hago un calculo del voltaje que consume este circuito (aplicando todo mi desconocimiento en el tema) y me resulta lo siguiente

"Volts calculations
The voltage V in volts (V) is equal to the current I in amps (A) times the resistance R in ohms (Ω):
V=IxR"
V=.011 x (4700x2 resistencias)=103.4V
no se si este es el voltaje que se esta transformando, cercano a los 116.7 AC (medidos con el multimetro en los tomacorrientes)
o si es lo que se me esta consumiendo finalmente el circuito ( estoy mas perdido que Adan el dia de la madre)


-encontré este octo SFH6206-3 (315 J68) Vi que hay varias referencias del mismo donde varia la parte que le sigue al guion (-) y la parte entre paréntesis, para no alargarme mas, el que relaciono aquí, estaría bien?
 
por favor soluciono estos puntos para comprar los elementos electronicos y no te molesto mas, realmente me da pena abusar de tu amabilidad
Title: Re: Leer estado de rele externo
Post by: surbyte on Apr 29, 2016, 09:19 pm
De donde sacas 2k2?

Ahora la veo. Es la resistencia que va a 5V. Esa esuna resistencia 1/4 o 1/8W
No hay nada que calcular.
Title: Re: Leer estado de rele externo
Post by: arlaor on Apr 29, 2016, 09:49 pm
De donde sacas 2k2?

Ahora la veo. Es la resistencia que va a 5V. Esa esuna resistencia 1/4 o 1/8W
No hay nada que calcular.
Muchas gracias por tu colaboración

Resumen

Para dar por terminado el tema de los materiales, quedo así:

- 2 resistencias de 5.1K y 1W
- 1 optoacoplador SFH6206-3 (315 J68)
- 1 resistencia de 2.2K 1/8W
- No se necesitan diodos led rectificadores ni nada mas

Con lo anterior obtenemos el circuito que permitirá saber mediante el envío a arduino de 1 o 0 si se ha activado un interruptor de corriente (116.7AC ~110AC), no conectado al arduino.

Espero regresar cuando tenga estos elementos en mis manos para organizar el tema de la unión correcta.
Title: Re: Leer estado de rele externo
Post by: arlaor on Jul 13, 2016, 03:46 am
Buenas noches @surbyte
Me han llegado los materiales mencionados en el mensaje anterior para armar el circuito que me has indicado y me asalta una duda del lado derecho del SFH: en el punto donde se conectan el SFH, la resistencia de 2.2k, los 5v del arduino y la salida que va al pin digital del arduino. ¿existe la posibilidad que lo que lea el pin digital del arduino sean los 5v que llegan del arduino a la pata con la resistencia de 2.2k que llega al SFH, ya que los dos (pin digital y 5V) llegan al mismo punto? O no influye para nada porque los 5v que le llegan del arduino pasan primero por una resistencia.
Agradezco tu aclaración.
Title: Re: Leer estado de rele externo
Post by: arlaor on Jul 14, 2016, 12:58 am
De donde sacas 2k2?

Ahora la veo. Es la resistencia que va a 5V. Esa esuna resistencia 1/4 o 1/8W
No hay nada que calcular.
Estos son los articulos finalmente adquiridos
y la zona en amarillo es la duda de la pregunta anterior
(http://drive.google.com/uc?export=view&id=0B3jhI_HoLLTLb1N0QUVEU051ZE0)
Title: Re: Leer estado de rele externo
Post by: surbyte on Jul 14, 2016, 04:07 am
Para responderte preferí volver a poner el esquema porque ya había pasado un tiempo y así es mas fácil.
(http://i.stack.imgur.com/sw3mO.png)

Del Lado derecho tienes 3 terminales. 
1 GND 
2 SENSE POWER (pin 4 del SFH y un extremo de 2k2)
3 VCC o +5V del Arduino. 

Vas a medir entre GND y SENSE POWER no entre 5V y SENSE POWER.
cuando digo medir es que el pin digital del Arduino veré los cambios de estado.

Title: Re: Leer estado de rele externo
Post by: arlaor on Jul 14, 2016, 02:42 pm
Del Lado derecho tienes 3 terminales.
1 GND
2 SENSE POWER (pin 4 del SFH y un extremo de 2k2)
3 VCC o +5V del Arduino.

Vas a medir entre GND y SENSE POWER no entre 5V y SENSE POWER.
cuando digo medir es que el pin digital del Arduino veré los cambios de estado.


La parte que va a GND la tengo clara y se que van a GND del arduino. Mi duda era si los 5V que llegan del arduino al SFH le generaban alguna interferencia al sense power en la medición que hace el arduino, pero por lo que me dices nada de los 5V pasan al sense power sin importar que estén soldados sobre la misma pata del SFH que salen hacia el sense power.

Title: Re: Leer estado de rele externo
Post by: arlaor on Aug 12, 2016, 06:34 pm




Buenos dias

He hecho las conexiones con las resistencias que me has indicado como en la imagen
(https://doc-0g-bk-docs.googleusercontent.com/docs/securesc/g4ub3shll56ncgeqk09h10e14j20k8vf/iondu527m12358vcqcg0obrdakdmk9vn/1471017600000/17995188135673309999/17995188135673309999/0B3jhI_HoLLTLb1N0QUVEU051ZE0?e=view)

al conectarlo a los 110AC (116AC), las resistencias de 5.1K en menos de 10 segundos se calientan exageradamente a punto de no soportarlo con mis dedos, por lo que no puedo mantenerlas conectadas mucho tiempo.

Que puedo hacer o que me falta por hacer para que esto no suceda y poder mantener el circuito conectado sin el temor de quemarlo por completo?
Title: Re: Leer estado de rele externo
Post by: arlaor on Aug 13, 2016, 03:26 pm
Para responderte preferí volver a poner el esquema porque ya había pasado un tiempo y así es mas fácil.
(http://i.stack.imgur.com/sw3mO.png)

Del Lado derecho tienes 3 terminales.
1 GND
2 SENSE POWER (pin 4 del SFH y un extremo de 2k2)
3 VCC o +5V del Arduino.

Vas a medir entre GND y SENSE POWER no entre 5V y SENSE POWER.
cuando digo medir es que el pin digital del Arduino veré los cambios de estado.


Alguna idea con la cual pueda solucionar el problema de calentamiento excesivo de las resistencias?
Title: Re: Leer estado de rele externo
Post by: surbyte on Aug 14, 2016, 08:29 pm
Un capacitor en serie agrega una reactancia capacitiva de 
Xc = 1/2xPixF*C (en faradios y Hz) = 1 / (2*3.14*50Hz*0.1*10-6) =  3200 ohms
o sea un capacitor de 0.1uF a 50 Hz agrega 3.2K en serie
Tiene que ser un capacitor 0.1uF 400V como mínimo. 
Intenta asi para reducir la disipación.
Title: Re: Leer estado de rele externo
Post by: arlaor on Aug 30, 2016, 09:27 pm
Un capacitor en serie agrega una reactancia capacitiva de
Xc = 1/2xPixF*C (en faradios y Hz) = 1 / (2*3.14*50Hz*0.1*10-6) =  3200 ohms
o sea un capacitor de 0.1uF a 50 Hz agrega 3.2K en serie
Tiene que ser un capacitor 0.1uF 400V como mínimo.
Intenta asi para reducir la disipación.
Buenas tardes.
Esto quiere decir que entre el cable de 110AC y la resistencia de 5.1K debo interponer este capacitor cierto? con una pata del capacitor al cable de 110 y la otra unida a una pata de la resistencia?
Title: Re: Leer estado de rele externo
Post by: surbyte on Aug 31, 2016, 01:46 am
Mientras este en serie lo pones donde quieras, antes o después de la Resistencia.
Title: Re: Leer estado de rele externo
Post by: arlaor on Oct 14, 2016, 05:27 pm
Tiene que ser un capacitor 0.1uF 400V como mínimo.

Y cual seria el máximo o apropiado para ir mas seguro y no por el limite inferior? como para tener un margen de seguridad
Title: Re: Leer estado de rele externo
Post by: surbyte on Oct 14, 2016, 08:27 pm
Calcula la reactancia capacitiva para tu frecuencia
Xc = 1/(2*pi*F*C) 
donde 
pi = 3.1415
F = frecuencia de tu red 50/60 hz
C = capacidad en Faradios = 0.1uF = 0.1 x 10-6 faradios.

Xc (50hz) = 31831,9 ohms = 32k aprox
Entonces un capacitor agrega mas de las dos resistencias que sumadas eran 20k
Tal vez no sea el valor apropiado para tu caso de 110V.

Un valor de 0.47uF te daría Xc = 6772 ohms con lo que reduces las resistencias a 20 - 6.772k = 13k2
O sea dos R de 6k8 aproximadamente
La corriente será la misma 110V/20k = 5.5mA
Potencia R6k8 = I^2*R= (0.0055A)^2*6800 = 0.2W

A ver si con un Capacitor de 0.47uF 400V y dos R de 6k8 o una de 12k 1 o 2 Watts tienes resuelto el tema.
Title: Re: Leer estado de rele externo
Post by: arlaor on Oct 15, 2016, 06:30 am
A ver si con un Capacitor de 0.47uF 400V y dos R de 6k8 o una de 12k 1 o 2 Watts tienes resuelto el tema.
Hace ya algun tiempo cuando me indicaste adquirir 2 resistencias de 5.1K y 1W, 1 optoacoplador SFH6206-3 y  1 resistencia de 2.2K 1/8W, dado que en la zona donde me encuentro no las conseguí de estas características, tuve que solicitarlas por Internet, pero para poder comprarlas tuve que pedir un lote de 100 resistencias de 2.2Kohm, un lote de 50 resistencias de 5.1K y 1W y un lote de 10 optoacopladores SFH6206-3, ya que con estas caracteristicas segun las formulas utilizadas, suponía resuelto mi problema, lo cual no sucedió. Hay alguna forma que pueda utilizar estas resistencias ya compradas con los cambios que me comenta actualmente para no desechar los artículos ya adquiridos?
Que de alguna forma, colocandolas en serie o en paralelo o en algún orden sumen lo que ahora me dices debo utilizar?
Title: Re: Leer estado de rele externo
Post by: surbyte on Oct 18, 2016, 01:57 am
Usa dos de 5.1K que estan mas o menos cercanas a lo calculado, ya que faltaría una R agrega una de 2k2 y estaremos en 12k4 bastante cerca no?
Title: Re: Leer estado de rele externo
Post by: puren2006 on Nov 08, 2016, 10:27 pm
Hola Surbyte, en el segundo diagrama no logro identificar el elemento con símbolo "SG1", me puedes indicar a que componente electrónico es.

Desde ya muchas gracias.

Ahora que veo los esquemas, al menos yo entiendo mejor toda tu idea.
Lo primero que veo es que trabajas con 110VAC.
Quieres ver el estado de un interruptor que acciona sobre una lámpara y conocer justamente su estado.
Esto es a tiítulo de estudiar como funciona todo? Porque hablaste de equipo de audio, tv, etc.

Bien, no he visto en detalle pero en lineas generales tu esquema podría funcionar aunque también puede mejorarse y mucho.
Tu quieres saber si algo esta funcionando o no, y para ello con ver si hay tensión te alcanza. Una manera de hacerlo es usando optoacopladores que para las tensiones involucradas (peligrosas) es muy cómodo ya que no pondras en riesgo tampoco al Arduino.

Este esquema te dirá si del lado del diodo del optoacoplador tienes o no tensión.

(http://i.stack.imgur.com/sw3mO.png)

Puede que el optoacoplador no sea fácil de conseguir. Pero es un esquema muy simple para saber si hay o no tensión.
Si te interesa la idea veré si hay otro esquema con optoacopladores mas comunes.
Aca un ejemplo, incluso mejor porque este si te da el AC on off.

(http://imgur.com/SpQP2ZG.png)
esta pensado para 220VAC asi que solo debes usar una R1 de 120K para 110VAC
Z1, Z2 y Z3 son varistores que puedes usar o no.
El resto si es crítico.

Title: Re: Leer estado de rele externo
Post by: surbyte on Nov 09, 2016, 12:54 am
Sinceramente no se que es pero no es relevante.
Tampoco necesitas los Varistores Z1 Z2 aunque usarlos por seguridad esta bien pero ponerlo ahi hace que debas ver otras etapas de tu circuito, ya que la fuente de tu arduino no los tiene entonces es un contrasentido tener en un detector y no el la fuente mas cara.
Yo vi módulos detector de AC que se venden en ebay. buscaste?
Title: Re: Leer estado de rele externo
Post by: puren2006 on Nov 10, 2016, 01:07 pm
Gracias por tu pronta respuesta, buscaré en ebay y en otras páginas. Tienes alguna referencia?

Slds.,
Title: Re: Leer estado de rele externo
Post by: surbyte on Nov 10, 2016, 05:35 pm
No. 
Title: Re: Leer estado de rele externo
Post by: castillolk on Dec 03, 2016, 04:01 pm
hola . mira yo hice algo parecido y NO use un segundo rele.  Directamente al tener 110v le coloque  un cargador de telefonos y le conecte tierra al arduino y 5v a un pin de input. En el programa preguntas si ese pin esta en high ssignifica que la luz esta encendida manualmente ...  No se si me explique ??
Title: Re: Leer estado de rele externo
Post by: Metaconta on Dec 03, 2016, 04:36 pm
Hay alguna forma de leer el estado de un rele que no este conectado a VCC y GND del arduino? (conectado a una fuente externa), donde solamente el cable IN desde el rele, se conecte a una entrada de arduino y me permita saber por el voltaje que tenga este si el rele esta encendido o apagado?
He intentado hacerlo por las entradas digitales y por las analógicas, pero el voltaje que tiene el arduino por defecto en cada entrada tanto analógica como digital  de aproximadamente 1.5V no me permite diferenciar el voltaje del IN del rele.


Buenas:

Si se puede y lo hacía antes con PIC16F84A.

En los relés hay un Led que indica cuando la bobina le lelga corriente y se activa, desde ese Led esdonde puede poner una salida con un optoacoplador hacia Arduino y funciona a la primera.


En una pantalla LCD 20x4 o el que sea, puedes visualizar cuando está activado el relé a la salida de Arduino y también indica si le ha llegado la entrada de arduino, así de simple, no volverse loco.

De esta manera tanto en la entrada de arduino como el led del relé, indican con seguridad que está activado o no.

Saludos.
Title: Re: Leer estado de rele externo
Post by: arlaor on Dec 17, 2016, 04:35 am
Buenas:

Si se puede y lo hacía antes con PIC16F84A.

Hola Metaconta, gracias por tu informacion. Supongo que al hacerlo con el PIC16F84A, igual debo armar un circuito para reducir el voltaje que le llega desde los 110AC.
En estos momentos estoy esperando unos capacitores que he pedido para armar el circuito que me ha recomendado surbyte. No tengo a la mano los componentes necesarios para armarlo, asi que debo esperar hasta que lleguen.

Me quedaron dudas donde dices "En los relés hay un Led que indica cuando la bobina le lelga corriente y se activa, desde ese Led esdonde puede poner una salida con un optoacoplador hacia..." porque me imagino que antes de mandarle corriente a ese rele, debo haberla reducido a 5v o la capacidad soportada por el relé. o es otra la idea?, no se.

Yo habia planteado inicialmente utilizar un rele conectado a un cargador de telefono de 5V que se alimentaria de la linea de 110AC que quiero medir, pero con esto estaba atentando contra el medio ambiente y contra mi bolsillo por el gasto de voltaje innecesario que se generaria y por eso estoy tratando de  seguir la recomendación de surbyte. esperemos que cuando arme el circuito recomendado desaparezcan los recalentamientos excesivos obtenidos con el bosquejo inicial sin capacitores.
Title: Re: Leer estado de rele externo
Post by: arlaor on Dec 17, 2016, 04:47 am
hola . mira yo hice algo parecido y NO use un segundo rele.  Directamente al tener 110v le coloque  un cargador de telefonos y le conecte tierra al arduino y 5v a un pin de input. En el programa preguntas si ese pin esta en high ssignifica que la luz esta encendida manualmente ...  No se si me explique ??
Si te entiendo, es una buena idea a tener en cuenta. En este punto la idea es disminuir al máximo el consumo de corriente y es lo que se busca con la construcción del circuito planteado por surbyte.
Title: Re: Leer estado de rele externo
Post by: arlaor on Jan 24, 2017, 05:37 pm
Usa dos de 5.1K que estan mas o menos cercanas a lo calculado, ya que faltaría una R agrega una de 2k2 y estaremos en 12k4 bastante cerca no?
Buenos dias surbyte

he montado el circuito con las partes que me refieres. La temperatura de la resistencia ha disminuido considerablemente, aun se calienta pero es soportable.
he realizado algunas pruebas y he encontrado lo siguiente utilizando digitalread():
Cuando el circuito no recibe voltaje desde 110AC, en el IDE de arduino recibo el dato 1, lo que significa que esta apagado, pero cuando recibe voltaje 110AC, en el arduino comienzo a recibir tanto 0 como 1, lo que indica que apaga y prende muy rápidamente.
interpreto lo anterior que al ser corriente alterna y esta está fluctuando a 50Hz hace que el SFH se active y desactive muy rápidamente por la curva de oscilación que maneja la corriente alterna, mostrando así los datos opcionales.
también he leído que el voltaje DC no tiene la fluctuación del AC o se comporta como una linea recta en comparación con la curva que describe el voltaje AC.
teniendo en cuenta lo anterior, ¿debo adicionar algún circuito que realice esta rectificación o que omita la parte OFF de los 110AC?
estas son las imagenes del circuito. Los he organizado en la forma como se muestran en las imagenes para ganar espacio en la placa que había cortado anteriormente, pero estan unidos en serie. Primero los capacitores conectados al cable que viene de los 110AC y luego las resistencias de 12K conectadas a la otra pata de los capacitores y en la parte final, el SFH unido a las patas libres de las resistencias.

(http://drive.google.com/uc?export=view&id=0B3jhI_HoLLTLdm1felk0VVBxYVk)
(http://drive.google.com/uc?export=view&id=0B3jhI_HoLLTLZGRhQ2htamd0cTA)
(http://drive.google.com/uc?export=view&id=0B3jhI_HoLLTLZzFhSzhqN1pwejQ)
(http://drive.google.com/uc?export=view&id=0B3jhI_HoLLTLalgtdnRhNmc3Zm8)
(http://drive.google.com/uc?export=view&id=0B3jhI_HoLLTLN29HYzBwbzQ4M0k)
Title: Re: Leer estado de rele externo
Post by: surbyte on Jan 24, 2017, 09:44 pm
El circuito esta perfecto y la respuesta que tienes es exactamente la esperada.
El tema es que no vas a tener algo SI/NO sino porque tienes un circuito detector que alterna su salida.
Entonces... tu debes periodicamente consultar su valor...
Si el valor bascula estas en presencia de tensión AC y si no lo hace es porque estas sin tensión presente.
Tienes varios caminos para hacerlo.
Uno es usando una interrupcion.
Si la interrupción que defines como CHANGE  o simplemente RISING o FALLING, cualquiera sirve.
Si la interrupción se dispara, es porque tienes un cambio y pudes poner un contador que iras consultando.
SI ese contador es 0, no hay cambio, si el contador sube es porque tienes tensión. y luego de consultarlo lo pones a 0.

El otro metodo es con millis() pero haciendo lo mismo y leyendo el estado del pin digital donde conectes la salida del optoacoplador.
Title: Re: Leer estado de rele externo
Post by: arlaor on Jan 25, 2017, 12:59 am
teniendo en cuenta que el SFH estará algunas veces encendido continuamente por horas o días a lo largo de los meses, al estar expuesto a fluctuar entre abierto y cerrado tanto tiempo, no se producirá un daño prematuro de su sistema interno?, algo así  como un desgaste prematuro que minimice su funcionamiento?
o está diseñado para estar expuesto a estas fluctuaciones continuamente y mantendrá una durabilidad normal?
Title: Re: Leer estado de rele externo
Post by: surbyte on Jan 25, 2017, 04:04 am
Es un dispositivo semiconductor. No se gasta!!!
Nada va a pasar.
Title: Re: Leer estado de rele externo
Post by: arlaor on Jan 26, 2017, 10:03 pm
Entiendo surbyte, gracias por la aclaración.
Que no se note mucho mi desconocimiento en electrónica... :)
Estuve intentando realizar el código con las interrupciones que mencionas, pero por la información que envía el circuito con 1 y 0 cuando esta encendido, no supe realmente como aplicarlas a mi proyecto,  así que realice el siguiente código que permite obtener la información requerida.

Code: [Select]

...
void loop() {
  if(b==0){t1=millis();b=1;}
  while(millis()-t1<=250)
  {a=digitalRead(D1)+a;}
  if(millis()-t1>250)
  {b=0;}
 //en 250 milisegundos se alcanzan a leer menos de 20000 (1) unos cuando esta encendido
//y mas de 100000 (1) unos cuando esta  apagado así que por eso la comparación de (a)

    if(a>20000 && uno==0)
     {Serial.println();Serial.println("apagado");uno=1;cero=0;}
     
    if(a<20000 && cero==0)
     {Serial.println();Serial.println("encendido");cero=1;uno=0;}
    
  a=0;
}


Gracias surbyte por tu gran ayuda...
Title: Re: Leer estado de rele externo
Post by: surbyte on Jan 26, 2017, 11:46 pm
Code: [Select]

// General
volatile unsigned long int ZeroXTime1 = 0;             // Timestamp in micros() of the latest zero crossing interrupt
volatile unsigned long int ZeroXTime2 = 0;             // Timestamp in micros() of the previous zero crossing interrupt
volatile unsigned long int XTimePeriod;                // The calculated micros() between the last two zero crossings
volatile boolean zero_cross;                 // Boolean to store a "switch" to tell us if we have crossed zero

void setup() {                                         // Begin setup
 
 attachInterrupt(0, zero_cross_detect, FALLING);      // Attach an Interupt to Pin 2 (interupt 0) for Zero Cross Detection
 delay(50);                                           // Give the interrupt time to capture a few AC cycles
}                                                      // End setup
 
void zero_cross_detect() {                             // function to be fired at the zero crossing
 ZeroXTime2 = ZeroXTime1;                             // shift the current zero cross value to the previous
 ZeroXTime1 = micros();                               // set the new current zero cross time in micros()
 XTimePeriod = ZeroXTime1 - ZeroXTime2;               // Calculate the time since the last zero crossing
 if (XtimePeriod > 9750) // mayor que 9750 useg      // ajusta este tiempo a ver si va bien
     zero_cross = 1;                                 // set the boolean to true to tell our dimming function that a zero cross has occured
 }
 else
     zero_cross = 0;
}                                                      // End zero_cross_detect

void loop() {                                          // Main Loop
 
   if (zero_cross) {
      // hago lo que tengo que hacer porque detecte AC
      Serial.println("AC ON");
      zero_cross = 0;
   }
}


Lo he modificado a ver si sirve.
Title: Re: Leer estado de rele externo
Post by: Sagatho on Jan 27, 2017, 04:25 pm
buen dia estimados

pregunta, un sensor de efecto hall detectaria el reley energizado o es muy pequeño el campo magnetico de la bobina del rele?

Saludos
Title: Re: Leer estado de rele externo
Post by: surbyte on Jan 27, 2017, 05:52 pm
Qué relé?
Title: Re: Leer estado de rele externo
Post by: arlaor on Jan 27, 2017, 10:38 pm
Buenas tardes surbyte
he subido tu codigo y lo he probado y he encontrado lo siguiente:
cuando el circuito inicialmente está apagado y luego se accionan los 110AC, arduino lo detecta normal y muestra el mensaje AC_ON correctamente.
cuando el circuito esta inicialmente encendido, arduino omite o desconoce el estado del circuito, dado a que no hay un cambio de estado aun, por tanto no muestra AC_ON, pero si luego de esto apago el circuito y vuelvo a activarlo, arduino ya muestra el mensaje AC_ON, dado que ya se produjo un cambio de estado.
entiendo que esto sucede, porque las interrupciones detectan y envian informacion siempre y cuando inicialmente haya un cambio de estado, dependiendo del tipo de interrupcion de LOW a HIGH, viceversa o ambos, pero no cuando inicia en el estado que deseo detectar.
No se si esto se pueda solucionar en el codigo de la interrupcion o se deba generar un codigo aparte para la deteccion inicial del estado. Estoy pensando en las posibles opciones.

Title: Re: Leer estado de rele externo
Post by: surbyte on Jan 28, 2017, 03:47 am
Yo no te di la respuesta final, sino el camino para que lo trabajes tu.
El código que puse lo adapté en 2 min de un dimmer. Asi que puede tener fallos.

Code: [Select]
if (XtimePeriod > 9750) // mayor que 9750 useg      // ajusta este tiempo a ver si va bien
     zero_cross = 1;                                 // set the boolean to true to tell our dimming function that a zero cross has occured
 }
 else
     zero_cross = 0;

en un ambiente de 50 hz la señal tiene dos semiperíodos de 10 mseg.
En un ambiente de 60 hz la señal tiene dos semiperiódos de 8.333mseg
Entonces corrige ese 9750 porque estaba pensado para 50 hz (mi frecuencia de red) y ajusta a tu caso.
Ya que hablas de 110VAC supongo que será 60Hz.
Prueba esa parte del código para que detecte un cruce x cero 60/50Hz
Title: Re: Leer estado de rele externo
Post by: arlaor on Jan 28, 2017, 04:40 am
creo que no me hice entender, el código trabaja bien con el valor que tiene, los cambios los asume correctamente, pero como te decía los cambios de AC ON y AC OFF no tienen ningún inconveniente, sino cuando el estado inicial del circuito esta en modo activo (encendido) y el arduino apagado, entonces cuando el arduino inicia, no detecta que el circuito ya está encendido, porque aun no ha pasado de inactivo a activo, que es el caso en el que las interrupciones trabajan, o sea, aun no ha sucedido una interrupción y por esto arduino no detecta el real estado del circuito. No se si aclaro un poco o confundo mas.
Title: Re: Leer estado de rele externo
Post by: surbyte on Jan 28, 2017, 05:04 am
Si ahora te comprendo.
Pero eso no se corrige en 1 semiperíodo? Por tu comentario no... voy a analizarlo.
Title: Re: Leer estado de rele externo
Post by: daviten on Feb 27, 2017, 05:17 pm
Quiero hacer esto , no me sale.
Title: Re: Leer estado de rele externo
Post by: surbyte on Feb 28, 2017, 11:57 pm
Que quieres hacer daviten?