Search Code

TTP224 4-kanalni senzor dodira za uključivanje AC/DC opterećenja s relejem

TTP224 4-kanalni senzor dodira za uključivanje AC/DC opterećenja s relejem

TTP224 kapacitivni modul za dodir je svestrana komponenta koja korisnicima omogućava upravljanje AC i DC opterećenjima (poput svjetla, ventilatora, motora) putem dodira. U ovom tutorijalu ćemo demonstrirati kako povezati TTP224 sa Arduinom za upravljanje relejem, koji može uključiti ili isključiti vaša svjetla ili druge uređaje samo dodirom. Do kraja ovog vodiča, imat ćete potpuno funkcionalan sistem za upravljanje osjetljiv na dodir za vaše električne uređaje. Za vizuelni pregled, svakako pogledajte video (u videu na 00:00).
TTP224 touch module

Objašnjenje hardvera

Glavne komponente korištene u ovom projektu uključuju TTP224 kapacitivni modul za dodir, Arduino ploču i modul releja. TTP224 modul detektuje dodir putem kapacitivnog osjeta, što znači da može registrovati dodir mjerenjem promjena u kapacitivnosti kada se prst postavi blizu njegovih pločica. Ovaj modul ima četiri izlaza koji odgovaraju četiri različita ulaza za dodir, omogućavajući vam upravljanje više uređaja. Modul releja djeluje kao prekidač koji može sigurno upravljati visokonaponskim AC opterećenjima. Relej korišten u ovom tutorijalu je okidan na NISKOM nivou, što znači da kada je signal na ulazu modula releja NIZAK, relej se uključuje, a kada je signal VISOK, relej se isključuje. Kada je relej aktiviran, povezuje zajednički terminal sa normalno otvorenim terminalom, omogućavajući struji da teče do povezanog uređaja. Relejem upravlja Arduino, koji čita izlaze sa TTP224 i aktivira relej u skladu s tim.

Detalji iz podatkovne tablice

ProizvođačVishay
Broj dijelaTTP224
Logički/IO napon2.2 – 5.5 V
Izlazna struja (po kanalu)10 mA (maks.)
Ulazni logički pragovi0.3 V (nizak), 0.7 V (visok)
Paket16-pinski DIP
Napomene / varijanteČetiri kanala za dodir

  • Osigurajte da je modul napajan unutar 2.2 – 5.5 V za ispravan rad.
  • Pratite izlaznu struju kako biste izbjegli prekoračenje 10 mA po kanalu.
  • Koristite decoupling kondenzatore blizu modula za filtriranje šuma napajanja.
  • Držite žice kratkim kako biste smanjili smetnje i poboljšali kvalitet signala.
  • Koristite pull-down otpornike na ulaznim pinovima ako ne koristite Arduino za upravljanje.

Upute za povezivanje

Arduino wiring for  TTP224 Touch with 4 Channel relay
Arduino wiring for TTP224 Touch with 4 Channel relay
Za povezivanje TTP224 modula za dodir i releja na Arduino, počnite spajanjem napajanja. Spojite VCC pin TTP224 na 5V izlaz Arduina, a GND pin spojite na uzemljenje Arduina. Zatim spojite četiri izlazna pina TTP224 (označena kao OUT1, OUT2, OUT3, OUT4) na digitalne pinove na Arduinu. Na primjer, spojite OUT1 na pin 2, OUT2 na pin 3, OUT3 na pin 4 i OUT4 na pin 5. Za relej, spojite njegov VCC pin na 5V izlaz Arduina i GND pin na uzemljenje. Kontrolni pin releja treba spojiti na pin 10 na Arduinu. Osigurajte da je jedan od zajedničkih terminala releja spojen na AC ili DC opterećenje, dok se normalno otvoreni (NO) terminal spaja na izvor napajanja. Ako želite da se relej uključi kada se detektuje dodir, spojit ćete ga na zajednički terminal, a NO terminal će se spojiti na opterećenje.

Primjeri koda i objašnjenje

Arduino kod počinje postavljanjem izlaznih pinova za relej i ulaznih pinova za senzore dodira. Kod također inicijalizira serijsku komunikaciju za debugging.
void setup() {
    Serial.begin(9600);
    pinMode(10, OUTPUT); // LED za dugme 1
    pinMode(11, OUTPUT); // LED za dugme 2
    pinMode(12, OUTPUT); // LED za dugme 3
    pinMode(13, OUTPUT); // LED za dugme 4            
    pinMode(2, INPUT); // Dugme 1 ulazni pin 2  
    pinMode(3, INPUT); // Dugme 2 ulazni pin 3  
    pinMode(4, INPUT); // Dugme 3 ulazni pin 4  
    pinMode(5, INPUT); // Dugme 4 ulazni pin 5              
}
Ova setup funkcija konfiguriše pinove za senzore dodira i izlaze releja. Inicijalizira serijski monitor za praćenje pritisaka dugmadi. Loop funkcija kontinuirano provjerava stanje svakog senzora dodira. Kada je dugme pritisnuto, uključuje odgovarajući izlaz releja i ispisuje poruku na serijski monitor.
void loop() {
    if(digitalRead(2)){
      Serial.println("Dugme 1 dodirnuto "); 
      digitalWrite(10, LOW); // Uključi LED     
    } else {
      digitalWrite(10, HIGH); // Isključi LED
    }
    // Slične provjere za dugmad 2, 3 i 4...
}
Ova loop petlja čita stanje svakog dugmeta i aktivira odgovarajući pin releja. Ako je dugme 1 pritisnuto, ispisuje se poruka "Dugme 1 dodirnuto", a relej spojen na pin 10 se aktivira. Konačno, da biste promijenili koliko dugo relej ostaje aktiviran, lako možete promijeniti vrijednost kašnjenja u kodu. Ovo omogućava veću fleksibilnost u upravljanju vašim uređajima.

