KinetiX è un progetto che prevede la realizzazione di un braccio meccanico controllato a distanza tramite un accelerometro. L'obiettivo è quello di creare un sistema che permetta di controllare il braccio attraverso il rilevamento dei movimenti del corpo al fine di rendere l'utilizzo intuitivo e naturale.
Il progetto è composto da due parti:
- Il guanto che ospita l'accelerometro MCU-6050 utilizzato per il riconoscimento dei movimenti e un Node MCU
- Il braccio meccanico composto da 3 motori Servo controllati da un Arduino Uno e un Node MCU
Questi due moduli comunicano tra di loro in modo wireless attraverso il protocollo di Mesh Networking.
- Node MCU 1 (ESP-12E Module) [x2]
- ITC/MPU6050 Accelerometer [x1]
- Arduino Uno [x1]
- Servo-motore [x3]
- Materiali per costruire il braccio
- Jumper wires
Il Client in questo schema corrisponde all'accelerometro e al relativo Node MCU.
Per compilare e caricare il codice del Client (ESP_client/ESP_client.ino
) è necessario installare alcune librerie e Boards nell'IDE di Arduino:
- Installare pacchetto per compatibilità con ESP8266
- Installare la libreria
Painless Mesh
dal gestore delle librerie interno all'IDE - Installare la libreria
Arduino_JSON
dal gestore delle librerie interno all'IDE - Installare la libreria
MPU6050
dal gestore delle librerie interno all'IDE
Sul Node MCU i nomi dei pin potrebbero cambiare leggermente rispetto a quelli riportati nell'immagine, in generale:
Node MCU Immagine | Node MCU Utilizzato |
---|---|
VCC | 3.3V |
GND | GND |
GPIO5 | D1 |
GPIO4 | D2 |
Il server corrisponde al Node MCU che riceve i dati dall'accelerometro.
Per compilare e caricare il codice del Client (ESP_server/ESP_server.ino
) è necessario installare alcune librerie e Boards nell'IDE di Arduino:
- Installare pacchetto per compatibilità con ESP8266
- Installare la libreria
Painless Mesh
dal gestore delle librerie interno all'IDE - Installare la libreria
Arduino_JSON
dal gestore delle librerie interno all'IDE