Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DISTRIBUTED SYSTEM OF ELEMENTS INTEGRATED INTO NODES FOR THE CONTROL AND MANAGEMENT OF ELECTRONICALLY CONTROLLABLE ELEMENTS AND METHOD FOR THE OPERATION THEREOF
Document Type and Number:
WIPO Patent Application WO/2014/128326
Kind Code:
A1
Abstract:
Distributed system of elements (1) integrated into nodes (2) for control and management of electronically controllable elements. Each node (2) comprises a hardware and software layer, the elements of each node being connected with elements thereof and another node by means of links that determine the circulation of each event, the functionality of each element being defined by at least one link (3) and at least one configuration (1) translated into the language of the system with the software configuration tool. Method for operating the system that comprises receipt and dispatch of events for recording and configuration of nodes from the configuration tool and activation (23) of dispatch by a node (2), receipt (24) at another node, processing of the information (25), receipt (26) of the event at elements (1) of receiver nodes, implementation (27), verification (28) of whether to generate a new event or not, and generation thereof (28.2) or non-generation thereof (28.1), depending on configuration.

Inventors:
SEGURA PEREZ JAVIER (ES)
Application Number:
PCT/ES2014/070116
Publication Date:
August 28, 2014
Filing Date:
February 17, 2014
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SEGURA PEREZ JAVIER (ES)
International Classes:
G05B15/02; H04L12/28
Domestic Patent References:
WO2012152972A12012-11-15
WO2001037581A22001-05-25
Foreign References:
US20070242688A12007-10-18
US20100271989A12010-10-28
US20100257295A12010-10-07
US20080037571A12008-02-14
US20050085930A12005-04-21
US20110154375A12011-06-23
Other References:
See also references of EP 2960729A4
Attorney, Agent or Firm:
BALLESTER CAÑIZARES, Rosalia (ES)
Download PDF:
Claims:
REIVINDICACIONES

1- Sistema distribuido de elementos 1 integrados en nodos 2 para el control y la gestión de elementos controlables electrónicamente, basado en eventos y configurado a través de una herramienta software de configuración por medio de enlaces 3 entre los nodos 2 que componen el sistema, caracterizado porque comprende al menos un nodo 2 que integra al menos un elemento 1 que puede ser físico o virtual, siendo estos últimos los que amplían las funcionalidades del nodo sin tener reflejo físico en el hardware, con unas características determinadas y específicas, donde cada nodo 2 está formado por una primera capa hardware, que comprende una unidad de control, un módulo de elementos físicos y un módulo de comunicación con la herramienta software de configuración y, una segunda capa software que comprende un kernel, un driver para los elementos físicos, un driver para la comunicación con la herramienta software de configuración, un sistema operativo, una librería del sistema con toda la información del mismo, una parte de ejecución o runtime, y la especificación del nodo que hay que registrar, siendo implementadas unas u otras partes de las capas de cada nodo en función del tipo de nodo y su función y, donde los elementos de cada nodo están relacionados con elementos del mismo nodo o de otro nodo distinto, mediante unos enlaces que determinan hacia donde circula cada orden o evento, estando definida la funcionalidad de cada elemento por al menos un enlace 3 y al menos una configuración del elemento 1 que se traduce al lenguaje del sistema a través de la herramienta software de configuración.

2- Sistema distribuido de elementos 1 integrados en nodos 2 para el control y la gestión de elementos controlables electrónicamente, según la reivindicación 1 caracterizado porque los enlaces 3 entre elementos 1 incluyen modificadores de la orden o evento que aplican una operación lógica o matemática al valor de dicho evento para modificar dicho valor antes de que llegue a su destino, de manera que el evento se realice en unas condiciones concretas determinadas por el usuario.

3- Sistema distribuido de elementos 1 integrados en nodos 2 para el control y la gestión de elementos controlables electrónicamente, según cualquiera de las reivindicaciones anteriores caracterizado porque los enlaces 3 entre elementos 1 se realizan a través de puntos de conexión de entrada, de salida, o de entrada/salida de eventos existentes en cada elemento 1.

4- Sistema distribuido de elementos 1 integrados en nodos 2 para el control y la gestión de elementos controlables electrónicamente, según cualquiera de las reivindicaciones anteriores caracterizado porque la comunicación e tre nodos 2 cuyos módulos de comunicación con la herramienta software de configuración se basan en protocolos de comunicación física distintos, se realiza a través de un puente entre protocolos físicos, que traduce a nivel de hardware entre un método de comunicación y otro.

5- Sistema distribuido de elementos 1 integrados en nodos 2 para el control y la gestión de elementos controlables electrónicamente, según cualquiera de las reivindicaciones anteriores caracterizado porque la comunicación entre este sistema y cualquier otro sistema o aplicación que utilice un protocolo de comunicación software distinto al de este se realiza a través de un nodo proxy, que es un traductor entre sistemas siendo la especificación del nodo de la capa software de dicho nodo Proxy la encargada de comunicarse con el otro sistema y traducir la información de manera bidireccional entre ambos.

6- Sistema distribuido de elementos 1 integrados en nodos 2 para el control y la gestión de elementos controlables electrónicamente, según cualquiera de las reivindicaciones anteriores caracterizado porque la herramienta software de configuración del sistema comprende una aplicación de programación que permite que esta se realice de forma visual a través de la pantalla de un terminal, estableciendo en la misma los enlaces entre los elementos y la configuración de los mismos, para obtener la funcionalidad deseada en el sistema.

7- Procedimiento de funcionamiento de un sistema distribuido de elementos 1 integrados en nodos 2 para el control y la gestión de elementos controlables electrónicamente, basado en eventos como el que se define en las reivindicaciones 1 a 6 caracterizado porque comprende por una parte la recepción y envío de eventos para el registro y configuración de cada nodo desde la herramienta de configuración y, por otra parte

- la activación 23 del envío de al menos un evento por al menos un primer nodo 2;

la recepción 24 en al menos un segundo nodo del al menos un evento procedente del primer nodo;

el procesamiento de la información 25 del evento por el al menos un segundo nodo;

- la recepción 26 de dicho al menos un evento en el al menos un elemento 1 integrado en el segundo nodo, receptor de los mismos;

la ejecución 27 del mismo,

- la comprobación 28 en el al menos un elemento 1 integrado en el segundo nodo, según la configuración del mismo, de si debe generar un nuevo evento o no, y;

- la generación de un nuevo evento 28.2, si la configuración de dicho al menos un elemento 1 que integra el segundo nodo así lo determina, enviándolo al nodo correspondiente o la finalización del procedimiento 29 en caso contrario 28.1.

Description:
SISTEMA DISTRIBUIDO DE ELEMENTOS INTEGRADOS EN NODOS PARA EL CONTROL Y LA GESTIÓN DE ELEMENTOS CONTROLABLES ELECTRÓNICAMENTE Y PROCEDIMIENTO DE FUNCIONAMIENTO DEL MISMO DESCRIPCIÓN

Campo técnico de la invención

La presente invención corresponde al campo técnico de los sistemas aplicables a aplicaciones que comprenden elementos controlables electrónicamente, llevando la gestión de los mismos.

Antecedentes de la Invención

Uno de los campos de la técnica que más está avanzando en los últimos tiempos son los sistemas de control y gestión de instalaciones, donde podemos englobar multitud de tipos de aplicaciones, desde el control de grandes instalaciones energéticas como, por ejemplo, parques eólicos o plantas solares, hasta instalaciones domésticas, lo que comúnmente se denomina aplicaciones domóticas. Existen actualmente multitud de sistemas para realizar el control de instalaciones y la automatización de tareas, bien de forma remota, bien de forma autónoma por el propio sistema. Sin embargo, sucede que la mayor parte de las empresas dedicadas a estos tipos de sistemas, donde existe una gran competencia, elaboran sistemas propios cuyos elementos no son compatibilizables con los de ninguna otra empresa, de manera que aparecen limitaciones importantes en cuanto al hecho de que una vez adquirido un sistema de control, el desarrollo de la tecnología para la mejora de dicho sistema depende del avance de una única empresa, no del de un sector. Además, se depende de una sola empresa para las labores de mantenimiento, reparación y ampliación (cuando sea posible) del sistema, lo que al eliminar la competencia, deriva en perjuicio para el consumidor final. Por tanto, un primer problema técnico que surge es el de la estandarización de estos sistemas de control o gestión, independientemente de la plataforma, fabricante o tipo de dispositivo que se desee controlar, adaptándose tanto a las tecnologías ya existentes como a las futuras tecnologías que pudieran aparecer.

Una forma de resolver este problema técnico es la modularización de los elementos de la instalación, de manera que todo elemento componente de la instalación esté configurado a partir de diferentes módulos, existiendo así módulos que, por sí solos, carecen de una funcionalidad definida, pero que combinados entre sí logran ofrecer cualquier funcionalidad posible para así adaptarse a cualquier tipo de tecnología de forma que en cada caso particular se dispongan los módulos adecuados para el correcto funcionamiento del sistema. De este modo, se posibilita la adopción de cualquier tipo de tecnología simplemente implementando el módulo necesario para que un tipo determinado de tecnología se adapte a la instalación que se está realizando.

No obstante, para poder llegar a obtener módulos como los indicados, en los que cada uno de ellos realiza una función según cómo se ha combinado con el resto y en función de unas instrucciones prefijadas por el usuario, se hace necesaria la combinación de la tecnológica de los sistemas de control actuales (esto es, el hardware actual) junto al desarrollo de software, de modo que dichos elementos sean capaces de procesar la información de modos diferentes, con lo que únicamente se trata de coger la opción más adecuada entre todas las posibles. Actualmente, en los sistemas de telecontrol, en los que se dispone de un determinado número de elementos con una funcionalidad definida, es la instalación la que ha de adaptarse al telecontrol y no al contrario, siendo altamente costoso y a veces imposible la ampliación de sistemas ya realizados y las soluciones aportadas no se adaptan totalmente a lo buscado, sino que se trata de aproximaciones. Por ejemplo, en una vivienda donde se ha automatizado la caldera de gas, de manera que funcione conforme a unos parámetros definidos (hora de encendido y apagado, temperatura ambiental, división por zonas, etc.) la introducción de una nueva dependencia o el deseo de ampliar la instalación a zonas no climatizadas (un trastero, por ejemplo) supone la necesidad de alterar por completo el sistema tanto a nivel físico como de programación, siendo necesaria la intervención de la empresa instaladora. Por tanto, un segundo problema técnico que hay que resolver es el de la escalabilidad del sistema de telecontrol, convirtiéndolo en un sistema distribuido que permita superar los problemas de estos sistemas.

Actualmente se conocen intentos de resolver los problemas anteriormente comentados mediante la introducción de estándares de fabricación de sistemas, como por ejemplo el estándar KNX para instalaciones domóticas. Si bien resulta una solución únicamente parcial ya que, aunque engloba en un mismo tipo de sistema a varios fabricantes, éstos quedan sujetos a unas normas de fabricación que coartan la flexibilidad de adaptación a un problema concreto, dado que ofrecen pocas opciones a la hora de resolver una instalación. Por ejemplo, el estándar KNX introduce un cable de protocolo de comunicación a través de todo el sistema, de modo que obliga a realizar una instalación de cableado por todo el edificio donde quiera ser instalado.

En la actualidad es conocida la existencia de diferentes protocolos de comunicación como Ethernet, ZigBee, Bluetooth, Wi-Fi, etc. los cuales son empleados en mayor o menor medida para la ejecución de sistemas de control de instalaciones, siendo las características propias de cada una de ellas las que hacen que se deriven más hacia un tipo de instalaciones que otras. Estos protocolos son habitualmente empleados en la automatización de instalaciones, existiendo limitaciones debidas a las mismas propiedades de cada protocolo. Por tanto, un tercer problema técnico que presenta el actual estado de la técnica es la falta de versatilidad, estando limitados los actuales sistemas de control por un único protocolo, cuando sería recomendable el empleo de varios de ellos en función de la instalación y de las circunstancias específicas de la misma, e incluso que fuera capaz de prever soluciones adecuadas a futuras ampliaciones de la instalación que se trate, aún cuando no se conozcan exactamente las necesidades que surgirán.

En la práctica, realmente cualquier sistema de control, sea cual sea el protocolo que utilice, es ampliable con otros dispositivos o incluso con otros sistemas que utilicen protocolos diferentes. No obstante, el problema con el que se encuentra cualquier persona que trata de llevar a cabo una ampliación de este tipo es que ya de entrada el sistema a ampliar ha debido ser configurado de forma individual y en el momento de su ampliación, cada dispositivo o cada sistema a añadir debe ser configurado igualmente de forma individual. Incluso, si el sistema añadido utiliza un protocolo diferente, el traductor de enlace entre los mismos, va a tener que ser configurado manualmente.

