Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Composants et fournitures

ComposantQuantitéRôle
Arduino UNO1Robot
Arduino Mega 25601Serveur principal (cerveau)
Arduino Leonardo1Contrôleur souris PC
Particle Photon1Serveur web / data logger
Necomimi Brainwave Cat Ears1Capteur EEG (puce NeuroSky TGAM)
Double pont en H L298 (SparkFun)1Driver moteurs robot
Module relais1Automatisme domestique
Module Bluetooth HC-051Maître (réception casque)
Module Bluetooth HC-061Esclave (sur casque)
LED générique3Indicateurs
Résistance 330 Ω3Pour LEDs
Transistor NPN usage général3Pour driver relais
Fils Male/Female1
Fils de connexion1
Demi breadboard1

Outils nécessaires

Applications et services en ligne

À propos de ce projet

Enfant, je rêvais de pouvoirs spéciaux : déplacer des objets par la pensée, voler. J'ai essayé… sans succès. Grand fan de Star Wars, mais aussi passionné d'électronique et de programmation : pourquoi ne pas combiner les deux ?

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Concept principal : utiliser différentes ondes cérébrales pour :

C'est une méthode parfaite pour détecter stress, somnolence, maladies. Cela aide aussi à mieux se connaître, contrôler ses émotions, trouver son équilibre mental. Un rêve d'enfant devenu réalité.

Mais au-delà du gadget, cet appareil rend des capacités à des personnes en situation de handicap : le robot fonctionne comme un fauteuil roulant, la domotique permet de contrôler lumière/TV sans bouger, le contrôleur souris ouvre l'informatique et le jeu vidéo par la pensée.

Regardez la vidéo d'introduction : (lien dans l'article original)

La science derrière le projet

Électroencéphalographie (EEG) : méthode non-invasive enregistrant l'activité électrique du cerveau via électrodes sur le cuir chevelu. Mesure les fluctuations de tension dues aux courants ioniques dans les neurones. On exploite deux bandes de fréquence :

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Comment ça marche ?

4 microcontrôleurs :

3 canaux (modes), basculement par fermeture des yeux :

Relais pour domotique : connecter tout appareil (TV, lampe, prise...).

Le casque sans fil

J'ai hacké un jouet « Necomimi » (oreilles de chat bougeant selon ondes cérébrales). Inutile comme jouet, mais contient la puce NeuroSky TGAM : lecture ondes, filtrage bruit, sortie UART série. Avec quelques modifications, on en fait un casque EEG Bluetooth confortable.

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Comment l'utiliser ?

Deux valeurs eSense (NeuroSky) : Méditation (0–100) et Attention (0–100).

Le système fonctionne par la pensée pure. Après ~1 semaine d'entraînement, je contrôlais mon niveau d'attention précisément (15, 39, 65, 90). Chacun trouve sa méthode : émotions (amour, colère, peur) donnent de bons contrastes.

Alimentation : brancher micro-USB sur l'Arduino Leonardo (alimente tout le système : 5V, 500mA).

Mode Domotique

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Attention > 70 → Relais 1 ON/OFF
Méditation > 70 → Relais 2 ON/OFF
Les deux > 70 → Relais 3 ON/OFF
(Même commande pour allumer/éteindre)

Mode Souris

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Attention :

Clic : Méditation > 70.

Mode Robot

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

3 états : Stop, Tourner gauche, Avancer.
Pourquoi seulement 2 mouvements ? Suffisants pour aller n'importe où.
Méditation → Rotation sur place.
Quand direction voulue atteinte → Stop → Attention → Avancer.
Méthode plus intuitive, même pour débutants.

Hack du jouet Necomimi

  1. Retirer l'autocollant arrière → vis → ouvrir le boîtier.
  2. À l'intérieur : petit circuit. Celui du bas = puce NeuroSky TGAM, connectée par 4 pins au circuit principal. Désouder ce petit circuit délicatement.
  3. Souder 3 fils : GND, VCC, T (pin TX, 57600 bauds).
  4. Connecter T directement au RX du module HC-06 (esclave).
  5. Alimentation : batterie Li-Ion 500 mAh + circuit charge USB + step-up 5V + diviseur 100Ω/200Ω → 3,3V stable pour puce + BT.
  6. Configurer les modules Bluetooth (voir ci-dessous).
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Schéma électronique du casque

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Point crucial : connecter le pin « T » de la puce TGAM au pin « RX » du module Bluetooth HC-06.

Configuration des modules Bluetooth

HC-06 (esclave sur casque)

Téléverser sketch « HC_06_Bluetooth » sur un UNO, câbler le HC-06 selon schéma. Moniteur série (9600 bauds) :

void setup() {
  Serial.begin(9600); delay(1000);
  Serial.print("AT"); delay(1000);
  Serial.print("AT+VERSION"); delay(1000);
  Serial.print("AT+PIN"); delay(1000); // supprimer mot de passe
  Serial.print("AT+BAUD7"); delay(1000); // 57600 bauds = Necomimi
  Serial.begin(57600);
}
void loop() {}

Le HC-06 est maintenant à 57600 bauds. Compatible avec toutes apps NeuroSky (Brain Visualizer, EEG Analyzer, Blink Camera...).

HC-05 (maître sur serveur)

Sketch « HC_05_Bluetooth » sur UNO. Pin EN du HC-05 → 3V3 de l'UNO. Récupérer l'adresse MAC du HC-06 (via smartphone Android), remplacer « : » par « , » dans le code (ex: 20:15:09:15:17:82 → 20,15,09,15,17,82).

