Introduction: EMG Sensing Circuit

About: My hobbies include electronics, knitting, sewing and biology. I love bright colors. In my opinion, the best projects are wearable projects. I am an undergraduate student in Electrical Engineering.

An EMG, or electromyogram, is a measurement of the electricity produced by the movement in muscle tissue. Three electrodes will be used as sensors to provide input voltage to the circuit, and the output voltage will provide a reading of muscle activity. The stages of the circuit are as follows: an instrumentation amplifier, a band pass filter, and a non-inverting amplifier. The instrumentation amplifier provides high input impedance to match the high output impedance of skin. The band pass filter removes frequency content out of the bandwidth of the EMG. Finally, the non-inverting amplifier provides enough gain to make the small EMG signal large enough to be usable.

Note on safety: There is always inherent risk when hooking your body up to a voltage source. Be sure to use batteries, not a power supply, if you implement this circuit at home. I do not claim this circuit to be safe. Do your own research, and use this instructable at your own risk!

Materials:
breadboard
9V batteries (2)
LM348 op amp chips (2)
resistors
capacitors
wire
adhesive electrodes with snap cables (3)
soldering iron (helpful, but not required)

Step 1: Instrumentation Amplifier

The instrumentation amplifier is a circuit with high input impedance which amplifies the difference between two input signals. Because the skin has high output impedance, it's voltage signal can only be measured by a circuit that has high input impedance. This phenomenon can easily understood by thinking of the skin impedance and circuit impedance as resistors in a voltage divider. If both resistors are of equal value, only half of the input voltage will be measured across the circuit impedance. As the circuit impedance is increased above the skin impedance, more voltage will be applied across the circuit. We want to maximize the voltage going into the circuit. Furthermore, the EMG is the difference of the voltage signals at the ends of a muscle, so a differential amplifier is required for the first stage.

For the sake of this project, my first stage provided a gain of 10 V/V. Resistor values should be chosen based on your desired gain. I implemented all op amps using the LM348. Equations for the instrumentation amplifier can be found at AllAboutCircuits: https://www.allaboutcircuits.com/textbook/semicond...

Step 2: Band Pass Filter

The majority of the EMG signal is between 5-450Hz, so I chose my cutoff frequencies for this range. My band pass filter was a Salley-Key low pass filter followed by a Sallen-Key high pass filter. Both were second-order, meaning that they each use two reactive components (capacitors) and have two poles. Again, op amps were implemented with the LM348.

More information and equations to choose resistor values can be found at ElectronicsTutorials: https://www.electronics-tutorials.ws/filter/second...

Step 3: Non-inverting Amplifier

The final stage is meant to increase the output signal to be read on an oscilloscope. Depending on how you intend to use your EMG signal, what muscle groups you intend to measure from, and the quality of your electrodes, you will require a different output voltage, and therefore, a different gain. I implemented a gain of 20 V/V and could easily read the EMG of a bicep on an oscilloscope. I would recommend this as the minimum gain, more amplification may be necessary.

More information about the non-inverting amplifier and how to choose proper resistor values can be found at ElectronicsTutorials: https://www.electronics-tutorials.ws/opamp/opamp_3...

Step 4: Powering the Circuit

DC power for this circuit is provided using two 9V batteries. The LM348 chip is "rail-to-rail" meaning that it requires both a negative and positive rail. We can implement this by connecting the batteries in series and treating the wire connection between them as ground. This will cause the potential different across one battery to be +9V and the potential difference across the other to be -9V.

Step 5: Connecting Your Electrodes

The EMG circuit requires three electrodes: positive input, negative input, and ground. The placement of the electrodes will vary based on the muscle that you intend to measure. For the bicep, the elbow is a suitable placement for ground. The positive and negative electrodes should be placed on the upper arm as shown in the figure. In my experience, the signal was stronger when electrodes were placed closer to the center of the body (medially) when the palm is facing upward.

Snap electrode wires are used to feed the electrode input to the circuit. Because these electrode connection wires are not usually made to interface with a breadboard, I stripped the end connections and soldered on breadboard pins. The ground electrode should be fed to the ground of your circuit (at the series connection between the batteries), and the positive and negative electrodes are fed to the inputs of the instrumentation amplifier.

Image source: www.ece.utah.edu/~ece1270/ECE1270_Lab1bU11.pdf

Step 6: Next Steps for This Project

I began, but did not finish, feeding the output of this circuit into a computer. This would allow the data to be digitally sampled, processed, and used any which way that you could possibly imagine. Python has a library called PyAudio which can access input to the computer's sound card via audio jack. Depending on your computer, you may need an external sound card to get this library working. I was able to successfully sample audio output from my cell phone. Next, I will attempt to sample the EMG signal from the circuit.

When I get the signal digitally sampled, I would love to add a 60Hz digital notch filter. It would also be fun to create some sort of game to go along with this EMG project (bicep controlled Flappy Bird has been suggested to me twice so far). However, a game would require active processing, not just creating a recording. I will need to do more research to find out the best way to implement this in Python.

Another future direction for this project is to create an EEG, a brainwave sensing system, using similar circuit stages. This was my original idea for the project, but I ended up building an EMG instead because it required fewer gain stages and the electrode placement was less invasive.

Lastly, I would like to design and order a PCB of my EMG circuit to eliminate loose wire connections and noise within the breadboard.

Step 7: Resources That I Found Helpful