Controlling Prosthetic Hand (cardboard Version) Using EMG Sensor
by Upside Down Labs in Circuits > Sensors
9025 Views, 80 Favorites, 0 Comments
Controlling Prosthetic Hand (cardboard Version) Using EMG Sensor
In this tutorial, we are going to show you how to create a simple EMG system at your home so that you can control a prosthetic hand (cardboard version) using Muscle BioAmp Shield (Arduino Uno shield for EMG). With this experiment, you will learn the basics of how the real-world EMG-controlled prosthetic hand works.
Before moving forward, let's understand a brief about Electromyography.
Note: This experiment is inspired by Backyard Brains' cyborg hand experiment https://backyardbrains.com/experiments/DIYNeuroprosthetic
What is Electromyography (EMG)?
Electromyography is a technique that measures muscle response or electrical activity in response to a nerve’s stimulation of the muscle. We can use this electrical activity to detect neuromuscular abnormalities or create solutions for some crazy real-world problems like making artificial limb for amputees.
About Muscle BioAmp Shield:
Muscle BioAmp Shield is an all in one Arduino Uno Shield for Electromyography (EMG). It is perfect for beginners as it can be stacked on top of Arduino Uno to record, visualize and listen to the muscle signals to make amazing Human Computer Interface (HCI) projects. It also comes with various plug and play options so you can connect hundreds of devices like OLED screens, character displays, accelerometers, servo claw to name just a few using the I2C interface.
This is one of the product in the entire BioAmp series of sensors from Upside Down Labs which is designed in a way to teach you the basics of the instrumentation amplifier, active bandpass filtering, soldering, programming, neuroscience, Human Computer Interface (HCI), Brain Computer Interface (BCI), etc.
Supplies
HARDWARE:
1 x Muscle BioAmp Shield Kit (Upside Down Labs Store | Amazon India | Tindie Store | DigiKey Store)
- The Kit includes:
- Muscle BioAmp Shield PCB x 1
- Components
- Ceramic capacitors.
- Electrolytic capacitors
- Resistors
- Resistors
- LEDs
- Audio Jack
- Connectors
- Tactical Switch
- Optocoupler
- Quad OpAmp, etc.
- BioAmp Cable (100cm) x 1
- Gel Electrodes x 24
- Muscle BioAmp Band x 1
- BioAmp AUX Cable x 1
- 9V Snap Cable x 1
- STEMMA Cables x 6
1 x Arduino uno with USB cable (Type A to Type B)
1 x Servo Motor (SG90)
Soldering iron and other equipments to solder the components on the PCB (if you get the DIY version of Muscle BioAmp Shield)
SKIN PREPARATION KIT & ELECTRODE GEL:
1 x NuPrep skin preparation gel (Upside Down Labs Store | Tindie Store)
1 x Wet wipe
1 x Electrode Gel (only if using Muscle BioAmp Band) (Upside Down Labs Store | Tindie Store)
SOFTWARE:
Arduino IDE (Legacy version)
OTHERS:
Cardboard
Scissors
Thread (Preferably a thick one)
Superglue or glue gun
5 x Straws
1 x Pencil
Make a Prosthetic Hand Using Cardboard
Cut out a hand from a piece of cardboard as shown in the image in supplies section above.
Then notice the joints on your fingers and thumb. You will have to replicate the same on the cardboard hand as well. So fold the cardboard in a way to make 3 joints on fingers and 2 joints on a thumb in order to make a perfect hand for this experiment.
Assembly of Parts on Prosthetic Hand
Now take some straws and cut 18pcs of 1cm each. Then paste them on the cardboard hand (using a superglue, glue gun or whatever works best for you) as shown above.
Cut 5 pcs of a thread (preferably a thick thread) of length similar to the length of the longest finger of the cardboard hand to the wrist. Now paste one end of the thread on top of the fingers and then insert them in the holes of the straw as shown above.
Setting Up the Servo Motor
Paste the servo motor on the lower right corner.
Now paste a pencil on top of the servo motor and tie all 5 thread to the pencil via a small thread as shown above.
Assembly of Muscle BioAmp Shield
If you got the preassembled version of Muscle BioAmp Shield then you can skip this step.
But if you have DIY version of Muscle BioAmp Shield then first of all, you have to assemble all the passive components on the Muscle BioAmp Shield PCB. For a step-by-step guide of the assembly, you can follow the video above or take a look at this interactive BOM.
Stacking on Arduino Uno
Stack the Muscle BioAmp Shield on top of Arduino Uno properly.
Connect Servo Motor
Connect the servo motor to Muscle BioAmp Shield.
Skin Preparation
Apply Nuprep Skin Preparation Gel on the skin surface where electrodes would be placed to remove dead skin cells and clean the skin from dirt. After rubbing the skin surface thoroughly, clean it with a wet wipe or an alcohol swab.
About Nuprep Gel:
Nuprep skin preparation gel is a mildly abrasive, highly conductive gel that should be applied before placing the electrodes on the skin to improve measurements. When applied gently, it strips away the top layer of skin and moistens the underlying skin layer which reduces the skin impedance with minimal skin irritation and discomfort.
Connecting Electrode Cable
Connect the BioAmp Cable to Muscle BioAmp Shield as shown above.
Electrode Placements
We have 2 options to measure the EMG signals, either using the gel electrodes or using dry electrode based EMG band. You can try both of them one by one.
Measuring EMG using Gel electrodes:
- Connect the BioAmp Cable to gel electrodes,
- Peel the plastic backing from electrodes
- Place the IN+ and IN- cables on the arm near the ulnar nerve & REF (reference) at the back of your hand.
Measuring EMG using Muscle BioAmp Band, a dry electrode based EMG band:
- Connect the BioAmp Cable to Muscle BioAmp Band in a way such that IN+ and IN- are placed on the arm near the ulnar nerve & REF (reference) on the far side of the band.
- Now put a small drop of electrode gel between the skin and metallic part of BioAmp Cable to get the best results.
Download Arduino IDE V1.8.19 (Legacy IDE)
Download the Arduino IDE from the link given below:
https://www.arduino.cc/en/software
(We have used Arduino IDE version 1.8.19 for this project)
After downloading, connect the Arduino Uno to your laptop using the USB Cable (Type A to Type B)
Note: Make sure your laptop is not connected to a charger and sit 5m away from any AC appliances for best signal acquisition.
Coding Time
Copy paste the Arduino Sketch given below in Arduino IDE.
Claw Controller: https://github.com/upsidedownlabs/Muscle-BioAmp-Arduino-Firmware/blob/main/4_ClawController/4_ClawController.ino
Open Arduino IDE, click on TOOLS from the menu bar, select board option then select Arduino UNO. In the same menu, select the COM port on which your Arduino Uno is connected. To find out the right COM port, disconnect your board and reopen the menu. The entry that disappears should be the right COM port.
Now upload the code. You should get a message of "Done Uploading" on the lower left corner.
Connecting Power Bank
Now unplug the Arduino Uno from the laptop and connect it to the power bank in order to make the complete system portable.
Control Prosthetic Hand
Flex your arm to move the servo motor. This is how a real world prosthetic hand works.
Congratulations on making this project, seems like you are are all set to explore on your own and make amazing HCI projects at the comfort zone of your home. What are you gonna make next?
Let us know your feedback in the comments and feel free to ask any questions.
You can also mail us at support@upsidedownlabs.tech for any kind of support while you are making this project.
References
This experiment is inspired by Backyard Brains' cyborg hand experiment https://backyardbrains.com/experiments/DIYNeuroprosthetic