Botão "Touch" da placa de circuito impresso

10

É possível usar um PCB como botão? Penso em usá-lo para ativar um curcuit que só deve ser ativado quando o usuário o segura em suas mãos.

Como inspiração, usei os blocos que estão sendo usados ​​em botões de toque suave em teclados ou calculadoras:

insira a descrição da imagem aqui

Eu sei que o corpo humano tem uma resistência bastante alta, então qual seria um circuito apropriado para detectar a entrada de toque? Apenas hardware desencapado. Eu não quero usar nenhum microcontrolador aqui.

mxcd
fonte
6
Você quer dizer um sensor de toque capacitivo?
PlasmaHH
@PlasmaHH Esta poderia ser uma outra possibilidade, mas apesar de algo como amplificando a corrente que flui quando colmatar o pad acima com o dedo, unsing-lo para operar um MOSFET ou algo
mxcd
11
Dependendo dos requisitos de energia do seu projeto, a detecção capacitiva pode exigir muita energia. Você pode se safar dos 50Hz (provavelmente). Se você tocar no portão de um mos, você o liga. Além disso, você geralmente o quebra, portanto deve estar protegido de alguma forma, mas é um bom ponto de partida.
precisa saber é o seguinte

Respostas:

12

Por razões de confiabilidade, eu não aceitaria um design de porta aberta e confiaria no ruído de 50Hz. Provavelmente pode funcionar, mas sua ideia de usar dedos entrelaçados deve funcionar muito bem.

A resistência da pele seca está entre 1k e 100k, então você pode pensar em um transistor NMOS (encontre um com proteção contra ESD) e uma grande redução de, por exemplo, 1M ohm. Então você pode usar o dedo como um resistor pull-up para ligar o mosfet.

esquemático

simular este circuito - esquemático criado usando o CircuitLab

Você também pode usar um transistor bipolar (ou darlington), eles são menos vulneráveis ​​a defeitos ESD, mas não podem fornecer uma grande corrente na saída, se necessário, para que você precise armazenar em buffer a saída.

Um sensor capacitivo seria uma solução alternativa, mas requer um circuito mais complicado.

Douwe66
fonte
2
Eu consideraria adicionar um resistor de 10k entre o cátodo de D1 e a junção entre R1 e o lado direito do sensor para limitar a corrente instantânea no portão de M1 a partir de uma descarga estática e ajudar D1 a fazer seu trabalho, geralmente desacelerando rapidamente bordas para baixo. Se você achar esse circuito particularmente propenso a ruídos, um capacitor de 100pF ou mais no R1 pode ajudar nisso - você precisará construí-lo e testá-lo!
stefandz
Bom ponto, eu vou adicioná-lo ao diagrama de circuito
Douwe66
12

É possível usar placas de conexão resistivas como você mostra, mas as placas capacitivas geralmente são melhores. As almofadas resistivas deixam uma conexão direta com o circuito aberta para o exterior. Eles são, portanto, suscetíveis a danos por descarga estática e ruído.

As almofadas capacitivas são um método melhor, embora exijam um pouco mais de firmware para detectar, pelo menos se você quiser fazê-lo bem. Observe que, para obter imunidade a ruídos ainda mais rudimentares, os pads resistivos também requerem firmware. Apenas conectar dois pads a algo sensível, como o portão de um FET, é uma má idéia. Você não poderá cancelar o modo comum e outros ruídos do ambiente.

Aqui está o layout de uma pequena placa que fiz recentemente apenas para pesquisar botões capacitivos:

As almofadas de tampa são pequenos discos com 150 mils (3,8 mm) de diâmetro e, de outra forma, cercadas por terra na camada superior. O microcontrolador é um PIC 16LF1786. Ele e todas as outras partes que não são para interface direta com o usuário estão montadas na parte inferior desta placa de duas camadas.

O PIC varre continuamente os blocos. Quando detecta uma alteração no sentido pressionado / liberado de um bloco, ele envia uma mensagem pela porta serial, atualiza as luzes no canto superior direito e emite um sinal sonoro em uma impressora.

Para o teste, posso solicitar que o PIC envie regularmente seus valores internos para a pressão de cada bloco. Aqui está um gráfico de todos os cinco valores dos sentidos brutos, além do estado digital geral de algo que é pressionado, enquanto pressionava cada bloco sucessivamente com o dedo:

Como você pode ver, a imunidade ao ruído é excepcional. Até o sinal mais fraco estava acima de 300, enquanto o ruído era de aproximadamente 2.

O traço magenta rotulado "Pressed" mostra o OR dos estados pressionados no botão individual. Seus níveis mostram os limites de imprensa e liberação. Há muito sinal extra que não é usado neste caso. Esses limites específicos foram ajustados para poder tolerar algumas camadas de papel acima dos botões.

É claro que há um manuseio inteligente das linhas de botões e processamento, mesmo que eu diga isso, mas claramente os resultados são alcançáveis ​​com um microcontrolador bastante modesto.

Estou usando isso em um produto real, onde o mesmo micro também está gerenciando uma exibição de caracteres. Esse é um subsistema básico da interface do usuário que pretendo reutilizar em vários produtos futuros. Ele faz interface com o controlador principal do sistema através de uma porta serial. O controlador principal envia comandos para gravação no visor e recebe mensagens assíncronas sempre que o estado de um botão muda.

Olin Lathrop
fonte
Quais são as unidades do Yeixo no seu gráfico? As almofadas estão simplesmente conectadas aos pinos ou existem outros componentes envolvidos?
Dmitry Grigoryev
11
@ Dimitri: O eixo Y mostra a medida interna "quanto o botão está sendo tocado". Ele é derivado de valores brutos de A / D, mas há várias leituras de A / D envolvidas e há um processamento significativo nessas leituras. Não houve nenhuma tentativa de mantê-los em unidades específicas, pois esses valores são relativos entre si e limiares introduzidos arbitrariamente. Muito aproximadamente, eles estão em unidades de aproximadamente 800 uV de diferencial entre as leituras. 350 significa cerca de 280 mV, mas, novamente, não é tão simples assim.
precisa saber é o seguinte
Então você está dirigindo os pads alto e baixo e medindo algum tipo de taxa de carga / descarga usando o ADC?
Dmitry Grigoryev
11
@ Dmitry: Estou dirigindo a outra coisa alta e baixa, depois medindo a mudança de passo nas pastilhas. Nada se baseia no tempo, além de permitir tempo de acomodação suficiente para fazer as leituras.
Olin Lathrop