Utilizzo sensore capacitivo con chip TTP223B

Vediamo in questo articolo l’utilizzo di un sensore di tipo capacitivo che utilizza il chip TTP223B, questo componente è ideale per l’aggiunta di controllo touch, con sostituzione degli interruttori meccanici nel proprio progetto. Il modulo proposto è in grado di rilevare quando un dito umano lo tocca.

Utilizzo sensore capacitivo TTP223B

Principio di funzionamento

Il sensore appartiene al tipo di sensore capacitivo che si basa sul principio della rilevazione della capacità elettrica di un condensatore: il loro lato sensibile ne costituisce un’armatura, l’eventuale presenza nelle immediate vicinanze di un oggetto conduttore, realizza l’altra armatura del condensatore. Così la presenza di un oggetto crea una capacità che i circuiti interni rilevano, comandando la commutazione del segnale d’uscita.
Rispetto ai sensori di prossimità induttivi, sono limitati nella velocità di commutazione (10-50 Hz), ma presentano altri vantaggi:

  • portate nominali più elevate (fino a 20 mm);

  • possibilità di rilevare oggetti non ferromagnetici, purché almeno parzialmente conduttivi;

  • immunità a disturbi elettromagnetici.

Utilizzo sensore capacitivo TTP223B

Il modulo sensore capacitivo TTP223B

Quando si tocca il modulo questo porterà la sua uscita a livello alto, se non sarà più toccato nei seguenti 12 secondi il modulo entrerà in una modalità a basso consumo, comportando un tempo di risposta di 220ms, ma riducendo notevolmente il consumo di energia. In modalità contatto modulo avrà un tempo di risposta veloci di 60ms.

Utilizzo sensore capacitivo TTP223B

Capacitive Touch Sensor 8300 YB107

Il modulo può essere utilizzato con microcontrollori e schede come Arduino e il Raspberry Pi.
Il modulo ha una serie di fori di montaggio M2 per permetterne un facile collegamento ad una moltitudine di superfici.  Il modulo può essere acquistato presso il sito Futura Elettronica il suo codice è Cod. 8300-YB107 – Touch sensor breakout

Sensore nella sua busta antistatica

ChipsetTTP223B
Alimentazione: da 2 VDC a 5,5 VDC
Consumo: 4 mA @ VCC = 3 V
Tempo di risposta: 60-220 ms
Interfaccia di uscita: 3 pin (VCC-GND-SIG)
Tensione di uscita:- livello basso: 0,3 VDC
- livello alto: 5 VDC (se alimentato a 5 volt)
Corrente di uscita: 8 mA
Dimensioni (mm): 24x24x7,2

TTP223N-BA6 1 key touch pad detector


Piedinatura
Datasheet
Foto

OurPCB, your most reliable PCB and PCBA supplier.

Altro modello di sensore

la stessa tipologia di sensore si può trovare in altre forme e dimensioni, a questo link maggiori informazioni su questo modello

sensore di tipo capacitivo
Focusing on PCB Prototype and PCB Assembly Turnkey Services.

Schema del circuito di prova

Per testare il sensore si utilizzano i seguenti componenti

Arduino UNO Capacitive Touch SensorCapacitive touch sensor
KY-019 5V relay module Cavetti per Breadboard di vari colori

Pin utilizzati

Pin ArduinoCapacitive touch sensorKY-019 5V relay module
2OUT
4GND
3VCC
10In
+5VVCC
GNDGND
Utilizzo sensore capacitivo TTP223B

Test Capacitive Touch Sensor

Utilizzo sensore capacitivo TTP223B

Test Capacitive Touch Sensor YB107 Bb

One-Stop Wire Harness & Cable Assemblies Solution

Programma applicativo

Il programma applicativo per l’utilizzo del sensore capacitivo TTP223B è molto semplice, quando si tocca il sensore capacitivo collegato al pin digitale D2, il relè collegato al pin digitale D10 si eccita e lo rimane sino a quando non si toccherà nuovamente il sensore.
Una particolarità del programma è che i pin D3 e D4 sono utilizzati per alimentare il sensore, per questo motivo dopo averli impostati come OUTPUT, tramite il comando digitalWrite il pin D4 che è collegato a GND del sensore viene portato a livello LOW, mentre il pin D3 collegato a VCC del sensore viene portato a livello HIGH, in questo modo non è neanche necessario utilizzare dei cavi ma è sufficiente inserire il sensore sul connettore di Arduino.

NOTA: prestare attenzione, se utilizzate un modello diverso di sensore occorre verificare l’esatta disposizione dei pin, in quanto potrebbero essere diversi con il rischio di danneggiare sia il sensore che la scheda Arduino.

Programma

Schema circuito di prova

int gnd = 4;          // Collegato a pin GND del sensore
int TouchSensor = 2;  // Collegato a pin SIG del sensore
int vcc = 3;          // Collegato a pin VCC del sensore
int rele = 10;        // Collegato a pin in del rele'

int val = 0;          // si userà val per conservare lo stato del pin di input
int vecchio_val = 0;  // si userà vecchio_val per conservare lo stato del pin di input al passo precedente
int stato = 0;        // ricorda lo stato in cui si trova relè, stato = 0 rele' disattivo, stato = 1 rele' attivo

void setup() {
  pinMode(rele, OUTPUT);
  pinMode (gnd, OUTPUT);
  pinMode (vcc, OUTPUT);
  pinMode(TouchSensor, INPUT);
  digitalWrite (gnd, LOW);
  digitalWrite (vcc, HIGH);
}

void loop() {
  val = digitalRead(TouchSensor);  // legge il valore dell'input e lo conserva

  // controlla se è accaduto qualcosa
  if ((val == HIGH) && (vecchio_val == LOW)) {
    stato = 1 - stato;
    delay(15);                // attesa di 15 millisecondi
  }

  vecchio_val = val;            // memorizza il valore precedente di val

  if (stato == 1) {
    digitalWrite(rele, HIGH);   // attiva il rele'
  }
  else {
    digitalWrite(rele, LOW);    //disattiva il rele'
  }
}

Lascia un commento

Your email address will not be published.