Go Down

Topic: interrupciones saltos indeseados (Read 549 times) previous topic - next topic

surbyte

#15
Sep 15, 2019, 05:10 am Last Edit: Sep 15, 2019, 05:11 am by surbyte
Si el switch rebota, se debe a su naturaleza mecánica. Si eso ocurre tu capacitor se cargará/descargará menos en cada intervalo en el que llegue a VCC.
Cambia algo tenerlo o no tenerlo en el circuito? Para el rebote no, porque lo voy a segir eliminando con Bounce2.

En cambio el capacitor constituye un camino a tierra/GND para las altas frecuencias que pueden llegar hasta ese lugar.

Ese es mi criterio con estas situaciones.

tauro0221

Surbyte:
Acuerdate que antes no habia micro para usar antirebote cuando usabas un switche. Pero el condensador hace el trabajo.

Bodeguero

Hola y Gracias a todos por vuestras contestaciones. Me han servido de mucho.

Al principio tenía conectado el pluviómetro de balancín del siguiente modo y me daba muchos problemas, tanto donde tengo la placa solar y el grupo electrógeno como en mi casa:

después de leer vuestras sugerencias, he cambiado la manera de conectar el pluviómetro:

de esta forma me seguían dando saltos pero en menor medida.
Le he añadido una resistencia más, un condensador y un diodo del siguiente modo:

de esta forma en mi casa ha dejado de generar saltos, voy a probarlo con la placa solar y el grupo electrógeno. Ya os contaré.

Ahora mismo he puesto un diodo led, que es lo que tengo a mano, pero tengo pensado cambiarlo por un 1N4148.

Muchas gracias por vuestras ideas...

tauro0221

Hi,
Aqui lo que resolvio tu problema fue el condesador. Puedes usar el switche que te supla voltaje o que supla el .ground y te va a trabajar. Ya surbyte te recomendo que usaras el debounse y te hubiera resolto el problema. Aqui tambien hay otro problema y es que se esta usando un iman para cerrar el contacto del reed switch y en la forma en que lo hacen de poco a poco hasta que el balde se va llenado esto hace que el  iman no tenga la fuerza suficiente  para cerar el contacto y puede producir ruidos.  Vamos a esperar que hagas laprueba con todo conectado.

Bodeguero

Ok. entonces de igual modo se estan transmitiendo posibles rebotes.
Yo comenzaría con un código que use Bounce2.h y un intervalo de 50mseg a ver como se comporta. No hacen falta interrupciones para un balancin de lluvia.
Es un proceso lento aun cuando este diluviando.

Eso si no se usa DELAY en ninguna parte del código restante.
Hola surbyte

utilizo delay porque al leer datos de temperatura y humedad cada 5 min el proceso de mandar datos al servidor es lento, por lo que entiendo que este código no funcionaría. Cuando manda datos, si hay un salto por lluvia (o por ruido :-) ), sí lo cuenta.

Bodeguero

Conectado a la placa y al generador funciona normalmente.

Gracias por vuestras respuestas

surbyte

Quote
utilizo delay porque al leer datos de temperatura y humedad cada 5 min el proceso de mandar datos al servidor es lento, por lo que entiendo que este código no funcionaría.
Entiendes mal, porque usar millis() permite que le envies datos a tu servidor cuando gustes y chequear el estado del reed a cada momento, sin detener el flujo del programa 5 min haciendo nada.

Go Up