void setup() {
  Serial.begin(9600); delay(1000);
  Serial.print("AT"); delay(1000);
  Serial.print("AT+VERSION"); delay(1000);
  Serial.println("AT+ROLE=1"); // mode maître
  delay(1000);
  Serial.println("AT+LINK=20,15,09,15,17,82"); // adresse HC-06
  delay(1000);
  Serial.print("AT+UART=57600,1,0"); // 57600 bauds
  Serial.begin(57600);
}
void loop() {}

Les deux modules doivent se connecter automatiquement.

Le robot à commande IR

Technologie IR 38 kHz (télécommande TV). Châssis acheté, récepteur IR récupéré sur vieille TV.

Driver moteurs (L293D)

Composants : 2 borniers, L293D, 3 pins header, 9 pins header 90°, résistance 1k, LED rouge, fils, PCB.

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Assemblage châssis

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Connexion à l'Arduino UNO (robot)

Pin Arduino → Driver L293D
4 → 15
5 → 10
6 → 7
7 → 2
VIN → 8 (alimentation moteurs)
5V → 1, 9, 16 (enable)
GND → 4, 5, 12, 13
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Code robot (bibliothèque IRremote)

Décode signaux IR 38 kHz, pilote moteurs. Codes IR :

Sketch : « Robot_Code » (voir section Code).

Serveur principal (Mega + Leonardo + Photon)

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Boîtier

Deux plaques plexi 18×15 cm, poncées, assemblées par vis.

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Module relais 3 canaux (DIY)

Composants : 3× 2N2222, 3× diodes germanium, 3× 330Ω, 3× 1kΩ, 3× relais 5V, fils, pins header, PCB.

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Pin « Signal » → transistor → relais. Pins Arduino Mega : D37, D38, D39.

Installation dans le boîtier

Ruban double-face blanc sur plexi : propre et solide.

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Câblage du serveur

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Liaison avec le robot

LED IR sur D3 + bibliothèque IRremote → envoi codes vers robot. Tester avec caméra : lumière IR apparaît violette.

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Code serveur (Arduino Mega)

Sketch « Arduino_Mega_Server » (section Code). Utilise bibliothèques : VirtualWire, SoftwareSerial, Brain, LiquidCrystal, IRremote.

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Variables nommées d'après les initiales de ma famille (I, M, E, T, S).

Avant téléversement : déconnecter tout des pins RX/TX (Bluetooth, Leonardo, Photon).

Contrôleur souris (Arduino Leonardo)

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Sketch « Mouse Controller Code » : reçoit commandes série (u/d/l/r/c) → Mouse.move() / Mouse.click().

Serveur web (Particle Photon)

Data logger cloud : publie Attention, Méditation, Fonction active sur dashboard Particle. Utile pour détecter stress (attention instable) ou besoin de sommeil (méditation > 80).

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales
Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Code Photon : voir section Code. Téléversement via IDE web Particle Build.

Version simplifiée : Robot seulement

Pour qui veut uniquement un robot contrôlé par la pensée : Arduino Mini Pro (ou UNO) + LED IR sur D3 + casque hacké (pin T → RX Arduino). Sketch « RobotControllerHeadset.ino » :

#include <IRremote.h> #include <Brain.h>
IRsend irsend; Brain brain(Serial);
const int ledPin = 3; int medValue;
void setup() { pinMode(ledPin, OUTPUT); Serial.begin(57600); }
void loop() {
  if (brain.update()) { medValue = brain.readMeditation(); }
  if (brain.readSignalQuality() == 0) {
    if (medValue > 65) { irsend.sendNEC(0xFF10EF, 32); delay(40); } // gauche
    if (brain.readAttention() > 65) { irsend.sendNEC(0xFF18E7, 32); delay(40); } // avant
  }
}

Devenir un Jedi de l'IoT (Tests)

Contrôler un Robot par la Pensée : Projet Arduino Complet Ondes Cérébrales

Essayez ! Utilisez la Force de vos neurones. Déplacez le robot, contrôlez votre maison, tout par la pensée. Vous êtes maintenant un vrai Jedi de l'IoT !

L'appareil a de nombreuses fonctions et est très amusant. Mais ce n'est pas qu'un jouet : en alliant biologie et électronique, nous créons un dispositif qui peut aider les personnes en situation de handicap à retrouver des capacités naturelles.

Le robot se contrôle aisément, les relais aussi. Il faut juste apprendre à maîtriser son niveau d'attention pour la souris. Sur la photo, j'essaie de quitter une application par la pensée. La pratique améliore l'expérience.

Remerciements

J'espère que ce projet vous a plu. Vos commentaires sont les bienvenus. Une vidéo arrive bientôt sur ma chaîne YouTube.

Que la Force soit avec vous, toujours !

Codes sources

Bibliothèques requises

Schémas

Processus de fabrication

  1. Construire un réseau de capteurs sans fil abordable pour votre maison
  2. Les meilleurs accessoires pour exploiter pleinement le potentiel de votre Raspberry Pi
  3. Comment Appliquer Correctement le Bâton de Colle sur le Plateau de Votre Mark One
  4. Photographie Haute Vitesse : Capturez les Gouttes d'Eau avec Arduino Nano
  5. Robot Évitement d'Obstacles Piloté par Servomoteur : Construction avec Arduino et HC-SR04
  6. Créez un robot suiveur de ligne autonome avec Arduino UNO
  7. Utiliser une thermistance facilement : Guide étape par étape Arduino
  8. 4 signes critiques que votre moteur est sur le point de tomber en panne
  9. Moteurs DC vs AC : différences clés et choisir le bon pour votre application