Demonstracija / Šta očekivati

Kada se uključi, sistem će vam omogućiti upravljanje povezanim opterećenjem dodirom odgovarajućih pločica na TTP224. Na primjer, dodirivanje prve pločice će uključiti relej spojen na pin 10, koji može napajati vaše svjetlo 💡. Ako pustite dodir, svjetlo 💡 će se isključiti (u videu na 03:00). Budite oprezni s povezivanjem; osigurajte da je relej ispravno spojen kako biste spriječili kratke spojeve ili oštećenje vaših uređaja. Ako se relej ne aktivira kako se očekuje, provjerite sve veze i potvrdite da Arduino kod odgovara namjeravanoj konfiguraciji pinova.

Vremenske oznake videa

  • 00:00 - Uvod
  • 01:30 - Postavljanje hardvera
  • 03:00 - Pregled koda
  • 04:30 - Demonstracija
4 Channel 5V relay module - top view

Images

TTP224 touch module
TTP224 touch module
Arduino wiring for  TTP224 Touch with 4 Channel relay
Arduino wiring for TTP224 Touch with 4 Channel relay
4 Channel 5V relay module - bottom view
4 Channel 5V relay module - bottom view
4 Channel 5V relay module - top view
4 Channel 5V relay module - top view
20-TTP224 4-Channel Capacitive Touch Arduino with Relay Code
Language: C++
/*
 * This is the Arduino code for TTP224 4-Channel Capacitive Touch switch.
 * The output pins 10, 11, 12, and 13 will be LOW when keys 1 to 4 are pressed respectively,
 * and the connected relay will go ON.
 * Pressing button 1 turns pin 10 LOW.
 * Pressing button 2 turns pin 11 LOW.
 * Pressing button 3 turns pin 12 LOW.
 * Pressing button 4 turns pin 13 LOW.
 * 
 * Written by Ahmad Nejrabi for Roboja Video
 * Date: December 3, 2017, in Ajax, Ontario, Canada
 * Permission granted to share this code given that this
 * note is kept with the code.
 * Disclaimer: This code is "AS IS" and for educational purposes only.
 * 
 */


 int LD = 200; // Loop Delay. Do not change.

void setup() {
    Serial.begin(9600);
    // out pins
    pinMode(10, OUTPUT);// LED for button 1
    pinMode(11, OUTPUT);// LED for button 2
    pinMode(12, OUTPUT);// LED for button 3
    pinMode(13, OUTPUT);// LED for button 4            

    // input pins
    pinMode(2, INPUT);// Button 1 input pin 2  
    pinMode(3, INPUT);// Button 2 input pin 3  
    pinMode(4, INPUT);// Button 3 input pin 4  
    pinMode(5, INPUT);// Button 4 input pin 5              


    Serial.println("Robojax Test");

}

void loop() {

    // button 1 action
    if(digitalRead(2)){
      Serial.println("Button 1 Touched "); 
      digitalWrite(10, LOW); // Turn the LED ON     
      delay(LD); 
    }else{
      digitalWrite(10, HIGH);// Turn OFF the LED
    }

    // button 2 action
    if(digitalRead(3)){
      Serial.println("Button 2 Touched "); 
      digitalWrite(11, LOW); // Turn the LED ON
      delay(LD); 
    }else{
      digitalWrite(11, HIGH);// Turn OFF the LED
    }   

    // button 3 action
    if(digitalRead(4)){
      Serial.println("Button 3 Touched "); 
      digitalWrite(12, LOW); // Turn the LED ON       
      delay(LD); 
    }else{
      digitalWrite(12, HIGH);// Turn OFF the LED
    }     

   // button 4 action
    if(digitalRead(5)){
      Serial.println("Button 4 Touched "); 
      digitalWrite(13, LOW); // Turn the LED ON      
      delay(LD); 
    }else{
      digitalWrite(13, HIGH);// Turn OFF the LED
    }

}// loop

Resources & references

No resources yet.

Files📁

Datasheet (pdf)

Fritzing File

Other files