ES2396766A1 - Método y sistema de conformación de haz distribuida en redes de nodos inalámbricos, y nodo inalámbrico aplicable a tal sistema - Google Patents
Método y sistema de conformación de haz distribuida en redes de nodos inalámbricos, y nodo inalámbrico aplicable a tal sistema Download PDFInfo
- Publication number
- ES2396766A1 ES2396766A1 ES201290075A ES201290075A ES2396766A1 ES 2396766 A1 ES2396766 A1 ES 2396766A1 ES 201290075 A ES201290075 A ES 201290075A ES 201290075 A ES201290075 A ES 201290075A ES 2396766 A1 ES2396766 A1 ES 2396766A1
- Authority
- ES
- Spain
- Prior art keywords
- node
- nodes
- network
- stage
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
Método y sistema de conformación de haz distribuida en redes de nodos inalámbricos, y nodo inalámbrico aplicable a tal sistema El método comprende: - radiodifundir, desde una estación base, una señal de baliza a unos nodos inalámbricos de una red; - realizar unas etapas de sincronización que comprenden intercambiarse entre los nodos de una red unas respectivas señales de referencia temporal; - determinar que un nodo ha causado baja si su nodo consecutivo no ha recibido la respectiva señal de referencia temporal del mismo después de un tiempo predeterminado, y enviar, tras dicha determinación, por parte de dicho nodo consecutivo, su respectiva señal de referencia temporal al siguiente nodo; y - enviar, cada nodo, una respectiva señal conteniendo un mensaje común, de manera distribuida, a dicha estación base, de manera sincronizada; El sistema está previsto para implementar el método, y el nodo para formar parte del sistema.
Description
Sector de la técnica
La presente invención concierne, en un primer aspecto, a un método de conformación de haz distribuida en redes de nodos inalámbricos, y más particularmente a un método que permite continuar con un ciclo de sincronización iniciado, aunque se produzca la baja de uno o más de dichos nodos inalámbricos.
En un segundo aspecto, la presente invención concierne a un sistema previsto para implementar el método propuesto por el primer aspecto.
Un tercer aspecto de la invención concierne a un nodo inalámbrico previsto para constituir, junto con otros nodos inalámbricos iguales o análogos, el sistema propuesto por el segundo aspecto de la invención.
Estado de la técnica anterior
Un problema fundamental en las redes inalámbricas ad-hoc y las redes de sensores inalámbricas (WSN) consiste en conseguir una comunicación eficiente en términos de energía. Concretamente, uno de los retos actuales radica en enviar un mensaje común a una estación base distante por parte de un grupo de nodos o sensores distribuidos y con restricciones de potencia. Una solución a este problema se conoce como conformación de haz distribuida o “distributed beamforming”.
La conformación de haz es una técnica que permite a un transmisor dotado de más de una antena focalizar su señal en una dirección determinada, obteniendo claros beneficios energéticos.
Recientemente, la idea de la conformación de haz ha sido aplicada en redes donde cada transmisor está dotado de una sola antena. En este caso, trabajando cooperativamente los transmisores pueden emular una agrupación de antenas y comportarse como un “conformador de haz distribuido”.
Sin embargo, para que la eficiencia sea notable, es necesario que las señales lleguen a recepción coherentemente, es decir, formando una interferencia constructiva de la información enviada por los diferentes sensores. En estas circunstancias la ganancia, medida como el incremento de relación señal a ruido para la misma potencia total transmitida, es igual al número de sensores que forman la red.
A diferencia de la conformación de haz convencional, en el caso de tener varios emisores dotados de una sola antena, además de utilizar osciladores imperfectos, las portadoras de cada transmisor son sintetizadas mediante osciladores independientes.
Es por ello que las técnicas enfocadas a la sincronización de símbolo, fase y frecuencia, necesarias para asegurar que las señales se combinan constructivamente en recepción, son más complicadas que en la conformación de haz clásica.
Todo el conjunto de técnicas dedicadas a la sincronización de símbolo, fase y frecuencia requerirá de cierta comunicación entre sensores. Por esta razón, un reto importante consiste en que la comunicación entre los sensores implique un gasto de energía menor que el que supone transmitir hacia la estación base sin utilizar técnicas de conformación de haz. De lo contrario, el ahorro de energía que implica la ganancia del sistema no compensa el gasto de energía debido a la comunicación local.
Actualmente existen varias soluciones teóricas a la problemática de la conformación de haz distribuida, aunque todas ellas todavía muy preliminares porque no resuelven todo el conjunto de sincronizaciones y consideran escenarios ideales. La primera de ellas [Tu02] data del año 2002, donde se presentan los problemas derivados del uso de relojes independientes e imperfectos en cada sensor, proponiendo soluciones independientes para ambas fuentes de error. La más moderna de las soluciones [Bro08] data del año 2008, donde se presenta un protocolo denominado “round-trip carrier synchronization protocol”, bastante más eficiente que el trabajo [Tu02], pero aún con serias limitaciones en una situación real.
Para conseguir un sistema efectivo en un escenario real es necesario contemplar y solucionar los tres tipos de sincronización implicados: sincronización de símbolo, fase y frecuencia. Actualmente pocos trabajos se han dedicado a conseguir una suma simultánea de las señales en recepción, es decir, a la simultaneidad en el tiempo de llegada, o sincronización de símbolo, enfocándose más en la sincronización de frecuencia y fase.
De hecho, de entre todos los trabajos existentes, como son [Bro08], [Mu04], [Mu05], [Mu07], [Tu02] y [Wan08], el único que consigue simultaneidad evitando además la comunicación de los sensores con la estación base es, según el conocimiento de los presentes inventores, [Bro08]. Los demás trabajos concentran su esfuerzo en conseguir solamente sincronización de fase y sincronización de frecuencia.
No obstante las sincronizaciones conseguidas por [Bro08] resultan muy mejorables. En [Br008] proponen realizar un intercambio de un tipo particular de balizas, concretamente sinusoidales, entre los sensores de la red, para conseguir sincronización en frecuencia, fase y símbolo, todas ellas generadas en cada nodo a partir de la baliza radiodifundida por la estación base. Asimismo, por lo que refiere a la sincronización en fase y frecuencia, el número de estimaciones llevadas a cabo en [Br008] también es muy elevado. Todas estas desventajas lo convierten en un protocolo claramente mejorable en cuanto a las tres sincronizaciones mencionadas.
Garantizar simultaneidad en el destino ofrece un grado de libertad mayor: permite utilizar códigos con altas tasas de transmisión al no haber desajuste entre símbolos de las diferentes señales en el destino. Si un protocolo no ofrece simultaneidad, entonces se pueden producir pequeños desajustes entre señales en el destino, comportando una suma imperfecta de los símbolos en recepción. Este desacoplamiento entre símbolos empeora para altas tasas de transmisión.
Por lo tanto, si se quiere optar por un protocolo que no utilice técnicas enfocadas a la simultaneidad, o bien se mantienen tasas bajas, o bien se colocan los sensores con gran precisión de acuerdo a ciertas topologías prefijadas que permitan la simultaneidad directamente. Ambas cosas limitan el sistema y por esta razón se ha pretendido aportar novedades en este sentido.
Por otra parte, en un entorno como el de las redes WSN, los sensores pueden desaparecer sin ninguna clase de aviso previo, como por ejemplo es el caso de que un sensor se averíe y que, por tanto, no tenga capacidad para poder enviar un aviso previo de desconexión, para que el resto de componentes de la red tengan conocimiento de su baja y actúen en consecuencia.
Tanto el protocolo propuesto por [Bro08] como el propuesto por [Wan08] son sendas soluciones a la problemática de la sincronización en un entorno estático. En ninguno de dichos documentos se propone una solución realista para el caso de un sistema dinámico, entendido como aquél que permite la adición y/o baja de nodos. En dichas propuestas si un nodo desaparece, ya sea porque ha dejado de funcionar por razones técnicas o porque ha decidido desconectarse del sistema o red, los demás nodos se quedan bloqueados a la espera de la señal o baliza correspondiente al nodo que se ha dado de baja, y por tanto el proceso de sincronización queda interrumpido.
Aparece necesario, por tanto, ofrecer una alternativa al estado de la técnica que cubra las lagunas halladas en el mismo, y que ofrezca una solución al problema técnico objetivo referido a cómo proporcionar un método y/o un sistema de conformación de haz distribuida en redes de nodos inalámbricos, mediante el cual llevar a cabo un proceso de sincronización del mensaje común o señal distribuida enviada por los nodos, en un entorno dinámico, que no se vea interrumpido por la baja no notificada de uno o más nodos.
Explicación de la invención
La presente invención ofrece una solución al problema técnico objetivo planteado, para lo cual concierne, en un primer y un segundo aspectos, a un método y un sistema de conformación de haz distribuida en redes de nodos inalámbricos que permite el buen funcionamiento independientemente de la desaparición de algunos nodos de la red, es decir que está previsto para trabajar dinámicamente, determinando las posible bajas de nodos y evitando que las mismas interrumpan el proceso de sincronización indicado, lo cual lo convierte en una propuesta mucho más flexible que las descritas en los antecedentes citados, que permite que los nodos se puedan desconectar voluntariamente en cualquier momento.
Para ello la presente invención concierne, en un primer aspecto, a un método de conformación de haz distribuida en redes de nodos inalámbricos, que comprende realizar las siguientes etapas:
a) radiodifundir, desde una estación base, una señal de baliza a una pluralidad de nodos inalámbricos de una red;
b) realizar una primera etapa de sincronización que comprende enviar, secuencialmente, cada uno de dichos nodos inalámbricos, después de la recepción de dicha señal de baliza, una respectiva señal de referencia temporal a al menos un nodo consecutivo, o más cercano, según un primer sentido en un ciclo de subida, empezando por un primer nodo de dicha red; y
c) realizar una segunda etapa de sincronización que comprende enviar, secuencialmente, cada uno de dichos nodos inalámbricos, una respectiva señal de referencia temporal a al menos un nodo consecutivo, o más cercano, según un segundo sentido, opuesto a dicho primer sentido, en un ciclo de bajada, empezando por el último nodo de dicha red.
Como mínimo las etapas a), b) y c) se llevan a cabo con el fin de realizar una etapa d) que comprende enviar, tras dicha etapa c), por parte de cada uno de los nodos inalámbricos, una respectiva señal conteniendo un mensaje común, de manera distribuida, a la estación base, de manera sincronizada en fase, en frecuencia y en el tiempo de llegada (tal como una sincronización de símbolo), para que en ésta se sumen todas las señales recibidas de manera constructiva.
De manera característica, el método propuesto por el primer aspecto de la invención comprende determinar que como mínimo uno de los nodos inalámbricos ha causado baja en la red si al menos su respectivo nodo consecutivo no ha recibido la respectiva señal de referencia temporal del mismo, en la etapa b) o en la etapa c), después de un tiempo de espera predeterminado, y enviar, tras dicha determinación, por parte de dicho nodo consecutivo, su respectiva señal de referencia temporal al siguiente nodo, en dicho ciclo de subida de dicha etapa b) o en dicho ciclo de bajada de dicha etapa c).
Para un ejemplo de realización dicho tiempo de espera predeterminado es sustancialmente igual a 2·tp para cada nodo que ha causado baja, y de m·2·tp para m nodos consecutivos que han causado baja, si es el caso, siendo tp un tiempo de propagación máximo estimado entre dos nodos cualesquiera de la red, que viene dado por la distancia máxima entre los nodos y la velocidad de propagación de la señal.
En un apartado posterior se describirán con mayor detalle unos ejemplos de realización del método propuesto por el primer aspecto de la invención, donde se indicará cómo y cuándo se calcula el tiempo de espera predeterminado indicado, y diferentes maneras de actuar en función de diferentes condicionantes.
Por lo que se refiere a la posición de cada uno de los nodos en dicha red, ésta es, en general, una posición lógica conocida por el respectivo nodo, siendo dichos primer y último nodos los que tienen las posiciones lógicas primera y última, respectivamente.
En adelante se utilizará la posición lógica ocupada por cada nodo para indicar si un nodo es inferior o superior respecto a otro, independientemente de si se está realizando el ciclo de subida o el de bajada.
Aunque el método no está limitado a ello, para un ejemplo de realización preferido, el método comprende radiodifundir las señales de referencia temporal en las etapas b) y c), de manera que éstas son recibidas también por el resto de nodos de la red, además de por el nodo consecutivo al cual van explícitamente dirigidas, en cuyo caso el método comprende llevar a cabo la determinación de que como mínimo un nodo ha causado baja además de en dicho nodo consecutivo, también en cada uno de los demás nodos de la red, si tras la recepción (en cada nodo de la red) de la señal de referencia temporal radiodifundida por el nodo anterior al que puede, o a los que pueden, haber causado baja, transcurre dicho tiempo de espera predeterminado sin recibir otra señal de referencia temporal.
Además de proseguir con el ciclo de sincronización tal y como se ha descrito, el método comprende, para un ejemplo de realización, tras dicha determinación de la baja de como mínimo un sensor, actualizar la composición de la red en cada uno de los nodos de la red que no han causado baja, al menos por lo que se refiere a número total de nodos vivos y estado de cada uno de los nodos, y actualizar también su nueva posición lógica en la red, únicamente para los nodos superiores respecto al que ha causado baja, en cualquiera de dichos primer y segundo sentidos, es decir para los nodos con posición lógica superior al que ha causado baja.
Por lo que se refiere al modo en que un nodo averigua cuando es su turno, para un ejemplo de realización aplicado a dicho caso preferido para el que las señales de referencia temporal son radiodifundidas por los nodos, el método propuesto por la presente invención comprende contar, mediante un contador interno de cada nodo, el número de señales recibidas, incluyendo la señal de baliza radiodifundida por la estación base y las señales de referencia temporal radiodifundidas por los otros nodos, para saber, cada nodo, teniendo en cuenta al menos su posición lógica, cuando es su turno para considerar que la señal de referencia temporal recibida va explícitamente dirigida al mismo y para realizar el posterior envío de su señal temporal de referencia en dicha etapa b) y/o en dicha etapa c).
Según un ejemplo de realización, cuando el último nodo, según el ciclo de subida de la etapa b), causa baja, el método comprende que el penúltimo nodo tome el papel de dicho último nodo y solamente deba enviar una señal de referencia temporal, la ya enviada en el ciclo de subida, y cuando el antepenúltimo nodo determina dicha baja del último nodo, producida en el ciclo de subida de la etapa b), el método comprende considerar, por parte de dicho antepenúltimo nodo, que la señal de referencia temporal radiodifundida por el penúltimo nodo en la etapa b) forma parte del envío del ciclo de bajada de la etapa c) y va dirigida a dicho antepenúltimo nodo.
Si la determinación de la baja de uno o más nodos se realiza en la etapa b), es decir durante el ciclo de subida, el método comprende realizar la etapa d) de envío del mensaje común de manera distribuida, mediante todos los nodos que no han causado baja. En cambio si la determinación de la baja o bajas de nodos se realiza en la etapa c), es decir en el ciclo de bajada, el método comprende cancelar la realización de la etapa d) al menos por lo que respecta a los nodos posteriores (con posición lógica inferior) al que ha causado baja, según dicho segundo sentido.
Si bien para un ejemplo de realización el método comprende utilizar, en las etapas b) y c), unas señales de referencia temporal dependientes de la señal de baliza radiodifundida por la estación base, como es el caso de la propuesta hecha en [Br008], para un ejemplo de realización más preferido el método comprende utilizar, en las etapas b) y c), unas señales de referencia temporal independientes de la señal de baliza, con el fin de mejorar, en comparación con [Br008], la sincronización en el tiempo de llegada, o símbolo, de las señales contenedoras del mensaje común enviadas de manera distribuida a la estación base, realizando cada nodo una estimación de la fase inicial y la frecuencia de la baliza enviada por la estación base en la etapa a), y utilizando ambos valores para generar su portadora durante la etapa de conformación de haz distribuida, para realizar la sincronización de fase y frecuencia, en la etapa d), de las respectivas señales contenedoras del mensaje común enviadas por parte de cada uno de los nodos, de manera distribuida, a la estación base.
Si bien el caso preferido descrito en el párrafo anterior, relativo a la utilización de señales de referencia temporal independientes de la señal de baliza radiodifundida por la estación base, se ha reivindicado como dependiente de la solución aportada al problema de las bajas de sensores descrita en la reivindicación 1 de la presente invención, tal caso preferido es una solución, por sí solo, a los problemas en conseguir de manera eficiente las tres clases de sincronización descritas que tienen las propuestas convencionales, en especial la relativa al tiempo de llegada. Ello permitiría implementar un método y sistema de conformación de haz distribuida en redes de nodos inalámbricos con base a dicho caso preferido, independientemente de que se produzcan o no bajas de sensores.
Para un ejemplo de realización dichas señales de referencia temporal contienen al menos un pulso o un impulso, a diferencia también de las utilizadas por [Br008] que son de naturaleza sinusoidal.
Tal y como se ha comentado, el método comprende utilizar las señales de referencia temporal enviadas por los nodos para realizar la sincronización en las tres características de señal indicadas, pero éstas son utilizadas especialmente para realizar la sincronización en el tiempo de llegada a la estación base de las respectivas señales contenedoras del mensaje común enviadas, en la etapa d), por parte de cada uno de los nodos, lo cual se lleva a cabo, en general, mediante la determinación del momento en que cada nodo debe enviar su respectiva señal contenedora del mensaje común en la etapa d), sin ningún tipo de comunicación desde los nodos hacia la estación base.
Para realizar dicha determinación del momento en que cada nodo debe enviar su respectiva señal contenedora del mensaje común en la etapa d), el método comprende realizar un cálculo previo, en cada nodo, de un retardo
que va desde la
finalización de la recepción de la señal de baliza proveniente de la estación base hasta la finalización de la recepción de la señal de referencia temporal enviada por el nodo inmediatamente anterior, en la etapa b), si éste no ha causado baja, determinándose que dicho momento de envío del mensaje común es igual al tiempo en que el nodo en cuestión ha acabado de enviar su respectiva señal de referencia temporal, en la etapa c), más dicho retardo calculado τ.
Para otro ejemplo de realización para el que sí se han producido bajas de uno o más nodos, el método comprende determinar que dicho momento en que cada nodo debe enviar su respectiva señal contenedora del mensaje común es igual, si al menos un nodo con posición lógica inferior ha causado baja en la etapa b), al tiempo en que el nodo en cuestión ha acabado de enviar su respectiva señal de referencia temporal, en la etapa c), más un retardo
corregido resultante de restar un valor de error temporal ej
a un retardo τ’ que va desde la finalización de la recepción de la señal de baliza hasta la finalización de la recepción de la señal de referencia temporal enviada por un nodo que no ha causado baja en la etapa b) con una posición lógica inferior inmediatamente anterior al nodo en cuestión pero superior a la del que ha causado baja.
Según un caso particular de dicho ejemplo de realización, dicho valor de error temporal ej es sustancialmente igual a m·2tp, siendo tp en general un tiempo de propagación estimado entre dos nodos, y m el número de nodos consecutivos que han causado baja, aunque para un ejemplo de realización para el que las señales enviadas tienen una frecuencia en el rango de los THz, cada nodo genera su propio tp sobre su propia escala de tiempo.
Tal corrección del retardo es válida para cada nodo posterior a al menos un nodo “vivo”, es decir que no ha causado baja, dispuesto entre el nodo “muerto”, que ha causado baja, y el nodo en cuestión o posterior, ya que cuando éste recibe la señal de referencia temporal enviada por dicho nodo intermedio “vivo”, en el cálculo del retardo τ’ se acumula el tiempo de espera predeterminado requerido para determinar la baja de
uno o más nodos.
En cambio, si no existe tal nodo intermedio “vivo”, el método comprende determinar que dicho momento en que cada nodo debe enviar su respectiva señal contenedora del mensaje común es igual, si al menos un nodo con posición lógica inferior e inmediatamente anterior al nodo en cuestión ha causado baja en la etapa b), al tiempo en que el nodo en cuestión ha acabado de enviar su respectiva señal de referencia temporal, en dicha etapa c), más un retardo τ corregido resultante de restar
un valor de error temporal ej a un retardo τ’ que va desde la finalización de la recepción de la señal de baliza hasta la finalización del transcurso de dicho tiempo de espera predeterminado sin recibir una señal temporal de referencia.
Mediante el método propuesto por el primer aspecto de la invención se consigue un doble objetivo, un primer objetivo relativo a realizar correctamente el intercambio de señales de referencia temporal entre nodos, es decir, en evitar que el sistema se quede bloqueado y en actualizar la visión de la red de cada nodo, y un segundo objetivo que radica en corregir los valores de retardos temporales que se deducen durante el proceso de sincronización, en el caso en que desaparezcan nodos.
El método propuesto por el primer aspecto de la invención permite realizar conformación de haz distribuida en una red con restricciones de potencia y topología desconocida. Es importante destacar que no es necesaria la comunicación desde los nodos hacia la estación base en ningún momento de las etapas de sincronización, hasta el envío del mensaje común.
Un segundo aspecto de la invención concierne a un sistema de conformación de haz distribuida en redes de nodos inalámbricos, que comprende:
- -
- una estación base prevista para radiodifundir por una o más antenas omnidireccionales una señal de baliza; y
- -
- una pluralidad de nodos inalámbricos dispuestos formando una red de comunicaciones, estando cada uno de dichos nodos inalámbricos previsto para recibir dicha señal de baliza y para enviar una respectiva señal conteniendo un mensaje común, de manera distribuida, a la estación base, de manera sincronizada en fase, en frecuencia y en el tiempo de llegada, para que en ésta se sumen todas las señales recibidas de manera constructiva.
El sistema propuesto por el segundo aspecto de la invención está configurado para implementar el método propuesto por el primer aspecto de la invención.
Según un ejemplo de realización del sistema propuesto por el segundo aspecto de la invención, cada uno de los nodos inalámbricos comprende una antena omnidireccional por la que realizar los envíos de las etapas b) y c), y como mínimo una unidad de procesamiento prevista para como mínimo determinar que uno o más nodos inalámbricos han causado baja, teniendo dicha unidad de procesamiento acceso a una memoria, y capacidad para registrar en dicha memoria unos datos referentes al número total de nodos que conforman la red, al estado de los mismos, mediante por ejemplo un vector de estados, y a la posición lógica que ocupa en la red el nodo en cuestión, estando la unidad de procesamiento también prevista para actualizar dichos datos tras la determinación de que uno o más nodos han causado baja.
La unidad de procesamiento de cada uno de los nodos está prevista también, para un ejemplo de realización, para determinar el momento en que el nodo debe enviar su respectiva señal contenedora del mensaje común en la etapa d), realizando todos los cálculos necesarios, para asegurar la mencionada sincronización en el tiempo de llegada a la estación base de las respectivas señales contenedoras del mensaje común enviadas, en la etapa d), por parte de cada uno de los nodos.
Tanto la adquisición de dichos datos referentes al número total de nodos que conforman la red, al estado de los mismos, y a la posición lógica, y su actualización si es necesario, como dichos cálculos que determinan cuando el nodo debe enviar su respectiva señal contenedora del mensaje común, se llevan a cabo mediante la utilización de uno o más algoritmos implementados en la unidad de procesamiento de cada nodo, algunos de los cuales se describirán en detalle en un apartado posterior de la presente descripción
Para un ejemplo de realización los nodos inalámbricos son móviles y/o son unos sensores inalámbricos, en cuyo caso la red inalámbrica es una red ad hoc que contiene un número arbitrario de sensores inalámbricos.
Un tercer aspecto de la invención concierne a un nodo inalámbrico aplicable a un sistema de conformación de haz distribuida en redes de nodos inalámbricos, y que está previsto para constituir, junto con otros nodos inalámbricos iguales o análogos, el sistema propuesto por el segundo aspecto de la invención.
Breve descripción de los dibujos
Las anteriores y otras ventajas y características se comprenderán más plenamente a partir de la siguiente descripción detallada de unos ejemplos de realización con referencia a los dibujos adjuntos, que deben tomarse a título ilustrativo y no limitativo, en los que:
la Fig. 1 es un diagrama esquemático que ilustra, mediante tres vistas correspondientes, las etapas a), b) y c) del método propuesto por el primer aspecto de la invención, para un ejemplo de realización, utilizando una estación base y unos nodos inalámbricos del sistema propuesto por el segundo aspecto de la invención;
la Fig. 2 muestra un esquema temporal de las tareas realizadas en cada intervalo temporal o timeslot en las etapas a) a d) del método propuesto por el primer aspecto de la invención;
la Fig. 3 es un diagrama de flujo de las acciones a realizar por un nodo cualquiera de la red del sistema propuesto por el segundo aspecto de la invención, en caso de no contemplar bajas en el sistema;
la Fig. 4 muestra un diagrama de flujo de las acciones a realizar por un nodo cualquiera de la red cada vez que se recibe una baliza, para un ejemplo de realización del método propuesto por la presente invención; y
la Fig. 5 muestra otro diagrama de flujo, en este caso de las acciones a realizar por un nodo cualquiera de la red cada vez que se sobrepasa un tiempo predeterminado de espera sin recibir balizas.
Descripción detallada de unos ejemplos de realización
Haciendo en primer lugar referencia la Fig. 1, en ella se aprecian una serie de nodos inalámbricos, en particular sensores, indicados como S1, S2…Sj…SN, y una estación base D0, todos ellos formando parte del sistema propuesto por el segundo aspecto de la invención, y mediante los cuales se implementa el método propuesto por el primer aspecto de la invención.
En particular, en la vista izquierda de la Fig. 1 se ilustra la etapa a) del método, en la que la estación base D0 radiodifunde una señal de baliza a los sensores inalámbricos S1, S2…Sj…SN, en las vistas central y derecha se ilustran, respectivamente, las etapa b) y c), correspondientes a los envíos de señales de referencia temporal en, respectivamente, un ciclo de subida y un ciclo de bajada.
Si bien en dichas vistas central y derecha se ha ilustrado cada envío de señal de referencia temporal mediante una única flecha dirigida hasta el nodo siguiente, tal y como se ha explicado en un apartado anterior, para un ejemplo de realización preferido la señal enviada por cada uno de los nodos es recibida por todos los nodos S1, S2…Sj…SN de la red, ya que se transmite por radiodifusión.
Este intercambio de señales permite a cada sensor conocer ciertas relaciones temporales entre caminos que servirán para deducir el instante de envío, tal y como se ha descrito en el apartado de explicación de la invención.
Para los diferentes ejemplos de realización incluidos en el presente apartado, se denominarán balizas tanto a la señal de baliza radiodifundida por la estación base D0 como a las señales de referencia temporal intercambiadas, por radiodifusión, entre los sensores S1, S2…Sj…SN.
En la Fig. 2 se ilustran los diferentes envíos de señales realizados en las etapas a) a d) y el orden de los mismos, mediante un esquema temporal formado por unos respectivos intervalos o ranuras temporales, señalados por las etapas del método en los que se encuentran incluidos.
En cada uno de los intervalos temporales TSj con j = 0,…, 2N-2 de la Fig. 2 se realiza el envío de una baliza, empezando por la enviada por la estación base en TS0, y en el último intervalo temporal, TSBEAM, se envía la información hacia el destino como un conformador de haz distribuido, en la etapa d).
Tal y como se ha descrito anteriormente se distinguen dos ciclos de sincronización en el proceso: el ciclo de subida, que se lleva a cabo desde TS0 hasta TSN-1, es decir durante la etapa b), y el ciclo de bajada, que se lleva a cabo desde TSN hasta TS2N-2, es decir durante la etapa c).
Gracias al intercambio de balizas cada sensor S1, S2…Sj…SN calcula el retardo temporal denominado anteriormente como
, que sumado al tiempo en que cada sensor ha acabado de enviar su respectiva baliza, en la etapa c), determina el momento en que el sensor en cuestión debe enviar la señal contenedora del mensaje común a la estación base D0.
En la Fig. 3 se muestra un diagrama de flujo de las acciones a seguir por cada nodo o sensor de la red cuando no se producen bajas, las cuales se describen a continuación, a partir de la casilla denominada “Inicio” en el diagrama de la Fig. 3.
A1: En esta casilla el nodo comprueba si ha recibido o no una baliza (ya sea la proveniente de la estación base o de cualquier otro nodo). En caso de que la respuesta sea afirmativa se pasa a la casilla A2, y en caso de que sea negativa se ejecuta una y otra vez la acción indicada por esta casilla, en bucle, hasta que ofrezca una respuesta afirmativa.
A2: En esta casilla el nodo se cuestiona si la baliza recibida es la primera, es decir la proveniente de la estación base. Si es así pasa a la casilla A3, y si la respuesta es negativa se pasa a la A4.
A3: La acción llevada a cabo en esta casilla por parte del nodo es la de iniciar la cuenta de tiempo que permitirá el cálculo del retardo
, tal y como se ha descrito con anterioridad, y pasar a la casilla A4, es decir, seguir con el protocolo.
A4: La disyuntiva representada por esta casilla plantea la cuestión de si es el primer turno del nodo en cuestión. Si es así se pasa a la casilla A5, y en caso negativo a la A10.
A5: En esta casilla el nodo para la cuenta de tiempo iniciada en A3, asignándole al retardo τ el valor que indica dicha cuenta que, tal y como se ha indicado anteriormente, el nodo esperará para enviar la señal contenedora del mensaje común, desde que envíe su baliza en el ciclo de bajada, o segundo ciclo.
A6: Esta casilla sirve para comprobar si el nodo es el último o no lo es. En caso afirmativo se pasa a la casilla A7, y en caso negativo a la A9.
A7: En esta casilla el nodo envía una baliza que, al ser el nodo el último corresponderá al ciclo de bajada.
A8: El nodo envía, en esta casilla, su señal contenedora del mensaje común a la estación base tras esperar el retardo τ después del envío de A7.
A9: El nodo se encuentra ejecutando la acción correspondiente a esta casilla, porque no es el último, teniendo en cuenta su posición lógica, por lo que dicha acción consiste en enviar la baliza en el ciclo de subida, tras lo cual finaliza las acciones a realizar, es decir pasa a la casilla “fin”.
A10: Tras comprobar que no es el primer turno del nodo, se llega a la disyuntiva representada por esta casilla, que plantea la pregunta de si el nodo es el último nodo. En caso afirmativo éste finaliza sus acciones, y en caso negativo pasa a la casilla A11.
En esta casilla A10, en lugar de seguir evaluando casos, es decir de pasar directamente a la casilla A11, se ha separado primero el problema en dos, según se trate del último nodo o no, ya que el último nodo necesita aquí un trato especial.
Es importante tener en cuenta que la división aquí realizada no sería necesario llevarla a cabo en el diagrama de flujo, porque el último nodo no debería activar la casilla A11. Sin embargo, la división sí que es necesaria cuando se quiere implementar el diagrama de flujo en código, ya que en tal caso el último nodo sí que podría activar la casilla A11, cuando de hecho no tendría que hacerlo, debido a que la condición A11 implementada a partir de comparaciones entre valores de diferentes variables (contador, número de sensores de la red, etc.) no funciona correctamente para el caso del último nodo, y podría ser que éste activara dicha condición A11.
Es decir que, para otro ejemplo de realización, el método comprende llevarse a cabo mediante un diagrama de flujo como el de la Fig. 3 pero prescindiendo de la casilla A10, la cual se ha conservado en el ejemplo de realización de la Fig. 3 por las razones expuestas relativas a su implementación en código de programación.
Siguiendo con la descripción del diagrama de flujo de la Fig. 3, si el nodo no ocupa la última posición lógica, entonces pasa a ejecutar la acción correspondiente a la casilla A11.
A11: En esta casilla el nodo, que no se encuentra en su primer ciclo ni ocupa la última posición lógica, se cuestiona si es su segundo turno Si no es así finaliza sus acciones, y si la respuesta es afirmativa pasa a la casilla A12.
A12: Esta casilla sirve para comprobar si el nodo es el primero o no lo es. En caso afirmativo se pasa a la casilla A13, y en caso negativo a la A14.
A13: En esta casilla el nodo envía su señal contenedora del mensaje común a la estación base sin esperar el retardo
, pués teóricamente debería de ser cero al tratarse
del primer nodo.
A14: En esta casilla el nodo envía su baliza en el ciclo de bajada.
A15: En esta casilla el nodo envía su señal contenedora del mensaje común a la estación base tras esperar el retardo τ después del envío de A14, retardo el cual habrá calculado en su primer ciclo, es decir cuando una ejecución previa del diagrama de flujo le haya llevado hasta la casilla A5. Tras esta casilla el nodo finaliza sus acciones.
El diagrama de flujo de la Fig. 3 acabado de describir no tiene en cuenta las bajas de nodos, por lo que es representativo del sistema propuesto por el segundo aspecto de la invención que, aunque está adaptado para implementar el método propuesto por el primer aspecto, también es capaz de implementar las acciones más básicas ilustradas por la Fig. 3, cuando no se producen bajas de nodos. Asimismo esta Fig. 3 y su correspondiente descripción es representativa de un ejemplo de realización del caso preferido mencionado en el apartado de explicación de la invención, relativo a la mejora de la eficiencia en la sincronización de fase, frecuencia y tiempo de llegada a la estación base de las señales contenedoras de un mensaje común enviadas por cada uno de los nodos inalámbricos, de manera distribuida, independientemente de que se produzcan o no bajas de sensores.
A continuación se describen dos ejemplos de realización más detallados del método propuesto por el primer aspecto de la invención, con referencia a las Figs. 4 y 5, donde se tienen en cuenta diversas acciones a aplicar para diferentes posibles situaciones.
Existen dos situaciones bien diferenciadas que se dan a la hora de implementar el método propuesto por la invención, en las que éste debe realizar unas u otras acciones. En la primera de ellas, representada por la Fig. 4, se consideran todas las acciones a realizar cuando un nodo recibe una baliza. En la segunda, representada por la Fig. 5, se consideran las acciones a realizar cuando un nodo sobrepasa una espera superior a un múltiplo entero de 2·tp sin recibir balizas.
La idea general de ambos diagramas de flujo es la presentada en la sección “Explicación de la invención”, aunque ahora se particulariza para cada caso concreto en función de cuantos nodos hayan desaparecido, de cuales sean sus posiciones lógicas, del momento en que desaparezcan (ciclo de subida o ciclo de bajada), etc. Ambos diagramas de flujo se ejecutan durante los ciclos de subida y de bajada.
Para la correcta comprensión de las Figs. 4 y 5 es necesario saber que cada sensor debe disponer de un contador interno que incrementa su valor al terminar la lectura de una baliza recibida. Gracias a este contador, un sensor puede saber cuantas balizas se han enviado y puede deducir el turno de cada sensor de la red. Las acciones del diagrama de flujo de la figura 4 empiezan cada vez que el contador incrementa su valor.
Asimismo debe aclararse la función de cada una de las variables o elementos referidos en dichos diagramas de flujo, empezando por el vector de estados, el cual especifica, para cada nodo, si está vivo o no. Si existen N nodos en la red el vector de estados tiene N posiciones, y en cada una de ellas aparece un 1 o un 0 en función de si el nodo está vivo o no. La variable que cuenta el número de nodos de la red solamente especifica cuantos nodos están vivos, y en función de este valor el vector de estados va cambiando su tamaño cuando le toca. La variable de posición lógica de un nodo atribuye una posición lógica al nodo. Cuando mueren nodos con posición superior esta variable no cambia. Pero cuando mueren nodos con posición inferior, todos los nodos posicionados por encima reducen su posición lógica para que no quede un vacío entre medio de dos nodos vivos.
Por otra parte también es necesario remarcar que cada sensor dispone de diferentes variables para contar tiempo. Son imprescindibles una variable para contar retardos
y τ’, y otra para contar el tiempo transcurrido ∆t desde la recepción de la
última baliza. Las acciones del diagrama de flujo de la Fig. 5 empiezan cada vez que la variable ∆t sobrepasa múltiplos enteros de 2·tp.
A continuación se describe el diagrama de flujo ilustrado por la Fig. 4, representativo de un ejemplo de realización del método propuesto por la presente invención, implementable mediante un algoritmo por el sistema de procesamiento de cada nodo incluido en el sistema propuesto por el segundo aspecto de la invención, o del nodo propuesto por el tercer aspecto.
Cada vez que un nodo recibe una baliza o señal de referencia temporal se activa este algoritmo, ya que dicha recepción indica que hay un nodo vivo enviándola y sirve pues para actualizar las bajas del sistema, además de para realizar las acciones del diagrama de la Fig. 3 en caso de que no hayan bajas. En el diagrama no se hacen distinciones entre baliza y señal de referencia temporal, ya que no es necesario que ambos tipos de señales tengan formas diferentes, aunque éste está configurado para funcionar cualquiera que sean las formas de las señales temporales de referencia y de las señales de baliza enviadas por la estación base.
La diferencia que hace el algoritmo entre ambos tipos de señal viene dada por el orden en que se reciben, es decir, lo primero que se recibe es una baliza proveniente de la estación base, y permite el inicio del protocolo representado por dicho diagrama de flujo, también denominado protocolo de sincronización dinámico. Lo que se recibe luego son señales de referencia temporal, y permiten la actualización de la red y el seguimiento del protocolo. Se hablará pues de “baliza” para ambos casos.
Las acciones a seguir por cada nodo o sensor de la red, a partir de la casilla denominada “Inicio” en el diagrama de la Fig. 4, son las siguientes:
B1: En esta casilla el nodo comprueba si ha recibido o no una baliza (ya sea la proveniente de la estación base o de cualquier otro nodo). En caso de que la respuesta sea afirmativa se pasa a la casilla B2, y en caso de que sea negativa se ejecuta una y otra vez la acción indicada por esta casilla, en bucle, hasta que ofrezca una respuesta afirmativa.
B2: En esta casilla el nodo para la cuenta del tiempo ∆t para contar nodos muertos, ya que ha recibido una baliza de un nodo vivo.
B3: La acción llevada a cabo en esta casilla por el nodo es la de comprobar si la baliza recibida es la primera o no. Si se trata de la primera baliza entonces justo empieza el protocolo de sincronización y se empieza, en B4, la cuenta de
porque se
trata de la baliza de la estación base. Si no, lo que pasa es que la baliza recibida es una señal de referencia temporal y significa que se está ya en plena ejecución del protocolo.
B4: Aquí se inicia la cuenta de tiempo que permitirá el cálculo del retardo τ, ya que el nodo ha recibido la baliza de la estación base.
B5: El nodo comprueba si se está en el ciclo de subida y si el turno es de algún nodo con posición lógica inferior. Si se está en el ciclo de subida y le toca a un nodo inferior se pasa a la casilla B6 para realizar las acciones correspondientes a este caso. Si no, se pasa a la casilla B9.
B6: En esta casilla se comprueba si ha habido bajas de algún nodo, en este caso para nodos con posiciones lógicas inferiores respecto a la del que ha enviado la baliza, mediante la comprobación del valor de ∆t cuya cuenta se ha detenido en B2. Si
hay uno o más nodos muertos se pasa a la casilla B7, y en caso negativo directamente a la B8.
B7: Como se está en el primer ciclo y le toca a un nodo inferior el nodo que está ejecutando el algoritmo actualiza su nueva posición lógica, que se verá reducida, el error temporal ej arriba descrito utilizado para el cálculo del retardo τ corregido, además
claro del número de nodos de la red.
B8: En esta casilla se vuelve a empezar la cuenta del tiempo ∆t porque el nodo ha recibido una baliza y está a la espera de otra para ir actualizando su visión de la red. Tras ello el nodo finaliza las acciones a seguir por este camino.
B9: El nodo comprueba si es su primer turno, en cuyo caso pasa a la casilla B10. En caso negativo pasa a la casilla B19.
B10: Al haber recibido el nodo una baliza explícitamente dirigida a él, ya sea la proveniente del nodo inmediatamente anterior, es decir con una posición lógica inferior,
- o la de la estación base en el caso de ser el primer nodo, es decir al ser su primer turno,
- o turno del ciclo de subida, éste, el nodo para la cuenta de tiempo que permitirá el cálculo del retardo τ.
B11: Aquí el nodo comprueba si es el último nodo. Si es así, se debe tener en cuenta que el nodo sólo enviará una baliza y que por lo tanto el instante de envío de ésta es el tiempo de referencia que tiene el nodo para empezar a contar el tiempo previamente calculado τ hasta enviar el mensaje hacia la estación base (beamforming). Si no es el último nodo no es necesario lo comentado, y por tanto éste salta a la casilla B17.
B12: En esta casilla el nodo comprueba si, además de ser el último, es también el primer nodo, es decir que es el único nodo, debido a que han desaparecido todos los demás en algún ciclo de sincronización.
B13: Al haber comprobado el nodo que es el único nodo vivo, aquí éste procede a enviar la señal contenedora del mensaje común hacia la estación base, tras lo cual finaliza sus acciones.
B14: Al ser el último pero no el único nodo, en esta casilla éste procede a radiodifundir la única baliza que ha de enviar por ser el último nodo, ya en el ciclo de bajada.
B15: La acción a realizar en esta casilla por el nodo que ejecuta el algoritmo es la de enviar la señal contenedora del mensaje común hacia la estación base después de un tiempo
corregido según las bajas (si no ha habido bajas ej = 0 y por tanto τ =
τ’).
B16: En esta casilla se vuelve a empezar la cuenta del tiempo ∆t porque el nodo ha recibido una baliza y está a la espera de otra para ir actualizando su visión de la red. Tras ello el nodo finaliza las acciones a seguir por este camino.
B17: En el caso de que el nodo no ocupe la última posición lógica en la red, se llega a esta casilla, en la cual el nodo envía la baliza correspondiente al ciclo de subida.
B18: En esta casilla se vuelve a empezar la cuenta del tiempo ∆t porque el nodo ha recibido una baliza y está a la espera de otra para ir actualizando su visión de la red. Tras ello el nodo finaliza las acciones a seguir por este camino.
B19: Al no ser su primer turno, el nodo comprueba aquí si es el último nodo.
Es necesario hacer un inciso en la descripción del diagrama de flujo de la Fig. 4, para aclarar que en esta casilla B19, en lugar de seguir comprobando los turnos y el tipo de ciclo (subida o bajada) como en B5 y B9, se ha separado primero el problema en dos, según se trate del último nodo o no, ya que el último nodo necesita aquí un trato especial.
Para el caso en que no sea el último nodo, se sigue con la misma dinámica que anteriormente, ahora en los puntos B25, B29, B34 y B40, con lo que la siguiente pregunta se basa en saber si es el turno de un nodo superior, todavía en el ciclo de subida. Después se analizan los diferentes casos para el ciclo de bajada.
Es importante tener en cuenta que la división aquí realizada no sería necesario llevarla a cabo en el diagrama de flujo porque el último nodo no activará ninguna de las casillas B25, B29 y B34. Y la B40, que es la que activaría, es idéntica a la B20. Sin embargo, la división sí que es necesaria cuando se quiere implementar el diagrama de flujo en código, donde cada punto pasa a ser realizado mediante el contador, el vector de estados, el número de sensores de la red, etc. El problema está en que las condiciones B25, B29 y B34 implementadas a partir de comparaciones entre valores de estas variables no funcionan correctamente para el caso del último nodo, y podría ser que éste activara alguna de ellas. Es por esta razón que se realiza aquí esta división.
Es decir que, para otro ejemplo de realización, el método comprende llevarse a cabo mediante un diagrama de flujo como el de la Fig. 4 pero prescindiendo de las casillas B19 a B24, las cuales se han conservado en el ejemplo de realización de la Fig. 4 por las razones expuestas relativas a su implementación en código de programación.
Siguiendo con la descripción del diagrama de flujo de la Fig. 4 si el nodo ocupa la última posición lógica, entonces pasa a ejecutar la acción correspondiente a la casilla B20.
B20: En esta casilla el nodo comprueba si está en el ciclo de bajada y el turno es de algún nodo inferior. En caso negativo, el nodo finaliza sus acciones. En caso afirmativo, éste pasa a la casilla B21. De hecho la respuesta siempre será afirmativa porque no hay más opciones, pero al añadir la condición queda todo más esquematizado.
B21: Aquí el nodo comprueba si ha habido bajas en la red, en este caso para nodos con posiciones lógicas superiores respecto a la del que ha enviado la baliza, mediante la comprobación del valor de
t cuya cuenta se ha detenido en B2. Si las ha
habido pasa a la casilla B22 y si no, directamente a la B23.
B22: Como es el turno de un nodo inferior en el ciclo de bajada, el nodo que está ejecutando el algoritmo actualiza su nueva posición lógica, que se verá reducida, así como el número total de nodos de la red.
B23: Aquí el nodo comprueba si la baliza recibida es del nodo 2. En este caso, una vez actualizadas las variables del nodo, si es que ha sido necesario, hay que ver si se debe empezar la cuenta del tiempo ∆t o no. Si la baliza proviene del nodo 2 entonces
ya no es necesario empezar la cuenta del tiempo ∆t porque el nodo 1 no vuelve a enviar ninguna baliza, sino que envía ya el mensaje hacia la estación base (beamforming). En este caso el nodo finaliza sus acciones.
B24: Si la baliza no proviene del nodo 2 entonces el nodo espera más balizas y es por ello que aquí el nodo empieza la cuenta del tiempo ∆t, porque había recibido una baliza y está a la espera de otra para ir actualizando su visión de la red, tras lo cual
finaliza sus acciones por este camino.
B25: En el caso de que el nodo no sea el último se llega a esta casilla, en la que éste comprueba si se está en el ciclo de subida y el turno es de algún nodo superior. En caso afirmativo se pasa a la casilla B26, y en caso negativo a la B29.
B26: Aquí el nodo comprueba si ha habido bajas de algún nodo en la red, en este caso para nodos con posiciones lógicas inferiores respecto a la del que ha enviado la baliza, mediante la comprobación del valor de
t cuya cuenta se ha detenido en B2.
Si hay uno o más nodos muertos se pasa a la casilla B27, y en caso negativo directamente a la B29.
B27: Como el turno es de un nodo superior el nodo que está ejecutando el algoritmo actualiza, aquí, solamente el número de nodos de la red, ya que su posición lógica no ha cambiado y ya se ha calculado previamente el error ej.
B28: Aquí el nodo empieza la cuenta del tiempo ∆t, porque había recibido una baliza y está a la espera de otra para ir actualizando su visión de la red, tras lo cual finaliza sus acciones por este camino.
B29: En esta casilla el nodo comprueba si se está en el ciclo de bajada y el turno es de algún nodo superior. En caso afirmativo se pasa a la casilla B30, y en caso negativo a la B34.
B30: Aquí el nodo comprueba si ha habido bajas de algún nodo en la red, en este caso para nodos con posiciones lógicas superiores respecto a la del que ha enviado la baliza, mediante la comprobación del valor de ∆t cuya cuenta se ha detenido en B2. Si hay uno o más nodos muertos se pasa a la casilla B31, y en caso negativo directamente a la B33.
B31: El nodo desactiva, aquí, el envío de la señal contenedora del mensaje común a la estación base, ya que como ha habido bajas de nodos en el ciclo de bajada, no es posible corregir el retardo τ. Y como las bajas han sido de nodos con posición
lógica superior a la del nodo que está ejecutando el algoritmo, todavía está a tiempo de desactivar dicho envío, pues no lo ha comenzado. Cuando un nodo desactiva el envío, éste queda desactivado durante todo el ciclo de sincronización. Es decir, una vez desactivado, dicho nodo no podrá enviar aunque así se le pida en alguna de las casillas del diagrama de flujo.
Debe aclararse que el protocolo de sincronización dinámico representado por los diagramas de flujo de las Fig. 4 y 5 sólo permite corregir los valores de τ’ en caso que desaparezcan nodos durante el primer ciclo de sincronización. En el caso en que desaparezcan durante el segundo ciclo de sincronización esto no es posible, aunque se consigue realizar el intercambio de balizas y por lo tanto también la actualización de la red. Se opta entonces por cancelar la etapa de conformación al menos por lo que respecta a los nodos posteriores al que ha causado baja para evitar gasto de potencia innecesario, pues no se asegura una suma coherente en recepción. En el caso en que queden pocos nodos vivos, siempre se podria optar por cancelar la etapa de conformación para todos los nodos, entonces la conformación de haz se llevaría a cabo con tan sólo repetir el proceso de sincronización.
Cabe destacar que el caso de que un nodo o sensor esté presente en el primer ciclo de sincronización y desaparezca durante el segundo ciclo de sincronización es una situación muy poco probable.
B32: En esta casilla, como el turno es de un nodo superior, solamente se procede a actualizar el número de nodos de la red.
B33: Aquí el nodo empieza la cuenta del tiempo ∆t, porque había recibido una baliza y está a la espera de otra para ir actualizando su visión de la red, tras lo cual finaliza sus acciones por este camino.
B34: El nodo comprueba si es su segundo turno. En caso afirmativo se pasa a la casilla B35, y en caso negativo a la B40.
B35: El nodo comprueba en esta casilla si es el primer nodo.
B36: Aquí el nodo que ha comprobado que sí que es el primero, procede a enviar la señal contenedora del mensaje común hacia la estación base, tras lo cual finaliza sus acciones.
B37: Al haber comprobado que no es el primer nodo, y como es su segundo turno, el nodo radiodifunde la baliza del ciclo de bajada, es decir durante la etapa c).
B38: Aquí el nodo envía la señal contenedora del mensaje común hacia la estación base, después de un tiempo
corregido según las bajas (si no ha habido bajas ej= 0 y por tanto τ = τ’).
B39: El nodo empieza de nuevo la cuenta del tiempo ∆t, porque había recibido una baliza y está a la espera de otra para ir actualizando su visión de la red, tras lo cual finaliza sus acciones por este camino.
B40: En esta casilla el nodo comprueba si se está en el ciclo de bajada y el turno es de algún nodo inferior. En caso negativo, el nodo finaliza sus acciones. En caso afirmativo, éste pasa a la casilla B41. De hecho la respuesta siempre será afirmativa porque no hay más opciones, pero al añadir la condición queda todo más esquematizado).
B41: Aquí el nodo comprueba si ha habido bajas en la red, en este caso para nodos con posiciones lógicas superiores respecto a la del que ha enviado la baliza, mediante la comprobación del valor de ∆t cuya cuenta se ha detenido en B2. Si las ha
habido pasa a la casilla B42 y si no, directamente a la B43.
B42: Como es el turno de un nodo inferior en el ciclo de bajada, el nodo que está ejecutando el algoritmo actualiza su nueva posición lógica, que se verá reducida, así como el número total de nodos de la red.
B43: Aquí el nodo comprueba si la baliza recibida es del nodo 2. Si la baliza proviene del nodo 2 entonces ya no es necesario empezar la cuenta del tiempo
t porque el nodo 1 no vuelve a enviar ninguna baliza, sino que envía ya el mensaje hacia la estación base (beamforming). En este caso el nodo finaliza sus acciones.
B44: Si la baliza no proviene del nodo 2 entonces el nodo espera más balizas y es por ello que aquí el nodo empieza la cuenta del tiempo ∆t, porque había recibido una baliza y está a la espera de otra para ir actualizando su visión de la red, tras lo cual finaliza sus acciones por este camino.
Una vez descrito el diagrama de flujo de la Fig. 4 representativo de la primera situación indicada que se da cuando un nodo recibe una baliza, a continuación se procede a describir el diagrama de flujo de la Fig. 5, el cual representa a la segunda situación arriba descrita, y relativa a las acciones a realizar cuando un nodo sobrepasa una espera superior a un múltiplo entero de 2·tp sin recibir balizas.
Cada vez que el contador sobrepasa una espera múltiplo de 2·tp se activa el algoritmo que implementa el diagrama de flujo de la Fig. 5. Dicho evento indica que ha habido un nodo muerto y se requiere entonces de la correspondiente actualización en el vector de estados y del seguimiento del protocolo o proceso de sincronización, en caso de que pudiera quedarse estancado. El protocolo se queda estancado cuando, al desaparecer todos los nodos con turnos posteriores al que envió la última baliza y anteriores al nodo cuyo código se está ejecutando, éste último pasa a ser el primer nodo vivo.
Además de las modificaciones básicas comentadas, en este algoritmo se pretenden abordar sólo casos muy concretos de desapariciones de nodos que influyen negativamente en el funcionamiento del protocolo si no se tienen en cuenta sus consecuencias. Estos casos son la desaparición del nodo 2 durante el segundo ciclo de sincronización y la desaparición del último nodo.
Sólo se pretende hacer en tales casos para no tener que actualizar cada vez que muere uno de los nodos. Así, si desaparece una serie consecutiva de nodos se pueden a veces actualizar todos a la vez. De manera que, en este algoritmo, las posiciones lógicas y el número de nodos de la red sólo se actualizan en casos muy concretos.
Las acciones a seguir por cada nodo o sensor de la red, a partir de la casilla denominada “Inicio” en el diagrama de la Fig. 5, son las siguientes:
C1: Si el contador sobrepasa un tiempo de espera múltiplo de 2·tp, el nodo que ejecuta el algoritmo empieza, si no, espera hasta que se produzca tal situación.
C2: El nodo empieza incrementando una unidad la variable que cuenta los nodos muertos, ya que se ha sobrepasado la espera límite y por lo tanto se ha determinado que se ha producido la baja de uno o más nodos.
Es importante tener en cuenta que, a nivel de diagrama de flujo, de la misma forma que aquí se incrementa la variable de nodos muertos, se podría también actualizar el vector de estados. Sin embargo, esta acción debe realizarse de forma diferente cuando se quiere implementar el diagrama de flujo en código, donde cada punto pasa a ser realizado mediante el contador, el vector de estados, el número total de nodos de la red, etc.
El problema está en que la manera de actualizar el vector de estados es una u otra en función del punto del algoritmo que se esté ejecutando. Por esta razón, la actualización del vector de estados aparecerá después de cada uno de los casos C3, C18, C23, C42 y C51, en lugar de en este punto C2.
C3: En este punto el nodo comprueba si está en el ciclo de subida y el turno era de algún nodo inferior. Si es así se pasa a la casilla C4, si no, a la C17.
C4: Como ha desaparecido un nodo, el nodo que está ejecutando el algoritmo actualiza el vector de estados. Como se está en el primer ciclo y le toca a un nodo inferior se actualiza también el valor del error temporal ej utilizable para obtener el retardo corregido
.
C5: Aquí el nodo comprueba si es el primer nodo vivo desde el último que envió una baliza, en cuyo caso realiza las acciones que comienzan por la casilla C6. Si no es así no es necesaria ninguna otra actualización ni seguir el protocolo, ya que lo debe hacer otro nodo con turno anterior al del que está ejecutando el algoritmo, por lo que el nodo finaliza aquí las acciones a realizar.
C6: Como el nodo es el primero vivo, pasa a ser su primer turno, por lo que es como si acabara de recibir la baliza del anterior nodo durante el ciclo de subida y por lo tanto ha de parar, en este punto, la cuenta de tiempo que permitirá el cálculo del retardo τ.
C7: Como es el primer nodo vivo y está en el primer ciclo, ya no espera que mueran más nodos antes de su turno, y actualiza el error temporal ej utilizable para obtener el retardo corregido τ. Como ha muerto un nodo con posición inferior, y al no
esperar que mueran más nodos antes de su turno, el nodo actualiza su nueva posición lógica, que se verá reducida, además claro del número de nodos de la red.
C8: Tras las actualizaciones indicadas, aquí el nodo comprueba si es el último, en cuyo caso se ha de tener en cuenta que sólo debe enviar una baliza, y que por lo tanto el instante de envío de ésta es su tiempo de referencia para empezar a contar el tiempo previamente calculado
, hasta enviar la señal contenedora del mensaje común hacia la estación base. Si no es el último sensor no es necesario lo comentado.
C9: El nodo comprueba en este punto si es el que ocupa la primera posición lógica en la red, es decir si es el único nodo que queda vivo, porque han desaparecido todos los demás en algún ciclo de sincronización.
C10: Al ser el nodo el único que queda vivo, éste procede a enviar directamente, en este punto, la señal contenedora del mensaje común hacia la estación base.
C11: Aquí el nodo detiene la cuenta del tiempo ∆t porque ya no ha de recibir ninguna otra baliza, tras lo cual finaliza sus acciones.
C12: Aquí el nodo envía, por radiodifusión, la única baliza que ha de enviar, por ser el último nodo, que corresponde al ciclo de bajada.
C13: Tal y como se ha indicado en el punto C8, aquí el nodo envía la señal contenedora del mensaje común hacia la estación base después de un tiempo τ, corregido según las bajas.
C14: El nodo reinicia en este punto la cuenta del tiempo ∆t porque ya ha realizado todas las actualizaciones correspondientes al nodo/nodos desaparecidos, y acaba de enviar una baliza, por lo que tiene que empezar a contar nodos muertos de nuevo.
C15: Como el llegar a esta casilla significa que es el primer turno del nodo, éste procede a radiodifundir la primera baliza del protocolo de sincronización, la correspondiente al ciclo de subida.
C16: Aquí el nodo reinicia la cuenta del tiempo ∆t porque ya ha realizado todas las actualizaciones correspondientes al nodo/nodos desaparecidos, y acaba de enviar una baliza, por lo que tiene que empezar a contar nodos muertos de nuevo.
C17. En esta casilla el nodo comprueba si es el último sensor.
Tal y como se ha indicado con referencia a la casilla B19 del diagrama de flujo de la fig. 4, aquí, en lugar de seguir comprobando los turnos y el tipo de ciclo (subida o bajada) como en C3, se separa primero el problema en dos, según se trate del último nodo o no, ya que el último nodo necesita aquí un trato especial.
Para el caso en que no sea el último sensor, se sigue con la misma dinámica que anteriormente, ahora en los puntos C23, C42 y C51, con lo que la siguiente pregunta se basa en saber si es el turno de un nodo superior, todavía en el ciclo de subida. Después se analizan los diferentes casos para el ciclo de bajada. Es importante recordar que en estos casos se pretenden abordar solamente casos muy concretos de desapariciones.
También es importante tener en cuenta que la división aquí realizada no sería necesario llevarla a cabo en el diagrama de flujo porque el último nodo no activará ninguna de las casillas C23 y C42. Y la C51, que es la que activaría, es idéntica a la C18. Sin embargo, la división sí que es necesaria cuando se quiere implementar el diagrama de flujo en código, donde cada punto pasa a ser realizado mediante el contador, el vector de estados, el número de sensores de la red, etc. El problema está en que las condiciones C23 y C42 implementadas a partir de comparaciones entre valores de estas variables no funcionan correctamente para el caso del último nodo, y podría ser que éste activara alguna de ellas. Es por esta razón que se hace aquí esta división.
Para otro ejemplo de realización, el método comprende llevarse a cabo mediante un diagrama de flujo como el de la Fig. 5 pero prescindiendo de las casillas C18 a C22.
C18: El nodo comprueba en este punto si está en el ciclo de bajada y el turno era de algún nodo inferior. Si es así el nodo realiza las acciones correspondientes a este caso, empezando por el punto C19. Si no, no hace nada (de hecho la respuesta siempre será afirmativa porque no hay más opciones, pero al añadir la condición queda todo más esquematizado).
C19: Como ha desaparecido un nodo, el nodo que ejecuta el algoritmo actualiza el vector de estados.
C20: El nodo comprueba si la baja corresponde al nodo 2. Si es así pasa a la casilla C21, y si no, ya no son necesarias más actualizaciones y el nodo finaliza aquí sus acciones.
C21: Si la baja corresponde al nodo 2, como ha muerto un nodo con posición inferior, y al no esperar que mueran más nodos porque el nodo 1 no vuelve a enviar ninguna baliza sino que envía ya el mensaje hacia la estación base, el nodo que ejecuta el algoritmo actualiza, en este punto, su nueva posición lógica, que se verá reducida, además claro del número de nodos de la red.
C22: En esta casilla el nodo para la cuenta del tiempo ∆t porque ya no ha de recibir ninguna otra baliza, tras lo cual finaliza sus acciones.
C23: El nodo comprueba en este punto si está en el ciclo de subida y el turno era de algún nodo superior, en cuyo caso pasa a la casilla C24 y si la respuesta es negativa pasa a la casilla C42.
C24: Como ha desaparecido un nodo, el nodo que ejecuta el algoritmo actualiza el vector de estados.
C25: El nodo comprueba aquí si al desaparecer el último nodo ha pasado a ser el último nodo vivo. Si es así se realizan las acciones correspondientes a este caso, comenzando por el punto C26. En caso contrario se analizan otros posibles casos críticos dentro de este camino al que se ha entrado por el punto C23.
C26: Como ha muerto un nodo con posición superior, y al no esperar que mueran más nodos antes de su turno, el nodo actualiza solamente el número de nodos de la red.
C27: Aquí el nodo comprueba si, además del último, es también el primer nodo, es decir el único que queda vivo porque han desaparecido todos los demás en algún ciclo de sincronización.
C28: Si efectivamente es el único nodo que queda vivo, éste envía directamente el mensaje hacia la estación base.
C29: Tras ello, en este punto el nodo detiene la cuenta del tiempo ∆t porque ya no ha de recibir ninguna otra baliza.
C30: En este punto, al que se llega porque el nodo no es el único que queda vivo, éste envía el mensaje hacia la estación base después de un tiempo
corregido según las bajas. Al ser el nodo el último se ha de tener en cuenta que sólo envía una baliza, y en este caso ya ha sido enviada en el ciclo de subida. Por lo tanto el instante de envío de ésta es el tiempo de referencia que utiliza el nodo para empezar a contar el tiempo previamente calculado τ, hasta enviar el mensaje hacia la estación base.
C31: El nodo reinicia aquí la cuenta del tiempo ∆t porque ya ha realizado todas las actualizaciones correspondientes al nodo/nodos desaparecidos, y es como si acabara de enviar una baliza. Tiene que empezar a contar nodos muertos de nuevo. Tras ello finaliza sus acciones por este camino.
C32: El nodo comprueba en este punto si al desaparecer el último nodo él ha pasado a ser el penúltimo nodo vivo. Si es así realiza las acciones correspondientes a este caso, empezando por la asociada a la casilla C33. Si no es así se analizan otros posibles casos críticos dentro de esta ramificación a la que se ha entrado por el punto C23. Si el nodo ha determinado que es el penúltimo nodo vivo se ha de tener en cuenta que el ahora último ya ha enviado una baliza, y que por lo tanto ahora es el turno del nodo que ejecuta el algoritmo.
C33: Como ha muerto un nodo con posición superior, y al no esperar que mueran más nodos antes del turno del nodo que ejecuta el algoritmo, éste actualiza solamente el número de nodos de la red.
C34: El nodo comprueba si, además del penúltimo, es el primer nodo, en caso de que sea así pasa a la casilla C35, y si no, a la C37.
C35: Al ser el nodo el primer nodo, envía directamente el mensaje hacia la estación base.
C36: Aquí el nodo para la cuenta del tiempo ∆t porque ya no ha de recibir ninguna otra baliza.
C37: Como el llegar a esta casilla implica que es el segundo turno del nodo, éste radiodifunde la segunda baliza del protocolo de sincronización, la correspondiente al ciclo de bajada.
C38: Al ser su segundo turno, el nodo envía el mensaje hacia la estación base después de un tiempo
corregido según las bajas.
C39: El nodo reinicia aquí la cuenta del tiempo ∆t porque ya ha realizado todas las actualizaciones correspondientes al nodo/nodos desaparecidos, y acaba de enviar una baliza. Tiene que empezar a contar nodos muertos de nuevo. Tras ello finaliza sus acciones por este camino.
C40: El nodo comprueba en esta casilla si ha desaparecido el último nodo pero no es ni el último ni el penúltimo nodo vivo. En caso afirmativo es necesario actualizar para proteger el caso en que desaparezca también el penúltimo durante el ciclo de bajada. La baja del penúltimo nodo haría que, al no recibirse baliza de éste, no se activara el primer algoritmo, el de la Fig. 4, y no se actualizara el número de nodos de la red. Si la baja no corresponde al último nodo, ya no son necesarias más actualizaciones y se finaliza aquí la ejecución de acciones por parte del nodo.
C41: Como ha muerto el último nodo, y al poder desaparecer más nodos antes del turno del nodo que ejecuta el algoritmo, éste actualiza solamente el número de nodos de la red. En este caso, no es necesaria ninguna otra actualización ni seguir el protocolo, ya que lo debe hacer otro nodo con turno anterior al suyo (con posición lógica superior). Como el nodo no envía de momento ninguna otra baliza porque hay nodos vivos entre su posición y la del último nodo (que ha muerto), no reinicia la cuenta ∆t y deja que siga contando.
C42: Aquí el nodo comprueba si se está en el ciclo de bajada y el turno era de algún nodo superior. Si la repuesta es afirmativa se pasa a la casilla C43 y si no, a la C51.
C43: Como ha desaparecido un nodo, el nodo que ejecuta el algoritmo actualiza el vector de estados.
C44: El nodo comprueba aquí si es el primer nodo vivo desde el último que envió una baliza. Si es así pasa a la casilla C45, y si no, no es necesaria ninguna otra actualización ni seguir el protocolo, ya que lo debe hacer otro nodo con turno anterior al suyo, por lo que el nodo finaliza sus acciones.
C45: Como el nodo es el primero vivo, éste desactiva el envío del mensaje hacia la estación base ya que, como ha habido bajas de nodos en el ciclo de bajada, el nodo no es capaz de corregir el retardo
. Y como las bajas han sido de nodos con posición
lógica superior a la del nodo que ejecuta el algoritmo, todavía está a tiempo de desactivar el envío, pues no lo ha empezado.
En el caso en que hayan bajas en el ciclo de bajada pero por parte de nodos con posición lógica inferior, no se cancela el envío ya que éste contiene un error común entre todos los nodos que envían (los que están posicionados lógicamente por encima del nodo muerto con posición más alta son los únicos que enviarán).
C46: Como ha muerto un nodo con posición superior, y al no esperar que mueran más nodos antes del turno del nodo que ejecuta el algoritmo, éste actualiza solamente el número de nodos de la red.
C47: Aquí el nodo comprueba si es el primer nodo. Si es así ya no son necesarias más actualizaciones y se pasa a la casilla C48. Si no, éste realiza las tareas correspondientes a este caso, empezando por el punto C49.
C48: Aquí el nodo para la cuenta del tiempo ∆t porque ya no ha de recibir ninguna otra baliza.
C49: Como es el segundo turno del nodo, éste radiodifunde la segunda baliza del protocolo de sincronización, la correspondiente al ciclo de bajada.
C50: El nodo reinicia aquí la cuenta del tiempo ∆t porque ya ha realizado todas las actualizaciones correspondientes al nodo/nodos desaparecidos, y acaba de enviar una baliza. Tiene que empezar a contar nodos muertos de nuevo. Tras ello finaliza sus acciones por este camino.
C51: El nodo comprueba en este punto si está en el ciclo de bajada y el turno era de algún nodo inferior. Si es así el nodo realiza las acciones correspondientes a este caso, empezando por el punto C52. Si no, no hace nada. De hecho la respuesta siempre será afirmativa porque no hay más opciones, pero al añadir la condición queda todo más esquematizado.
C52: Como ha desaparecido un nodo, el nodo que ejecuta el algoritmo actualiza el vector de estados.
C53: El nodo comprueba si la baja corresponde al nodo 2. Si es así pasa a la casilla C54, y si no, ya no son necesarias más actualizaciones y el nodo finaliza aquí sus acciones.
C54: Si la baja corresponde al nodo 2, como ha muerto un nodo con posición inferior, y al no esperar que mueran más nodos porque el nodo 1 no vuelve a enviar ninguna baliza sino que envía ya el mensaje hacia la estación base, el nodo que ejecuta
el algoritmo actualiza, en este punto, su nueva posición lógica, que se verá reducida, además claro del número de nodos de la red. C55: En esta casilla el nodo para la cuenta del tiempo ∆t porque ya no ha de recibir ninguna otra baliza, tras lo cual finaliza sus acciones. 5
Los diagramas de flujo que se acaban de describir, con referencia a las Figs. 4 y 5, son solamente representativos de unos ejemplos de realización de implementación del método propuesto por el primer aspecto de la invención, pero éstos pueden sufrir modificaciones para otros ejemplos de realización. Por ejemplo el segundo diagrama, el
10 de la Fig. 5, se puede modificar para que, para otro ejemplo de realización, actualice todas las variables cada vez que desaparezca un nodo, con lo que el de la Fig. 4 se simplificaría ya que no tendría que esperar a que un nodo recibiese una baliza para realizar las actualizaciones mencionadas.
Un experto en la materia podría introducir cambios y modificaciones en los 15 ejemplos de realización descritos sin salirse del alcance de la invención según está definido en las reivindicaciones adjuntas.
Referencias
[Bro08] Brown, D.R.; Poor, H.V.; “Time-Slotted Round-Trip Carrier Synchronization for Distributed Beamforming”, Signal Processing, IEEE Transactions on, vol. 56, Issue 11, pp. 5630-5643, Nov. 2008.
[Mud04] G. Barriac, R. Mudumbai, and U. Madhow, “Distributed beamforming for information transfer in sensor networks”, Proc. 3rd International Symposium on Information Processing in Sensor Networks (IPSN’04), pp. 81–88, Apr. 26–27, 2004.
[Mud05] R. Mudumbai, J. Hespanha, U. Madhow, and G. Barriac, “Scalable feedback control for distributed beamforming in sensor networks”, Information Theory, 2005. ISIT 2005. Proceedings. International Symposium on, pp. 137-141, Sep. 2005.
[Mud07] R. Mudumbai, G. Barriac, and U. Madhow, "On the Feasibility of Distributed Beamforming in Wireless Networks", Wireless vol. 6, Issue 5, pp. 1754-1763, May 2007.
[Tu02] Y.-S. Tu and G. Pottie, “Coherent cooperative transmission from multiple adjacent antennas to a distant stationary antenna through AWGN channels”, in Proc.55th IEEE Vehicular Technology Conference Spring 2002, vol. 1, pp. 130–134.
[Wan08] Qian Wang and Kui Ren, “Time-Slotted Round-Trip Carrier Synchronization in Large-Scale Wireless Networks”, Communications, 2008. ICC apos;08. IEEE International Conference on, pp. 5087-5091, May. 2008.
Claims (25)
- Reivindicaciones1.-Método de conformación de haz distribuida en redes de nodos inalámbricos, del tipo que comprende realizar las siguientes etapas:a) radiodifundir, desde una estación base, una señal de baliza a una pluralidad de nodos inalámbricos de una red;b) realizar una primera etapa de sincronización que comprende enviar, secuencialmente, cada uno de dichos nodos inalámbricos, después de la recepción de dicha señal de baliza, una respectiva señal de referencia temporal a al menos un nodo consecutivo, o más cercano, según un primer sentido en un ciclo de subida, empezando por un primer nodo de dicha red; yc) realizar una segunda etapa de sincronización que comprende enviar, secuencialmente, cada uno de dichos nodos inalámbricos, una respectiva señal de referencia temporal a al menos un nodo consecutivo, o más cercano, según un segundo sentido, opuesto a dicho primer sentido, en un ciclo de bajada, empezando por el último nodo de dicha red; realizándose al menos dichas etapas a), b) y c) con el fin de realizar una etapa d) que comprende enviar, tras dicha etapa c), por parte de cada uno de dichos nodos inalámbricos una respectiva señal conteniendo un mensaje común, de manera distribuida, a dicha estación base, de manera sincronizada en fase, en frecuencia y en el tiempo de llegada, para que en ésta se sumen todas las señales recibidas de manera constructiva; estando dicho método caracterizado porque comprende determinar que al menos uno de dichos nodos inalámbricos ha causado baja en dicha red si al menos su respectivo nodo consecutivo no ha recibido la respectiva señal de referencia temporal del mismo, en dicha etapa b) o en dicha etapa c), después de un tiempo de espera predeterminado, y enviar, tras dicha determinación, por parte de dicho nodo consecutivo, su respectiva señal de referencia temporal al siguiente nodo, en dicho ciclo de subida de dicha etapa b) o en dicho ciclo de bajada de dicha etapa c), y porque la posición de cada uno de los nodos en dicha red es una posición lógica conocida por el respectivo nodo, siendo dichos primer y último nodos los que tienen las posiciones lógicas primera y última, respectivamente.
- 2.-Método según la reivindicación 1, caracterizado porque dicho tiempo de espera predeterminado es sustancialmente igual a 2·tp para cada nodo que ha causado baja, y de m·2·tp para m nodos consecutivos que han causado baja, si es el caso, siendo tp un tiempo de propagación máximo estimado entre dos nodos cualesquiera de la red.
- 3.-Método según la reivindicación 1 ó 2, caracterizado porque comprende radiodifundir dichas señales de referencia temporal en dichas etapas b) y c), de manera que éstas son recibidas también por el resto de nodos de la red, además de por el nodo consecutivo al cual van explícitamente dirigidas, comprendiendo el método llevar a cabo dicha determinación de que al menos un nodo ha causado baja además de en dicho nodo consecutivo, también en cada uno de los demás nodos de la red, si tras la recepción de la señal de referencia temporal radiodifundida por el nodo anterior al que puede haber causado baja, transcurre dicho tiempo de espera predeterminado sin recibir otra señal de referencia temporal.
- 4.-Método según la reivindicación 3, caracterizado porque comprende, tras dicha determinación de la baja de al menos un sensor, actualizar la composición de la red en cada uno de los nodos de la red que no han causado baja, al menos por lo que se refiere a número total de nodos vivos y estado de cada uno de los nodos, y, únicamente para los nodos superiores respecto al que ha causado baja, en cualquiera de dichos primer y segundo sentidos, también por lo que se refiere a su nueva posición lógica en la red.
- 5.-Método según la reivindicación 4, caracterizado porque comprende contar, mediante un contador interno de cada nodo, el número de señales recibidas, incluyendo dicha señal de baliza y dichas señales de referencia temporal radiodifundidas, para saber, cada nodo, teniendo en cuenta al menos su posición lógica, cuándo es su turno para considerar que la señal de referencia temporal recibida va explícitamente dirigida al mismo y para realizar el posterior envío de su señal temporal de referencia en dicha etapa b) y/o en dicha etapa c).
- 6.-Método según la reivindicación 5, caracterizado porque cuando el último nodo, según el ciclo de subida de la etapa b), causa baja, el método comprende que el penúltimo nodo tome el papel de dicho último nodo y solamente deba enviar una señal de referencia temporal, la ya enviada en el ciclo de subida, y porque cuando el antepenúltimo nodo determina dicha baja del último nodo, producida en el ciclo de subida de la etapa b), el método comprende considerar, por parte de dicho antepenúltimo nodo, que la señal de referencia temporal radiodifundida por el penúltimo nodo en la etapa b) forma parte del envío del ciclo de bajada de la etapa c) y va dirigida a dicho antepenúltimo nodo.
- 7.-Método según una cualquiera de las reivindicaciones anteriores, caracterizado porque si dicha determinación de la baja de al menos un nodo se realiza en dicha etapa b), el método comprende realizar dicha etapa d) mediante todos los nodos que no han causado baja.
- 8.-Método según una cualquiera de las reivindicaciones anteriores, caracterizado porque si dicha determinación de la baja de al menos un nodo se realiza en dicha etapa c), el método comprende cancelar la realización de dicha etapa d) al menos por lo que respecta a los nodos posteriores al que ha causado baja, según dicho segundo sentido.
- 9.-Método según una cualquiera de las reivindicaciones 1 a 8, caracterizado porque comprende utilizar, en dichas etapas b) y c), unas señales de referencia temporal independientes de dicha señal de baliza.
- 10.-Método según la reivindicación 9, caracterizado porque dichas señales de referencia temporal contienen al menos un pulso o un impulso.
- 11.-Método según una cualquiera de las reivindicaciones 1 a 8, caracterizado porque comprende utilizar, en dichas etapas b) y c), unas señales de referencia temporal dependientes de dicha señal de baliza.
- 12.-Método según la reivindicación 9 u 11, caracterizado porque comprende utilizar dichas señales de referencia temporal para realizar la sincronización en el tiempo de llegada a la estación base de las respectivas señales contenedoras de dicho mensaje común enviadas, en dicha etapa d), por parte de cada uno de los nodos, mediante la determinación del momento en que cada nodo debe enviar su respectiva señal contenedora del mensaje común en dicha etapa d).
- 13.-Método según la reivindicación 12, caracterizado porque comprende realizar dicha determinación mediante el cálculo previo, en cada nodo, de un retardo contando el tiempo que va desde la finalización de la recepción de la señal de baliza hasta la finalización de la recepción de la señal de referencia temporal enviada por el nodo inmediatamente anterior, en la etapa b), si éste no ha causado baja, determinándose que dicho momento es igual al tiempo en que el nodo en cuestión ha acabado de enviar su respectiva señal de referencia temporal, en dicha etapa c), más dicho retardo calculado τ.
- 14.-Método según la reivindicación 12, caracterizado porque comprende determinar que dicho momento en que cada nodo debe enviar su respectiva señal contenedora del mensaje común es igual, si al menos un nodo con posición lógica inferior ha causado baja en la etapa b), al tiempo en que el nodo en cuestión ha acabado de enviar su respectiva señal de referencia temporal, en dicha etapa c), más un retardo τ corregido resultante de restar un valor de error temporal ej a un retardo τ’que va desde la finalización de la recepción de la señal de baliza hasta la finalización de la recepción de la señal de referencia temporal enviada por un nodo que no ha causado baja en la etapa b) con una posición lógica inferior inmediatamente anterior al nodo en cuestión pero superior a la del que ha causado baja.
- 15.-Método según la reivindicación 12, caracterizado porque comprende determinar que dicho momento en que cada nodo debe enviar su respectiva señal contenedora del mensaje común es igual, si al menos un nodo con posición lógica inferior e inmediatamente anterior al nodo en cuestión ha causado baja en la etapa b), al tiempo en que el nodo en cuestión ha acabado de enviar su respectiva señal de referencia temporal, en dicha etapa c), más un retardo corregido resultante de restarun valor de error temporal ej a un retardo τ’ que va desde la finalización de la recepción de la señal de baliza hasta la finalización del transcurso de dicho tiempo de espera predeterminado sin recibir una señal temporal de referencia.
- 16.-Método según la reivindicación 14 ó 15, caracterizado porque dicho valor de error temporal ej es sustancialmente igual a m·2tp, siendo tp un tiempo de propagación estimado entre dos nodos, y m el número de nodos consecutivos que han causado baja.
- 17.-Método según la reivindicación 1, caracterizado porque comprende realizar la sincronización de fase y frecuencia, en dicha etapa d), de las respectivas señales contenedoras del mensaje común enviadas por parte de cada uno de los nodos, de manera distribuida, a la estación base, mediante la estimación, en cada nodo, de la fase y frecuencia de la señal de baliza recibida en dicha etapa a).
- 18.-Método según la reivindicación 1 ó 12, caracterizado porque dicha sincronización en el tiempo de llegada es una sincronización de símbolo.
- 19.-Sistema de conformación de haz distribuida en redes de nodos inalámbricos, del tipo que comprende:
- -
- una estación base (D0) prevista para radiodifundir por al menos una antena omnidireccional una señal de baliza; y
- -
- una pluralidad de nodos inalámbricos (S1, S2…Sj…SN) dispuestos formando una red de comunicaciones, estando cada uno de dichos nodos inalámbricos (S1, S2…Sj…SN) previsto para recibir dicha señal de baliza y para enviar una respectiva señal conteniendo un mensaje común, de manera distribuida, a dicha estación base (D0), de manera sincronizada en fase, en frecuencia y en el tiempo de llegada, para que en ésta se sumen todas las señales recibidas de manera constructiva; estando dicho sistema caracterizado porque está configurado para implementar el método según una cualquiera de las reivindicaciones anteriores.
- 20.-Sistema según la reivindicación 19, caracterizado porque cada uno de dichos nodos inalámbricos (S1, S2…Sj…SN) comprende una antena omnidireccional por la que realizar dichos envíos de las etapas b) y c), y al menos una unidad de procesamiento prevista para al menos determinar que al menos uno de los nodos inalámbricos (S1, S2…Sj…SN) ha causado baja, teniendo dicha unidad de procesamiento acceso a al menos una memoria, y capacidad para registrar en dicha memoria, que es al menos una, unos datos referentes al número total de nodos que conforman la red, al estado de los mismos, y a la posición lógica que ocupa en la red el nodo en cuestión, estando dicha unidad de procesamiento también prevista para actualizar dichos datos tras la determinación de que al menos un nodo ha causado baja.
- 21.-Sistema según la reivindicación 20, caracterizado porque dicha unidad de procesamiento está prevista también para determinar el momento en que el nodo debe enviar su respectiva señal contenedora del mensaje común en dicha etapa d), realizando todos los cálculos necesarios, para asegurar la mencionada sincronización en el tiempo de llegada a la estación base (D0) de las respectivas señales contenedoras de dicho mensaje común enviadas, en la etapa d), por parte de cada uno de los nodos (S1, S2…Sj…SN).
- 22.-Sistema según una cualquiera de las reivindicaciones 19 a 21, caracterizado porque dichos nodos inalámbricos (S1, S2…Sj…SN) son unos sensores inalámbricos y porque dicha red inalámbrica es una red ad hoc que contiene un número arbitrario de sensores inalámbricos.
- 23.-Sistema según una cualquiera de las reivindicaciones 19 a 22, caracterizado porque dichos nodos inalámbricos (S1, S2…Sj…SN) son móviles.
- 24.-Nodo inalámbrico aplicable a un sistema de conformación de haz distribuida en redes de nodos inalámbricos, del tipo que está configurado para constituir, junto con otros nodos inalámbricos (S1, S2…Sj…SN) iguales o análogos, el sistema propuesto según una cualquiera de las reivindicaciones 19 a 23.Fig. 1Fig. 2Fig. 3Fig. 4Fig. 5OFICINA ESPAÑOLA DE PATENTES Y MARCASN.º solicitud: 201290075ESPAÑAFecha de presentación de la solicitud: 14.04.2011Fecha de prioridad:INFORME SOBRE EL ESTADO DE LA TECNICA51 Int. Cl. Ver Hoja AdicionalDOCUMENTOS RELEVANTES
- Categoria
- @ Documentos citados Reivindicaciones afectadas
- A
- BROWN, D.R. et al. "Time-Slotted Round-Trip Carrier Synchronization for Distributed Beamforming," IEEE Transactions on Signal Processing, vol. 56, no. 11, pp. 5630-5643, Nov. 2008. 1-24
- A
- US 2010039933 A1 (GENERAL ATOMICS) 18.02.2010, párrafos [0037-0039],[0104-0114],[0119]; figuras 1-4,8-10. 1-24
- A
- WO 2008003022 A2 (INTEL CORP et al.) 03.01.2008, párrafos [0008-0009],[0032-0038],[0057-0065]; figuras 1,2. 1,19,24
- Categoría de los documentos citados X: de particular relevancia Y: de particular relevancia combinado con otro/s de la misma categoría A: refleja el estado de la técnica O: referido a divulgación no escrita P: publicado entre la fecha de prioridad y la de presentación de la solicitud E: documento anterior, pero publicado después de la fecha de presentación de la solicitud
- El presente informe ha sido realizado � para todas las reivindicaciones � para las reivindicaciones nº:
- Fecha de realizaci6n del informe 01.02.2013 Examinador J. Cotillas Castellano Pagina 1/4
INFORME DEL ESTADO DE LA TÉCNICANº de solicitud: 201290075CLASIFICACIÓN OBJETO DE LA SOLICITUD H04B7/02 (2006.01)H04W56/00 (2009.01) H04W84/18 (2009.01) Documentación mínima buscada (sistema de clasificación seguido de los símbolos de clasificación)H04WBases de datos electrónicas consultadas durante la búsqueda (nombre de la base de datos y, si es posible, términos de búsqueda utilizados) INVENES, EPODOCInforme del Estado de la Técnica Página 2/4OPINION ESCRITANº de solicitud: 201290075Fecha de Realización de la Opinión Escrita: 01.02.2013Declaraci6n- Novedad (Art.
- .1 LP 11/198 ) Reivindicaciones 1-24 SI
- Reivindicaciones
- NO
- Actividad inventiva (Art. 8.1 LP11/198 )
- Reivindicaciones 1-24 SI
- Reivindicaciones
- NO
Se considera que la solicitud cumple con el requisito de aplicación industrial. Este requisito fue evaluado durante la fase de examen formal y técnico de la solicitud (Artículo 31.2 Ley 11/1986).Base de la Opini6n.-La presente opinión se ha realizado sobre la base de la solicitud de patente tal y como se publica.Informe del Estado de la Técnica Página 3/4OPINION ESCRITANº de solicitud: 2012900751. Documentos considerados.-A continuación se relacionan los documentos pertenecientes al estado de la técnica tomados en consideración para la realización de esta opinión.- Documento
- Numero Publicaci6n o Identificaci6n Fecha Publicaci6n
- D01
- BROWN, D.R. et al. "Time-Slotted Round-Trip Carrier Synchronization for Distributed Beamforming," IEEE Transactions on Signal Processing, vol. 56, no. 11, pp. 5630-5643, Nov. 2008. 01.11.2008
- D02
- US 2010039933 A1 (GENERAL ATOMICS) 18.02.2010
- D03
- WO 2008003022 A2 (INTEL CORP et al.) 03.01.2008
- 2. Declaraci6n motivada segun los articulos 29. y 29.7 del Reglamento de ejecuci6n de la Ley 11/198 , de 20 de marzo, de Patentes sobre la novedad y la actividad inventiva; citas y explicaciones en apoyo de esta declaraci6nLos documentos recuperados en la fase de búsqueda y citados en el Informe sobre el Estado de la Técnica, referidos a métodos de conformación de haces distribuidos en redes de nodos inalámbricos y a métodos de detección de bajas en dichas redes, si bien presentan algunas similitudes con el método reivindicado, se diferencian en algunas características que hacen que el método, sistema y nodo reivindicados se consideren nuevos y con actividad inventiva, según lo establecido en los Art. 6.1 y 8.1 de la Ley 11/1986 de Patentes.Así, el documento D01, citado en la solicitud, describe un método de conformación de haz distribuida en redes de nodos inalámbricos, que comprende las etapas de (véase el apartado III.C):a) radiodifundir una baliza desde una estación base.b) realizar una primera etapa de sincronización enviando cada nodo, según un sentido de subida de acuerdo a susposiciones lógicas, una señal de referencia temporal a al menos un nodo consecutivo, empezando por el primernodo.c) realizar una segunda etapa de sincronización enviando cada nodo, según un sentido de bajada opuesto al anteriory de acuerdo a sus posiciones lógicas, una señal de referencia temporal a al menos un nodo consecutivo,empezando por el último nodo.d) enviar, por parte de cada uno de dichos nodos, una señal conteniendo un mensaje común, de manera distribuida, adicha estación base, de forma tal que la señal llega sincronizada en fase, en frecuencia y en tiempo de llegada.De forma implícita, en el método descrito en el documento D01 la posición lógica de cada uno de los nodos en dicha red es una posición lógica conocida por el respectivo nodo.La principal diferencia entre el método reivindicado en la solicitud y el método descrito en D01 radica en que en éste no se describe ninguna etapa que determine si alguno de los nodos causa baja en la red y, en consecuencia, no se establece ningún mecanismo para finalizar la sincronización de los nodos en el caso de que alguno de ellos falle.El documento D02 divulga una red de nodos inalámbricos capaz de determinar que uno de dichos nodos causa baja en la red. Según el método descrito en D02, se detecta que uno de los nodos inalámbricos ha causado baja en la red cuando el nodo consecutivo no ha recibido una señal de referencia después de un tiempo de espera predeterminado (véase el párrafo 105). Sin embargo, de acuerdo con este método, el nodo vecino que detecta la baja del anterior envía una señal a la estación base comunicando la baja de dicho nodo, en lugar de enviar una señal de referencia al siguiente nodo, según la etapa b) ó c), tal y como se reivindica en la presente solicitud.De este modo, en ninguno de los documentos citados, que reflejan el estado de la técnica anterior más próximo al objeto de la solicitud, se han encontrado presentes todas las características técnicas que se definen en la reivindicaciones independientes 1, 19 y 24 de la solicitud.Asimismo, se considera que las características diferenciales no parecen derivarse de una manera evidente de ninguno de los documentos citados ni de manera individual ni mediante una combinación evidente entre ellos.Por todo la anterior, se concluye que las reivindicaciones independientes 1, 19 y 24, y por consiguiente, todas sus dependientes (reivindicaciones 2 a 18 en cuanto a la reivindicación 1, y reivindicaciones 20 a 23 en cuanto a la 19) satisfarían los requisitos de patentabilidad establecidos en el Art. 4.1 LP.Informe del Estado de la Técnica Página 4/4
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/ES2011/000128 WO2011128475A1 (es) | 2010-04-14 | 2011-04-14 | Método y sistema de conformación de haz distribuida en redes de nodos inalámbricos, v nodo inalámbrico aplicable a tal sistema |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| ES2396766A1 true ES2396766A1 (es) | 2013-02-26 |
| ES2396766B1 ES2396766B1 (es) | 2014-01-15 |
Family
ID=47711420
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES201290075A Active ES2396766B1 (es) | 2011-04-14 | 2011-04-14 | Método y sistema de conformación de haz distribuida en redes de nodos inalámbricos, y nodo inalámbrico aplicable a tal sistema |
Country Status (1)
| Country | Link |
|---|---|
| ES (1) | ES2396766B1 (es) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2008003022A2 (en) * | 2006-06-29 | 2008-01-03 | Intel Corporation | Calibration systems and techniques for distributed beamforming |
| US20100039933A1 (en) * | 2008-08-12 | 2010-02-18 | General Atomics | Method and system for network setup and maintenance and medium access control for a wireless sensor network |
-
2011
- 2011-04-14 ES ES201290075A patent/ES2396766B1/es active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2008003022A2 (en) * | 2006-06-29 | 2008-01-03 | Intel Corporation | Calibration systems and techniques for distributed beamforming |
| US20100039933A1 (en) * | 2008-08-12 | 2010-02-18 | General Atomics | Method and system for network setup and maintenance and medium access control for a wireless sensor network |
Non-Patent Citations (1)
| Title |
|---|
| 1/11/2008, BROWN, D.R. et al. "Time-Slotted Round-Trip Carrier Synchronization for Distributed Beamforming," IEEE Transactions on Signal Processing,vol.56, no.11, pp.5630-5643, Nov. 2008. * |
Also Published As
| Publication number | Publication date |
|---|---|
| ES2396766B1 (es) | 2014-01-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Pandey et al. | A comprehensive performance analysis of proactive, reactive and hybrid manets routing protocols | |
| US8139504B2 (en) | System, device, and method for unifying differently-routed networks using virtual topology representations | |
| US10524308B2 (en) | Method for decentralized clustering in wireless sensor networks | |
| CN104602302B (zh) | 一种基于分簇结构的ZigBee网络能量均衡路由方法 | |
| CN101951655B (zh) | 无线传感器网络中一种基于地理信息的反应式路由协议 | |
| Gherbi et al. | Distributed energy efficient adaptive clustering protocol with data gathering for large scale wireless sensor networks | |
| AU2009338150B2 (en) | Communication scheduling of network nodes using a cluster coefficient | |
| US20170019869A1 (en) | Method and device for transreceiving signals through nan terminal in wireless communication system | |
| CN109041010A (zh) | 基于半朴素贝叶斯分类器的车载容迟网络数据转发方法 | |
| US20120155322A1 (en) | Method And Apparatus For Network Node Discovery | |
| Aby et al. | SLACK-MAC: Adaptive MAC protocol for low duty-cycle wireless sensor networks | |
| ES2396766B1 (es) | Método y sistema de conformación de haz distribuida en redes de nodos inalámbricos, y nodo inalámbrico aplicable a tal sistema | |
| Dragonas et al. | A disjoint frame topology-independent TDMA MAC policy for safety applications in vehicular networks | |
| Waqas et al. | A method to reduce route discovery cost of uav ad hoc network | |
| Karthikeyan et al. | An energy efficient neighbour node discovery method for wireless sensor networks | |
| CN103747498A (zh) | 基于方向角度的无线传感网络路由空洞优化方法 | |
| WO2011128475A1 (es) | Método y sistema de conformación de haz distribuida en redes de nodos inalámbricos, v nodo inalámbrico aplicable a tal sistema | |
| CN105704808A (zh) | 多跳自组织网络的分布式时间同步方法 | |
| Kim et al. | Energy-aware connected dominating set construction in mobile ad hoc networks | |
| US10813033B1 (en) | Partitioned network routing | |
| Soni et al. | Location-based routing protocols in wireless sensor networks: a survey | |
| Sakai et al. | Fast connected dominating set construction in mobile ad hoc networks | |
| CN104244440A (zh) | 一种DV-hop定位系统中基于协议序列的帧碰撞避免方法 | |
| Zhang et al. | Body-to-body network routing algorithm based on link comprehensive stability | |
| Darif et al. | No communication nodes synchronization for a low power consumption MAC Protocol in WSN based on IR-UWB |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FG2A | Definitive protection |
Ref document number: 2396766 Country of ref document: ES Kind code of ref document: B1 Effective date: 20140115 |