Esto genera una enorme dificultad en el proceso de configuración y las posibles realizaciones de ampliaciones de sistemas pues ios dispositivos a configurar en cada sistema pueden ser muy numerosos, lo que conlleva una alta posibilidad de error.

Finalmente, todos los sistemas de control de instalaciones descritos parten de los conceptos de sensor, controlador, actuador e interface, pudiendo un mismo dispositivo realizar varias de estas funciones, que sería simplemente la unión de dos elementos de los descritos en uno solo. Esta concepción de la instalación provoca inevitablemente una falta de flexibilidad a la hora de crear el sistema de control que deriva finalmente en altos costes y en una limitación importante de las posibilidades que ofrece dicho sistema.

Son conocidos distintos documentos que reflejan el estado de la técnica indicado. Así pues, el documento de referencia US2007242688A1 describe la disposición de un sistema formado por controladores, sensores, interruptores, alarmas, actuadores, ventiladores, humidificadores, etc. los cuales se disponen de manera tal que todos los elementos del sistema se pueden configurar para que trabajen a intervalos, en vez de en continuo, de modo que se reduce la cantidad de información que circula por el sistema evitando así sobrecargar el bus de comunicaciones, problema habitual en redes inalámbricas. También describe cómo se ha de construir los dispositivos para su funcionamiento en el sistema. En esta patente los nodos son dispositivos determinados, es decir, un sensor, un actuador un controlador o un elemento similar. Por otro lado, se describe un sistema en el que cada nodo tiene su correspondiente canal de comunicación físico con el resto de nodos. La información en este sistema va de origen a destino pasando a través de otros nodos si es necesario, sin embargo el sistema no tiene capacidad de modificar la información durante su transcurso. Además, es necesaria una estación de trabajo para poder guardar logs e información relevante del sistema asi como para poder programar y hacer cambios. El sistema está ideado para balancear adecuadamente la carga de información y el procesamiento extra que supone la comunicación inalámbrica, por tanto, no es un sistema fácilmente escalable.

El documento de referencia US20100271989 describe un sistema que comprende una serie de nodos conectados inalámbricamente, donde cada uno tiene una función definida, habiendo nodos sensores y nodos controladores entre otros. El documento US 20100257295 describe un sistema enfocado a mejorar el intercambio de información entre dispositivos y controladores de comunicación inalámbrica, estableciendo un sistema de configuración de paquetes mediante identificadores de grupo, de modo que en lugar de enviar un paquete de información a cada elemento y que éste compruebe si es para él, se envíe un único paquete a su destinatario. Como la anterior, está también basada en la comunicación inalámbrica y enfocada también a mejorar y balancear el ancho de banda. Hay por tanto un protocolo fijo de comunicación.

El documento de referencia US20080037571 está exclusivamente orientado hacia la domótica y describe un nuevo aparato denominado device manager, para solventar el problema que existen en los estándares de redes multimedia (como HAVI o MOST) cuando dos dispositivos quieren acceder a la vez a un tercero por ejemplo, cuando un portero automático, un reproductor de música y un teléfono quieren acceder al mismo altavoz. Los devices se basan en la comunicación entre una salida (denominada source) y una entrada (denominada sink). Se describe cómo ha de configurarse el device manager para evitar el solapamiento de eventos. El problema técnico objetivo que soluciona ese documento es únicamente el acceso múltiple a un mismo recurso. Tampoco se describe como ampliar o modificar el sistema, puesto que el objetivo es, precisamente, gestionar el acceso a un único dispositivo, no a varios. El documento de referencia US20050085930 describe un método para facilitar el control de elementos automatizados en una instalación. Describe como implementar un dispositivo (hardware) y como implementar los pasos necesarios para configurar los dispositivos basado en un sistema de agrupación de estados (de los dispositivos, como on/off de una lámpara, un valor de un regulador de luz, etc.), denominando escenario a dicha agrupación de estados. Se trata básicamente de asignar etiquetas a los dispositivos de manera que cuando se crea un escenario, en dicho escenario se indiquen los dispositivos que se van a incluir y mediante el método descrito se logra que dichos dispositivos operen con una mayor rapidez en respuesta a cambios externos. Este documento describe cómo hacer un flujo de configuración de escenas, entendiendo escenas como el conjunto de estados que un dispositivo puede tener. Este documento no describe un sistema con nodos que permita la configuración individualizada y el control de los dispositivos. Este documento únicamente describe el manejo de los eventos en los propios dispositivos, esto es, la gestión de la información que se proporciona a los dispositivos, pero en ningún caso se soluciona el problema de la versatilidad o de la escalabilidad del sistema. De hecho, con esta solución, si escalamos el sistema, posiblemente los problemas en el manejo de información se multipliquen notablemente.

Finalmente, el documento de referencia US2011154375 consiste en un sistema que mediante una plataforma de hardware (un dispositivo físico como un iPad o un ordenador) proporciona una forma de conexión común para cualquier tipo de sensor o actuador. Para cada tipo de sensor o actuador se crea un programa que lo maneja (driver genérico), incluyéndolo como un programa más de la plataforma de hardware. Se explica también el método para llevar esto a cabo este sistema. Es una plataforma centralizada y la programación requiere de cualificación por parte del usuario. En este caso, se intenta usar un ordenador al que se le conectan todos los sensores y un usuario especializado crea el programa en código (solo por programadores o gente con altos conocimientos) para que ejecuten la función deseada. Este documento no describe un sistema distribuido. Descripción de la invención

Es bien sabido que en el estado de la técnica conocido, hay dos tipos de soluciones para un sistema distribuido de control: (a) las soluciones que podemos llamar específicas, y que consisten en desarrollar los circuitos electrónicos de control específicos para cada elemento a controlar, incluyendo, lógicamente la placa electrónica y la programación del o los controladores; y (b) las soluciones comerciales, que consisten en elementos controladores más o menos estandarizados, como un PC industrial embebido, que simplemente han de instalarse y programarse. En el primer caso, las soluciones son excesivamente caras y cuentan con la desventaja de tener que rediseñarse desde cero con cada aplicación. Las segundas, que tienen un coste también muy elevado, cuentan con la desventaja de no tener la versatilidad de las primeras (su posibilidad de adaptarse a todos los entornos no es, lógicamente, como diseñar un sistema específico) y además requiere una programación complicada para cada caso.

El objeto de la invención establece un sistema de control intermedio entre ambos sistemas y combina sus ventajas minimizando sus desventajas. Así pues, con el sistema distribuido de elementos integrados en nodos, basado en eventos y configurado a través de una herramienta software de configuración por medio de enlaces entre los nodos que componen el sistema que aquí se presenta comprende al menos un nodo que integra al menos un elemento con unas características determinadas y específicas. Este al menos un elemento puede ser físico o virtual.

Un elemento virtual es aquel que amplía las funcionalidades del nodo sin tener un reflejo físico en el hardware, es decir.no se trata de un elemento físico como tal, y por tanto no tiene una relación uno a uno con el hardware que maneja, como sí ocurre con los elementos físicos.

Así por ejemplo en el caso de un elemento físico como es el elemento interruptor, cada elemento interruptor está asociado a un interruptor físico del hardware, mientras que en un elemento virtual no existe esa correspondencia uno a uno.

Así por ejemplo, en un nodo sensor de temperatura, el elemento físico está asociado al sensor físico mientras que los elementos virtuales de este sensor son los distintos umbrales o rangos de temperatura que puede presentar, de tal manera que cada rango o umbral no es más que una división lógica, no correspondiéndose con el hardware en concreto. En el caso de un nodo móvil, cada elemento virtual consiste en cada una de las opciones que tiene la aplicación móvil que se comunica con el nodo móvil. Cada opción en la aplicación móvil, es solo software no reflejando ninguna relación directa con ningún botón físico. Otro ejemplo puede darse en el nodo de sonido, donde cada elemento virtual de este nodo consiste en cada uno de los canales de sonido que soporta. En el caso de un nodo de infrarrojos que solo tiene elementos virtuales, éstos consisten en cada uno de los códigos IR que soporta, aun cuando el hardware no es más que un LED emisor de infrarrojos.... así pues, no se trata de un elemento físico como tal, y no tiene un reflejo en el hardware.

Cada al menos un nodo de este sistema está formado por una primera capa hardware y una segunda capa software.

La capa hardware comprende una unidad de control, un módulo de elementos físicos y un módulo de comunicación con la herramienta software de configuración, mientras que la capa software comprende un kernel, un driver para los elementos físicos, un driver para la comunicación con la herramienta software de configuración, un sistema operativo, una librería del sistema con toda la información del mismo, una parte de ejecución o runtime, y la especificación del nodo que hay que registrar. Unas u otras partes de las capas de cada nodo son implementadas en función del tipo de nodo de que se trate así como de la función del mismo. Los elementos de cada nodo están relacionados con elementos del mismo nodo o de otro nodo distinto mediante unos enlaces que determinan hacia donde circula cada orden o evento. La funcionalidad de cada elemento está definida por al menos un enlace y al menos una configuración del elemento que se traduce al lenguaje del sistema a través de una herramienta software de configuración.

En el caso de más de un nodo, queda establecido un protocolo de comunicación independiente de la capa física, siendo los enlaces la representación de por donde tienen que circular los eventos que se van generando en los elementos integrados en dichos nodos, estableciendo el flujo de procesamientp de los eventos.

El sistema está diseñado para obtener la máxima escalabilidad y versatilidad posibles, dotándole de la posibilidad de absorber cualquier tecnología tanto presente como futura, y creando una lógica de funcionamiento que permite configurar cualquier tipo de elemento que exista o se pudiese crear.

El sistema objeto de la presente invención tiene la ventaja de que la funcionalidad que se quiere implantar no depende de un elemento específico, sino que depende de la combinación de los distintos elementos que componen el sistema. Por ello, la funcionalidad es sumamente sencilla cambiarla y/o adaptarla a las necesidades que van surgiendo, sólo añadiendo o quitando elementos del sistema. Además, todo el sistema es distribuido, sin embargo, la configuración del sistema está centralizada a través de una herramienta software, que es la encargada de dividir la configuración y guardarla en los distintos elementos, mostrando toda la información como si fuese un sistema centralizado.

El funcionamiento del sistema está basado en eventos, de tal manera que una vez establecida la funcionalidad deseada a través de la herramienta software, y a través de una pluralidad de enlaces entre los distintos elementos, el sistema lo único que hace es esperar a que se produzcan eventos externos. Una vez producidos dichos eventos, el sistema los procesa y reenvía a los distintos nodos o dispositivos que se hayan configurado, para que cada nodo o dispositivo procese dicho evento y, en caso de requerirlo, se creen nuevos eventos que retornen al sistema. El protocolo de comunicación independiente de la capa física que comunica los distintos nodos que integran el sistema es uno de los elementos esenciales del sistema. Con este bus o protocolo de comunicación virtual, que no está asociado a ningún bus o red concreta, se consigue que cada nodo se pueda comunicar con otro nodo independientemente del método de comunicación que se utilice, dándole una capacidad de escalabilidad a nivel de comunicación entre los elementos del sistema que supone una mejora importante respecto del estado de la técnica enunciado y, por tanto, responsable de la resolución de los problemas técnicos indicados.

El sistema objeto de la invención, realmente encapsula cualquier tipo de configuración de cada uno de los elementos que integran el sistema, tanto para elementos existentes como para posibles futuros elementos, de tal forma que se ha diseñado una lógica de control de dichos elementos (configuración, eventos y procesamiento de los eventos). Gracias a esta lógica de control es posible crear, configurar y controlar cualquier dispositivo electrónico, de forma totalmente independiente del hardware empleado. Esta lógica está implementada tanto en los nodos que componen el sistema, como en la herramienta software que permite su configuración.

Más concretamente, el sistema objeto de la presente invención comprende las siguientes unidades principales: nodos, elementos y conexiones o enlaces. Cada una de estas unidades se describe a continuación.

1 - Los nodos El sistema está compuesto por al menos un nodo. Es la unidad mínima de la que se compone el sistema.

Cada nodo tiene unas características específicas que reflejan las características físicas del elemento físico que controla el nodo en cuestión. Por ejemplo, un nodo de relés tiene como elementos los relés a actuar, el nodo sensores, tiene tanto elementos como sensores tenga bajo su control, etc.

Los nodos comprenden una primera capa hardware y una segunda capa software, como ya se ha indicado.

La primera capa a nivel hardware está formada normalmente por una unidad de control, un módulo de elementos físicos y un módulo de comunicación con la herramienta de configuración del sistema. La segunda capa a nivel software puede comprender un kernel, driver para los elementos físicos, driver para la comunicación con la red de la herramienta de configuración, un sistema operativo, una librería del sistema con toda la información del mismo, una parte de ejecución o runtime, y la especificación del nodo que hay que registrar. En función del tipo de nodo de que se trate las capas del mismo comprenden todas las partes mencionadas o sólo algunas de ellas. 2- Los elementos

