You are on page 1of 6

Arquitectura distribuida para el control de sistemas

José Luís Poza Luján. jopolu@disca.upv.es

Juan Luís Posadas Yagüe. jposadas@disca.upv.es

José Enrique Simó Ten. jsimo@disca.upv.es

Ginés Benet Gilabert. gbenet@disca.upv.es

Instituto de Investigación de Automática e Informática Industrial (ai2)


Universidad Politécnica de Valencia,
Camino de Vera s/n,
Valencia 46022

Resumen los diversos componentes de una arquitectura, la


realizan sistemas especializados en la comunicación
Actualmente existe un gran número de arquitecturas de objetos o componentes [3]. Estos sistemas de
para el control de sistemas. La mayor parte de ellas comunicaciones aportan diversas ventajas, sin
siguen el paradigma de las arquitecturas híbridas y embargo cuando se desea que las comunicaciones
están organizadas en capas. La organización básica formen parte de la arquitectura, e incluso puedan
del control en cada capa, suele hacerse a partir de interactuar con ésta, los sistemas actuales pueden
componentes que se comunican entre ellos. Para resultar difíciles de adaptar.
aprovechar al máximo el sistema de comunicaciones
entre componentes, se planteó desarrollar un modelo Sin renunciar a dichos sistemas de comunicaciones,
de comunicaciones llamado FSA (Frame-Sensor- se planteó la posibilidad de reaprovechar el sistema
Adapter). A partir de dicho modelo de de comunicaciones existente y probado en [5] para
comunicaciones se ha desarrollado un modelo aportar parte del control del sistema. Las
control, basado en componentes, que aprovecha las aportaciones del sistema de comunicaciones que eran
ventajas de las comunicaciones. El presente artículo deseables, eran principalmente dos. La primera de
muestra los fundamentos y la estructura básica de la ellas era la estructuración y organización de los
arquitectura híbrida de control desarrollada. canales de comunicación de forma que se diera
soporte a la distribución y escalabilidad del sistema,
y que además pudiese ofrecer distintas visiones del
Palabras Clave: Sistemas distribuidos. Arquitecturas mismo en función de los requerimientos de
de Control. Sistemas de comunicaciones. información que los componentes del sistema
precisasen en cada momento. La segunda era la
definición de una arquitectura de control, que
permitiese adaptarse al sistema de comunicaciones e
1 INTRODUCCIÓN interactuar con éste sin perder la capacidad de
realizar un control básico y una comunicación con
Existen un gran número de arquitecturas de control, cualquier tipo de componente. Para implementar la
tanto reactivas como deliberativas y especialmente arquitecturaa se especificó el modelo FSA (Frame-
un gran número de arquitecturas híbridas que Sensor-Adapter) [5] y se definieron las primitivas
aprovechan las ventajas de ambos paradigmas. necesarias para poder implementar un control básico,
Aunque es difícil encontrar una arquitectura con unas modular, escalable y con soporte a la distribución del
características que la hagan adecuada a cualquier mismo. En el presente artículo, se presenta tanto el
sistema, sí que es posible determinar algunas de las modelo de comunicaciones como el modelo de
características que debe tener para poder ser adaptada control implementado. En la siguiente sección se
al mayor número de sistemas posible. describen los fundamentos de la arquitectura, tanto
en lo relativo a la implementación de los
Existe una gran cantidad de estudios acerca de las componentes de comunicación, como a los
características deseables de una arquitectura [1], el componentes de control. A continuación se describe
aspecto de las comunicaciones, y de cómo éstas un ejemplo de sistema implementado para un control
pueden ayudar al control del sistema, no está tan domótico, para finalizar con las conclusiones del
desarrollado. Generalmente las comunicaciones entre trabajo desarrollado.
2 FUNDAMENTOS DE LA
ARQUITECTURA
2.1 COMPONENTES

La arquitectura FSA [2] comprende tanto la


organización de las comunicaciones como la
organización de los componentes de control que
interactúan con el sistema. Para las comunicaciones
se emplea un modelo jerárquico con estructura de Figura 2: Nomenclatura de los espacios de nombres.
árbol, en el que los canales de comunicación de
cualquier tipo (tanto buses, como conexiones punto a Un dato lógico se compone de una secuencia de
punto) son organizados en una estructura simbólica nombres separados por el símbolo "/", cada nombre
llamada LNT (Logical Namespace Tree) o árbol de se conoce como nodo lógico. Los detalles de la
espacio de nombres lógicos. Para el control se estructura se pueden observar en la figura 1. Un
emplea un modelo de componentes interconectados ejemplo de cómo se especifican los datos lógicos se
llamado LSG (Logical Sensor Graph) o grafo lógico puede ver en la figura 2.
de sensores. Ambos interactúan tanto entre ellos,
como internamente, con el mismo interfaz. 2.3 CONTROL

