Este tutorial faz parte de: Controlando um relé usando Arduino
Esta é uma coletânea de vídeos relacionados a revezamento. Os links para outros vídeos estão abaixo deste artigo.
Usando um módulo de toque TTP223B e um relé para controlar cargas CA/CC com um Arduino
Neste tutorial, exploraremos como usar o módulo de toque capacitivo TTP223B em conjunto com um relé para controlar cargas AC ou DC usando um Arduino. O módulo TTP223B atua como sensor de toque, permitindo ativar ou desativar um relé com um simples toque. Essa configuração pode ser usada para várias aplicações, como controlar luzes ou outros dispositivos eletrônicos remotamente.




O resultado deste projeto será um sistema de controle por toque eficiente e fácil de usar para os seus dispositivos elétricos. Passaremos pelos componentes de hardware necessários, instruções de fiação e explicações do código para ajudá-lo a configurar seu projeto sem problemas. Para mais esclarecimentos, você também pode consultar o vídeo (no vídeo em 00:00).
Hardware Explicado
Os principais componentes usados neste projeto incluem o módulo de toque TTP223B e um relé. O TTP223B é um sensor de toque capacitivo que detecta a entrada de toque e fornece um sinal alto ou baixo. Ele opera em 2.0V a 5.5V, tornando-o compatível com a lógica de 5V do Arduino. Quando a área sensível ao toque é ativada, o módulo envia um sinal ao Arduino, que pode então controlar o relé.
O relé funciona como um interruptor que pode controlar dispositivos de alta tensão. Ele permite que o sinal de baixa tensão do Arduino controle cargas de maior tensão em CA ou CC. Essa separação garante que o Arduino permaneça seguro ao controlar dispositivos maiores. O relé normalmente requer uma pequena corrente para ativar, que é facilmente fornecida pelo Arduino.
Detalhes da ficha técnica
| Fabricante | Desconhecido |
|---|---|
| Número da peça | TTP223B |
| Tensão lógica/E/S | 2.0 - 5.5 V |
| Tensão de alimentação | 2,0 - 5,5 V |
| Corrente de saída | 20 mA máx. |
| Tipo de saída | Digital alto/baixo |
| Tempo de resposta | 60 ms típico. |
| Temperatura de operação | -20 a 85 °C |
| Pacote | TO-92 |
| Notas / variantes | Diversas configurações de sensibilidade |
- Garanta a alimentação adequada (2.0 - 5.5 V).
- Preste atenção às configurações de sensibilidade ao toque.
- Use um transistor para acionar relés de alta corrente.
- Mantenha a fiação curta para evitar interferência de sinal.
- Teste primeiro o funcionamento do relé com dispositivos de baixa tensão.
Instruções de Fiação
Para ligar o módulo de toque TTP223B e o relé ao seu Arduino, siga estes passos:
Primeiro, conecte oVCCpino do TTP223B para o pino 5V do Arduino e oGNDpino ao terra. Em seguida, conecte o pino de saída do TTP223B (normalmente rotuladoOUT) para o pino digital 2 no Arduino. Para o relé, conecte o pino de controle ao pino digital 10 no Arduino. O VCC e o GND do relé também devem ser conectados aos 5V e ao terra do Arduino, respectivamente. Por fim, conecte o circuito de carga ao relé conforme as especificações do relé.
Certifique-se de que todas as conexões estão seguras e verifique novamente a fiação do relé para evitar qualquer curto-circuito. Se estiver usando um módulo de relé, consulte a documentação do módulo para instruções específicas de fiação.
Exemplos de Código e Guia Passo a Passo
Abaixo está uma parte do código Arduino que configura o sensor de toque TTP223B e controla o relé:
int LD = 200; // Loop Delay. Controls how long after release the bulb is ON
void setup() {
Serial.begin(9600);
pinMode(10, OUTPUT); // LED for button 1
pinMode(2, INPUT); // Button 1 input pin 2
Serial.println("Robojax Test: TTP223B touch");
}
Neste excerto, a variávelLDé definido para controlar quanto tempo o relé permanece ativo após a detecção do toque. Osetup()A função inicializa a comunicação serial e configura os pinos para saída e entrada.
void loop() {
if(digitalRead(2)) {
Serial.println("Button Touched");
digitalWrite(10, LOW); // Turn the LED ON
delay(LD);
} else {
digitalWrite(10, HIGH); // Turn OFF the LED
}
}
Oloop()A função verifica se o sensor de toque está ativado lendo o estado do pino 2. Se o toque for detectado, ela imprime uma mensagem no monitor serial e ativa o relé conectado ao pino 10. Após o atraso definido, ela desliga o relé.
Demonstração / O que esperar
Após completar a fiação e enviar o código, tocar no módulo TTP223B deve ativar o relé, ligando a carga conectada. Você deve ver a mensagem "Button Touched" no monitor serial sempre que o toque for detectado (no vídeo em 05:00). Se o relé não ativar, verifique novamente suas conexões e certifique-se de que o relé está funcionando corretamente.
Erros comuns incluem atribuições incorretas de pinos e falhas na fiação, que podem impedir o relé de funcionar conforme o previsto. Tenha cuidado com a tensão e a corrente da carga para evitar danificar o relé ou o Arduino.
Marcas de tempo do vídeo
- 00:00- Introdução
- 05:00- Demonstração de controle por toque
- 07:30- Guia passo a passo de fiação
Este tutorial é parte de: Controlando um relé usando Arduino
- Código Arduino e vídeo para um relé de 5V de dois canais
- Controlando um relé de 5V com Arduino para acionar uma carga AC ou DC, como lâmpada ou motor
- Sensor de Toque TTP224 de 4 Canais para Acionar Cargas AC/DC com Relé
- Usando um Módulo de Relé de 5V (Baixo-Gatilho) com Arduino
- Usando um MAX6675 (termopar tipo K) com relé e display
- Usando um interruptor de palheta para controlar um relé e cargas AC/DC com um Arduino
- Usando um botão do Arduino para acionar um relé e uma lâmpada em corrente alternada
/*
* Este é o código Arduino para o interruptor de toque capacitivo TTP223B com relé.
* O pino de saída 10 está conectado ao relé.
* Ao tocar no touch pad TTP223B ou TTP223N-BA6, o relé será ativado.
*
* Escrito por Ahmad Nejrabi para Roboja Video.
* Data: 4 de dezembro de 2017, em Ajax, Ontário, Canadá.
* Permissão concedida para compartilhar este código, desde que esta
* nota seja mantida com o código.
* Isenção de responsabilidade: Este código está "COMO ESTÁ" e é apenas para fins educacionais.
*/
int LD = 200; // Atraso do Loop. Controla quanto tempo após a liberação a lâmpada fica ACESA.
void setup() {
Serial.begin(9600);
// pinos de saída
pinMode(10, OUTPUT); // LED para botão 1
// pinos de entrada
pinMode(2, INPUT); // Botão 1 entrada pino 2
Serial.println("Robojax Test: TTP223B touch");
}
void loop() {
// ação do botão 1
if(digitalRead(2)){
Serial.println("Button Touched");
digitalWrite(10, LOW); // Ligue o LED.
delay(LD);
}else{
digitalWrite(10, HIGH); // Desligue o LED
}
} // laço
/*
* Este é o código Arduino para o interruptor TTP223 de toque capacitivo com relé para ligar ou desligar carga AC ou DC.
* // 13 de dezembro de 2017
* // Escrito para o vídeo do Robojax.com
* // Usando o módulo de toque TTP223 para ligar ou desligar a carga AC (ou DC).
* // Quando o painel de toque é acionado, a luz no relé se acenderá e os pinos COM e NO serão conectados
* assista ao vídeo para mais detalhes https://youtu.be/YSI1PdSLbt0
*
* Escrito por Ahmad Nejrabi para o vídeo do RoboJax
* Data: 4 de dezembro de 2017, em Ajax, Ontário, Canadá
* Permissão concedida para compartilhar este código desde que
* essa nota seja mantida junto com o código.
* Isenção de responsabilidade: este código é "COMO ESTÁ" e para fins educacionais apenas.
*
* /
*
* // 12 de dezembro de 2017
* // Escrito para o vídeo do Robojax.com
* // Usando o módulo de toque TTP223 para ligar ou desligar a carga AC (ou DC).
* // Quando o painel de toque é acionado, a luz no relé se acenderá e os pinos COM e NO serão conectados
*/
int touchPin = 2; // conecte a saída do TTP223 a isso
int val = 0;
int relayPin = 10; // Conectado ao relé
void setup() {
Serial.begin(9600);
pinMode(touchPin, INPUT);
pinMode(relayPin, OUTPUT);
}
void loop() {
digitalWrite(relayPin, HIGH);
val = digitalRead(touchPin);
if(val ==1){
Serial.println("Touched");
digitalWrite(relayPin, LOW);
}
delay(100);
Serial.println();
}
/*
* Este é o código Arduino para o switch capacitivo TTP223 com relé para acionar carga AC ou DC com atraso.
* // 13 de dezembro de 2017
* // Escrito para o vídeo do Robojax.com
* // Usando o módulo TTP223 Touch para ligar uma carga AC (ou DC) e espera 5 segundos antes de desligar
* // Quando o pad de toque é tocado, a luz no relé se acende e os pinos COM e NO serão conectados
* Assista ao vídeo para mais detalhes: https://youtu.be/YSI1PdSLbt0
*
* Escrito por Ahmad Nejrabi para o vídeo do RoboJax
* Data: 4 de dezembro de 2017, em Ajax, Ontário, Canadá
* Permissão concedida para compartilhar este código desde que este
* aviso seja mantido com o código.
* Isenção de responsabilidade: Este código é "COMO ESTÁ" e apenas para fins educacionais.
*
* /
*
* // 12 de dezembro de 2017
* // Escrito para o vídeo do Robojax.com
* // Usando o módulo TTP223 Touch para ligar ou desligar uma carga AC (ou DC).
* // Quando o pad de toque é tocado, a luz no relé se acende e os pinos COM e NO serão conectados.
*/
int touchPin = 2; // conecte a saída do TTP223 a isso
int val = 0;
int relayPin = 10; // Conectado ao relé
int wait = 5; // espere por 5 segundos
void setup() {
Serial.begin(9600);
pinMode(touchPin, INPUT);
pinMode(relayPin, OUTPUT);
}
void loop() {
digitalWrite(relayPin, HIGH);
val = digitalRead(touchPin);
if(val ==1){
Serial.println("Touched");
digitalWrite(relayPin, LOW);
delay(wait*1000);
}
delay(100);
Serial.println();
}
Recursos e referências
Ainda não há recursos.
Arquivos📁
Folha de dados (pdf)
-
Folha de dados TTP223 da Taiwan Semiconductor (TONTEK)
TTP223_datasheet.pdf0.27 MB