Jimmy LuZhenyu LINAmir ModanJin Chul RhimPhilip Liang
Published © MIT

Real-time Bionic Arm Control Via CNN-based EMG Recognition

On-device EMG Pattern Recognition for Real-Time Bionic Arm Control by Deep Neural Network

IntermediateFull instructions provided2,562

Things used in this project

Hardware components

Spresense boards (main & extension)
Sony Spresense boards (main & extension)
This board is responsible for controlling the robotic arm, running model inference, and receiving EMG data from ESP32 Devkit v1.
×1
Espressif ESP32 Devkit v1
This board is responsible for Bluetooth connection with Myo Armband, and transmit EMG data collected from Myo Armband to the Sony Spresense via. UART Serial communication.
×1
3D Printed Bionic Arm
This arm was 3D-printed based on the open-sourced HACKberry project robotic arm. (https://www.designboom.com/technology/exii-hackberry-05-29-2015/)
×1
EMAX ES08MA II 12g Mini Metal Gear Analog Servo for RC Model&Robot PWM servo
2 of these Servo were used to control the Thumb, Middle, Ring, and Little finger.
×1
Myo Gesture Control Armband
Myo Gesture Control Armband
This device collects EMG signals from our skin.
×1
analog servo
This servo controls the Index finger.
×1

Software apps and online services

Arduino IDE
Arduino IDE
Code for ESP32 and Sony Spresense were written in Arduino IDE.

Story

Read more

Schematics

System Diagram

A complete workflow of our EMG-based bionic arm control system.

Code

Arduino code to flash ESP32 and Sony Spresense

There're 2 folders called ESP32 and Spresense. Flash ESP32 board with ESP32.ino inside ESP32 folder. Flash Sony Spresense board with Spresense.ino inside Spresense folder. (For more instructions check out readme.md)

Credits

Jimmy Lu

Jimmy Lu

1 project • 2 followers
Zhenyu LIN

Zhenyu LIN

0 projects • 1 follower
Amir Modan

Amir Modan

0 projects • 1 follower
Jin Chul Rhim

Jin Chul Rhim

0 projects • 1 follower
Philip Liang

Philip Liang

0 projects • 0 followers

Comments