ThinkUino Project, controlla il tuo Arduino con la mente!

header

ThinkUino (Thinking Arduino) è un progetto open source capace di far interagire una board Arduino con un headset MindWave. Immaginate di poter attuare un qualsiasi dispositivo collegato al vostro Arduino semplicemente utilizzando il pensiero! Questo tipo di applicazioni sono molto utilizzate in ambito medico ma con un pizzico di inventiva potremmo controllare ogni dispositivo semplicemente concentrandoci su di esso.

Mindwave… cosa è?

Mindwave è una innovativa cuffia sviluppata da Neurosky capace di convertire le onde cerebrali in segnali digitali. Esistono 2 versioni di questo innovativo device:

  • Mindwave Headset: questa è la versione base della cuffia. Può essere collegato ad un computer per effettuare delle semplici letture. É distinguibile dalla sua colorazione bianca ed è possibile visionarla attraverso questo link
  • Mindwave Mobile Headset: elemento top della serie Mindwave, permette di leggere con più accuratezza le onde cerebrali. Inoltre, in aggiunta alla versione precedente,  permette di essere interfacciato a dispositivi mobile quali Android e iOS. È distinguibile dalla sua colorazione nera ed è possibile visionarla attraverso questo link

Mindwave… 2 versioni, ma quale scelgo?

Per la corretta esecuzione del progetto è necessario utilizzare la versione Mobile del dispositivo. L’headset mobile supporta il collegamento bluetooth inviando dati RAW al dispositivo connesso. Questo elemento fondamentale ci permetterà di effettuare il parsing per ricavare i dati.

Procediamo? Certo, da subito!

Ricapitolando, gli elementi fondamentali per l’implementazione del progetto sono:

  1. Mindwave Mobile Headset;
  2. Arduino 2009 (o superiore);
  3. LED a bassa luminosità;

Per prima cosa, colleghiamo il LED alla board inserendo l’anodo all’interno del pin 13 (chiamato proprio pin led) ed il catodo a GND (massa). Notare il collegamento della figura qui di seguito:

Dopo aver collegato il LED come da figura, procediamo alla creazione del firmware che sarà flashato sull’Arduino:

int val;  

void setup() 
{ 
  Serial.begin(9600);
  pinMode(13,OUTPUT);
} 

void loop() 
{ 
  if(Serial.available()>0){
    val = Serial.read();
    if(val==1){
     digitalWrite(13,HIGH);
    }else{

      digitalWrite(13,LOW);
    }  
}
Il firmware per il controllo del Led è molto semplice. Viene letto un byte dalla porta seriale (in questo caso USB) ed in base al suo valore viene settato il PIN, quindi:
  • 0: il pin 13 viene impostato a LOW
  • 1: il pin 13 viene impostato ad HIGH

In questo modo otterremo la logica di accensione e spegnimento del Led.

Configurazione Mindwave Mobile Headset:

Come qualsiasi dispositivo bluetooth occorre in primis effettuare il pairing con il PC. Quindi eseguire i seguenti passaggi:

  • Tenere in pressione il tasto per 3 secondi:
  • Cliccare su "aggiungi un dispositivo":
  • Cliccare sul dispositivo denominato "Mindwave Mobile":

Terminato il pairing con il pc, scarichiamo il codice sorgente

Il progetto è stato realizzato attraverso Visual Studio 2010 Express Edition, pertanto è ricompilabile anche con la versione 2012. Componente fondamentale del software è la libreria ThinkGear.net. Tale libreria permette di interfacciare molto velocemente l’headset al software. Sarà quindi possibile leggere direttamente i valori dell’eSense (Attenzione, Meditazione) e le relative singole frequenze che compongono i due stati.

Scaricato il pacchetto dei sorgenti procediamo alla modifica delle parti fondamentali del progetto. Ricerchiamo le costanti che identificano le porte COM di Arduino e Mindwave:

  • ARDUPORT: identifica la porta COM di Arduino, in genere è identificabile attraverso l’Arduino compiler
  • MINDPORT: identifica la porta COM di Mindwave, rilevabile dal pannello di controllo di windows attraverso l’analisi dei dispositivi bluetooth.

Modificate le due costanti non ci resta altro che avviare la compilazione del software. Terminata tale procedura si presenterà una finestra come quella qui di seguito:

Utilizzo del software:

L’utilizzo del software è davvero molto semplice. Per prima cosa accendiamo l’headset impostando lo switch su “ON”. Successivamente colleghiamo l’Arduino alla porta USB del computer, quindi clicchiamo su “Connect” della sezione Headset e Arduino. In questo modo verranno aperti 2 canali di comunicazione seriali sia sul bluetooth che su USB. Per selezionare l’opzione di spegnimento del led ci basterà semplicemente sbattere le palpebre degli occhi.  Per eseguire l’attuazione, invece, basterà concentrarsi sull’obiettivo. La condizione necessaria per attuare il led è “Attention > 60”.

 

Considerazioni finali:

Questo progetto pone semplicemente le basi per la creazione di ulteriori progetti molto più complessi di una semplice attuazione. L’utilizzo dell’headset Mindwave richiede un pò di pratica per essere utilizzato correttamente in questo progetto. Sicuramente, nelle prime prove effettuerete dei cambi di stato in maniera del tutto involontaria e casuale.

Ed ora, è il momento dei commenti! Scrivete qui di seguito le vostre considerazioni riguardanti il progetto perché, ovviamente, saranno prese tutte in considerazione! Infine, vorrei salutare l'Associazione Domos (Domotica sociale) di Conversano, in provincia di Bari, che ogni giorno svolge un egregio lavoro a supporto delle persone che necessitano davvero di una aiuto! 

STAMPA     Tags:,

16 Comments

  1. info 15 aprile 2013
  2. Tiziano.Pigliacelli 13 settembre 2013
  3. Emanuele 8 aprile 2013
  4. Andres Reyes 8 aprile 2013
  5. Andres Reyes 8 aprile 2013
  6. Luigi Francesco Cerfeda 8 aprile 2013
  7. AntonioBlescia 8 aprile 2013
  8. Andres Reyes 8 aprile 2013
  9. Andres Reyes 8 aprile 2013
  10. Luigi Francesco Cerfeda 8 aprile 2013
  11. Andres Reyes 8 aprile 2013
  12. Luigi Francesco Cerfeda 8 aprile 2013
  13. Andres Reyes 8 aprile 2013
  14. Piero Boccadoro Piero Boccadoro 8 aprile 2013
  15. Piero Boccadoro Piero Boccadoro 8 aprile 2013
  16. AntonioBlescia 9 aprile 2013

Leave a Reply