2.2 COMUNICACIONES Los componentes que implementan el control del


sistema, se conocen como sensores lógicos, y pueden
Las plataformas que dan soporte a los sistemas de implementar desde sencillas operaciones atómicas
comunicación en las arquitecturas de control, suelen como podrían ser sumas aritméticas o comparaciones
emplear el paradigma de envío de mensajes entre lógicas, hasta operaciones complejas como el
componentes o el de memoria compartida [2]. En seguimiento de una trayectoria en la navegación de
ambos casos existen métodos para localizar los un robot móvil. Una de las claves del sistema de
componentes dentro del sistema distribuido, pero no control implementado, es que se pueden incluir
se suele realizar una abstracción de los canales de diversos sensores lógicos unos dentro de otros para
comunicación que facilite el procesamiento de la formar sensores lógicos más complejos que
información, o que incluso oculte por completo los implementen comportamientos más avanzados dentro
componentes. de la arquitectura de control que se desea
implementar. La comunicación entre los sensores
En el caso de la arquitectura FSA, se decidió añadir lógicos puede ser de dos tipos, dependiendo de si se
una capa que encapsulase los detalles de los mensajes encuentran en localizaciones distintas dentro del
entre componentes proporcionando una meta- sistema distribuido, o si se encuentran en el mismo
información adicional acerca del tipo de contenido, o nodo. La primera de ellas se realiza por medio del
del tipo de mensaje con el que se está comunicando sistema de comunicación LNT, y la segunda por
un componente. Esta capa se ha denominado LNT [6] medio del paso de mensajes internos entre los
o árbol de espacio de nombres lógicos y consiste en componentes. En ambos casos la interfaz de
cambiar el concepto de dirección, o nombre, del comunicaciones es la misma, lo que hace que la
componente en otro concepto llamado dato lógico frontera entre las comunicaciones y el control pueda
(DL). variarse y se facilite en gran medida el movimiento
de componentes, o partes de los mismos.

Figura 1: Nomenclatura de los espacios de nombres. Figura 3: Ejemplo de grafo de sensores.


Figura 4: Ejemplo de arquitectura completa.

El conjunto de los sensores lógicos y de las agente A, B se “registre” en A. Así cuando A tiene
conexiones entre ellos se conoce como grafo lógico una información ya procesada, la enviará a todos los
de sensores. Un ejemplo de grafo de sensores puede agentes o componentes que se le hayan registrado. En
verse en la figura 3. En este ejemplo se pueden la figura 4, se puede observar la arquitectura FSA por
apreciar los sensores lógicos dedicados a las completo. En dicha figura se pueden observar, a la
comunicaciones (círculos concéntricos) y los izquierda de la misma, los canales de comunicación
dedicados al procesamiento. Los mensajes de los básicos, y cómo éstos se conectan con el espacio
sensores de comunicaciones y de procesamiento son lógico de nombres.
similares, lo que oculta la ubicación de cada
componente en el sistema. Los canales de comunicación también se pueden
conectar con los componentes sin emplear el espacio
2.4. ARQUITECTURA lógico de nombres, si así lo requieren los
componentes, por motivos de compatibilidad, de tal
El hecho de que un componente este compuesto a su forma que los componentes reactivos pueden
vez de otros componentes, hace que se genere un conectarse directamente a los canales de tiempo real.
árbol de inclusiones que ofrece una visión jerárquica
del control de sistema. Para ello se ha considerado El espacio lógico de nombres constituye una
que los agentes o componentes se comuniquen entre abstracción del propio sistema, por lo que
ellos siguiendo el modelo FSA [4], de manera que dependiendo del nivel de abstracción que se requiera,
cuando un agente B requiere información de un se conectará a un dato lógico o a otro.
3 EJEMPLO DE SISTEMA
Para comprender mejor el funcionamiento de la
arquitectura FSA, se expone en el presente apartado
un ejemplo de control sencillo de parte de un sistema
domótico. Se expone, tanto el sistema de
comunicaciones, como los componentes del sistema
de control.

3.1 HERRAMIENTAS DE DESARROLLO

Para implementar, tanto el espacio de nombres como


