Anda di halaman 1dari 14

Diseo de un Instrumento Inteligente Multisensorial basado en

JDL y HRT-HOOD.
Multisensors Intelligent Instrument Design based in JDL and HRT-HOOD.
Margarita Heraoui
[1]
y Luis Parraguez
[2]
[1]
heraouim@cantv.net /
[2]
parraguezl@cantv.net
Universidad de Oriente. Ncleo Anzotegui. Postgrado en Ing. Elctrica.
Resumen
En este trabajo se disea un Instrumento Inteligente Multisensorial, basado en una aplicacin parcial
del Modelo JDL, fusin Bayesiana de Datos y metodologa orientada a objetos de Tiempo Real Crtico
(HRT-HOOD). A partir de una descripcin del Modelo JDL para Fusin de Datos, una estructura
bayesiana para la integracin y fusin de sensores, una arquitectura HRT-HOOD para el desarrollo de los
aspectos computacionales, y un grupo de elementos de electrnica digital y analgica (microcontrolador,
amplicadores operacionales, etc.) se construye un instrumento inteligente de altas prestaciones y de bajo
costo, capaz de comunicarse con otros dispositivos digitales (PC, micros, etc.) para el intercambio de
informacin e interaccin con niveles de orden superior, como por ejemplo los descritos en la pirmide de
automatizacin de procesos.
Palabras Claves: Instrumentacin Inteligente, Sensores, Teorema de Bayes, Fusin de Datos, Modelo
JDL, HRT-HOOD, Sistemas de Tiempo Real, Microcontroladores.
Abstract
In this paper we design an Mutisensor Intelligent Instrument, based on a partial aplication of
JDL Model, Bayesian data fusion and a methodology, oriented to critical Hard Real Time Objects
(HRT-HOOD). From an description of the Data Fusion JDL Model, an Bayesian structure for
the sensors integration and fusion, an HRT-HOOD architecture for development of computational
aspects, and an elements group of digital and analogical electronics (microcontroller, Operational
Ampliers, etc.) we constructs an low cost and high performance intelligent instrument, able
to communicate with other digital devices (PC, micros, etc.) to information interchange and
interaction with high order levels, eg. those described in process automation pyramid.
Key Words: Intelligent Instrumentation, Sensors, Bayes Theorem, Data Fusion, JDL Model,
HRT-HOOD, Real-Time Systems, Microcontrollers.
Introduccin.
El rea de conocimientos conocida como
Integracin y Fusin de Datos [5] es de vieja data,
y por la naturaleza de sus primeros campos de
aplicacin (militar) ha estado circunscrita a contextos
tecnolgicos que demandan equipos considerados de
altas prestaciones computacionales. Sin embargo, la
disminucin en los costos para la produccin de la
nuevas tecnologas de informacin y comunicaciones
(TICs), particularmente para nuestro caso en la
fabricacin de sensores y microcontroladores, ha
permitido evolucionar hacia la incorporacin de
algoritmos complejos y de grandes prestaciones en
circuitos digitales pequeos y de costo bajo, los que
constituyen la base de muchas de las apliaciones
modernas, incluyendo la instrumentacin.
En la ltima dcada, independientemente del tipo
1
de aplicacin (Militar, Diagnstico Mdico, Robtica,
Monitoreo Ambiental, Control y Mantenimiento
Industrial, Domtica) el instrumento ha dejado de ser
simplemente el "aparato encargado de obtener una
medida" de las variables bajo estudio y/o control,
para evolucionar hacia constituirse en el sistema
de control por s mismo o en un medio del cual
podemos obtener informacin ms all de los "datos
crudos", lo que conocemos hoy como "Intrumentacin
Inteligente".
Esta tendencia ha demandado de un enfoque
metodolgico preciso ante el volumen creciente de
dispositivos e informacin que constituyen este tipo
de sistemas. El modelo JDL, entre otros, proporciona
este marco, aunque no excento de ser sometido a
cambios como ha ocurrido en la ltima dcada ( [8] y
[13]).
El objetivo especco lo podemos resumir de
manera grca como se muestra en la gura 1,
donde se destacan las partes, etapas y procesos que
deben cumplirse. La Fusin y comunicaciones son
realizadas por un Microcontrolador, para el diseo y
construccin del "Instrumento Inteligente".
Instrumento
Variables
Fsicas
s2
s1
s3
s4
Adquisici on
Datos
Datos y
Medidas
Integraci on Fusi on Computador
Sensores
Esquemas
Acondicionadores
Filtrado, etc.
Algoritmos Base de Datos,
Gracaci on, etc.
Medida
Comunicaciones
Figura 1: Formulacin del problema.
Integracin y Fusin.
La integracin multisensorial es el uso sinrgico
de la informacin provista por mltiples elementos
sensores a n de asistir al sistema en la
realizacin de una tarea; mientras que la fusin
multisensorial se reere a cualquier estado dentro
del proceso de integracin donde exista una
combinacin propiamente dicha de diferentes fuentes
de informacin sensorial en un formato que las
represente.
Integracin Multisensorial.
Las estructuras jerrquicas son de utilidad al
permitir la eciente representacin de diferentes
formas, niveles y resoluciones de la informacin usada
para el procesamiento y el control. En la operacin de
las funciones de integracin, la modularidad permite
que gran parte del proceso sea distribuido a lo ancho
del sistema. La programacin orientada a objetos
y la estructura de control tipo pizarra, son dos de
las construcciones que son tiles en el fomento de
la modularidad para la integracin multisensorial.
Igualmente, el uso de redes neuronales e inteligencia
articial permiten la incorporacin de tcnicas
de integracin adaptativa que pueden manejar el
problema del error y la incertidumbre inherente en
la integracin multisensorial. La gura 2 muestra un
sistema tpico de integracin multisensorial con n
sensores que proveen de datos al proceso.
Sensor 1
Modelo
Sensorial
Sensor 2
Modelo
Sensorial
Sensor n
Modelo
Sensorial
Registro de Sensores
Fusi on
Nivel de se nal
Nivel de pixel
Nivel Caractersticas
Nivel de Smbolos
Operaci on
Independiente
Enrutamiento
Procesamiento Sensorial
Modelo Entorno
Selecci on
Sensores
INTEGRACI

ON
MULTISENSORIAL
C
o
n
t
r
o
l
a
d
o
r
S
e
n
s
o
r
e
s
C
o
n
t
r
o
l
a
d
o
r
S
i
s
t
e
m
a
Figura 2: Diagrama funcional de sistema de Fusin e
Integracin multisensorial.
Para que los sensores puedan ser usados en la
integracin, deben antes ser modelados. Un modelo
de sensor representa la incertidumbre y el error en
los datos suministrados, al tiempo que provee de
una medida de su calidad para ser usada en las
subsiguientes funciones del proceso de integracin.
El registro de sensores se reere a cualquiera de
los mecanismos usados para lograr que los datos de
cada sensor se correspondan tanto en espacio como
en tiempo.El proceso de enrutamiento se reere a la
situacin donde los datos provenientes de un sensor
son usados para guiar o dar entrada a la operacin de
otros sensores.
Los resultados de la funcin de procesamiento
sensorial sirven como entradas al modelo del entorno,
el cual se usa para almacenar la informacin
concerniente a cualquier posible estado del ambiente
donde se espera que el sistema opere. Un modelo de
entorno puede incluir tanta informacin a priori como
informacin sensorial reciente, y puede ser usado por
procesos de alto nivel de razonamiento para hacer
2
inferencias que puedan ser usadas directamente en el
subsiguiente procesado de la informacin y operacin
del controlador del sistema.
La seleccin de sensores se reere al mecanismo
usado para elegir la conguracin de sensores mas
apropiada dentro de las disponibilidades en el
sistema. Con la nalidad de realizar esta seleccin,
se establecen algunos criterios de desempeo, como
funciones de costo. Se pueden distinguir dos
metodologas para la seleccin del tipo, nmero y
conguracin de sensores: "Preseleccin" durante el
diseo o inicializacin, y "Seleccin en Tiempo Real "
en respuesta a los cambios del entorno o a las
condiciones del sistema.
Fusin Multisensorial.
La fusin de informacin o de datos provenientes
de mltiples sensores o de un slo sensor a travs
del tiempo, puede tener lugar a diferentes niveles
de representacin. Una clasicacin til, por ejemplo
en el campo del reconocimiento o levantamiento de
mapas de entorno, es la que considera la fusin
a nivel de seal, de pxel, de caractersticas, y
de smbolos. Cada uno de estos niveles puede ser
usado para proveer informacin al sistema, que a
su vez lo utiliza para diferentes propsitos.Uno de
los principales objetivos de la fusin de datos es
combinar la informacin obtenida a travs de las
diferentes fuentes para tomar una mejor decisin,
realizando para ello una reduccin de la imprecisin
e incertidumbre e incrementando la robustez [2].
Algoritmos de Fusin e Integracin
Multisensorial.
Mtodos de Inferencia.
De los diferentes algoritmos de fusin
multisensorial, los mtodos de inferencia pueden
ser usados con efectividad para fusin sensorial
a nivel de smbolos debido a su capacidad de
razonamiento evidencial. Entre estus ltimos, la
inferencia bayesiana permite que la informacin
multisensorial sea combinada segn las leyes de
la teora de probabilidad. La frmula de Bayes
proporciona una relacin entre la probabilidad a
posteriori de cierta hiptesis, dada la probabilidad
a priori de la misma y la probabilidad condicional
de observacin de un evento en particular dentro
de la hiptesis. De aqu que la inferencia bayesiana
actualice la probabilidad de hiptesis alternativas
basndose en la observacin de la evidencia. La nueva
informacin se usa para actualizar la probabilidad a
priori de la hiptesis.
S. C. Thomopoulos [14] propuso una arquitectura
general y un marco de anlisis para enfocar los
problemas de fusin sensorial a tres niveles diferentes:
el nivel de seal, el nivel de evidencia y el nivel de
dinmica.
Operador Bayesiano En este caso, el grado de
conanza est representado por probabilidades (a
priori, condicional y a posteriori). Las decisiones son
usualmente tomadas a partir de una probabilidad a
posteriori. Si E el evento a ser evaluado, y x
1
, x
2
la informacin proveniente de dos sensores distintos,
cada uno asigna una probabilidad al evento E dada la
medida x
i
. As, dada x
1
, la misma es convertida a la
funcin de densidad de probabilidad p (E | x
1
) como
la mostrada en la gura 3 y que se conoce como el
modelo inverso del sensor.
Figura 3: Ejemplo de funcin de densidad de
probabilidad.
El modelo anterior se relaciona con las
propiedades del sensor mediante la regla de Bayes:
p (E | x
1
) =
p(x1| E)
p(x1)
p (E) (1)
De la misma forma el modelo inverso del sensor
2 estara relacionado con el evento E a travs de la
ecuacin:
p (E | x
2
) =
p(x2| E)
p(x2)
p (E) (2)
La probabilidad de observacin del evento E dado
las mediciones x
1
y x
2
, se puede derivar de la regla
del producto,
p (E | x
1
, x
2
) =
p(x1| E,x2 )
p(x1| x2 )
p (E | x
2
) (3)
Asumiendo la independencia de las mediciones x
1
y x
2
, entonces p (x
1
| E, x
2
) y p (x
1
| x
2
) corresponden
a p (x
1
| E) y p (x
1
) respectivamente, transformando
la probabilidad conjunta anterior en
p (E | x
1
, x
2
) =
p(x1| E)
p(x1)
p (E | x
2
) (4)
3
Aplicando nuevamente la regla de Bayes a la
probabilidad condicional p (x
1
| E), se obtiene la
densidad de probabilidad conjunta:
p (E | x
1
, x
2
) =
p(x1| E)p(E| x2 )
p(E)
(5)
La funcin anterior representa los estimados y
los valores de certidumbre del evento E a partir de
la fusin de las medidas x
1
y x
2
de dos sensores
diferentes.
La principal ventaja de la tcnica de Bayes para
la fusin de datos es que posee un formalismo bien
desarrollado, donde la evidencia es tratada como una
funcin de probabilidad. As usando esta tcnica,
se pueden expresar conocimientos a priori de forma
estocstica para obtener el estado ms probable del
sistema.
Desde el punto de vista de la aplicacin, se
necesita una fuerte estimacin de las funciones de
probabilidad ( p (x
i
| E) ), y de las de probabilidad
a priori p (E) que modelan el conocimiento aportado
por cada una de las fuentes, incluso en caso de total
ignorancia. La prctica comn es denir p (E) como
uniforme p (E
i
=
1
/r), hecho que no aporta mayor
conocimiento, y estimar ( p (x
i
| E) ) en funcin de
la credibilidad que tenga cada una de las medidas
tomada por los diferentes sensores, usando para ello
mtodos estadsticos de aprendizaje.
La fusin de datos de mltiples fuentes aparece
como respuesta a la posibilidad de aumentar el
nmero de sensores, y as mejorar el resultado
de problemas complejos, como la restitucin de
imgenes, la deteccin de la congestin de carreteras,
reconocimiento de objetos.
En la gura 4 se presenta el proceso de fusin con
la Tcnica de Bayes.
Fuente 1
Fuente 2
Fuente n
p (x1 |E)
p (x2 |E)
p (xn |E)
Formula
combiantoria de
Bayes
p (Ei |xi, , xn )
para i = 1 r
L ogica
de
Decisi on
Resultado
de
Fusion
X1
X2
Xn
Figura 4: Proceso de fusin con la tcnica de Bayes.
Inferencia estadstica segn el modelo
bayesiano La inferencia estadstica bayesiana,
aplicada sobre un sensor de temperatura, nos
permite fusionar la informacin con el objetivo
de obtener la probabilidad de que la temperatura
se encuentre dentro de un rango pre-establecido
[p (T |s
31
)]. As, el espacio muestreal quedar denido
segn la siguiente particin: T (s
1
) = {s
11
, s
12
} =
{En rango, Fuera de Rango}. Como inicialmente no
disponemos de informacin, cualquiera de las dos
situaciones son igualmente probables: s
11
= s
12
=
0,5. La gura 5 muestra el resultado del proceso.
Figura 5: Ejemplo Teorema de Bayes
Para el caso de los dos sensores de luminancia
replicados, el problema que nos planteamos es
encontrar la probabilidad [p (L|s
11
, s
21
)] que la
luminosidad se encuentre en el rango [9,0, 11,5] lux.
(gura 6).
Figura 6: Respuesta a la fusin bisensorial replicada.
Muestra Ampliada
De ahora en adelante, la icorporacin de
cualquier cantidad de sensores se reduce a
4
mltiples tratamientos bi-sensoriales. Por ejemplo,
para el caso de 4 sensores, se incorpora
un dos sensores de temperatura. Ahora, el
objetivo es encontrar la funcin de probabilidad
cuando los sensores de luminosidad y los de
temperatura se intersecten en sus respectivos rangos
[p (F |E |L|s
11
, s
21
, p (T |s
31
) , p (T |s
41
) )] (gura 7).
Figura 7: Respuesta a la fusin multisensorial (4
sensores).
El modelo JDL.
Arquitectura de Fusin Multisensor.
El proceso de combinar datos o informacin
para estimar o predecir el estado de las entidades
es conocido como fusin de datos [12]. El
objetivo de la fusin multisensor es armonizar
datos de mltiples fuentes para conseguir precisiones
mejoradas y estimaciones ms ables que las que
pueden obtenerse de un nico sensor [9], ya que
la informacin procedente de un sensor puede ser
incompleta (habitualmente, un nico sensor no puede
capturar toda la informacin de su entorno), errnea
(debido, por ejemplo, a que el hardware no opera en
la prctica como se modela) y/o incierta (es necesario
gestionar la incertidumbre asociada a las medidas que
genera).
Como se comenta en [9], el proceso de fusin
de datos procedentes de diferentes fuentes no es
nuevo: los animales y los humanos lo realizamos
permanentemente, pues tenemos la capacidad de
combinar la informacin recibida por nuestros
sentidos para inferir nuestras propias conclusiones
sobre una determinada situacin. En este proceso
de percepcin, nos ocupamos de "mantener una
descripcin interna del entorno externo" [3].
De esta forma, las mquinas tratan de imitar
este proceso realizando un "modelado dinmico del
mundo", que les permite representar el entorno
externo. El proceso natural de fusin se puede
simular, gracias a los avances en procesado de seal
y al perfeccionamiento de los sensores, a travs
de sistemas computacionales que tienen que extraer
informacin sobre el estado de una situacin. Para
conseguir su propsito, las tcnicas de fusin de datos
combinan disciplinas tradicionales como el procesado
digital de seal, la estimacin estadstica, la teora
de control, la inteligencia articial o los mtodos
numricos [9].
Las aplicaciones de la fusin de datos son muy
numerosas, tanto en el rea militar como civil.
Las aplicaciones militares C3I (Command, Control,
Communication and Intelligence) incentivaron
notablemente el desarrollo de las tcnicas de fusin
desde nales de los aos 70 [9]. Por su creciente
inters, el Laboratorio del Joint Directors of U.S.
Department of Defense (JDL-DoD) convoc a un
panel de expertos en fusin de datos para desarrollar
modelos y terminologa comn para las diferentes
reas de investigacin, desarrollo y operacin. Como
se comentar posteriormente, este grupo concibi uno
de los modelos de fusin de datos ms referenciados
en la literatura [7], el modelo JDL.
En el mundo militar, la fusin de datos se utiliza,
por ejemplo, para reconocimiento automtico de
blancos, guiado de vehculos autnomos, toma de
datos de sensores remotos, supervisin del campo
de batalla o reconocimiento automtico de amenazas
(Identication Friend Foe Neutral, IFFN). En este
tipo de aplicaciones, el objetivo de la fusin es
reconocer, estimar o predecir el estado de tipos
especcos de entidades en el entorno: blancos,
amenazas, formaciones militares, etc. [12]. En
cuanto a las aplicaciones civiles, algunas estn
ligadas a la supervisin de sistemas de fabricacin,
al mantenimiento de maquinaria compleja, a la
prediccin de terremotos, al desarrollo de sistemas de
supervisin de trco, diagnstico mdico y al diseo
de sistemas robticos [6] y [3].
Modelo JDL Entre los modelos de fusin, uno
de los ms conocidos es el propuesto en 1985 por
el American Joint Directors of Laboratories Data
Fusion Subpanel. En palabras de sus autores [9], el
modelo de Proceso de Fusin de Datos JDL es un
modelo conceptual que identica procesos, funciones,
categoras de tcnicas y tcnicas particulares
aplicables a la fusin de datos.
Elmenreich [4] lo clasica como una arquitectura
genrica (ni abstracta ni rgida, segn el autor), sino
una propuesta en la que se denen unas lneas de
5
implementacin sin entrar a particularizar aspectos
de diseo.
El modelo JDL original estaba formado por cuatro
niveles de fusin: evaluacin de la seal, del objeto,
de la situacin y del impacto, a los que se aadan
funciones de gestin complementarias. El modelo se
revis posteriormente [12], momento en el cul se
incorpor una nueva capa de procesado denominada
de evaluacin del proceso. Adems, se intent
generalizar su enfoque de aplicacin ms all de lo
militar e integr el modelo de Arquitectura de rbol
de Fusin de Datos (Data Fusion Tree Architecture)
para describir, disear e implementar el sistema de
fusin.
Asimismo, se sugiri la inclusin de otra capa
ulterior que permita la posibilidad de que el usuario
pueda colaborar, como ltimo ltro, en el proceso de
fusin (Blasch, 2002).
Las extensiones ms recientes [8] y [13] estn
dirigidas a incorporar aspectos de control de calidad,
abilidad y consistencia en el proceso de fusin
de datos. Tambin en esta ltima actualizacin se
reexiona sobre la fusin basada en ontologas y sobre
los aspectos que condicionan las arquitecturas de
fusin distribuidas (Distributed Data Fusion).
Steinberg et al. [12] y Smith y Singh [11], por
ejemplo, hacen un repaso a los diferentes niveles del
modelo de fusin JDL, comentando las misiones de
cada uno de los niveles jerrquicos y las tcnicas que
se pueden emplear en cada una de las fases (ver gura
8).
Figura 8: Arquitectura JDL. Modelo funcional.
Nivel 0: Los datos de las fuentes son
habitualmente pre-procesados para una fusin
posterior, ltrando los datos o alinendolos
temporalmente, es a este nivel donde cada uno
de los sensores aporta sus datos obtenidos de
forma independiente del resto.
Nivel 1: El procesamiento al nivel 1 combina la
informacin de localizacin, y la identidad, para
obtener la representatividad individual de los
objetos. Se combinan los datos de los sensores
para obtener atributos y caractersticas de la
entidad.
Nivel 2: Se trata de desarrollar una descripcin
contextual de la relacin entre los objetos y
los eventos observados. Este procesamiento
incorpora la informacin del entorno (un
conocimiento a priori) y las observaciones. En
nuestro caso se relaciona con la informacin
suministrada por los resultados de los
algoritmos de fusin.
Nivel 3: Proyeccin de futuro de la entidad
analizada a partir de la situacin actual.
Los modelos utilizados para este nivel son la
inteligencia articial, los modelos predictivos,
el razonamiento automtico y la estimacin
estadstica.
Nivel 4: Monitoriza todo el proceso de fusin de
datos para mejorar el rendimiento del proceso
en tiempo real, mediante la optimizacin de
la utilizacin de recursos, la modelizacin
sensorial y la computacin de medidas de
perfeccionamiento.
Nivel 5: Mejora del sistema de fusin a partir
de la relacin Sensor-Procesamiento-Persona.
Proyectando modelos en los que la
representacin de los resultados (ya sean
intermedios o nales) permitan al operador
identicar posibles errores en el procesamiento,
y que este previamente haya podido detectar
errores en los datos suministrados por los
sensores.
La gestin de la base de datos: Es un punto
clave dada la gran cantidad de datos que
se manejan durante el proceso. Es la mayor
funcin auxiliar requerida en el proceso de
fusin y esto es debido a factores como la
cantidad y variedad de datos manejados, la
necesidad de almacenamiento y recuperacin de
datos, la compresin, las colas relacionales y
la proteccin de datos. Para desarrollar esta
funcin ser necesario un considerable esfuerzo
computacional.
Interaccin Hombre-Mquina: Este elemento,
considerado externo a la fusin, es importante
en el proceso de fusin. Ya que una correcta
interfaz del sistema, ser clave para el
renamiento cognitivo. Adems de proveer de
un mecanismo para los comandos humanos y
6
para la comunicacin a operadores y usuarios de
los resultados del proceso de fusin, la interfase
Hombre-Computador incluye mtodos de ayuda
a la interpretacin de resultados y a la operacin
del sistema.
Los niveles de fusin no pretenden guiar la
implementacin del diseo del sistema, sino servir
para su anlisis funcional. Los requisitos del
sistema determinarn cmo implementar las distintas
funciones.
Arquitectura del sistema de fusin de datos
En este trabajo se desarrolla un sistema de
fusin de datos (ver gura 9) que parte del Nivel 0
(Pre-Procesamiento) y alcanza el Nivel 2 (Evaluacin
de Situacin).
En el sistema de gestin de bases de datos se
realiza especcamente la generacin de archivos de
datos y en lo concerniente al servicio distribuido
desarrollamos lo relativo a las comunicaciones entre
el microcontrolador y el PC.
Se trabaja en la interfaz Hombre/Mquina en dos
aspectos: gracacin de la informacin y control de
la maqueta para cambiar el contexto en los cuales
trabajan los sensores del instrumento.
de
Fuentes
Datos
Nivel 0 Pre-Procesamiento
Nivel 1 Evaluaci on de Objetos
Nivel 2 Evaluaci on de Situacion
Nivel 3 Evaluaci on de Impacto
Sistema de Gestion
de Base de Datos
Base de
Datos de
Soporte
Base de
Datos de
Fusion
Distribuidos
Servicios
de Informacion
Renamiento
Nivel 4
de Procesos
Nivel 5
Renamiento
de Usuario
Interacci on
Hombre/
M aquina
Rendimiento metricas/conabilidad
Valor
Prioridad
Contexto
Intenci on
Utilidades de
Renamiento
Figura 9: Arquitectura JDL del Sistema de Fusin de
datos.
Nivel 0: Adquisicin de los datos. Empleamos
dos sensores replicados de luminosidad, fotoceldas,
dos sensores de temperatura de distintos tipos
LM35 y LM335. Utilizamos el microcontrolador
ATMega328p de ATMEL colocado sobre una placa
de desarrollo (ARDUINO). En la adaptacin de las
seales suministradas por los sensores se empleo un
Ampicador Operacional LM324.
Figura 10: Arquitectura JDL. Adquisicin (Nivel 0)
Cada sensor se adapta de manera particular para
aprovechar al mximo la entrada del convertidor A/D
del microcontrolador.
La salida del microcontrolador se escala y
convierte adecuadamente para cumplir con los
requerimeintos de los algoritmos de fusin y con las
comunicaciones RS232.
Figura 11: Arquitectura JDL. Adaptacin (Nivel 0)
Nivel 1: Integracin de los cuatros sensores (ver
gura 12). Se us una estructura tipo rbol donde
los sensores s
1
y s
2
de luminosidad estn integrados
de forma competitiva a nivel del primer nodo hoja
dando una caracterstica, en el caso nuestro un
rango de luminosidad. La integracin competitiva
requiere lecturas replicadas de sensores que son
idealmente idnticos pero que en realidad, estn
sujetos a variaciones estadsticas y a perturbaciones
por el ruido. El sensor nmero 3 de temperatura
LM35 se integra independientemente (los sensores
proporcionan informacin no correlada) a nivel de un
nodo intermedio con las caractersticas del sensor de
luminosidad para producir una salida de fusin 2.
La salida de fusin 2 se emplea junto con los datos
suministrados por el sensor nmero 4 (LM335) en el
nodo raz en una integracin tipo cooperativa (cada
sensor proporciona informacin parcial) para dar el
resultado o caracterstica nal del nivel de fusin.
7
Luminosidad
Temperatura
s1
s2
Organizaci on en Estructura de

Arbol
Integraci on de Sensores
Integraci on
Competitiva
L1
L2
Datos
Nodo
Hoja
Integraci on
Independiente
Nodo
Intermedio
s3
T1
Datos
F
1
Caracterstica
Integraci on
Cooperativa
Nodo
Raz
s4
T2
Datos
F
2
Caracterstica
F3
Figura 12: Arquitectura JDL. Integracin de
Sensores. Organizacin en estructura de rbol. (Nivel
1)
Nivel 2: La estructura de integracin recin vista
la hemos hecho coincidir con una red bayesiana (ver
gura 13) empleada para la fusin de los datos.
Hemos supuesto que todos los sensores presentan una
distribucin estadstica Gaussiana de sus medidas.
Se producir una seal estadsticamente alta si se
cumplen los rangos establecidos para cada uno de los
sensores.
Luminosidad
Temperatura
s1
s2
s3
s4
Fusi on 1
Fusi on 2
Fusi on 3 Acci on Final
Fusi on Bayesiana
e

0.5 (x11)
2
2
1
e

0.5 (x22)
2
2
2
p
(
E
|s 1
,
s 2
)
e

0.5 (y13)
2
2
3
p
(
E
|[p
(
E
|s 1
,
s 2
)
]
,
s 3
)
e

0.5 (z14)
2
2
4
p
(
E
|{
p
(
E
|[p
(
E
|s 1
,
s 2
)
]
,
s 3
)
}
,
s 4
)
Figura 13: Arquitectura JDL. Fusin Bayesiana
(Nivel 2).
La Arquitectura HRT-HOOD.
HOOD.
HOOD signica Diseo Jerrquico Orientado a
Objetos. Est basado en el uso intensivo del modelo
de objetos, organizados como:
Jerarqua: descomposicin de objetos en otros
objetos que pueden ser vistos como "hijos" de
ste.
Control: el ujo de control permite la activacin
de las operaciones. Pueden coexistir varias ujos
de control o hilos de ejecucin (threads )
simultneamente en el interior de un objeto.
Actividad: existen dos tipos de objetos: activos
y pasivos dependiendo donde se genera el ujo
de control.
La metodologa de HOOD se concentra en el diseo
funcional del sistema. No se tiene en cuenta el anlisis
de los aspectos temporales ni de las prestaciones.
HRT-HOOD.
HRT-HOOD (Hard Real-Time Hierarchical
Object-Oriented Design), es un mtodo de diseo
estructurado, basado en objetos, para sistemas de
tiempo real estricto, derivado de HOOD.
Esta metodologa tiene en cuenta las necesidades
de los sistemas de tiempo real. En sta el proceso
de diseo se ve como una progresin creciente de
compromisos especcos. Los compromisos denen las
propiedades que se deben ir cumpliendo en el diseo
del sistema y que el diseador no puede modicar en
niveles de mayor detalle.
Aquellos aspectos del diseo que no suponen un
compromiso en un determinado nivel se deben asumir
como obligaciones en los niveles inferiores (mayor
detalle) del sistema.
Las obligaciones en el nivel superior corresponden
a las propiedades que aparecen en las especicaciones.
Los compromisos son las concreciones que se hacen
en el diseo que hacen que se cumplan las propiedades
correspondientes a las obligaciones.
El proceso de renamiento del diseo consiste en
ir transformando las obligaciones en compromisos.
Este proceso est sujeto a restricciones impuestas
principalmente por el entorno de ejecucin. El entorno
de ejecucin es un conjunto de componentes software
y hardware sobre los que se construye el sistema.
En HRT-HOOD se denen dos tipos de
actividades en el diseo de la arquitectura:
Diseo de la arquitectura lgica.
Diseo de la arquitectura fsica.
La arquitectura lgica se ocupa de los compromisos
que se pueden hacer con independencia de
las restricciones impuestas por el entorno de
ejecucin. Supone principalmente los requerimientos
funcionales.
La arquitectura fsica tiene en cuenta los
requerimientos funcionales y, adems, las restricciones
del entorno. Abarca adems los requerimientos no
funcionales. En la arquitectura fsica es donde se
tienen en cuenta las restricciones temporales.
Aunque la arquitectura fsica es un renamiento
de la lgica, ambas se desarrollan y modican a
la vez. Las tcnicas de anlisis concretadas en la
arquitectura fsica se deben aplicar lo antes posible.
Estas afectaran a los recursos iniciales previstos,
que debern revisarse y modicarse segn se vaya
8
renando la arquitectura lgica (sin esperar a concluir
sta para empezar con la arquitectura fsica, de lo
contrario se podra invalidar demasiado tarde los
recursos asumidos en la primera). En este proyecto
se desarrolla slo la arquitectura lgica.
Diseo del Instrumento Inteligente
con la Metodologa HRT-HOOD.
Especicaciones de Requisitos.
Se requiere desarrollar un instrumento inteligente
con 4 sensores que midan variables fsicas, para
nuestro caso luminosidad y temperatura, con Modelo
de integracin y de fusin de datos que lo
realice la programacin incorporada dentro de
un microcontrolador. El instrumento deber tener
comunicacin serial con un PC en el cual se
almacenarn y visualizarn en tiempo real la
informacin suministrada por el instrumento. Se
usarn cuatro sensores, s
1
y s
2
son replicados, s
3
y
s
4
son dispersos. Para realizar la fusin de los datos
se deben aplicar tcnicas probabilsticas basadas en el
teorema de Bayes a n de inferir la medida correcta
(ver gura 13).
Diseo de la Arquitectura lgica.
La arquitectura lgica trata los requisitos
funcionales. Estos son independientes de las
restricciones fsicas impuestas por el entorno de
ejecucin (velocidad del procesador, etc.)
El primer paso es identicar las clases de objetos
adecuados a partir de los cuales se va a construir
el sistema. Los requisitos funcionales del sistema
(descritos en la seccin anterior) sugieren tres
subsistemas (ver gura 14):
1. Subsistema Monitoreo de sensores: Se encarga
de monitorear todos los datos de los sensores
acondicionados los cuales sern almacenados en
una base de datos.
2. Subsistema Microcontrolador: Este subsistema
realiza las siguientes tareas:
a) Para cada sensor: lectura, escalamiento,
conversin a valores reales, determinacin
de la verosimilitud, envo al PC de datos
reales.
b) Para cada nivel de fusin: clculo de la
Fusin Bayesiana y envo al PC de datos
de la fusin.
c) Est conformado por 3 operaciones.
3. Subsistema PC: Este Subsistema se encarga de
comunicar el Instrumento va RS232 con un
PC para el almacenamiento y visualizacin en
tiempo real de la informacin suministrada por
el instrumento.
Se trabaja con la gracacin de la informacin y el
control de la maqueta para cambiar el contexto en los
cuales trabajan los sensores del instrumento.
A Monitoreo de Sensores
Datos Crudos
A Microprocesador
Escalamiento
Fusion
Comunicaci on
A PC
Comunicaci on
Base de Datos
Gracaci on
Control de Maqueta
Lectura
de sensores
Resultados de
Lecturas y Fusiones
Se nal de
Control de sensores
Figura 14: Diseo de Primer nivel.
Cada objeto del primer nivel se descompone
en sub-niveles, siguiendo la misma metodologa,
hasta alcanzar un punto de detalles sucientemente
sencillo como para ser directamente codicado, en
algn lenguaje computacional (Detalles de este
procedimiento pueden encontrarse en el trabajo en
extenso).
Variables fsicas, sensores y
electrnica.
Nuestro instrumento mide dos variables fsicas:
luminosidad y temperatura, con cuatro sensores.
La luminosidad es medida con dos fotoceldas (s
1
y s
2
) de bajo costo, semejantes a las encontradas
en las calculadoras comunes. El sensor 1 cubrir el
rango [6,5, 11,0] lux y el sensor 2 [9, 16] lux. Para
cada sensor se asumir una distribucin Gaussiana
normalizada, centrada en la mitad del rango
de operacin, y con una desviacin estndar de
rango/2.De esta manera el Espacio Muestreal de los
sensores queda denido por:
E (s
i
) = {em
i1
, em
i2
} = {En rango, Fuera de Rango}
(6)
9
Un sensor de temperatura (s
3
), LM35, calibrado
en grados centgrados, cubrir el rango [28,0, 34,5]
o
C.
Un cuarto sensor de temperatura (s
4
), LM335,
calibrado en grados Kelvin y adaptado a grados
centgrados, cubrir el rango [32, 36]
o
C. Para ambos,
se asumirn distribuciones Gaussianas normalizadas,
centradas en la mitad del rango de operacin y con
una desviacin estndar de rango/2.De esta manera
el Espacio Muestreal de los sensores quedan denidos
exactamente como se indica por la ecuacin 6.
Resumiendo, para todos los sensores, desde un
punto de vista funcional, hemos supuesto que se
han realizado mltiples pruebas de laboratorio y
que las medidas arrojadas presentan una distribucin
estadstica normalmente distribuida. La media se
ubica en la mitad del rango para cada sensor y las
desviaciones estndar se han jado en el cuadro 1.
Cuadro 1: Parmetros estadsticos para sensores.
s
1
(lux) s
2
(lux) s
3
(
o
C) s
4
(
o
C)
8.75 12.5 31.25 34
4.375 6.25 15.625 17
Acondicionamiento de las seales.
Para acoplar la salida del sensor al convertidor
A/D del microcontrolador se utiliza un circuito
acondicionador de seal (ver gura 15).
Fotocelda 1
0Lux
20Lux
Fotocelda 2
0Lux
20Lux
LM335
0
o
C
50
o
C
LM35
0
o
C
50
o
C
CAS 1
0V
3V
CAS 2
0V
3V
CAS 3
2.73V
3.23V
CAS 4
0V
0.5V
Microcont.
0V
4.5V
Microcont.
0V
4.5V
Microcont.
0V
5V
Microcont.
0V
5V
Figura 15: Acondicionamiento de la seal (CAS)
de salida del sensor al convertidor A/D del
microcontrolador.
Las seales provenientes de las fotoceldas y
del sensor de temperatura LM35 se acondicionan
mediante Amplicadores Operacionales en
conguracin no inversora, como se indica en las
guras 16 y 17.
FC
1 1.1M
R
f3
LM324
+
-
10
9
8
R
f2
15k
R
f1
10k
EA
1
Arduino
Figura 16: Circuito acondicionador de seal para
sensores de Luminosidad.
V cc
LM35
LM324
+
-
10
9
8
R
2
180k
R
1
18k
EA
3
Arduino
Figura 17: Circuito acondicionador de seal para
sensor LM35.
Para el sensor de temperatura LM335 el
acondicionamiento se hace con un amplicador de
diferencia, para poder compensar la transformacin
desde
o
K a
o
C (ver gura 18).
LM335
R
1 5.6k
V cc
R
2
100k
R
3
18k
R
4 180k
LM324
+
-
3
2
1
R
5
180k
R
6
18k
2.73V
5k
V cc
R
7
EA
4
Arduino
Figura 18: Circuito acondicionador de seal para
sensor LM335.
La Plataforma bsica del
instrumento.
Como mencionamos en la seccin , utilizamos el
microcontrolador ATMega328p de ATMEL colocado
sobre una placa de desarrollo de prototipos conocida
como ARDUINO (ver gura 19).
10
Figura 19: Mdulo Arduino.
Arduino es una plataforma computacional y fsica
de fuentes abiertas, basada en una tarjeta sencilla
de entradas/salidas y un entorno de desarrollo que
implementa el Procesamiento del Lenguaje. Arduino
puede ser usado para desarrollar objetos interactivos
autnomos o puede conectarse a aplicaciones en
un computador. Diferentes mdulos pueden ser
ensamblados para formar una unidad de prestaciones
ms elevadas, de acuerdo a las exigencias de un diseo
en particular. En nuestro caso, le hemos adaptado una
Tabla de Montajes (gura 20), donde se disponen de
los sensores y de la electrnica asociada a ellos, para
nalmente constituir una estructura nica, como se
aprecia en la gura 21.
Figura 20: Mdulo Arduino y placa de desarrollo.
Figura 21: Ensamblaje del prototipo.
Entre las principales caractersticas destacan [1]
y [10]:
Es de fuentes abiertas, tanto para el hardware
como para el software.
Es un entorno multiplataforma: puede
ejecutarse en Linux, Mac y Windows.
Soporta programacin mediante puertos USB
y/o RS232.
Existe una comunidad de usuarios muy activa
a nivel mundial, con la que se intercambian
experiencias y desarrollos a travs de Internet.
Posee un entorno de desarrollo (IDE) de uso
fcil.
Programacin.
Los aspectos de programacin fueron dividimos
en dos grandes bloques. El primero relativo
al microcontrolador que engloba las tareas de
adquisicin, escalamiento, conversin, tratamiento
bayesiano, integracin y fusin de datos, y las
comunicaciones del microcontrolador con el PC. El
segundo bloque es el del PC, que consta bsicamente
de la parte encargada de las comunicaciones con
el microcontrolador, del almacenamiento de la
informacin y la gracacin de la misma en tiempo
real. La metodologa empleada para el diseo del
sistema es HRT-HOOD, como vimos en la gura 14 y
que podemos replantear como se aprecia en la gura
22.
11
Microprocesador
Aplicaci on
Fusion
Comunic.
RS232
PC
Comunic.
Gestion
Archivo de Datos
Lectura
Gr acas
Figura 22: Estructura Lgica de la Aplicacin.
El lado del Microcontrolador.
El programa que realiza las tareas asignadas
al microcontrolador, codicado en lenguaje C,
y su desarrollo est basado en la arquitectura
HRT-HOOD y fue escrito, vericado y transferido
al microcontrolador desde el ambiente de desarrollo
Arduino, trabajando en una plataforma GNU-Linux
Ubuntu 9.04.
El lado del PC.
Las tareas asignadas al PC fueron desarrolladas
fundamentalmente en Ada 2008, con ncleo Marte
de Tiempo Real. La etapa de comunicaciones con el
microcontrolador fue escrita en C y para la parte
de gracacin tiempo real se emple la aplicacin de
software libre, escrita en Java, LiveGraph 1.1.4.
Los aspectos metodolgicos los que podemos
replantear, de manera resumida, en forma de mapa
segn se aprecia en la gura 23.
Programa Principal
t3.adb (Ada)
Tiempo Real
Variables Globales
variables.ads (Ada)
Comunicaciones
t3 lib c.ads (Ada)
Funciones de Comunic.
t3 lib c fun.c (C)
Arduino
RS232
Operaciones
operaciones.ads (Ada)
operaciones.adb (Ada)
Actualiza Actualiza
Pantalla Disco
Teclado
teclado.ads (Ada)
teclado.adb (Ada)
Disco LiveGraph
Figura 23: Mapa de la Aplicacin en el PC.
Un programa principal, escrito en Ada, es el
encargado del inicio, preparacin y coordinacin de
todas las actividades inherentes al PC:
Dene una tarea tiempo real para la
coordinacin de las operaciones.
Prepara el puerto de Comunicaciones.
Crea y/o prepara un archivo en disco para
guardar la informacin proveniente desde el
microcontrolador.
Prepara el manejo de la pantalla.
Opera en un ciclo innito (a menos que se
solicite una salida explicita por parte del
operador):
Lee el puerto serial.
Aplica formato y escala la informacin que
se recibe.
Escribe los datos al archivo en disco.
Actualiza la informacin en pantalla.
Interacta con el operador para
efecto del control de la maqueta
(activacin/desactivacin de sensores
y leds para manejo de la intensidad
luminosa).
Los cuerpos y estructuras de los subprogramas
necesarios estn desarrollados tambin en Ada, con
la excepcin del mdulo de comunicaciones que se
encuentra en C. Para el caso de no disponer de
un puerto serial en el computador de trabaj, se
desarroll una versin que permitiera emplear un
puerto USB junto a un convertidor serial USB.
El programa principal y los subprogramas, tanto
en Ada como en C, son compilados junto al ncleo
de tiempo real, mediante una gua de ejecucin por
lotes (batch script). Una segunda gua de ejecucin
preparar el puerto serial, bajo control de Linux, y
lanza la corrida del programa principal el entorno
grco (LiveGraph), mediante la creacin de dos
entornos independientes a partir de terminales hijos,
los que se comunican a travs del archivo de datos.
Concurrentemente, la informacin escrita en el
disco es mostrada grcamente en pantalla por
LiveGraph, tal como puede apreciarse en la gura 24,
donde se muestra una pantalla de la ejecucin de los
programas.
12
Figura 24: Pantalla de la simulacin en Ada y
LiveGraph.
Conclusiones.
En este trabajo construimos, de forma exitosa,
un instrumento inteligente multisensorial con
4 sensores que miden variables fsicas, para
nuestro caso luminosidad y temperatura, con
Modelo de Integracin y de Fusin de Datos
que lo realiza la programacin incorporada
dentro del microcontrolador ATMega328p, con
capacidad de comunicacin con un PC para el
intercambio de informacin.
La propuesta de arquitectura se basa en los
modelos tradicionales de fusin (en concreto,
JDL), y se adapta en conceptos y funciones
especcas, a las necesidades de los sistemas
contextuales.
Se ha obtenido toda la formulacin necesaria
para la fusin de datos basada en el
Teorema de Bayes, dichos algoritmos han sido
validados mediante un experimento realizado
e implementados en un programa escrito en
Matlab.
El diseo del software se hace con la
metodologa HOOD-HRT, que contempla un
desarrollo iterativo entre sus fases. Se disea
slo la arquitectura lgica del sistema, se
establecieron tres subsistemas activos, que a su
vez se descomponen en tareas.
El programa que realiza las tareas asignadas
al microcontrolador fue escrito en lenguaje
C y transferido al microcontrolador desde el
ambiente de desarrollo Arduino, trabajando en
una plataforma GNU-Linux Ubuntu 9.04.
Las tareas asignadas al PC fueron desarrolladas
fundamentalmente en Ada 2008, con ncleo
Marte de Tiempo Real. La etapa de
comunicaciones con el microcontrolador fue
escrita en C y para la parte de gracacin
tiempo real se emple la aplicacin de software
libre, escrita en Java, LiveGraph 1.1.4.
Para el caso de no disponer de un puerto serial
en el computador de trabajo, se desarroll una
versin que permitiera emplear un puerto USB
junto a un convertidor Serial-USB.
Mediante pruebas realizadas se visualizaron
las grcas en un PC correspondientes a la
informacin suministrada por el instrumento
en tiempo real. Las gracas que se obtuvieron
realmente muestran la respuesta de cada sensor
debido a la variacin del fenmeno fsico con
respecto al tiempo.
Se comprob experimentalmente que existe
fusin cuando se cumplen los rangos
establecidos para cada uno de los sensores.
Se valid el desarrollo del control de la maqueta
a travs de experimentos realizados cambiando
el contexto en los cuales trabajaban los sensores
del instrumento.
Cumpliendo con el decreto 3.390, para
la construccin del instrumento se utiliz
hardware abierto ( microcontrolador
ATMega328p colocado sobre la placa de
desarrollo de prototipos ARDUINO) y
herramientas de software libre (C, Ada y Java),
en un ambiente GNU-Linux.
Referencias
[1] Massimo Banzi. Getting started with arduino.
OReilly Media, Inc., 2008.
[2] I. Bloch. Information combination operators
for data fusion: A comparative review with
classication. IEEE Transactions on Systems,
Man, and Cibernetics. A-26(1):52-67, 1996.
[3] J. Crowley and Y. Demazeau. Principles
and techniques for sensor data fusion. Signal
Processing, Vol. 32, Is. 1-2, pp. 5-27, 1993.
[4] W. Elmenreich. A review on system architectures
for sensor fusion applications. SEUS 2007,
Lecture Notes in Computer Science, Vol. 4761,
pp. 547-559, 2007.
[5] David Hall and James Llinas. An introduction
to multisensor data fusion. Proceedings of the
IEEE, Vol. 85, N
o
1, pp. 6 - 23, 1997.
13
[6] David Hall and James Llinas. Mutisensor data
fusion. In Handbook of multisensor data fusion
: theory and practice., pages 114. CRC Press.,
2009.
[7] Otto Kessler and Frank White. Data
fusion perspectives and its role in information
processing. In Handbook of multisensor data
fusion : theory and practice., pages 1544. CRC
Press., 2009.
[8] J. Llinas, C. Bowman, G. Rogova, A. Steinberg,
E. Waltz, and F. White. Revisiting the jdl data
fusion model ii, 2004.
[9] J. Llinas and D. Hall. An introduction to
multi-sensor data fusion. Proc. of the IEEE, Vol.
85, Is. 1, pp. 6-23, 1998.
[10] Joshua Noble. Programming interactivity. a
designers guide to processing, arduino, and
openframeworks. OReilly Media, Inc., 2009.
[11] D. Smith and S. Singh. Approaches to
multisensor data fusion in target tracking: A
survey. IEEE Transactions on Knowledge and
Data Engineering, Vol. 18, Is. 12, pp.:1696 - 1710,
2006.
[12] A. Steinberg. Data fusion system engineering.
Proc. of the 3rd Internacional Conference on
Information Fusion, Vol. 1, MOD5/3- MOD510,
2000.
[13] Alan N. Steinberg and Christopher L. Bowman.
Revisions to the jdl data fusion model. In
Handbook of multisensor data fusion : theory and
practice., pages 4568. CRC Press., 2009.
[14] S. Thomopoulos. Sensor integration and
data fusion. Journal of Robotic Systems,
7(3):337372, 1990.
14

Anda mungkin juga menyukai