Sei sulla pagina 1di 23

ELETROMIOGRAFO Y

PROCESAMIENTO DE SEÑAL EN

TIEMPO REAL

Profesor:
 Hernan Villafuerte Barreto

Curso:

 Metodos numéricos

2016

INTRODUCCIÓN

En el presente trabajo se expone una pequeña práctica relacionada con la


Electromiografía (EMG), esta práctica consiste en registrar la actividad eléctrica producida por
los músculos esqueléticos, para desarrollar este proceso se debe contar con un aparato medico

1
llamado Electromiógrafo que consta de tres etapas fundamentales. La primera etapa consiste
en la adquisición y amplificación de la señal, la segunda es una etapa de filtrado de la señal,
es decir se aplicarán conceptos básicos de electrónica para poder implementar un sencillo
electro miógrafo y la tercera y última etapa consta de la digitalización y muestreo de la señal
para finalmente ser mostrada en pantalla.

PRESENTACIÓN DEL PROBLEMA:

El problema que se presenta es el costo elevado de estos instrumentos médicos, en muchos


casos de las aplicaciones de instrumentación medica se requiere la implementación de una
circuitería bastante robusta, por el hecho de que las mediciones tienen que ser exactas ya que
se está hablando de la salud y seguridad del paciente, sin embargo, el hecho de utilizar un
montaje eléctrico robusto (en cuanto a circuitería), este añade más ruido e inestabilidad (por
ejemplo, un cambio en la temperatura).

OBJETIVO DE TRABAJO:

 Acondicionar correctamente la señal de EMG para su digitalización.


 Filtrar la señal de EMG utilizando filtros digitales post acondicionamiento analógico.
 Contar con una salida visual de la respuesta del sistema en tiempo real.

PROPUESTA DE SOLUCIÓN

HIPÓTESIS:

2
Desarrollar una aplicación en hardware y software de “bajo costo” capaz de detectar la flexión
de los músculos de una persona, con un mínimo error usando sensores de EMG y técnicas de
procesamiento de señales en tiempo real.

El uso del software se ha convertido en una muy buena opción de solución, debido a que es
exacto ya que los integrados y de más elementos de un circuito poseen un margen de error y
sumando todos los errores, se tiene a la salida un error de medición considerable, no tiene
interferencias (como ruido, no le afecta la temperatura, no se daña, etc.), además brinda
herramientas que facilitan la implementación de los bloques (como factor principal los cálculos
matemáticos). Es decir, la utilización de software es la solución a muchos de los problemas que
se presentan en este tipo de aplicaciones.

MARCO TEORICO

ELECTROMIÓGRAFO:

3
La electromiografía, consiste en la medición de potenciales eléctricos creados por la contracción
de los músculos. Internamente, los músculos generan tensiones alrededor de 100mV cuando se
contraen. Las señales típicas EMG superficial (sEMG) para los músculos grandes, como el bíceps,
están alrededor de 2.1mV en amplitud, estas señales sEMG contienen frecuencias que van de 2
Hz hasta los 500 Hz o mayor en algunos casos. Un caso especial del EMG es el ECG
(electrocardiograma), a menudo referido como el EKG (electrokardiograma) debido a su origen
alemán, que es una medida EMG del corazón. Señales de ECG son muy fuertes generalmente
poseen 4.3mV en amplitud.

UNIDADES EMG Y COMPOSICIÓN:

 Unidad Motora (UM)

La unidad motora es un grupo de fibras musculares inervado por una sola neurona motora.
Realizar un simple movimiento requiere la intervención de muchas neuronas tanto sensoriales
como motoras, que trabajando en conjunto logran ejecutar la acción indicada; el
funcionamiento es el siguiente: se genera la orden en el cerebro en forma de un impulso
eléctrico; este impulso viaja a través de la espina dorsal y llega hasta las motoneuronas
responsables de inervar el músculo que realizará la acción estimulando las fibras musculares,
produciendo así la expansión o inhibición del músculo. Cabe mencionar que, para realizar un
movimiento complejo, digamos la extensión o flexión del brazo, intervienen muchas
motoneuronas, y no puede lograrse solo estimulando un solo músculo, el cual está ligado a más
de una UM.

 Fibras Musculares:

