Академический Документы
Профессиональный Документы
Культура Документы
net/publication/268445331
CITATIONS READS
0 2,088
1 author:
Carlos A. Cifuentes G.
Escuela Colombiana de Ingeniería
47 PUBLICATIONS 179 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Carlos A. Cifuentes G. on 18 November 2014.
por
de la
Facultad de Ingeniería
de la
Mayo de 2011
I
Este documento de Tesis ha sido presentado y aprobado como parte de los requisitos para
obtener el grado académico de Magíster ante la Universidad Nacional de Entre Ríos. Un
ejemplar del mismo ha sido remitido e indexado en la Biblioteca de la Facultad de Ingeniería
para que esté disponible a sus lectores bajo las condiciones estipuladas por el Reglamento de
la mencionada Biblioteca.
Citas breves de este documento son permitidas sin necesidad de un permiso especial,
siempre y cuando la fuente sea correctamente referida. Citas extendidas o la reproducción
total o parcial de este manuscrito sólo podrán realizarse previa autorización del portador legal
del derecho de propiedad intelectual del mismo.
IV
TABLA DE CONTENIDOS
1.1 Aplicaciones de las redes sensores exploradas dentro de este trabajo .......................... 1-4
1.1.1 Biomecánica y rehabilitación ..................................................................................................... 1-4
1.1.2 Detección temprana y monitoreo de condiciones patológicas .................................................... 1-5
5.1 Diseño del experimento evaluación del nodo de red IEEE 802.15.4 ............................ 185
INDICE DE TABLAS
Tabla 3-4: Distancia de transmisión al variar la potencia en nodo de red V2. 121
Tabla 3-6: Distancia de transmisión al variar la potencia en nodo de red V3. 127
Tabla 4-2: Contenido de cada posición del paquete de datos RIB. 174
Tabla 4-3: Tres estados básicos y las tareas que se desarrollan la función BeeAppTask(). 174
IX
INDICE DE FIGURAS
Figura 1-1: Entorno móvil para aplicación de WSN para atención de emergencias (26). .....1-8
Figura 1-2: Adquisición de datos de una WSN hacia un PC, a) Transmisión de múltiples
nodos a un PC, b) Ubicación de los dispositivos en la ropa del paciente (26). .......................1-9
Figura 1-6: Parche monitor de ECG, a) Circuito, b) Circuito insertado en una prenda, c)
Circuito en la superficie corporal (28). .................................................................................1-12
Figura 1-7: Estructura del corazón y trayecto del flujo sanguíneo a través de las cavidades
cardíacas y de las valvulas cardíacas (31). ............................................................................1-14
Figura 1-8: Potenciales de acción ritmicos (en mV) de una fibra de Purkinje y de una fibra
muscular ventricular (31).......................................................................................................1-15
Figura 1-9: Acontecimientos del ciclo cardíaco para la función del ventrículo izquierdo, que
muestran los cambios de presión auricular izquierda, de la presión aórtica, del volumen
ventricular, del electrocardiograma y del fonocardiograma (31). .........................................1-16
Figura 1-11: Disposición convencional de los electrodos para registrar las derivaciones
electrocadiográficas estándar. Se ha superpuesto el triángulo de Einthoven en el tórax (31). ..1-
18
Figura 1-13: Conexiones del cuerpo con el electrocardiógrafo para registrar las dereivaciones
del tórax. BD, brazo derecho; BI, brazo izquierdo (31). .......................................................1-20
Figura 1-14: Electrocadiogramas normales registrados en las seis derivaciones estándar del
tórax (31). ..............................................................................................................................1-21
Figura 1-17: Cambios del perfil del impulso de presión a medida que la onda del pulso viaja
hacia los vasos mas pequeños (31). .......................................................................................1-23
Figura 1-18: Método de auscultación para medir las presiones arteriales sistólica y diastólica
(31). .......................................................................................................................................1-24
Figura 1-20: Ciclo de marcha normal para un niño de 8 años (35). .....................................1-27
Figura 1-21: Biomecánica del tobillo, en el plano sagital, a cadencia libre. Posición, momento
articular y potencia articular (36). .........................................................................................1-30
Figura 2-4: Ejemplo de la integración de varias Picored Bluetooth formando una Scatternet
(42). .......................................................................................................................................... 41
Figura 2-17: Servicio de transmisión de datos entre dos dispositivos (60). ............................ 73
Figura 3-1: Nodos de red comerciales, (a) Xbee, (b) Xbee Pro, (c) Easy Bee, (d) MICAz y (e)
SRB........................................................................................................................................... 99
Figura 3-31: Medidas para footprint antena chip en mm (73). .............................................. 124
Figura 3-32: Ubicaciones recomendadas para la antena en el PCB (73). .............................. 124
Figura 3-35: Conector de programación (a) Conector BDM (73), (b) Conector BDM
personalizado. ......................................................................................................................... 126
Figura 3-43: Integración de sensores a conector compatible con nodo de red. ..................... 135
Figura 3-46: Layout nodo ZigBee, (a) Capa superior de la board, (b) Capa infereior de la
board. ...................................................................................................................................... 137
Figura 3-47: Layout tarjeta de sensores , (a) Capa superior de la board, (b) Capa infereior de
la board. .................................................................................................................................. 138
Figura 4-3: Comportamiento del stack de aplicación con una luz ON/OFF (61). ................. 144
Figura 4-6: Selección del código base con Beekit. ................................................................ 157
Figura 4-7: Selección de plantilla, nombre del proyecto y solución con Beekit. .................. 158
Figura 4-8: Selección del chip MC1321x con Beekit. ........................................................... 159
Figura 4-9: Selección del pines de LEDs y Switchs con Beekit............................................ 159
Figura 4-10: Selección switch interno para acople single con Beekit. .................................. 160
Figura 4-12: Selección del dispositivo coordinador con Beekit. ........................................... 161
Figura 4-14: Configuración de la dirección MAC y PAN ID con Beekit. ............................ 162
Figura 4-15: Selección del canal de comunicación de la red con Beekit. ............................. 162
Figura 4-16: Configuración final del dispositivo ZcRedStar con Beekit. ............................. 163
Figura 4-18: Configuración final de la solución RedCustomApp con Beekit. ...................... 164
Figura 4-20: Ambiente para inicio de desarrollo de código en C con CodeWarrior. ............ 165
Figura 4-23: Arquitectura del módulo ATD del chip MC13213 (66). .................................. 175
Figura 5-2: Montaje de tres dispositivos ZED en articulaciones de tobillo, rodilla y cadera
para adquisición de acelerometría de tres ejes........................................................................ 187
Figura 5-3: Graficas LQI vs Distancia entre dispositivos a diferentes niveles de potencia con
5 bytes de datos. ..................................................................................................................... 188
Figura 5-4: Graficas Paquetes perdidos vs Distancia entre dispositivos a diferentes niveles de
potencia con 5 bytes de datos ................................................................................................. 189
XIV
Figura 5-5: Graficas LQI vs Distancia entre dispositivos a diferentes niveles de potencia con
10 bytes de datos .................................................................................................................... 190
Figura 5-6: Graficas Paquetes Perdidos vs Distancia entre dispositivos a diferentes niveles de
potencia con 10 bytes de datos. .............................................................................................. 190
Figura 5-7: Graficas LQI vs Distancia entre dispositivos a diferentes niveles de potencia con
20 bytes de datos. ................................................................................................................... 191
Figura 5-8: Graficas Paquetes Perdidos vs Distancia entre dispositivos a diferentes niveles de
potencia con 20 bytes de datos. .............................................................................................. 192
Figura 5-12: Índice LQI de los tres nodos ZED obtenido para una secuencia de 5 pasos de
marcha. ................................................................................................................................... 194
XV
RESUMEN
Introducir sistemas inalámbricos en red para lectura de sensores biomédicos permite gran
flexibilidad para los pacientes y el cuerpo médico. El uso de tecnologías de redes inalámbricas
facilitará y hará más seguro el manejo digital de los volúmenes cada vez mayores de datos, y
por lo tanto mejorará el manejo de las historias clínicas de los pacientes. La integración de
sistemas de telemedicina para monitoreo de la salud es un área emergente de las tecnologías
de la información, la cual permitirá entre otras funcionalidades, la detección de condiciones
anormales con el fin de prevenir consecuencias serias en las personas.
Este trabajo tiene por objetivo el desarrollo de una red ZigBee basada en nodos de
sensores biomédicos vestibles con el fin de conectar múltiples dispositivos inalámbricos para
transmitir señales bioeléctricas y biomecánicas, para ser usada en una red hospitalaría, o en el
monitoreo continuo de pacientes en la vida diaria dentro de una red de sensores de área
corporal BSN, buscando afectar de forma mínima el confort del paciente. Por esta razón los
nodos de sensores inalámbricos desarrollados en este proyecto tienen como condición ser de
tamaño reducido y de bajo consumo de energía.
2. Evaluación, con el fin de definir las especificaciones de cada nodo y el alcance de las
comunicaciones, la evaluación de los módulos fue realizada basada en un firmware
embebido en el microcontrolador, esto fue desarrollado con la capa MAC del stack
ZigBee. Los experimentos fueron realizados para asegurar la calidad de la transmisión de
las señales biomédicas en el ambiente del paciente, basado en la transmisión continua de
paquetes de datos.
Freescale. Esta red tiene una configuración estrella donde un Coodinador ZigBee (ZC )
recibe los datos de señales provenientes desde Dispositivos finales ZigBee (ZEDs).
Introducing wireless networking systems for reading data from biomedical sensors allows
great flexibility for both the patient and the medical staff. The use of wireless networking
technologies ensures a digital management of data, thereby it improves the management of
medical history. Integration of health monitoring telemedicine systems is an emerging area in
information technology, which will enable early detection of abnormal conditions providing
prevention of serious consequences.
This work aims at developing a ZigBee network based on wearable biomedical sensor
nodes which allows connecting multiple individual wireless devices for transmitting
bioelectrics and biomechanics signals, to be used in a hospital network, or in continuous
monitoring in patient’s daily life as a body sensor network BSN, trying to affect minimally
the patient’s comfort, for such reason, the wireless sensor nodes developed in this project
must have the smallest size possible and lower power consumption.
1. Hardware development, including the construction of a prototype network node and the
integration of sensors. The network node developed is based on ZigBee chip MC13213.
Additionally, it is necessary to integrate some components that allow for wireless
communication, and i used a single-type circuit for antenna matching. I implemented a
sensors network node module to evaluate the performance. This includes connector to
biomedical signal acquisition modules, input/output peripherals, and acceleration,
pressure, and temperature sensors built into the board.
1
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
2
Finally, this work presents the experimental results based on measurements of Lost
Packets and Link Quality Indicator (LQI ), and the ZigBee platform for bioinstrumentation in
operation for a specific application, it was about the joints acceleration measured of the ankle,
the knee and the hip, in order to model gait patterns, this experiment was for five steps.
In this Project, the network of the ZigBee devices was evaluated about
the hardware and the communications, and the prívate profile ZigBee
for bioinstrumentation was developed, this was evaluated with
monitoring gait application, so the results was like the biomechanics
theorical review was presented.
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
3
Dentro del desarrollo del presente proyecto se han identificado líneas de aplicación como
análisis biomecánico y rehabilitación junto con el monitoreo de condiciones patológicas o
estado de pacientes, las cuales se definen a continuación:
La demanda de pacientes a ser monitoreados en los sistemas de salud, está dada por todos
los que padecen enfermedades que requieren diagnóstico temprano y determinados
tratamientos, dentro de los cuales los más críticos son los que padecen enfermedades
cardiovasculares. Entre éstas se encuentran las anormalidades en el ritmo cardíaco
(Arritmias), como las producidas por fibrilación auricular que son encontradas en la clínica
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
6
práctica, las que ocurren en alrededor del 4% de la población con más de 60 años, las que se
incrementan a un 9% en los mayores a 80 años (18). Síntomas tempranos de fibrilación
auricular incluyen fatiga y palpitaciones, y con frecuencia el paciente tiene que visitar el
servicio médico. Las redes inalámbricas y la utilización de sensores biomédicos ofrecen la
posibilidad de diagnosticar arritmias cardíacas tempranas en la población mayor. De igual
manera permiten monitorear el progreso de las enfermedades y la respuesta a los tratamientos
iniciados (19).
Por otro lado las redes inalámbricas de sensores biomédicos integradas con los servicios
web ofrecen importantes beneficios (23), donde los niveles de monitoreo pueden ser desde
intermitente (cuatro a seis veces al día en el caso de padecimiento con condiciones estables), a
intensivo (cada hora), y finalmente monitoreo continuo invasivo y no invasivo en una unidad
de cuidados intensivos. Las señales clásicas que se monitorean, corresponden a las señales
vitales (presión de sangre, ritmo cardíaco, ECG, ritmo respiratorio y temperatura), apariencia
visual (evaluar el nivel de conciencia) y la respuesta verbal (preguntarle al paciente cuando
siente dolor) (19). Finalmente, otro escenario donde las redes inalámbricas de sensores
biomédicos pueden proveer un monitoreo invaluable y no intrusivo son las personas de la
tercera edad. Siendo este un grupo cuyo número esta en ascenso a nivel mundial (24).
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
7
Una WSN está siendo usada para asistir a los equipos de rescate de gente enterrada por
una avalancha. El objetivo es un mejor reconocimiento de personas enterradas y limitar el
daño total, consiguiendo un indicador adicional del estado de las victimas al equipo de
rescate, con el fin de automatizar la priorización de personas que necesitan ser rescatadas,
basándose en pulsos cardíacos, actividad respiratoria y nivel de conciencia. Con ese fin, las
personas en riesgo portan un nodo de sensores equipado con un pulsiooxímetro (sensor que
mide el nivel de oxígeno en la sangre), el cual permite medir el ritmo cardíaco y la actividad
respiratoria. Adicionalmente se usan acelerómetros para detectar la orientación de la víctima,
refiriéndose a la orientación de las articulaciones o miembros, basado en datos de aceleración
se puede determinar velocidad, posición e inclinación, siendo esta una evaluación dentro de
este trabajo que se desarrolla al final de capítulo 4. El equipo de rescate usará PDAs para
recibir los datos de los sensores sobre las victimas enterradas (25).
b)
a)
Este tipo de aplicación se conoce como redes de sensores vestibles, las cuales como su
nombre lo indica pueden ser usadas en una prenda de vestir, permitiendo al paciente portar
dispositivos de medición de señales médicas. Dentro de las aplicaciones de sensores vestibles
se encuentra el análisis del movimiento de marcha en un humano. Usando una plataforma de
WSN que adquiere los datos de movimientos del cuerpo de múltiples sensores fijos, un tapete
que actua como sensor del paso o contacto del pie con el piso, y los datos de vídeo se usan
para construir una imagen completa de la marcha en un entorno clínico. El centro de
investigación tecnológico para la vida independiente TRIL (Technology Researh for
Independent Living), ha desarrollado una aplicación como la mostrada en la Figura (1-3)
donde se analizan los movimientos en las extremidades inferiores (o de ser requerido en las
superiores) de un humano. Estos datos pueden utilizarse para controlar el deterioro de la
marcha de un sujeto o para evaluar el resultado de una cirugía (28).
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
10
Micrófono
inalámbrico
Capacidad
Pulmonar
Sensor GPS
Sensor
de
Podómetro presión
Los productos que podrían desarrollarse a partir de esta tecnología incluyen: (1) Medidor
de glucosa, el cual toma una medida de la concentración de glucosa en la sangre en pacientes
de enfermedades crónicas como la diabetes, (2) pulsioximetría, ver Figura (1-5), el cual
mediante un sensor no invasivo mide la cantidad de oxígeno en la sangre de un paciente, (3)
electrocardiografía, con la que se obtienen medidas de la actividad eléctrica del corazón.
Algunas redes inalámbricas son usadas para monitoreo de signos vitales de pacientes en
un ambiente hospitalario. En comparación con el enfoque tradicional, las soluciones basadas
en redes inalámbricas están destinadas a mejorar la precisión en mediciones y ser más
convenientes para los pacientes. Una arquitectura informática propuesta para esta aplicación
consta de 4 computadores, un identificador de paciente, un sensor médico, un dispositivo de
visualización y la memoria de instalación. El identificador del paciente es un sensor especial
que contiene datos como el nombre, el cual se adjunta al paciente cuando ingresa al hospital.
Algunos sensores médicos pueden ser pegados al paciente, como un medidor de ECG. Los
datos del paciente y sus signos vitales pueden ser inspeccionados usando un dispositivo de
visualización. La memoria de instalación es portada por el personal médico para establecer y
eliminar asociaciones entre los diversos dispositivos que porta el paciente. La memoria emite
una única identificación ID (IDentifier) vía infrarrojo para limitar la aplicación en un sólo
paciente. Los dispositivos que reciben la ID forman una red de área corporal BAN (Body
Area Network) (26).
bioeléctricas. Las redes de sensores se pueden aplicar a todas las estas bioseñales con la
integración del biosensor o transductor adecuado. Continuando con le desarrollo de este
informe se define el espectro de médico de este trabajo, proponiendo inicialmente las señales
provenientes del sistema cardiovascular (ECG, presión y pulsioximetría) y biomecánicas
(cinemática de la marcha). A continuación se hace referencia a la anatomía y fisiología del
corazón, las señales de electrocardiografía y las derivaciones, presión sanguínea y
pulsioximetría. Continuando con un breve análisis de la biomecánica de la marcha, fases y
descripción de señales biomecánicas generadas en el tobillo, rodilla y cadera.
1.3.1 EL CORAZÓN
El corazón, ver Figura (1-7) está formado por dos bombas separadas: un corazón derecho
que bombea sangre hacia los pulmones y el izquierdo que bombea sangre a los órganos
periféricos, a su vez cada uno de estos corazones son bombas con dos cámaras pulsátiles
formadas por una aurícula y un ventrículo, asociado a un conjunto de mecanismos especiales
dentro del corazón, que producen una sucesión continuada de contracciones cardíacas
formando el ritmo cardíaco, y transmitiendo potenciales de acción por todo el músculo
cardíaco y determinando los latidos.
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
14
El potencial de acción que se registra en una fibra muscular ventricular, ver Figura (1-8)
es en promedio aproximadamente 105 mV, desde -85mV hasta 20mV durante cada latido,
después del flanco de subida la membrana queda despolarizada durante 0,2 segundos,
generando la meseta que se observa en la Figura, seguida de una repolarización. La velocidad
de conducción de la señal de potencial de acción excitador a lo largo de las fibras musculares
auriculares y ventriculares es de aproximadamente de 0,3 a 0,5 m/s, la velocidad en las fibras
de Purkinje es de hasta 4 m/s, permitiendo una conducción rápida de la señal excitadora a
todo el corazón.
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
15
El ciclo cardíaco se refiere a todos los fenómenos producidos durante el latido cardíaco,
cada ciclo inicia con la generación de un potencial de acción en el nodo sinusal, el cual se
localiza en la pared superolateral de la aurícula derecha, cerca del orificio de la vena cava
superior, y el potencial de acción viaja rápidamente por ambas aurículas y después por el haz
AV hacia los ventrículos, luego viene un retraso de mas 0,1 segundos durante el impulso
cardíaco desde las aurículas a los ventrículos. Esto permite que las aurículas se contraigan
antes de la contracción ventricular, bomebeando de esta manera sangre hacia los ventrículos
antes de que comience la intensa contracción ventricular.
1.3.2 EL ELECTROCARDIOGRAMA
En la Figura (1-11) se observan las conexiones eléctricas entre las extremidades del
paciente y el electrocardiógrafo para registrar electrocardiogramas de las derivaciones
bipolares estándar. Bipolar dado que se registra a través de dos electrodos ubicados en dos
puntos diferentes del corazón, específicamente en las extremidades. La derivación hace
referencia a dos cables con electrodos formando un circuito entre el cuerpo y el
electrocardiógrafo. En la Figura (1-11) se observa cada derivación mediante un voltímetro,
pero realmente es un dispositivo que grafica los potenciales continuamente en el tiempo, a
continuación se definen las tres derivaciones estándar de la Figura (1-11): (1) Derivación I: el
terminal negativo del electrocardiógrafo está conectado al brazo derecho y el terminal
positivo al brazo izquierdo, (2) Derivación II: el terminal negativo del electrocardiógrafo se
conecta al brazo derecho y el terminal positivo a la pierna izquierda, (3) Derivación III: el
terminal negativo del electrocardiógrafo se conecta al brazo izquierdo y el terminal positivo a
la pierna izquierda.
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
18
La Figura (1-14) muestra los electrocardiogramas del corazón sano que se registran con
las 6 derivaciones estándar del tórax. Como las superficies del corazón están próximas a la
pared torácica, cada una de las derivaciones del tórax registra principalmente el potencial
eléctrico de la musculatura cardíaca que está inmediatamente debajo del electrodo.
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
21
La sangre llena las arterias con cada latido cardíaco, la distensibilidad del sistema arterial
permite que toda la sangre nueva no fluya a través de los vasos sanguíneos periféricos en la
sístole cardíaca, y produce flujo durante la diástole. Por otro lado la compliancia del árbol
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
22
arterial reduce las pulsaciones de la presión hasta que desaparecen en el momento que la
sangre alcanza los capilares, generando un flujo sanguíneo tisular continuo y escaso de
pulsatilidad. En la Figura (1-16) se observa un registro típico de pulsaciones de la presión en
la raíz de la aorta. En un adulto joven sano la presión en el pico de cada pulso, denominada
presión sistólica, es de 120 mm Hg. En el punto más bajo de cada pulso, o presión diastólica,
es 80 mm Hg.
En la Figura (1-17) se muestran los cambios típicos del perfil de pulso de presión a
medida que se va desplazando hacia los vasos periféricos, se puede ver en las tres curvas
inferiores que la intensidad de las pulsaciones se va reduciendo en las arterias más pequeñas,
en las arteriolas y, en especial en los capilares. Esta disminución progresiva de las pulsaciones
en la periferia se denomina amortiguación de los pulsos de presión.
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
23
antecubital en sincronía con el latido cardíaco. El nivel de presión en este momento indica el
manómetro es aproximadamente igual a la presión sistólica.
A medida que la presión del manguito continúa descendiendo irá cambiando la calidad de
los ruidos de Korotkoff, disminuyendo la calidad del ruido y haciéndose más rítmico y duro.
Por último, la arteria ya no se cierra cuando la presión del manguito es aproximadamente
igual a la presión diastólica, lo que significa que ya no está presente el factor básico que
provoca los ruidos (la sangre a través de la arteria oprimida).
El oxígeno se difunde desde los alveolos hacia la sangre pulmonar, donde se transporta
hacia los capilares de los tejidos periféricos combinado en su mayoría con hemoglobina.
Comparando el agua con la sangre, un incremento en el transporte de oxígeno de 30 a 100
veces es producido por la presencia de hemoglobina en la sangre. De igual manera el dióxido
de carbono es transportado hacia los pulmones por la sangre al generarse por la reacción del
oxígeno y los tejidos corporales, el cual se combina con sustancias químicas para aumentar el
transporte entre 15 y 20 veces.
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
25
El oxígeno se difunde desde los alvéolos hacia la sangre capilar debido a que la presión
parcial de oxígeno (PO2) es mayor en los alvéolos, en los otros tejidos se presenta una PO2
mayor en la sangre capilar que en otros los tejidos, lo que permite que el oxígeno se difunda
por las células. Por el contrario cuando el oxígeno es metabolizado en las células para formar
dióxido de carbono, la presión de dióxido de carbono (PCO2) aumenta y hace que se difunda
hacia los capilares tisulares, para así fluir hasta los pulmones.
1.3.5 LA PULSIOXIMETRÍA
invasiva que mide la SaO2 en la sangre circulante. La SaO2 y PO2 están relacionadas por la
curva de oxígeno-disociación de la hemoglobina, ver Figura (1-19). Al medir la saturación de
oxígeno estamos midiendo la cantidad de oxígeno que se encuentra combinado con la
hemoglobina, es por eso que esta es una medida relativa y no absoluta ya que no indica la
cantidad de oxígeno en sangre que llega a los tejidos, sino, qué relación hay entre la cantidad
de hemoglobina presente y la cantidad de hemoglobina combinada con oxígeno
(oxihemoglobina). Este parámetro se puede medir, y usualmente se hace por medio de un
sensado óptico, dado que la cantidad de oxihemoglobina está relacionada con la coloración
roja de la sangre, siendo esta más fuerte cuanto más oxihemoglobina contiene la sangre y más
tenue cuanto menos oxihemoglobina hay presente. La medición de la SaO2 es muy útil para
evaluar la oxigenación arterial de pacientes en los servicios ambulatorios, de tratamiento
intensivo y de emergencia. La SaO2 es especialmente útil para evaluar los resultados de la
oxígenoterapia en forma no invasiva, evitando las punciones arteriales repetidas (32).
El ciclo de marcha es definido como un intervalo entre dos sucesivas ocurrencias de uno
de los eventos repetitivos de la caminata, aunque cualquier evento podría ser definido como
ciclo de marcha, este normalmente inicia en el instante del contacto del pie con el suelo
(Contacto Inicial). Si inicia con el pie derecho, ver Figura (1-20), entonces el ciclo terminará
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
27
cuando el pie derecho hace contacto con el suelo. El pie izquierdo tiene las mismas secuencias
del pie derecho pero desfasado medio ciclo (34).
La fase de apoyo, también llamada fase de soporte o fase de contacto, va desde el contacto
inicial hasta el despegue del pie derecho. Se subdivide en cinco fases o subfases (Ver Figura
(1-20)).
La fase de balanceo corresponde al período desde el despegue del dedo del pie derecho hasta
el siguiente contacto inicial y se subdivide en tres fases o subfases (Ver Figura (1-20)).
1. Balanceo inicial BI (60-73%): esta parte corresponde, al primer tercio del período de
balanceo. Constituyen sus límites el despegue del miembro y el momento en que éste
alcanza el miembro contralateral. El avance del miembro se produce por medio de la
flexión de cadera y rodilla, asegurando una separación adecuada entre el pie y el suelo.
2. Balanceo medio BM (73-87%): La segunda parte del balanceo, comienza cuando ambos
miembros se cruzan y finaliza cuando la tibia oscilante alcanza una posición vertical, ya
sobrepasado el miembro de apoyo. La progresión del miembro a una distancia suficiente
del suelo se propicia por una dorsiflexión del tobillo, acompañada de una flexión adicional
de la cadera y extensión de la rodilla.
Los estímulos mecánicos a los que se encuentra sometido el tobillo durante la marcha
responden tanto a su posición como a la magnitud, dirección y línea de acción de la fuerza de
reacción. En el caso particular del tobillo, la importancia de estos dos últimos factores queda
patente al comparar los instantes de doble soporte, en los que las curvas de par y potencia
articular presentan valores muy diferentes pese a presentar una cinemática bastante similar
[37].
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
30
La rodilla es la articulación entre dos huesos largos (el fémur y la tibia) que constituyen
los segmentos mayores del miembro inferior, la movilidad y estabilidad de la rodilla son
factores fundamentales en el patrón normal de marcha. Durante la fase de soporte, la rodilla es
el principal determinante de la estabilidad del miembro. En la fase de balanceo, la flexibilidad
de la rodilla constituye el factor más importante para permitir el avance del miembro. El
número de músculos biarticulares involucrados en el control de la rodilla indica, a su vez, una
coordinación estrecha con la cadera y el tobillo. En la Figura (1-22) se presenta la evolución y
acciones mecánicas asociadas a la marcha en el plano sagital.
La rodilla tiene tres requerimientos funcionales durante la marcha. Dos de ellos van
asociados al apoyo: absorción del impacto de carga del miembro y estabilidad en la extensión
para asegurar el mantenimiento del peso del cuerpo. En la fase de balanceo, la rodilla tiene
que flexionar rápidamente para permitir el avance del miembro. Estas demandas condicionan
la relación entre el movimiento y la acción muscular correspondiente.
La estabilización de la masa del tronco sobre la cadera introduce una fuerte demanda de
control muscular en el período de apoyo. No obstante, existe un mecanismo de ahorro de
energía, consistente en reemplazar la acción muscular por fuerzas pasivas, una vez superada la
fase de carga del miembro. La segunda demanda muscular, necesaria para el avance del
miembro, es menos intensa, puesto que sólo afecta a la masa de éste, utilizándose, una vez
más, la cantidad de movimiento en sustitución de la acción muscular directa (37).
Capítulo 1. Redes Inalámbricas de Sensores Aplicadas a la Instrumentación Biomédica
34
Las WSN son una aplicación o servicio que se implementa sobre las redes inalámbricas,
las redes inalámbricas constituyen un sistema de comunicación de datos flexible que permite
reemplazar las redes cableadas o expandirlas. En este tipo de redes los datos se propagan en
un medio de transmisión no guiado mediante ondas electromagnéticas a través de antenas. El
uso de estas tecnologías de radiofrecuencia permite a los usuarios acceso a las redes dentro
del área de cobertura y minimiza las conexiones cableadas y las obras civiles. Las redes
inalámbricas (Figura (2-1)) se pueden clasificar según la cobertura y el ancho de banda, la
cuales se dividen en 4 grupos, que se enuncian a continuación.
35
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 36
2.1.1 WWAN
Una red inalámbrica de área amplia WWAN (Wireless Wide Area Network) es la red que
consigue el mayor alcance posible de todas las redes inalámbricas, pueden interconectar
oficinas en diferentes ciudades, países e incluso continentes. Los teléfonos móviles son un
ejemplo de aplicación de este tipo de red, específicamente las WWAN se aprovechan de la
infraestructura de red de los teléfonos móviles para proporcionar roaming de conexión de red
inalámbrica y cualquier tipo de servicio por la conexión a internet. Entre las tecnologías que
ofrecen WWAN, las generaciones más importantes son las siguientes:
2.5G – Servicio de paquetes por Radio General GPRS (General Packet Radio
Services).
2.1.2 WMAN
2.1.3 WLAN
Una red inalámbrica de área local WLAN (Wireless Local Area Network) es una red que
conecta computadores y otros dispositivos dentro de una cobertura definida por el estándar,
La mayoría de las LAN conectan terminales de trabajo, computadores personales y permiten a
los usuarios acceder a datos y dispositivos (por ejemplo, impresoras y módems) en cualquier
parte de la red. Las tecnologías que forman parte de la WLAN son HomeRF, HiperLAN
(High Performance LAN) y Wi-fi (Wireless-Fidelity), esta última cumple con el estándar
802.11 y permite crear redes de área local inalámbricas que admiten computadores portátiles,
asistentes digitales personales PDA (Personal Digital Assitant) o cualquier otro tipo de
dispositivo con propiedades de esta conexión a de tasas 11 Mbps o superior, dentro de un
radio de 20 a 50 metros en ambientes cerrados, y de cientos de metros al aire libre (38).
2.1.4 WPAN
Una red inalámbrica de área personal WPAN (Wireless Personal Area Network) maneja
una cubertura entre 10 a 300 metros entre dispositivos, normalmente usadas para conectar
varios dispositivos portátiles personales que no requiere de altos índices de velocidad de
transmisión de datos. Las bajas tasas de datos a transmitir entre los dispositivos dan como
resultado un bajo consumo de potencia, lo cual hace a la tecnología WPAN adecuada para el
uso en redes de sensores (39). En el apartado 2.3 se definen varios estándares que determinan
diferentes esquemas y aspectos de este tipo de redes que son la base para la implementación
de WSNs.
Las redes móviles e inalámbricas como las descritas anteriormente, requieren de una
infraestructura física preestablecida y de mecanismos centralizados para efectuar parte de sus
operaciones y procesos de comunicación. Estas utilizan puntos de acceso predeterminados
para permitir que sus usuarios móviles se puedan interconectar a la red principal y obtener así
los servicios que requieren (40), por lo cual se ha trabajado en un modelo de integración de
capas de aplicación y servicios buscando la integración, el cual se denomina modelo de
referencia OSI. Esta necesidad de integración comenzó entre 1975 y 1980, debido que gran
variedad de empresas tomaron la iniciativa de usar tecnologías de conexión para las
comunicaciones. La Organización Internacional para la Estandarización ISO (International
Organization for Standardization) buscando enfrentar la incompatibilidad entre redes,
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 38
consultó los modelos de conexión que habían hasta el momento, entre ellos la red DECNet
(Digital Equipment Corporation) y la Arquitectura de Sistemas de Red SNA (System
Network Architecture), con el fin de encontrar un conjunto de reglas aplicables de forma
general a todas las redes. En 1979, la ISO definió un esquema de funciones de
comunicaciones para el intercambio de información entre sistemas de computadores llamado
modelo de referencia de interconexión de sistemas abiertos OSI (Open Systems
Interconection). El modelo OSI provee un conjunto detallado de estándares que describen una
red, aunque no puede ser considerado una arquitectura, ya que no especifica el protocolo que
debe ser usado en cada capa. El modelo de referencia OSI está dividido en siete capas (Figura
(2-2)).
Aplicación CAPA 7
Presentación CAPA 6
Sesión CAPA 5
Transporte CAPA 4
Red CAPA 3
Física CAPA 1
El modelo OSI además de definir las capas describe de forma general su funcionalidad en
cuanto al procesamiento de datos y servicios, a continuación se describe:
Capa de transporte: provee un canal para enviar mensajes entre dos procesos que
se comunican.
Los estándares que definen comunicaciones inalámbricas están basados en el modelo OSI,
organizados en capas adyacentes con funciones especiales para el traspaso de información y
con una referencia jerárquica. Cada capa consta de dos partes: (1) definición de un servicio,
donde se define la función que provee la capa y (2) especificación del protocolo, donde se
especifica cómo la capa provee un servicio.
continuación se describen los temas de trabajo de cada grupo de tarea de las WPANs, que han
dado la viabilidad al desarrollo de estas redes y exploran el futuro de esta tecnología.
Grupo de trabajo
WPAN
802.15
La capa de audio: es una capa especial, usada sólo para enviar audio sobre
Bluetooth. Las transmisiones de audio pueden ser ejecutadas entre una o más
unidades usando muchos modelos diferentes. Los datos de audio no pasan a través
de la capa L2CAP, pero sí directamente después de abrir un enlace y un
establecimiento directo entre dos unidades Bluetooth (43).
Protocolos Específicos:
El grupo de tarea 802.15.2 no define una red, sino que estudia los posibles problemas
derivados de la coexistencia de WPANs (802.15) con redes inalámbricas WLANs (802.11).
La gran mayoría de redes inalámbricas de área local y redes de área personales funcionan
sobre las mismas bandas de frecuencias, las cuales han sido determinadas para aplicaciones
industriales, científicas y médicas, produciéndose una interferencia mutua entre los sistemas
inalámbricos. Existen varios factores que afectan el nivel de interferencia, como la separación
entre un dispositivo WPAN y un WLAN, la cantidad de tráfico de datos que fluye a través de
cada una de las dos redes, los niveles de potencia de ambos dispositivos y la tasa de datos de
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 45
la WLAN. Además de esto, los diferentes tipos de información enviados a través de las redes
inalámbricas, tienen diferentes niveles de sensibilidad a las interferencias (45).
Este grupo recomienda varios mecanismos de coexistencia que pueden ser usados para
facilitar la coexistencia entre WPANS y WLANS, los mecanismos de coexistencia pueden ser
colaborativos o no colaborativos. Los mecanismos colaborativos pueden ser usados cuando
existe un enlace entre una WPAN y una WLAN, este es el mejor mecanismo a usar cuando
ambos dispositivos WPAN y WLAN están embebidos en el mismo equipo, (por ejemplo una
tarjeta IEEE 802.11b y un módulo IEEE 802.15.1 embebidos en un computador portátil). Los
mecanismos de coexistencia no colaborativos no requieren ningún enlace de comunicación
entre la WPAN y la WLAN.
El estándar IEEE 802.15.3 surgió de la necesidad de formar WPANs que fueran capaces
de transmitir datos de manera rápida y eficiente. Con esto la IEEE autoriza en diciembre de
1999 la creación del grupo de tarea IEEE 802.15.3 quien fue el encargado de publicar en
Agosto de 2003 el primer borrador del estándar, en el que se especifican los requerimientos en
la capa física (PHY) y para el control de acceso a medios (MAC) (46).
El grupo de tarea IEEE 802.15.3a derivado del IEEE 802.15.3, estableció metas enfocadas
al bajo consumo de energía y bajos costos para asegurar que las WPAN se lograran
implementar con tecnología CMOS, de igual manera se definen tasas de transmisión de datos
de 110 a 480 Mbps buscando la conectividad con el bus universal serial USB (Universal
Serial Bus) de manera inalámbrica. Este estándar permitirá un amplio rango de transmisión
para aplicaciones en multimedia, en aplicaciones como: transferencia de video digital de alta
velocidad desde una cámara a un dispositivo de televisión, sistemas de teatro en casa,
conexiones de un PC a un proyector o juegos de video, transferencia de datos de
reproductores de mp3, impresoras, celulares y cámaras digitales a un computador.
Actualmente el grupo se encuentra cerrado por la incertidumbre y reglamentación en el
mercado mundial, dejando la posibilidad de reabrirse en 1 o 2 años, lo cual se dará sólo si la
tecnología demuestra ser comercialmente viable (47).
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 46
IEEE 802.15.4 es un estándar que define características de la capa física PHY y de control
de acceso al medio MAC para redes con tasas bajas de transmisión de datos, para aplicación
en dispositivos portables. El propósito del estándar es definir los niveles de red básicos para
dar servicio a un tipo específico de WPAN, que se centra en la habilitación de comunicación
entre dispositivos de bajo costo y baja velocidad, siendo aspectos muy importantes para el
desarrollo de WSNs (46).
Esta norma fue aprobada en el año 2003 y se publicó en octubre del mismo año, al
completar la tarea de publicación del estándar, el grupo de tarea se deja en un modo de
―hibernación‖, esta es la forma en que la IEEE dice que un grupo no tiene trabajos de
desarrollo actualmente. Sin embargo la labor en el estudio de las bajas tasas de datos en
WPANs no se detiene. A partir de éste estándar se crean inicialmente dos grupos de tarea
802.15.4a y 802.15.4b, y actualmente hay grupos de tarea hasta el 802.15.4g (48), que
describen a continuación:
IEEE 802.15.4c: Este grupo se encarga de las mejoras en capa física del estándar
802.15.4-2006 y 802.15.4a-2007, se determinó la banda de 779-787MHz la cual
podría ser considerada para el uso con 802.15.4., se logro un acuerdo con el
estándar de WPANs para China para definir la modulación múltiple por
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 47
IEEE 802.15.4e: El grupo se crea para definir una mejora en la capa MAC del
estándar 802.15.4-2006. La intención es mejorar y añadir funcionalidad a esta
capa, mejorando el soporte a los mercados industriales, permitir la compatibilidad
con lo propuesto en el estándar para WPAN en China. Esta mejora permitirá la
implementación de aplicaciones en: Automatización industrial, control de
sensores, monitores médicos y audio entre otros (48).
IEEE 802.15.4f: Durante julio del 2009 el grupo tuvo propuestas para la
operación de la capa física en frecuencias de 433MHz, 2.4GHz y frecuencias
microondas. El grupo propuso durante Septiembre del 2009, mejoras en la capa
física para aplicaciones en sistemas de comunicación bidireccional para Activos
de RFID (Radio Frequency Identification) (48).
Este grupo de trabajo está encargado de determinar los mecanismos necesarios que deben
estar presentes en las capas PHY y MAC para habilitar la interoperabilidad y estabilidad en
redes inalámbricas en malla. La topología en malla de una WPAN cuenta con dos formas de
conexión de dispositivos: (1) en la topología en malla completa cada nodo está conectado
directamente a cada uno de los otros que conforman la red, (2) en una topología en malla
parcial algunos nodos están conectados a todos los demás que confirman la red, pero algunos
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 48
de estos nodos se conectan con otros con los cuales intercambian la mayoría de datos (49).
Algunas de las características de una topología en malla son:
En la aplicación de implante al interior del ojo o en un lente, debe contar con una calidad
de imagen a no menos de 2Mbps, además de ampliación de imágenes en áreas específicas,
permitiendo la transmisión de altas tasas de datos en un reducido tamaño (50). Esta área de
trabajo continúa en investigación porque requiere un ancho de banda muy amplio y no se ha
definido la frecuencia de trabajo.
El grupo de tarea de comunicación de luz visible IEEE 802.15.7 definirá un estándar para
la PHY y MAC en comunicaciones de luz visible VLC (Visible Light Communications). El
espectro visible se extiende desde 380 a 780 nm de longitud de onda. El estándar es capaz de
entregar datos a velocidades suficientes para cubrir aplicaciones multimedia como audio y
video. El propósito de este estándar es proporcionar un estándar global para comunicaciones
ópticas inalámbricas de corto alcance mediante luz visible. Las principales ventajas de usar
esta banda de frecuencia son: (1) es libre de regulación, (2) alta inmunidad a interferencias,
(3) comunicación por medio de fuentes de luz. Las aplicaciones potenciales de esta tecnología
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 50
Después de definir las redes inalámbricas en detalle se continúa con una revisión de
antecedentes y normativa de la aplicación de las redes inalámbricas en el ambiente médico, en
donde una de las principales preocupaciones ha sido los efectos de la interferencia
electromagnética (EMI) desde los dispositivos de comunicación inalámbrica sobre los
dispositivos médicos, especialmente sobre los equipos de soporte vital. En 1994 se realizó una
prueba de susceptibilidad de la radiofrecuencia sobre los equipos médicos, llevada a cabo por
la oficina de dispositivos médicos en Canadá, algunos equipos médicos como ventiladores,
bombas de infusión, desfibriladores, monitores de ECG y fetales fueron susceptibles a la EMI,
El estudio sugiere tener cuidado con radios VHF, radios UHF y teléfonos celulares en un
metro de distancia a estos dispositivos (51). En 1997, la agencia regulatoria de productos de
la salud y medicina (MHRA) en Inglaterra llevo a cabo una prueba de EMI sobre dispositivos
médicos usando diferentes dispositivos de comunicación móvil como teléfonos análogos,
sistemas globales para comunicaciones móviles (GSM), redes de comunicación personal
(PCN) y radios de doble vía, los resultados finales mostraron que las maquina de anestesia,
respiradores, marcapasos externos, monitores de ECG, desfibriladores, bombas de infusión y
ventiladores fueron altamente sensibles a la EMI (52). En 1999, un estudio se llevó a cabo
sobre los efectos del EMI debido a los walkie-talkies, GSM 900 y sistemas de celulares
digitales (DCS 1800) sobre marcapasos externos mostrando en algunos casos inhibición de
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 51
los marcapasos y estimulación asincrónica (53). En 2004, hubo un estudio de EMI sobre las
bombas de infusión desde teléfonos móviles GSM, los resultados muestran que las bombas de
infusión y de inyección fueron paradas, lo cual disparó una alarma debido al EMI desde GSM
900 y PCS 1800 (54). Esto también ha pasado con ciertos equipos médicos como monitores
fetales, bombas de infusión, bombas de inyección, monitores de ECG, marcapasos externos,
respiradores, maquinas de anestesia y desfibriladores, los cuales son altamente sensibles a las
comunicaciones móviles como teléfonos celulares digitales y análogos y radios de doble vía
(51) (52) (53) (54).
Hoy en día, los nuevos equipos deben cumplir requisitos de inmunidad como se indica en
los estándares de EMI, por ejemplo IEC 60601-1-2:2001, donde los niveles de prueba a la
inmunidad han sido incrementados a 3 V/m y 10 V/m para dispositivos de soporte no vital y
vital respectivamente, con el fin de brindar mayor protección a los dispositivos médicos en
contra de la EMI de los dispositivos inalámbricos. La prueba de frecuencias ha sido extendido
hasta 2.5 GHz para proporcionar una inmunidad mayor en los equipos existentes de
comunicaciones inalámbricas. Sin embargo, el método de prueba a la inmunidad de EMI debe
ser detallado en el manual de instrucciones del equipo. Considerando que el riesgo de
sistemas WLAN y WPAN es relativamente bajo por el limitado rango de potencia de
transmisión y la mejora actual en el diseño de los equipos médicos en cuanto a la
compatibilidad electromagnética (EMC) y hace que sean más inmune a la EMI. Las WLAN
se han convertido en una de las tecnologías más confiables para instalación en hospitales en
los últimos años y las WPAN como un tema de investigación reciente. Varios estudios
sugieren que los sistemas de WLAN y WPAN sean usados en diferentes aplicaciones médicas
para mejorar la eficiencia del cuidado de la salud de los pacientes en el hospital (Ver Capítulo
1).
investigación en el ámbito médico, debido a que IEEE 802.11 y ZigBee (IEEE 802.15.4)
comparte la misma banda en 2.4 GHz y los dispositivos que se evaluan en este trabajo no
superan los 3 mW de potencia de transmisión.
Por otro lado, las entidades reguladoras de dispositivos médicos a nivel mundial viendo el
incremento de la integración de comunicación inalámbrica en los dispositivos médicos como
fuentes de EMI, y siendo concientes de las importantes propuestas que generan las redes
inalámbricas en el ambiente médico, han desarrollado una serie de guias integrales para el
adecuado diseño de esta clase de equipos. La FDA (Food and Drug Administration of US)
afirma que es más confiable usar un cable que una comunicación inalámbrica en el ambiente
médico, y que es crítico pasar información inalámbrica a través de los equipos médicos, por lo
cual debe ser robusta y previene sobre varias preocupaciones al respecto como:
Teléfonos celulares.
Calidad del servicio inalámbrico: si bien la calidad del servicio de las redes
celulares puede ser aceptable para la comunicación de voz, no puede ser suficiente
para las funciones médicas. Eventos como conexiones perdidas sin previo aviso,
la falla al establecer conexiones, o incluso una ligera degradación de los servicios
pueden tener graves consecuencias, especialmente para:
que puede ser más fácil para el espionaje no autorizado sobre los datos del
paciente o producirse acceso no autorizado a redes de hospitales.
De igual manera la FDA en su página web propone tener en cuenta aspectos como:
gestión de riesgos para los dispositivos médicos inalámbricos de RF, conceptos generales
diseño y desarrollo, diseño y verificación de desarrollo, diseño y validación de desarrollo,
etiquetado, compras, controles y actividades de aceptación, acciones correctivas y
preventivas, y servicios (56).
Después de revisar las redes inalámbricas y su efecto sobre el ambiente médico, este
trabajo presenta una propuesta de red sensores biomédicos inalámbricos sobre tecnólogia
ZigBee, pero primero se hará una comparación que llevó a la selección de esta alternativa. La
tecnología ZigBee usa la globalmente disponible banda de frecuencia de 2.4 GHz. Este
habilita las aplicaciones inalámbricas usando un conjunto estandarizado de protocolos de
comunicaciones de alto nivel, con bajo consumo de los radios basados en el estándar IEEE
802.15.4 para redes de área personal inalámbrica.
ZigBee cuenta con las siguientes características: (1) es un protocolo de bajo costo, (2) bajo
consumo de energía, (3) permite comunicación full dúplex y, (4) es un estándar de
comunicación inalámbrica basado en el modelo OSI (21). Pero más allá de eso es una
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 57
Nodos 65536 7 32
Navegar por
Control remoto,
Wireless USB, Internet, redes de
productos
Aplicaciones móviles, computadores,
dependientes de la
informática casera. transferencia de
batería, sensores.
archivos.
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 58
ZigBee tiene como objetivo obtener velocidades bajas, entre una tasa de 20 a 250 Kbps en
una distancia de hasta 400 metros con línea de vista y amplificación de potencia, permitiendo
que algunos dispositivos alimentados con dos pilas AA puedan durar 2 años sin el cambio de
baterías. Estos dispositivos pasan la mayor parte del tiempo en un estado latente, es decir,
durmiendo para consumir mucho menos potencia, además poseen la capacidad de operar en
redes de gran densidad, esta característica ayuda a aumentar la confiabilidad de la
comunicación, ya que entre más nodos existan dentro de una red, entonces, mayor número de
rutas alternas existirán para garantizar que un paquete llegue a su destino.
IEEE 802.15.4 define un robusto radio con capas PHY (física) y MAC (control de acceso
medio). ZigBee define la red, seguridad y un marco de aplicación para un sistema basado en
la IEEE 802.15.4. Una red ZigBee puede soportar más de 64000 nodos dependientes de un
único coordinador, pero, a la vez, se pueden combinar varios coordinadores de forma que
pueden llegar a formarse redes muy extensas. Cuenta con diversas topologías, pero la red
malla de ZigBee conecta y controla sensores sin estar siendo restringida por distancia o
limitaciones de rangos. La red malla de ZigBee permite a todos los dispositivos participantes
comunicarse del uno al otro, y actuar como repetidores transfiriendo datos entre dispositivos.
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 59
La Alianza ZigBee tiene como misión ser una asociación de compañías trabajando para
lograr confiabilidad, bajo costo, bajo consumo de potencia, conectividad inalámbrica en red,
productos de control y monitoreo basado en un estándar global abierto. La alianza cuenta con
gran cantidad de miembros dentro de las categorías como promotor, participante y adoptante,
donde se encuentran compañías que proveen desde chips semiconductores para radio, equipos
terminados, servicios, soporte, herramientas y pruebas entre otros (57).
El perfil ZigBee Health Care ofrece un estándar global y abierto para dispositivos
inalámbricos interoperables de bajo consumo, que permiten la monitorización y gestión
segura de los servicios sanitarios no críticos de poca agudeza destinados a la gestión de
enfermedades crónicas, el cuidado de pancientes de la tercera edad, el bienestar y tratamiento
de pacientes hospitalizados y evaluaciones. Es compatible con miles de dispositivos de una
red única y ofrece soporte total para dispositivos IEEE 11073 (ver la Figura (2.9)),
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 61
convirtiendo todos los dispositivos en aptos para la certificación de FDA. Los productos de
ZigBee Health Care son idóneos para su uso en hogares, gimnasios, comunidades de tercera
edad, residencias y otras instalaciones de asistencia médica. El estándar satisface los diversos
requisitos de consumidores, proveedores de servicios, proveedores de asistencia sanitaria y
fabricantes de productos.
Larga vida de las baterías desde baterías de bajo costo tipo moneda para
dispositivos vestibles.
Total soporte para perfiles especializados de dispositivos IEEE 11073, por medio
de un protocolo de intercambio de información IEEE Std 11073-20601 y
dispositivos especializados de las series IEEE Std 11073-104zz (ver la Figura
2.9).
Los datos de salud pueden ser conectados con sistemas de telemedicina por medio de
ZigBee usando el protocolo de cluster o servicio 11073 y ZigBee adiciona la capa física, el
descubrimiento de dispositivos y la seguridad entre otros, ZigBee además puede proveer
funcionalidades relacionadas como identificación, ubicación y voz sobre ZigBee. Cuenta con
una fuerte seguridad cuando se necesite, definida como AlphaSec, que especifica dos clusters
o servicios, ASKE para la seguridad en las conexiones y ASAC para controlar los permisos y
perfiles de acceso a los datos (ver la Figura (2-10)).
En junio de 2009, Continua Health Alliance, la coalición sin ánimo de lucro líder de las
compañías principales de asistencia sanitaria y tecnología de la industria, respaldó ZigBee
Health Care como el estándar para redes de área local (LAN) de bajo consumo de Continua.
Continua recomienda ZigBee Health Care para detectar y controlar dentro de los entornos
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 63
profesionales y hogares, puesto que ofrece una conectividad inalámbrica segura, robusta y con
una duración de la batería eficiente para la monitorización de la actividad del paciente y las
instalaciones, al mismo tiempo que ofrece libertad de funcionamiento inalámbrico fuera de los
edificios. Además, ZigBee es una tecnología probada de bajo consumo que coexiste con otras
tecnologías inalámbricas, incluida la Wi-Fi. A continuación se presnta la arquitectura de
Continua con la integración de ZigBee (ver la Figura (2-11)).
Después de justificar la selección del ZigBee, se inicia con la definión del estándar IEEE
802.15.4, el cual fue desarrollado para WPANs y se basa en el modelo de referencia OSI en
sus dos primeras capas. Las WPANs transmiten información sobre distancias relativamente
cortas entre los dispositivos que conforman la red. La comunicación en la red está basada en
diferentes capas, cada una se comunica a través de una interfaz de datos y otra de control, las
superiores solicitan servicios (paquetes de datos) a las capas inferiores, y éstas reportan sus
resultados a las superiores. El estándar IEEE 802.15.4 específica funciones de la capa física y
sus interacciones con la capa enlace de datos, además define los requerimientos mínimos de
hardware, como la sensibilidad del receptor y la potencia de salida en el transmisor (58).
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 64
Existen dos tipos de dispositivos en una red IEEE 802.15.4: dispositivos de funcionalidad
completa FFD (Full Function Device) y dispositivos de funcionalidad reducida RFD (Reduce
Function Device) (Figura (2-12)).
Este dispositivo no
tiene comunicación
directa con el
coordinador PAN
RFD
FFD
Los dispositivos RFD
Coordinador PAN(FFD) son incapaces de
retransmitir los
paquetes de datos
En una topología en estrella todos los nodos están conectados a un mismo punto central el
cual administra el tráfico de la red. Este punto central puede ser un nodo dedicado a esta
función o un dispositivo especial llamado coordinador PAN (Figura (2-13)). Un dispositivo
generalmente está asociado a alguna aplicación y es el punto inicial o final de una
comunicación en red. Un coordinador PAN también puede tener una aplicación específica,
pero este se usa para iniciar, terminar o encaminar la ruta de comunicación a través de una red
(60).
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 66
Topología Estrella
FFD
Coordinador PAN RFD
Flujo de comunicación
La implementación de una red en estrella limita el número de nodos que pueden estar
conectados a la red. A menudo el coordinador PAN tiene su fuente de alimentación fija
mientras que los dispositivos RFD se alimentan de baterías, lo cual se presta para aplicaciones
que benefician la topología estrella tales como automatización del hogar, computadores
personales, periféricos, video juegos y monitoreo de pacientes.
resultados de ese trabajo a otra entidad de la red. En la topología peer to peer, cada dispositivo
es capaz de comunicarse con otro dispositivo que se encuentre dentro de un rango de
influencia. Un dispositivo es denominado coordinador PAN, por ejemplo, por haber sido el
primer dispositivo en comunicarse en el canal.
Coordinador
PAN
FFD
RFD
Flujo de comunicación
En el caso de la Figura (2-14), cualquiera de los dispositivos FFD puede actuar como
coordinador y proveer servicios de sincronización a los otros dispositivos o coordinadores
presentes en la red. Sólo uno de los coordinadores de la red puede ser llamado el coordinador
PAN universal, el cual cuanta con mayores recursos computacionales que los demás
dispositivos en la PAN. El primer coordinador PAN forma la primera rama de la topología
árbol selecciona un identificador de la red, y difunde balizas (beacons) a los dispositivos
vecinos. Las balizas son elementos que se usan para sincronizar todos los dispositivos que
conforman la red (60). El dispositivo que recibirá el beacon puede solicitar al coordinador
PAN unirse a la red. Si el coordinador PAN permite que el dispositivo ingrese a la red, este lo
adiciona como un dispositivo ―hijo‖ en la red, entonces el dispositivo recientemente agregado,
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 68
Cualquier dispositivo que desee unirse a una red durante el proceso de acceso de
contención CAP (Contention Access Period), que es el tiempo transcurrido durante la
transmisión del beacon de los dispositivos que competirán por transmitir dentro de la red,
deben usar el mecanismo de múltiple portadora con detección de colisiones CSMA para
realizar dicha transmisión. CSMA es un método simple para permitir a múltiples dispositivos
usar la misma frecuencia de canal como medio de comunicación. El mecanismo de acceso al
canal usado es el acceso por detección de múltiple portadora con detección de colisiones
CSMA-CA (Carrier Sense Multiple with Colission Avoidance). En CSMA-CA siempre que
un dispositivo quiera realizar una transmisión, el dispositivo debe revisar el canal de
evaluación CCA (Clear Channel Assesment) para asegurarse que el canal no está siendo
usado por otro dispositivo, si detecta el canal como no ocupado, el dispositivo inicia la
transmisión de su propia señal. La decisión de declarar el canal ocupado o no puede basarse
en medidas de la energía espectral en el canal de frecuencia de interés, o detectando el tipo de
señal que ocupa el canal (7).
El estándar IEEE 802.15.4 define la capa física PHY y de enlace de datos (Figura (2-15)).
La capa física define funciones e interacciones con la capa MAC, tales como: Asignación de
frecuencias, detección de energía, detección de portadora, e indicador de calidad de enlace. En
la capa de enlace de datos se definen 3 subcapas: subcapa de control lógico de enlace LLC
(Logical Link Control), subcapa de servicios de convergencia específicos SSCS (Service
Specific Convergence Sublayer), y subcapa del control de acceso al medio MAC (Medium
Access Control). Las capas superiores son aplicaciones que se desarrollan sobre el estándar
IEEE 802.15.4, estas son: (1) la capa de red, la cual provee la configuración de la red,
manipulación y ruta de los paquetes de datos, (2) la capa de aplicación, la cual provee
funciones específicas destinadas al dispositivo. Estas funciones pueden estar definidas en
perfiles según lo requiera cada aplicación. ZigBee es una aplicación de IEEE 802.15.4 que fue
desarrollado de forma independientemente. Con el IEEE 802.15.4 es posible formar redes
inalámbricas de corto alcance sin implementar las capas específicas de ZigBee, en este caso el
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 69
usuario desarrolla su propia capa de aplicación en la parte superior de las capas PHY y MAC.
Esta personalización de capas, es normalmente más simple que las capas del protocolo (59).
Capas Superiores
802.2 LLC
SSCS
Subcapa MAC
FISICA
Medios, Señales y transmisión
Radio Transceptor
La capa física provee dos servicios: servicio de datos y punto de acceso al servicio de
gestión de datos de la capa física PLME-SAP (Physical Layer Management Entity). El
servicio de datos habilita la transmisión y recepción del protocolo de datos de la capa física
PPDUS (PHY Protocol Data Units) (Figura (2-16)).
MAC
PD-SAP PLME-SAP
PHY
El estándar maneja dos técnicas diferentes de modulación: (1) manejo por desplazamiento
de fase binaria BPSK (Binary Phase Shifting Keying) con el cual se puede tener dos fases de
salida para una sola frecuencia portadora, una fase de salida representa un ―1‖ lógico y la otra
un ―0‖ lógico y (2) manejo por desplazamiento de fase en cuadratura compensada O-QPSK
(Offsset-Quadrature Phase Shifting keying), con el cual se pueden tener 4 fases de salida para
una sola frecuencia de portadora (60), ambos son usados con métodos de secuencia directa de
espectro extendido (DSS), ver la Tabla (2-2).
11 a 26 Reservado
11 a 26 Reservado
Las frecuencias de los canales están definidas por la combinación de canales y páginas de
canales. La definición de página de canales es un concepto introducido por el IEEE 802.15.4
en el 2006, para distinguir las frecuencias de canales que soporta la capa PHY. En versiones
anteriores del estándar IEEE 802.15.4-2006 como la versión inicial del año 2003, la
frecuencia de canales estaba identificada simplemente por el número de canales (60). En la
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 71
versión inicial del estándar IEEE 802.15.4 - 2003 (4), no había una disposición para más de
27 canales y por tanto la aplicación de múltiples bandas de frecuencias no fue desarrollada.
Cada página de canal puede tener un máximo de 27 canales. La Tabla (2-1) muestra la
asignación de canales en el estándar IEEE 802.15.4. Las páginas de canales 0 a 2 se usan
actualmente para las bandas de 868/915 MHz y 2.4GHz. La página del canal 3 a 31 está
reservada para futuros usos. Cada canal se identifica con un número. En las primeras 3
páginas se asigna la frecuencia de 868 MHz al canal 0, el cual tiene su frecuencia central en
868.3MHz. La frecuencia central de los canales en la banda de 915MHz puede ser calculada
con la siguiente ecuación (4).
Cuando un dispositivo está dispuesto para enviar un mensaje, primero entra a modo de
recepción para detectar el nivel de energía dependiendo del canal seleccionado. Esta tarea se
conoce como detección de energía ED (Energy Detection). En el modo ED, el receptor no
intenta detectar el tipo de señal; sólo se estima el nivel de energía. En otras palabras, si una
señal está ocupando la banda de frecuencia que se desea usar, la ED no revela si es una señal
compatible con IEEE 802.15.4 o no. Así el procedimiento de detección de energía no sería
capaz de identificar señales con niveles de energía cerca al nivel de sensibilidad del receptor.
La sensibilidad del receptor es el nivel más bajo de energía que podría detectar el receptor. El
estándar IEEE 802.15.4 tiene una tolerancia de 10dB entre el nivel de sensibilidad del
receptor y el requerido para la detección de energía, por ejemplo, si el nivel de energía del
receptor es de -85dBm, la detección de energía debe estar habilitada para detectar y medir
señales de energía de hasta -75dBm. El nivel de detección de energía debe ser de al menos
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 72
40dB, así si se toman los datos del ejemplo anterior, debería detectar señales del orden de -
45dBm. Luego de la solicitud realizada por la capa PHY hacia la capa MAC, esta devuelve un
número entero de 8 bits, el cual indica el nivel de energía en el canal de frecuencia en el que
se realizará el envío del mensaje (50).
El indicador de calidad del enlace LQI (Link Quality Indicator), proporciona información
de la calidad del paquete de datos que llega al receptor. La energía de la señal recibida, puede
ser usada como medida de calidad de la señal. Una mayor relación señal a ruido SNR (Signal
Noise Rate) se traduce en menos posibilidades de error en el paquete, por lo tanto una señal
con un SNR alto se considera una señal de alta calidad. El LQI es reportado a la capa MAC y
está a disposición de las capas de red (NWK) y aplicación (APL) para cualquier tipo de
análisis. El LQI es sólo uno de los factores que influye en la selección de la ruta para llevar el
mensaje. Otro factor como el enrutamiento a mayor eficiencia de energía, puede influir en la
selección de la vía en que irá el mensaje (50).
Los datos necesarios para ser transmitidos deben suministrados por medio de un paquete
de datos unitarios de la capa MAC (MPDU). La MAC genera la petición para la transmisión y
provee el MPDU. Los reportes de trasmisiones ya sean fallidas o no, son entregados de la
capa PHY a la capa MAC, las razones para una transmisión fallida pueden ser:
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 73
Cuando el dato es recibido por el transceptor, la capa física notifica a la capa MAC la
llegada de un MDPU. La capa física no sólo provee el mensaje a ser transmitido a la capa
MAC, sino la información de LQI. En la Figura (2-17) se pueden observar los pasos para la
transferencia de datos de la capa de aplicación de un dispositivo a otro.
Los datos no siempre vienen de la capa de aplicación, ya que pueden ser generados por la
capa MAC sin comprometer las capas superiores. En el caso mostrado en la Figura (2-17), el
dato es suministrado por el propio dispositivo de la aplicación ZDO (ZigBee Device Object) o
un objeto de aplicación de la sub-capa de aplicación (APS).
Fuente Destino
de la capa física (PPDU), el cual será transmitido por el radio transceptor. En el lado del
receptor el dato pasa hacia arriba de una capa a otra y el encabezado que adiciona cada capa
es removido hasta que el dato llega a su capa de destino (50).
El formato del paquete (Figura (2-18)) en la capa física (PPDU) consta de tres
componentes: el encabezado de sincronización SHR (Synchronization Header), el encabezado
de la capa física PHR (Physical Header) y la carga útil de la capa física.
Trama MAC
La capa MAC provee la interfaz entre la capa PHY y las superiores. Las características de
la capa MAC IEEE 802.15.4 son: la asociación y la disociación de dispositivos,
reconocimientos de entrega de trama, mecanismos de acceso al canal, validación de trama,
garantía del manejo de intervalos de tiempo. Por debajo de la capa de aplicación la capa
MAC provee tres interfaces para la aplicación (Figura (2-19)):
Aplicación
Cabecera de la trama
Transceptor modem RF
Dado que la capa física se encarga de enviar los bits que forman los paquetes sin conocer
su formato, es tarea de la capa MAC crear y detectar los indicadores de inicio y fin de un
paquete de datos. En algunos casos, puede ser que un paquete de datos se pierda por ruido y la
capa MAC en el nodo transmisor tenga que retransmitir el paquete. Estas retransmisiones
pueden hacer que se dupliquen paquetes en el receptor. Por ejemplo, si se pierde la
confirmación de paquete desde el receptor, el nodo transmisor interpreta que el paquete no
llegó a destino cuando efectivamente lo ha hecho y realiza una retransmisión del mismo. Esta
capa debe encargarse de solucionar estos problemas de daño, pérdida o duplicidad de
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 76
En la Figura (2-20) se muestra el evento en el cual los datos son recibidos exitosamente
por el receptor, a su vez éste envía una notificación al transmisor antes que ocurra el tiempo
de Time Out, la cual también llega exitosa al dispositivo que originó el mensaje, donde
también debe llegar en forma satisfactoria al transmisor del mensaje, si todo esto sucede se
envía una confirmación (Acuse de recibo) notificando que la transmisión fue exitosa.
MAC MAC
Origen Destino
Petición
Dato
Indicador
ACUSE DE RECIBO
Confirmación
En este caso de la Figura (2-21), el mensaje originado no llega a destino, por lo cual se
espera el tiempo de Time out y después de este se vuelve a transmitir el mensaje. Después de
un número determinado de retransmisiones, se envía una confirmación de que la transmisión
ha fallado.
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 77
MAC MAC
Origen Destino
Petición
Dato
Confirmación
Para el caso de la Figura (2-22), el destino recibe el dato en forma exitosa pero el acuse de
recibo se pierde. El dispositivo que originó el mensaje, al igual que el caso anterior espera el
tiempo de Time out y repite un número determinado de retransmisiones y envía una
confirmación de mensaje fallido.
MAC MAC
Origen Destino
Petición
Dato
Indicador
Acuse de recibo
Confirmación
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 78
Todos estos eventos son los que la capa MAC debe proveer, por lo cual estas son las
primitivas con las cuales se comunicara con las capas superiores. Estas primitivas difieren,
dependiendo del servicio que se quiera proveer. La capa MAC provee interfaces que hacen
posible la formación de topologías con esquemas diversos, como son estrella y punto a punto.
Para lo cual la capa MAC habilita a las capas superiores el control del campo de
direccionamiento en el paquete a ser transmitido, con lo cual se logra la creación de redes tan
complejas como las ad-hoc. El direccionamiento que usa este estándar es el direccionamiento
IEEE de 64-bit y un mecanismo de direccionamiento más corto de 16-bit para asociación.
Existen 2 primitivas que proveen información para la administración de una red de área
personal (Figura (2-23)), estas primitivas son:
Existen 4 formas para escanear los canales, las cuales pueden ser iniciadas por el MLME-
SCAN (Figura (2-25)).
Barrido por detección de energía: en este modo se mide la energía de cada uno de
los canales, donde el MLME ejecuta el barrido mediante la primitiva PLMD-
ED.request.
Después de un barrido pasivo o activo exitoso, el dispositivo de red puede usar primitiva
de asociación (MLME.ASSOCIATE.request) (Figura (2-26)) hacia el coordinador
encontrado. El coordinador PAN puede aceptar o rechazar una petición de asociación
mediante MLME.ASSOCIATE.response con los parámetros apropiados. Una vez que el
association request llega al coordinador PAN este envía un acknowledgment sólo para
reportar que el paquete llego bien. Luego de esto el coordinador PAN debe determinar si este
posee los recursos para aceptar a otro dispositivo, el coordinador tienen un tiempo máximo en
el cual debe responder (aMaxAssociationPeriod). El proceso de desasociación puede ser
terminado por la primitiva MLME.DISASSOCIATE.
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 81
Esta primitiva (MLME-GTS) sólo puede ser usada por el coordinador PAN, la cual
permite implementar un GTS (Guaranteed Time Slots). Cabe destacar que en una red donde
se implementa GTS no es necesario usar CSMA-CA para acceder a la red (Figura (2-27)).
Cuando un dispositivo pierde contacto con su coordinador PAN este puede utilizar la
primitiva MLME-SCAN, ahora el coordinador PAN utiliza la directiva MLME-ORPHAN
para incorporar nuevamente al dispositivo a su red (Figura (2-28)).
Para el control de sincronización hay dos primitivas que prestan servicios a las capas
superiores, una para manejar la sincronización (MLME-SYNC) y otra para manejar casos de
pérdida de sincronización (MLME-SYNC-LOSS).
Cuando en una red no está habilitado el encabezado, esta pude utilizar la primitiva
MLME-POLL para que el coordinador PAN pueda sondear los requerimientos de datos.
2.5.4.3 ZigBee
Como se comento previamente ZigBee hace referencia a las capas superiores al IEEE
802.15.4, anteriormente se definió la capa física o PHY y la MAC descritas en el estándar
IEEE 802.15.4. A continuación se hará una exploración de las capas superiores definidos por
el protocolo ZigBee desde un punto de vista téorico, en el capítulo 4 se revisaran estos
conceptos de manera más amplia y específicos orientado a la implementación con las
herramientas de la compañía Freescale Semiconductor como uno de los resultados de este
trabajo.
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 84
Según IEEE 802.15.4 se definieron los dispositivos FFD y RFD (Numeral 2.4.1), ZigBee
genera más tipos dispositivos basados en esta descripción. Una red ZigBee es formada cuando
un dispositivo se declara como coordinador ZigBee (ZC) y permite a otros ingresar a la red.
Lo routers ZigBee (ZR) y los dispositivos finales (ZED) pueden entrar a la red por medio de
el ZC o por ZRs que ya se hallan afiliado a la red. Los ZRs permiten a los nodos sobre la red
comunicarse con otros, así no estén dentro del rango del alcance, por que los ZRs y los ZCs
pueden pasar mensajes entre nodos. Los ZEDs no pueden pasar mensajes entre nodos, ellos
sólo pueden enviar sus propios mensajes y recibir mensaje con significado para ellos, el ZC
puede servir como un centro de seguridad cuando la red usa seguridad.
Iniciar la Red.
Los ZEDs ejecutan funciones como conmutación de una luz encendido o apagado, o el
monitoreo de un sensor de proximidad, si el ZED principalmente reporta el estado de un
sensor, este puede dormirse entre medidas. Cuando el ZED reporta el estado de un switch,
este puede dormirse hasta que el switch sea presionado, lo cual puede no ocurrir en años, para
la simplicidad de los dispositivos finales, la prioridad de diseño es correr sobre baterías.
El IEEE 802.15.4 define las topologías estrella y peer to peer (Numeral 2.4.2 ). ZigBee las
redefine y genera nuevas alternativas de enrutamiento, las cuales se muestran a continuación.
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 86
Una red estrella convencional consiste de un coordinador con uno o más ZEDs asociados
directamente con el ZC, en la Figura (2-30) se observa la configuración de esta red, donde
todos los dispositivos se comunican directamente con el coordinador, y el coordinador pasa
los mensajes entre dispositivos finales.
Como se muestra en la Figura (2-31), una red árbol consiste de un ZC y de uno o más
routers, opcionalmente uno o más ZEDs asociados en estructura jerárquica. Una red árbol
extiende la red estrella con el ZRs. Cada transferencia desde un nodo hasta el siguiente es un
salto. La profundidad de una red árbol es el máximo número de saltos de un mensaje para
llegar de la fuente al destino. Cada router puede examinar el mensaje, este lo recibe y dice si
el destinatario esta debajo de él en el árbol, si el receptor no está debajo, el router pasará el
mensaje a su padre.
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 87
En una red malla, cada dispositivo puede comunicarse directamente con otros dispositivos
en la red. Una red malla consiste de un ZC que tiene uno o más ZRs y opcionalmente uno o
más ZEDs. La Figura (2-32) muestra una red ZigBee Malla. Cualquier dispositivo en una red
malla puede enviar un mensaje direccionado a otro dispositivo en la red. Si los dos
dispositivos están dentro del rango de radio. Los mensajes se mueven en un sólo salto, y
ningún otro dispositivo está involucrado, si están fuera del rango de radio, los mensajes deben
viajar de un router a otro, siguiendo una ruta basada en un enrutamiento eficiente.
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 88
Esta capa tiene como objetivo principal permitir el correcto uso del subnivel MAC y
ofrecer una interfaz adecuada para su uso por parte de la capa de aplicación. En esta capa se
brindan los métodos necesarios para: iniciar la red, unirse a la red, enrutar paquetes dirigidos a
otros nodos en la red, proporcionar los medios para garantizar la entrega del paquete al
destinatario final, filtrar paquetes recibidos, cifrarlos y autentificarlos. Se debe tener en cuenta
que el algoritmo de enrutamiento que se usa es el de enrutamiento de malla, el cual se basa en
el protocolo Ad Hoc On-Demand Vector Routing – AODV. Cuando esta capa se encuentra
cumpliendo la función de unir o separar dispositivos a través del controlador de red,
implementa seguridad, y encamina tramas a sus respectivos destinos; además, la capa de red
del controlador de red es responsable de crear una nueva red y asignar direcciones a los
dispositivos de la misma.
Aunque IEEE 802.15.4 soporta el uso de transmisión del identificador de la red de área
personal (por ejemplo 0xffff) para transmitir un mensaje a través de múltiples redes, el
estándar ZigBee no permite transmisión a través de múltiples redes y el identificador de la red
de área personal siempre está establecido en el identificador de la red ZigBee en lugar de la
dirección 0xffff. Los puntos de acceso de servicio (SAP) de cualquier dispositivo pueden
iniciar la transmisión usando el servicio de datos de la capa de red.
En una red grande sería difícil e innecesario esperar que todos los dispositivos recibieran
el mensaje transmitido para enviar un acuse de recibo (acknowledgment) de vuelta a quien
originó el mensaje. Por lo tanto, cuando se transmite un mensaje el dispositivo final no tiene
permitido reconocer si el mensaje llegó de manera exitosa. En cambio el coordinador y los
router ZigBee verifican si los dispositivos vecinos realizaron la transmisión del mensaje lo
cual es conocido como mecanismo de reconocimiento pasivo. En el reconocimiento pasivo,
luego que el dispositivo realiza la transmisión del mensaje, este entrará en un modo de
recepción esperando que la misma trama sea retransmitida por alguno de los dispositivos
cercanos. Una retransmisión del mensaje indica que un dispositivo cercano ha recibido y
transmitido con éxito el mensaje recibido.
El coordinador y los router ZigBee mantienen un registro de los mensajes que han
transmitido en una tabla llamada tabla de transmisiones realizadas (broadcast transaction
table, BTT). El registro es conocido como registro de transmisiones realizadas (broadcast
transaction register, BTR) el cual contiene un numero consecutivo y la dirección de la fuente
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 90
que emitió el mensaje. Cada router ZigBee debe ser capaz de almacenar la información de al
menos una trama de la capa de red (NWK). La capacidad de almacenamiento de datos ayuda
en la retransmisión de los mensajes (Figura (2-34)). Cada BTR es válida sólo por un período
de tiempo determinado y expira después de ocurrido el nwkNetworkBroadcastDeliveryTime
segundos después de su creación. Un BTR que ha expirado puede ser sobrescrito si un nuevo
BTR está siendo creado y el registro de transmisiones realizadas (BTT) está lleno.
Dispositivo A Dispositivo C
(Cercano al dispositivo B) Dispositivo B (Cercano al dispositivo B)
El dispositivo A ha
transmitido el mensaje
Retardo aleatorio
El dispositivo B ha El dispositivo B ha
transmitido el mensaje transmitido el mensaje
Temporizador
de
retransmisión Retardo aleatorio
Transmisión El dispositivo C ha
ignorada transmitido el mensaje
Cada grupo multicast se identifica con una dirección de 17 bits. Los dispositivos
pertenecientes al mismo grupo son conocidos como miembros del grupo. Un dispositivo
puede ser miembro de más de un grupo Multicast. Cada dispositivo mantiene una lista de los
miembros del grupo multicast en una tabla llamada multicast table (nwkGroupIDTable). Un
dispositivo no tiene que ser miembro de un grupo Multicast para poder usar la transmisión
múltiple y llegar a los demás miembros
Hay dos modos de funcionamiento en transmisión múltiple: como miembro del grupo o
como no-miembro del grupo. En el modo en el que el dispositivo pertenece al grupo, la
transmisión múltiple es iniciada por un miembro y enviada a los demás miembros del grupo.
En el modo en el que el dispositivo no es miembro del grupo se envía el mensaje a un
miembro el cual hará llegar el mensaje a los demás miembros del grupo.
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 92
Radio = 2
Coordinador Zigbee
Router Zigbee
Dispositivo receptor
Radio = 1
C={D2, D3}
C={D1, D2} C={D3, D4}
l2 C={D4, D5}
Ruta 1 (P1) l1
Ruta 2 (P2) l3 l4
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 93
En la Figura anterior, se muestra un ejemplo de dos posibles rutas con una longitud L=5 y
L=7. La conexión entre dos dispositivos consecutivos en una ruta es llamada enlace. Los
enlaces están enumerados de (l1) a (l4). Los parámetros como relación de calidad del enlace,
número de saltos, consideraciones de conservación de energía, pueden ser usados para decidir
la ruta más óptima para cada escenario. Para simplificar este proceso, cada enlace es asociado
con un valor. La probabilidad que el paquete sea retransmitido satisfactoriamente en cada
enlace estará determinada por el valor del enlace. Cuanto más baja sea la probabilidad de
retransmisión del paquete satisfactoriamente, mayor será el valor del enlace. El valor de cada
enlace se muestra como C{[Di, Di+1]}.
En un mecanismo de enrutamiento de ruta quien origina la trama crea una lista de todos
los dispositivos que actuarán como enlaces y los incluye en la trama de la capa de red. De esta
manera, cuando un dispositivo enrutador recibe esta trama simplemente busca la dirección en
la lista de retransmisión (incluida en la trama) del siguiente nodo para retransmitir el mensaje.
Esta lista de retransmisión tiene un índice que incrementa con cada retransmisión para
asegurarse de que el índice siempre apunta en la dirección del próximo salto.
Descubrir y mantener rutas entre dispositivos. Esta es una habilidad que permite
descubrir y registrar rutas a través de las redes para realizar un enrutamiento más
eficiente del mensaje.
El descubrimiento de una red es una petición que realiza la capa de aplicación (APL) a la
capa de red. La capa de red usa la búsqueda de canales de la capa MAC para descubrir la
presencia de otras redes. La operación de descubrimiento de redes entrega la lista de las redes
descubiertas incluyendo los identificadores de las redes de área personal, frecuencia actual de
los canales y versión del protocolo ZigBee usado por cada red a la capa de aplicación. El
descubrimiento de redes debe identificar si existe al menos un router ZigBee que permita que
un nuevo dispositivo se una a una red.
La capa de red a partir de una solicitud por parte de la capa de aplicación puede nombrar a
un dispositivo como coordinador ZigBee. El dispositivo debe ser un FFD (Fully Function
Device) para poder actuar como coordinador ZigBee. El primer paso para la formación de una
red es la búsqueda de un dispositivo final (End Device , ED), seguida por una búsqueda activa
en un número determinado de canales usando el servicio de gestión de la capa MAC. La
solicitud de exploración es emitida por NLME a MLME. Basado en los resultados de la
búsqueda la capa de red toma un canal de frecuencias y un único identificador PAN. El primer
canal con el menor número de redes existentes es considerado un canal adecuado para ser
usado en la nueva red. El coordinador ZigBee selecciona la dirección 0x0000 como la
dirección corta MAC, la cual es la misma que la dirección de red.
Estructura de Aplicación
Define capacidades específicas
Perfil de Aplicación de las aplicaciones
(Perfil Zigbee)
Subcapa de Aplicación
La subcapa de soporte a la aplicación (APS) provee una interfaz entre la capa de red
(NWK) y la capa de aplicación. Esta subcapa, similar a las capas inferiores, soporta dos tipos
de servicios: datos y gestión. El servicio de datos APS es proporcionado por la entidad de
datos (ASPDE) y se accede a través del punto de acceso de servicio de ASP (SAP). Dentro de
las capacidades de gestión son ofrecidas por la entidad de gestión de ASP (APSME) y es
accedida a través de APSM-SAP. Las responsabilidades de la subcapa de soporte a la
aplicación son:
aplicación ZigBee está el entorno en el cual los objetos de aplicación controlan y gestionan las
capas del protocolo de un dispositivo ZigBee. Los objetos de aplicación son desarrollados por
los fabricantes y es acá donde el dispositivo es personalizado para varias aplicaciones, donde
puede haber cerca de 240 objetos de aplicación para cada dispositivo. Cada objeto de
aplicación tiene una única dirección de punto final (endpoint 1 a endpoint 240). La dirección
de endpoint cero es usada para el objeto de dispositivo ZigBee ZDO. Al transmitir un mensaje
a todas los objetos de aplicación la dirección de endpoint se fija en 255. La dirección de
endpoint permite que múltiples dispositivos puedan usar el mismo radio. Los objetos de
dispositivo ZigBee (ZDO) proveen una interfaz entre la subcapa APS y la estructura de
aplicación. El ZDO contiene las funcionalidades comunes en una aplicación que opera el
stack del protocolo ZigBee. Por ejemplo, es responsabilidad del ZDO configurar el
dispositivo como uno de los tres posibles tipos lógicos de coordinador ZigBee, router ZigBee
o dispositivo final ZigBee. El ZDO usa primitivas para llevar a cabo sus funciones y acceder a
la subcapa APS.
Cada perfil de aplicación está identificado con un valor de 16 bit, el cual es llamado
identificador de perfil. Sólo la alianza ZigBee puede emitir perfiles identificadores. Un
vendedor que ha desarrollado un perfil puede solicitar un perfil identificador a la alianza
ZigBee. La alianza ZigBee evalúa el perfil de aplicación propuesto y si cumple con las
directrices de la alianza, el perfil identificador será emitido. Los perfiles de aplicación son
nombrados después de su correspondiente uso en una aplicación.
Los perfiles de aplicación son nombrados una vez se tiene la aplicación respectiva. Por
ejemplo: el perfil de aplicación para la automatización de una casa provee comúnmente una
plataforma para los proveedores que desarrollan productos basados en ZigBee para
aplicaciones en domótica. El perfil de aplicación consta de dos componentes principales: (1)
grupos (cluster) y (2) descripción de dispositivos. Un clúster es un conjunto de atributos
agrupados. Cada grupo es identificado con un número único de identificación llamado
Capítulo 2. Redes inalámbricas e IEEE 802.15.4/ZigBee 97
identificador de grupo (cluster identifier). Estos atributos son usados para almacenar datos.
Por ejemplo: en una aplicación de control de temperatura, el dispositivo que actúa como
sensor de temperatura puede almacenar el valor actual de la temperatura en un atributo.
Entonces otro dispositivo podrá actuar como controlador pudiendo recibir el valor
almacenado en este atributo.
La descripción del dispositivo consta de cinco partes: (1) descripción del nodo, provee
información como el tipo de dispositivo y el código del fabricante, (2) descripción de energía
del nodo, determina sí el dispositivo es alimentado con baterías y el nivel actual de las
baterías, (3) descripción simple, (4) descripción compleja, contiene información del número
de serial y número de modelo del dispositivo y (5) descripción de usuario, provee cualquier
información adicional respecto al dispositivo.
Capítulo 3 Desarrollo de una plataforma de red IEEE
802.15.4/ZigBee.
Después de haber revisado el estado del arte de las redes de sensores aplicadas a la
instrumentación biomédica, junto con el espectro de las redes inalámbricas y particularmente
las redes IEEE 802.15.4/ZigBee, se presentará en este capítulo los fundamentos para el
desarrollo del hardware de un nodo de red IEEE 802.15.4, para así proponer un modelo de
diseño y experimentación. Adicionalmente se realizó la integración de algunos sensores, y la
evaluación del desempeño de las comunicaciones punto a punto.
En la actualidad existen gran variedad de nodos de red para aplicaciones Zigbee listos
para transmisión de datos que permiten una fácil integración a una aplicación electrónica.
Dentro de estos la compañía Digi International Inc ofrece módulos como Xbee (Figura (3-1a))
(62) con dimensiones de 24.38 mm y 27.61 mm y rango de comunicación de hasta 90 metros
con línea de vista y XBee Pro (Figura (3-1b)) (62) con dimensiones de 22 mm por 32.94 mm
con mayor potencia de transmisión con rango de comunicación de hasta 1600 metros con
línea de vista, de la misma manera el modulo Easy Bee (Figura (3-1c)) (63) fabricado por RF
Solutions con rango de comunicación de hasta 120 metros con línea de vista y dimensiones de
20 mm por 26 mm, entre muchos otros. Por otro lado se encuentran en el mercado módulos
orientados a evaluación de redes que permiten reprogramación del firmware de red, además
cuentan con periféricos como LEDs, switchs y sensores, como el MICAz (Figura (3-1d)) (59)
de Crossbow Technology Inc. ampliamente usado en aplicaciones de redes de sensores y el
Sensor Reference Board (Figura (3-1e)) (64) fabricado por Freescale como modelo de
desarrollo para el transceiver y microcontrolador MC13213.
98
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 99
Figura 3-1: Nodos de red comerciales, (a) Xbee, (b) Xbee Pro, (c)
Easy Bee, (d) MICAz y (e) SRB.
Los nodos de red son la base de una red inalámbrica de sensores, tienen capacidad para
procesar y transmitir datos, autonomía de meses o hasta años y poseen sensores integrados
para interactuar con el entorno. El nodo de red se desarrolla con el fin de disponer un módulo
para transmisión de señales biomédicas miniaturizado, de bajo costo y bajo consumo,
integrando en un mismo chip la comunicación inalámbrica y el procesamiento de datos. Para
ser capaz de satisfacer estos requisitos, un nodo de red debe estar compuesto de: (1)
microcontrolador, (2) modem, (3) fuente de alimentación y (4) antena, (Figura (3-2)).
Antena
Microcontrolador Modem
Alimentación
800/900MHz Sí No No No No
2400MHz No Sí Sí Sí Sí
Standby (µA) 1 1 1 1 3
Encriptado? No Sí No Sí Sï
Sólo
Chip todo en uno? Sólo Transceiver Sí Sí Sí
Transceiver
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 101
Freescale aconseja usar una configuración single con dos bobinas en serie y una bobina de
desviación seguida de un balun 1:1 (Figura (3-5)). Esta configuración esta optimizada para un
mejor rendimiento en RX con alguna degradación a máximas potencias en la TX, al
implementar el switch de TX/RX interno se logra un circuito más simple, menos costoso, con
menor número de partes externas (66).
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 103
El pin VDD del switch de RF (IC1) está conectado al pin GPIO1, lo cual permite que la
antena consuma energía sólo cuando necesita estar activa. El pin GPIO puede ser usado como
una fuente VDD sólo cuando la corriente de carga es pequeña.
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 104
A continuación se definen algunos elementos que son relevantes para el diseño del nodo
de red.
3.1.3.2 Balun
salida es normalmente de estado diferencial, y esta medida entre los 2 pines de salida.
Algunos circuitos discretos son utilizados para desempeñarse como balun, pero la mayor parte
de estos son sensibles a la entrada y salida de cargas externas, teniendo que ser la PCB la
encargada de la calibración, estos circuitos discretos requieren por lo menos de dos bobinas
para su correcto funcionamiento.
3.1.3.3 Antena
La elección de una buena antena es uno de los factores más importantes para obtener un
buen rango y rendimiento en un una aplicación inalámbrica, especialmente en los diseños
compactos y de bajo consumo. La acción básica de la antena es transmitir y recibir ondas
electromagnéticas en una banda de frecuencia específica (68). Una antena actúa como la
interfaz entre un transmisor o receptor y el espacio libre, esta acción la efectúa al radiar o
detectar un campo electromagnético. A continuación se definen algunos conceptos
relacionados con el diseño basado en antenas.
Las antenas tipo chip son unas de las más usadas para nodos de sensores, debido
principalmente al tamaño reducido. Los principales fabricantes de antenas tipo chip o SMD
son Fractus, Murata, GigaAnt y Johanson, en la Tabla (3-2) se realiza una comparación entre
estos, todos los modelos aquí estudiados trabajan en la banda ISM 2,4GHz a una impedancia
de 50Ω como es necesario para estos diseños.
Para obtener el desempeño deseado con este tipo de antenas es necesario tener en cuenta
algunos parámetros básicos para el diseño, los cuales se describen a continuación.
Los sensores actualmente interactúan con el mundo para detectar luz, calor, posición,
movimiento, etc. En cada una de estas áreas la tecnología ha buscado campos de acción para
realizar infinidad de métodos de diseños y aplicaciones. Hoy en día las redes de sensores
pueden ser construidas usando componentes de escala milimétrica y con consumo de una
fracción de vatio, los cuales están conectados a uno o varios microcontroladores que
interconectan sensores y un chip transceptor.
Tarjeta de Sensores
Sensor de
Temperatura LEDS
Batería
Sensor de
Presión Nodo de
red
Pulsadores
Acelerómetro
XYZ
ECG
SPO2
Con el objetivo de obtener un diseño óptimo del módulo de nodo de red, en cuanto a
distancia de comunicación, inmunidad al ruido, miniaturización del diseño, y funcionalidad se
definieron cuatro etapas: (1) Evaluación de un nodo de red comercial, (2) Primer Diseño, (3)
Segundo Diseño, (4) Tercer y Diseño Final, a continuación se definen:
Se toma como referencia el nodo inalámbrico SRB (Sensor Reference Board) desarrollado
por Freescale. El SRB introduce el SoC MC13213, compuesto de un microcontrolador
9S08GT60 y modem 802.15.4, cuanta con periféricos como: puerto USB, pulsadores, LEDs,
buzzer, y sensores de acelerómetro de 3 ejes y temperatura. En general el SRB provee de una
plataforma funcional y muy didáctica debido a la amplia documentación que cuenta en diseño
y aplicaciones (Figura (3-9)).
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 110
Antena tipo F
Circuito de acople
Adaptador DC
Gestion de
2 Baterías AA Buzzer
energía
Alimentación
por USB
Temperatura Puertos de
Sensor de
proposito
temperatura
general
Este dispositivo tiene una antena impresa en el circuito impreso, esto trae beneficios como
reducción de costo y simplicidad de implementación, en contraste requiere un espacio mayor
que una antena chip y tiene menor cobertura ya que es más inmune a interferencias por
depender del circuito impreso para su funcionamiento. Como se muestra en la Figura (3-10),
la tarjeta contiene gran cantidad de prestaciones para ser usada en el desarrollo de
aplicaciones IEEE 802.15.4/ZigBee, basados en este dispositivo y sus hojas de datos se
realizó el primer diseño, a continuación se definen algunas consideraciones que se tuvieron en
cuenta en el diseño de circuitos impresos en este proyecto.
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 111
GPIO BDM
Acelerómetro MC13213
Buzzer
USB
Entrada
DC
Las tarjetas de circuito impreso de este proyecto son realizadas en dos capas en material
FR4 en 1,6 mm, el cual está formado por varias hojas de prepeg, que a su vez está constituido
por capas tejidas de fibra de vidrio impregnadas con resina epoxi. Los componentes
electrónicos usados fueron ensamblados con tecnología de montaje superficial SMT (Surface
Mount Technology) con el fin de miniaturizar los prototipos, además que es el método para
reducir tamaño de tarjetas más usado actualmente, se usa tanto para componentes activos
como pasivos. Los componentes para montaje superficial se conocen como dispositivos de
montaje superficial SMD (Surface Mount Device) (72). Los tamaños de componentes de
montaje superficial más comunes se muestran en la Tabla (3-3), en el desarrollo se tuvo la
premisa de usar SMD_402 y SMD_603 con el fin de garantizar un tamaño reducido en el
diseño del circuito impreso.
Dimensiones: mm
El diseño se desarrolló basado en el dispositivo SRB, la tarjeta cuenta con dos capas, en la
capa superior residen todos los componentes electrónicos, la capa inferior se usa para tierra y
las líneas de alimentación del chip (MC13213), estas rutas requieren de condensadores de
desacoplo, y deben estar situados lo más cerca posible del chip para reducir el ruido.
Se realizó una configuración dual para el acople a la antena micro-strip tipo F, donde las
señales de transmisión y recepción de aproximadamente 300 o 400Ω de impedancia se
conectan por medio de un balun de manera independiente a la antena de 50 Ω, En la Figura
(3-11) se muestra el circuito de RF implementado.
L1
4.7nH
C5
10pF
L2 C2
4.7nH 1pF IC1
C6
10pF
MC13123 L3
3.3nH Balun
C3
10pF L5 C7
uPG2012TK
L4 C1 8.2nH 0.5pF Antena F
3,3nH 1.8pF
C4
10pF
Balun
Para adaptar los dos puertos balanceados (RFIN y PAO) del MC13213 con las entradas
del balun se han dispuesto dos bobinas de 4,7nH (L1, L2) en la etapa de salida de RF y dos
bobinas de 3.3nH (L3, L4) en la etapa de entrada de RF, IC1 es el switch de RF que permite la
conmutación de recepción a transmisión, finalmente un circuito pasabanda conformado por
L5 y C7 se usa para limitar la desviación de armónicos del transmisor. A continuación se
definen los aspectos que se tuvieron en cuenta para el diseño de la antena.
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 113
23.8
2.5
10
4.05 7.8
0.85 3.0
GND
Por otro lado la estructura de la antena debe ser de un tamaño razonable comparado con la
longitud de onda del campo del RF; una longitud de media onda corresponde
aproximadamente a 6 centímetros (en aire) en los 2.4Ghz, cuando se alimenta con RF en el
centro, la estructura resuena en la frecuencia de media-onda. La reducción del tamaño debajo
de la longitud resonante natural puede causar baja eficiencia (72).
La antena implementada sin acoplar tiene una frecuencia resonante de 2.85Ghz, puede ser
acoplada insertando una bobina en serie con la alimentación de la señal, o agregando una pista
de PCB al extremo opuesto para bajar la frecuencia resonante a 2.4GHz. Una bobina acoplada
de 8.2nH o una pista de PCB de 6mm sirven para obtener un óptimo rendimiento de la antena
F.
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 114
El transceptor MC13213 está en un encapsulado LGA (Land Grid Array) (Figura (3-13)),
el diseño de la huella o footprint debe ser de alta precisión con respecto al diagrama mecánico
del chip (Figura (3-14)), donde se puede observar las dimensiones del área de soldadura y de
la estructura general del chip, es aconsejable para facilitar el ensamble diseñar la huella
dejando las dimensiones de cobre de los pines o pads un poco más grande que lo especificado.
Los pines 65 a 71 son puntos de prueba (Test points) dispuestos únicamente para uso del
fabricante. Por lo cual en el primer diseño se decide no incluirlos en la huella.
Por otro lado en un diseño orientado a RF se deben considerar factores como la forma del
pin y tamaños de la zona de tierra, los pines deben tener una forma especial para lograr un
mejor rendimiento tanto en la transmisión, como en la recepción de señales. En la Figura (3-
15) se muestra un diseño recomendado por el mismo fabricante donde se aprecian formas
circulares en los pines y áreas de tierra del chip.
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 115
1.65mm
2.80
1.85 mm
mm
0.50
1.35m 0.30mm mm
m
1.70mm
9.40mm
1.85mm
1.90mm
0.50mm
0.30mm
1.55mm
0.75
0.30mm
mm
1.90mm
2.30mm 1.50mm
1.50mm
1.50
mm
1.05mm 0.95mm
0.30mm
0.20mm 0.70mm
0.80mm
9.44mm
Una vez realizada la huella del chip, se realiza el enrutamiento de señales de alimentación
y periféricos teniendo en cuenta algunas consideraciones en el grosor de pistas según su
función (Figura (3-16)).
El fabricante del PCB fue Microcircuitos S.A. ubicado en Bogotá-Colombia, presenta una
restricción en la implementación, indicando el grosor mínimo de las pista como 0,203 mm.
Particularmente en este diseño se usaron pistas superiores a esta medida, en las líneas de tierra
que sale del transceptor hacia el balun y de acople entre el circuito pasabanda y el brazo de la
antena tipo F se uso un grosor superior al resto (Figura (3-17)).
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 116
ANTENA
L1 C1 C4
L3
L2
Z1 IC2
L3 Z2
C6
L4
L5
C2 C5
C7
Otra consideración importante es determinada por el ancho y largo de las vías sobre el
PCB, ya que pueden incrementar la impedancia del circuito, es ideal que la señal de RF que
va hacia el transceptor haga el menor recorrido posible entre la antena y el chip, así las
bobinas L1 a L4 deberán estar lo más cerca posible al puerto del transceptor, se debe
optimizar el espacio para lograr un mejor rendimiento del circuito de RF. Finalmente para
reducir ruido y acoplamientos en las líneas de alimentación se dispone de una serie de
condensadores de desacoplo (Figura (3-18)). El nodo en su primera versión se observa en la
Figura (3-19), se distribuyeron algunos puertos digitales y análogos para la integración de
sensores. El layout final del diseño se muestra en la Figura (3-20), y en la Figura (3-21) se
muestra el PCB del nodo finalizado una vez se realizó el ensamble de los componentes.
C13
C12
C11
C10
C8
C9
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 117
30mm
68mm
Para validar el diseño se dispuso un nodo como transmisor y otro como receptor y se
inicio un transmisión continua, en la Figura (3-22) se observa el nodo receptor en operación,
las comunicaciones fueron fallidas, al analizar las frecuencias portadoras en el analizador de
espectros, se observaron pequeños desplazamientos en frecuencia portadora en todos los
nodos, por tal razón no era posible una comunicación directa entre dos nodos, se hallaron
pequeñas variaciones en las dimensiones en la antena construidas sobre el PCB. Se decidió
iniciar con un segundo diseño basado en una antena independiente del circuito PCB.
La implementación de una antena tipo chip en un nodo de red es común en los nodos
inalámbricos, este tipo de antenas requiere un tamaño menor en el PCB que la antena tipo F,
proporcionando una mayor sensibilidad, mayor inmunidad al ruido, la antena seleccionada se
observa en la Figura (3-23). En este diseño además de cambiar el tipo de antena, se
implementa la configuración Single de acoplamiento a la antena, en la cual se utiliza el switch
de RF que trae internamente el MC13213. Para el acople a la antena se usa un balun 4:1 el
cual acopla la impedancia del modem a la antena de 50Ω.
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 119
2.6
1.6
4.2
33mm
22m
Una vez finalizado el segundo diseño se inició con la evaluación de la misma forma que
en el primer diseño, las pruebas de comunicación fueron exitosas, se evaluaron 4 niveles de
potencias en transmisión continua, así: bajo, medio, medio-alto, alto, con el fin de evaluar el
efecto de la distancia conservando la línea de vista entre los dos nodos, en la Tabla (3-4) se
muestra la distancia máxima donde no hubieron perdidas para cada nivel de potencia.
Distancia
Potencia (mW)
Comunicación (m)
0,02– bajo 2
0,13 – medio 10
2.29 – alto 22
El cristal al igual que los condensadores C8 y C9 debe estar lo más cerca posible
al puerto del MC13213 para disminuir ruido en la señal del oscilador. Además las
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 122
pistas de este componente también deben tener un grosor mayor a las pistas de
señales comunes del nodo.
El grosor de la pista que va a la antena debe ser mayor a 0,3mm, esto pudo
generar un incorrecto acople de impedancias y perdida de la señal.
Mal diseño de la tarjeta base o de aplicación con respecto a la antena del nodo,
como ya se había mencionado que no debe haber área con GND o con elementos
que puedan causar interferencia en la señal de salida de la antena, en la tarjeta
base quedaron algunos segmentos de tierra cerca a la antena, de igual manera es
aconsejable que esta quede sobre un extremos del circuito para evitar interferencia
de los componentes cercanos.
Con un diseño en configuración single exitoso pero con bajos resultados en la distancia de
comunicación, se realiza un nuevo diseño considerando los errores identificados en el diseño
anterior. El cambio más significativo en la etapa de radiofrecuencia fue la implementación de
un balun 1:1, reduciendo la cantidad de elementos de esta etapa, junto con la elección de una
antena más robusta en cuanto a ganancia y sensibilidad.
La introducción de la nueva antena tipo chip en el nodo sensor debe suponer una mayor
distancia y eficiencia que la antena diseñada sobre el circuito impreso. En este caso, se tienen
en cuenta las especificaciones técnicas que provee el fabricante para obtener un rendimiento
óptimo, tales como: posición en el PCB, elementos de acople y grosor de la huella. De igual
manera se hicieron ajustes sobre las huellas de la antena, el chip MC13213 y el oscilador,
agregando en el caso del MC13213 y el cristal pasantes o truehold en la parte central de la
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 123
huella del chip, con el fin de evitar que los excesos de estaño en el momento de soldar y
lograr unos adecuados contactos de cada pin con la tarjeta (Figura (3-29)).
La antena chip fue una buena alternativa pero se planteó integrar una con mayor ganancia
y se tuvieron en cuenta algunas consideraciones adicionales. El diseño de la huella de la
antena chip (Figura (3-31)), se basa en las dimensiones proporcionadas por el fabricante
Johanson Technology.
1.0
8.0
5.5
2.0
Al igual que en el diseño de la antena tipo F, para este tipo de antena también se
recomienda no implementar área de tierra o GND en una zona cercana a la antena y en
ninguna de las dos capas como se muestra (Figura (3-32)), la ubicación 3 no es recomendada
ya que por lo general en esta zona estarán otros componentes del circuito, lo cual podría
ocasionar interferencias y bajos rendimientos en la radiación de la antena.
RECOMENDADO 4 RECOMENDADO
2
3
NO RECOMENDADO
Los elementos pertenecientes al circuito RF al igual que el cristal, deben estar lo más
cerca al chip para no alterar la impedancia con la longitud de las pistas. Como se muestra en
la Figura (3-33), la pista después del balun (Z1) tiene un grosor superior para que el acople de
50Ω no se vea afectado.
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 125
3.2.4.3 Conectores
El nodo cuenta con 2 conectores laterales que permiten acceder a los periféricos del chip
MC13213, los cuales se encuentran distribuidos de forma que en ambos puertos tengan la
misma distribución (Figura (3-34)). Los puertos de número 4 y 2 en los conectores laterales
corresponden a VCC y GND respectivamente, permitiendo que la tarjeta sea alimentada por
alguno de los dos conectores.
18 17 18 17
I&O
16 15 16 15
Conversor A/D
TMP
I&O
Conversor A/D
14 13 14 13
12 11 12 11
10 9 10 9
8 7 8 7
SCI
SCI Alimentación
6 5 6 5
KBI
KBI
Alimentación
4 3 4 3
2 1 1 2 3 4 2 1
Conector
7 BDM
El conector de programación denominado BDM para el MC13213 usado para los diseños
anteriores y en general para microcontroladores de Freescale se muestra en la Figura (3-35a),
los pines 3 y 5 están asignados como NC (No Connect), por lo cual se decidió realizar una
distribución de los 4 pines restantes en forma lineal para reducir espacio en la tarjeta (Figura
(3-35b)). El nodo del tercer diseño finalizado y ensamblado se observa en la Figura (3-36).
33mm
39mm
Una vez finalizado el tercer diseño se inicio con la evaluación inicial de desempeño de la
misma forma que se realizó con el primer diseño y segundo diseño, las especificaciones
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 127
Características DC
Sensibilidad 0,12mW
Distancia
Potencia (mW)
transmisión (m)
0,02 – bajo 25
0,13 – medio 45
Una vez finalizado el diseño del nodo de red se procede con el diseño de la tarjeta de
sensores para complementar la plataforma de red de sensores y realizar las pruebas
respectivas de alcance y consumos del nodo diseñado.
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 128
El diseño de la tarjeta base de sensores se realiza con el fin integrar sensores y señales de
control para evaluación de la plataforma, las señales evaluadas hasta el momento son:
temperatura, aceleración, velocidad, posición, presión, electrocardiografía (ECG) y
pulsioximetría (SpO2). La tarjeta cuenta con diodos LEDs, entradas de pulsadores, sensores, y
conexión serial con módulos OEM de señal. El conector I&O se interconecta con los
periféricos del microcontrolador del nodo de red IEEE 802.15.4 / ZigBee. Los sensores
dispuestos en la tarjeta son: (1) acelerómetro, (2) sensor de temperatura, (3) sensor de presión
y un puerto serial para integración de módulos OEM (Figura (3-37)).
Batería AAAx2
Sensor de
LED1 DO AI
presión
LED2 DO
AI x
LED3 DO
Puerto I & O
AI y Acelerómetro
LED4 DO AI z
Pulsador1 DI AI Sensor de
Temperatura
Pulsador2 DI
Tx
Pulsador3 DI Puerto Serial
Rx
DI-Digital Input
DO-Digital Output
AI-Analog Input
A continuación se hará una descripción de los señales y los sensores que se integraron
para este módulo, y algunas alternativas de módulos de señal biomédica que se pueden
integrar.
El voltaje de salida para una temperatura de 0°C es de 500mV, así para obtener la
temperatura a partir del voltaje de salida del sensor se aplica la siguiente ecuación:
Vout 500mV
T (º C ) , donde Vout es el voltaje de salida del sensor, 500mV es la
10mv /º C
referencia ó cero del sensor, y 10mV es la resolución del sensor.
1V 500mV
T (º C ) 50º C
Para un voltaje de salida de 1V se tendría: 10mV /º C
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 130
El reducido tamaño de este componente (SOT-23) fue uno de los factores más influyentes
en la selección. En la Tabla (3-7) se observa el diagrama mecánico encontrado en la hoja
técnica del sensor y sus características generales de operación.
Voltaje de 2 a 5V
operación
3.2.5.1 Acelerómetro
Un acelerómetro capacitivo opera con una técnica donde la capacitancia del elemento
sensor interno cambia en proporción a la aceleración aplicada (Figura (3-39)). El acelerómetro
Capítulo 3. Desarrollo de una plataforma de red IEEE 802.15.4/ZigBee. 131
consta de dos placas conductoras paralelas tipo electrodo con área de exposición (A) y una
masa (m) suspendida por medio de un elemento con rigidez (k). Entre la masa y los electrodos
existe una distancia base (d) simétrica, que se controla con precisión, por lo que el aire que
existe en el hueco entre cada electrodo y la masa sísmica forma un ―capacitor mecánicamente
variable‖. Cuando el elemento es acelerado, de acuerdo con la Segunda Ley de Newton, se
presenta una fuerza inercial (F), proporcional a la aceleración que sufre la masa (m).
La selección del nivel de sensibilidad se puede realizar mediante la conexión de los pines
g-Select1 y g-Select2 (pines 1 y 2) (Tabla (3-9)), esta conexión pueden estar conectados a una
salida del microcontrolador para obtener la configuración adecuada.
Se usa un filtro RC formado por una resistencia de 1kΩ y un condensador de 100nF en las
salidas X, Y y Z del acelerómetro con el fin de reducir ruido en las señales que van hacia el
microcontrolador. En la Figura (3-40) se muestra el circuito conexión típica. En la Figura (3-
41) se observa la orientación de las medidas en cada dimensión X, Y y Z.
El puerto serie sobre la tarjeta de sensores tiene el fin de presentar una alternativa para el
ingreso de señales biomédicas, por medio de módulos externos de adquisición de señal, a
continuación se describen algunos sensores y señales de este tipo. Las señales biomédicas son
registros espaciales, temporales o espacio-temporales de eventos tales como el latido del
corazón o la contracción de un músculo. La actividad eléctrica, química o mecánica que
ocurre durante estos eventos biológicos frecuentemente produce señales que pueden ser
medidas y analizadas. En consecuencia las señales biomédicas contienen información que
puede ser utilizada para explicar los mecanismos fisiológicos subyacentes en un evento o un
sistema biológico específico (30).
Además de los sensores biomédicos existe una gran variedad de ellos dentro de los cuales
se encuentran:
Una vez descritos los componentes que serán usados en el nodo de sensores, se procede
con el diseño del PCB, buscando integrar de forma reducida los sensores. En la Figura (3-43)
se integran el sensor de presión, temperatura, acelerómetro, junto con los componentes
adicionales de la tarjeta como lo son los 4 LEDs, 3 pulsadores, En la parte izquierda de la
Figura (3-43), se observan 2 pines etiquetados como ON_OFF. En este lugar debe ir un
jumper que habilite la alimentación hacia el circuito conformado por batería. El voltaje que va
hacia los sensores puede ser habilitado/deshabilitado con un jumper en la parte superior
etiquetado como VCC_SENS, el cual se usa en caso de tener una alimentación externa para
los sensores.
En la Figura (3-45) se muestra la integración del nodo de red junto con la tarjeta de
sensores listos para realizar las aplicaciones requeridas en implementación de sensores
biomédicos. En la Figura (3-46a), se muestra el layout o huella (vista superior) del nodo de
red ZigBee finalizado y en la Figura (3-46b) la vista inferior del diseño. En Figura (3-47a), se
muestra el layout de la tarjeta de sensores (vista superior) y en Figura (3.47b) la vista inferior
de la tarjeta.
a)
b)
La arquitectura del BeeStack construida sobre el stack del protocolo de ZigBee, está
basado en el modelo OSI de siete capas, y asegura interoperabilidad entre los dispositivos de
red. La capa física PHY, la capa de control de acceso al medio MAC, y la capa de red NWK
son la base para la capa de aplicación. BeeStack define servicios adicionales para mejorar la
comunicación entre las capas del stack de protocolos. Dentro de la capa de aplicación, la capa
de soporte de aplicación (ASL) facilita el intercambio de información entre la subcapa de
soporte de aplicación (APS) y los objetos de aplicación.
BeeStack usa el estándar IEEE 802.15.4 compatible con la capa MAC/PHY, la capa
NWK define el enrutamiento, creación y configuración de la red, y sincronización de
dispositivos. El application framework (AF) soporta un gran arreglo de servicios que definen
la funcionalidad ZigBee. El objeto de dispositivo ZigBee (ZDO) implementa servicios en el
nivel de aplicación en todos los nodos por medio del perfil, además cuenta con un proveedor
139
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 140
de servicio de seguridad (SSP) es disponible en las capas para el uso de encriptación (NWK y
APS).
4.1.1 ENDPOINTS
Las aplicaciones residen en los endpoints, el cual actúa como un objeto independiente. El
número asignado al endpoint es esencialmente la dirección de la aplicación dentro de un
dispositivo ZigBee. Esto permite a otros dispositivos comunicarse separadamente con cada
aplicación sobre el dispositivo. EL endpoint es un cable virtual (Figura (4-2)). Los endpoints
tienen tres propósitos generales en ZigBee:
1) Proveer una ubicación dentro un nodo para conectar dos servicios. Por ejemplo,
un endpoint sobre un switch ON/OFF se conecta a un endpoint sobre una luz
ON/OFF.
El Beestack provee servicios para permitir a los endpoints encontrar otros endpoints sobre
la red con los cuales pueden comunicarse para ejecutar las tareas destinadas. Una aplicación
puede enviar un mensaje a todos los endpoints. Un sólo dispositivo puede tener hasta 240
endpoints de aplicación de usuario, y cada endpoint puede ser independiente de los otros. Los
endpoint de aplicación son nombrados de 1-240, Endpoint 0 es para el perfil del dispositivo
ZigBee (un conjunto común de servicios ZigBee disponibles). El endpoint 255 es para
broadcast; un mensaje en el endpoint 255 es entregado a todos los endpoints en el nodo
receptor con todos los del mismo perfil de aplicación.
Una aplicación debe registrar estos endpoints en el BeeStack antes de que este se pueda
comunicar con otros dispositivos, las aplicaciones sobre los endpoints de otros dispositivos
sobre la red encuentran objetos para comunicarse sobre estos endpoints, los perfiles de
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 142
Los endpoints deben registrarse sobre la red antes de que se pueda comunicar con otros
dispositivos, AF_RegisterEndPoint() permite a la aplicación recibir indicaciones de datos y
confirmaciones. El registro de los endpoints en BeeStack usa dos tipos de estructuras; el
descriptor del endpoint, endPointDesc_t, y el descriptor simple zbSimpleDescriptor_t.
como es descrito por la especificación ZigBee, esto ayuda a buscar información contenida en
el simple descriptor, como el ID del perfil, versión de la aplicación, o cluster de entrada o
salida. La función AF_FindEndPointDescriptor busca el endpoint simple descriptor basado en
el ID del Endpoint (0x00-0xf0). El prototipo está definido como: zbSimpleDescriptor_t *
AF_FindEndPointDesc(uint8_t endPoint), retorna un apuntador a un descriptor simple o
NULL, si no está registrado.
4.1.2 CLUSTER
Los Cluster son servicios sobre el endpoint, por ejemplo un endpoint simple sobre el perfil
público de home automation, el cual soporta una luz ON/OFF, soporta un cluster ON/OFF
para ajustar la luz en ON y OFF, Adicionalmente, ese endpoint contiene un grupo de clusters
para agrupar un conjunto de luces, junto con los escenarios del cluster para que las luces
puedan configurarse en varios eventos (ver una película o ir de vacaciones). En la librería del
cluster de ZigBee, un cluster puede soportar cero o muchos atributos. Donde los clusters son
comandos, los atributos definen el estado de la aplicación sobre el endpoint. Por ejemplo, una
luz ON/OFF tiene un atributo que describe si las luces están en ON o en OFF.
(la luz). ZCL actúa como un repositorio para la funcionalidad del cluster, El mensaje ON/OFF
define un sólo atributo y contiene el estado del dispositivo en formato binario.
4.1.3 ATRIBUTOS
En BeeStack, un atributo es una entidad de datos que representan una cantidad física o un
estado, o un dato a leer o escribir. La comunicación de datos entre dispositivos usa comandos
con atributos incluidos. Por ejemplo, una Wireless UART tiene sólo clusters, y no atributos,
mientras una aplicación de luces ON/OFF usa ambos. Un perfil de aplicación puede crear
subtipos dentro de un cluster conocidos como atributos, en este caso, el cluster es una
colección de atributos específicos que los acompaña un específico identificador de cluster.
Decisiones de binding (Conexión) son hechas por el encuentro del identificador de cluster de
salida y el identificador del cluster de entrada, asumiendo que existen en ambos en el mismo
perfil.
4.1.4 BINDING
dentro de la red, por ejemplo, un nodo puede preguntar por la dirección MAC de
otro nodo en la red usando comandos ZDP.
El perfil de la pila (Stack Profile o feature set definido por Freescale) define las
configuraciones de la pila, todos los dispositivos dentro de una red deben contener el mismo
perfil de pila para asegurar que funcione y la red sea interoperable, La Alianza ZigBee ha
definido dos perfiles de pila:
Soporte de aplicaciones.
Seguridad.
Claves de red y conexión entre claves (las claves de red son obligatorias).
Calificación.
Eventos de interoperabilidad.
Fragmentación (Opcional): permite que los paquetes que sean de mayor tamaño
que un paquete ZigBee normal (32 bytes), sean rearmados en múltiples paquetes
para reenvíos, con lo cual provee una forma estándar para manejar transferencias
de datos grandes.
para el perfil Smart Energy pero puede ser usado comunicación Inter Pan fuera de
una red ZigBee.
El ZigBee Pro feature set usa el ZigBee feature set como base. El ZigBee Pro feature set
remueve y adiciona características al ZigBee feature set, a continuación se definen:
Funciones removidas
Enrutamiento Árbol
Adiciones de funciones
A continuación se define el proceso para transmisión de paquetes sobre ZigBee y los tipos
de estructuradas usadas y configuraciones necesarias:
Varias veces una aplicación necesita enviar muchos bytes en el payload de un paquete, en
este caso el AF Framework provee una interface sin copia de Data Request. Una regla general
para esto es usar AF_DataRequestNoCopy() para payloads de más 32 bytes, o longitudes
variables de payloads de más de 32 bytes, el prototipo para el Data Request sin copia es:
zbStatus_t AF_DataRequestNoCopy(afAddrInfo_t *pAddrInfo, uint8_t payloadLen,
afToApsdeMessage_t *pMsg, zbApsCounter_t *pConfirmId). En vez de un parámetro
pPayLoad se usa un pMsg, este mensaje de buffer es un tipo usado para enviar SAP handlers
directamente. Para almacenar el mensaje del buffer usar: void *AF_MsgAlloc(void)
Por ejemplo:
void SendMaxPacket(afAddrInfo_t *pAddrInfo)
{
afToApsdeMessage_t *pMsg;
uint8_t *pPayload
uint8_t maxLen;
pMsg = AF_MsgAlloc();
pPayload = AF_Payload(pMsg);
maxLen = AF_MaxPayloadLen();
Las capas bajas (APS, NWK or MAC) liberan el espacio para el mensaje de buffer del
Data Request. Para el AF_DataRequest y el AF_DataRequestNoCopy, La estructura
afAddrInfo_t es usada para definir el destino del paquete:
typedef struct afAddrInfo_tag
{
zbAddrMode_t dstAddrMode; /*ind, group, 16, 64 */
zbApsAddr_t dstAddr; /* short, long or group */
zbEndPoint_t dstEndPoint; /*destination endpoint */
zbClusterId_t aClusterId; /*cluster to send */
zbEndPoint_t srcEndPoint; /*source endpoint */
zbApsTxOption_t txOptions; /* ACK */
uint8_t radiusCounter; /* radius */
} afAddrInfo_t;
Una vez el nodo este en la red, puede comunicarse con otros nodos en la red. No es
necesario el binding o configurar grupos, todo lo que el nodo necesita es la dirección corta de
16 bits del nodo receptor. Para realizar la transmisión de paquetes se puede usar cualquiera de
los siguientes tipos de direccionamiento para receptor:
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 152
El cluster ID esta sobre la aplicación. BeeStack no pone restricción sobre el cluster, hay
una estructura en EndPointConfigurac llamada zbSimpleDescriptor_t, esta estructura de
descriptor simple es usada para descubrir los servicios de manera inalámbrica, pero no es
usado para filtrar el cluster.
El campo Radius dice que tan lejos enviar el paquete antes de que expire, se ajusta este
parámetro desde 0 hasta el valor por defecto de afDefaultRadius_c, el cual es dos veces la
profundidad de la red, o 10 en el stack de home control profile 0x01.
while(MSG_Pending(&gAppDataIndicationQueue))
{
/* Get a message from a queue */
pMsg = MSG_DeQueue( &gAppDataIndicationQueue );
/* give ZCL first crack at the frame */
pIndication = &(pMsg->msgData.dataIndication);
status = ZCL_InterpretFrame(pIndication);
Beestack mantiene el mensaje por un tiempo para procesamiento posterior, que puede
tomar tiempo por si la aplicación desea ceder el control a otras tareas, hay que tener cuidado
con los buffer de mensaje se mantengan libres, si el buffer de mensaje no es liberado, el
sistema puede desbordarse. En el ejemplo de arriba la librería del Cluster de ZigBee (ZCL) es
usado para interpretar el paquete o frame de datos. Los perfiles privados no usan ZCL y puede
interpretar el pIndication directamente, el cual contiene toda la información necesaria para
interpretar el paquete. A continuación se observa la estructura de recepción:
typedef struct zbApsdeDataIndication_tag
{
zbAddrMode_t dstAddrMode; /* address mode */
zbNwkAddr_t aDstAddr; /* dest addr or group */
zbEndPoint_t dstEndPoint; /* dest endpoint */
zbAddrMode_t srcAddrMode; /* always 16-bit */
zbNwkAddr_t aSrcAddr; /* src addr or group */
zbEndPoint_t srcEndPoint; /* source endpoint */
zbProfileId_t aProfileId; /* profile ID */
zbClusterId_t aClusterId; /* cluster ID */
uint8_t asduLength; /* length of payload */
uint8_t *pAsdu; /* pointer to payload */
bool_t fWasBroadcast; /* was broadcast? */
zbApsSecurityStatus_t fSecurityStatus; /* secured? */
uint8_t linkQuality; /* link quality */
} zbApsdeDataIndication_t;
Las capas bajas filtraran los paquetes que no son compatibles con el criterio del nodo,
puede no ser compatible por el ID de perfil del endpoint que se está recibiendo, o sobre el
grupo (si lo hay) sobre el endpoint, las capas inferiores también filtran los paquetes
duplicados. La aplicación es responsable de filtrar los cluster. El endPoint que recibe los datos
debe estar registrado, usando AF_RegisterEndPoint(). Esto generalmente es hecho en la
función BeeAppInit(). No hay atributos en el data indication, Los atributos son un concepto
de la librería del cluster de ZigBee, en perfiles privados no son usados.
Beekit es un software que provee una interfaz grafica de usuario (GUI), la cual permite al
usuario crear y modificar soluciones inalámbricas en red basadas en el stack de protocolos de
Freescale. Beekit provee un wizard y un explorador de aplicaciones que permite al usuario
rápidamente configurar parámetros antes de crear el proyecto, reduciendo la necesidad de
ajustar parámetros individuales sobre los archivos, con un código comprensible basado en
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 155
Cada nodo ZigBee puede contener uno o más perfiles de aplicación, es decisión del
productor si usa un perfil público de la Alianza ZigBee o perfil privado. Los perfiles privados
tienen una ventaja al ser simples y flexibles a la hora de implementar. Los perfiles públicos de
aplicación tiene una ventaja al ser interoperables entre productores, pero el costo es código
extra y complejidad. Los perfiles públicos usan un ID dado por la Alianza ZigBee, por
ejemplo, el 0x0104 es para automatización del hogar. El perfil público que está disponible
para cada nodo es el perfil de dispositivo ZigBee (profile ID 0x0000). Este perfil provee
servicios comunes en todos los nodos. A continuación se define el proceso de desarrollo
basado en un perfil público y una aplicación personalizada definiendo un perfil privado.
2) Usar Beekit para crear la plataforma de trabajo (AF) desde una plantilla,
configurar la aplicación para incluir los componentes apropiados, configurar
propiedades y configurar endpoints.
5) Compilar aplicación.
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 156
7) Simular en hardware.
9) Si se crea más de una aplicación, usar Beekit para adicionar otras aplicaciones y
repita pasos del 2 al 8.
6) Simular en hardware.
8) Si se crea más de una aplicación, usar Beekit para adicionar otras aplicaciones y
repita pasos del 2 al 7.
Cuando se construya una aplicación personalizada, siempre se empieza con una plantilla
de aplicación de beekit. En este caso se empezará con la plantilla Generic Application y se
transformará en una aplicación personalizada. A continuación se enuncian los pasos para la
implementación desarrollada en esta tesis basado en la plantilla Generic Application.
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 157
Al iniciar el desarrollo de una aplicación de redes inalámbricas con Beekit, el primer paso
es seleccionar el código base de ZigBee asociado al chip IEEE 802.15.4 que se desee usar
(Figura (4-5)), para el caso de este proyecto se trabajo con el HCS08 BeeStack Codebase
3.0.7 que está asociado al chip MC13213 y al stack ZigBee 2007/Pro (Figura (4-6)).
Luego se define la plataforma de hardware, para esto hay que definir como transceiver
para un hardware personalizado el chip MC1321x (Figura (4-8)), para definir la distribución
del hardware haciendo click en Launch Platform Editor y crear la disposición de pines del
chip MC13213 sobre el módulo de red de sensores desarrollado en el capítulo 3 (Figura (4-
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 159
9)). En la Figura (4-10) sobre la opción RF Hardware Control se debe deshabilitar Use
External Anntena Switch, la cual es la forma de definir una configuración tipo single, siendo
el tipo de acoplamiento usado entre el MC13213 y la antena en el dispositivo desarrollado, el
cual se basa en el switch interno para conmutar las funciones de recepción y transmisión.
Finalmente para el caso del coordinador de la red se debe activar el puerto serial SCI, para la
conexión al PC y gestión de la red (Figura (4-11)).
En la Figura (4-12) se observa la selección del dispositivo ZigBee, que para este caso se
define el Coordinador, en la Figura (4-13) se configura el BeeStack entre las posibles
opciones que presentan los dos Stack Profile, para este caso se escogió la opción más simple,
buscando reducir retrasos en la evaluación de la red.
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 161
En la Figura (4-14) se define la dirección MAC del dispositivo y el PAN ID, por último en
la Figura (4-15) se selecciona el canal en que se comunicará la red.
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 162
Se realizan los mismos pasos que se llevaron a cabo con la configuración de ZcRedStar, la
única diferencia en seleccionar el dispositivo como End Device, a si mismo se puede agregar
un router y los demás dispositivos que se necesiten, como se en la Figura (4-18) la solución
para este ejemplo cuenta con tres dispositivos ZcRedStar, ZedRedStar1 y ZrRedStar,
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 164
Estando en el IDE CodeWarrior se puede acceder al código de toda la red (Figura (4-20)),
donde se pueden observar subdirectorios con los diferentes archivos propios de cada capa de
la red, junto con los dirvers de todos los periféricos seleccionados desde Beekit.
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 165
Después de obtener las plantillas de trabajos con el Beekit para los dispositivos ZigBee, se
continúa con la edición y adición de nuevas funciones para la correcta operación de la red, la
red RIB propuesta se basa en topología de red estrella (Figura (4-21)) con un ZcRedStar
central y múltiples ZedRedStars que reportan las señales biomédicas, el protocolo de red
propuesta se basa en especificar un espacio de tiempo de transmisión de cada ZED al ZC para
evitar colisiones de paquetes. En la Figura (4-22) se observa el inicio de la red y la ejecución
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 166
void BeeAppInit
(
void
)
{
unsigned int i;
/* initialize LED driver */
LED_Init();
/*
app specific events (bits 0-11) go here...
*/
La función BeeAppHandleKeys maneja las funciones de las teclas del nodo de sensores,
con (gKBD_EventSW1_c) se inicia la red si es un ZC o se vincula a la red si es un ZED (sólo
si un ZC ya inicio la red) indicándolo con un parpadeo en los LEDs (LED_StartSerialFlash()),
e inicia la máquina de estados del ZDO (ZigBee Device Object). Con (gKBD_EventSW2_c)
se invoca una función (CustomAppBroadcast()) que realiza la transmisión del mensaje de
broadcast para sincronizar el muestreo y procesamiento de las señales de los sensores en los
ZedRedStar. Con (gKBD_EventLongSW1_c) el dispositivo abandona la red y frena la
máquina de estados del ZDO.
void BeeAppHandleKeys
(
key_event_t keyEvent /*IN: Events from keyboard modul */
)
{
uint8_t led;
uint8_t accelData;
switch(keyEvent) {
/* form/join network */
case gKBD_EventSW1_c:
if (appState == mStateIdle_c) {
/* indicate looking for the network to form(ZC) or join(ZED, ZR) */
LED_StartSerialFlash();
ZDO_Start(gStartWithOutNvm_c);
}
break;
break;
/* no action */
case gKBD_EventLongSW1_c:
ZDO_Leave();
break;
}
}
La función BeeAppDataIndication procesa los mensajes ZigBee entrantes por el aire, que
son enviados por otros dispositivos, inicia preguntando por un mensaje pendiente, si lo hay, se
realiza la evaluación de quien lo transmitió y de que cluster, para este ejemplo se validan los
endpoints del 8 al 2, haciendo referencia a los ZedRedStar que pueden transmitir sus paquetes
de señales y que registraron sus endpoints al inicio de la red, cabe aclarar que se pueden ser
mas nodos en la medida que la aplicación lo requiera, teniendo en cuenta que el ZC es el
endpoint 1. Dentro de cada evaluación se transmite un primer byte que indica el número del
endpoint, se almacena las señales recibidas en el arreglo (gaAccelDemoXYZ) y se hace copia
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 170
del LQI, para luego ser transmitidos al puerto serial en otra función. Finalmente la función
libera la memoria y los señalizadores de paquetes entrantes.
void BeeAppDataIndication
(
void
)
{
apsdeToAfMessage_t *pMsg;
zbApsdeDataIndication_t *pIndication;
while(MSG_Pending(&gAppDataIndicationQueue))
{
/* Get a message from a queue */
pMsg = MSG_DeQueue( &gAppDataIndicationQueue );
/*
Note: if multiple endpoints are supported by this app, insert
endpoint filtering here...
This app assumes only 1 active endpoint. APS layer has already
filtered by endpoint and profile.
if(pIndication->srcEndPoint == 8){
LED_SetLed(LED4, gLedToggle_c);
/* Tx Serial Endpoint Label*/
Cab[2]=8;
UartX_Transmit(Cab, 3, UartTxCallBack);
}
}else if(pIndication->srcEndPoint == 7){
LED_SetLed(LED4, gLedToggle_c);
Cab[2]=7;
UartX_Transmit(Cab, 3, UartTxCallBack);
LED_SetLed(LED1, gLedToggle_c);
Cab[2]=2;
UartX_Transmit(Cab, 3, UartTxCallBack);
void CustomAppBroadcast
(
void
)
{
afAddrInfo_t addrInfo;
uint8_t zbNwk[2];
zbNwk[0] = 0xff;
zbNwk[1] = 0xff;
A continuación se define una estructura de datos accelState_t para definir una máquina de
estados para adquirir y procesar las señales que maneja cada nodo ZedRedStar, la máquina de
estados se inicia cada vez que se presenta una interrupción del tiempo de reporte.
/* states for get the sensors samples */
typedef enum {
accelStateStopped_c,
accelStateStart_c,
accelStateReadX_c,
accelStateReadY_c,
accelStateReadZ_c,
accelStateReadT_c,
accelStateReadP_c,
accelStateReport_c
} accelState_t;
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 173
La Tabla (4-1) presenta de manera breve la función de cada estado dentro de la máquina
de estado con el fin de destinar un espacio al manejo de cada señal.
Estado Operación
accelStateReadX_c Procesa la señal X, inicia la muestra del canal del eje Y del
acelerómetro.
accelStateReadY_c Procesa la señal Y, inicia la muestra del canal del eje Z del
acelerómetro.
accelStateReadT_c Procesa la señal de T, inicia la muestra del canal del sensor de Presión.
accelStateReport_c Queda en espera hasta que se dispare el tiempo de reporte para Tx.
La siguiente definición son las posiciones dentro del arreglo de paquete de señales RIB
del nodo ZedRedStar
/* positions in the accelerometer array */
#define idSample_c 0
#define accelDemoX_c 1
#define accelDemoY_c 2
#define accelDemoZ_c 3
#define accelDemVX_c 4
#define accelDemVY_c 5
#define accelDemVZ_c 6
#define accelDemPX_c 7
#define accelDemPY_c 8
#define accelDemPZ_c 9
#define accelDemAX_c 10
#define accelDemAY_c 11
#define accelDemAZ_c 12
#define accelDemoT_c 13
#define accelDemoP_c 14
La Tabla (4-2) presenta el contenido de cada posición (1 byte) dentro del paquete de la
señal a transmitir del nodo ZedRedStar.
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 174
accelDemoX_c Aceleración en X.
accelDemoY_c Aceleración en Y.
accelDemoZ_c Aceleración en Z.
accelDemoT_c Temperatura.
accelDemoP_c Presión.
En las siguientes definiciones se observan los estados de máquina de estados que controla
la función de aplicación BeeAppTask():
/* BeeAppTask events (bit mask... upper 4 bits reserved by BeeStack) */
#define accelEventReport_c (1 << 0) /* send a report */
#define accelEventState_c (1 << 1) /* move on to next state */
#define accelEventWaitZed_c (1 << 2) /* Wait Broadcas data */
En la Tabla (4-3) se observa los tres estados básicos y las tareas que se desarrollan.
Estado Función
accelEventReport_c Cuando las señales han sido tomadas y procesadas, después del
disparo del evento del tiempo de reporte, se inicia la transmisión del
paquete.
A continuación se definen los canales del conversor análogo digital ADC que están
conectados a sensores, En la Figura (4-23) se observa la arquitectura del ADC del chip
MC13213 de 8 canales, con la posibilidad de realizar conversión de 8 y 10 bits, para esta
aplicación se configuró a 8 bits.
/* ADC Sensors channels*/
#define TempAdcChannel 7
#define PressureAdcChannel 6
#define accelAdcChannelX 5
#define accelAdcChannelY 4
#define accelAdcChannelZ 3
se ha iniciado la red, luego registra el dispositivo a la red, junto con el endpoint y el cluster,
inicializa los timer de reporte y de espera, Los timers deben ser asignados antes de que inicien
o paren con TMR_AllocateTimer(), cada timer cuando expira, llama una función de callback
(explicadas más abajo). Para la adquisición de los sensores se inicializan los conversores
análogos digitales con (ATDInit()), finalmente, realiza la calibración del acelerómetro, esto
con el fin de buscar los puntos de referencia a partir de la posición actual del nodo; basado en
un filtro promediador, compuesto de la acumulación de 1024 muestras y una división final, lo
cual se hace para los tres canales del acelerómetro.
void BeeAppInit
(
void
)
{
unsigned int i;
/* initialize LED driver */
LED_Init();
/*Calibration Routine*/
/*X Axis*/
cal_xi = 0;
for (i=1;i<=0x400;i++){ // 1024 times
ATDSC = accelAdcChannelX;
while((ATDSC & 0x80) == 0);
cal_xi = cal_xi + ATDRH; // Acumulate samples
}
cal_xi = cal_xi>>10; // division between 1024
/*Y Axis*/
cal_yi = 0;
for (i=1;i<=0x400;i++){ // 1024 times
ATDSC = accelAdcChannelY;
while((ATDSC & 0x80) == 0);
cal_yi = cal_yi + ATDRH; // Acumulate samples
}
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 177
/*Z Axis*/
cal_zi = 0;
for (i=1;i<=0x400;i++){ // 1024 times
ATDSC = accelAdcChannelZ;
while((ATDSC & 0x80) == 0);
cal_zi = cal_zi + ATDRH; // Acumulate samples
}
cal_zi = cal_zi>>10; // division between 1024
}
La función BeeAppTask realiza las tareas de la aplicación y controla el flujo del programa
a partir de una estructura multitarea, basada en una prueba de eventos por medio de sentencias
if independientes, primero revisa si algún comando de la red pendiente como confirmación de
un paquete, recepción de un paquete en cola o un requerimiento de sincronización de la red.
Continúa con el evento de reporte que inicia con la transmisión (RIBReportData()), la
conmutación del LED1 para señalizar la operación y devuelve el control a la máquina de
estados. Para el estado de espera mantiene encendido el LED4, finalmente evalúa el estado
captura y procesamiento de las señales de los sensores con
(RIBStateMachine(giAccelDemoState)).
void BeeAppTask
(
event_t events /*IN: events for the application task */
)
{
/*
events bits 12-15 are defined in BeeApp.h, and are generic to all apps
*/
/* report data over-the-air (assumes SW3 has been pressed to find display) */
RIBReportData();
LED_SetLed(LED1, gLedToggle_c);
La función BeeAppHandleKeys maneja las funciones de las teclas del nodo de sensores,
con (gKBD_EventSW1_c) se inicia la red si es un ZC o se vincula a la red si es un ZED, con
(gKBD_EventSW2_c) el ZED busca el ZC y hace la operación binding o conexión del
endpoint con la función (ASL_MatchDescriptor_req) y con (gKBD_EventLongSW1_c) el
dispositivo abandona la red.
void BeeAppHandleKeys
(
key_event_t keyEvent /*IN: Events from keyboard module */
)
{
switch(keyEvent) {
/* form/join network */
case gKBD_EventSW1_c:
if (appState == mStateIdle_c) {
ZDO_Start(gStartWithOutNvm_c);
}
break;
/* Find ZC using match descriptor */
case gKBD_EventSW2_c:
if(!gfAccelIsDisplay)
ASL_MatchDescriptor_req( NULL, gaBroadcastRxOnIdle,
AF_FindEndPointDesc(appEndPoint) );
break;
/* no action */
case gKBD_EventLongSW1_c:
ZDO_Leave();
break;
}
}
void BeeAppZdpCallBack
(
zdpToAppMessage_t *pMsg,
zbCounter_t counter
)
{
uint8_t event;
zbMatchDescriptorResponse_t * pMatchRsp;
(void)counter;
case gMatch_Desc_rsp_c:
pMatchRsp = &(pMsg->msgData.matchDescriptorResponse);
if (pMatchRsp->status == gZbSuccess_c) {
/* indicate matched */
LED_SetLed(LED3, gLedOn_c);
appState = mStateZDO_device_running_c;
/* stop the flashing and indicate the device is running (has joined the network)
*/
LED_SetLed(LED1, gLedOn_c);
}
break;
}
La función BeeAppDataIndication procesa los mensajes ZigBee entrantes por el aire, que
son enviados por otros dispositivos, inicia preguntando por un mensaje pendiente, si lo hay, lo
procesa según sea definido, para el caso del ZedRedStar, sólo se procesa los paquetes
entrantes con el comando de Broadcast, si es así, señaliza con LEDs e inicia la máquina de
estados del captura de señales, con fin de dar un punto de partida a la red estrella, es decir que
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 180
inicien el muestreo todos los ZedRedStar al mismo tiempo, y el timer de reporte se encarga de
desfasarlos de manera ordenada y reducir la colisión de paquetes. Finalmente la función libera
la memoria y los señalizadores de paquetes entrantes.
void BeeAppDataIndication
(
void
)
{
apsdeToAfMessage_t *pMsg;
zbApsdeDataIndication_t *pIndication;
while(MSG_Pending(&gAppDataIndicationQueue))
{
/* Get a message from a queue */
pMsg = MSG_DeQueue( &gAppDataIndicationQueue );
if(pIndication->fWasBroadcast){
LED_SetLed(LED4, gLedOff_c);
LED_SetLed(LED2, gLedToggle_c);
/* set up cluster */
Copy2Bytes(addrInfo.aClusterId, appDataCluster);
void RIBDisplayModeCallBack
(
tmrTimerID_t timerId /* IN: */
)
{
(void)timerId; /* to prevent compiler warnings */
giAccelDemoState = accelStateStart_c;
TS_SendEvent(gAppTaskID, accelEventState_c);
}
void RIBStateMachine
(
accelState_t state /* IN: */
)
{
unsigned char Index;
/* taking a new reading */
giAccelDemoState = state;
TS_SendEvent(gAppTaskID, accelEventState_c);
break;
/*Fist X Integration*/
vel1x = (vel0x + ace0x + ((ace1_x - ace0x)>>1));
/*Second X Integration*/
pos1x = (pos0x + vel0x + ((vel1x - vel0x)>>1));
ace0x = ace1_x; // The current acceleration value must be sent to the previous
accel
vel0x = vel1x; // Same done for the velocity variable
if(ace1_x == 0)
Countx++;
else
Countx = 0;
if(Countx >= 25){
vel0x = 0;
vel1x = 0;
}
pos0x = pos1x; // The current position value must be sent to the previous
position
gaAccelDemoXYZ[idSample_c] = ContS;
gaAccelDemoXYZ[accelDemoX_c] = (ace1_x & 0x00ff) + 127;
gaAccelDemoXYZ[accelDemVX_c] = vel1x & 0x000000ff;
gaAccelDemoXYZ[accelDemPX_c] = pos1x & 0x000000ff;
gaAccelDemoXYZ[accelDemAX_c] = AngX[(ace1_x & 0x00ff)+127]; //angle tilt in
giAccelDemoState = accelStateReadY_c;
ATDSC = accelAdcChannelY; /* Setup to read the Y channel */
}
TS_SendEvent(gAppTaskID, accelEventState_c);
break;
/*Fist X Integration*/
vel1y = (vel0y + ace0y + ((ace1_y - ace0y)>>1));
/*Second X Integration*/
pos1y = (pos0y + vel0y + ((vel1y - vel0y)>>1));
ace0y = ace1_y; // The current acceleration value must be sent to the previous
accel
vel0y = vel1y; // Same done for the velocity variable
if(ace1_y == 0)
County++;
else
County = 0;
if(County >= 25){
vel0y = 0;
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 183
vel1y = 0;
}
pos0y = pos1y; // The current position value must be sent to the previus
position
TS_SendEvent(gAppTaskID, accelEventState_c);
break;
/*Fist Z Integration*/
vel1z = (vel0z + ace0z + ((ace1_z - ace0z)>>1));
/*Second Z Integration*/
pos1z = (pos0z + vel0z + ((vel1z - vel0z)>>1));
ace0z = ace1_z; // The current acceleration value must be sent to the previous
accel
vel0z = vel1z; // Same done for the velocity variable
if(ace1_z == 0)
Countz++;
else
Countz = 0;
pos0z = pos1z; // The current position value must be sent to the previous
position
giAccelDemoState = accelStateReadT_c;
ATDSC = TempAdcChannel; /* Setup to read the Temperature channel */
}
TS_SendEvent(gAppTaskID, accelEventState_c);
break;
TS_SendEvent(gAppTaskID, accelEventState_c);
break;
Capítulo 4. Desarrollo de la red de instrumentación biomédica basada en ZigBee 184
/* time to report the results (just wait until timer expires. See RIBTimerCallBack() */
case accelStateReport_c:
break;
} /* end of switch */
} /* end of RIBStateMachine() */
Capítulo 5 Evaluaciones del nodo de red y de la red de
instrumentación biomédica en una aplicación
biomecánica
5.1 D ISEÑO DEL EXPERIMENTO EVALUACIÓN DEL NODO DE RED IEEE 802.15.4
Se usaron dos módulos de plataforma de red de sensores (Figura (5-1)): uno con perfil de
transmisor y otro con perfil de receptor, se desarrollo un código en el transmisor que busca un
canal libre (basado en el parámetro ED ) entre el 11 y el 26, debido a que el MC13213 trabaja
en la banda de 2.4 GHz, después de encontrar un canal libre, el transmisor envía paquetes
característicos buscando la atención del receptor, a su vez el receptor hace un barrido sobre
los canales buscando al transmisor. En el momento que se encuentran el transmisor y el
receptor inician el enlace de comunicación.
185
Capítulo 5. Evaluaciones del nodo de red y de la red de instrumentación biomédica 186
Cada medida se repitió 4 veces en diferentes momentos, buscando mantener línea de vista
entre transmisor y receptor, las medidas se hicieron con las tres secuencias en dos lugares
diferentes, en un parqueadero a campo abierto, y en un parqueadero subterráneo sin presencia
de señal de telefonía celular ni redes Wi-fi. En ambos parqueaderos había constante entrada y
salida de automóviles y peatones, simulando el ambiente del paciente.
Se realizó el montaje observado en la Figura (5-2), se usaron tres nodos de red definidos
como ZED (Dispositivo Final ZigBee) y un ZC (Coordinador ZigBee), los ZED se
distribuyeron en la cadera, rodilla y tobillo del paciente, se realizó una secuencia de caminata,
cada dispositivo ZED transmite la datos del paquete de sensores de la RIB definido
previamente, y es recibido por el ZC y transmitido por comunicación serial al PC. Estos datos
se adquirieron en el software matlab para posterior análisis. Para esta prueba sólo se tuvo en
cuenta la aceleración en los tres ejes del paquete RIB, el período RIB fue de 70 mS, con
Capítulo 5. Evaluaciones del nodo de red y de la red de instrumentación biomédica 187
5.3 R ESULTADOS
A continuación se presenta los resultados de los dos experimentos que se usaron para
evaluar el desempeño de la RIB:
Las Figuras (5-3) y (5-4) muestran medidas de LQI y Paquetes perdidos del total de 1000
paquetes enviados respectivamente, enviados a niveles de potencia baja, media y alta, en
campo abierto y en subterráneo, con potencia baja se pudo medir hasta 20 m en ambos
escenarios, con media hasta 50 m y con alta hasta 60 m, a distancias mayores todos los
paquetes se perdieron.
-50
LQI (dBm)
-60
-70
-80
-90
0 10 20 30 40 50 60 70 80 90 100
Distancia (m)
600
500
400
300
200
100
0
0 10 20 30 40 50 60 70 80 90 100
Distancia (m)
Las Figuras (5-5) y (5-6) muestran medidas de LQI y Paquetes perdidos del total de 1000
paquetes enviados respectivamente, enviados a niveles de potencia baja, media y alta, en
campo abierto y en subterráneo, con potencia baja se pudo medir hasta 20 m en ambos
escenarios, con media hasta 50 m y con alta hasta 100 m, esta última limitación fue por el
espacio más no por la comunicación.
Capítulo 5. Evaluaciones del nodo de red y de la red de instrumentación biomédica 190
-50
LQI (dBm)
-60
-70
-80
-90
0 10 20 30 40 50 60 70 80 90 100
Distancia (m)
600
500
400
300
200
100
0
0 10 20 30 40 50 60 70 80 90 100
Distancia (m)
Las Figuras (5-7) y (5-8) muestran medidas de LQI y Paquetes perdidos del total de 1000
paquetes enviados respectivamente, enviados a niveles de potencia baja, media y alta, en
campo abierto y en subterráneo, con potencia baja se pudo medir hasta 30 m en ambos
escenarios, con media hasta 80 m y con alta hasta 100 m, esta última limitación fue por el
espacio más no por la comunicación.
-50
LQI (dBm)
-60
-70
-80
-90
0 10 20 30 40 50 60 70 80 90 100
Distancia (m)
600
500
400
300
200
100
0
0 10 20 30 40 50 60 70 80 90 100
Distancia (m)
Se efectuaron pruebas con humanos, para observar la respuesta del sistema de adquisición
de la aceleración sobre la RIB en las tres articulaciones de una pierna, En la Figura (5-9), se
observan tres gráficas de aceleración dentro de la marcha de un humano, cada ciclo de marcha
es definido por el intervalo marcado por las líneas segmentadas rojas, el cual inicia con el
contacto inicial del talón con el piso, las líneas segmentadas verdes muestran el instante en
que despegan los dedos de los pies para iniciar la fase de balanceo. En la Figura (5-10) se
observa el mismo resultado anterior para la rodilla y en la Figura (5-11) para la cadera. Como
se definió en 5.2 cada muestra es tomada cada 70 mS.
En la Figura (5-12) se observa el LQI obtenido durante la prueba en cada nodo transmisor
de cada articulación, esta señal se registra en el Coordinador ZigBee de red en la función de
llegada de paquetes, la cual representa el indicador de la calidad de la transmisión.
Capítulo 5. Evaluaciones del nodo de red y de la red de instrumentación biomédica 193
Figura 5-12: Índice LQI de los tres nodos ZED obtenido para una
secuencia de 5 pasos de marcha.
Capítulo 5. Evaluaciones del nodo de red y de la red de instrumentación biomédica 195
Como se definió en el capítulo 1, el ciclo de marcha esta determinado entre dos instantes
de contacto inicial del talón del pie con la tierra, el cual tiene un período de aproximadamente
dos segundos para esta prueba, y es demarcado con las líneas rojas segmentadas en las
Figuras (5-9), (5-10) y (5-11), correspondientes a las medidas de aceleración en cadera,
rodilla y tobillo. Particularmente en la Figura (5-9), en la aceleración de la coordenada Y del
tobillo (opuesta a la fuerza de gravedad, ver Figura (5-2)) se observa de manera mas clara las
fases del ciclo de la marcha, el cual inicia con una desaceleración propia de la finalización de
la zancada y posicionamiento de la planta del pie al inicio de la fase de soporte, la mayor parte
de esta fase continua sin aceleración propia de la recepción del peso del cuerpo y el soporte de
la zancada del miembro colateral, para luego iniciar la fase de balanceo con el despegue de los
dedos del pie de la tierra (líneas segmentadas de color verde), el tobillo en el balanceo inicial
desacelera, es decir cae en dirección de la tierra hasta encontrarse con el miembro colateral en
Capítulo 5. Evaluaciones del nodo de red y de la red de instrumentación biomédica 196
la subfase de balanceo medio, para iniciar una alta aceleración que determina el
desplazamiento del miembro, finalmente la subfase de balanceo final, que se inicia con una
desaceleración para la preparación del inminente contacto y se produce una acción de frenado,
dando paso a un nuevo ciclo de marcha.
En la Figura (5-12) se observa el LQI obtenido durante la prueba en cada nodo, y puede
apreciarse que se mantuvo una buena calidad de los paquetes en la transmisión, acorde a
la evaluación desarrollada en el capítulo 5, siendo consecuente con la eficiencia de la
comunicación, ya que no hubo ningún paquete perdido.
5.4 C ONCLUSIONES
El LQI disminuye con la distancia como era de esperarse o con la presencia de obstáculos
en la comunicación. Con potencia alta el LQI se mantiene cerca del valor mínimo (-95 dBM),
pero permanecen las comunicaciones con un nivel bajo de pérdidas.
Dentro de este trabajo no se realizaron retransmisiones de los datos perdidos, con el fin de
analizar la sensibilidad de los parámetros evaluados, y de seleccionar los valores óptimos con
el menor número de pérdidas, con lo que se garantizan menores retrasos en comunicaciones al
implementar retransmisiones e integración a redes de múltiples nodos.
El desarrollo del perfil privado RIB ZigBee presentado en este capítulo permite la
migración a otro microcontrolador ya que es un desarrollo en lenguaje C y los drivers de los
periféricos son cambiados automáticamente por la herramienta Beekit, si el microcontrolador
que se tiene en mente no es de la compañía Freescale, habría que implementar los drivers de
periféricos con los mismo nombres de funciones de la plantilla y el código de red sería
totalmente portable.
198
Referencias 199
Referencias
[1] 1. Guest Editorial Introduction to the Special Section on M-Health: Beyond Seamless
Mobility and Global Wireless Health-Care Connectivity. Istepanian, R. S. H.,
Jovanov, E. y Zhang, Y. T. 2004, IEEE Transactions on Information Technology in
Biomedicine, págs. 405-414.
[2] 2. Wearable Technology. IEEE EMB. 2003, Special Issue of the IEEE Engineering in
Medicine and Biology Magazine, pág. 22.
[3] 3. A wireless body area network of intelligent motion sensors for computer assisted
physical rehabilitation. Jovanov, E., y otros. 2005, Journal of NeuroEngineering and
Rehabilitation, Vol. 2, págs. 1-3.
[8] 8. Center for Wireless Integrated Microsystems. Center for Wireless Integrated
Microsystems (WIMS). [En línea] [Citado el: 10 de 11 de 2010.]
http://www.wimserc.org/.
[10] 10. Technology Overview:: The Gait Analysis Laboratory. Lee, Gyusung y Pollo,
Fabian E. 2, s.l. : Spring, 2001, Journal of Clinical Engineering, Vol. 26, págs. 129-
135.
[11] 11. How is human gait controlled by vision? Patla, Aftab. 3-4, 1998, Ecological
Psychology, Vol. 10, págs. 287-302.
[12] 12. Upper and lower extremity robotic devices for rehabilitation and for studying motor
control. Hesse, Stefan, y otros. 6, 2003, Current Opinion in Neurology, Vol. 16, págs.
705-710.
[13] 13. Intelligent knee-ankle-foot orthosis: The gait project approach, Rehabilitation
Sciences in the New Millenium - Challenge for Multidisciplinary Research. Freriks, B.,
y otros. Leipzig, Germany : s.n., 2004. Orthopaedie-Technik.
[14] 14. "Intelligent Knee-ankle-foot orthosis: The GAIT project approach". Rocon, E., y
otros. Ljubljana : Slovenia, 2004. 8th Congress of European Federation of Research in
Rehabilitation. págs. 271-274.
[16] 16. Networking Telemedicine in Portable Rehabilitation Robot Monitor System. Xuhui,
Chen, y otros. 1, Maribor : s.n., 2007, Scientific Journal on Applied Information
Technology, Vol. 3.
[18] 18. Prevalence of diagnosed atrial fibrillation in adults: national implications for
rhythm management and stroke prevention: the AnTicoagulation and Risk Factors in
Atrial fibrillation (ATRIA) study. Go, A. S., y otros. 18, 2001, The Journal of the
American Medical Association, Vol. 285, págs. 2370-2375.
[19] 19. Azis, O., y otros. Body Sensor Networks. s.l. : London Springer, 2007. pág. ch. 1.
[20] 20. The seventh report of the Joint National Committee on prevention, detection,
evaluation, and treatment of high blood pressure: the JNC 7 report. Chobanian, A. V.,
y otros. 19, 2003, The Journal of the American Medical Association, Vol. 289, págs.
2560-2572.
Referencias 201
[21] 21. Hunt, S. A., y otros. ACC/AHA guidelines for the evaluation and management of
chronic heart failure in the adult. s.l. : endorsed by the Heart Failure Society of
America, 2001.
[22] 22. Lipid management in patients with diabetes mellitus. Brown, A. S. 4A, 2005,
American Journal of Cardiology, Vol. 96, págs. 26-32.
[23] 23. Sistema de Integración de Redes Zigbee de Sensores Biomédicos y Minería Web
para la aplicación en Telemedicina. Cifuentes, C., y otros. Florianopolis, Brasil : s.n.,
2010. TEC-SAÚDE2010.
[24] 24. Population aging and health. Butler, R. N. 7115, 1997, British Medical Journal,
Vol. 315, págs. 1082-1084.
[25] 25. Applying Wearable Sensors to Avalanche Rescue. Michahelles, F., y otros. 6, 2003,
Computers and Graphics, Vol. 27, págs. 839–847.
[26] 26. Welsh, Matt. Code Blue: A wireless sensor network for medical care and disaster
response. Harvard University. [En línea] 2005.
http://www.eecs.harvard.edu/~mdw/talks/ucsd-codeblue.pdf.
[27] 27. Proactive Instructions for Furniture Assembly. Antifakos, S., Michahelles, F. y
Schiele, B. Gothenburg, Sweden : s.n., 2002. Ubicomp 2002.
[28] 28. Human++: From technology to emerging health monitoring concepts . Penders, J.,
y otros. Hong Kong, China : s.n., 2008. Medical Devices and Biosensors, 2008. págs.
94-98.
[29] 29. Instruments, Texas. Wireless performance optimization solutions: Bluetooth and
802.11 coexistence. 2003. pág. 2. Product Bulletin.
[30] 30. Murillo, Daniel Sánchez. Procesado y transmisión de señales biomédicas para el
diagnóstico d trastornos y enfermedades del sueño. Tesis doctoral. [En línea] 2008.
http://minerva.uca.es/publicaciones/asp/docs/tesis/DSanchezMorillo.pdf.
[31] 31. Guyton, Arthur C. y Hall, John E. Tratado de Fisiología médica. 11. s.l. :
ELSEVIER, 2006.
[32] 32. Medida de la Saturación de Oxígeno por Medio Optico. Laborde, Manuel.
Montevideo, Uruguay : s.n., 2004. XIII Seminario de Ingeniería Biomédica Facultades
de Medicina e Ingeniería Universidad de la República Oriental del Uruguay.
Referencias 202
[33] 33. Chan, Vincent y Underwood, Steve. A Single-Chip Pulsoximeter Design Using the
MSP430. s.l. : Texas Instruments, 2005.
[34] 34. Whittle, Michael W. An Introduction to Gait Analysis. 4th. s.l. : Elsevier, 2007.
[36] 36. Winter, David A. Biomechanics and Motor Control of Human Gait: Normal,
Elderly and Pathological. 2nd. Waterloo, Ontario : University of Waterloo Press, 1991.
[39] 39. Papacetzi, Archundia y Martín, Francisco. Wireless Personal Area Network
(WPAN) & Home Networking. Escuela de Ingeniería, Universidad de las Américas
Puebla. 2003.
[41] 41. Diosdado, Tolosa y Ángel, Miguel. Sistema de autoconfiguración para redes Ad
hoc. s.l. : E-Prints Complutense, 2009.
[42] 42. Tablado, Alberto Moreno. Estándar Bluetooth. [En línea] [Citado el: 10 de
Noviembre de 2010.] http://www.seguridadmobile.com/bluetooth/especificacion-
bluetooth/estandar-bluetooth/index.html.
[43] 43. Rodríguez, Darío y Maya, Ricardo. Implementación de una Red Inalámbrica
Bluetooth. Universidad del Valle. 2003. Trabajo de grado.
[44] 44. Josep, V. M. Desarrollo de aplicaciones WEB con UML. VICO. [En línea] 2002.
[Citado el: 10 de Noviembre de 2010.] vico open modeling.
[45] 45. IEEE Computer Society. Part 15.2: Coexistence of Wireless Personal Area
Networks with Other Wireless Devices Operating in Unlicensed Frequency Band. s.l. :
IEEE Standards Association, 2003. págs. 1-2.
Referencias 203
[46] 46. Faudot, Iván Barneda. ZigBee Aplicado a la Transmisión de Datos de Sensores
Biomédicos. Universidad Autonoma de Barcelona. 2008. Trabajo de grado.
[47] 47. IEEE. IEEE P802.15.3 High Rate (HR) Task Group (TG3) for Wireless Personal
Area Networks . [En línea] [Citado el: 10 de Noviembre de 2010.]
http://www.ieee802.org/15/pub/TG3/.
[48] 48. Patrick, Kinney. ZigBee Technology: Wireless Control that Simply Works. s.l. :
IEEE, 2003. Chair of IEEE 802.15.4 Task Group.
[49] 49. IEEE 802.15 Working Group for Wireless Personal Area Networks,. TG5
Technical Requirements. s.l. : IEEE, 2004. págs. 3-4.
[50] 50. IEEE Computer Society. Wireless Medium Access Control (MAC) and Physical
Layer (PHY) Specifications for Low-Rate Wireless Personal Area Networks (WPANs).
s.l. : IEEE Standards Association, 2006. págs. 20-134.
[52] 52. Medical Devices Agency. Medical Devices Bulletin DB9702 Electromagnetic
compatibility of medical devices with mobile communications. London : s.n., 1997.
[54] 54. Electromagnetic interference to infusion pumps from GSM mobile phones.
Calcagnini, G., y otros. 2004. Proceedings of the 26th Annual International
Conference IEEE EMBS. Vol. 2, págs. 3515-3518.
[55] 55. c. Fung, L. C., y otros. Kioto : s.n., 2009. International Symposium on
Electromagnetic Compatibility.
[56] 56. FDA. Radio-Frequency Wireless Technology in Medical Devices. [En línea]
[Citado el: 20 de 3 de 2011.]
http://www.fda.gov/MedicalDevices/DeviceRegulationandGuidance/GuidanceDocumen
ts/ucm077210.htm.
Referencias 204
[57] 57. ZigBee Alliance . ZigBee Alliance Our Mission . [En línea] [Citado el: 10 de
Noviembre de 2010.] http://zigbee.org/About/OurMission.aspx.
[58] 58. Ángel, Maldonado Laurente. Diseño de una red utilizando el protocolo de
comunicación Zigbee para el sistema de recirculación de la planta acuícola PUCP. [En
línea] 2008. [Citado el: 10 de 11 de 2010.] Trabajo de grado.
http://tesis.pucp.edu.pe/tesis/ver/1041.
[60] 60. Farahani, S. ZigBee Wireless Networks and Transceivers. USA : Elsevier, 2008.
págs. 20-97.
[61] 61. Freescale Inc. Freescale BeeStack, Software Reference Manual for ZigBee 2007
Rev 1.1. 2008. Technical Data.
[62] 62. Digi International Inc. Digi International Inc. [En línea] [Citado el: 10 de
Noviembre de 2010.] http://www.digi.com/products/wireless/zigbee-mesh/xbee-
digimesh-2-4.jsp#specs.
[63] 63. EasyBeeTM. EasyBeeTM. 2.4GHz ZigBee ready IEEE 802.15.4 RF transceiver.
[En línea] [Citado el: 10 de Noviembre de 2010.]
http://www.flexipanel.com/Docs/EasyBee%20DS480.pdf.
[64] 64. Freescale Inc. MC1321x Evaluation Kit. 2008. págs. 12-14, Reference Manual.
[65] 65. Tomé Castro, J M. Diseño de módulos ZigBee de bajo coste. Universidad
Politécnica de Cataluña. 2006. Trabajo de grado.
[66] 66. Freescale Inc. MC13211/212/213 ZigBee™- Compliant Platform - 2.4 GHz Low
Power Transceiver for the IEEE® 802.15.4 Standard plus microcontroller Rev. 1.8.
2009. Technical Data.
[67] 67. Johanson Technology. Balun Parameter Definitions & Measurement. 2004.
Technical Document.
[68] 68. AEROCOM. Antenna Tutorial. [En línea] 1995. [Citado el: 9 de 12 de 2010.]
http://www.scribd.com/doc/19468870/Antenna-Tutorial.
[69] 69. Vitelma, M. Introducción a las antenas. 2005. pág. 18, Documento técnico.
Referencias 205
[71] 71. Freescale Inc. IEEE 802.15.4 / 1321x-SRB development board reference design.
2007. Technical Data.
[72] 72. Klein, W P. Solder pad recommendations for surface-mount devices. 2003. págs. 1-
2. Burr Brown Products from Texas Instruments.
[73] 73. Johanson Technology. High Frequency Ceramic Solutions, Detail Specification
2450AT18A100,. 2003. págs. 1-2, Technical Document.
[74] 74. Freescale Inc. Introduction to HCS08 Background Debug Mode. 2006. págs. 3-5,
Application Note.
[76] 76. Fairchild Semiconductor. FM50 Analog Temperature Sensor. 2008. págs. 2-5,
Reference manual.
[77] 77. Freescale Inc. Integrated Silicon Pressure Sensor On-chip Signal Conditioned,
Temperature compensated, and Calibrated. 2008. págs. 1-5, Technical Data.
[78] 78. —. ±1.5g - 6g Three Axis Low-g. 2008. págs. 5-6, Technical Data.
[79] 79. Diamond, Christopher I. How ZigBee Works. The University of Alabama at
Birmingham . [En línea] [Citado el: 10 de Noviembre de 2010.]
http://homepage.uab.edu/cdiamond/How%20Zigbee%20Works.htm.
[80] 80. Freescale Inc. BeeKit Wireless Connectivity Toolkit. [En línea] [Citado el: 10 de
Noviembre de 2010.]
http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=BEEKIT_WIRELE
SS_CONNECTIVITY_TOOLKIT.
[81] 81. Freescale Inc. ZigBee™- Compliant Platform - 2.4 GHz Low Power Transceiver
for the IEEE® 802.15.4 Standard plus Microcontroller. 2008. págs. 1-4, Technical
Data, Rev 1.5.
[82] 82. —. Simple Media Access Controller (SMAC) User’s Guide SMACRM . 2008. pág.
37, Technical Data, Rev 1.
Referencias 206
[83] 83. —. IEEE 802.15.4 / ZigBee Package and Hardware Layout Considerations. 2009.
págs. 21-24, Reference Manual.
[84] 84. Freescale Inc. Freescale BeeStack Application Development Guide Rev. 1.1. 2008.
Technical Data.
[85] 85. ETRI. Project: IEEE P802.15 Working Group forWireless Personal Area Networks
(WPANs). s.l. : IEEE, 2006. págs. 1-6.