Está en la página 1de 4

Microconvertidores

Implementación de monitores ECG,


mediante µConverters
Por Enrique Company Bosch y Eckart Hartmann
De Analog Devices. Este artículo sugiere algunas ideas El signal chain se puede simpli-
Artículo cedido por para una implementación de bajo ficar usando un Microconverter
Arrow Iberia Electrónica coste de un monitor ECG. Se propo- ADuC842, el cual permite combinar
ne un circuito que ejecuta conversión ADCs, filtros y microprocesador en un
A/D, filtrado digital, y amplificación único integrado. Entre las ventajas
digital usando un Microconverter. Un adicionales están la flexibilidad de
Chip que integra un ADC, un micro- implementación de filtros y aisla-
Figura 1. Señal ECG controlador y memoria Flash. miento en el dominio digital.
El diseño propuesto se muestra
Un electrocardiograma (ECG) es un dependiendo de la aplicación puede en la figura 3.
registrador de la actividad eléctrica en oscilar desde 0.5 Hz a 50 Hz, para
la superficie corporal generada por el monitorización en unidades de cui- Procesado analógico
corazón. La información se recoge dados intensivos y hasta 1 kHz para de la señal de entrada
mediante electrodos situados en lo- detección de marcapasos. Una apli-
calizaciones específicas del cuerpo. cación ECG estándar tiene un ancho El front end analógico usa la
La señal ECG se caracteriza por seis de banda de 0.05 Hz a 100 Hz. aproximación típica con un amplifi-
picos y valles nombrados con letras Las señales ECG se pueden de- cador de instrumentación (IA) y un
sucesivas del alfabeto P, Q, R, S, T y gradar por varias clases de ruido: amplificador operacional para el cir-
U (ver fig. 1). Interferencias procedentes de la cuito del pie derecho. El IA es el
línea de alimentación; Ruido produ- AD620, un amplificador de instru-
Requisitos de un cido en los electrodos de contacto mentación de bajo coste y alta efica-
Electrocardiógrafo con la piel; Señales EMG producidas cia, con excelentes prestaciones en
por contracciones musculares; Deri- continua: CMR >> 100 dB hasta
El front end de un ECG debe ser vas de la línea de referencia (baseli- 1KHz, máxima tensión de offset de
capaz de gestionar señales extre- ne) por cambios en la impedancia 50mV, baja corriente de polarización
madamente débiles desde 0.5 mV a piel-electrodo o debidas a la respira- (1 nA máx), y bajo ruido en tensión
5.0 mV, combinadas con un compo- ción; interferencias electromagnéti- (0.28 mV desde 0.1 Hz a 10 Hz).
nente DC de hasta ± 300mV que re- cas y ruido de alta frecuencia induci- El AD620 requiere una única re-
sulta del contacto electrodo-piel, do por otros equipos. sistencia externa Rg para establecer la
además de una componente en Por todo ello es necesario inter- ganancia, la ecuación es:
modo común de hasta 1.5V, que calar un filtro apropiado si queremos [Gain = 1 + 49.4 k ohms/RG]
resulta de la diferencia de potencial obtener una señal, lo más fidedigna Para evitar la saturación de sali-
Figura 2. Electrocardiógra- entre los electrodos y masa. El ancho posible. da, la ganancia utilizada viene limita-
fo típico de un solo canal de banda útil de una señal ECG, da por el swing de salida y la máxi-
Mejorando la ma tensión de entrada en el IA.
arquitectura básica Si alimentamos a ± 5 V, el swing
de un ECG típico de salida del AD620 es de ± 3.8V; la
entrada máxima es ± 5mV además
La figura 2 muestra un diagrama de un offset DC variable de hasta
de bloques de un electrocardiógrafo ± 300mV, permitiendo una ganancia
típico de un solo canal. Se puede ver máxima de 12.45. Escogemos una
que todo el filtrado se hace en el ganancia menor de 8 (± 1%), con
dominio analógico, mientras que el una Rg = 6,980 kΩ.
microprocesador, microcontrolador o El operacional usado en el cir-
DSP se usa principalmente para las cuito del pie derecho es el OP97, un
comunicaciones. De este modo, las amplificador operacional de alta
propiedades de cómputo de un nú- precisión y bajo consumo con un
cleo digital no están fácilmente dis- extremadamente alto rechazo al
ponibles para tratar con la señal en modo común (114 dB mínimo). Este
su estado original. Los sofisticados circuito invierte, en la pierna derecha,
filtros analógicos pueden generar un las interferencias en modo común
gran coste al diseño global debido a con el objeto de cancelarlas.
su poca flexibilidad y el espacio, cos- El operacional tiene una ganan-
te y consumo que requieren. cia en tensión de 90,9, es decir:

46 • Marzo 2004
Microconvertidores

Vout = -1,5R/9,5 kΩ Figura 3. Configuración


Ambas alimentaciones (± 5 V ) ECG propuesta
se generan mediante bombas de car-
ga capacitivas, las cuáles no pueden
generar tensiones peligrosas, incluso
bajo condiciones de fallo, ya que no
requieren de inductancias. Estos dis-
positivos se caracterizan por un
modo shutdown, el cuál permite al
Microconverter dejarlos en modo de
bajo consumo cuando el sistema no
está en uso.
Además del aislamiento digital,
las resistencias serie, Rx1, Rx2, y Rx3,
proporcionan protección al paciente,
cumpliendo con la AAMI (Association
R4/R2||R3 = 1 MΩ/11 kΩ, Circuito de for the Advancement of Medical Ins-
con filtrado paso bajo con frecuen- alimentación trumentation) para niveles seguros
cia de corte de 150 Hz para lograr de corriente. Estos estándares requie-
estabilidad: La alimentación aislada se sumi- ren que las corrientes RMS de masa
f– 3 dB = 1/(2π × 10 kΩ × 0.1 µF) nistra mediante una batería recarga- o de defecto deben ser menores de
ble. Para soportar una señal de entra- 50 µA.
Aislamiento digital da bipolar, necesitamos una fuente
dual para el AD620 y el OP97. El re- Procesado de la señal
Es necesario un aislamiento digi- gulador/elevador ADP3607-5 y el in-
tal entre el interface RS232 y el PC. versor ADP3605 proporcionan una El Microconverter ADuC842 está
El circuito de aislamiento es el alimentación dual regulada que su- perfectamente indicado para las prin-
AduM1301, un circuito de aislamien- ministra tensiones reguladas positi- cipales tareas de procesamiento de la
to bi-direccional basado en la tecno- vas y negativas desde una única ba- señal. Se caracteriza por un rápido
logía iCoupler de Analog Devices, tería de 3 V. ADC de 12-bit y otros periféricos ana-
una tecnología que acaba con las El ADP3607 es capaz de propor- lógicos de altas prestaciones, un nú-
dificultades encontradas normalmen- cionar hasta 50 mA. Trabajando con cleo 8052 de 1 ciclo de reloj por ci-
te en los diseños con optoacoplado- una tensión de entrada tan baja clo máquina, memoria flash de códi-
res (funciones de transferencia no li- como 3 V, tiene una salida fija a 5 V. go de 62 kB incorporada, y otros úti-
neales, etc.) También logra mayor Está también disponible en un for- les periféricos (ver figura 4). Los com-
velocidad de transmisión con menor mato ajustable con rango de 3 V a ponentes clave del Microconverter
consumo que con optoacopladores. 9 V a través de una resistencia exter- para este diseño son el ADC y el nú-
El ADuM1301 tiene tres canales na. Se puede obtener una tensión in- cleo 8052. El ADC convierte la salida
de aislamiento independientes, usán- cluso mayor con una etapa externa analógica del amplificador de instru-
dose en este caso dos de ellos, uno mediante componentes pasivos. mentación a una señal digital. El soft-
para transmitir y otro para recibir El inversor de tensión ADP3605 ware escrito para el núcleo 8052 pro-
datos (una capacidad adicional del con tensión de salida regulada es cesa la señal digitalizada para obte-
ADuM1301, no necesitada aquí, es la capaz de entregar hasta 120 mA. ner los datos de la señal ECG final.
capacidad para habilitar/deshabilitar Hay versiones con salida fija a –3 V
la entrada/salida de datos). La fuen- (ADP3605-3) o ajustable mediante
te de alimentación para el lado de resistencias externas con rango des-
medición del ADuM1301 se obtiene de –3 V a –6 V. (Se puede conseguir
del regulador/elevador ADP3607-5, una tensión negativa mayor median-
que proporciona una salida fija de te una etapa externa, como con el
5 V positivos. ADP3607). Se necesita una alimenta-
La alimentación del lado del PC ción de –5 V a partir de una tensión
está totalmente aislada del circuito. de entrada de +5 V, así que estable- Figura 4. Diagrama de
Se obtiene del PC (como en este caso) cemos una R = 31,6 kohms (± 1%), bloques simplificado del
o de otra fuente diferente. usando la ecuación siguiente: AduC842

• Marzo 2004 47
Microconvertidores

Las salidas se pueden escalar


cambiando los coeficientes de las
entradas. Así mismo, si las señales
Esta función de transferencia se pue- son todas positivas, la división por
de convertir dentro de un algoritmo 4096 se realiza sencillamente me-
programable recursivo: diante 12 desplazamientos a la dere-
cha.
La implementación mostrada en
Figura 5. Trazas el listado 1, está desarrollada para 5
osciloscópicas (ver texto) En esta ecuación el subíndice, k, sig- filtros pasa banda y 2 filtros nocht.
nifica el valor actual, k-1 significa el
valor en el instante previo, y así su- Procesado en
Cómo en muchos diseños de Micro- cesivamente. ensamblador
converters, el software incluye com- Necesitamos ahora transformar
plejo código de alto nivel en C y ruti- esta ecuación a código. La codifica- Las funciones principales realiza-
nas sensibles al tiempo escritas en ción en C fue la elección automática das en ensamblador son para medir
ensamblador. En este caso, la imple- para este procesamiento de aritmé- la señal de entrada a intervalos regu-
mentación de filtros pasa banda y fil- tica intensiva, ya que la programa- lares y para asegurar que los cálculos
tros notch es en C, mientras que el ción en ensamblador nos habría lle- en C se repitan a la velocidad reque-
ADC se controla mediante ensambla- vado mucho tiempo. La implementa- rida de 500 veces por segundo. El
dor. El código en ensamblador, com- ción directa de las ecuaciones de fil- Timer0 se programó para correr de
binado con la velocidad del conver- trado no sería adecuada con el manera continua y generar interrup-
tidor, permite la acumulación de ADuC842, ya que no está pensado ciones en intervalos de 1ms. Cada
múltiples muestras, mejorando la re- para operaciones en coma flotante. interrupción restaura el Timer0, rea-
solución efectiva del ADC más allá de Afortunadamente podemos escalar liza una conversión ADC, e incremen-
los 12 bit usuales. los coeficiente (p.e. 4096) e imple- ta una variable, c2ms, usada para
La figura 5 da una buena indica- mentar el código notch como: sincronizar el código C. En esta eta-
ción de la efectividad del Microcon- pa de desarrollo del código, las pri-
verter. La señal de arriba es la señal meras líneas de código C fueron:
aplicada desde el amplificador de ins-
trumentación al ADC. La señal de en
medio muestra los resultados inicia- Esto implementa un filtro de se-
les conseguidos mediante el filtrado gundo orden. Aunque se pueden cal-
con código C, mientras que la señal cular filtros de mayor orden, en la
inferior muestra el resultado final práctica parece más sencillo poner en Inicialmente, c2ms es 0, y el có-
después de múltiples conversiones, cascada filtros de segundo orden. digo C esperará en la línea mientras
usando código en ensamblador. El segundo filtro es un filtro Bu- (c2ms < 2); Después de 1ms, ocurre
tterworth pasabanda con una fre- la interrupción del Timer0, y c2ms se
Filtros realizados en cuencia de corte baja de 0.05Hz y incrementa a 1. Después de otro mi-
código C una frecuencia de corte alta de lisegundo, c2ms se incrementa a 2.
100Hz. La función de transferencia y Salimos del while y el código conti-
La señal adquirida se filtra digi- el algoritmo recursivo son: nua reseteando el contador c2ms a
talmente en el Microconverter. Para 0 y haciendo los cálculos de filtrado.
este propósito, se diseñaron dos fil- Después, el código C desplaza los
tros IIR (Infinite Impulse Response) de resultados a través de la cadena de
segundo orden, basados en una fre- variables para la siguiente iteración
cuencia de muestreo de 500Hz. Un del bucle. La parte final del bucle es
filtro notch se diseñó para suprimir la el printf(...), que envía los resultados
interferencia a 50Hz. El procedimien- La implementación en código C al PC para mostrar la gráfica. El pro-
to escogido fue el método de polo sería: cesamiento de los datos en el PC está
cero, con una frecuencia del notch de más allá del ámbito de este artículo
50Hz y un ancho del notch de 10Hz. siendo tan sofisticado como el dise-
Para lograr esto se requirió la siguien- ñador desee. Esta solución produjo la
te función de transferencia: gráfica blanca de la figura 5.

48 • Marzo 2004
Microconvertidores

Ganancia Listado 1 Rutina (parcial)


en lenguaje C de la
La ganancia de la señal es un aplicación descrita
factor muy importante en un diseño
ECG. En el diseño descrito, depende
de varios factores. La ganancia ana-
lógica se fijo en 8X, tal como se dis-
cutió anteriormente.
Lo siguiente fue una ganancia de
64X resultante de acumular 64 me-
didas de esta señal. Hay una pérdida
de señal de 8X a través del código
iBIn = iAdc0 >>3; y finalmente, una
doble ganancia de 4X debido al es-
calado de las dos primeras ecuacio-
nes para el filtrado pasabanda.
Esto genera una ganancia total
de:
G = (8X64/8)X4X4 = 1024
ganancia típica en circuitos ECG.

Conclusión

La figura 6 muestra los resulta-


dos con una configuración Einthoven
lead I. Se observan los buenos resul-
tados obtenidos a pesar de la simpli-
cidad de la electrónica utilizada, de
todas maneras un diseñador dedica-
do podría mejorar los resultados de
manera significativa.

Figura 6. Gráfica de una


medida real

Listado 2. Código
Otras mejoras adicionales se po- ensamblador
drían lograr mediante la implemen-
Para mejorar el resultado, la ve- acumulación de 64 medidas antes de tación en código de distintas fre-
locidad de generación de interrupcio- cada bucle de filtrado. El valor en cuencias de filtrado y otras caracte-
nes del Timer0 se aceleró a 1/32 ms, iAdc0 se salva en iAdc00 para un rísticas especiales.
y el dato se acumuló en iAdc0, para nuevo procesamiento, y el iAdc0 es La memoria de código del
utilizar múltiples medidas en vez de puesto a cero-listo para acumular las ADuC842 es Flash, permitiendo ac-
una única. Al mismo tiempo, el whi- siguientes 64 medidas. Esta solución tualizaciones después de la fabrica-
le se cambió a while(c2ms<64), de mejorada produce la gráfica verde de ción del producto, según las necesi-
manera que el código C esperaría la la figura 5. dades de los pacientes. ❏

• Marzo 2004 49

También podría gustarte