4
Son las fibras individuales de un músculo los cuales están inervados por las ramificaciones de la
motoneurona. Cuando se excitan, estas fibras producen una fuerza de contracción las cuales en
forma consecutiva genera la fuerza tetánica. Aquella fuerza que nos permite interactuar con el
medio que nos rodea. En la figura se puede observar estas fibras musculares las cuales
conforman el músculo completo.

 Sensores

Sensores no invasivos

El sensor no invasivo hace referencia de los sensores EMG que se ubica por encima de la piel,
más no ingresado a través de este órgano; permitiendo un estudio sin agujas que implica un
estricto uso.

Principalmente se utiliza para el estudio del comportamiento promedio de la actividad eléctrica


de un musculo o grupo de músculos, lo cual es muy utilizado para detectar fatiga muscular y
para monitoreo del rendimiento de deportistas.

 Perturbación de la señal captada del sensor sEMG

5
Los factores que influyen en la perturbación de la sEMG tiene dos clases, siendo estas causas
intrínsecas y extrínsecas, esta última puede ser manejable por el usuario y según la tecnología
usada puede ser atenuado o relativamente eliminado.

Estos factores extrínsecos son:

 La orientación de la fibra muscular


 Tendón
 Borde del músculo
 Configuración
 Los factores intrínsecos se clasifican en el tipo de perturbaciones existentes en una
SEMG
 El ruido fisiológico, es el que se producen por la superposición de otras señales
bioeléctricas que son perjudiciales dado que se encuentran dentro del mismas
frecuencias de trabajos.
 El ruido del ambiente es aquel que tiene la radiación de elementos externos, siendo el
más común ruido de inducción eléctrica de 50-60Hz.
 Ruido de línea base es aquel ruido que se produce por cambio electroquímicos producto
natural ante excitaciones del músculo y piel. Además, el ruido termal característico en
todo sistema electrónico.
 El ruido movimiento artefacto aquel producto del movimiento inducido fuerza al
momento del estudio.

 Amplificador instrumental INA

Los conjuntos de amplificadores operacionales están configurados con el objetivo de tener una
amplificación alta, con una impedancia alta en la entrada, impedancia baja en la salida, alto
índice de rechazo al modo común, ganancia lineal y bajo índice de offset y mínima corriente en
la entrada.

6
Figura Etapas de un amplificador instrumental basado en amplificadores operacionales y componentes
resistivos

Modelo Matemático

 Series de Fourier

Las señales unidimensionales periódicas más simples definidas sobre un continuo son las
sinusoides, 𝑠 (𝑡) 𝑎. 𝑐𝑜𝑠 (2𝑡) o 𝑠(𝑡)𝑎. 𝑠𝑖𝑛 (2𝑡), que se representan con una onda de
amplitud a y cuya frecuencia es .

Serie de Fourier:

Donde y se denominan coeficientes de Fourier de la serie de Fourier de la


función .

7
 Aproximación mediante Series de Fourier:

En (1) la función periódica f(t) se representa mediante infinitas señales sinusoidales de


frecuencias 0 y k/T, k=1, 2,3,.... con amplitudes ak y bk. Considerar una señal desde el punto de
vista de sus componentes frecuenciales ha sido un artilugio usado por físicos, ingenieros y
matemáticos para manipularlas. Por ejemplo, es posible limpiar el ruido de la grabación de una
conversación telefónica, lo que se usa para detectar nítidamente la voz de un secuestrador
pidiendo un rescate desde una cabina telefónica pública. Esta aplicación se basa en eliminar de
la señal aquellas componentes frecuenciales de menor presencia y reconstruir la señal sin ellas,
como se muestra en la figura.

 Señales discretas: Transformada rápida de Fourier.

Las señales que se obtienen midiendo cantidades a intervalos igualmente separados en el


tiempo (cada minuto, cada hora, cada día, …) producen un valor para cada medición y se llaman
señales discretas. Los valores del índice de precios o los datos atmosféricos obtenidos al medir
la presión, la temperatura o la humedad son algunos ejemplos.

Desde el punto de vista matemático son también funciones, pero ahora definidas sobre un
conjunto discreto {0,1,2,.....,N 1} , donde N es el número total de datos obtenidos.
Representaremos una señal discreta de la forma f [n],n 0,1,2,....,N 1, para distinguirla de una
señal continua.

De manera análoga a como se define la transformada de Fourier de una función continua, la


transformada de Fourier discreta (TFD) de la señal f es:

8
2𝜋
donde i es la unidad imaginaria y 𝑒𝑁 es la N-ésima raíz de la unidad. (Esta expresión se puede
escribir también en términos de una matriz DFT; cuando se escala de forma apropiada se
convierte en una matriz unitaria y Xk puede entonces ser interpretado como los coeficientes
de x en una base ortonormal.)

La transformada se denota a veces por el símbolo , igual que en:

El cálculo:

 Acondicionamiento de la señal sEMG

El acondicionamiento de la señal mioeléctrica está basado en dos principales puntos, pre-


amplificación, filtrado de frecuencias bajas, filtrado de ruido de ambiente (Notch) y filtrado de
frecuencias altas (filtro anti-aliasing). Eso limita en ancho de banda y limpia la señal de toda
perturbación externa. Sin embargo, el procesamiento postanálogo es conveniente tratarlo con
procesamiento digital dado que es flexible y no fijo como el análogo, además permite un ahorro
de coste y flexibilidad alta.

9
 Filtrado Analógico
 Filtro pasa bajo:

Según el diagrama figura, se muestra un circuito RC usado para el filtro de primer orden:

Circuito RC para el desarrollo del filtro pasa


bajo

Realizando la función de transferencia en términos de la Laplace, constante s, veremos el


comportamiento del pasa bajo en magnitud y fase.

1
𝑉𝑜𝑢𝑡 𝐶𝑠 1 1 𝑉𝑜𝑢𝑡 1
= = = → =
𝑉𝑖𝑛 1 1 + 𝑅𝐶𝑠 1 + 𝜏𝑠 𝑉𝑖𝑛 1 + 𝑗𝜔𝜏
𝑅+
𝐶𝑠

A partir de la ecuación, se deriva la magnitud y fase según figura

𝜔𝜏
𝜑 = −𝑡𝑎𝑛−1 ( )
1

Respuesta en función a la
frecuencia filtro pasa bajo.
Magnitud en la parte superior,
fase en la parte inferior.

 Filtro Notch gyrator:

10
El filtro Notch es importante para eliminar el ruido de inducción eléctrica por el cual es prioritario
tener un filtro de con selectividad alta y atenuación considerable para la frecuencia de corte,
para este caso 60Hz.

Siendo las ecuaciones que describen el inductor sintético basados para el diseño del filtro.

𝑅 = 𝑅8 + 𝑅7

𝐿 = 𝐶2 ∗ 𝑅8 ∗ 𝑅7

Por lo que la frecuencia de corte se define con la siguiente ecuación:

1
𝑓𝑁𝑂𝑇𝐶𝐻 =
2𝜋√𝐿𝐶

 Filtro pasa Alto:

El filtro pasa alto elimina las componentes de baja frecuencia, es también filtro DC, es decir
elimina el offset que está presente ante la salida de cualquier amplificador previo. El circuito se
muestra en la figura.

Circuito pasa alto compuesto en RC.

𝑣𝑖 . 𝑅
𝑉𝑜 =
𝑅 + 𝑍𝑐

