Cuprins:

Leap Motion Controller. (Progetto Arduino): 4 pași
Leap Motion Controller. (Progetto Arduino): 4 pași

Video: Leap Motion Controller. (Progetto Arduino): 4 pași

Video: Leap Motion Controller. (Progetto Arduino): 4 pași
Video: Making an Animatronic Hand Controlled by Leap Motion 2024, Noiembrie
Anonim
Leap Motion Controller. (Progetto Arduino)
Leap Motion Controller. (Progetto Arduino)

L'intento di questo proiect è quello di utilizare il Leap Motion per controlare l'intensità di luce e i colors di un led RGB in relație cu mișcarea delle mani nello spațiu.

Referinţă:

Leap Motion SDK:

Provizii

PC

Prelucrarea IDE

IDE arduino

Scheda Arduino Uno

Leap Motion

4 x cavi di collegamento

1 x Led RGB

3 x rezistențe 330Ω

1 x panou de pâine

Pasul 1: Collegamento Leap Motion / Arduino

Collegamento Leap Motion / Arduino
Collegamento Leap Motion / Arduino
Collegamento Leap Motion / Arduino
Collegamento Leap Motion / Arduino

Il primo step è quello di collegare Leap Motion ad Arduino and per farlo, ho folos Processing through the libreria "Processing. Serial". Per poter mettere in comunicazione Leap Motion e Arduino ho use due diversi ambienti di development. Leap Motion poate fi programat în Java în timp ce Arduino C ++. Import in Processing la libreria "Processing. Serial" care mi permite prin intermediul funcției "serial.write (src) di inviare dati ad Arduino per via seriale. I parametri care can acquire this class are Byte, int e string. La mia necessità è quella di inviare ad Arduino numeri interi con valori compresi tra 0-255. Il tipo di Variabile folosite è stato apoi quello di tipo String, composto a sua volta da una serie di stringhe. seriali di Arduino. Come prima istruzione ho inserito un control per verificare se ci sono dati in ingresso in porta seriale, se esiste un valore creiamo una variabile di tip stringa care acquisisce tutti i valori inoltrati da processing prima del carattere "/ n".

Pasul 2: Mappatura Coordiate Leap Motion

Mappatura Coordiate Leap Motion
Mappatura Coordiate Leap Motion

Mappatura coordinate Leap Motion: per convertire nel range di valori che potessero essere supportati dai led, ovvero 0-255. Per fare what ho creato un box interattivo su Processing, ho dovuto lavorare with the functions presents inside of the class "interaction box" del Leap Motion, care reprezintă o regiune a unei forme de scatola în interiorul câmpului viziv di quest'ultimo e fornisce coordinate normalizzate per mani e dita. I valori base di questa classe sono i milimetri care așa convertit într-un interval da 0 a 1 prin funcția "Vector normalize point (vector position, boolean, clamp). Fatto what moltiplico i valori per 255 și apoi li converto in intero per utilizarli su Arduino.

A questo punto illumino i led RGB.

developer-archive.leapmotion.com/documenta…

Pasul 3: Scrittura Codice Su IDE Arduino

Scrittura Codice Su IDE Arduino
Scrittura Codice Su IDE Arduino

După ce a finalizat scrittura codului de procesare și a fi ruscuit la colegiu în Leap Motion ad Arduino, a sosit în momentul în care a scris codul pe IDE Arduino (Allegato)

Per Arduino așa creează apoi codul care îmi permite înghețarea și datele de procesare.

Definisco le variabili.

Void Setup: Impostazione pin relativi alla current del led e dei canali rgb come outuput e viteza de transfer dati a portii seriale 9600).

Void Loop: creo una nuova stringa in quale inseriso tutti i dati che mi ha inviato processing, folosirea clasei getValue care mi permite di separare le stringhe contenute in stringa precedent creata, converto toate le stringhe separate in interi e assegno i valori ottenuti ai relativi ieșire pin di).

Pasul 4: Caricamento Sketch Su Scheda Arduino

Dopo aver completat la scrittura del codice ed aver efectuat la verificare di quest'ultimo ho caricato lo sketch sulla scheda Arduino Uno e ho iniziato a controlare il led folosind utilizizzo delle mie mani.

Quindi:

-alzando la mano destra dal basso verso l'alto, control i colori del led;

-alzando la mano sinistra dal basso verso l'alto, control l'intensità della luminosità;

-facendo un cerchio cu un dito, inverto i valori della luminosità e dei colori.

I codici sono downloadabili sia with i link sotto al video youtube che qui under:

Arduino:

Procesare:

Recomandat: