Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MS
BSC
BSC
MSC
Otras Redes
Figura 2.10: Esquema general de las redes celulares.
El funcionamiento del sistema de telefona movil se basa en la division
del terreno a cubrir con celdas teoricamente hexagonales (Ver Figura 2.10),
motivo por el cual recibe el nombre de Red Celular. Este esquema permite
la reutilizacion de frecuencias en celdas no contiguas. Cada celda esta aso-
ciada a una Estacion Base (BTS-Base Transceiver Station) responsable de
establecer la comunicacion con la Estacion Movil (MS-Mobile Station), la
cual puede ser un celular, un modem GSM, un PC portatil, etc. [61,83,91,99]
2.3. Sistemas Embebidos
Son sistemas Hardware/Software de proposito especco, dise nado para
realizar una o mas actividades. Esto permite su optimizacion con el objetivo
de mejorar el desempe no, eciencia y conabilidad, teniendo la posibilidad
de reducir el tama no y costo de produccion.
16
Estas caractersticas hacen a los sistemas embebidos herramientas tec-
nologicas utiles en el desarrollo de dispositivos medicos para la telemonito-
rizacion de se nales biomedicas. [46]
Las principales diferencias de los sistemas embebidos con los computado-
res personales son [19, 82]:
El costo de produccion es bajo.
Pueden ser implementados en diferentes arquitecturas de procesadores.
Su desarrollo implica un dise no particular de hardware y software, con
el objetivo de satisfacer la tarea especca que se desea cumplir.
Poseen recursos limitados de hardware, por ejemplo: en cuanto a la me-
moria RAM, ROM y al manejo de los dispositivos de Entrada/Salida
(E/S).
En los sistemas embebidos el consumo de potencia es un aspecto muy
importante, porque permiten implementar soluciones con bajos con-
sumos de energa.
Generalmente, los sistema embebidos poseen restricciones de tiempo,
motivo por el cual, gran parte del estudio se enfoca al desarrollo de
Sistemas de Tiempo Real.
A continuacion se presentan los componentes principales que integran la
arquitectura de estos sistemas.
2.3.1. Hardware
Los tres principales componentes de un sistema embebido son:
Unidad de Procesamiento
Los sistemas embebidos basan su implementacion en un amplio rango
de arquitecturas de procesadores, que pueden ser microprocesadores o mi-
crocontroladores, entre las que se encuentran: ARM [5], AVR, x86, MIPS,
Hitachi SuperH, IBM/Motorola PowerPC, Motorola 68000 y Blackn. En el
Apendice C se especica la informacion basica de estas arquitecturas.
Una de las mas importantes arquitecturas de procesadores en los Siste-
mas Embebidos es la ARM. Esto se debe principalmente a [55]:
17
Su arquitectura es abierta.
Se dispone de gran cantidad de informacion para los usuarios o di-
se nadores, entre las que se encuentran manuales, guas de usuario y
especicaciones tecnicas.
Se utilizada en un amplio rango de aplicaciones (Ejemplo: PDAs, Ce-
lulares, Camaras Digitales e Impresoras).
Es una arquitectura moderna con una amplia gama de soportes en la
interconexion de perifericos.
Estos criterios determinaron la seleccionada de esta arquitectura de procesa-
dores para el desarrollo de la tesis. A continuacion se presenta la informacion
principal de los procesadores ARM. [29, 33, 110]
ARM (Advanced RISC Machines) [55, 109, 110]:
16
es una familia de
procesadores RISC (Reduced Instruction Set Computer) dise nado por
Acorn Computers y desarrollado por Advanced RISC Machines Ltd.
En desarrollo de la tesis se utilizo el n ucleo ARM920T de la familia de
procesadores ARM9TDMI
17
. En el Apendice C, Figura C.1 se presenta
el diagrama de bloques de la arquitectura interna de este n ucleo.
Dispositivos de Almacenamiento
Los sistemas embebidos necesitan tener uno o varios dispositivos de al-
macenamiento de informacion para inicializar el sistema, ejecutar los pro-
gramas y administrar los recursos. Los dispositivos de almacenamiento se
pueden clasicar como:
a. Memorias Volatiles: [62] son dispositivos que requieren estar cons-
tantemente energizados para mantener la informacion almacenada. Ge-
neralmente son utilizadas como memorias de acceso aleatorio (RAM),
principalmente por el bajo tiempo de acceso de lectura/escritura. Al-
gunos ejemplos de este tipo de memorias son: SRAM o RAM estaticas,
DRAM o RAM dinamica y SDRAM(Synchronous Dynamic Random
Access Memory), la cual es una memoria DRAM con interfaz sincroni-
ca y es la que mas se utiliza en los sistemas embebidos.
16
La p agina web de ARM es http://www.arm.com/.
17
La lista completa de las arquitecturas y n ucleos puede consultarse en la p agina http:
//www.arm.com/products/processors/index.php
18
b. Memorias no Volatiles: son dispositivos que almacenan informa-
cion por largos perodos de tiempo, as no esten energizados. Algu-
nos ejemplos de estos dispositivos son: DVD, Disco duro, memorias
EPROM (Erasable Programmable Read-Only Memory), ash (Tipo
NOR o NAND) [19, 82, 110], NVRAM (Non-volatile random access
memory) y ROM (Read Only Memory)
18
.
Perifericos
Estos dispositivos se emplean principalmente para adquirir, transmitir
y almacenar la informacion de los procesos realizados en el sistema. [20, 82,
86, 110] Algunos de los perifericos, interfaces y buses que pueden ser usados
son:
Interfaces de comunicacion serial o SCI (Serial Communication Inter-
faces): RS-232, RS-422, RS-423, RS-485. Generalmente se emplea un
puerto RS-232 para realizar las actividades de desarrollo y depuracion
entre el host y el sistema embebido.
Interfaces de comunicacion serial sincronicas: I
2
C (Inter Integrated
Circuit), SPI (Serial Peripheral Interface Bus) y ESSI (Enhanced Syn-
chronous Serial Interface).
Dispositivos de comunicacion: modems, tarjetas de red (Ethernet), tar-
jetas inalambricas.
Puertos: USB (Universal Serial Bus), paralelos, ISA (The Industry
Standard Architecture), PCI (The Peripheral Component Intercon-
nect), PCMCIA (Personal Computer Memory Card International As-
sociation), GPIO (General Purpose Input/Output), IEEE1394 (Fire-
Wire).
Conversores Analogos/Digitales o Digitales/Analogos (ADC/DAC),
monitor, pantalla tactil, teclado y raton.
Componentes de depuracion: soporte JTAG (Joint Test Action Group),
ISP (In-system programming), ICSP (In Circuit Serial Programming),
interfaz BDM (Background Debug Mode).
18
En los sistemas embebidos generalmente se usa la memoria ROM para almacenar el
rmware, el cual es un programa de prop osito especco ligado al hardware que funciona
como una interfaz para controlar la electr onica del dispositivo, con el objetivo de realizar
correctamente las instrucciones externas que recibe.
19
Controladores para memorias: Compact Flash, NAND ash, Data-
Flash, SDRAM, SD/MMC.
Es importante aclarar que uno de los aspectos que vara con frecuencia entre
los diferentes sistemas embebidos es el manejo de los dispositivos de E/S,
interfaces y/o buses.
2.3.2. Software
En estos sistemas se implementa un Sistema Operativo Embebido, di-
se nado para ser compacto y eciente, capaz de administrar los recursos y
permitir la comunicacion hardware/software con el n de realizar las ta-
reas especcas para las que esta dise nado. Algunos de los principales S.O.
Embebidos son:
Symbian OS:
19
dise nado para dispositivos moviles y celulares, opera
con licencia Nokia Symbian bajo un modelo de codigo compartido, es
decir es Software propietario. Soporta arquitecturas ARM y es com-
patible con x86.
Windows CE (Microsoft Windows CE)
20
: Software propietario que
opera con una licencia MS-EULA. Soporta la plataforma x86 y es
compatible con arquitecturas de procesadores MIPS y ARM. [98].
Palm OS (Garnet OS)
21
Software propietario que opera con una li-
cencia EULA, utilizado en las PDAs (Personal Digital Assistants).
Soporta arquitecturas ARM.
Linux embebido
22
las principales ventajas de utilizar este S.O. con
respecto a los otros son [19, 109]:
Existe gran cantidad de informacion, software y soporte en lnea.
Es libre su codigo fuente, esta disponible (codigo abierto).
Se tiene independencia del vendedor.
Es estable y peque no(ocupa alrededor de 2MB).
Ofrece portabilidad del codigo y
19
La p agina web de Symbian es: http://symbian.nokia.com/
20
La p agina web de Windows CE es: http://www.microsoft.com/windowsembedded/
en-us/windows-embedded.aspx
21
La p agina web de Garnet OS es:http://www.access-company.com/products/
platforms/garnet/index.html
22
La p agina web de Linux Embebido es: http://elinux.org/Main_Page
20
Soporte a una gran variedad de hardware entre las que se encuen-
tra ARM, MIPS, x86.
Estas ventajas son las principales motivaciones por las cuales se emplea el
Linux embebido en el desarrollo de la tesis. A continuacion se presenta las
principales caractersticas de este S.O..
Linux Embebido
Corresponde al uso del sistema operativo Linux en el sistema embebi-
do
23
, de tal forma que se pueda implementar el kernel o n ucleo de Linux
junto con otras utilidades o herramientas del software libre en el limitado
espacio disponible
24
. Actualmente, existen varias distribuciones que pue-
den ser implementadas en los sistemas embebidos, entre la que se encuen-
tran:
Angstrom distribution, Openembedded, Embedded Debian, OpenZau-
rus, BlueCat, SlugOS, MontaVista, RTLinux, Maemo (basado en Debian),
Openmoko Linux y Android [2, 77, 80, 82, 110].
Arquitectura del Sistema de Linux Embebido
La estructura de estos sistemas es similar a cualquier arquitectura de
un Linux generico, fundamentalmente por estar dise nados al mismo nivel
de abstraccion. En la Figura 2.11 se muestra una arquitectura general pa-
ra estos sistemas, identicando en una forma muy resumida sus principales
componentes. [19, 76, 78, 82, 100, 110]
El kernel es el componente fundamental del Sistema Operativo, su prin-
cipal tarea es administrar el hardware, de tal forma que ofrezca a las apli-
caciones de nivel de usuario un nivel de abstraccion elevado que facilite su
manipulacion, por ejemplo mediante la implementacion de APIs (Applica-
tion Programming Interface). Algunas de las actividades que realiza son:
manejar los dispositivos, controlar los accesos de E/S, administrar los pro-
cesos y el manejo de la memoria compartida.
23
Algunas de las ventajas que ofrece el uso del Linux embebido son: existe gran cantidad
de informaci on, software y soporte en lnea, es libre su c odigo fuente, est a disponible (c odi-
go abierto), se tiene independencia del vendedor, es estable y peque no(ocupa alrededor de
2MB), ofrece portabilidad del c odigo y soporte a una gran variedad de hardware.
24
No es necesario desarrollar un kernel especial para el sistema embebido, se pueden
emplear los kernel ociales de Linux, realizando las modicaciones necesarias para ser
integrado al sistema.
21
HARDWARE
Kernel
APLICACI
ON
LIBRER
IAS
Abstraccion de Alto Nivel
Interfaz de Bajo Nivel
Sistema de
Archivos
Protocolos
de Red
Figura 2.11: Arquitectura general de un Sistema de Linux Embebido. [110]
Como se identica en la Figura 2.11 el Kernel basicamente se compone
de: una Interfaz de Bajo Nivel
25
, en la que se gestionan y controlan
directamente los recursos de hardware, unos Componentes de alto nivel
o Abstraccion de Alto Nivel, que generalmente es independiente del hard-
ware y provee abstracciones comunes a todos los sistemas Unix, incluyendo
procesos, archivos, sockets y se nales, y entre estos dos niveles se encuentran
los Componentes de interpretacion que captan e interact uan con las
estructuras de datos recibidas o transmitidas por los dispositivos. Los tipos
de sistemas de archivos (FAT32, NTFS, EXT2, EXT3, EXT4 . . . ) y los pro-
tocolos de red son ejemplos de estructuras de datos.
Cuando el kernel se encuentra operando, requiere manejar una estructura
adecuada del sistema de archivo, que se denomina Root Filesystem o
Sistema de Archivos Raz, cargado al momento del arranque del sistema
operativo, que es una estructura de directorios jerarquicos en forma de arbol,
donde se almacenan las aplicaciones, libreras y archivos relacionados con
los programas ejecutados. En el Root Filesystem el directorio principal se
denomina Root y se simboliza por / . El nivel de abstraccion ofrecido por el
25
La interfaz de Bajo Nivel es especica para cada una de las arquitecturas de Hard-
ware que se esten usando, por ejemplo: es diferente el manejo de la memoria para las
arquitecturas de procesadores MIPs y ARM.
22
kernel a un no es adecuado para la ejecucion de las aplicaciones, es necesario
la implementacion de libreras y programas Demonios (Deamons) en el nivel
de usuario que ofrezcan, por ejemplo, APIs capaces de interactuar con el
Kernel y a su vez ofrecer la funcionalidad deseada. Algunas libreras son:
Qt, XML, MD5, Clibc y GNU C (Principal librera usada en los sistemas
embebidos).
Herramientas de Desarrollo
En el dise no de los sistemas embebidos, generalmente, es necesario el
uso de un computador que ofrezca las herramientas de hardware y software
necesarias para el desarrollo, eliminando las limitaciones existentes. De esta
forma, se busca implementar una plataforma acondicionada para la crea-
cion, compilacion y prueba de los programas o componentes de software que
se necesiten incorporar al sistema. Este tipo de herramientas se denominan
plataformas cruzadas de desarrollo (Cross-Platform Development Tools) y
contienen compiladores, sistemas de enlace (Linkers), interpretes, ambientes
de desarrollo integrados, etc. Estas plataformas se basan en la compilacion
cruzada
26
, que consiste en crear o generar un codigo ejecutable para el sis-
tema embebido en un computador personal denominado Host, permitiendo
separar el entorno de desarrollo.
2.4. Marco Legal
Para evitar o minimizar los riesgos que pueda presentar un dispositivo
medico para la telemonitorizacion de se nales biomedicas, es de vital im-
portancia considerar los requerimientos contenidos en las normas tecnicas
durante todo el proceso de dise no. Esto permitira, a su vez, una reduccion
tanto en el tiempo como en los costos de fabricacion al momento de la comer-
cializacion del equipo. Un dise no minucioso garantiza la deteccion temprana
de errores o fallos, que de otra forma habran surgido al nal del proceso.
A continuacion se presentan las normas mas relevantes que estan ligadas a
este tema. (La informacion contenida en esta seccion se basa en el reporte
tecnico Marco Legal de los Dispositivos Medicos en Colombia, realizado
en el proceso de desarrollo de la Tesis, el cual se encuentra en el CD.)
26
Para realizar la compilaci on cruzada es necesario instalar, las libreras (ejemplo: glibc),
el compilador (ejemplo: gcc) y los Binutils (colecci on de herramientas de programaci on).
23
2.4.1. Normas Nacionales
Las normas NTC-IEC 60601 homologadas por el ICONTEC para el
ambito nacional estandarizan los dispositivos medicos, principalmente en
los temas de seguridad que garanticen un funcionamiento optimo y adecua-
do de estos equipos en el campo de la medicina. En la Figura 2.12 se resaltan
las normas aplicables a los dispositivos dise nados para la telemonitorizacion
de las se nales biomedicas, entre las que se encuentra la NTC-IEC 60601-1,
la cual corresponde a la norma base o principal donde se especican los re-
querimientos generales de seguridad. [51].
Figura 2.12: Normas NTC-IEC 60601, homologadas por el ICONTEC, aplicables a los
dispositivos de telemonitorizaci on.
A continuacion se presenta el objeto y/o aplicacion extrados de cada
una de las normas.
NTC-IEC 60601-1 EQUIPO ELECTROM
ON 4: Norma Cola-
teral. SISTEMAS ELECTROM
ONICOS
PROGRAMABLES (SSEP), a los que de ahora en adelante nos referiremos
como Sistemas Electromedicos Programables (SEMP).
NTC-IEC 60601-2-25 EQUIPOS ELECTROM
ON ELECTROCARDIOGR
ON DE LA PRESI
ON SANGU
INEA, DE FUNCIONAMIENTO
AUTOM
ATICO, C
ISTICA
Tama no: 77mm x 52.5mm, altura maxima de 10mm.
Peso: 28g.
Alimentacion: 5V 10 %.
Consumo de potencia: aproximadamente 150 mW.
Consumo de corriente: 26 a 30 mA.
Aislamiento galvanico de la tarjeta.
Rango de deteccion de la frecuencia cardiaca: 30 - 250 lpm.
Precision frecuencia cardiaca: 1 %, 1 dgito.
Filtro notch de 60 Hz.
Cables conductores aislados galvanicamente para proteccion contra ruido externo
y dise nados para soportar voltajes de desbrilacion.
Tabla 3.1: Caractersticas tecnicas principales de la Tarjeta de Adquisici on de ECG.
33
Medicion de la Saturacion de Oxgeno en la Sangre
Para la adquisicion de esta se nal se utiliza el sensor de Oximetra y la
tarjeta de referencia comercial PEARL 100 (SpO
2
OEM Module - Medlab
GmbH)
11
, presentada en la Figura 3.6. El modulo cumple con los siguientes
estandares: IEC 60601-1:1996, IEC 60601-1-4:2001 y EN ISO9919:2005.
Figura 3.6: Componentes electr onicos para la medici on de SpO2. [65]
La tarjeta permite capturar y medir el nivel de SO
2
, la componente AC
de la luz absorbida en la region infrarroja y la frecuencia cardiaca (Ver Sec-
ciones 2.1.2 y 2.1.1). El protocolo de comunicacion que establece esta tarjeta,
usa el estandar RS232 asncrono con la siguiente conguracion:
Velocidad de comunicacion 9600 baudios.
N umero de bits de datos 8.
Modo asncrono unidireccional.
Bit de parada 1.
Paridad ninguna.
Las caractersticas tecnicas de la tarjeta se presentan en la Tabla 3.2.
11
La informaci on de la tarjeta PEARL 100 puede ser consultada en la p agina Web
http://www.medlab-gmbh.de/english/modules/pulseoximetry/pearl/index.html
34
CARACTER
ISTICA
Tama no de 77mm x 53mm, altura maxima de 6mm.
Peso: 23g.
Alimentacion: 2.5 - 5.5 V.
Consumo de corriente: 33 a 60 mA.
Consumo de potencia: 100 - 150 mW, dependiendo del voltaje de alimentacion.
Rango para la medicion de la frecuencia cardiaca: 30 - 250 lpm.
Precision de la frecuencia cardiaca: 1 %, 1 dgito.
Rango de medida del nivel de SO
2
: 0 % a 100 %.
Tabla 3.2: Caractersticas tecnicas principales de la Tarjeta de Adquisici on de SpO
2
.
Medicion de la Presion Arterial
Para la adquisicion de esta se nal se utiliza el brazalete y la tarjeta de
referencia comercial NIBP 2000 (OEM Module - Medlab GmbH)
12
, presen-
tados en la Figura 3.7. El modulo se fabrica cumpliendo los estandares: EN
IEC 60601-1, EN IEC 60601-2-30:2000, EN ISO 1060-1:1995, EN ISO 1060-
3:1997 y EN ISO 1060-4:2004.
Figura 3.7: Componentes electr onicos para la medici on de PA. [65]
El dispositivo permite la medicion de: presion arterial media (PAM)
13
,
PA diastolica (DBP), PA sistolica (SBP) y frecuencia cardaca (Ver Seccion
12
La informaci on de la tarjeta NIBP 2000 puede ser consultada en la p agina Web http:
//www.medlab.eu/english/modules/nibpmodules/nibp2000/index.html
13
Presi on Arterial Media(PAM): corresponde a la presi on promedio medida en un ciclo
cardaco completo [42]. Se calcula con la ecuaci on 3.1:
PAM = P
diastolica
+
P
sistolica
P
diastolica
3
(3.1)
35
2.1.3). El modulo se puede congurar para realizar mediciones cclicas con
intervalos de 1 a 90 minutos. El protocolo de comunicacion que establece
esta tarjeta, usa el estandar RS232 asncrono con la siguiente conguracion:
Velocidad de comunicacion 4800 baudios.
N umero de bits de datos 8.
Modo asncrono bidireccional.
Bit de parada 1.
Paridad ninguna.
Las caractersticas tecnicas de la tarjeta se presentan en la Tabla 3.3.
CARACTER
ISTICA
Tama no: 128mm x 68mm, altura maxima de 34mm.
Peso: 170g.
Alimentacion: 7V 15 % o 12V 15 %.
Consumo de corriente: 50 a 750mA.
Consumo de potencia: durante la medicion: maximo 3.5W y en reposo: maximo
0.35W.
Rango para la medicion de la frecuencia cardiaca: 30 - 250 lpm.
Tabla 3.3: Caractersticas tecnicas principales de la Tarjeta de Adquisici on de PA.
3.4. Sistema Embebido TES ROv2.0
La herramienta de comunicacion TES ROv2.0 creada en la tesis es un
sistema embebido dise nado a la medida, el cual integrar los componentes
necesarios para conectar e interactuar con los dispositivos de comunicacion
y las tarjetas de adquisicion de se nales, sin la necesidad de utilizar compo-
nentes electronicos complementarios en el dispositivo de Telemonitorizacion.
3.4.1. Seleccion del Sistema Embebido
Inicialmente, la telemonitorizacion de las se nales biomedicas en el Centro
de Telemedicina se realizaba utilizando un Computador Personal, solucion
que limitaba la portabilidad del sistema, al tener un tama no considerable,
e incrementaba los costos. Esta opcion era un desarrollo sobredimensionado
36
para la funcion a implementar, la cual consiste en la captura y transmision
de las se nales biomedicas por redes inalambricas.
Una de las mas importantes restricciones que se tenan al utilizar un
computador en el sistema consista en la carencia de los perifericos espec-
cos para realizar la telemonitorizacion, siendo necesario utilizar dispositivos
externos tanto para la captura como para la transmision de la informacion
de las se nales biomedicas.
A partir de estos aspectos, se planteo el desarrollo de la tesis que tenia
como motivacion principal generar una solucion integrada, dise nando e im-
plementando un S.E. como una herramienta de comunicacion en el sistema
de telemonitorizacion.
Se escogio los S.E. para implementar el dispositivo de telemonitorizacion
porque ofrecen gran versatilidad en el manejo de la informacion, permiten
dise nar sistemas independientes de computadores, se pueden realizar aplica-
ciones especicas y gestionar en forma ecaz los recursos, tanto de software
como de hardware, para realizar los procesos de captura, almacenamiento y
transmision de la informaci on de las se nales biomedicas.
En este punto se tenan dos opciones las cuales correspondan a utilizar
un sistema embebido comercial como: la BeagleBoard
14
, DevKit3250
15
, o
ATMEL ATEVK1100
16
o dise nar un sistema embebido propio. Para tomar
la decision de construir un S.E. propio se tuvieron en cuenta los criterios
que se presentan en la Tabla 3.4 y se analizan a continuacion, con los cuales
se puedo establecer que dise nar e implementar el S.E. TES ROv2.0 era una
de las mejores opciones en ese momento.
a. Conocimiento de la Arquitectura del sistema: en los sistemas comer-
ciales no se revela la arquitectura de hardware que lo compone por ser
parte del negocio. Por otro lado, al dise nar una arquitectura propia
14
La p agina web del S.E. es: http://beagleboard.org/. Su costo es de $149, Trabaja
con Linux Embebido y tiene un procesador OMAP3530.
15
La p agina web del S.E. DevKit3250 es: http://www.armkits.com/product/
devkit3250.asp. Tiene un costo de $199, funciona con Linux Embebido, tiene un pro-
cesador de 266MHz, ARM926EJ S core.
16
La p agina web del S.E. ATMEL ATEVK1100 es: http://www.newark.com/. Tiene un
costo de $171, funciona con una arquitectura de procesador AVR32 y se trabaja con Linux
Embebido.
37