𝑉𝑜 𝑅
=
𝑉𝑖 𝑅 + 1
𝑗𝜔𝐶

Descripción del Proyecto

11
El proyecto cuenta con software y hardware:

Filtrado Filtrado
Amplificacion Digitalizacion
De 1° Digital
De La Señal
Orden Butterworth
Electrodos Y
Adquisicion
De La Señal

HARDWARE SOFTWARE

 HARDWARE:
En la parte del hardware vamos a encontrar la placa impresa en la cual van a estar los
integrados INA128PA y el OPA4131, se analizarán sus etapas a continuación:

 ADQUISICIÓN DE LA SEÑAL EMG SUPERFICIAL (SEMG):


Para hacer mediciones de SEMG se requieren tres electrodos superficiales dos electrodos
para captar la diferencia de potencial en el músculo y un electrodo de tierra, el cual sirve
como punto de referencia para las mediciones, estas deben estar clásicamente en el rango
de frecuencias de 2 a 500 Hz. Los electrodos captan los potenciales de acción de acción de
las unidades motoras, el cual es amplificado para poder ser procesado y mostrado en la
pantalla.
La SEMG tiene la peculiaridad de que los registros obtenidos mediante ella muestran
actividad poblacional de las unidades motoras, esto es debido a que los electrodos, al estar
en la superficie del musculo, no son capaces de captar la señal de una sola unidad motora,
sino que por el contrario, captan la información de varias UMs .

12
 Amplificación

La amplificación se realizará por medio del amplificador instrumental INA128, el cual


cuenta con un circuito interno con una configuración hecha para una amplificación de
la señal con un máximo rechazo al modo común, considerando el ruido como fuente
común en ambos electrodos. Entre otras características necesarias es la mínima
componente DC en la salida del amplificador dado que así no perjudica las etapas
posteriores a estas y así no obtener una saturación del sistema. Sin embargo, es
conveniente tener una pre-amplificación con ganancia baja para que evitar incrementar
la magnitud de ruido.

Circuito interno del INA128

13
𝑉𝑜 = 𝐺 ∗ [𝑉1 + 𝑛 − ( 𝑉2 + 𝑛) ]

Dónde:

50kΩ
𝐺=1+
RG

Para este caso sea 𝑅𝐺 igual a 1KΩ, la ganancia real es de 51 V/V, teniendo como CMRR120
dB y una respuesta en frecuencia dentro de los 200KHz.

 Filtrado de 1° Orden

Filtro Pasa Filtro Pasa


Filtro Notch
Bajo 1° Alto 1°
Gyrator
Orden Orden

Filtro pasa bajo en señal sEMG

Para iniciar como filtro anti-aliasing, dado que la etapa de acondicionamiento será
digitalizada siendo obligatorio limitar las altas frecuencia según lo estudiado por la teoría de
procesamiento digital. Los valores utilizados para el filtro con una frecuencia de corte a los
530Hz según la ecuación del capítulo II, los valores de los componentes serán de C=100nF y
R=3kΩ. Las respuestas en frecuencia y Fase se observan en la figura.

Notch tipo gyrator para sEMG

14
La banda de rechazo es centrada en 60Hz y calibrada según los potenciómetros para ajustar
la atenuación y la frecuencia central de rechazo.

El circuito del Notch tipo Gyrator, tiene 2 potenciómetros los cuales permite ajustar la
atenuación y modificar la banda de rechazo. Si bien la atenuación a dicha frecuencia está
dentro del rango de las señales sEMG, no implica mayor problema según lo indicado.

En la figura se muestra la respuesta de la magnitud y fase según la frecuencia. Para que se


obtengan los mejores resultados en atenuar la señal de inducción eléctrica, los valores para
los componentes son R6≈3.3kΩ y R5=10kΩ.

Se observa la atenuación aproximada a los 50dB en la frecuencia de 60Hz, además se


caracteriza que en la banda de trabajo no existe ripple.

