Ferramentas do usuário

Ferramentas do site


debouncing_reed_switch

Debouncing de Reed Switch / Relé Reed

As chaves ou interruptores mecânicos funcionam sob o princípio de abrir ou fechar contatos elétricos para estabelecer ou interromper o fluxo de corrente em um circuito. Por suas características mecânicas, o tempo de fechamento ou abertura do circuito muitas vezes não ocorre de maneira instantânea. Se analisarmos a tensão nos terminais de uma chave vamos ver que transientes ocorrem fazendo com que o sinal possa ser interpretado incorretamente por circuitos digitais como uma sequencia de aberturas ou fechamentos do circuito.

Em dois testes feitos com um Reed-Switch mantido em pull-up, esses foram os resultados na atuação da chave:

Clique para expandir Clique para expandir

Em diversos de meus projetos uso uma chave reed-switch para acionar uma interrupção em microcontroladores quando o sinal vai de um valor lógico 1 (ON) para 0 (OFF). Se houver ruídos ao acionar a chave pode acontecer de que múltiplas interrupções sejam executadas em sequência, o que não é desejado. Para evitar isso tenho tido boa experiência utilizando um circuito de debouncing por hardware para filtrar estes transientes. Esse é o circuito:

Clique para expandir Clique para expandir

Quando o reed-switch fecha o circuito, o capacitor descarrega rapidamente para o terra através do diodo, no entanto se ocorrerem oscilações voltagem na chave, o capacitor permanecerá descarregado enquanto a polaridade do diodo é revertida e fazendo com que o sinal transiente carregue o capacitor lentamente o suficiente suplantar o período de transitórios. O resistor de 470 Ohms está aí para fixar a constante RC na carga do capacitor. O resistor de 10K Ohms server apenas como pull-up pois em todas as minhas aplicações de Reed-Switch com microcontroladores, a interrupção vai ocorrer na transição do sinal de alto (1) para baixo (0) uma vez que esta configuração é mais resistente a ruídos de modo geral.

Nota:

Nota: Existem diversas outras maneiras de implementar um debouncer, tanto em hardware quanto em software. Existem até mesmo chips dedicados a esta função.
debouncing_reed_switch.txt · Última modificação: por jjo