- Senzor tactil
- Aflați mai multe despre releu
- Componente necesare
- Diagrama circuitului
- Programarea Arduino UNO pentru controlul becului folosind senzorul tactil
- Testarea funcționării senzorului tactil TTP223
În unele aplicații, este necesară introducerea utilizatorului pentru a controla funcțiile unui dispozitiv. Există diferite tipuri de metode de introducere a utilizatorilor utilizate în electronica încorporată și digitală. Senzorul tactil este unul dintre ele. Senzorul tactil este un dispozitiv de intrare important și utilizat pe scară largă pentru interfața cu un microcontroler și a simplificat introducerea datelor. Există locuri individuale în care senzorul tactil poate fi utilizat, indiferent dacă acesta poate fi un telefon mobil sau un comutator de monitor LCD. Cu toate acestea, există multe tipuri de senzori disponibili pe piață, dar senzorul tactil capacitiv este tipul utilizat pe scară largă în segmentul senzorilor tactili.
În tutorialul anterior, am făcut controlul luminii folosind senzorul tactil și microcontrolerul 8051, acum în acest proiect, același senzor tactil va fi interfațat cu Arduino UNO. Arduino este o placă de dezvoltare foarte populară și ușor disponibilă.
Am folosit anterior metode de intrare bazate pe atingere folosind tampoane tactile capacitive cu diferite microcontrolere, cum ar fi:
- Atingeți interfața tastaturii cu microcontrolerul ATmega32
- Touch Pad capacitiv cu Raspberry Pi
Senzor tactil
Senzorul tactil, care va fi utilizat pentru acest proiect, este un modul de senzor tactil capacitiv, iar driverul senzorului se bazează pe driverul IC TTP223. Tensiunea de funcționare a TTP223 IC este de la 2 V la 5,5 V, iar consumul de curent al senzorului tactil este foarte mic. Datorită consumului de curent ieftin, scăzut și a suportului ușor de integrat, senzorul tactil cu TTP223 devine popular în segmentul senzorilor tactili capacitivi.
În imaginea de mai sus, ambele părți ale senzorului sunt afișate acolo unde diagrama pinout este clar vizibilă. De asemenea, are un jumper de lipit care poate fi folosit pentru reconfigurarea senzorului în ceea ce privește ieșirea. Jumperul este A și B. Configurație implicită sau în starea implicită a jumperului de lipit, ieșirea se schimbă de la LOW la HIGH când senzorul este atins. Cu toate acestea, atunci când jumperul este setat și senzorul este reconfigurat, ieșirea își schimbă starea atunci când senzorul tactil detectează atingerea. Sensibilitatea senzorului tactil poate fi configurată și prin schimbarea condensatorului. Pentru informații detaliate, consultați fișa tehnică a TTP 223, care va fi foarte utilă.
Graficul de mai jos prezintă ieșiri diferite la diferite setări ale jumperului-
Jumper A | Jumper B | Starea de blocare a ieșirii | Nivel TTL de ieșire |
Deschis | Deschis | Fără blocare | Înalt |
Deschis | Închide | Autoblocare | Înalt |
Închide | Deschis | Fără blocare | Scăzut |
Închide | Închide | Auto-Blocare | Scăzut |
Pentru acest proiect, senzorul va fi folosit ca configurație implicită, care este disponibilă în condițiile de lansare din fabrică.
Aparatele pot fi controlate utilizând senzorul tactil și interfațându-l cu un microcontroler. În acest proiect, senzorul tactil va fi utilizat pentru a controla un bec ca ON sau OFF folosind Arduino UNO și Relay.
Aflați mai multe despre releu
Pentru a interfața releul, este important să aveți o idee corectă despre descrierea pinului releului. Pinout-ul releului poate fi văzut în imaginea de mai jos
NO este normal deschis și NC este normal conectat. L1 și L2 sunt cele două borne ale bobinei releului. Când tensiunea nu este aplicată, releul este oprit și POLE este conectat cu pinul NC. Când tensiunea este aplicată peste bornele bobinei, L1 și L2 ale releului sunt pornite și POLUL se conectează la NO. Deci, conexiunea dintre POLE și NO poate fi pornită sau oprită prin schimbarea stării operaționale a releului. Este foarte recomandabil să verificați specificațiile releului înainte de aplicare. Releul are o tensiune de funcționare pe L1 și L2. Unele relee funcționează cu 12V, altele cu 6V și altele cu 5V. Nu numai că acest lucru, NO, NC și POLE au avut, de asemenea, o tensiune și curent nominal. Pentru aplicația noastră, folosim un releu de 5V cu un grad de 250V, 6A pe partea de comutare.
Componente necesare
- Arduino UNO
- Cablul USB pentru programare și alimentare
- Releu cubic standard - 5V
- Rezistor 2k -1 buc
- Rezistor 4.7k - 1 buc
- BC549B tranzistor
- TTP223 Modul senzor
- 1N4007 Diodă
- Bec cu suport bec
- O placă de măsurare
- Un încărcător de telefon pentru conectarea Arduino prin cablu USB.
- O mulțime de fire de conectare sau fire Berg.
- Platforma de programare Arduino.
Rezistor 2k, BC549B, 1N4007 și releul pot fi înlocuite cu un modul de releu.
Diagrama circuitului
Schema pentru conectarea senzorului tactil cu Arduino este simplă și poate fi văzută mai jos,
Tranzistorul este utilizat pentru a porni sau opri releul. Acest lucru se datorează faptului că pinii Arduino GPIO nu sunt capabili să furnizeze suficient curent pentru a conduce releu. 1N4007 este necesar pentru blocarea EMI în timpul activării sau opririi releului. Dioda acționează ca o diodă cu roată liberă. Senzorul tactil este conectat cu placa Arduino UNO.
Circuitul este construit pe o placă de calcul cu Arduino ca mai jos.
Conexiunea corectă a panoului poate fi văzută în schema de mai jos.
Programarea Arduino UNO pentru controlul becului folosind senzorul tactil
Programul complet cu Video de lucru este oferit la sfârșit. Aici explicăm câteva părți importante ale codului. Arduino UNO va fi programat folosind Arduino IDE. În primul rând, biblioteca Arduino este inclusă pentru a accesa toate funcțiile implicite ale Arduino.
#include
Definiți toate numerele de pin unde se vor conecta releul și senzorul tactil. Aici, senzorul tactil este conectat la pinul A5. Se utilizează și LED-ul încorporat, care este conectat direct în placa la pinul 13. Releul este conectat la pinul A4.
/ * * Descriere pin * / int Touch_Sensor = A5; int LED = 13; int Releu = A4;
Definiți modul pin, adică care ar trebui să fie funcția pin, fie ca intrare sau ieșire. Aici este introdus senzorul tactil. Releul și pinii LED sunt ieșiți.
/ * * Configurare mod Pin * / configurare void () { pinMode (Touch_Sensor, INPUT); pinMode (LED, OUTPUT); pinMode (releu, ieșire); }
Sunt declarate două numere întregi unde „condiția” este utilizată pentru a menține starea senzorului, indiferent dacă este atins sau nu. „Starea” este utilizată pentru menținerea stării LED-ului și a releului, pornită sau oprită.
/ * * Fluxul programului Descriere * / condiția int = 0; int state = 0; // Pentru a menține starea comutatorului.
Senzorul tactil schimbă logica 0 la 1 când este atins. Aceasta este citită de funcția digitalRead () și valoarea este stocată în variabila condiție. Când starea este 1, starea LED-ului și a releului se schimbă. Cu toate acestea, pentru a detecta cu precizie atingerea, se folosește o întârziere a retragerii. Întârzierea dezabonării , întârziere (250); este utilizat pentru a confirma simpla atingere.
void loop () { condiție = digitalRead (A5); // Citirea datelor digitale de la pinul A5 al Arduino. if (condiție == 1) { întârziere (250); // întârziere de-săritură. if (condition == 1) { state = ~ state; // Schimbarea stării comutatorului. digitalWrite (LED, stare); digitalWrite (Releu, stare); } } }
Testarea funcționării senzorului tactil TTP223
Circuitul este testat în panoul de control cu un bec cu putere redusă conectat la acesta.
Rețineți că acest proiect folosește tensiune de 230-240V AC, deci este recomandat să aveți grijă în timp ce utilizați becul. Dacă aveți vreo îndoială sau sugestie, vă rugăm să comentați mai jos.