el espacio de sensores, se ha desarrollado una
aplicación en la que se pueden crear tanto los
espacios de nombres como los espacios de sensores.
Figura 5: Entorno de desarrollo. En la figura , se puede ver una captura de la pantalla
principal. En esta aplicación, en el marco de la
Cabe destacar que la granularidad con la que se izquierda se pueden crear tanto datos primitivos
pueden llegar a implementar los componentes como los nodos lógicos que van creando el espacio
proporciona una capacidad de distribución del de nombres lógicos.
sistema muy grande.
Esta aplicación guarda en archivos XML la
Como se ha comentado anteriormente, según el nivel configuración, tanto de las vistas de la interfaz de
de abstracción de la información que se requiera, los gráfica de usuario como de los espacios de nombres
componentes se conectarán a una rama del espacio y de sensores. Cada sensor lógico tiene su propio
lógico de nombres más o menos cercana a los canales archivo de implementación lo que proporciona un
de comunicaciones, de esta forma las capas más fuerte soporte a la reutilización de los mismos. A
deliberativas obtienen la información, y partir de los archivos que describen el modelo FSA
consiguientemente proveen de información, a los de espacios de nombres, cualquier aplicación puede
datos más lejanos de los canales de comunicaciones. crear sus propios componentes, por lo que los
archivos en XML pueden considerare una
Sin embargo, los componentes de control más especificación general de los componentes de control
reactivos, trabajan con datos más cercanos a los
canales de comunicación, ya que la información 3.2 ENTORNO DESARROLLADO
procesada que proporcionan otros datos lógicos más
abstractos no cumple los requisitos temporales de los Un ejemplo de sistema con un escaso volumen de
niveles reactivos. datos y unas restricciones temporales débiles es un
sistema domótico. En estos sistemas el número de
sensores y actuadores suele ser muy elevado, aunque
se da una gran heterogeneidad en las características
de los mismos.

En la figura 5 se puede observar el entorno sobre el


que se ha desarrollado el modelo FSA de control, En
el se tienen tres habitaciones con distintos
dispositivos de control, tanto sensores como
actuadores.

Figura 6: Entorno domótico empleado.


Figura 7: Abstracción FSA del entorno domótico.
Figura 9: Jerarquía de control.

En la figura 8 (a) se han organizado los datos, y


consiguientemente las comunicaciones, en función de
los tipos de dispositivos en sensores y actuadores.

Dentro de cada tipo se han organizado las


(a) (b)
correspondientes subcategorías según el tipo de
sensor o actuador. Dentro de cada categoría se puede
Figura 8: Espacios de nombres empleados.
organizar por más criterios, según convenga al
sistema. En la figura 8 (b), se ha organizado la
El control de sistema se encuentra centralizado en un
información según el criterio de gestión integral más
PC empotrado donde todos los componentes de
empleado en domótica. Este criterio considera cuatro
control se ejecutan simultáneamente. Sin embargo,
categorías: confort y bienestar, seguridad,
las características propias de la arquitectura FSA
comunicaciones y control energético.
permiten que cualquier parte del control que se está
ejecutando pueda ejecutarse en el mismo componente
Estas jerarquías anteriores, no son las únicas
de manera que se puede pasar un sistema
jerarquías que se pueden realizar, ya que también se
centralizado a un sistema distribuido sin apenas
pueden organizar los dispositivos por criterios como
cambios.
requisitos temporales, tipo de control que se realiza
sobre ellos, medios de comunicación que empleen y
3.3 IMPLEMENTACIÓN FSA
otros. Dependiendo del tipo de componente que se
trate la comunicación con el sistema se hará a través
El sistema presentado en la figura 5, se controla por
de un dato lógico, o de otro. De forma que las
medio de diversos componentes. Estos componentes
comunicaciones están adaptadas a las necesidades de
se pueden ver en la figura 7. En izquierdota columna
información de los componentes.
de la izquierda de la figura se observa el hardware
empleado y los sistemas de comunicaciones que
requieren, estos sistemas de comunicaciones son los 3.3.2 Control
que se conectan con el sistema de control a través del
Para la implementación del control del sistema
espacio lógico de nombres.
domótico, se han desarrollado diversos componentes
cada uno de ellos relacionado con cada una de las
3.3.1 Comunicaciones
áreas básicas de este tipo de sistemas. Para realizar
las inclusiones de unos sensores virtuales dentro de
Las comunicaciones entre los diversos componentes
otros, se han empleado unos sensores especiales
del sistema domótico se realizan por medio de un bus
llamados “componentes”.
EIB (Bus de Instalación Europeo), que se conecta al
sistema de control FSA por medio de una pasarela.
El sensor componente es un sensor especial con el
También se emplean pasarelas para las
que se puede incluir todo un espacio de sensores y
comunicaciones de diverso tipo, desde
ser conectado, tanto a la entrada como a la salida,
comunicaciones de sistemas en tiempo real estricto
desde el espacio de sensores que lo incluye. En el
como CAN (Controller Area Network), a sistemas
caso del sistema de control presentado, se tiene una
genéricos de comunicación de computadores como
jerarquía de control organizada en dos áreas, tal
TCP/IP, o bases de datos de MySQL para dar una
como se ve en la figura 999. Hay un área de confort y
capacidad de procesamiento de datos más elevada.
un área de seguridad. El área de confort incluye los
componentes que controlan la iluminación y los que
La visión del sistema de comunicaciones que ofrece
controlan la temperatura. El área de seguridad
el sistema domótico puede ser muy variada, es decir
incluye la seguridad personal y la seguridad material.
se puede tener varios espacios de nombres lógicos
para un mismo sistema real. En la figura 8, se pueden
ver dos visiones distintas del mismo sistema.
Agradecimientos

La especificación teórica del trabajo presentado se


está desarrollando por medio del proyecto
coordinado KERTROL: Ministerio de Educación y
Ciencia. CICYT: DPI2005-09327-C02-01/02.
La aplicación práctica del trabajo presentado está
siendo desarrollado a través del Proyecto “Sistema
para la monitorización y control remoto de
dispositivos en el hogar digital” con número de
referencia “5656/20060235” financiado por el
Figura 10: Conexiones del sistema de control con el Vicerrectorado de Innovación y Desarrollo de la
sistema de comunicaciones. Universidad Politécnica de Valencia.

Para leer de los sensores o escribir en los actuadores,


se precisa de las conexiones correspondientes con los Referencias
datos del espacio de nombres. Estas conexiones son
las que permiten que los componentes que comparten [1] Coste-Manière, E. & Simmons, R., (2000),
fuentes de información (por ejemplo, los sensores de “Architecture, the Backbone of Robotic
apertura de las persianas son fuente de información Systems”, Proceedings of the 2000 IEEE
de luminosidad y de seguridad) estén conectados a International Conference on Robotics &
los mismos sensores aunque sus datos se empleen Automation, San Francisco, CA.
para fines diferentes. Estas conexiones se pueden
realizar desde la aplicación de la figura 5. Un [2] José Luis Poza, Juan Luis Posadas, José
ejemplo de las mismas se puede observar en la figura Enrique Simó, Pascual Pérez, Miguel Albero.
10. Modelo de arquitectura de comunicaciones
Frame-Sensor-Adapter (FSA). XXV Jornadas
de Automática (JA2004) (ISBN 84-688-
4 CONCLUSIONES 7460-4). Ciudad Real, 2004.

En este artículo se presenta una arquitectura de [3] Murphy, R.R., (2000). Introduction to AI
control de sistemas, basada en un paradigma de Robotics. MIT Press.
comunicaciones ampliamente probado. Las propias
operaciones del sistema de comunicaciones, se [4] Pérez, P., Posadas, J.L., Simó, J.E., Benet, G.,
emplean para la conexión interna de los componentes Blanes, F. A Software Framework for Mobile
de la arquitectura, de manera que estas conexiones Robot Sensor Fusion and Teleoperation.
permiten organizar los componentes en función de la Proceedings of the 15th IFAC World
información con la que trabajan. El sistema Congress (ISBN 008044184X). Barcelona,
proporciona diversas ventajas, entre ellas una visión 2002.
estructurada y jerárquica del sistema a controlar.
Además la gran capacidad de distribución de los [5] Posadas, J.L. Arquitectura para el Control de
componentes, hace que el sistema pueda ser Robots Móviles mediante Delegación de
empleado para la evaluación de la correcta Código y Agentes. Tesis Doctoral, UPV,
disposición en el sistema distribuido de los 2003.
componentes. Esto último es importante, ya que el
sistema puede llegar a realizar una distribución [6] Poza, José L. Posadas, Juan Luis Simó, José.
automática de los componentes en función de unos E. and Benet, Ginés. Hierarchical
parámetros que se le pueden proporcionar, de forma communication system to manage maps in
que el control de seguridad del sistema domótico mobile robot navigation. International
emplea los canales de comunicaciones seguros, Conference on Automation, Control and
mientras que el sistema de confort no emplea dichos Instrumentation. IADAT-aci2006. Valencia,
canales. Es importante destacar que como método de 2006.
análisis del control del sistema, esta arquitectura es
muy adecuada. Sin embargo en lo que respecta al
control en tiempo real de sistemas, esta arquitectura
no es tan adecuada lo cual es lógico teniendo en
cuenta que en estos sistemas prima la velocidad a la
capacidad de abstracción del sistema.

You might also like