Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ingeniero Eléctrico
Julio de 2015
UNIVERSIDAD TECNOLÓGICA DE BOLÍVAR
FACULTAD DE INGENIERÍAS
Jurado
Jurado
Julio de 2015
Resumen
tro biológico en una señal eléctrica, la cual es ajustada de tal manera que pueda ser
cambio de iones a través de las membranas de las fibras musculares, lo cual produce
señales eléctricas o señales EMG. Es por esto que la electromiografı́a proporciona una
de pesas, con lo cual se evitan posibles lesiones o un bajo rendimiento del deportista.
producidas por el movimiento, interferencia de otras señales del cuerpo, entre otras.
Índice general
1. Introducción 8
2. Materiales y Métodos 11
3. Resultados y Discusión 21
4. Conclusiones y Recomendaciones 25
5. Anexos 26
real. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Lista de Tablas
emplean sensores para adquirir las señales del deportista al realizar los movimientos
pesas se mencionan a continuación. En 1999 Campillo et. al. [1] analizaron los puntos
crı́ticos de las curvas de las fuerzas verticales a lo largo del tirón de arrancada en
CAPÍTULO 1. INTRODUCCIÓN 9
una cámara digital de 50 Hz para realizar análisis en 2D. En el 2010, Campos et. al.
con dos cámaras de video sincronizadas (50 Hz). Finalmente, Harbili [3], en el 2012,
realizó un estudio para comparar las diferencias cinemáticas y cinéticas del rendi-
el uso de sensores para caracterizar los movimientos en halterofilia [6]. Este trabajo
través de las membranas de las fibras musculares debido a una contracción muscular.
necesario emplear filtros y amplificadores para amplificar las señales y reducir ruido
con el fin de obtener una señal de salida más limpia y amplificada. También se des-
en este proceso.
Capı́tulo 2.
Materiales y Métodos
Este diseño se basó en un trabajo previo [5] al que se le realizaron algunos ajustes
para obtener una señal más limpia y amplificada. A continuación se van a explicar
señal EMG obtenida con unos electrodos superficiales Kendall, sabiendo que éste
y un amplio rango de tensión de entrada. Esta etapa se diseñó para una ganancia
igual a 100.
de frecuencia que va desde 31,2 hasta 458,92 Hz, con el fin de eliminar el ruido de
conectado como un amplificador inversor, pero con dos diodos 1N4148 adicionales
Con la etapa de filtrado pasabaja se pretende reducir el ruido de alta frecuencia, para
1
Partiendo de la ecuación F c = 2πRC
, se seleccionó una C igual a 1µF y se calculó la
CAPÍTULO 2. MATERIALES Y MÉTODOS 13
R de la siguiente manera:
1 1
R= = = 79, 58kΩ
2πFc 2π(2Hz)(1µF )
corte de :
1 1
Fc = = = 2, 12Hz
2πRC 2π(75kΩ)(1µF )
R2 +R1
Para R2 igual a 150kΩ, R1 es igual a: Partiendo de la ecuación Av = R1
, se
R2 150kΩ
R1 = = = 1, 01kΩ
Av − 1 150 − 1
Se seleccionó el valor comercial de 1kΩ, dando como resultado una ganancia de:
R2 + R1 150kΩ + 1kΩ
Av = = = 151
R1 1kΩ
A continuación se muestra el PCB real del circuito con los cambios realizados al
filtro pasabajas:
Con este prototipo se hicieron pruebas, colocando los electrodos superficiales Ken-
EMG al momento de sostener con la mano una masa variable, formando un ángulo de
sección.
Para la transmisión inalámbrica se utilizaron dos módulos Xbee (Series 2, Digi In-
ponible en dos versiones: regular y PRO, siendo esta última de mayor alcance, con
Los módulos Xbee utilizados poseen una antena tipo chip, la cual se encuentra
localizada sobre el mismo cuerpo de los módulos, haciendo que estos sean más pe-
Parameter Value
Typical (indoor/urban) range 40 meters
Best (line of sight) range 120 meters
Transmit/Receive current 40/40 mA
Firmware (typical) ZB ZigBee mesh
Digital input/output pins 11
Analog input pins 4
Analog (PWM) output pins None
Low power, low bandwidth, low cost, addressable,
standardized, small, popular yes
Interoperable mesh routing, ad hoc network creation,
selfhealing networks yes
Point-to-point, star topologies yes
Mesh, cluster tree topologies yes
Single firmware for all modes no
Requires coordinator node yes
Point-to-point configuration More involved
Standards-based networking yes
Standards-based applications Ember
Firmware available ZB (ZigBee 2007), ZNet 2.5 (obsolete)
Up-to-date and actively supported yes
Tomado de: Faludi, Robert. Building Wireless Sensor Networks. Página 3. 2010.Primera Edición
Con los dos módulos Xbee conectados entre sı́, se forma una red inalámbrica
Zigbee. Esta última deberá tener un único dispositivo coordinador, el cual será el
módulo receptor. Por otra parte, el módulo transmisor será configurado como un
dispositivo final (Transmisor). Para configurar los módulos Xbee se utilizó el software
adaptador a uno de los puertos USB del PC, se abre el programa X-CTU,Ver Figura
red inalámbrica, puesto que a diferencia de los módulos Xbee, el ARDUINO puede ser
Para conectar el ARDUINO con el módulo Xbee se deben unir entre sı́ los si-
guientes 4 pines:
Xbee ARDUINO
Tomado de: Faludi, Robert. Building Wireless Sensor Networks. Página 65.2010.Primera Edición
CAPÍTULO 2. MATERIALES Y MÉTODOS 19
Los cuales son los pines de alimentación, transmisión, recepción y tierra. La co-
bı́ceps, cuando este ejerce una fuerza para sostener una pesa en equilibrio, formando
De estas gráficas se puede decir que el cambio de la frecuencia de corte del filtro
pasabajas dio un resultado positivo, puesto que al reducir el ruido de alta frecuencia,
3 208,6567 248
5 208,6567 248
6 277.7733 380
8 205,9067 248
10 213,6267 260
11 191,2867 228
13 208,0567 276
16 249,2733 316
(a) Señal EMG sosteniendo una pesa de 3Lb (b) Señal EMG sosteniendo una pesa de 5Lb
(c) Señal EMG sosteniendo una pesa de 6Lb (d) Señal EMG sosteniendo una pesa de 8Lb
(e) Señal EMG sosteniendo una pesa de 10Lb (f) Señal EMG sosteniendo una pesa de 11Lb
(g) Señal EMG sosteniendo una pesa de 13Lb (h) Señal EMG sosteniendo una pesa de 16Lb
Con el fin de encontrar una relación entre la masa de la pesa y la señal EMG ob-
mantiene casi estable. Lo anterior es debido al cambio de la frecuencia del corte del
alta frecuencia y de esta forma restando amplitud a la señal. Por tal motivo, también
través de los módulos Xbee y se visualizaron en tiempo real con una interfaz realizada
Los cambios en el filtro pasa bajas del electromiógrafo fueron útiles puesto que
permitieron obtener una señal más parecida a la envolvente de la señal EMG, el cual
es uno de los objetivos del proyecto. Sin embargo, no se encontró una relación exacta
Por otra parte se logró validar el funcionamiento del sistema completo y de cada
falta más pruebas con el sistema completo para encontrar una relación entre el ángulo
formado entre el brazo y el antebrazo y la señal EMG obtenida del músculo bı́ceps.
Además, harı́a falta reducir el tamaño de cada una de las etapas del circuito y realizar
Este sistema ofrece una solución sencilla y de bajo costo para monitorear la señal
de activación muscular con electrodos superficiales. Además del estudio del rendi-
void s e t u p ( ) {
S e r i a l . begin (9600) ;
}
void l o o p ( ) {
s e n s o r V a l u e = analogRead ( e l e c t r o g o n ) ;
angle = sensorValue ∗0.2462 −15.513;
S e r i a l . println ( angle ) ;
s e n s o r V a l u e = analogRead ( e l e c t r o m ) ;
emg = map( s e n s o r V a l u e , 0 , 1 0 2 3 , 0 , 2 5 5 ) ;
S e r i a l . p r i n t l n ( emg ) ;
delay (20) ;
}
int xPos2 = 6 0 0 ;
int yPos2 = 3 7 5 ;
f l o a t prevX2 = 6 0 0 ;
f l o a t prevY2 = 3 7 5 ;
int sum = 0 ;
int sum2 = 0 ;
f l o a t a n g l e , emg ;
boolean f l a g s i g n a l = f a l s e ;
boolean f l a g w r i t e = f a l s e ;
P r i n t W r i t e r output1 , output2 ;
void s e t u p ( ) {
s i z e (1100 ,650) ;
println ( Serial . l i s t () ) ;
myPort = new S e r i a l ( t h i s , S e r i a l . l i s t ( ) [ 0 ] , 9 6 0 0 ) ;
myPort . b u f f e r U n t i l ( ’ \n ’ ) ;
myPort . c l e a r ( ) ;
for ( int i =0; i <9; i ++){
for ( int j =0; j <9; j ++){
f i l l ( beige ) ;
stroke (150) ;
r e c t (50+(50∗ i ) ,150+(50∗ j ) , 5 0 , 5 0 ) ;
r e c t (600+(50∗ i ) ,150+(50∗ j ) , 5 0 , 5 0 ) ;
}
}
noFill () ;
stroke (0) ;
rect (50 ,150 ,450 ,450) ;
rect (600 ,150 ,450 ,450) ;
f i l l ( azul ) ;
stroke ( azul ) ;
rect (0 ,0 ,1100 ,75) ;
noFill () ;
noStroke ( ) ;
textSize (28) ;
stroke (255) ;
f i l l (255) ;
t e x t ( ” S i s te m a e l e c t r ó n i c o para e l mo n i t o re o d e l r e n d i m i e n t o d e p o r t i v o
” ,110 ,55) ;
textSize (26) ;
f i l l (0) ;
stroke (0) ;
t e x t ( ” Ángulo ” , 5 0 , 1 3 0 ) ;
CAPÍTULO 5. ANEXOS 28
t e x t ( ”EMG de s u p e r f i c i e ” , 6 0 0 , 1 3 0 ) ;
noFill () ;
output1 = c r e a t e W r i t e r ( ” a n g u l o . t x t ” ) ;
output2 = c r e a t e W r i t e r ( ”emg . t x t ” ) ;
}
void draw ( ) {
// Texto d e l á n g u l o
i f ( f l a g w r i t e==t r u e ) {
stroke (205) ;
f i l l (205) ;
rect (450 ,100 ,150 ,45) ;
textSize (28) ;
stroke (0) ;
f i l l (0) ;
a n g l e = map( prevY1 , 6 0 0 , 1 5 0 , 0 , 2 5 5 ) ;
output1 . p r i n t l n ( a n g l e ) ;
t e x t ( int ( a n g l e ) , 4 5 0 , 1 3 0 ) ;
// Texto d e l EMG
stroke (205) ;
f i l l (205) ;
rect (1000 ,100 ,150 ,45) ;
textSize (28) ;
stroke (0) ;
f i l l (0) ;
emg = map( prevY2 , 6 0 0 , 1 5 0 , 0 , 2 5 5 ) ;
output2 . p r i n t l n ( emg ) ;
t e x t ( int ( emg ) , 1 0 0 0 , 1 3 0 ) ;
flag write = false ;
}
}
void s e r i a l E v e n t ( S e r i a l myPort ) {
S t r i n g i n S t r i n g = myPort . r e a d S t r i n g U n t i l ( ’ \n ’ ) ;
i f ( i n S t r i n g != n u l l ) {
f l a g w r i t e = true ;
i n S t r i n g = trim ( i n S t r i n g ) ;
f l o a t inByte = f l o a t ( i n S t r i n g ) ;
i f ( f l a g s i g n a l==f a l s e ) {
i f ( xPos1==51) {
// D i b u j o de l a m a l l a de fondo 1
for ( int i =0; i <9; i ++){
for ( int j =0; j <9; j ++){
CAPÍTULO 5. ANEXOS 29
f i l l ( beige ) ;
stroke (150) ;
r e c t (50+(50∗ i ) ,150+(50∗ j ) , 5 0 , 5 0 ) ;
}
}
noFill () ;
stroke (0) ;
rect (50 ,150 ,450 ,450) ;
}
i f ( inByte <150) {
inByte = 1 5 0 ;
}
i f ( inByte >600) {
inByte = 6 0 0 ;
}
prevX1 = xPos1 ;
prevY1 = inByte ;
prevX2 = xPos2 ;
CAPÍTULO 5. ANEXOS 30
prevY2 = inByte ;
i f ( xPos2 >= 1 0 5 0 ) {
xPos2 = 6 0 0 ;
prevX2 = xPos2 ;
}
else {
xPos2++;
}
flag signal = ! flag signal ;
}
}
}
void k e y P r e s s e d ( ) {
output1 . f l u s h ( ) ; // Writes t h e remaining d a t a t o t h e f i l e
output1 . c l o s e ( ) ; // F i n i s h e s t h e f i l e
output2 . f l u s h ( ) ; // Writes t h e remaining d a t a t o t h e f i l e
output2 . c l o s e ( ) ; // F i n i s h e s t h e f i l e
e x i t ( ) ; // S t o p s t h e program
}
Bibliografı́a
[1] P. Campillo, C. Hertogh, and J. P. Micallef. Puntos crı́ticos del tirón de arrancada
[2] J. Campos, P. Poletaev, A. Cuesta, C. Pablos, and J. Tébar. Estudio del mo-
[3] E. Harbili. Análisis cinemático y cinético por sexos del arranque en halterófilos
[7] E. Waltz. The quantified olympian. Spectrum, IEEE, 52(6):44–45, June 2015.
[8] J. Webster. Medical Instrumentation: Application And Design, 3rd Ed. Wiley,
1997.