Los elementos son la mínima unidad configurable del sistema, y como se ha indicado, reflejan las características de un elemento físico o virtual. A nivel de lógica, el sistema sólo ve los elementos, puesto que los nodos realmente son los que actúan como interfaz para su control. Así pues, un nodo puede tener elementos físicos e incluso virtuales, puesto que su funcionalidad se configura dentro del sistema a través de los mismos, no de los nodos. Los elementos, por tanto, aportan la funcionalidad requerida al conjunto del sistema basándose en las conexiones que disponen y las opciones configurables por el usuario. Así pues, los nodos son dispositivos hardware que el usuario o instalador coloca en la instalación, sin embargo, a la hora de configurar el sistema, el usuario/instalador ve cada uno de los elementos conectados con dicho nodo, ya que un mismo nodo puede tener varios elementos conectados de un mismo tipo o de varios tipos. Para entender el funcionamiento de los elementos y los nodos, si queremos controlar un interruptor a través de un relé para encender/apagar la luz, el usuario, en primer lugar tiene que añadir al sistema un nodo de interruptores (que puede contener los elementos interruptorl e interruptor2) y un nodo de relés (con los elementos relél y relé2), estando el sistema configurado mediante el enlace entre interruptorl y relél . Con esta sencilla configuración (realizada en la herramienta software) el sistema ya está configurado para que cada vez que se produzca un evento en el interruptorl se mande una señal al relél para que se actúe en consecuencia.

Como se ha indicado, una parte fundamental de los elementos son las conexiones que soporta un elemento para poder ajustar el modo de funcionamiento. Cuantas más conexiones tenga el elemento más modos de funcionamiento soporta y por consiguiente más tipos de conexiones se pueden crear desde o hacia otros elementos aumentando considerablemente la versatilidad del sistema.

En este sistema distribuido de elementos integrados en nodos, los enlaces o conexiones entre elementos incluyen modificadores de la orden o evento, que varían su valor a conveniencia, de manera que el evento se produce en un momento determinado en función de ese valor. La orden o evento resultante está destinado a actuar sobre uno de los elementos. Así mismo dichos enlaces entre elementos se realizan a través de puntos de conexión existentes en cada elemento. Dichos puntos de conexión pueden ser de entrada, de salida o bien de entrada/salida de eventos.

Por ejemplo, en el caso del elemento interruptor, tiene una conexión denominada "valué" que es solo de salida, ya que transforma una señal física externa (pulsar el interruptor) a un evento del sistema que "sale" por dicho enlace. En el caso del relé, también tiene un enlace "valué" pero que en este caso es de entrada, ya que recibe el evento del sistema (en nuestro caso procedente del interruptor) y transforma dicho evento en una señal física externa (dejar pasar la corriente).

Tomando el ejemplo anterior, el interruptorl se conecta al relél , y si sólo existiera una forma de conectarlos, lo único que se podría hacer es reflejar el valor del interruptorl en el valor del relél, dicho de otra forma si solo tenemos una conexión, si el interruptorl está pulsado el relél deja pasar la corriente.

Pero si lo que se desea es que en vez del interruptor pueda colocarse un pulsador, y que cada vez que pulsamos, la luz cambie de estado, es decir que el estado de la luz vaya cambiando en cada pulsación que hagamos en el pulsador, si sólo tenemos una conexión "valué" no se puede ¡mplementar dicha funcionalidad ya que cuando el usuario pulsase el pulsador, mandaría un evento con el valor "encendido" al relé que reflejaría dicho estado, pero una vez que el usuario suelte el pulsador, se mandaría el evento con el valor "apagado" al relé apagando la luz, cosa que es no deseable en este caso.

No obstante, al tener más conexiones, los elementos integrados en el sistema pueden adquirir más funcionalidades. En el ejemplo utilizado, se puede conseguir la funcionalidad deseada conectando la conexión "on" que es un conexión de salida que poseen los interruptores/pulsadores, y que solo manda un evento cuando se ha pulsado, pero que no manda ningún evento cuando se deja de pulsar (existe la conexión contraria "off") con la conexión "toggle" del relé que es una conexión de entrada que poseen los relés que cambia el estado del relé independientemente de cuál sea el valor de entrada.

Otro concepto a tener en cuenta es el de las opciones del elemento. Vamos a poner el ejemplo de que queremos configurar la luz de la escalera de un edificio. En este caso lo que se desea es que cuando alguien pulse el pulsador se encienda la luz de la escalera, pero que transcurrido un determinado tiempo, se apague.

Para este ejemplo en concreto solo con las conexiones no es suficiente ya que aunque la parte encendido es fácil de configurar, no hay ninguna manera de tener un tiempo de apagado configurable. En este caso, la configuración de conexiones se realiza conectando la conexión de salida "on" del pulsador a la conexión de entrada "on" del relé, que es una conexión del relé que independientemente del valor del evento activa el relé.

Con esto solo conseguimos que siempre que pulsemos se encienda el relé, pero para conseguir que se apague el relé en un tiempo determinado, en las opciones del elemento relé, tenemos que establecer el tiempo de apagado deseado en la opción "timer off" que es una opción que tienen todos los relés de manera que si se establece un tiempo en segundos mayor que cero, cada vez que el relé se activa, se dispara un temporizador, que cuando llega al tiempo establecido, desactiva el relé.

Así pues, los elementos se componen de conexiones y opciones que, en conjunto son las que dotan de funcionalidad al sistema.

3- Los enlaces o conexiones

Los enlaces son los que configuran el protocolo virtual de comunicaciones y que facilitan el alto grado de adaptabilidad de las funcionalidades del sistema. Los enlaces son la representación de por donde tienen que circular los eventos que se van generando en los elementos a través de los nodos, es decir, que establece el flujo de procesamiento de los eventos indicando origen y destino.

El flujo de procesamiento de un evento puede extenderse indefinidamente. En el ejemplo utilizado para explicar la invención, un evento es generado por un elemento, en este caso un interruptor, integrado en un nodo, en este caso un nodo de interruptores y, el evento, a través de la configuración del enlace, se envía a otro elemento, en este caso un relé, en otro nodo, el nodo de relés. Sin embargo, el flujo no tiene porqué terminar ahí, ya que se puede extender indefinidamente añadiendo más enlaces a las conexiones de salida de los elementos que reciben el evento.

En el caso en que se desea que cuando se encienda la luz de salón, también se encienda la televisión, se conecta/enlaza la conexión de salida "valué" del interruptor a la conexión de entrada "valué" del relé y después en el relé tenemos que conectar la conexión de salida "valué" a la conexión de entrada "tv on" del dispositivo "TV" perteneciente a un nodo TV. De este ejemplo, se puede deducir, que si se quiere asociar más acciones, es perfectamente posible, y además el sistema está diseñado de tal manera que no existe limite en el numero de pasos posibles dentro de un flujo. Los enlaces o conexiones, además de indicar el origen y el destino del evento, tienen dos propiedades especiales: el desfase temporal, también denominado delay y los modificadores de valor.

El desfase temporal o delay, es una propiedad del enlace, que establece si se quiere retardar el evento durante un tiempo concreto. El evento en cuestión, una vez generado, no se envía al sistema hasta que no pasa el intervalo de tiempo establecido por el usuario. El modificador del valor, es la segunda propiedad del enlace, que hace que se puedan negar valores, multiplicarlos por alguna constante, o en general aplicarle una operación lógica o matemática al valor del evento, para modificarlo antes de que llegue al destino. Se varía pues el valor del evento a conveniencia para que se produzca en un momento determinado en función de ese valor. Esta propiedad se usa más en elementos como los sensores analógicos o similares donde su valor no es un 1 o un 0.

Un ejemplo de la modificación del valor como propiedad del enlace es el caso en que se desea que se encienda una luz en el momento en que la luz solar exterior baja un 30%. Para este caso, se utiliza un nodo de sensores con un elemento de sensor de luz, que contiene una conexión "valué" que da un valor que varía entre 0, cuando no hay luz y, 100 para la máxima intensidad de luz y, un nodo relé con un elemento relé.

Para este caso, si conectamos la conexión "valué" del elemento sensor de luz a la conexión "valué" del relé, lo que obtenemos es que la luz siempre va a estar encendida, excepto cuando el sensor dé cero, que es cuando realmente no hay luz, ya que cuando el sensor manda el valor 0, le llega al relé dicho valor y corta la energía, sin embargo, cuando el sensor detecta algo de luz, al relé le llega un valor entre 1 y 100 que para el relé al ser un elemento digital, siempre lo toma como 1 y deja pasar la energía. Si al enlace se le aplica un modificador de inversión del valor, obtenemos la funcionalidad opuesta, que es que cuando es 0 el sensor, se activa el relé, y cuando es mayor que 0 el relé se apaga. Sin embargo, sigue sin ser la funcionalidad esperada, ya que en el mundo real, siempre suele haber algo de luz, así que nuestro relé siempre estaría encendido, por eso en este caso es más interesante que se active solo cuando haya pasado el umbral del 30% de oscuridad, es decir, queremos que se encienda cuando el valor está entre 0 y 30. Para ello, en nuestro modificador de valor con simplemente añadir la formula: event_value/30, obtenemos la funcionalidad deseada, ya que si el valor está por debajo de 30 la división siempre es cero, y cuando el valor es 30 o superior la división sería 1 o un valor superior. El sistema comprende una última abstracción, que es la formación de grupos, que no está ubicada con ninguna de las unidades fundamentales del sistema, sino que la información está dividida y almacenada en pequeñas partes en cada una de las unidades descritas (nodos, elementos y enlaces). Los grupos permiten establecer acciones condicionales en el sistema, es decir, permiten establecer flujos condicionales en el sistema.

Cada enlace y cada elemento tienen unas propiedades especiales que son los grupos a los que pertenecen, así cada enlace tiene un identificador de grupo, y cada elemento contiene una lista de los grupos que soporta, siendo los elementos estructuras lógicas de software, que contienen características específicas que definen dicha lista de grupos que soporta., Cuando establecemos un flujo, dichas conexiones se pueden "agrupar" o asignar un identificador de grupo para que solo se ejecuten cuando se haya activado dicho grupo. Dentro del programa de configuración, por defecto, todos los enlaces que creamos al no tener grupo, siempre se ejecutan, pero para los casos donde queramos que solo se ejecute un enlace en función de una condición, dicho enlace se asigna a un determinado grupo.

La herramienta de configuración trata a los grupos como si fuesen un elemento, aunque son especiales, ya que no residen en ningún nodo en concreto.

Los grupos pueden ser activados y desactivados, tanto por enlaces externos al grupo, como por enlaces internos del grupo. Los grupos pueden ser exclusivos o cooperativos. Como se ha indicado, los enlaces sólo tienen un identificador de grupo, sin embargo, los elementos tienen un listado de grupos activos, de tal manera que cuando le llega el evento de activación de grupo a un elemento, si el grupo es exclusivo, pasa a la lista de grupos activos el grupo al que le llega y desactiva los demás grupos, no procesando ningún enlace/evento que no pertenezca a dicho grupo, sin embargo, si el grupo es cooperativo, el elemento lo agrega a la lista de grupos activos y procesa todos los enlaces de dichos grupos más los que no tienen grupos.

En el caso de un grupo exclusivo, los elementos cuando reciben el evento de desactivación de grupo, activan los grupos cooperativos que han estado activados antes de que se recibiese la orden de activación del grupo exclusivo. Aunque el elemento esté en un estado de un solo grupo exclusivo, el elemento sigue pudiendo recibir eventos de activación/ desactivación de grupos de tal manera que cuando se restablece la función cooperativa, la lista de grupos activos siempre esta actualizada. Finalmente, cabe indicar que si un elemento esta activo en un grupo exclusivo, no puede pasar a otro grupo sea exclusivo o no, hasta que no haya llegado la orden de desactivar el primer grupo exclusivo.

En general, y a diferencia de lo que ocurre en el estado de la técnica, los nodos, que en la invención que aquí se propone están implementados a base de diferentes capas de hardware y software permiten la inclusión en un sistema de nuevos protocolos de comunicación mediante la implementación de una nueva capa capaz de trabajar con dicho protocolo, quedando el resto del nodo sin modificar, suponiendo esto una importante simplificación a la hora de incorporar nuevas tecnologías al sistema.

La comunicación entre nodos que implementan distintos protocolos de comunicación física se realiza a través de un puente entre protocolos físicos, mientras que en el caso de la comunicación con otros sistemas o protocolos de comunicación software esta se realiza a través de un proxy.

Así pues, los puentes entre protocolos físicos son conversores entre medios de comunicación distintos, es decir unos traductores a nivel de hardware entre un medio de comunicación y otro, sin procesar ningún tipo de información, mientras que los proxies son traductores entre distintos sistemas y pueden contener una lógica.

Por otro lado, siendo este un sistema en el que cada elemento que lo conforma puede actuar a modo de sensor, actuador, controlador o interface, en función de la necesidad del momento, y que se concibe como el montaje de módulos con diferentes funcionalidades que en función de cómo se dispongan cumplen diferentes necesidades, supone una solución a los problemas comentados, abaratando en costes cualquier tipo de sistema de control con respecto a lo existente en el estado de la técnica actual y ofreciendo la solución más ajustada a las necesidades posible, con una versatilidad desconocida hasta el momento.

En este sistema distribuido de elementos integrados en nodos, la herramienta software de configuración del mismo comprende una aplicación de programación que permite su realización de forma visual a través de la pantalla de un terminal estableciendo en la misma los enlaces entre los elementos y la configuración de los mismos, para obtener la funcionalidad deseada en el sistema.

De este modo, por muy compleja que sea la funcionalidad que se desea conseguir el proceso de configuración resulta sencillo e intuitivo. Así mismo, con esta configuración visual no se genera código pues lo único que se genera es una pseudo configuración que luego es ejecutada en el runtime de cada nodo, eliminando el tiempo de desarrollo, prueba y depuración de errores y consecuentemente los costes asociados a cualquier desarrollo de automática actual.

Toda la configuración del sistema se actualiza en tiempo real, es decir, cuando se modifica algún enlace, opción,... , la herramienta de configuración guarda dicha información en el/los nodos afectados y en ese mismo momento ya se puede hacer la comprobación de si la funcionalidad configurada es la deseada o no.

La herramienta de configuración a su vez, está formada por unas secciones o ventanas que son las siguientes: los escenarios, la lista de nodos, la lista de elementos y el espacio de trabajo.

Los escenarios son una abstracción de lo que el usuario quiere. Así, un escenario puede ser cada una de las estancias de una habitación, para tener organizados los elementos que hay, o puede ser cada una de las funcionalidades concretas que quiera usar como la parte TV, la parte de luz, la parte de climatización, etc. El escenario simplemente contiene los elementos del sistema y representa sus enlaces y se pueden crear tantos como sean necesarios. El escenario, o el concepto del escenario, es un concepto organizativo en la herramienta de configuración, de hecho, la división de escenarios reside en la propia aplicación/herramienta y no en el sistema.

En la lista de nodos, se representan todos los nodos que existen en el sistema, independientemente del método o protocolo de comunicación que utilicen a través de los proxies, traductores y puentes que existan en el sistema.

Los nodos que se representan aquí, como hemos dicho anteriormente, son todos los dispositivos que el instalador/usuario añade al sistema. En esta ventana, si algún nodo ha dejado de funcionar, el nodo aparece en color rojo indicando que tiene algún fallo. La herramienta de configuración, aunque el nodo no responda sabe que en algún momento ha existido ya que queda el rastro de los enlaces de algún otro nodo que apunte a este, o porque el mismo nodo reporta fallos internos. Esta ventana, se actualiza en tiempo real, es decir, que si la herramienta de configuración está abierta y en ese momento se añade un nuevo nodo al sistema, esta ventana actualiza en el momento la lista reflejando el nuevo nodo añadido.

En la lista de elementos se pueden ver todos los elementos que pertenecen al nodo seleccionado. Desde la lista de elementos, es desde donde se puede seleccionar el elemento con el que se quiere trabajar y "arrastrarlo" al espacio de trabajo o elementos, para tener una representación visual del mismo, con sus conexiones y enlaces. Esta ventana, tiene especial interés, ya que aquí, es desde donde se pueden añadir instancias de los tipos de elementos virtuales que soporta el nodo. Cuando un nodo exporta su configuración a la herramienta de configuración, aparte de indicar qué elementos contiene, exporta también qué tipos de elementos virtuales exporta, por ejemplo, un nodo de sensores a parte de exportar los elementos físicos como el sensor de temperatura y el de luz, exporta que soporta dos tipos de elementos virtuales, el elemento virtual de rango de luz y el de rango de temperatura. Estos elementos virtuales amplían funcionalidades del nodo de sensores es decir, extienden sus capacidades, pues por ejemplo en este caso en concreto, dichos elementos virtuales pueden disponer de unos rangos o valores de manera que cuando se traspasa alguno de ellos, el elemento virtual crea un evento. Se pueden agregar elementos físicos o virtuales, pero sólo se pueden quitar elementos virtuales, los elementos físicos no se pueden quitar.

Por último, el espacio de trabajo, que es la parte más importante del programa. Es donde se establecen los enlaces entre los distintos elementos, donde se configuran las opciones de los elementos y en general donde se ve cual es el flujo de enlaces/ eventos para conseguir la funcionalidad que se quiere obtener. El espacio de trabajo es un mapa del sistema donde poder trabajar.

Cada elemento se representa como un símbolo, un dibujo,..., con su nombre. El usuario puede dar el nombre que quiera al nodo que pertenece, para aportar así un mayor entendimiento de lo que está usando, como por ejemplo "luz cocina". A cada nodo también se le puede cambiar el nombre y las conexiones o puntos de conexión que contiene. Normalmente, la herramienta de configuración asigna a cada tipo de elemento un color, que es común en todos los elementos del mismo tipo para una más fácil identificación, aunque lógicamente se pueden cambiar los colores, tanto a nivel de tipo, como a nivel de elemento individual. El color también es una propiedad que sólo afecta a la herramienta y que no tiene que ver nada con el sistema.

Dentro del espacio de trabajo, para poder visualizar mejor la funcionalidad o flujo que se quiere crear pueden moverse libremente los elementos y pulsando sobre cada elemento se abre la ventana de opciones para poder configurarlas. No existe un tamaño mínimo ni máximo del mapa, sin embargo cuanto más grande sea, más hay que desplazarse para ver el flujo de todos los elementos. Es más conveniente tener flujos más pequeños organizados en escenarios.

Las opciones de elemento, son algo muy específico de cada elemento, por lo que el desarrollador del nodo, aparte de crear el código del nodo específico, también si quiere tener opciones de elemento, tiene que crear el plug-in correspondiente para que la herramienta pueda interpretar dichas opciones. Si la herramienta de configuración no dispone del plug-in correspondiente del elemento, simplemente muestra una advertencia de que le falta dicho plug- in, pero trata al elemento como si no tuviese opciones.

Para agregar los enlaces hay que pulsar la conexión que interese en el elemento de origen y conectarla con la conexión del elemento destino. Una vez realizada dicha acción, la herramienta, como hemos comentado anteriormente, se conecta a los nodos afectados mandándoles la nueva configuración, de tal manera que es posible probar en ese mismo instante si hemos creado la funcionalidad deseada. Si queremos modificar las propiedades del enlace, como el delay o el modificador del valor del evento, igualmente se realiza en este punto. Los enlaces que tienen propiedades, se muestran de distinto color que los que no tienen propiedades establecidas para ayudar al usuario a distinguir cual tiene opciones y cual no.

Así mismo, en él caso en que el sistema comprende un número determinado de nodos, pero se encuentra la necesidad de introducir un nuevo nodo no existente inicialmente en el sistema, esto puede realizarse sin ningún problema y de un modo sencillo.

Gracias a la capa de software que llevan todos los nodos, en concreto al Runtime, una vez conectado el nuevo nodo al sistema, dicha capa se encarga de la publicación de que existe este nuevo nodo, para que el resto de nodos se enteren de su existencia, así como la herramienta de configuración, para poder configurarlo. Esta capa utiliza diversas técnicas de software de detección automática de nodos, dependiendo del bus real al que se conecte, siendo la más habitual la ZeroConf.

Una vez que el nuevo nodo es detectado, la herramienta software de configuración es la que se encarga de traducir las especificaciones del nodo a la lógica del sistema, mediante el Runtime de la capa software del nodo, pudiendo de este modo configurar el nodo para que el sistema lo utilice.

La especificación del nodo es el código que hay que implementar en un nodo para poder definir los parámetros y propiedades que contiene para poder ser usados en el sistema, así como los elementos que comprende, las conexiones de cada uno y las opciones de cada elemento.

Dicho código lo implementa el desabollador interesado en crear un nuevo nodo y esto lo hace con las herramientas existentes en el mercado para desarrollos electrónicos más una API o librería software del sistema, que se proporciona y que incluye todas y cada una de las capas necesarias, incluido el Runtime, para que el nodo funcione correctamente en el sistema, dejando únicamente al desabollador la tarea de implementar la especificación del nodo. En esta memoria, además del sistema distribuido de elementos integrados en nodos, basado en eventos, se presenta un procedimiento de funcionamiento de un sistema distribuido tal como el definido. Dicho procedimiento consta de una primera parte consistente en la recepción y envío de eventos para el registro y configuración de cada nodo desde la herramienta de configuración y una segunda parte que comprende una serie de fases.

La primera de estas fases es la activación del envío de al menos un evento a al menos un primer nodo. Seguidamente, se realiza la recepción en al menos un segundo nodo del al menos un evento procedente del primer nodo.

A continuación, dicho al menos un segundo nodo que recibe la información realiza el procesamiento de la misma.

Una vez procesada la información se genera la recepción de dicho al menos un evento en el al menos un elemento integrado en el segundo nodo, receptor de los mismos.

Seguidamente se lleva a cabo la ejecución de la misma por estos elementos.

La siguiente fase del procedimiento comprende la comprobación en el al menos un elemento integrado en el segundo nodo, según la configuración del mismo, de si debe generar un nuevo evento o no. Por último, y según la configuración de dicho al menos un elemento que integra el segundo nodo, en caso de estar configurado para generar un nuevo evento, este se envía al nodo correspondiente.

Tanto con el sistema distribuido de elementos integrados en uno o más nodos, como con el procedimiento de funcionamiento del mismo que aquí se proponen se obtiene una mejora significativa del estado de la técnica.

Esto es así pues se obtiene un sistema que es capaz de controlar los sistemas existentes en el estado de la técnica y configurarlos a todos mediante una única manera, es decir, que consigue hacer compatibles sistemas que actualmente no lo son o que en caso de tratar de compatibilizarlos precisan un desarrollo personalizado y costoso. Esto incluye no solo sistemas domésticos sino también agrícolas, procesos lógicos como reconocimiento facial, control industrial,... Además este sistema es lo suficientemente versátil y escalable para poder absorber tanto los sistemas actuales como los sistemas futuros. Este sistema, al estar diseñado para poder controlar cualquier tipo de sistema distinto, no depende de un protocolo de comunicación único y por tanto soporta cualquier tipo de infraestructura de comunicación existente o que pueda crearse en un futuro sin necesidad de tener que realizar distintas configuraciones. A su vez, el sistema no depende de unidades centrales, es decir, todo el sistema es distribuido para ser tolerante a fallos y que, de este modo, cada pieza estropeada solo presente información que le afecta a ella, no comprometiéndose la estabilidad o funcionamiento del resto del sistema.

Así mismo, aunque todo el sistema es distribuido, puede configurarse fácilmente desde un único puesto sin ser necesario configurar cada elemento uno a uno.

Por otra parte, a pesar de la multitud de sistemas diferentes que puede albergar el sistema distribuido propuesto, gracias a la utilización de los nodos proxies oportunos en cada uno de ellos, que se encargan de convertir y abstraer las peculiaridades de cada sistema a la lógica de funcionamiento del sistema distribuido, existe una única manera de configuración para todos y cada uno de los elementos que integran dichos sistemas, independientemente del origen de los mismos.

A su vez, este sistema y su procedimiento presentan la ventaja añadida de que la configuración o programación de dicho sistema, por muy complejo que sea puede realizarse de forma visual y por personas no necesariamente cualificadas ni con conocimientos de desarrollador.

De este modo, con el sistema distribuido de elementos integrados en nodos que aquí se presenta se consigue un sistema completamente diferente a los ya existentes, pues su función, más que para controlar dispositivos es para solucionar problemas reales de la práctica, pudiendo crear soluciones en cualquier tipo de sistema ya existente o que todavía no está creado, ya sea domótico, autónomo,... ya sea distribuido o no, que plantee acceder a uno o a múltiples protocolos distintos y, todo ello sin que sea necesaria la programación individual de cada dispositivo o sistema o del traductor entre los mismos.

Así pues, se obtiene un sistema distribuido que mediante una programación sencilla y visual, es capaz de configurar cualquier sistema que desee añadirse a otro existente. De este modo, con este sistema la configuración se realiza de forma informatizada, eliminándose la necesidad de configurar manualmente cada dispositivo que lo integra. Se reduce de este modo de forma considerable la dificultad del proceso de configuración, los posibles errores que conlleva este proceso realizado manualmente, el tiempo invertido en el mismo y por tanto los costes que derivan de dicha configuración.

A lo largo de la descripción y las reivindicaciones la palabra "comprende" y sus variantes no pretenden excluir otras características técnicas, aditivos, componentes o pasos. Para los expertos en la materia, otros objetos, ventajas y características de la invención se desprenden en parte de la descripción y en parte de la práctica de la invención. Los siguientes ejemplos y dibujos se proporcionan a modo de ilustración, y no se pretende que restrinjan la presente invención. Además, la presente invención cubre todas las posibles combinaciones de realizaciones particulares y preferidas aquí indicadas.

Breve descripción de los dibujos

Con objeto de ayudar a una mejor comprensión de las características del invento, de acuerdo con un ejemplo preferente de realización práctica del mismo, se aporta como parte integrante de dicha descripción, una serie de dibujos donde, con carácter ilustrativo y no limitativo, se ha representado lo siguiente:

La Figura.1.- Muestra la disposición física de los nodos que componen el sistema, dispuestos en la vivienda tipo estudio que se emplea para desarrollar el ejemplo.

La Figura 2.- Muestra una vista esquemática de las capas de un nodo tal y como se implementa el sistema objeto de la invención.

La Figura 3.- Muestra un diagrama esquemático de la configuración de enlaces de dispositivos del sistema para controlar el funcionamiento de la iluminación de la cocina. La Figura.4.- Muestra un diagrama esquemático de la configuración de enlaces para otro escenario en el que se controlan las persianas y la luz del dormitorio.

La Figura 5.- Muestra un diagrama esquemático de otra configuración de enlaces para un escenario de control de la bañera y la iuz del baño.

Las Figuras 6.1 , 6.2, 6.3 y 6.4.- Muestran diagramas esquemáticos de otras configuraciones para la persiana, luz y aparatos de TV y A/C dispuestos en el salón. Las Figuras 7.1 , 7.2.- Muestran un diagrama esquemático de otra configuración de enlaces para los aparatos del recibidor de la vivienda, como son el detector de presencia y el video portero.

La Figura 8.- Muestra un diagrama esquemático de otra configuración para un escenario no establecido conforme a una lógica de localización de los aparatos en una misma sala, en concreto para el escenario apagar la casa.

La Figura 9.- Muestra un esquema de la implementación de un nodo de relés que forma parte del sistema distribuido del modo de realización preferente de la invención.

La Figura 10.- Muestra un esquema de la implementación del nodo de software, en concreto un nodo de reconocimiento facial.

La Figura 1 - Muestra un esquema de la implementación de un nodo Proxy, en concreto un nodo móvil.

La Figura 12.- Muestra un diagrama de bloques que representa el procedimiento de funcionamiento del sistema distribuido de elementos. Descripción detallada de un modo de realización preferente de la invención

A la vista de las figuras aportadas, puede observarse cómo en un modo de realización preferente de la invención, el sistema distribuido de elementos 1 integrados en nodos 2, basado en eventos y configurado a través de una herramienta software de configuración por medio de enlaces 3 entre los nodos 2 que componen el sistema que aquí se propone, comprende varios nodos 2 que integran cada uno de ellos una serie de elementos 1 que pueden ser físicos o virtuales y presentan unas características determinadas y específicas.

Los elementos virtuales son aquellos que reflejan un tipo de configuración lógica del sistema. Si por ejemplo existe un elemento físico como un sensor, un elemento virtual puede ser el que refleja los valores de dicho sensor. Así pues, mientras el elemento físico sensor sí tiene su reflejo en el hardware, no ocurre lo mismo con el elemento virtual.

Cada nodo 2 está formado por una primera capa hardware y una segunda capa software.

La capa hardware comprende una unidad de control, un módulo de elementos físicos y un módulo de comunicación con la herramienta software de configuración, mientras que la capa software comprende distintas partes, formadas por un kernel, un driver para los elementos físicos, un driver para la comunicación con la herramienta software de configuración, un sistema operativo, una librería del sistema con toda la información del mismo, una parte de ejecución o runtíme, y la especificación del nodo que hay que registrar.

En cada tipo de nodo y según la función del mismo, se implementan las partes necesarias de cada una de estas dos capas. Los elementos de cada nodo se relacionan con elementos del mismo o de otro nodo distinto mediante enlaces que marcan la dirección del flujo de las ordenes o eventos que se producen en el sistema. Así pues, la funcionalidad de cada elemento se define mediante los enlaces 3 con el resto de elementos y al menos una configuración del elemento 1 que se traduce al lenguaje del sistema a través de una herramienta software de configuración.

El modo de realización preferente de la invención que se presenta en esta memoria, para un mejor entendimiento de dicha invención, trata un sistema distribuido de todos los nodos 2 de una vivienda 4 tipo estudio que consta de recibidor R, salón X, dormitorio U, cuarto de baño W y cocina T, configurándose una instalación de gestión de los mismos que resulta sencilla de instalar y ofrece un amplio abanico de posibilidades.

El hecho de proponer este modo de realización preferente de la invención por su más fácil entendimiento, no significa que este sistema distribuido sea aplicable únicamente a aplicaciones domóticas. No es por tanto un ejemplo limitativo, ya que este sistema puede aplicarse a sistemas de mediciones, sistemas industriales, red de servicios públicos, red de tráfico, etc., es decir, a cualquier aplicación que comprende elementos controlables electrónicamente y trata la gestión de los mismos.

Los elementos que se desea controlar son los siguientes, indicando su situación dentro de la vivienda: cinco luces, localizándose una en cada estancia; tres persianas motorizadas situadas dos en el salón X y una en el dormitorio U; encendido y apagado de un aparato de aire acondicionado y de la televisión, a través del mando de la TV en el salón X; nivel y temperatura del agua de la bañera y apertura/cierre del grifo, ambos en el baño W; un video portero en el recibidor R; un timbre y una cámara exterior para el video portero, fuera del estudio; una cerradura electrónica, en la puerta de entrada; un detector de presencia tipo alarma doméstica en el recibidor R; tres pulsadores dobles (subir y bajar) para controlar las persianas y, cinco pulsadores simples para controlar cada una de las luces.

El sistema está implementado en una herramienta software de configuración y el software se encuentra implementado en los nodos 2 que componen el sistema desde un punto de vista físico (hardware). Una característica fundamental de la implementación del sistema es que es totalmente independiente de la plataforma donde queda implementado. Para el funcionamiento del sistema distribuido de este modo de realización preferente de la invención, es necesaria la instalación de un router inalámbrico con conexión ADSL, que se dispone en el recibidor R, así como un proxy que permite la comunicación desde el protocolo de comunicación independiente RS-485 a Ethernet, conectado al router, dispuesto también en el recibidor R. La conexión ADSL es necesaria solamente en casos como el de este modo de realización preferente de la invención en los que se desea acceder al control de la casa en remoto, pero no sería necesario en casos en los que no fuera necesaria esa condición. En este sistema se emplean cuatro tipos de nodos 2 diferentes, cuya disposición en el estudio 4 queda representada en la Figura 1 y que presentan todos ellos una misma estructura.

Para que el sistema sea escalable, un nodo 2 cualquiera, debe estar dividido en capas, que dependen de las funcionalidades del mismo. Esto es así, dado que un nodo 2 puede estar conectado a cualquier dispositivo electrónico, desde un microcontrolador hasta un servidor, por lo que en función de las capacidades del mismo, va a tener unas u otras capas.

En la Figura 2 se muestra un esquema de las capas que forman los nodos en el sistema distribuido de esta invención. Estas son las siguientes:

1- Capas a nivel hardware 5: unidad de control 5.1 , módulo de elementos físicos 5.2 y módulo de comunicaciones 5.3.

2- Capas a nivel software 6: driver para elementos físicos 6.1 , driver de comunicaciones 6.2 con la red, sistema operativo 6.3, núcleo del sistema operativo o kernel 6.3.1 , librerías 6.4 del sistema, runtime 6.5 y especificación 6.6 del nodo 2.

Los cuatro tipos de nodos 2 diferentes empleados en este modo de realización preferente de la invención, presentan la misma estructura a nivel hardware consistente en módulo de comunicación 5.3, unidad de control 5.1 y módulo de elementos 5.2 en los que en cada una de las partes de dicha estructura se ha dispuesto un módulo diferente adecuado a las funciones que se le exigen para el control de la instalación. Así pues, estos nodos 2 son los siguientes:

El primer nodo es el Doble relé 2.1 , que está formado por un módulo de elementos 5.2 compuesto por 2 relés + 6 interruptores + un módulo de sensores opcional.

Se comunica con el resto del sistema mediante un protocolo de comunicación del tipo RS-485. Estos nodos 2.1 permiten el control de elementos de encendido/apagado tales como luces o motores de persiana. En muchos casos no es necesario emplear todos los interruptores, por lo que los no empleados quedan sin uso.

En la Figura 9 puede observarse un esquema de las capas que forman un nodo de Doble relé 2.1 en este modo de realización preferente de la invención.

Este presenta dos relés físicos conectados con dicho nodo 2.1 y se comunica con otros nodos del sistema a través de un protocolo de comunicación del tipo RS485. Este nodo 2.1 , separándolo en las capas 5, 6, que se han indicado, se compone de:

1- Capas a nivel hardware 5: una unidad de control 5.1 , compuesta por un microcontrolador PIC24 de 16 bits, un módulo de elementos físicos 5.2, formado por dos relés y seis interruptores y, un módulo de comunicaciones 5.3, compuesto por un protocolo de comunicación RS485. 2- Capas a nivel software 6: un driver de comunicaciones 6.2 con la red, del tipo ExOS RS485 driver, un sistema operativo 6.3 ExOS, librerías 6.4 del sistema implementadas por defecto, que contienen toda la información del sistema, un runtime 6.5 y la especificación 6.6 del nodo 2.1 , definida por el usuario al implementar el nodo en el sistema, que implica la especificación para el doble relé 2.1. En este modo de realización preferente de la invención el driver 6.1 para elementos físicos no se aplica, ya que el acceso es directo.

El sistema operativo 6.3 ExOS es un sistema operativo de acceso libre para microcontroladores con una capa de abstracción compatible POSIX, que se está diseñando conjuntamente con el sistema distribuido que aquí se presenta, para establecer la misma relación entre capas 5, 6, del sistema distribuido, tanto si el nodo 2 es un pequeño microcontrolador, como si el nodo 2 reside en un ordenador de sobremesa.

El segundo nodo es el Doble electroválvula 2.2, que está formado por un módulo de elementos físicos 5.2 compuesto por 2 electroválvulas + 6 interruptores + un módulo de sensores opcional.

Se comunica con el resto del sistema mediante un módulo de comunicaciones 5.3 compuesto por un protocolo de comunicación del tipo RS-485. Permite controlar la apertura y cierre de los grifos de la bañera. Incorporando un sensor de temperatura y un nivel también posibilita controlar la temperatura del agua en todo momento y el llenado/vaciado de la bañera.

El tercer nodo es el Infrarrojo 2.3 que está formado por un módulo de elementos físicos 5.2 compuesto por emisor + receptor. Se comunica con el resto del sistema mediante un módulo de comunicaciones 5.3 compuesto por un protocolo de comunicación del tipo RS-485. Este nodo 2.3 permite controlar los aparatos de la vivienda 4 que responden a señales infrarrojas, en este ejemplo serían la televisión y el aire acondicionado, ambos dispuestos en el salón X.

El cuarto tipo de nodo es el Video portero 2.4, que está formado por un módulo de elementos físicos 5.2 compuesto por el propio video portero, el cual dispone de cámara.

Se comunica con el resto del sistema mediante un módulo de comunicaciones 5.3 compuesto por un protocolo de comunicación del tipo Ethernet.

Un caso especial es el de los nodos virtuales. Un elemento virtual es aquel que refleja un tipo de configuración lógica del sistema, es decir, a diferencia del caso de un nodo físico como el nodo relé, donde la relación es 1 a 1 , pues el elemento relé que aparece en el sistema está asociado al relé de hardware que hay en el nodo de relés 2.1 , en el caso del nodo virtual, puede existir un hardware que lo que refleja son los distintos estados de ese hardware como es el caso de los sensores.

Aunque en este modo de realización preferente de la invención no aparecen nodos de sensores, un ejemplo de un nodo de sensores puede contener más de un sensor, por ejemplo, un sensor de luz ambiente y otro de temperatura, o bien un único sensor de luz.

En el caso en que por ejemplo el nodo tiene un elemento físico como es el sensor de luz, este con su conexión de salida "valué", va mandando la información del valor actual del sensor, sin embargo, tiene unos elementos virtuales que son los "sensor ranges". El elemento de tipo "sensor range" tiene dos conexiones de salida, "in" y "out" y tiene dos opciones de elemento que son "min. valué" y "max. valué" de tal manera que cuando el usuario ha configurado el valor máximo y mínimo en las opciones de dicho elemento, cuando el nodo detecta internamente que el valor del sensor está dentro de alguno de los rangos establecidos en cada uno de los elementos virtuales "sensor range", las conexiones correspondientes generan un evento.

