DIY ECG + Arduino + LabView
Intro: DIY ECG + Arduino + LabView
Hello everyone! this is my very first project that i wish to share with you... (it's not the best one, but the results were really amazing!) before we begin, i recommend you to have some basic skills in analog circuits and LabView, or join someone who already know both things.
The analog stage consists only of Opamp substages like filters or amplifiers, and the Digital one consists in a simple analog read operation in LabView using an Arduino UNO board with a basic GUI showing the heart frequency and the signal coming out from the electrodes.
If you're ready to go, let's get started!
STEP 1: Making the Electrode Wires
We need 3m of RCA cable, i recommend this cable because it's hehaviour is similar to a coaxial cable due to the outer conductors, they give more stability to the signal coming out from the electrodes. We're going to use only the inner conductors.
Weld 3 size 3 snap buttons to each inner conductor. Then weld the other ends to a 3 channel audio jack.
Remember to isolate every bare wires.
The electrodes that i used are shown in the picture. The're exclusively for ECG/EMG
STEP 2: First Analog Stage (Instrumental Amplifier)
1.- in the schematic, E1 and E2 are the electrodes (both are connected to the chest, the third one is connected to GND and it is usually placed onto the heel). The opamps that i used are TL081, which i noticed, were more stable than 741.
You can see the resulting signal in the scope
STEP 3: Second Analog Stage (60 Hz Notch Filter)
The notch filter is very important in the circuit, because it cleans up the frequency coming out from the AC voltage source.
STEP 4: 3rd Analog Stage (low Pass Filter)
Add another filter in case of lower frequencies are detected like the movement of the electrodes
STEP 5: 4th Analog Stage (inverting Summing Amplifier)
This stage is very usefull because i detected that small dc components (but greater than the electrode signals) are altering the output signal of the instrumental amplifier, so we need an offset stage to compensate it.
STEP 6: 5th Analog Stage (Inverting Amplifier)
Finally, the last stage of the ECG, the inverting amplifier will magnify enormously the small signal of the last stage, making it easier to see.
STEP 7: Breadboard/pcb Design
Sadly i didn't have enough time to make a fancy pcb design. i took out the components of the breadboard and placed it just like that onto a perforated breadboard-like plate. The circuit works with a separated dc voltage source (+-9V)
Connect the output signal of the ECG to the A0 Arduino pin. Connect the adruino GND to the circuit's GND.
Try to drill holes in the box for the opamp voltage sources, the audio jack, the pot and the usb cable.
STEP 8: LabView Stage
Try to copy the following LV block diagram (for Arduino UNO i used LYNX to communicate the board with my laptop)
The final result is surprisingly great!
You can download the VI here =)
33 Comments
ikramE 12 months ago
Did anyone know how to visualize 3 leads of ecg, I have a project about ecg but I need to see the 3 leads DI,DII and DIII in the labview interface !
cahilcuhela 2 years ago
PaulG367 5 years ago
the_3d6 4 years ago
BrunoV18 5 years ago
When i was working in the notch filter phase, the circuit (that i found googling around) gave me the most minimal output voltage (compared to other stop-band circuits found) when giving it a 60 hz signal from the function generator.
In an Improved version of the circuit, i put another notch filter at the output of the EKG and i replaced the offset stage by a PID stage that heped me to always get the heart signal.
carloszoom3000 5 years ago
La fuente para todos los LM741 es de +-12 para +Vcc y -Vcc.
Debe ser una fuente simétrica o puedo tener una sola fuente de 12 e invertir la polaridad?
Te agradecería el pdf del proyecto.
carlos.villalobosh@aol.com
Saludos,
PaulG367 5 years ago
Wouldnt it be much easier to use a single Instr. Amplifier?
Dogukan Kaygusuz 5 years ago
Thank you :)
NataliaJ13 5 years ago
hola, tengo una pregunta, cuando corro tu programa ecg.vi en labviem, me sale esto NI Labview myrio Module support for labviem 2016 is missing. si puedo conectar el arduino y funciona???. agradezco me soluciones esta inquietud mi correo nataliajimenezordonez@gmail.com, si me podrias enviar el archivo PDF, te lo agradeceria
ImenB4 5 years ago
hello !
please help me i am using a usb/serial in order to communicate with my laptob and i want to know if it requires a code on the arduino board and how did u connect the two dc voltage source to the circuit ?
jamesnroses 6 years ago
Genial tu proyecto, me gustaría saber si me puedes enviar el diagrama del circuito completo... Te lo agradecería. jamesnroses@gmail.com
PacoC22 6 years ago
Hola disculpa, tengo los electrodos y unos cables para conectar a cada uno, cómo es que se conectan a la primera etapa que corresponde al amplificador de instrumentación? Agradezco tu respuesta
PacoC22 6 years ago
Además, en qué parte se tienen que conectar los electrodos para obtener una señal óptima?
BeatrízV8 7 years ago
Tenía una consulta, en la parte del filtro notch, los capacitores son de 10 micro o 10 nano? Es que no logro diferenciar muy bien, muchas gracias de nuevo:)!
BrunoV18 7 years ago
10n
BeatrízV8 7 years ago
Realmente me ha gustado tu proyecto, cómo podría hacer la simulación en algún programa como proteus? Te agradecería mucho tu colaboración, por cualquier cosa mi correo es trillalta@gmail.com
BrunoV18 7 years ago
Hola Beatriz
Muchas gracias por tu comentario =D.
Durante el desarrollo del proyecto, en un principio pensaba hacer una simulación del circuito con el programa que uso habitualmente (Multisim). Pero recuerda que la señal del corazón es muy particular y no es posible obtener una "fuente de ecg" en el programa.
Estuve revisando foros... y por ahí encontré una simulación de un ecg (para Multisim) simbolizado como una fuente de voltaje, la cual puedes procesarla como fuera, ya sea amplificarla, filtrarla o atenuarla.
Pero te recuerdo que una señal analógica viene con ruido, así que probablemente los resultados que te de la simulación podrían ser diferentes a los reales en cuanto al procesado de la señal.
Te recomiendo que implementes el circuito paso a paso, por eso los puse por etapas. Una vez tengas el amplificador instrumental, pasas al filtrado, etc...
BeatrízV8 7 years ago
Te agradezco muchísimo! Ahora por la tarde iré a comprar los elementos para montarlos y hacer pruebas, espero poder contar con tu asesoramiento más adelante y de nuevo te agradezco:), seguí así.
Saludos!
eyican 7 years ago
hi, can I use this labview interface for EMG? Sorry,I am asking like this question because I am not good at labview:(
BrunoV18 7 years ago
Sure! this LV interface is just a common signal visualizer supporting voltages coming out from the Arduino UNO (0- 5V), you can visualize whatever you wish with the LabView file =)