Circuitos Antirebotes

Pues así es como lo dice el titulo, sinceramente me quede incomodo con la anterior entrada porque solo explico de manera breve los anti rebotes (mas bien solo lo menciono) y nunca digo a ciencia cierta que son o como por que son, para que funcionan etc, entonces como para quitarme la espina de que no lo dije bien, aquí empezamos con todo.

Empecemos por cosas simples, para entrar en tema

¿que es un pulsador?

Es un interruptor eléctrico, consta de dos contactos metálicos, estos están separados y cuando se unen al ser presionado el botón, permiten el paso de corriente.

Un ejemplo de ellos, son los interruptores de su casa que al accionarlos se prende el foco de su cuarto (pero que buen ejemplo a que si eh!).

Su simbología es la siguiente:



Y bueno a todo esto, si lo se no es suficiente, para que nuestro Arduino "entienda" que queremos activar o desactivar algo, tenemos dos opciones a utilizar, estas se conocen como conexiones de "Pull-Up" y "Pull-down", cuya simbologia es la siguiente:



Llegados a este punto les explicare de manera breve como funciona cada una.

Pull-up: Cuando se presiona el push, el Arduino ve un cero logico, o una entrada de 0[V].
Pull-down: Cuando se presiona el push, el Arduino ve un uno logico, o una entrada de 5[V].

Ahora bien, les mostrare como se ve una señal con un rebote, ocasionado al presionar nuestro botón:


Explico un poco, la imagen de arriba muestra esos "rebotes" que se ocasionan al ser presionado nuestro botón; por tanto si han hecho la practica de presionar el botón y que prenda un led en el Arduino, han notado que, de momento prende y apaga nuestro led (que redundante, lo siento apenas ando aprendiendo a redactar bien), pues si, es culpa de estos rebotes, pero que de malo tienen, simple, ocasionan la activación o desactivacion de un proceso que no se debería tener en ese momento, por eso se requiere de los circuitos anti-rebote.

Ahora en esta otra imagen les muestro como se ve una señal sin rebote:


notan la diferencia, es una señal "limpia" que evita lo que antes mencione la activación o desactivacion en falso de un proceso.

Bueno notan la diferencia entre un circuito sin rebote y otro con rebote.
Para evitar los dichosos rebotes, se emplean varias técnicas, que varían desde poner un capacitor que elimine esos rebotes, como programando un tiempo de retardo para que nuestro Arduino no "sienta" esos rebotes, como en el anterior post

Lo que viene es simple, les dejare un circuito pequeño para evitar estos rebotes, con solo un capacitor de ceramico de 100nF.
Y bueno hasta aquí la pequeña explicación de lo que son los circuitos anti-rebote y un pequeño porque son malos los dichosos rebotes, también les deje un pequeño circuito para evitarlos, pero venga, no siempre solo con poner un capacitor se soluciona la vida, existen muchos mas circuitos para evitar los rebotes, con diodos, TTL, etc.

Su tarea sera investigar los demás, ver como funcionan y cual conviene mas para utilizar, ahora si, sin mas por el momento espero les guste, saludos!




Comentarios

Entradas populares de este blog

Arduino y las Interrupciones parte III (Medir RPM con Arduino)

RPM, Arduino y un Display LCD

LABview y Arduino