Esto es útil, en el caso de que se quiere, por ejemplo, encender una bombilla siempre que la luz está en un determinado rango, por ejemplo entre los valores 30 y 60. Con los ejemplos anteriores y usando solo el elemento del sensor físico, esta configuración no sería posible. Sin embargo, usando los elementos virtuales la configuración sí que es posible, tan solo hay que crear, en el programa de configuración, dentro del nodo un nuevo elemento del tipo "sensor range" y automáticamente aparece en el sistema dicho nuevo elemento. Una vez visible en el sistema ya se pueden configurar las opciones de rango y enlazar con otros elementos con los que se quiera interactuar.

En el caso de los nodos de sensores, las capas 5, 6, son iguales que en el nodo de relés 2.1 , al contener la misma unidad de control 5.1 y el mismo módulo de comunicación 5.3 compuesto por un protocolo de comunicación RS485, variando sólo el hardware especifico o módulo de elementos físicos 5.2 que son los sensores y la implementación de la especificación 6.6 de los mismos. En el caso de un nodo de audio, las capas 5, 6, son similares, cambiando únicamente el protocolo de comunicaciones, ya que dicho nodo de audio, al requerir más ancho de banda, se comunica a través de TCP/IP.

Existe un tipo de nodo que puede reflejar un software (nodo de software). En principio, esto no es posible, ya que cada nodo 2 implica poderse ejecutar en un hardware determinado, sin embargo, cuando nos referimos a nodo de software 2.5, nos estamos refiriendo a un nodo 2 que se ejecuta como servicio y/o aplicación en un ordenador de sobremesa o en un servidor. Esta versión especial de nodo 2, no tiene ninguna de las capas de hardware 5, ni las capas que se refieren al sistema operativo 6.3, ya que usan el hardware y Sistema Operativo 6.3.0 (mac, linux, Windows) que tenga instalado el ordenador y el microprocesador 5.1.0 del mismo. Un ejemplo de este caso, es el nodo de reconocimiento facial, que debido a que los requerimientos de procesamiento de rasgos faciales son muy altos, se usan ordenadores para poder tener dicha capacidad de procesamiento. Así, el nodo de reconocimiento facial, es una aplicación que contiene solo la librería 6.4 del sistema y el runtime 6.5 para poder exportar o publicar en el sistema las funcionalidades que ofrece dicho ordenador. El diagrama de capas de un nodo software 2.5 se muestra en la figura 10.

Finalmente, cabe indicar que cada nodo 2, independientemente de su naturaleza usa el runtime 6.5 para poder enviar/recibir eventos y configuraciones del sistema, que a su vez contiene el software necesario para el control del hardware y el núcleo del sistema (las librerías 6.4 del sistema).

Dentro del sistema, y debido a que el sistema es altamente escalable y configurable, existen multitud de maneras de implementar un nodo 2. Los nodos 2 "normales" son aquellos que realmente tienen una función específica como el doble relé 2.1 , el de sensores, etc. sin embargo hay casos donde el nodo 2 representa un conjunto de elementos 1 que, independientemente de que sean virtuales, deben de estar sincronizados con otros "aparatos electrónicos" que no entienden o no saben nada acerca del sistema. Estos nodos son lo que denominamos proxies, y son nodos que por un lado se comunican con el sistema de la invención y por otro se comunican con otro sistema ajeno al mismo. Estos proxies son una especie de traductores entre distintos sistemas.

Un ejemplo de este tipo de nodo lo encontramos en un nodo móvil 2.6 que es un nodo que realmente actúa de proxy en el sistema, reflejando la configuración que tenga ei sistema en cada uno de los elementos 1 móviles a los que se puede enlazar. El nodo móvil, es un nodo específicamente diseñado, para dar soporte a todos los "aparatos" que sean móviles, es decir, que no tienen una permanencia continuada en el sistema. Estos "aparatos" pueden ser móviles, portátiles, pdas, etc.. y debido a su escasa permanencia en el sistema, estos elementos se conectan al proxy correspondiente (nodo móvil) tanto para recibir actualizaciones de los eventos que se han producido en el sistema como para generar nuevos eventos que el usuario demande (como encender una luz desde el móvil).

Dicho nodo proxy es el elemento permanente del sistema que permite la conexión de elementos 1 no permanentes en el sistema. Este nodo en concreto aunque el sistema de comunicación 5.3 con el sistema es Ethernet, la comunicación entre los "aparatos" móviles también se realiza a través de Ethernet, compartiendo el mismo driver 6.2 de comunicaciones. El diagrama de capas del nodo móvil 2.6 es el que se muestra en la figura 1 1 aunque en este caso hay que tener en cuenta que se trata de un nodo proxy móvil, mientras que en otros ejemplos podría ser por red WIFI, Bluetooth o cualquier otro estándar similar.

Otro ejemplo importante de un nodo proxy, son los nodos proxy traductores de otros sistemas. Por ejemplo, en algunas instalaciones, cuando se va a proceder a instalar el sistema de la invención, probablemente existe algún otro sistema instalado de otro fabricante. En este caso y para no hacer una transición de sistemas con un coste elevado, ya que habría que quitar un sistema y poner el de la invención, se usan los denominados traductores "proxy" para poder aprovechar la instalación anterior. Debido a que la base o el núcleo del sistema es una abstracción puramente lógica, el traducir una configuración de nuestro sistema a otro y viceversa es un proceso relativamente sencillo, por lo que permite absorber dentro del sistema los elementos de otros sistemas usando o creando el traductor oportuno. Un Ejemplo de utilización de este nodo Proxy sería por ejemplo para la traducción de algún otro sistema como por ejemplo el KNX, que es un sistema de domótica para la gestión de viviendas y edificios inteligentes.

Tanto en el caso del nodo móvil, como en el caso del nodo traductor, la especificación 6.6 de nodo es la encargada de comunicarse con la "otra" red del sistema a controlar y traducir la información de manera bidireccional entre los dos sistemas. Existe un caso muy concreto que solo se da en los elementos del sistema de la invención, que es el caso de los puentes.

Se dispone de un amplio número de nodos 2 para la mayoría de las funciones que se requieren hoy en día en el sector de automatización, medición, industrial, etc.. sin embargo, muchos de esos nodos 2 no se comunican por el mismo sistema, unos se comunican por Ethernet, otros por RS485, otros por Zigbee, otros Bluetooh, etc.

Debido al concepto de protocolo de comunicación, definido por los enlaces 3, cualquiera de esos nodos 2 se pueden comunicar con cada uno de los otros nodos 2 ya que entienden y conocen la lógica del sistema de la invención, pero que realmente no pueden hacer ya que sus sistemas de comunicación son distintos. En estos casos es donde se instalan los puentes, que no son más que conversores entre protocolos de comunicación distintos. Así por ejemplo si queremos comunicar un nodo con un protocolo de comunicación RS485 con un nodo con un protocolo de comunicación Ethernet, instalaremos en medio un puente del tipo RS485/Ethernet.

No hay que confundir un puente con un traductor o proxy ya que el puente simplemente traduce a nivel de hardware entre un método de comunicación y otro y no procesa ningún tipo de información mientras que los proxies o traductores pueden contener una lógica, que en algunos casos puede ser compleja, aunque en ocasiones puedan parecer puentes.

Se describen a continuación los distintos nodos 2 existentes en la instalación representada en la Figura 1 : Nodo Video Portero 2.4: Está encargado del control del video portero. Sus misiones para la instalación configurada en este modo de realización preferente de la invención, son detectar cuándo llaman, y ante este evento activar la videocámara. A continuación, ejecutar un programa de reconocimiento de rostro, conectarse a diferentes dispositivos móviles (teléfonos, iPads, televisores...) ubicados en la red local o a través de internet para enviar las imágenes y la información de reconocimiento y, finalmente, recibir desde el dispositivo móvil la orden de abrir la puerta y ejecutarla. Su módulo de comunicaciones 5.3 le permite conectarse al router mediante protocolo Ethernet y, a través del proxy, comunicarse al resto de nodos 2 mediante protocolo RS- 485. Primer nodo Doble Relé 2.1. A: Se encarga de controlar la luz del recibidor R y la apertura y cierre de la cerradura de la puerta principal. Consta de un relé 8.1 R para controlar la luz del recibidor, otro relé 8.3 para la cerradura de la puerta, y recibe señal de un detector de presencia 10.8 que enciende la luz cuando alguien pasa frente a él. También dispone de un interruptor para "apagar la casa" 10.4 (el usuario indica que va a abandonar la vivienda y, comunicándolo a los otros nodos 2, todos los elementos 1 controlados por la instalación se apagan o quedan en espera. Por ejemplo las persianas se cierran, las luces se apagan, el aire acondicionado se apaga, etc.)

Segundo nodo Doble Relé 2.1. B: Se encarga de controlar el encendido y apagado de las luces de cocina T y baño W, disponiendo asimismo de interruptores 10.5 para dichas luces y de un interruptor 10.6 que permite poner en funcionamiento la electroválvula que controla el grifo de la bañera.

Tercer nodo Doble Relé 2.1.C: Se encarga de controlar el encendido y apagado de las luces de dormitorio U y salón X, disponiendo asimismo de interruptores 10.5 para dichas luces.

Cuarto nodo Doble Relé 2.1.D: Se encarga de controlar la apertura y el cierre de la persiana de la ventana lateral del salón X, disponiendo asimismo de interruptores 10.7 para el control manual de dicha persiana, uno para subida 10.7S y otro para bajada 10.7B.

Quinto nodo Doble Relé 2.1.E: Se encarga de controlar la apertura y el cierre de la persiana frontal del salón X, disponiendo asimismo de interruptores 10.7 para el control manual de dicha persiana, uno para subida 10.7S y otro para bajada 10.7B.

Sexto nodo Doble Relé 2.1.F: Se encarga de controlar la apertura y el cierre de la persiana del dormitorio U, disponiendo asimismo de interruptores 10.7 para el control manual de dicha persiana, uno para subida 10.7S y otro para bajada 10.7B.

Nodo Doble Electroválvula 2.2: Se encarga del llenado de la bañera, disponiendo de válvulas 11 para apertura/cierre de agua fría y caliente y sensores de temperatura 12.1 y sensor de nivel 12.2. Dispone de interruptores para iniciar el llenado o detenerlo 10.1 , subir o bajar la temperatura 10.2 del agua y subir o bajar el nivel de llenado 10.3.

Este nodo 2.2 incorpora en su parte de hardware, en el módulo de elementos 5.2 el mencionado sensor de temperatura 12, mientras que la unidad de control 5.1 está conformada por un microprocesador PIC24 de 16 bits. La comunicación con el resto de nodos 2 se establece mediante protocolo RS-485. En su parte de hardware, queda reflejado el hecho de que el sensor 12 no necesita procesar información a través de la unidad de control 5.1 ya que únicamente se limita a arrojar un valor en función de la temperatura que mide en el agua, sin necesidad de procesamiento, por lo que no se implementa un driver 6.1 ni en la columna del módulo de elementos físicos entra en contacto el sistema operativo 6.3. El sistema operativo 6.3 elegido para este nodo 2.2 sería el ExOS, adecuado para microcontroladores, y dicho sistema operativo 6.3 se apoya en las capas superiores del Runtime 6.5 y las especificaciones 6.6 del nodo sensor para operar conforme a los requerimientos del sistema.

Cabe destacar el hecho de que este nodo 2.2, aparte del elemento sensor de temperatura 12, que ofrece de manera continua el valor de la temperatura, dispone de elementos virtuales que son los rangos de temperatura, los cuales crean un evento cuando se cruce un límite de temperatura establecido, tratándose en todo caso de igual manera todos estos elementos.

Nodo Infrarrojo 2.3: Está dispuesto junto a la televisión y en una zona donde también es capaz de llegar al aparato de aire acondicionado. Controla el encendido y apagado de ambos aparatos mediante señales infrarrojas. Aunque no se considera en este modo de realización preferente de la invención, también es posible controlar todas las demás funciones de cada aparato, como el volumen de la televisión o el cambio de canal.

En el sistema distribuido de elementos 1 integrados en nodos 2 de este modo de realización preferente de la invención, los enlaces 3 o conexiones entre elementos 1 incluyen modificadores de la señal que la modifican a conveniencia. A su vez, dichos enlaces 3 entre elementos 1 se realizan a través de puntos de conexión existentes en cada elemento que pueden ser de entrada, de salida o bien de entrada/salida de eventos.

La aplicación informática donde se establecen los diferentes enlaces 3 entre nodos 2 de manera que se produce el flujo de los eventos a través de ellos, permite realizar esto mediante diferentes disposiciones de dichos enlaces 3, que denominamos escenarios. Estos escenarios pueden recopilarse en grupos los cuales pueden activarse o desactivarse de manera que no se hace necesario establecer todos los enlaces 3 cada vez que se desea un modo de funcionamiento, sino que éstos quedan guardados en los grupos y simplemente hay que seleccionar un grupo en concreto para obtener las funcionalidades programadas.

Se presenta a continuación una serie de escenarios establecidos en este modo de realización preferente de la invención, desarrollando en cada uno de los escenarios la disposición de enlaces 3 comentada en función de las conexiones existentes en cada uno de los nodos:

Escenario 1 (Luz de la cocina T): Un primer escenario del tipo más sencillo, del que puede observarse un esquema en la Figura 3 y que consiste en el control de la luz de la cocina mediante un interruptor 10.5. En esta Figura 3, se representa el nodo Doble Relé 2.1.B, con los elementos que intervienen en este escenario, aunque comprende más elementos que en este caso no se representan.

Encontramos en la pared un interruptor 10.5 del tipo pulsador en el que tras pulsar, el interruptor vuelve a su sitio, y hay un relé 8.1T que permite o corta el paso de corriente hacia la luminaria de la cocina T. A nivel de sistema tenemos un elemento interruptor 10.5 con tres conexiones de salida, "Valué" S1 , "On" S2 y "Off S3, los cuales están denominados según los eventos que salen de ellos y, un elemento relé 8.1T que dispone de una conexión de entrada y salida, que es el "Valué" ES1 , y tres conexiones de entrada, que son "On" E2, "Off' E3 y "Toggle" E1 , estando todos estos elementos 1 dispuestos en el nodo Doble Relé 2.1.B.

La conexión "Valué" trata eventos en los que se proporciona al sistema algún valor numérico con el que se puede trabajar. Es el caso como en este modo de realización preferente de la invención, en el que se dispone por ejemplo, de un potenciómetro que permite regular la intensidad de la luz, mientras que las conexiones "On" y "Off únicamente emiten como evento el hecho de que se ha pulsado el interruptor de encendido o de apagado. La conexión "Toggle" sirve para conmutar, esto es, al recibir un evento, si el relé está abierto lo cierra y si está cerrado lo abre. Así pues, para el accionamiento de la luz de la cocina T únicamente es necesario enlazar la conexión "On" S2 de salida del interruptor 10.5 con la conexión "Toggle" E1 de entrada del relé 8.1T, de modo que cada vez que el sistema detecta que se ha pulsado el interruptor 10.5 enciende o apaga alternativamente la iluminación. Dentro de la disposición realizada para este escenario 1 cabe emplear si se desea el modificador del enlace, empleando el retardo de manera que se puede configurar el sistema para que al pulsar se encienda la luz y luego se apague automáticamente tras un tiempo determinado.

Escenario 2 (Persiana del dormitorio U): Este escenano, se muestra en la Figura 4 y corresponde a la configuración de enlaces 3 para el accionamiento de la persiana del dormitorio U, donde se ha dispuesto el nodo Doble Relé 2.1.F. A nivel físico disponemos de un interruptor 10.7 para el accionamiento de la persiana, dispuesto en la pared, con tecla de subida 10.7S y de bajada 10.7B, mientras que el paso de corriente hacia el motor de la persiana se controla con una pareja de relés 8.2 que abren o cierran según la orden dada.

Se dispone pues de cuatro elementos 1 , correspondientes al interruptor de subida 10.7S, el interruptor de bajada 10.7B, el relé de subida 8.2S y el relé de bajada 8.2B. Los interruptores 10.7S, 10.7B disponen de tres conexiones de salida cada uno, "Valué" S1 , "On" S2 y "Off' S3. Dado que únicamente disponemos a nivel físico de un pulsador de subida y uno de bajada, las únicas conexiones que se emplean en los interruptores 10.7S, 10.7B son el "On" S2 en cada interruptor. En los relés 8.2S y 8.2B se dispone de un conexión de entrada y salida, que es el "Valué" ES1 , y tres conexiones de entrada, que son "On" E2, "Off" E3 (cuando reciben un evento abren o cierran el paso de corriente) y "Toggle" E1 (cuando recibe el evento abre el paso a la corriente si estaba cerrado y lo cierra si estaba abierto). Así, un modo de funcionamiento de la persiana consiste en enlazar la conexión de salida "On" S2 de cada uno de los interruptores 10.7S, 10.7B, a la conexión de entrada "Toggle" E1 de los relés 8.2S, 8.2B, de manera que al pulsar el interruptor de subida 10.7S, el relé de subida 8.2S abre el paso de corriente y el motor comienza a subir la persiana. Para detener el motor simplemente hay que volver a pulsar el botón de subida y éste se detiene. Para evitar que ambos relés 8.2S, 8.2B, puedan abrir el paso de corriente simultáneamente, se enlaza también la conexión de salida "On" S2 de cada interruptor 10.7S, 10.7B, con la conexión de entrada "Off E3 de cada relé 8.2B, 8.2S, de forma que siempre que pulsamos el interruptor de subida 10.7S o de bajada 10.7B, el relé del movimiento contrario cierra el paso de corriente. Escenario 3 (Baño): Este escenario, que se muestra en la Figura 5, implica la configuración tanto de las luces del baño W como el control de temperatura y llenado de la bañera. En esta Figura 5, se representan el nodo electroválvulas 2.2 y el nodo Doble Relé 2.1.B, con los elementos que intervienen en este escenario, aunque el nodo 2.1.B comprende más elementos, como los del escenario 1 , que en este caso no se representan.

Disponemos de un elemento interruptor, 10.5 asociado al pulsador de la luz situado en la pared del baño, un interruptor 10.6 que controla el funcionamiento de la bañera, de manera que al pulsarlo comienza a llenarse la bañera con agua a la temperatura elegida previamente y asociado de igual modo que el anterior a un interruptor en la pared del baño, un sensor de temperatura 12.1 y otro de nivel de agua 12.2, asociados a los propios sensores dispuestos en la bañera y, finalmente tres electroválvulas (agua fría, agua caliente y desagüe) asociadas a sus correspondientes elementos en el sistema, con la particularidad de que la electroválvula del desagüe está incorporada dentro de un elemento de control 13 de la bañera. Puede observarse en la Figura 5 como el control de la luz del baño W se realiza de modo idéntico al del escenario 1. Para el control de la bañera, disponemos de los siguientes elementos que emiten eventos: Un interruptor 10.6 de bañera, con conexiones de salida "Valué" S1 , "On" S2 y "Off" S3, un sensor de temperatura 12.1 , con una única conexión de salida "Valué" S1 , que indica en cada medida el valor de temperatura obtenido y, un sensor de llenado 12.2, con una única conexión de salida "Valué" S1 , que indica en cada medida el nivel de agua existente.

Estos elementos emiten eventos hacia el elemento de control de la bañera 13, el cual dispone de cuatro conexiones de entrada: conexión de entrada para apertura/cierre de la electroválvula del desagüe E4.1 , E4.2, conexión de entrada para temperatura deseada E5, para temperatura actual E6 y para nivel de llenado E7. A medida que este elemento de control 13 recibe los eventos, los procesa conforme a unas especificaciones impuestas por el usuario, y emite desde dos conexiones de salida "Nivel agua fría" S4 y "Nivel agua caliente" S5 eventos que son recogidos en las conexiones "Valué" ES1 de los elementos Electroválvula agua fría 11.1 y Electroválvula agua caliente 11.2.

De esta manera, al accionar el pulsador de la bañera, el elemento interruptor envía este evento desde su conexión "On" hacia las conexiones del elemento control "llenar/vaciar", que controla la electroválvula del desagüe y "Temperatura deseada", la cual ha sido previamente fijada, en este modo de realización preferente de la invención a 36°. El elemento sensor de temperatura y el elemento sensor de llenado de bañera envían constantemente eventos indicando el valor de ambos parámetros a las correspondientes conexiones del elemento control "Temperatura actual" y "Nivel de llenado". Desde las conexiones de salida del elemento de control, finalmente, se envían eventos a las electroválvulas de agua fría 11.1 y agua caliente 11.2 con el grado de apertura que han de tener en cada momento, en función de los datos recibidos por los sensores.

Cuando se desea vaciar la bañera, pulsando de nuevo el interruptor de la bañera se abre la electroválvula del desagüe, ignorándose el resto de señales y enviando la señal de apagado a las electroválvulas de agua fría y caliente.

Escenario 4 (Salón): Mediante este escenario, que se muestra en las Figuras 6.1 , 6.2, 6.3 y 6.4.- se controlan las persianas de ambas ventanas, la luz del salón y el encendido y apagado del aire acondicionado. Tanto el control de la luz, que puede observarse en la Figura 6.3, como el de ambas persianas, que se muestra en las Figuras 6.1 y 6.2, se configura de manera análoga a los escenarios anteriores, mientras que, como se muestra en la Figura 6.4, para el control del aire acondicionado, al igual que ocurre para el control de la televisión, se dispone a través del nodo de infrarrojos 2.3 un elemento denominado botón verde 14 del mando a distancia, con una única conexión de salida "Pulse" S12 que envía el evento 3 de que ha sido pulsado al elemento apagar A/C 15, el cual tiene una única conexión de entrada E12.1 que cuando recibe el evento apaga el aparato. Para el encendido se emplea el elemento denominado botón rojo 16 del mando, que se enlaza con el elemento encender A/C 17. Escenario 5 (Recibidor): En la Figura 7.1 puede observarse cómo se configuran los enlaces 3 para el funcionamiento de un detector de presencia dispuesto en el recibidor de la casa que enciende la luz cuando se detecta que alguien pasa y se apaga en caso contrario. En esta Figura 7.1 , se representa el nodo Doble Relé 2.1. A, con los elementos que intervienen en este escenario, aunque comprende más elementos que en este caso no se representan.

También se configuran los enlaces del nodo video portero 2.4 que se muestran en la Figura 7.2, de manera que cuando alguien llama, este evento se notifica al elemento teléfono móvil del usuario y éste puede accionar el elemento video portero 19 desde su teléfono móvil. Para el detector de presencia disponemos a nivel de sistema por una parte de un elemento interruptor 10.8 denominado interruptor detector de presencia con tres conexiones de salida: "Valué" S1 , "On" S2 y "Off" S3, y por otra de un elemento relé 8.4 con conexión de entrada y salida "Valué" ES1 y tres conexiones sólo de entrada "On" E2, "Off' E3 y "Toggle" E1. Enlazando ambas conexiones "Valué" S1 , ES1 , obtenemos que el elemento interruptor detector de presencia 10.8 envía el evento 3 de activación al relé 8.4 cuando se detecta presencia y envía el evento de desactivación cuando ya no se detecta, mientras que el elemento relé 8.4 actúa permitiendo o no el paso de corriente a la luz en función del valor del evento que le llega.

Para el funcionamiento del video portero 19, el sistema tiene un elemento, denominado "llaman al timbre" 18, con una única conexión de salida "Ring" S7 que emite el evento 3 de que han pulsado el timbre de llamada; un elemento 20 asociado a una aplicación móvil, susceptible de estar instalada en uno o varios elementos ajenos al sistema, pero que son capaces de interactuar con él gracias a esta abstracción. En el caso concreto de este modo de realización preferente de la invención, la aplicación está instalada en uno o varios teléfonos móviles y el elemento tiene una conexión de entrada "Notificar" E11 , encargada de recibir el evento 3, y tres conexiones de salida. Una de ellas es la conexión "Descolgar" S8 que emite el evento 3 de que el usuario desea iniciar la comunicación, la segunda la conexión "Colgar" S9 que emite el evento contrario y por último la conexión "Abrir puerta" S10 que emite el evento de que el usuario desea abrir la puerta. Finalmente, el elemento video portero 19 dispone de tres conexiones de entrada E8, E9, E10, iguales a las conexiones de salida del elemento móvil.

La configuración elegida para esta parte del sistema es la de enlazar la conexión "Ring" S7 del primer elemento 18 a la conexión "Notificar" E11 del elemento 20 asociado a la aplicación móvil. Igualmente, las conexiones de salida S8, S9, S10, del elemento 20 asociado a la aplicación móvil se enlazan con sus homónimos E8, E9, E10, del elemento video portero 19, de manera que cualquier evento emitido desde el teléfono móvil se realiza en el video portero. Al recibir el usuario en su teléfono móvil la notificación de la llamada a la puerta y abrir la aplicación correspondiente, la imagen de la cámara del video portero es retransmitida a su teléfono. Al colgar en el teléfono, la imagen en el video portero también se cierra. Igualmente, si desde el teléfono se da la orden de abrir la puerta, el video portero la reproduce, con lo cual no es necesario acudir hasta el terminal situado en la entrada para operar este elemento. Escenario 6 (Apagar casa): Aunque los anteriores escenarios están organizados atendiendo a una agrupación de elementos por zonas, tal y como se ha indicado, al estar todos los nodos del sistema interconectados entre sí es posible establecer escenarios que afecten a diferentes nodos y establecer enlaces entre elementos sin importar dónde están situados. Este es el caso del presente escenario, que se muestra en la Figura 8, en el que mediante un interruptor 10.4 dispuesto en la pared del recibidor R podemos establecer que se realice la acción de "apagar la casa", consistente en que todas las persianas se bajen, todas las luces se apaguen, el aparto de A/C y la TV se desconecten y, tras un retardo de 10 segundos, la puerta principal se cierre.

