Como eliminar el rebote generado por los pulsadores.
En el día de hoy vamos a tocar un tema muy importante y que muchos desconocemos al momento de implementar un nuevo proyecto electrónico y/o eléctrico, y se trata del rebote que genera internamente los pulsadores de los circuitos electrónicos..
Figura 1 |
Rebote en interruptores mecánicos
Un problema que presentan los interruptores mecánicos es el del rebote de los interruptores. Cuando un interruptor mecánico se mueve para cerrar contactos, ya sea de tipo pulsadores u otro que supla esta función de conmutación manual, lo que sucede internamente es que un contacto se acerca a otro para poder así dar paso al flujo de corriente por el conductor tocándose el uno al otro. muchas veces este tipo de contactos conductores son de una lamina metálica elástica y al poseer esta propiedad hace que se produzca un rebote; entonces el contacto puede rebotar varias veces como se puede observar en la figura 1.
Figura 2 |
Interruptor normalmente cerrado y normalmente abierto
En la figura 2 podemos observar internamente los contactos metálicos elásticos que dan paso a la corriente a través de él. Existen 2 tipos de pulsadores, el normalmente cerrado y el normalmente abierto; en este caso el que tiene mayor probabilidad de generar un rebote es el normalmente abierto.
Por lo general una vez hayamos obturado el pulsador o interruptor en un lapso de 20 milisegundos se produce un rebote, (figura 1). En el momento que se genera el rebote, cada rebote se puede considerar un contacto del pulsador; por ejemplo supongamos que estamos viendo la televisión, y los botones del control remoto fueran de tipo pulsador, entonces por ejemplo al momento de subir el volumen del televisor, nos subirá mucho más de lo deseado al momento de obturar, ya que si obturamos una vez, seguidamente el rebote generará varias obturaciones internas y por consiguiente nos repetirá la pulsación haciendo que se suba demasiado el volumen, y esto es algo que no hicimos intencionalmente.
Para poder evitar este tipo de circunstancias, por lo general podemos recurrir a arreglos de tipo software o también a través del hardware. Por ejemplo si usamos un software, por ejemplo en un microcontrolador podemos programarlo para que en el momento de pulsar el interruptor tenga que haber un lapso de 20 milisegundos de flujo de corriente por entre los contactos para así internamente el microcontrolador lo pueda tomar como una pulsación. Las pulsaciones que duren menos serán descartadas por este. Un ejemplo de código sería:
- A través de software...
int i= 0;LED= LATBbits.RB1= 0;
if (PORTBbits.RB0 == 1)
{
i= i++;
}
if (i == '20')
{
LED == 1;
}
- A través de hardware...
Figura 3 |
Aunque en el anterior código hipotéticamente dijimos que el conteo se produce en milisegundos, en un microcontrolador no lo hará a no ser que que tengamos en cuenta el tiempo según la frecuencia en la que esta trabajando el microcontrolador y el tiempo que tienen de procesamiento las instrucciones. Lo anterior es un programa muy sencillo de implementar, aunque hay varios microcontroladores que tienen en cuenta esto. Además los pulsadores que se diseñan actualmente los hacen pensado en eliminar este efeto no deseado.
En el caso que no requeramos utilizar un microcontrolador y aún así necesitemos utilizar un pulsador de este tipo es necesario evitar el rebote a través de un flip-flop (circuito astable). (Figura 3).
La figura 3 muestra un circuito que elimina el rebote producido por un interruptor de tipo UPDT, el cual se basa en el empleo de un flip flop de SR (set-reset). Por ejemplo cuando S esta en 0 y R en 1 con salida de 0. Cuando el interruptor pasa a su posición inferior, al principio S se convierte en 1 y R en 0, lo que produce una salida 1. Un rebote que cambia S de su valor 1 a 0 a 1 a 0, etc, no se altera la salida. véase tabla de funcionamientos flip-flop de SR. Para eliminar el rebote de un interruptor UPDT se puede utilizar el flip flop tipo D. (Figura 4).
En la figura 4 se muestra que la salida del flip flop cambia solo cuando la señal del reloj también cambia. Es decir, si se elije un periodo de reloj mayor que el tiempo de duración del rebote, digamos 20 milisegundos, la señal de rebote serán ignoradas.
Escrito por: Breismam Alfonso Rueda Díaz
Fuente:
- Mecatronica,Sistemas de control electrónico en ingeniería mecánica y eléctrica., W. Bolton. Segunda edición. Alfaomega.
Bien muchachos, esto es todo por hoy. Estén pendientes de mi canal, de mi blog y de mi pagina de Facebook para más contenido.
Facebook: https://www.facebook.com/electronicalibrexc/
Youtube: https://www.youtube.com/c/breismanrueda
Google +: https://plus.google.com/u/0/+breismanrueda
Twitter: https://twitter.com/BreismamR
Cualquier duda, trabajo, tutoria personalizada por correo electrónico o pagina en facebook:
Correo: ElectronicaLibreXC@outlook.com
Facebook: https://www.facebook.com/electronicalibrexc/