Nota

Ciao, benvenuto nella Community di appassionati di Raspberry Pi, Arduino e ESP32 di SunFounder su Facebook! Approfondisci le tue conoscenze su Raspberry Pi, Arduino ed ESP32 insieme ad altri appassionati.

Perché unirti a noi?

  • Supporto esperto: Risolvi i problemi post-vendita e le sfide tecniche con l’aiuto della nostra community e del nostro team.

  • Impara e condividi: Scambia consigli e tutorial per migliorare le tue competenze.

  • Anteprime esclusive: Ottieni accesso anticipato ai nuovi annunci di prodotti e alle anteprime.

  • Sconti speciali: Godi di sconti esclusivi sui nostri prodotti più recenti.

  • Promozioni festive e giveaway: Partecipa a concorsi e promozioni durante le festività.

👉 Pronto a esplorare e creare con noi? Clicca su [Qui] e unisciti oggi stesso!

2.1.3 Modulo Interruttore a Tocco

Introduzione

In questo progetto, imparerai a conoscere il modulo interruttore a tocco. Questo modulo può sostituire i tradizionali tipi di interruttore, offrendo vantaggi come: funzionamento conveniente, ottima sensibilità al tocco, controllo preciso e minima usura meccanica.

Componenti necessari

In questo progetto, abbiamo bisogno dei seguenti componenti.

../_images/2.1.3component.png

È sicuramente conveniente acquistare un kit completo, ecco il link:

Nome

OGGETTI IN QUESTO KIT

LINK

Raphael Kit

337

Raphael Kit

Puoi anche acquistarli separatamente dai link sottostanti.

INTRODUZIONE AI COMPONENTI

LINK PER L’ACQUISTO

Scheda di estensione GPIO

ACQUISTA

Breadboard

ACQUISTA

Cavi Jumper

ACQUISTA

Resistore

ACQUISTA

LED

ACQUISTA

Modulo Interruttore a Sfioramento

ACQUISTA

Schema elettrico

../_images/2.1.3circuit.png

Procedure sperimentali

Passo 1: Costruisci il circuito.

../_images/2.1.3fritzing.png

Passo 2: Vai alla cartella del codice.

cd ~/raphael-kit/nodejs/

Passo 3: Esegui il codice.

sudo node touch_switch.js

Mentre il codice è in esecuzione, il LED rosso si accende; quando tocchi il modulo interruttore a tocco, il LED giallo si accenderà.

Codice

const Gpio = require('pigpio').Gpio;

const led1 = new Gpio(22, {mode: Gpio.OUTPUT});
const led2 = new Gpio(27, {mode: Gpio.OUTPUT});

const touchSwitch = new Gpio(17, {
    mode: Gpio.INPUT,
    pullUpDown: Gpio.PUD_DOWN,
    edge: Gpio.EITHER_EDGE
});

touchSwitch.on('interrupt', (level) => {
    led1.digitalWrite(level);
    led2.digitalWrite(!level);
});

Spiegazione del Codice

const Gpio = require('pigpio').Gpio;

const led1 = new Gpio(22, {mode: Gpio.OUTPUT});
const led2 = new Gpio(27, {mode: Gpio.OUTPUT});

const touchSwitch = new Gpio(17, {
    mode: Gpio.INPUT,
    pullUpDown: Gpio.PUD_DOWN,
    edge: Gpio.EITHER_EDGE
});

Importa il modulo pigpio e crea tre oggetti: led1, led2 e touchSwitch. Leggendo il livello della porta IO del touchSwitch, viene controllata l’accensione e lo spegnimento di led1 e led2.

touchSwitch.on('interrupt', (level) => {
    led1.digitalWrite(level);
    led2.digitalWrite(!level);
});

Quando il livello della porta IO del touchSwitch cambia, lo stesso livello viene scritto su led1 e il livello opposto su led2.

Immagine del fenomeno

../_images/2.1.3touch_switch_module.JPG