En el sistema disponemos de un elemento 10.4 denominado apagar casa, con tres conexiones de salida "Valué" S1 , "On" S2 y "Off" S3, el cual se enlaza con los siguientes elementos de la vivienda: Relé bajar persiana 8.2. B del nodo Doble Relé 2.1.F (dormitorio), Relé luz 8.1 U del dormitorio del nodo Doble Relé 2.1.C, Relé luz 8.1W baño y Relé luz 8.1T cocina del nodo Doble Relé 2.1.B, Apagar A/C 15 y Apagar TV 19 del nodo Infrarrojos 2.3, Relé luz 8.1X salón del nodo Doble Relé 2.1.C, Relé bajar persiana 8.2.B de los nodos Doble Relé 2.1.D y Doble Relé 2.1.E (ambos en el salón) y, finalmente, Relé cerrar puerta principal 8.3 del nodo Doble Relé 2.1.A.

Los enlaces 3 a realizar parten todos de la conexión "On" S2 del elemento Apagar casa 9, y van a las conexiones de entrada "On" E2 de todos los elementos Bajar persiana 8.2. B, a todas las conexiones de entrada "Off' E3 de los elementos Relé luz cocina 8.1T, Relé luz dormitorio 8.1 U, Relé luz baño 8.1W y Relé luz salón 8.1X, a las conexiones de entrada "Pulse" E12.1 de los elementos del nodo IR1 y, disponiendo un retardo Z de diez segundos mediante la opción modificadora del enlace, a la conexión de entrada "On" E2 del elemento Relé cerrar puerta principal 8.3. Resulta obvio que la disposición de diferentes escenarios no presenta limitación ninguna, pudiendo establecer cuantos se deseen en base a las funcionalidades requeridas para la instalación. Igualmente, existe la posibilidad de añadir un nuevo nodo al sistema si fuera necesario, por ejemplo, en el caso de realizar una ampliación de la casa con una nueva habitación, que precise de al menos un nuevo nodo doble relé para el control de las luces y otro para el control de la persiana. En este caso, los nodos a añadir deben configurarse en sus capas hardware y software para ajustar el funcionamiento de los elementos que contienen a la función que se desea obtener en los mismos.

Así por ejemplo, en el caso del nuevo nodo para el control de la luz de la nueva habitación debemos añadir al sistema un nuevo nodo doble relé. Como es un nodo igual a otro ya existente en el sistema y que por tanto, ya ha sido previamente creado y existe en el mercado, simplemente debemos añadirlo al sistema y la herramienta de configuración, configura el nodo en sí.

En el caso en que se tratara de un nodo no creado anteriormente en el mercado, entonces el desabollador o persona interesada en desarrollar el nuevo nodo, debe configurar por un lado su capa hardware, en este caso formada por un módulo de elementos con 2 relés y 6 interruptores, un protocolo de comunicación del tipo RS-485 y una unidad de control formada por un microcontrolador y por otro, su capa software. El desabollador, implementa la especificación del nodo de su capa software, es decir, el código que define los parámetros y propiedades del nodo, así como los elementos que contiene, los enlaces y las opciones del mismo. Esto lo hace con las herramientas existentes en el mercado para desarrollos electrónicos y valiéndose de una librería software del sistema que se proporciona y que incluye todas y cada una de las capas necesarias, incluido el Runtime, para que el nodo funcione correctamente en el sistema.

De este modo, al conectar el nuevo nodo doble relé, gracias a la capa software del mismo, en concreto al runtime, éste se encarga de comunicar al resto de nodos y a la herramienta de configuración su existencia en el sistema.

Al ser detectado el nuevo nodo doble relé, la herramienta software de configuración se encarga de traducir la especificación del nodo a la lógica del sistema mediante el runtime de la capa software del nodo, de manera que el nodo queda configurado para que el sistema lo utilice. La herramienta software de configuración del sistema distribuido de este modo de realización preferente de la invención comprende una aplicación de programación que permite que ésta se realice de forma visual a través de la pantalla de un terminal. Mediante la herramienta software de configuración del sistema se puede modificar cualquier configuración, enlace, u opción del sistema, así como conectarse a todos los nodos y establecer la parte de configuración que le toca a cada uno. También es la encargada de representar el "mapa" de configuración entre los distintos elementos de los nodos, así como de representar y señalar cualquier anomalía del sistema.

Gracias a esta herramienta el proceso de configuración de todo el sistema se convierte en una tarea sencilla, por muy compleja que sea la funcionalidad que se quiera conseguir. Al ser una programación visual, para el usuario cualquier cambio que quiera hacer le es sumamente intuitivo y fácil, sin necesitar ningún tipo de formación ni estudios especiales. Así mismo, al no generarse código mediante esta programación visual, ya que lo único que se genera es una pseudo configuración que luego es ejecutada en el runtime de cada nodo, se elimina todo el tiempo de desarrollo, prueba y depuración de errores, y los consiguientes costes asociados a cualquier desarrollo de automática actual.

En esta memoria, se presenta a su vez el procedimiento de funcionamiento del sistema distribuido de este modo de realización preferente de la invención. Este procedimiento comprende una serie de fases.

En este modo de realización preferente de la invención cada nodo de Doble relé,2.1 de doble electroválvulas 2.2, de infrarrojo 2.3 y de video portero 2.4 recibe eventos en un momento determinado. En la Figura 12 se representa en un diagrama de bloques el procedimiento de funcionamiento del sistema distribuido aquí propuesto, para el caso del Escenario 6 de este modo de realización preferente de la invención que, como se ha definido anteriormente gestiona la acción de apagar la casa.

Así pues, para una de las posibles acciones de este modo de realización preferente de la invención, la primera fase consiste en la activación 23 en el nodo Doble Relé 2.1. A del evento apagar la casa mediante la pulsación del interruptor 10.4 ligado el mismo existente en la pared.

La segunda fase consiste en la recepción 24 en una serie de nodos unidos mediante enlaces 3 a este primer nodo Doble Relé 2.1. A, del evento procedente del mismo. Así pues, para esta acción de apagar la casa, la recepción del evento activado en el primer nodo Doble Relé 2.1. A, se realiza en el nodo Doble Relé 2.1.F y el Doble Relé 2.1.C situados en el dormitorio U, en el Doble Relé 2.1. B, situado en la cocina T, en el Infrarrojos 2.3, el Doble Relé 2.1. C, el Doble Relé 2.1. E y el Doble Relé 2.1.D, todos ellos ubicados en el salón X y el Doble Relé 2.1.A, en la entrada 4.1. A continuación, la tercera fase comprende el procesamiento de la información 25 del evento por dichos nodos a los que les llega el evento activado en el primero 2.1. A.

Procesada la información, la siguiente fase es la recepción 26 de la misma en al menos un elemento integrado en dichos nodos receptores. Esto es, aplicado a esta posible acción realizada en este modo de realización preferente de la invención, la recepción del evento en el relé "bajar persiana" 8.2.B del nodo Doble Relé 2.1.F del dormitorio U, en el Relé 8.1 U "luz del dormitorio" del nodo Doble Relé 2.1.C, en el Relé 8.1W "luz baño" y Relé 8.1T "luz cocina" del nodo Doble Relé 2.1.B, en el "Apagar A/C" 15 y "Apagar TV" 19 del nodo Infrarrojos 2.3, en el Relé "luz salón" 8.1X del nodo Doble Relé 2.1.C, en el Relé "bajar persiana" 8.2. B de los nodos Doble Relé 2.1.E y el Doble Relé 2.1.D del salón y, finalmente, en el Relé "cerrar puerta principal" 8.3 del nodo Doble Relé 2.1. A.

A continuación se realiza la ejecución 27 de la información de dicho evento, con lo cual se bajan las persianas, se apagan las luces, televisión y aire acondicionado y se cierra la puerta principal.

La última fase del procedimiento comprende la comprobación 28 en los elementos integrados en los nodos receptores, según la configuración de los mismos, de si deben generar un nuevo evento o no. Es decir, aplicado a este modo de realización preferente de la invención, el relé "bajar persiana" 8.2.B del nodo Doble Relé 2.1.F del dormitorio U, el Relé 8.1 U "luz del dormitorio" del nodo Doble Relé 2.1. C, el Relé 8.1 W "luz baño" y Relé 8.1T "luz cocina" del nodo Doble Relé 2.1.B, el "Apagar A/C" 15 y "Apagar TV" 19 del nodo Infrarrojos 2.3, el Relé "luz salón" 8.1X del nodo Doble Relé 2.1.C, el Relé "bajar persiana" 8.2. B de los nodos Doble Relé 2.1. E y Doble Relé 2.1.D del salón y, finalmente, el Relé "cerrar puerta principal" 8.3 del nodo Doble Relé 2.1. A van a comprobar si en su configuración se determinan que deben crear un nuevo evento hacia algún otro nodo.

En este caso expuesto referente al Escenario 6, aquí finaliza el procedimiento 29, pues la configuración de estos elementos no determina 28.1 la creación de ningún otro evento, pero en otros casos, a continuación sí se podría generar un nuevo evento 28.2 dependiendo de la configuración de cada elemento y se repetiría el proceso.

Otra parte diferenciada de este procedimiento de funcionamiento es la recepción y envío de eventos para el registro y configuración de cada nodo desde la herramienta de configuración. En el caso particular de este modo de realización preferente de la invención no tiene lugar esta parte del procedimiento, pero sí lo tendría en el caso de querer realizar la integración de un nuevo nodo en inicialmente no se encuentra en el sistema, y que debe ser previamente registrado y configurado en el mismo para que este lo reconozca. Con el sistema distribuido de elementos integrados en nodos que aquí se presenta, se consiguen importantes mejoras respecto al estado de la técnica. De este modo, gracias a la modularización en capas del sistema es posible controlar tanto un dispositivo simple como una instalación automatizada compleja ya existente que funcione con otro sistema, siendo la única diferencia en ambos casos, las capas que conforman el nodo.

Además es un sistema distribuido que no precisa de una centralita o monitor que coordine los elementos del sistema, pues el funcionamiento de cada elemento se controla mediante la actuación conjunta de todos los nodos, pudiendo configurarse dicho comportamiento mediante una aplicación informática que establece los enlaces entre dispositivos. No obstante, pese a ser distribuido, es fácilmente configurable desde un único puesto, sin tener que configurar cada elemento uno a uno.

Así mismo, este sistema admite una ampliación de nuevos nodos, de forma sencilla, sin necesidad de realizar cambios en hardware y software, más allá de la introducción del nuevo nodo y la especificación de sus características al sistema. Es un sistema capaz de controlar y gestionar sistemas ajenos y permitir configurarlos todos de una misma manera, haciendo por tanto compatibles sistemas que antes no lo eran.

Resulta además un sistema versátil y escalable permitiendo absorber tanto los sistemas • existentes como tecnologías y sistemas futuros.

El sistema además permite una configuración visual sencilla que permite el entendimiento de la misma por cualquier usuario, sin necesidad de la asistencia de un experto.

Se consigue de este modo el desarrollo de un sistema que puede configurarse para resolver la solución que se desee, sin necesidad de una configuración manual y dificultosa de los dispositivos que conforman el sistema, pues esta se realiza de forma informatizada y visual y existiendo además la posibilidad de ampliación del mismo con cualquier otro tipo de sistema, sin importar el protocolo que este utilice. Como conclusión final, una de las ventajas del sistema, que lo diferencia de los ya existentes, a parte de la abstracción de la filosofía propuesta, es la fácil e intuitiva forma de configurar las funcionalidades que se quieren obtener gracias, en gran parte, a la herramienta de configuración del sistema. La filosofía del sistema nos da la versatilidad y escalabilidad del mismo, es decir, da la capacidad de adaptar el sistema a cualquier necesidad, sin embargo, la herramienta da la capacidad de que dicha adaptación se haga, una vez desarrollados los nodos oportunos, en cuestión de minutos, evitando asf desarrollos muy costosos en tiempo y dinero. Una vez configurado el sistema, la herramienta ya no es necesaria, no hay que tomar esta herramienta como un programa central de control, puesto que su uso se limita a la configuración inicial del sistema o a las posibles ampliaciones.