Step 6: SIGNAL CONDITIONING - Smoothing + Amplification

In this last phase of circuit assembly, we will be using an active low-pass filter to filter out the humps of our signal to produce a smooth signal for our microcontroller.

You will need the last TL072 chip (chip D), the two 80.8 kOhm resistors, the 100 kOhm trimmer, the 1 kOhm resistor and the 1.0 uF ceramic disc capacitor.

First, plug in chip D and connect +9V to pin 8, -9V to pin 4, and GND to pins 3 & 5. (image #1).

Now, grab one of the 80.6 kOhm resistors and connect one end to chip C’s pin 7. Connect the other end to chip D’s pin 6. Next grab the other 80.6 kOhm resistor use it to connect chip D’s pin 6 and 7. Do the same thing for the 1.0 uF capacitor. (image #2)

That’s the end of the filter circuit. However, since this is an active filter, there is a side effect of inverting the signal. We will need to invert the signal one more time (and have the ability to amplify it more if desired) using another inverting amplifier circuit with a trimmer configured as a variable resistor.

Use a jumper wire, connected to chip D’s pin 7, and the 1 kOhm resistor to bridge the board’s center gap. Use another jumper wire and connect the 1 kOhm resistor to chip D’s pin 2. Next, place the trimmer one row over with the pins laid out and a jumper wire connecting two of the pins as pictured. Finally, place the last two jumper wires as indicated. (image #3)

By using a screw driver and turning the trimmer, you will be able to adjust the gain of your signal to account for different signal strengths from different muscle groups. Start out with it set pretty low and go up from there (~20 kOhms).

<p>How much do the meterials fot this cost in total? Is it cheaper than the pre-build myoware muscle sensors?</p>
Well it's not really apples to apples. The MyoWare sensor uses much more advanced circuitry, has built in protection against burning out the ICs, can be powered directly by an Arduino, and the embedded snaps eliminate cables. Electrode cables alone for this tutorial will cost you $5-15 depending on where you order it from. The electrical components cost about $20 from Digikey. However, it would cost you way more to build your own MyoWare than it is to purchase it. That's one reason we started selling the fully assembled versions instead of the kits with just the components packaged together... we were able to get the price of the fully assembled sensors well below the cost of the the component kits.&nbsp;<br> <br> So my two cents is... <ul> <li> <strong>If you want to explore how an EMG circuit works and intend on tweaking/playing around with the internal circuitry</strong>, then you would probably want to build your own using this tutorial. <li> <strong>If you just want a reliable sensor that requires little to no setup and you are more interested in its applications than the circuitry itself,</strong> you're much better off purchasing the MyoWare. </ul>
<p>what programs and code for arduino you used for the data acquisition and the visual representation of the emg signals?, thanks for your time and for your project (:</p>
Hi The sample code can be found on our website: http://www.advancertechnologies.com/p/muscle-sensor-v3.html
<p>Hello</p><p>It's amazing what you done </p><p>It's open the way to alot of projects to be established</p><p>Thanks alot for you and your team</p><p>By the way</p><p>Please, I want the circuit if I used the ad620 instead of ina106</p><p>Cause I haven't any about electronics and I can't find ina106 in my country</p><p>Thanks alot again .</p>
<p>Hi, I would encourage you to try to figure this out on your own first. It shouldn't be too difficult to puzzle out if you read through the AD620 datasheet.</p>
<p>kindly suggest alternate of <a href="http://focus.ti.com/docs/prod/folders/print/ina106.html" rel="nofollow">INA106 IC Chip.???. can i used op amp 741? will it work<br></a></p>
<p>is micro controller is necessary? </p>
The output signal is an analog signal so you need some method to convert it to a digital signal unless you don't plan on interfacing with anything digital (computer, microcontroller, etc). A microcontroller, ADC, DAQ are just a few ways to convert an analog signal to a digital signal.
I haven't study microcontroller, I just want to show my emg signal on oscilloscope directly through circuit... should this circuit works for this
Yes, an oscilloscope will work with this circuit.
<p>hey, nice work. I just wanna know that I am using LM358 instead of TL072 and output i am getting is any random number even if I don't do anything. So i should use TL072 only for this or the problem is something else.</p>
<p>Most general op amps can be used instead of the TL072. Your issues probably lie elsewhere.</p>
Yup I got that as I tried it with TL072 but still I am getting any random number as my output! Thank you for the reply :)
<p>Sir,</p><p>Is the circuit going to work if I change the cut off frequencies of the HPF and the LPF to 20Hz and 150Hz respectively? I need the circuit to pick up signals only for muscle activity in fingers, which the doctors say, lies in the above specified range.</p>
The circuit works for fingers as is. If you want to add more filtering, I would recommend adding it prior to the rectification phase. I would not recommend modifying the LPF frequency as it is acting as an integration circuit not a LPF.
<p>Hi <a href="http://www.instructables.com/member/Gundanium" rel="nofollow">Gundanium</a> , the connection of pins are different ( not same ) in bread board and circuit diagram , which one is true ? </p><p>can i use INA128 in place of INA106 ? </p>
Which pins are you referring to?
please tell me , which one is correct ( Step 11: Connecting to a Microcontroller ) OR ( Step 13: EMG Circuit Schematic )<br><br>can i connect my circuit according to Step 11 ?
<p>I don't understand your question. Step 13 and 11 are the same just represented in a different format.</p>
<p> hi, can you please mail layout of the board (with Proteus), to fadwa.lasswed@gmail.com</p>
<p>Sorry but we don't publish our PCB layouts.</p>
<p>Can you please mail PCB layout of the board, to rovardeakr@gmail.com.</p><p>What is special about EMG electrodes and cables?I find them very costly.</p><p>Is there any cheaper way to replace these electrodes and cables.</p><p>Where can I get AD8226 IC from? </p><p>Thanks alot. Excellent Tutorial. </p>
<p>Sorry but we don't publish our PCB layouts.</p>
<p>I will be needing more than 3 electrodes in my system. So naturally I will be needing more than 1 INA106. But it is exceeding my budget. So i wanted to know if there's a cheaper alternative to the INA106 IC?</p>
<p>AD8236 is not only cheaper but better for EMG applications.</p>
<p>Instead of using wires, is it possible to make this system wireless, especially the microcontroller? And how do i do it?</p>
You can't eliminate the wires going from the electrodes to the circuit but it should be possible to eliminate wires going from the circuit to the microcontroller. In simplest terms, you'll need to send the output through a ADC converter and then a Bluetooth or Wifi transmitter.
<p>Ok! Can you tell me how exactly to make the connection from the circuit to the controller wireless? Could you please provide me the instructions to do it?</p>
<p>You could use a <a href="https://www.adafruit.com/products/2471">Simblee</a> or something <a href="https://www.adafruit.com/products/2471">similar</a>. </p>
<p>can we have PCB schematic i would lie to print it also can i use ina 129 instead ina 106.</p><p>thanks </p>
<p>The schematic is on Step 13. INA129 looks like it would be suitable but since I have not used it, I cannot confirm this.</p>
<p>Hi excuse me, i only have the Ad620 instead of the INA i know i can change the resistors and make the G to the same as you are using. my question is can i use the tl074 intead the three of your tl072? thank you for you advise :)</p>
<p>Yes you can.</p>
<p>What type of electrodes work for this? Are there any good reusable ones that can work with it? Thanks</p>
<p>also are there any reusable electrodes that do not require moisture?</p>
<p>We recommend disposable adhesive dry gel electrodes for a couple reasons. </p><p>1) Adhesiveness helps eliminate electrode movement artifacts from your output signal. If you went with a dry contact reusable electrode, you have to pay particular attention to how well you secure it to the skin otherwise every time you move, you'll see large magnitude bumps in your output signal that aren't attributed to muscle activation.</p><p>2) Even with dry contact electrodes, it is recommended to do some amount of skin prep. Dry skin has a significantly high impedance/resistance than moist/wet skin which allows you to measure signals more cleanly with less attenuation.</p><p>3) For dry contact electrodes with no skin prep (aka moisture), you'll need an instrumentation amplifier with an input impedance over 10 GOhms. The <a href="http://www.advancertechnologies.com/p/myoware.html">INA106</a> used here only has an input impedance of 110 kOhms. We use an <a href="http://www.advancertechnologies.com/p/myoware.html">AD8236</a> for our <a href="http://www.advancertechnologies.com/p/myoware.html">MyoWare</a> sensor which has an impedance of 110 GOhm and should be suitable for dry contact no prep applications. Our <a href="http://www.advancertechnologies.com/p/myoware.html">Muscle Sensor v3</a> used an <a href="http://www.advancertechnologies.com/p/myoware.html">AD8226</a> which has an input impedance of 0.4 GOhm which like the INA106 isn't really suitable for those applications.</p>
<p>Hi, </p><p>when the cutoff frequency for high pass and low pass filter was calculated i got values of 106.1 and 1.97 respectively , i didnt understand as to why put a high pass filter first of cutoff frequency 106.1 which allows frequency above 106Hz and then employ a low pass filter with cut of frequency 1.97 HZ which allows frequency only below that!!</p><p>what is the whole point if u filter out it with high pass filter initially?</p><p>and also isn't the range for EMG signal 20-150Hz, please explain </p>
<p>Hi SushmaV!</p><p>This is a very old schematic (published in 2011). For a more recent and advanced one, I would suggest looking at the schematic used for our <a href="https://github.com/AdvancerTechnologies/MuscleSensorV3/blob/master/Documents/Muscle%20Sensor%20v3%20Schematic.pdf">Muscle Sensor v3.</a> Our new MyoWare sensor is even more advanced but we haven't published the schematic publicly yet (patent pending). </p><p>We set the HPF in this design to 106 because we found that was a good frequency for the INA106 for two reasons, 1) it removed the DC offset that can occur due to electrode polarization, and 2) it helped remove any latent 60Hz power line &quot;hum&quot; noise that the INA106 failed to remove. However, this does cut out a good deal of the EMG frequency range but since the rectification and integration phases that come next will completely remove frequency information this isn't as much as a drawback as it might seem on paper. We no longer use this in our MyoWare sensor.</p><p>As for the LPF, it actually isn't a LPF because the signal has been fully rectified by this point. It is actually an integration circuit with a cut off frequency around 2Hz. This phase smooths the rectified signal and produced the EMG &quot;envelope&quot;. We set it to 2Hz because we found this produced the best results w.r.t. signal smoothing and in most applications you won't get muscle activation faster than that (2Hz = 2 full muscle flex/relax cycles per second)</p>
<p>Hi. Can I use MAX4199 instead of INA106? and what adjustments should I make?</p><p>Also with TL072 can I use MAX44263. I can only use MAX products.</p><p>Please. Thanks</p>
Hi <br>I didn't find INA106 So cqn I use AD620 ?
Yes but make sure you set the gain to be equivalent to this circuit.
<p>Many thanks :)</p>
<p>Can we use homemade electrodes from nickel buttons to provide the input for sensor</p>
<p>Hi I'm using your circuit as part of a control mechanism for an exoskeleton. I have made the circuit however I'm getting errors when running the codes for processing and no readings on the graph specifically with the Line 60 in the bar graph processing code: println(Serial.list));. The error is &quot;Type strin[] of the last argument to method println(object...) doesn't exactly match the vararge parameter type. Cast to object[] to confirm the non vararge invocations or pass individual arguments of type object for vararge invocation&quot;</p>
<p>Can we use this circuit for ECG purpose of brain and heart ???</p><p>Please reply me fast</p><p>Thanks</p>
<p>I recently made this circuit on a breadboard. But the circuit does not show any output on the Arduino serial plotter when the given Arduino code is used. Can someone please help me out with this? I need to know what could have gone wrong?</p>
<p>Can we connect more than 3 EMG electrodes in this same setup?</p>

About This Instructable


621 favorites


Bio: Brian Kaminski Owner - Advancer Technologies Brian graduated from North Carolina State University with a BS in Biomedical Engineering with a concentration in Biomechanics in May ... More »
More by Gundanium: Bionic Wolverine Claws Bionic Iron Man Glove Bionic Iron Man Armor (w/ Sound Effects)
Add instructable to: