Diseño de Un Instrumento Inteligente Multisensorial (1)

14
Diseño 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] [email protected] / [2] [email protected] Universidad de Oriente. Núcleo Anzoátegui. Postgrado en Ing. Eléctrica. Resumen En este trabajo se diseña un Instrumento Inteligente Multisensorial, basado en una aplicación parcial del Modelo JDL, fusión Bayesiana de Datos y metodología orientada a objetos de Tiempo Real Crítico (HRT-HOOD). A partir de una descripción del Modelo JDL para Fusión de Datos, una estructura bayesiana para la integración y fusión de sensores, una arquitectura HRT-HOOD para el desarrollo de los aspectos computacionales, y un grupo de elementos de electrónica digital y analógica (microcontrolador, amplificadores 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 información e interacción con niveles de orden superior, como por ejemplo los descritos en la pirámide de automatización de procesos. Palabras Claves: Instrumentación Inteligente, Sensores, Teorema de Bayes, Fusión 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 Amplifiers, etc.) we constructs an low cost and high performance intelligent instrument, able to communicate with other digital devices (PC, micro’s, 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. Introducción. El área de conocimientos conocida como Integración y Fusión de Datos [5] es de vieja data, y por la naturaleza de sus primeros campos de aplicación (militar) ha estado circunscrita a contextos tecnológicos que demandan equipos considerados de altas prestaciones computacionales. Sin embargo, la disminución en los costos para la producción de la nuevas tecnologías de información y comunicaciones (TIC’s ), particularmente para nuestro caso en la fabricación de sensores y microcontroladores, ha permitido evolucionar hacia la incorporación de algoritmos complejos y de grandes prestaciones en circuitos digitales pequeños y de costo bajo, los que constituyen la base de muchas de las apliaciones modernas, incluyendo la instrumentación. En la última década, independientemente del tipo 1

Transcript of Diseño de Un Instrumento Inteligente Multisensorial (1)

  • Diseo de un Instrumento Inteligente Multisensorial basado enJDL y HRT-HOOD.

    Multisensors Intelligent Instrument Design based in JDL and HRT-HOOD.

    Margarita Heraoui[1] y Luis Parraguez[2]

    [1][email protected] / [2][email protected]

    Universidad de Oriente. Ncleo Anzotegui. Postgrado en Ing. Elctrica.

    Resumen

    En este trabajo se disea un Instrumento Inteligente Multisensorial, basado en una aplicacin parcialdel 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 estructurabayesiana para la integracin y fusin de sensores, una arquitectura HRT-HOOD para el desarrollo de losaspectos computacionales, y un grupo de elementos de electrnica digital y analgica (microcontrolador,amplificadores operacionales, etc.) se construye un instrumento inteligente de altas prestaciones y de bajocosto, capaz de comunicarse con otros dispositivos digitales (PC, micros, etc.) para el intercambio deinformacin e interaccin con niveles de orden superior, como por ejemplo los descritos en la pirmide deautomatizacin de procesos.

    Palabras Claves: Instrumentacin Inteligente, Sensores, Teorema de Bayes, Fusin de Datos, ModeloJDL, HRT-HOOD, Sistemas de Tiempo Real, Microcontroladores.

    Abstract

    In this paper we design an Mutisensor Intelligent Instrument, based on a partial aplication ofJDL 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 forthe sensors integration and fusion, an HRT-HOOD architecture for development of computationalaspects, and an elements group of digital and analogical electronics (microcontroller, OperationalAmplifiers, etc.) we constructs an low cost and high performance intelligent instrument, ableto communicate with other digital devices (PC, micros, etc.) to information interchange andinteraction 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 comoIntegracin y Fusin de Datos [5] es de vieja data,y por la naturaleza de sus primeros campos deaplicacin (militar) ha estado circunscrita a contextostecnolgicos que demandan equipos considerados dealtas prestaciones computacionales. Sin embargo, ladisminucin en los costos para la produccin de la

    nuevas tecnologas de informacin y comunicaciones(TICs), particularmente para nuestro caso en lafabricacin de sensores y microcontroladores, hapermitido evolucionar hacia la incorporacin dealgoritmos complejos y de grandes prestaciones encircuitos digitales pequeos y de costo bajo, los queconstituyen la base de muchas de las apliacionesmodernas, incluyendo la instrumentacin.

    En la ltima dcada, independientemente del tipo

    1

  • de aplicacin (Militar, Diagnstico Mdico, Robtica,Monitoreo Ambiental, Control y MantenimientoIndustrial, Domtica) el instrumento ha dejado de sersimplemente el "aparato encargado de obtener unamedida" de las variables bajo estudio y/o control,para evolucionar hacia constituirse en el sistemade control por s mismo o en un medio del cualpodemos obtener informacin ms all de los "datoscrudos", lo que conocemos hoy como "IntrumentacinInteligente".

    Esta tendencia ha demandado de un enfoquemetodolgico preciso ante el volumen creciente dedispositivos e informacin que constituyen este tipode sistemas. El modelo JDL, entre otros, proporcionaeste marco, aunque no excento de ser sometido acambios como ha ocurrido en la ltima dcada ( [8] y[13]).

    El objetivo especfico lo podemos resumir demanera grfica como se muestra en la figura 1,donde se destacan las partes, etapas y procesos quedeben cumplirse. La Fusin y comunicaciones sonrealizadas por un Microcontrolador, para el diseo yconstruccin del "Instrumento Inteligente".

    Instrumento

    VariablesFsicas

    s2

    s1

    s3

    s4

    Adquisicion

    DatosDatos yMedidas

    Integracion Fusion Computador

    SensoresEsquemas

    AcondicionadoresFiltrado, etc.

    Algoritmos Base de Datos,Graficacion, etc.

    MedidaComunicaciones

    Figura 1: Formulacin del problema.

    Integracin y Fusin.

    La integracin multisensorial es el uso sinrgicode la informacin provista por mltiples elementossensores a fin de asistir al sistema en larealizacin de una tarea; mientras que la fusinmultisensorial se refiere a cualquier estado dentrodel proceso de integracin donde exista unacombinacin propiamente dicha de diferentes fuentesde informacin sensorial en un formato que lasrepresente.

    Integracin Multisensorial.

    Las estructuras jerrquicas son de utilidad alpermitir la eficiente representacin de diferentesformas, niveles y resoluciones de la informacin usada

    para el procesamiento y el control. En la operacin delas funciones de integracin, la modularidad permiteque gran parte del proceso sea distribuido a lo anchodel sistema. La programacin orientada a objetosy la estructura de control tipo pizarra, son dos delas construcciones que son tiles en el fomento dela modularidad para la integracin multisensorial.Igualmente, el uso de redes neuronales e inteligenciaartificial permiten la incorporacin de tcnicasde integracin adaptativa que pueden manejar elproblema del error y la incertidumbre inherente enla integracin multisensorial. La figura 2 muestra unsistema tpico de integracin multisensorial con nsensores que proveen de datos al proceso.

    Sensor 1

    ModeloSensorial

    Sensor 2

    ModeloSensorial

    Sensor n

    ModeloSensorial

    Registro de Sensores

    Fusion

    Nivel de senalNivel de pixel

    Nivel CaractersticasNivel de Smbolos Operacion

    Independiente Enrutamiento

    Procesamiento Sensorial

    Modelo Entorno

    SeleccionSensores

    INTEGRACIONMULTISENSORIAL

    Controlador

    Sensores

    Controlador

    Sistem

    a

    Figura 2: Diagrama funcional de sistema de Fusin eIntegracin multisensorial.

    Para que los sensores puedan ser usados en laintegracin, deben antes ser modelados. Un modelode sensor representa la incertidumbre y el error enlos datos suministrados, al tiempo que provee deuna medida de su calidad para ser usada en lassubsiguientes funciones del proceso de integracin.El registro de sensores se refiere a cualquiera delos mecanismos usados para lograr que los datos decada sensor se correspondan tanto en espacio comoen tiempo.El proceso de enrutamiento se refiere a lasituacin donde los datos provenientes de un sensorson usados para guiar o dar entrada a la operacin deotros sensores.

    Los resultados de la funcin de procesamientosensorial sirven como entradas al modelo del entorno,el cual se usa para almacenar la informacinconcerniente a cualquier posible estado del ambientedonde se espera que el sistema opere. Un modelo deentorno puede incluir tanta informacin a priori comoinformacin sensorial reciente, y puede ser usado porprocesos de alto nivel de razonamiento para hacer

    2

  • inferencias que puedan ser usadas directamente en elsubsiguiente procesado de la informacin y operacindel controlador del sistema.

    La seleccin de sensores se refiere al mecanismousado para elegir la configuracin de sensores masapropiada dentro de las disponibilidades en elsistema. Con la finalidad de realizar esta seleccin,se establecen algunos criterios de desempeo, comofunciones de costo. Se pueden distinguir dosmetodologas para la seleccin del tipo, nmero yconfiguracin de sensores: "Preseleccin" durante eldiseo o inicializacin, y "Seleccin en Tiempo Real"en respuesta a los cambios del entorno o a lascondiciones del sistema.

    Fusin Multisensorial.La fusin de informacin o de datos provenientes

    de mltiples sensores o de un slo sensor a travsdel tiempo, puede tener lugar a diferentes nivelesde representacin. Una clasificacin til, por ejemploen el campo del reconocimiento o levantamiento demapas de entorno, es la que considera la fusina nivel de seal, de pxel, de caractersticas, yde smbolos. Cada uno de estos niveles puede serusado para proveer informacin al sistema, que asu vez lo utiliza para diferentes propsitos.Uno delos principales objetivos de la fusin de datos escombinar la informacin obtenida a travs de lasdiferentes fuentes para tomar una mejor decisin,realizando para ello una reduccin de la imprecisine incertidumbre e incrementando la robustez [2].

    Algoritmos de Fusin e IntegracinMultisensorial.Mtodos de Inferencia.

    De los diferentes algoritmos de fusinmultisensorial, los mtodos de inferencia puedenser usados con efectividad para fusin sensoriala nivel de smbolos debido a su capacidad derazonamiento evidencial. Entre estus ltimos, lainferencia bayesiana permite que la informacinmultisensorial sea combinada segn las leyes dela teora de probabilidad. La frmula de Bayesproporciona una relacin entre la probabilidad aposteriori de cierta hiptesis, dada la probabilidada priori de la misma y la probabilidad condicionalde observacin de un evento en particular dentrode la hiptesis. De aqu que la inferencia bayesianaactualice la probabilidad de hiptesis alternativasbasndose en la observacin de la evidencia. La nuevainformacin se usa para actualizar la probabilidad apriori de la hiptesis.

    S. C. Thomopoulos [14] propuso una arquitecturageneral y un marco de anlisis para enfocar losproblemas de fusin sensorial a tres niveles diferentes:el nivel de seal, el nivel de evidencia y el nivel dedinmica.

    Operador Bayesiano En este caso, el grado deconfianza est representado por probabilidades (apriori, condicional y a posteriori). Las decisiones sonusualmente tomadas a partir de una probabilidad aposteriori. Si E el evento a ser evaluado, y x1, x2la informacin proveniente de dos sensores distintos,cada uno asigna una probabilidad al evento E dada lamedida xi. As, dada x1, la misma es convertida a lafuncin de densidad de probabilidad p (E |x1 ) comola mostrada en la figura 3 y que se conoce como elmodelo inverso del sensor.

    Figura 3: Ejemplo de funcin de densidad deprobabilidad.

    El modelo anterior se relaciona con laspropiedades del sensor mediante la regla de Bayes:

    p (E |x1 ) = 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 laecuacin:

    p (E |x2 ) = p(x2|E )p(x2) p (E) (2)La probabilidad de observacin del evento E dado

    las mediciones x1 y x2 , se puede derivar de la regladel producto,

    p (E |x1, x2 ) = p(x1|E,x2 )p(x1| x2 ) p (E |x2 ) (3)Asumiendo la independencia de las mediciones x1

    y x2, entonces p (x1 |E, x2 ) y p (x1 |x2 ) correspondena p (x1 |E ) y p (x1) respectivamente, transformandola probabilidad conjunta anterior en

    p (E |x1, x2 ) = p(x1|E )p(x1) p (E |x2 ) (4)

    3

  • Aplicando nuevamente la regla de Bayes a laprobabilidad condicional p (x1 |E ), se obtiene ladensidad de probabilidad conjunta:

    p (E |x1, x2 ) = p(x1|E )p(E| x2 )p(E) (5)

    La funcin anterior representa los estimados ylos valores de certidumbre del evento E a partir dela fusin de las medidas x1 y x2 de dos sensoresdiferentes.

    La principal ventaja de la tcnica de Bayes parala fusin de datos es que posee un formalismo biendesarrollado, donde la evidencia es tratada como unafuncin de probabilidad. As usando esta tcnica,se pueden expresar conocimientos a priori de formaestocstica para obtener el estado ms probable delsistema.

    Desde el punto de vista de la aplicacin, senecesita una fuerte estimacin de las funciones deprobabilidad ( p (xi |E ) ), y de las de probabilidada priori p (E) que modelan el conocimiento aportadopor cada una de las fuentes, incluso en caso de totalignorancia. La prctica comn es definir p (E) comouniforme p (Ei = 1/r), hecho que no aporta mayorconocimiento, y estimar ( p (xi |E ) ) en funcin dela credibilidad que tenga cada una de las medidastomada por los diferentes sensores, usando para ellomtodos estadsticos de aprendizaje.

    La fusin de datos de mltiples fuentes aparececomo respuesta a la posibilidad de aumentar elnmero de sensores, y as mejorar el resultadode problemas complejos, como la restitucin deimgenes, la deteccin de la congestin de carreteras,reconocimiento de objetos.

    En la figura 4 se presenta el proceso de fusin conla Tcnica de Bayes.

    Fuente 1

    Fuente 2

    Fuente n

    p (x1 |E )

    p (x2 |E )

    p (xn |E )

    Formulacombiantoria de

    Bayes

    p (Ei |xi, , xn )para i = 1 r

    Logicade

    Decision

    Resultadode

    Fusion

    X1

    X2

    Xn

    Figura 4: Proceso de fusin con la tcnica de Bayes.

    Inferencia estadstica segn el modelobayesiano La inferencia estadstica bayesiana,aplicada sobre un sensor de temperatura, nospermite fusionar la informacin con el objetivo

    de obtener la probabilidad de que la temperaturase encuentre dentro de un rango pre-establecido[p (T |s31 )]. As, el espacio muestreal quedar definidosegn la siguiente particin: T (s1) = {s11, s12} ={En rango, Fuera de Rango}. Como inicialmente nodisponemos de informacin, cualquiera de las dossituaciones son igualmente probables: s11 = s12 =0,5. La figura 5 muestra el resultado del proceso.

    Figura 5: Ejemplo Teorema de Bayes

    Para el caso de los dos sensores de luminanciareplicados, el problema que nos planteamos esencontrar la probabilidad [p (L |s11, s21 )] que laluminosidad se encuentre en el rango [9,0, 11,5] lux.(figura 6).

    Figura 6: Respuesta a la fusin bisensorial replicada.Muestra Ampliada

    De ahora en adelante, la icorporacin decualquier cantidad de sensores se reduce a

    4

  • mltiples tratamientos bi-sensoriales. Por ejemplo,para el caso de 4 sensores, se incorporaun dos sensores de temperatura. Ahora, elobjetivo es encontrar la funcin de probabilidadcuando los sensores de luminosidad y los detemperatura se intersecten en sus respectivos rangos[p (F |E |L |s11, s21 , p (T |s31 ) , p (T |s41 ) )] (figura 7).

    Figura 7: Respuesta a la fusin multisensorial (4sensores).

    El modelo JDL.

    Arquitectura de Fusin Multisensor.

    El proceso de combinar datos o informacinpara estimar o predecir el estado de las entidadeses conocido como fusin de datos [12]. Elobjetivo de la fusin multisensor es armonizardatos de mltiples fuentes para conseguir precisionesmejoradas y estimaciones ms fiables que las quepueden obtenerse de un nico sensor [9], ya quela informacin procedente de un sensor puede serincompleta (habitualmente, un nico sensor no puedecapturar toda la informacin de su entorno), errnea(debido, por ejemplo, a que el hardware no opera enla prctica como se modela) y/o incierta (es necesariogestionar la incertidumbre asociada a las medidas quegenera).

    Como se comenta en [9], el proceso de fusinde datos procedentes de diferentes fuentes no esnuevo: los animales y los humanos lo realizamospermanentemente, pues tenemos la capacidad decombinar la informacin recibida por nuestrossentidos para inferir nuestras propias conclusionessobre una determinada situacin. En este procesode percepcin, nos ocupamos de "mantener unadescripcin interna del entorno externo" [3].

    De esta forma, las mquinas tratan de imitar

    este proceso realizando un "modelado dinmico delmundo", que les permite representar el entornoexterno. El proceso natural de fusin se puedesimular, gracias a los avances en procesado de sealy al perfeccionamiento de los sensores, a travsde sistemas computacionales que tienen que extraerinformacin sobre el estado de una situacin. Paraconseguir su propsito, las tcnicas de fusin de datoscombinan disciplinas tradicionales como el procesadodigital de seal, la estimacin estadstica, la teorade control, la inteligencia artificial o los mtodosnumricos [9].

    Las aplicaciones de la fusin de datos son muynumerosas, tanto en el rea militar como civil.Las aplicaciones militares C3I (Command, Control,Communication and Intelligence) incentivaronnotablemente el desarrollo de las tcnicas de fusindesde finales de los aos 70 [9]. Por su crecienteinters, el Laboratorio del Joint Directors of U.S.Department of Defense (JDL-DoD) convoc a unpanel de expertos en fusin de datos para desarrollarmodelos y terminologa comn para las diferentesreas de investigacin, desarrollo y operacin. Comose comentar posteriormente, este grupo concibi unode los modelos de fusin de datos ms referenciadosen la literatura [7], el modelo JDL.

    En el mundo militar, la fusin de datos se utiliza,por ejemplo, para reconocimiento automtico deblancos, guiado de vehculos autnomos, toma dedatos de sensores remotos, supervisin del campode batalla o reconocimiento automtico de amenazas(Identification Friend Foe Neutral, IFFN). En estetipo de aplicaciones, el objetivo de la fusin esreconocer, estimar o predecir el estado de tiposespecficos de entidades en el entorno: blancos,amenazas, formaciones militares, etc. [12]. Encuanto a las aplicaciones civiles, algunas estnligadas a la supervisin de sistemas de fabricacin,al mantenimiento de maquinaria compleja, a laprediccin de terremotos, al desarrollo de sistemas desupervisin de trfico, diagnstico mdico y al diseode sistemas robticos [6] y [3].

    Modelo JDL Entre los modelos de fusin, unode los ms conocidos es el propuesto en 1985 porel American Joint Directors of Laboratories DataFusion Subpanel. En palabras de sus autores [9], elmodelo de Proceso de Fusin de Datos JDL es unmodelo conceptual que identifica procesos, funciones,categoras de tcnicas y tcnicas particularesaplicables a la fusin de datos.

    Elmenreich [4] lo clasifica como una arquitecturagenrica (ni abstracta ni rgida, segn el autor), sinouna propuesta en la que se definen unas lneas de

    5

  • implementacin sin entrar a particularizar aspectosde diseo.

    El modelo JDL original estaba formado por cuatroniveles de fusin: evaluacin de la seal, del objeto,de la situacin y del impacto, a los que se aadanfunciones de gestin complementarias. El modelo serevis posteriormente [12], momento en el cul seincorpor una nueva capa de procesado denominadade evaluacin del proceso. Adems, se intentgeneralizar su enfoque de aplicacin ms all de lomilitar e integr el modelo de Arquitectura de rbolde Fusin de Datos (Data Fusion Tree Architecture)para describir, disear e implementar el sistema defusin.

    Asimismo, se sugiri la inclusin de otra capaulterior que permita la posibilidad de que el usuariopueda colaborar, como ltimo filtro, en el proceso defusin (Blasch, 2002).

    Las extensiones ms recientes [8] y [13] estndirigidas a incorporar aspectos de control de calidad,fiabilidad y consistencia en el proceso de fusinde datos. Tambin en esta ltima actualizacin sereflexiona sobre la fusin basada en ontologas y sobrelos aspectos que condicionan las arquitecturas defusin distribuidas (Distributed Data Fusion).

    Steinberg et al. [12] y Smith y Singh [11], porejemplo, hacen un repaso a los diferentes niveles delmodelo de fusin JDL, comentando las misiones decada uno de los niveles jerrquicos y las tcnicas quese pueden emplear en cada una de las fases (ver figura8).

    Figura 8: Arquitectura JDL. Modelo funcional.

    Nivel 0: Los datos de las fuentes sonhabitualmente pre-procesados para una fusinposterior, filtrando los datos o alinendolostemporalmente, es a este nivel donde cada unode los sensores aporta sus datos obtenidos deforma independiente del resto.

    Nivel 1: El procesamiento al nivel 1 combina lainformacin de localizacin, y la identidad, para

    obtener la representatividad individual de losobjetos. Se combinan los datos de los sensorespara obtener atributos y caractersticas de laentidad.

    Nivel 2: Se trata de desarrollar una descripcincontextual de la relacin entre los objetos ylos eventos observados. Este procesamientoincorpora la informacin del entorno (unconocimiento a priori) y las observaciones. Ennuestro caso se relaciona con la informacinsuministrada por los resultados de losalgoritmos de fusin.

    Nivel 3: Proyeccin de futuro de la entidadanalizada a partir de la situacin actual.Los modelos utilizados para este nivel son lainteligencia artificial, los modelos predictivos,el razonamiento automtico y la estimacinestadstica.

    Nivel 4: Monitoriza todo el proceso de fusin dedatos para mejorar el rendimiento del procesoen tiempo real, mediante la optimizacin dela utilizacin de recursos, la modelizacinsensorial y la computacin de medidas deperfeccionamiento.

    Nivel 5: Mejora del sistema de fusin a partirde la relacin Sensor-Procesamiento-Persona.Proyectando modelos en los que larepresentacin de los resultados (ya seanintermedios o finales) permitan al operadoridentificar posibles errores en el procesamiento,y que este previamente haya podido detectarerrores en los datos suministrados por lossensores.

    La gestin de la base de datos: Es un puntoclave dada la gran cantidad de datos quese manejan durante el proceso. Es la mayorfuncin auxiliar requerida en el proceso defusin y esto es debido a factores como lacantidad y variedad de datos manejados, lanecesidad de almacenamiento y recuperacin dedatos, la compresin, las colas relacionales yla proteccin de datos. Para desarrollar estafuncin ser necesario un considerable esfuerzocomputacional.

    Interaccin Hombre-Mquina: Este elemento,considerado externo a la fusin, es importanteen el proceso de fusin. Ya que una correctainterfaz del sistema, ser clave para elrefinamiento cognitivo. Adems de proveer deun mecanismo para los comandos humanos y

    6

  • para la comunicacin a operadores y usuarios delos resultados del proceso de fusin, la interfaseHombre-Computador incluye mtodos de ayudaa la interpretacin de resultados y a la operacindel sistema.

    Los niveles de fusin no pretenden guiar laimplementacin del diseo del sistema, sino servirpara su anlisis funcional. Los requisitos delsistema determinarn cmo implementar las distintasfunciones.

    Arquitectura del sistema de fusin de datos

    En este trabajo se desarrolla un sistema defusin de datos (ver figura 9) que parte del Nivel 0(Pre-Procesamiento) y alcanza el Nivel 2 (Evaluacinde Situacin).

    En el sistema de gestin de bases de datos serealiza especficamente la generacin de archivos dedatos y en lo concerniente al servicio distribuidodesarrollamos lo relativo a las comunicaciones entreel microcontrolador y el PC.

    Se trabaja en la interfaz Hombre/Mquina en dosaspectos: graficacin de la informacin y control dela maqueta para cambiar el contexto en los cualestrabajan los sensores del instrumento.

    deFuentes

    Datos

    Nivel 0 Pre-Procesamiento

    Nivel 1 Evaluacion de Objetos

    Nivel 2 Evaluacion de Situacion

    Nivel 3 Evaluacion de Impacto

    Sistema de Gestionde Base de Datos

    Base deDatos deSoporte

    Base deDatos deFusion

    DistribuidosServicios

    de InformacionRefinamiento

    Nivel 4

    de Procesos

    Nivel 5Refinamientode Usuario

    InteraccionHombre/Maquina

    Rendimiento metricas/confiabilidad

    Valor

    Prioridad

    Contexto

    Intencion

    Utilidades deRefinamiento

    Figura 9: Arquitectura JDL del Sistema de Fusin dedatos.

    Nivel 0: Adquisicin de los datos. Empleamosdos sensores replicados de luminosidad, fotoceldas,dos sensores de temperatura de distintos tiposLM35 y LM335. Utilizamos el microcontroladorATMega328p de ATMEL colocado sobre una placade desarrollo (ARDUINO). En la adaptacin de lasseales suministradas por los sensores se empleo unAmpificador Operacional LM324.

    Figura 10: Arquitectura JDL. Adquisicin (Nivel 0)

    Cada sensor se adapta de manera particular paraaprovechar al mximo la entrada del convertidor A/Ddel microcontrolador.

    La salida del microcontrolador se escala yconvierte adecuadamente para cumplir con losrequerimeintos de los algoritmos de fusin y con lascomunicaciones RS232.

    Figura 11: Arquitectura JDL. Adaptacin (Nivel 0)

    Nivel 1: Integracin de los cuatros sensores (verfigura 12). Se us una estructura tipo rbol dondelos sensores s1 y s2 de luminosidad estn integradosde forma competitiva a nivel del primer nodo hojadando una caracterstica, en el caso nuestro unrango de luminosidad. La integracin competitivarequiere lecturas replicadas de sensores que sonidealmente idnticos pero que en realidad, estnsujetos a variaciones estadsticas y a perturbacionespor el ruido. El sensor nmero 3 de temperaturaLM35 se integra independientemente (los sensoresproporcionan informacin no correlada) a nivel de unnodo intermedio con las caractersticas del sensor deluminosidad para producir una salida de fusin 2.

    La salida de fusin 2 se emplea junto con los datossuministrados por el sensor nmero 4 (LM335 ) en elnodo raz en una integracin tipo cooperativa (cadasensor proporciona informacin parcial) para dar elresultado o caracterstica final del nivel de fusin.

    7

  • Luminosidad

    Temperatura

    s1

    s2

    Organizacion en Estructura de ArbolIntegracion de Sensores

    IntegracionCompetitiva

    L1

    L2

    Datos

    NodoHoja

    IntegracionIndependiente

    NodoIntermedio

    s3

    T1

    Datos

    F1Caracterstica

    IntegracionCooperativa

    NodoRaz

    s4

    T2

    Datos

    F2Caracterstica F3

    Figura 12: Arquitectura JDL. Integracin deSensores. Organizacin en estructura de rbol. (Nivel1)

    Nivel 2: La estructura de integracin recin vistala hemos hecho coincidir con una red bayesiana (verfigura 13) empleada para la fusin de los datos.Hemos supuesto que todos los sensores presentan unadistribucin estadstica Gaussiana de sus medidas.Se producir una seal estadsticamente alta si secumplen los rangos establecidos para cada uno de lossensores.

    Luminosidad

    Temperatura

    s1

    s2

    s3

    s4

    Fusion 1

    Fusion 2

    Fusion 3 Accion Final

    Fusion Bayesiana

    e0.5 (x11)2

    21

    e0.5 (x22)2

    22

    p (E|s 1,

    s 2)

    e0.5 (y13)2

    23

    p (E|[p (

    E|s 1,

    s 2)], s

    3)

    e0.5 (z14)2

    24

    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 significa Diseo Jerrquico Orientado aObjetos. Est basado en el uso intensivo del modelode objetos, organizados como:

    Jerarqua: descomposicin de objetos en otrosobjetos que pueden ser vistos como "hijos" deste.

    Control: el flujo de control permite la activacinde las operaciones. Pueden coexistir varias flujosde control o hilos de ejecucin (threads )simultneamente en el interior de un objeto.

    Actividad: existen dos tipos de objetos: activosy pasivos dependiendo donde se genera el flujode control.

    La metodologa de HOOD se concentra en el diseofuncional del sistema. No se tiene en cuenta el anlisisde los aspectos temporales ni de las prestaciones.

    HRT-HOOD.

    HRT-HOOD (Hard Real-Time HierarchicalObject-Oriented Design), es un mtodo de diseoestructurado, basado en objetos, para sistemas detiempo real estricto, derivado de HOOD.

    Esta metodologa tiene en cuenta las necesidadesde los sistemas de tiempo real. En sta el procesode diseo se ve como una progresin creciente decompromisos especficos. Los compromisos definen laspropiedades que se deben ir cumpliendo en el diseodel sistema y que el diseador no puede modificar enniveles de mayor detalle.

    Aquellos aspectos del diseo que no suponen uncompromiso en un determinado nivel se deben asumircomo obligaciones en los niveles inferiores (mayordetalle) del sistema.

    Las obligaciones en el nivel superior correspondena las propiedades que aparecen en las especificaciones.

    Los compromisos son las concreciones que se hacenen el diseo que hacen que se cumplan las propiedadescorrespondientes a las obligaciones.

    El proceso de refinamiento del diseo consiste enir transformando las obligaciones en compromisos.Este proceso est sujeto a restricciones impuestasprincipalmente por el entorno de ejecucin. El entornode ejecucin es un conjunto de componentes softwarey hardware sobre los que se construye el sistema.

    En HRT-HOOD se definen dos tipos deactividades en el diseo de la arquitectura:

    Diseo de la arquitectura lgica.

    Diseo de la arquitectura fsica.

    La arquitectura lgica se ocupa de los compromisosque se pueden hacer con independencia delas restricciones impuestas por el entorno deejecucin. Supone principalmente los requerimientosfuncionales.

    La arquitectura fsica tiene en cuenta losrequerimientos funcionales y, adems, las restriccionesdel entorno. Abarca adems los requerimientos nofuncionales. En la arquitectura fsica es donde setienen en cuenta las restricciones temporales.

    Aunque la arquitectura fsica es un refinamientode la lgica, ambas se desarrollan y modifican ala vez. Las tcnicas de anlisis concretadas en laarquitectura fsica se deben aplicar lo antes posible.Estas afectaran a los recursos iniciales previstos,que debern revisarse y modificarse segn se vaya

    8

  • refinando la arquitectura lgica (sin esperar a concluirsta para empezar con la arquitectura fsica, de locontrario se podra invalidar demasiado tarde losrecursos asumidos en la primera). En este proyectose desarrolla slo la arquitectura lgica.

    Diseo del Instrumento Inteligentecon la Metodologa HRT-HOOD.

    Especificaciones de Requisitos.Se requiere desarrollar un instrumento inteligente

    con 4 sensores que midan variables fsicas, paranuestro caso luminosidad y temperatura, con Modelode integracin y de fusin de datos que lorealice la programacin incorporada dentro deun microcontrolador. El instrumento deber tenercomunicacin serial con un PC en el cual sealmacenarn y visualizarn en tiempo real lainformacin suministrada por el instrumento. Seusarn cuatro sensores, s1 y s2 son replicados, s3 ys4 son dispersos. Para realizar la fusin de los datosse deben aplicar tcnicas probabilsticas basadas en elteorema de Bayes a fin de inferir la medida correcta(ver figura 13).

    Diseo de la Arquitectura lgica.La arquitectura lgica trata los requisitos

    funcionales. Estos son independientes de lasrestricciones fsicas impuestas por el entorno deejecucin (velocidad del procesador, etc.)

    El primer paso es identificar las clases de objetosadecuados a partir de los cuales se va a construirel sistema. Los requisitos funcionales del sistema(descritos en la seccin anterior) sugieren tressubsistemas (ver figura 14):

    1. Subsistema Monitoreo de sensores: Se encargade monitorear todos los datos de los sensoresacondicionados los cuales sern almacenados enuna base de datos.

    2. Subsistema Microcontrolador: Este subsistemarealiza las siguientes tareas:

    a) Para cada sensor: lectura, escalamiento,conversin a valores reales, determinacinde la verosimilitud, envo al PC de datosreales.

    b) Para cada nivel de fusin: clculo de laFusin Bayesiana y envo al PC de datosde la fusin.

    c) Est conformado por 3 operaciones.

    3. Subsistema PC : Este Subsistema se encarga decomunicar el Instrumento va RS232 con unPC para el almacenamiento y visualizacin entiempo real de la informacin suministrada porel instrumento.

    Se trabaja con la graficacin de la informacin y elcontrol de la maqueta para cambiar el contexto en loscuales trabajan los sensores del instrumento.

    A Monitoreo de Sensores

    Datos Crudos

    A Microprocesador

    EscalamientoFusion

    Comunicacion

    A PC

    ComunicacionBase de DatosGraficacion

    Control de Maqueta

    Lecturade sensores

    Resultados deLecturas y Fusiones

    Senal deControl de sensores

    Figura 14: Diseo de Primer nivel.

    Cada objeto del primer nivel se descomponeen sub-niveles, siguiendo la misma metodologa,hasta alcanzar un punto de detalles suficientementesencillo como para ser directamente codificado, enalgn lenguaje computacional (Detalles de esteprocedimiento pueden encontrarse en el trabajo enextenso).

    Variables fsicas, sensores yelectrnica.

    Nuestro instrumento mide dos variables fsicas:luminosidad y temperatura, con cuatro sensores.

    La luminosidad es medida con dos fotoceldas (s1y s2) de bajo costo, semejantes a las encontradasen las calculadoras comunes. El sensor 1 cubrir elrango [6,5, 11,0] lux y el sensor 2 [9, 16] lux. Paracada sensor se asumir una distribucin Gaussiananormalizada, centrada en la mitad del rangode operacin, y con una desviacin estndar derango/2.De esta manera el Espacio Muestreal de lossensores queda definido por:

    E (si) = {emi1, emi2} = {En rango, Fuera de Rango}(6)

    9

  • Un sensor de temperatura (s3), LM35, calibradoen grados centgrados, cubrir el rango [28,0, 34,5]o C.Un cuarto sensor de temperatura (s4), LM335,calibrado en grados Kelvin y adaptado a gradoscentgrados, cubrir el rango [32, 36]o C. Para ambos,se asumirn distribuciones Gaussianas normalizadas,centradas en la mitad del rango de operacin y conuna desviacin estndar de rango/2.De esta manerael Espacio Muestreal de los sensores quedan definidosexactamente como se indica por la ecuacin 6.

    Resumiendo, para todos los sensores, desde unpunto de vista funcional, hemos supuesto que sehan realizado mltiples pruebas de laboratorio yque las medidas arrojadas presentan una distribucinestadstica normalmente distribuida. La media seubica en la mitad del rango para cada sensor y lasdesviaciones estndar se han fijado en el cuadro 1.

    Cuadro 1: Parmetros estadsticos para sensores.s1 (lux) s2 (lux) s3 (oC) s4 (oC)

    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 convertidorA/D del microcontrolador se utiliza un circuitoacondicionador de seal (ver figura 15).

    Fotocelda 10Lux20Lux

    Fotocelda 20Lux20Lux

    LM3350oC50oC

    LM350oC50oC

    CAS 10V3V

    CAS 20V3V

    CAS 32.73V3.23V

    CAS 40V0.5V

    Microcont.0V4.5V

    Microcont.0V4.5V

    Microcont.0V5V

    Microcont.0V5V

    Figura 15: Acondicionamiento de la seal (CAS)de salida del sensor al convertidor A/D delmicrocontrolador.

    Las seales provenientes de las fotoceldas ydel sensor de temperatura LM35 se acondicionanmediante Amplificadores Operacionales enconfiguracin no inversora, como se indica en lasfiguras 16 y 17.

    FC1 1.1MRf3

    LM324+

    -

    10

    98

    Rf2

    15k

    Rf1

    10k

    EA1

    Arduino

    Figura 16: Circuito acondicionador de seal parasensores de Luminosidad.

    V cc

    LM35LM324+

    -

    10

    98

    R2

    180k

    R1

    18k

    EA3

    Arduino

    Figura 17: Circuito acondicionador de seal parasensor LM35.

    Para el sensor de temperatura LM335 elacondicionamiento se hace con un amplificador dediferencia, para poder compensar la transformacindesde oK a oC (ver figura 18).

    LM335

    R1 5.6k

    V cc

    R2100k

    R3

    18k

    R4180k

    LM324+

    -

    3

    21

    R5

    180k

    R6

    18k

    2.73V5k

    V cc

    R7

    EA4

    Arduino

    Figura 18: Circuito acondicionador de seal parasensor LM335.

    La Plataforma bsica delinstrumento.

    Como mencionamos en la seccin , utilizamos elmicrocontrolador ATMega328p de ATMEL colocadosobre una placa de desarrollo de prototipos conocidacomo ARDUINO (ver figura 19).

    10

  • Figura 19: Mdulo Arduino.

    Arduino es una plataforma computacional y fsicade fuentes abiertas, basada en una tarjeta sencillade entradas/salidas y un entorno de desarrollo queimplementa el Procesamiento del Lenguaje. Arduinopuede ser usado para desarrollar objetos interactivosautnomos o puede conectarse a aplicaciones enun computador. Diferentes mdulos pueden serensamblados para formar una unidad de prestacionesms elevadas, de acuerdo a las exigencias de un diseoen particular. En nuestro caso, le hemos adaptado unaTabla de Montajes (figura 20), donde se disponen delos sensores y de la electrnica asociada a ellos, parafinalmente constituir una estructura nica, como seaprecia en la figura 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 hardwarecomo para el software.

    Es un entorno multiplataforma: puedeejecutarse en Linux, Mac y Windows.

    Soporta programacin mediante puertos USBy/o RS232.

    Existe una comunidad de usuarios muy activaa nivel mundial, con la que se intercambianexperiencias y desarrollos a travs de Internet.

    Posee un entorno de desarrollo (IDE ) de usofcil.

    Programacin.

    Los aspectos de programacin fueron dividimosen dos grandes bloques. El primero relativoal microcontrolador que engloba las tareas deadquisicin, escalamiento, conversin, tratamientobayesiano, integracin y fusin de datos, y lascomunicaciones del microcontrolador con el PC. Elsegundo bloque es el del PC, que consta bsicamentede la parte encargada de las comunicaciones conel microcontrolador, del almacenamiento de lainformacin y la graficacin de la misma en tiemporeal. La metodologa empleada para el diseo delsistema es HRT-HOOD, como vimos en la figura 14 yque podemos replantear como se aprecia en la figura22.

    11

  • Microprocesador

    Aplicacion

    Fusion

    Comunic.

    RS232

    PC

    Comunic.

    Gestion

    Archivo de Datos

    Lectura

    Graficas

    Figura 22: Estructura Lgica de la Aplicacin.

    El lado del Microcontrolador.El programa que realiza las tareas asignadas

    al microcontrolador, codificado en lenguaje C,y su desarrollo est basado en la arquitecturaHRT-HOOD y fue escrito, verificado y transferidoal microcontrolador desde el ambiente de desarrolloArduino, trabajando en una plataforma GNU-LinuxUbuntu 9.04.

    El lado del PC.Las tareas asignadas al PC fueron desarrolladas

    fundamentalmente en Ada 2008, con ncleo Martede Tiempo Real. La etapa de comunicaciones con elmicrocontrolador fue escrita en C y para la partede graficacin tiempo real se emple la aplicacin desoftware libre, escrita en Java, LiveGraph 1.1.4.

    Los aspectos metodolgicos los que podemosreplantear, de manera resumida, en forma de mapasegn se aprecia en la figura 23.

    Programa Principalt3.adb (Ada)Tiempo Real

    Variables Globalesvariables.ads (Ada)

    Comunicacionest3 lib c.ads (Ada)

    Funciones de Comunic.t3 lib c fun.c (C)Arduino

    RS232

    Operacionesoperaciones.ads (Ada)operaciones.adb (Ada)

    Actualiza ActualizaPantalla Disco

    Tecladoteclado.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 detodas las actividades inherentes al PC :

    Define una tarea tiempo real para lacoordinacin de las operaciones.

    Prepara el puerto de Comunicaciones.

    Crea y/o prepara un archivo en disco paraguardar la informacin proveniente desde elmicrocontrolador.

    Prepara el manejo de la pantalla.

    Opera en un ciclo infinito (a menos que sesolicite una salida explicita por parte deloperador):

    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 sensoresy leds para manejo de la intensidadluminosa).

    Los cuerpos y estructuras de los subprogramasnecesarios estn desarrollados tambin en Ada, conla excepcin del mdulo de comunicaciones que seencuentra en C. Para el caso de no disponer deun puerto serial en el computador de trabaj, sedesarroll una versin que permitiera emplear unpuerto USB junto a un convertidor serial USB.

    El programa principal y los subprogramas, tantoen Ada como en C, son compilados junto al ncleode tiempo real, mediante una gua de ejecucin porlotes (batch script). Una segunda gua de ejecucinpreparar el puerto serial, bajo control de Linux, ylanza la corrida del programa principal el entornogrfico (LiveGraph), mediante la creacin de dosentornos independientes a partir de terminales hijos,los que se comunican a travs del archivo de datos.

    Concurrentemente, la informacin escrita en eldisco es mostrada grficamente en pantalla porLiveGraph, tal como puede apreciarse en la figura 24,donde se muestra una pantalla de la ejecucin de losprogramas.

    12

  • Figura 24: Pantalla de la simulacin en Ada yLiveGraph.

    Conclusiones.

    En este trabajo construimos, de forma exitosa,un instrumento inteligente multisensorial con4 sensores que miden variables fsicas, paranuestro caso luminosidad y temperatura, conModelo de Integracin y de Fusin de Datosque lo realiza la programacin incorporadadentro del microcontrolador ATMega328p, concapacidad de comunicacin con un PC para elintercambio de informacin.

    La propuesta de arquitectura se basa en losmodelos tradicionales de fusin (en concreto,JDL), y se adapta en conceptos y funcionesespecficas, a las necesidades de los sistemascontextuales.

    Se ha obtenido toda la formulacin necesariapara la fusin de datos basada en elTeorema de Bayes, dichos algoritmos han sidovalidados mediante un experimento realizadoe implementados en un programa escrito enMatlab.

    El diseo del software se hace con lametodologa HOOD-HRT, que contempla undesarrollo iterativo entre sus fases. Se diseaslo la arquitectura lgica del sistema, seestablecieron tres subsistemas activos, que a suvez se descomponen en tareas.

    El programa que realiza las tareas asignadasal microcontrolador fue escrito en lenguajeC y transferido al microcontrolador desde elambiente de desarrollo Arduino, trabajando enuna plataforma GNU-Linux Ubuntu 9.04.

    Las tareas asignadas al PC fueron desarrolladasfundamentalmente en Ada 2008, con ncleo

    Marte de Tiempo Real. La etapa decomunicaciones con el microcontrolador fueescrita en C y para la parte de graficacintiempo real se emple la aplicacin de softwarelibre, escrita en Java, LiveGraph 1.1.4.

    Para el caso de no disponer de un puerto serialen el computador de trabajo, se desarroll unaversin que permitiera emplear un puerto USBjunto a un convertidor Serial-USB.

    Mediante pruebas realizadas se visualizaronlas grficas en un PC correspondientes a lainformacin suministrada por el instrumentoen tiempo real. Las graficas que se obtuvieronrealmente muestran la respuesta de cada sensordebido a la variacin del fenmeno fsico conrespecto al tiempo.

    Se comprob experimentalmente que existefusin cuando se cumplen los rangosestablecidos para cada uno de los sensores.

    Se valid el desarrollo del control de la maquetaa travs de experimentos realizados cambiandoel contexto en los cuales trabajaban los sensoresdel instrumento.

    Cumpliendo con el decreto 3.390, parala construccin del instrumento se utilizhardware abierto ( microcontroladorATMega328p colocado sobre la placa dedesarrollo de prototipos ARDUINO) yherramientas 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 operatorsfor data fusion: A comparative review withclassification. IEEE Transactions on Systems,Man, and Cibernetics. A-26(1):52-67, 1996.

    [3] J. Crowley and Y. Demazeau. Principlesand techniques for sensor data fusion. SignalProcessing, Vol. 32, Is. 1-2, pp. 5-27, 1993.

    [4] W. Elmenreich. A review on system architecturesfor sensor fusion applications. SEUS 2007,Lecture Notes in Computer Science, Vol. 4761,pp. 547-559, 2007.

    [5] David Hall and James Llinas. An introductionto multisensor data fusion. Proceedings of theIEEE, Vol. 85, No 1, pp. 6 - 23, 1997.

    13

  • [6] David Hall and James Llinas. Mutisensor datafusion. In Handbook of multisensor data fusion: theory and practice., pages 114. CRC Press.,2009.

    [7] Otto Kessler and Frank White. Datafusion perspectives and its role in informationprocessing. In Handbook of multisensor datafusion : theory and practice., pages 1544. CRCPress., 2009.

    [8] J. Llinas, C. Bowman, G. Rogova, A. Steinberg,E. Waltz, and F. White. Revisiting the jdl datafusion model ii, 2004.

    [9] J. Llinas and D. Hall. An introduction tomulti-sensor data fusion. Proc. of the IEEE, Vol.85, Is. 1, pp. 6-23, 1998.

    [10] Joshua Noble. Programming interactivity. adesigners guide to processing, arduino, andopenframeworks. OReilly Media, Inc., 2009.

    [11] D. Smith and S. Singh. Approaches tomultisensor data fusion in target tracking: Asurvey. IEEE Transactions on Knowledge andData Engineering, Vol. 18, Is. 12, pp.:1696 - 1710,2006.

    [12] A. Steinberg. Data fusion system engineering.Proc. of the 3rd Internacional Conference onInformation Fusion, Vol. 1, MOD5/3- MOD510,2000.

    [13] Alan N. Steinberg and Christopher L. Bowman.Revisions to the jdl data fusion model. InHandbook of multisensor data fusion : theory andpractice., pages 4568. CRC Press., 2009.

    [14] S. Thomopoulos. Sensor integration anddata fusion. Journal of Robotic Systems,7(3):337372, 1990.

    14