Sommario:
- Forniture
- Passaggio 1: Collegamento Leap Motion / Arduino
- Fase 2: Mappatura Coordinate Leap Motion
- Step 3: Scrittura Codice Su IDE Arduino
- Passaggio 4: Caricamento Sketch Su Scheda Arduino
Video: Controller di movimento di salto. (Progetto Arduino): 4 Passi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
L'intento di questo progetto è quello di utilizzare il Leap Motion per controllare l'intensità di luce e i colori di un led RGB in relazione al movimento delle mani nello spazio.
Riferimento:
Leap Motion SDK:
Forniture
PC
Elaborazione IDE
IDE arduino
Scheda Arduino Uno
Movimento di salto
4 x cavi di collegamento
1 x LED RGB
3 x resistenze 330Ω
1 x tagliere
Passaggio 1: Collegamento Leap Motion / Arduino
Il primo passo è quello di collegare Leap Motion ad Arduino e per farlo, ho utilizzato Processing tramite la libreria "Processing. Serial". Per poter mettere in comunicazione Leap Motion e Arduino ho utilizzato due diversi ambienti di sviluppo. Leap Motion può essere programmato in Java mentre Arduino C++. Importo in Processing la libreria "Processing. Serial" che mi permette attraverso la funzione "serial.write (src) di inviare dati ad Arduino per via seriale. I parametri che può acquisire questa classe sono Byte, int e string. La mia necessità è quella di inviare ad Arduino numeri interi con valori compresi tra 0-255. Il tipo di Variabile utilizzato è stato quindi quello di tipo String, composto a sua volta da una serie di stringhe. Le informazioni inviate da Processing ad Arduino vengono lettere attraverso le funzioni seriali di Arduino. Come prima istruzione ho inserito un controllo per verificare se ci sono dati in ingresso nella porta seriale, se esiste un valore creiamo una variabile di tipo stringa che acquisisce tutti i valori inoltrati da processing prima del carattere "/n".
Fase 2: Mappatura Coordinate Leap Motion
Mappatura coordinate Leap Motion: per conversione nel range di valori che possono essere supportati dai led, ovvero 0-255. Per fare ciò ho creato un box interattivo su Processing, ho dovuto lavorare con le funzioni presenti all'interno della classe "interaction box" del Leap Motion, che rappresenta una regione a forma di scatola all'interno del campo visivo di quest'ultimo e fornisce coordinate normalizzate per mani e dita. I valori base di questa classe sono i millimetri che ho quindi convertito in un range da 0 a 1 attraverso la funzione "Vector normalize point (vector position, boolean, clamp). Fatto ciò moltiplico i valori per 255 e poi li converto in intero per utilizzarli su Arduino.
A questo punto luminoso ho led RGB.
developer-archive.leapmotion.com/documenta…
Step 3: Scrittura Codice Su IDE Arduino
Dopo aver completato la scrittura del codice su Processing e essere riuscito a collegare il Leap Motion ad Arduino, è arrivato il momento di scrivere il codice sull' IDE Arduino (Allegato)
Per Arduino ho creato quindi del codice che mi permette di ricevere i dati dell'elaborazione.
Definisco le variabili.
Void Setup: impostazione pin relativi alla corrente del led rgb come outuput e velocità di trasferimento dati della porta seriale 9600).
Void Loop: creo una nuova stringa nella quale inserisco tutti i dati che mi ha inviato processing, utilizzo la classe getValue che mi permette di separare le stringhe inserite nella stringa precedentemente creata, converto tutte le stringhe separate in interi e assegno i valori ottenuti ai relativi pin di uscita).
Passaggio 4: Caricamento Sketch Su Scheda Arduino
Dopo aver completato la scrittura del codice ed aver effettuato la verifica di quest'ultimo ho caricato lo sketch sulla scheda Arduino Uno e ho iniziato a controllare il led tramite l'utilizzo delle mie mani.
Quindi:
-alzando la mano destra dal basso verso l'alto, controllo i colori del led;
-alzando la mano sinistra dal basso verso l'alto, controllo l'intensità della luminosità;
-facendo un cerchio con un dito, inverto i valori della luminosità e dei colori.
I codici sono scaricabili sia con i link sotto al video youtube che qui sotto:
Arduino:
Elaborazione:
Consigliato:
Rileva il movimento e distruggi il bersaglio! Progetto fai da te autonomo: 5 passaggi
Rileva il movimento e distruggi il bersaglio! Progetto fai-da-te autonomo: rileva il movimento e distruggi il bersaglio! In questo video ti mostro come costruire un progetto di tracciamento del movimento fai-da-te con un Raspberry Pi 3. Il progetto è autonomo, quindi si muove e spara con la pistola quando rileva il movimento. Ho usato il modulo laser per questo progetto, ma tu
Trampolino Neopixel Sensibile al Salto: 11 Passi (con Immagini)
Trampolino Neopixel sensibile al salto: in questo tutorial, ti mostrerò come costruire un trampolino che cambia colore ogni volta che ci salti sopra
Progetto di ritratto in movimento di Harry Potter fai da te: 9 passaggi (con immagini)
Progetto di ritratto in movimento di Harry Potter fai-da-te: quanto segue è un'istruzione destinata solo ai maghi purosangue. Se non sei un purosangue, in particolare Serpeverde, sei stato avvertito dell'inevitabile fallimento e sconfitta che incontrerai come squib, babbano, Tassorosso o mezzosangue
Chi c'è alla mia porta? Progetto sensore di movimento PIR/sensore di portata: 5 passaggi
Chi c'è alla mia porta? Progetto sensore di movimento PIR/sensore di portata: il nostro progetto ha lo scopo di rilevare il movimento tramite sensori PIR e di distanza. Il codice Arduino emetterà un segnale visivo e audio per dire all'utente che qualcuno è vicino. Il codice MATLAB invierà un segnale e-mail per avvisare l'utente che qualcuno è vicino. Questo dispositivo
Presa controllata dal movimento - Da una luce di rilevamento del movimento: 6 passaggi
Presa controllata dal movimento - Da una luce di rilevamento del movimento: Immagina di essere un dolcetto o scherzetto che va nella casa più spaventosa del quartiere. Dopo aver superato tutti i ghoul, i fantasmi e i cimiteri, arrivi finalmente all'ultimo percorso. Puoi vedere le caramelle in una ciotola davanti a te! Ma poi improvvisamente un gho