Filtro pasa alto para SEMG

El filtro pasa alto siendo la última etapa del circuito acondicionador permite una salida
libre de señal de corriente continua con una frecuencia de corte de 20Hz dado que así
lo recomienda. Con valores de C=100nF y R=80kΩ siendo la gráfica de respuesta en
frecuencia en magnitud y fase.

Respuesta en frecuencia del filtro pasa Alto de 1er


 Digitalización:
orden.

15
En esta etapa la señal que sale del Electromiógrafo va a ser digitalizada al Matlab mediante
el arduino.

La tarjeta Arduino tiene una circuito interno llamado convertidor análogo-digital (también
conocido como ADC, por sus siglas en ingles Analog to Digital Converter) que lee un voltaje
de 0V a 5V y devuelve un número en una escala entre 0 a 1023. El comando analogRead()
retorna el valor del ADC que es aproximadamente proporcional al valor de voltaje aplicado
al pin de entrada analógica

/*
AnalogReadSerial
Reads an analog input on pin 0, prints the result to the serial monitor.
Attach the center pin of a potentiometer to pin A0, and the outside pins to +5V and ground.

This example code is in the public domain.


*/

// the setup routine runs once when you press reset:


void setup() {
// initialize serial communication at 9600 bits per second:
Serial.begin(9600);
}

// the loop routine runs over and over again forever:


void loop() {
// read the input on analog pin 0:
int sensorValue = analogRead(A0);
// print out the value you read:
Serial.println(sensorValue);
delay(100); // delay in between reads for stability
}

Una vez que se obtiene la señal es necesaria filtrarla de nuevo para eliminar el ruido provocado
por las perturbaciones causadas medio ambiente y la inducción eléctrica en el circuito.

 SOFTWARE:

16
En esta parte veremos la señal ya digitalizada, como hemos visto atreves del hardware solo se
hizo un filtrado de primer orden. Acá implementaremos el Matlab, para el filtrado en segundo
orden y obtener una señal mas limpia.
Matlab permite calcular numéricamente la respuesta en frecuencia de sistemas continuos y
discretos para valores discretos de frecuencia.
La respuesta en frecuencia de un sistema es la transformada de Fourier de su respuesta impulso.
Emplearemos los filtros Butterworth.

 Filtros Digitales Butterworth:


En Matlab podemos encontrar la instrucción Butter, este comando diseña filtros Butterwoth
pasa-bajas, pasa-altas, pasa-bandas y rechaza bandas tanto en forma digital como analógica.
Este filtro se caracteriza por una respuesta plana en la banda de transición.

En el dominio analógico tenemos dos opciones:

*La instrucción para generar un filtro del grado que el usuario desee, así como la manipulación
de la frecuencia de corte.
*El comando para que a partir del grado, tipo y amortiguamiento, se obtengan los polos, zeros
y ganancia que pueda tener el filtro.
A la señal digitalizada se le emplearan los filtros pasa baja, rechaza banda y pasa alta.

17
 CODIGO MATLAB PARA RECIBIR LA SEÑAL DEL ARDUINO:

function voltaje=Leerseñal(muestras) %la funcion recibe el # de muestras


que debe tomar
close all; %Cierra todo lo que matlab tenga abierto
clc; %limpiar la pantalla
%Borra datos que se encuentren previos y vuelve a declarar el puerto y la
%velocidad de transmisión
delete(instrfind({'port'},{'COM3'})); %borrar cualquier puerto serial
abierto
puerto=serial('COM3'); %declaro variable llamada puerto y se crea el com4
puerto.BaudRate=9600; %Establecer velocidad de transmisión

fopen(puerto);%abre el puerto a utilizar


contador=1;

%configura la ventana donde se va a mostrar la grafica


