banner

Notizia

Mar 12, 2023

Come utilizzare una banana come input touch per Raspberry Pi Pico

Tocca la banana per controllare un LED.

Il tocco capacitivo è un mezzo semplice per rilevare l'input dell'utente misurando la costante dielettrica. Se è diverso da una misurazione di base, può essere utilizzato come input. In passato, abbiamo utilizzato un sensore tattile MPR121 per attivare un evento utilizzando un Raspberry Pi Pico. L'MPR121 è un sensore Stemma QT affidabile disponibile in vari fattori di forma per clip a coccodrillo e calibri di filo standard. Ci piace così tanto che lo abbiamo inserito nel nostro elenco dei migliori componenti aggiuntivi Stemma QT e Grove. Ma c'è un modo per farlo senza utilizzare una scheda sensore?

Usando solo un pezzo di filo e una resistenza da 1 Mega Ohm in una banana, possiamo creare la nostra interfaccia touch e fare uno spuntino sano. In questo tutorial utilizzeremo la banana per accendere e spegnere un LED.

Perché qualcosa di così semplice? Imparare ad accendere/spegnere un LED è il modo migliore per capire come funziona ogni parte del tuo progetto. Certo, potremmo trasformare la banana in una barra spaziatrice e giocare a Flappy Birds, usarla per aprire una finestra del browser e "Rick-roll" un amico o avviare un robot per fare una corsa folle verso la porta. Ma prima di poterlo fare dobbiamo capire come e perché le cose funzionano, e l’umile LED è un modo semplice ed economico per farlo.

Ci sono due parti nel circuito: l'ingresso e l'uscita. L'ingresso è una banana (opzionale), collegata al GPIO 16 sul Raspberry Pi Pico tramite un lungo ponticello. GPIO 16 ha anche una resistenza da 1 Mega Ohm per collegarlo a GND. Si tratta di un resistore pulldown e garantisce che il pin GPIO veda un riferimento costante di 0 V. Senza di esso, l'input sarebbe irregolare. Questo processo può essere ripetuto per più ingressi, gli unici limiti sono i pin GPIO, i resistori da 1 Mega Ohm e le banane.

L'uscita è un semplice LED con il gambo lungo (anodo) collegato al GPIO 15 e il gambo corto (catodo) collegato a GND tramite un resistore da 100 Ohm.

La banana può essere sostituita con qualsiasi cosa sia conduttiva. Come input è possibile utilizzare fogli di alluminio, play-doh e altra frutta/verdura. Puoi anche rinunciare agli input culinari per i fili scoperti. In alcuni casi questo funziona meglio.

Costruisci il circuito e ricontrolla le connessioni prima di andare avanti.

Abbiamo scelto CircuitPython per questo progetto per due ragioni principali. Primo, è così facile da usare e da capire. Il nostro codice è facile da leggere, eseguire il debug e possiamo scriverlo su qualsiasi dispositivo, anche un Chromebook. In secondo luogo, CircuitPython ha il modulo Touchio che semplifica la creazione di input tattili utilizzando il GPIO. Ma prima di poter iniziare il progetto dobbiamo scrivere l'ultima versione di CircuitPython sul Raspberry Pi Pico.

1.Vai alla pagina ufficiale di CircuitPython per Raspberry Pi PicoEscaricare l'immagine del firmware UF2 dell'ultima versione. Al momento della stesura di questo articolo si trattava di CircuitPython 8.10. Abbiamo scelto il Raspberry Pi Pico perché non abbiamo bisogno del Wi-Fi, ma questo progetto potrebbe essere utilizzato per attivare un evento web, per questo avrai bisogno di un Raspberry Pi Pico W.

2.Tenendo premuto il pulsante BOOTSEL, collega il Raspberry Pi Pico al computer.Apparirà una nuova unità, RPI-RP2.

3.Copia il file CircuitPython UF2 scaricato su RPI-RP2. Questo scriverà CircuitPython nella memoria flash interna del Pico. Apparirà una nuova unità, CIRCUITPY.

Per scrivere il codice abbiamo utilizzato Thonny su Windows 10. Sei libero di utilizzare l'editor di testo che preferisci, ma Thonny ha un'ottima integrazione con CircuitPython (e MicroPython) che lo rende semplicissimo da usare. Ma soprattutto è gratuito e facile da installare su dispositivi Windows, macOS e Linux.

1.Scarica e installa Thonnyse non lo hai già.Thonny è un editor Python che copre Python 3, MicroPython e CircuitPython.

2.Apri Thonny e vai su Strumenti >> Opzioni.

3.Selezionare Interprete, quindi impostare l'interprete come CircuitPython, la porta su automatica e fare clic su OK.Thonny ora si connetterà al Pico che esegue CircuitPython.

> Open and select the CircuitPython device. Then select code.py. /strongCode.py is used by CircuitPython as the main file for a project. It is set to auto-run when the Pico is powered up./p>

> Options. Select Interpreter, then set the interpreter as CircuitPython, port to automatic, and click OK. Click on File >> Open and select the CircuitPython device. Then select code.py. Delete any code in code.py. Import four modules of code necessary for the project to work. Create an object, led, and set the GPIO pin to GP15, and then set it to be an output. Create an object, led_state and store the integer value 0 inside of it. Create an object, touch_pin Create a loop to continually run the code. Inside the loop create a print function that will report the current state of the touch input pin. Write a conditional test to check if the input has been touched, and that the LED is turned off. Set the LED to turn on, then update the led_state object to 1, . Sleep for half a second Create a conditional test to check if the input has been touched and that the LED is currently on. Toggle the LED off, update the led_state object pause for half a second. Outside of the conditional tests, but still inside the loop, pause the code for 0.1 seconds. Save the code to code.py on the CircuitPython device click on Stop and then Run. Touch the banana to toggle the LED on / off./strong>
CONDIVIDERE