Nell’articolo di oggi vedremo come utilizzare i PIN GPIO. Esploreremo anche la parte elettronica d’ora in avanti, inizieremo con l’utilizzo del sensore touch capacitivo.
Lista componenti
- ESP32-WROVER
- Breadboard
- Touch Sensor
- 3x jumper
- GPIO extension board (falcolatitivo)
Descrizione componenti
Touch Sensor
Il sensore touch funziona come una specie di interuttore.
Quando vi è un tocco il sensore funziona come un interruttore che chiude il circuito e consente alla corrente di fluire attraverso di esso. Quando il contatto viene rilasciato agisce come un interruttore che apre il circuito e quindi cessa il fluire della corrente.
Il sensore capacitivo 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.
Tra le due piastre si genera un campo elettrico. Un anello di protezione posto attorno alla struttura fa sì che il campo elettrico sia il più omogeneo possibile. Se un corpo finisce nel campo, la distanza tra le due piastre cambia e può essere misurata.
Collegamenti
In seguito schema e diagramma di collegamento. Per costruire un circuito ricordati di tenere la scheda spenta.
Codice
Se questo è il tuo primo articolo ti invito di leggere prima questo per l’installazione dei driver della scheda. Ecco qui un piccolo riepilogo prima di compilare e caricare il codice.
Ecco qui lo sketch:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
#define SENSOR_PIN 18 // ESP32 pin GIOP18 connected to the sensor's SIGNAL pin of touch sensor // Variables will change: int lastState = LOW; // the previous state from the input pin int currentState; // the current reading from the input pin void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(115200); // initialize the ESP32's pin as aninput pinMode(SENSOR_PIN, INPUT); } void loop() { // read the state of the the input pin: currentState = digitalRead(SENSOR_PIN); if (lastState == LOW && currentState == HIGH){ Serial.println("The sensor is touched"); }else{ Serial.println("The sensor is not touched"); } // save the the last state lastState = currentState; delay(1500); } |
Compila e carica il codice sull’ESP32, ed ecco qui che potremo visualizzare i se il sensore è stato o non è stato toccato.
Al prossimo articolo. Grazie per la lettura.
Iscriviti ai nostri gruppi Telegram
Link utili
- Arduino UNO R3
- Elegoo UNO R3
- Arduino Starter Kit per principianti
- Elegoo Advanced Starter Kit
- Arduino Nano