figure('Name','Grafica de dos señales')%Nombre de la ventana
title('GRAFICA DE LA SEÑALE'); %Titulo de la grafica
xlabel('Numero de Muestras'); %Leyenda o titulo del eje x
ylabel('SEMG (mV)'); %Leyenda o titulo en el eje y
grid on; %Apagar cuadricula
hold on;
%Ciclo para capturando valores e ir realizando la grafica paso a paso
while contador<=muestras
ylim([ -5.1 5.1]);
xlim([contador-20 contador+5]);
valorADC=fscanf(puerto,'%d')'; %Toma el valor recibido por el puerto y
lo guarda en la variable
voltaje(contador)=valorADC(1)*5/1024; %Hace la conversión a voltaje
subplot(211);
plot(voltaje,'b' ); %Grafica el voltaje
drawnow
contador=contador+1;
clc
end
fclose(puerto);
delete(puerto);
end

 FILTRO PASA BAJO:

%FILTRO PASA BAJO


fm=1100;
fs=fm/2;
[b,a]=butter(10,530/(fm/2
),'low');
[h,f]=freqz(b,a,[],fm);
plot(f,abs(h)/max(abs(h))
);
xlabel('H(z)');
ylabel('H(f)');
title('Filtro Digital
Pasa bajo')

18
 FILTRO RECHAZABANDA:
pas=0.01;
t=0:pas:10;
%DEFINIMOS LA FRECUENCIA DE MUESTREO QUE ES EL INVERSO DEL PERIODO
DE LA
%SEñAL ADEMAS DE LA FRECUENCIA DE CORTE QUE ES EL INVERSO DE LA
FRECUENCIA
%DE MUESTREO LA CUAL VA A SER UTILIZADA EN NUESTRO FILTRO Y RESULTA
EL
%INVERSO DEL PERIODO DE LA SEñAL
fm=1/pas;
fs=fm/2;

%DEFINIMOS LA BANDA DE PASO Y DE CORTE DE NUESTRO FILTRO


wp=[4 5]/fs;
ws=[1 49]/fs;

%establecemos los valores rp (valor de la tolerancia de


nuestrofiltro) y de
%rs (valor de la atenuación de la banda eliminada)

rp=1;
rs=4;

****

pas1=0.05;
t=0:pas1:250;
ejet=[0:pas:(length(senal1)-1).*pas]./10;
dim=length(senal1).*pas;

spectr=abs(fft(senal1));

[n,wn]=buttord(wp,ws,rp,rs);
[b,a]=butter(n,wn);
[h,f]=freqz(b,a,[],fm);

19
ysig1=filter(b,a,senal1);
plot(ejet,ysig1);
axis([min(ejet) max(ejet) min(ysig1) max(ysig1)]);
xlabel('Tiempo(s)');
title('Senal Filtrada')

ejet=[0:pas:(length(senal)-1).*pas]./10;
plot(ejet,senal);
axis([min(ejet) max(ejet) min(senal) max(senal)]);
xlabel('t(s)');
ylabel('Input(s)')
title('Grafico de la Senal')
pas=0.01;
t=0:pas:10;

 FILTRO PASA ALTO:

%FILTRO PASA ALTO


fm=50;
fs=fm/2;
[b,a]=butter(10,20/(fm/2)
,'high');
[h,f]=freqz(b,a,128,fm);
plot(f,abs(h)/max(abs(h))
);
xlabel('H(z)');
ylabel('H(f)');
title('Filtro Digital
Pasa alto')

20
MUESTRA DE LA SEÑAL FILTRADA:

CONCLUSION:
El costo de este producto para la venta al publico es : $ 4.000
Para la implementación de este quipo se necesitaron dispositivos del extranjero ;
El costo de implementación del producto en bruto : 350 soles

CIRCUITO ESQUEMATICO:

21
FILTRO PASA

22
BAJO
ETAPA DE
AMPLIFICACION
FILTRO
FILTRO PASA
RECHAZO DE
BAJO
BANDA
CIRCUITO IMPRESO:

23

Potrebbero piacerti anche