Patent Description:
Wireless sensor networks provide a number of benefits such as flexibility, scalability, or energy efficiency. In particular, the wireless sensor networks may be applied to various aircraft applications in the aerospace industry. The wireless sensor networks may support a variety of aircraft applications involving battery operated wireless sensor devices. Long battery life is a key design driver for such applications which drives power saving options. A wireless sensor network is disclosed in <CIT>.

Precise time synchronization between the wireless nodes and the wireless communication coordinators is essential for effective message scheduling to achieve seamless and reliable communication among network elements. Variable time drifts in the device clocks, especially the nano-power timing circuit of the battery powered wireless nodes, makes time synchronization process complicated in low data rate and low duty cycle operations. When the disconnected wireless nodes attempt to reconnect to the network, the reconnect mechanism and message scheduling are not handled due to the loss of synchronization with respect to the master clock. Poor time synchronization among the network elements leads to data loss and unreliable communication performance. Hence, there is a need to improve the quality of time synchronization in these networks while meeting the stringent energy conservation requirements. Therefore, it would be advantageous to provide a device, system, and method that cures the shortcomings described above.

A wireless sensor network is provided, in accordance with the present invention as defined by the appended claims. The wireless sensor network includes a wireless node. In another embodiment, the wireless node includes a sensor, a transceiver, a battery, and a timing circuit. In another embodiment, the timing circuit includes a duty cycle. In another embodiment, the duty cycle includes a sleep duration during which the wireless node is in a low-power state and a wake duration during which the wireless node is in an active state. In another embodiment, during the active state the wireless node is configured to receive a polling request by the transceiver, generate sensor data by the sensor, and transmit the sensor data by the transceiver. In another embodiment, the wireless sensor network includes a data controller. In another embodiment, the data controller includes a reference clock. In another embodiment, the data controller is configured to transmit a plurality of polling requests to the transceiver of the wireless node. In another embodiment, the plurality of polling requests include the polling request received by the transceiver during the active state. In another embodiment, the plurality of polling requests are transmitted according to a polling request schedule. In another embodiment, the data controller is further configured to receive the sensor data transmitted by the transceiver and generate a receipt time for the sensor data by the reference clock. In another embodiment, the wireless sensor network includes a network manager. In another embodiment, the network manager is configured to bi-directionally communicate with the data controller. In another embodiment, the network manager is further configured to transmit a first configuration message to the data controller for initializing the data controller and the wireless node. In another embodiment, the network manager is further configured to adaptively generate the polling request schedule for the plurality of polling requests based on at least the receipt time, the sleep duration of the wireless node, and a tolerance of the timing circuit.

A method is also described, which includes, transmitting, to a data controller, a first configuration message from a network manager and an association request from a wireless node. In another embodiment, the first configuration message includes at least a wireless node identification, a wake duration, and a sleep duration. In another embodiment, the method includes, authenticating, by the data controller, the wireless node based on the wireless node identification and the association request. In another embodiment, the method includes, transmitting a second configuration message from the data controller to the wireless node. In another embodiment, the second configuration message includes at least the wake duration and the sleep duration. In another embodiment, the method includes configuring a duty cycle of a timing circuit of the wireless node based on at least the wake duration and the sleep duration. In another embodiment, the wireless node is in a low-power state during the sleep duration. In another embodiment, the wireless node is in an active state during the wake duration. In another embodiment, the method includes transmitting an acknowledgement message from the wireless node to the data controller.

A method is also described, which includes generating, by a network manager, a polling request schedule. In another embodiment, the polling request schedule is based on at least a receipt time at which sensor data is received by the data controller from a wireless node, a sleep duration of a timing circuit of the wireless node, and a tolerance of the timing circuit. In another embodiment, the method includes transmitting a plurality of polling requests from the data controller to the wireless node. In another embodiment, the plurality of polling requests are transmitted according to the polling request schedule. In another embodiment, the method includes receiving, to the wireless node, a polling request of the plurality of polling requests during an active state of the wireless node. In another embodiment, the method includes transmitting, to the data controller from the wireless node, the sensor data.

Implementations of the concepts disclosed herein may be better understood when consideration is given to the following detailed description thereof. Such description refers to the included drawings, which are not necessarily to scale, and in which some features may be exaggerated, and some features may be omitted or may be represented schematically in the interest of clarity. In the following, the invention is best understood in view of <FIG> and <NUM> to <NUM>. The remaining embodiments, aspects, or examples are included in order to help the reader better understand the invention. In the drawings:.

Broadly the present disclosure is directed to a wireless sensor network (WSN). The wireless sensor network may support applications involving battery operated wireless sensors, such as, aircraft applications. Power saving options like low duty cycle operation and nano-power timing circuits may improve a battery life of the wireless sensors. In some embodiments, the timing circuit is an analog circuit. The timing circuit may include a provision for configuring duty cycle settings. Time synchronization is provided to achieve reliable communication in the wireless sensor network. Variable time drift in the nano-power timing circuit is accounted for to improve the time synchronization in such low data rate and duty cycle operations. Time synchronization may occur through exchange of configuration data among the network elements during a configuration phase and data polling and adaptive message scheduling in a communication phase. Such time synchronization may improve a communication reliability in the wireless sensor networks. Clock synchronization and group-based time slot management. Methods for time synchronization may be adaptive to dynamic changes in the network configuration of a network scale and wireless node data rate. By adapting the polling requests, a reduction in radio frequency emissions and channel congestion may be provided. Such reduction in congestion may support scalability of the network for additional wireless nodes. Algorithms are also described to time re-synchronize network elements that lose synchronization during longer operation. Thus, the wireless sensor network may support low data rate, low duty cycle operation of wireless nodes with nano-powered timers.

Referring now to <FIG>, an architecture <NUM> for wireless avionics networks is described, in accordance with one or more embodiments of the present disclosure. An Architecture for Wireless Avionics Communication Network is described in <CIT>. The architecture provided therein may include a fault-tolerant design with a hierarchical topology.

The architecture <NUM> may include several aircraft applications <NUM>. The aircraft applications <NUM> can include applications such as Integrated Vehicle Health Management (IVHM), Engine Health Management (EHM), System Health Management (SHM), Prognostics and Health Management (PHM), data loggers, or others.

At a first layer of the architecture <NUM>, a network manager <NUM> is configured to communicate with external applications such as the aircraft applications <NUM> and a network <NUM>. The network manager <NUM> may be configured for bi-directional communication <NUM> with the data controllers 108a-108n over a wired connection or wireless connection.

A second layer includes one or more data controllers 108a - 108n. The data controllers <NUM> may be configured for bi-directional communication with the network manager <NUM>. The data controllers <NUM> may also be configured for bi-directional communication with wireless nodes <NUM> by a wireless connection. The data controllers <NUM> are capable of synchronous and asynchronous communication. Also, the data controllers <NUM> are capable of aggregating/consolidating the data received from the wireless nodes <NUM> and transmitting the aggregated data to the network manager <NUM>. The data controllers <NUM> may also be configured with receive queues/buffers to buffer data that is received at various data rates.

A third layer of the architecture <NUM> includes one or more wireless nodes such as wireless nodes <NUM>. The wireless nodes <NUM> are configured for bi-directional communication with the data controllers <NUM> by a transceiver of the wireless node <NUM>. The wireless nodes <NUM> are configured to transmit and receive data at different rates and priorities. In addition, the wireless nodes <NUM> can be grouped into different clusters <NUM> that are associated with respective wireless data controllers <NUM> by various techniques. The wireless nodes <NUM> may include devices such as but not limited to wireless sensor nodes, wireless actuator nodes, and the like. The wireless nodes <NUM> may communicate with the data controllers <NUM> over wireless channels of communication on a specified bandwidth. The wireless nodes <NUM> may be battery powered. Such battery power may be advantageous where the wireless nodes <NUM> are located in a location which not easily accessible, such as, an exterior sensor on an aircraft hull.

The data controller <NUM> forms the sensor cluster <NUM> and manages a finite set of wireless nodes <NUM> in that sensor cluster <NUM>. An aircraft may provide the power to network manager <NUM> and data controller <NUM>. The wireless nodes <NUM> may be battery powered.

The wired connection may include any wireline communication protocol (e.g., DSL-based interconnection, cable-based interconnection, T9-based interconnection, and the like) known in the art. Similarly, the wireless connections may include any communication protocol (e.g., GSM, GPRS, CDMA, EV-DO, EDGE, WiMAX, <NUM>, <NUM>, <NUM> LTE, <NUM>, Wi-Fi protocols, RF, Bluetooth, and the like) known in the art.

Referring now to one or more embodiments of the present disclosure. The embodiments and the enabling technologies described in the context of the system <NUM> should be interpreted to extend to various processes or method described herein, such as, but not limited to, the sequence diagram <NUM>, the sequence diagram <NUM>, the sequence diagram <NUM>, the sequence diagram <NUM>, or the sequence diagram <NUM>. It is further recognized, however, that the processes and methods described herein are not limited to the system <NUM>.

The network manager <NUM> may establish the network <NUM> and wait for the incoming data controller <NUM> connections. The data controller <NUM> connects to the network manager <NUM> when the data controller <NUM> discovers the network manager <NUM> in the network <NUM>. The data controller <NUM> then receives a configuration message from the network manager <NUM>. The wireless node <NUM> may attempt to associate to the data controller <NUM> referring to a preconfigured data controller <NUM> coordinators list. The wireless node <NUM> associates to the data controller <NUM> if available and receives the configuration message which includes a duty cycle configuration.

The wireless nodes <NUM> may include a duty cycle. The duty cycle may include an active state. During the active state various components of the wireless node may be powered for full operational capability. Such components may include, but are not limited to, the timing circuit, the sensor, and/or the transceiver. The duty cycle may also include a low-power state. During the low-power state a transceiver and a sensor of the wireless node may be unpowered, such that, a power consumption of a battery of the wireless node <NUM> may be reduced. The duty cycle of the wireless nodes <NUM> may be relatively low (on the order of once per minute, or once per several minutes), such that the wireless nodes <NUM> may be in the low-power state for a sleep duration sleep and an active state for a wake duration. During the wake duration, the wireless nodes <NUM> may wait for incoming polling requests. Upon receiving the polling requests, the wireless nodes <NUM> may send a data sample and then transition to sleep. The wireless nodes <NUM> may transition to sleep as per a fixed or a variable wake cycle configuration.

The duty cycle may be based on a timing circuit of the wireless node <NUM>. The duration of the active state may be based on the wake duration of the timing circuit. Similarly, the duration of the low-power state may be based on the sleep duration of the timing circuit. In some embodiments, the sleep duration and the wake duration may be configurable. Such configuration may be provided by the configuration message from the data controller <NUM>. The timing circuit may be configured according to the sleep duration and the wake duration during an initial association of the wireless node <NUM> with the network <NUM> or during a reassociation of the wireless node <NUM>.

The timing circuit may not include a memory to store an absolute time. Instead, the duty cycle may be set by passive components of the timing circuit, such as, resistors, capacitors, inductors, and one or more switches of the timing circuit. By the switches, the duty cycle of the wireless node <NUM> may be configured initially during the association. In some embodiments, the timing circuit of the wireless nodes <NUM> includes a nano-power timing circuit. In this regard, during the low-power state, the nano-power timing circuit uses less than one-thousand nanowatts of power during the low-power state. This may be advantageous for prolonging the battery life of the wireless node <NUM>.

The timing circuit may include a clock drift. Over time, the clock drift may accumulate such that the wireless node <NUM> becomes desynchronized with a reference clock, such as, but not limited to, a reference clock of the network manager <NUM> or the data controller <NUM>. In some embodiments, the network manager <NUM> may accommodate for the clock drift of the timing circuit by adaptive scheduling of polling requests for the data controller <NUM> to transmit to the wireless node <NUM>. As the wireless nodes <NUM> operate, the network manager <NUM> may be provided with information about the sleep duration and wake duration of the wireless nodes <NUM>. This information may allow the network manager <NUM> to schedule the synchronized data polling request message. This coordination may be performed at the first association and during subsequent polling requests.

Referring now to <FIG>, a sequence diagram <NUM> is described in accordance with one or more embodiments of the present disclosure. The sequence diagram <NUM> may illustrate a method of time synchronization between network elements in an energy sensitive wireless sensor network.

During an initialization phase, the network elements may be time synchronized by sharing configuration parameters. The configuration parameters may be shared between the network manager <NUM>, the data controller <NUM>, and the wireless node <NUM>. The configuration messages may be exchanged among the network elements during an initialization phase. The configuration parameters may include duty cycle information.

Furthermore, polling data and adaptive message scheduling may be exchanged among the network elements during a communication phase. Adaptive message scheduling may be performed by the network manager <NUM> to maintain time synchronization between the network elements. The network manager <NUM> may perform adaptive scheduling of polling requests sent from the data controller <NUM> to the wireless node <NUM>. The adaptive scheduling of the data polling requests may be based on the duty cycle together with a previous response time from the wireless node <NUM>. The schedule may also be based on a tolerance of the wireless node <NUM> timing circuit. The network manager <NUM> may synchronize the network elements, schedule the polling messages to align with wireless node <NUM> active states and handle out-of-sync network elements. Details of these algorithms are explained further herein.

A configuration message <NUM> may be sent from the network manager <NUM> to the data controller <NUM>. The configuration message <NUM> may include configuration parameters, such as, but not limited to, a wireless node identification (ID), a cluster size, a sleep duration, or a wake duration, or a fixed/variable wake cycle. The wireless node identification may provide for authentication of the wireless nodes <NUM> for joining the cluster <NUM> of the data controller <NUM>. The cluster size may limit the number of wireless nodes <NUM> eligible for joining the cluster <NUM> of the data controller <NUM>. The sleep duration may be a sleep duration for one or more wireless nodes <NUM> of the cluster <NUM>. The sleep duration may be used in message scheduling by the network manager <NUM> and for sleep operations by the wireless node <NUM>. The wake duration may be a wake duration for one or more wireless nodes <NUM> of the cluster <NUM>. The wake duration may be used in message scheduling by the network manager <NUM> and for wake operations by the wireless node <NUM>. The fixed/variable wake cycle may be used in message scheduling by the network manager <NUM>.

The data controller <NUM> may receive the configuration message <NUM> and configure the cluster <NUM> based on one or more of the configuration parameters (e.g., the cluster size). The data controller <NUM> may then wait for incoming association requests from the wireless nodes <NUM>.

On power up, the wireless node <NUM> may perform a scan and send an association request <NUM> to the data controller <NUM>. The association request <NUM> may include, but is not limited to, an identification of the wireless node <NUM>. Although the association request <NUM> is depicted as being sent from the wireless node <NUM> to the data controller <NUM> after the data controller <NUM> receives the configuration message <NUM>, this is not intended to be limiting. In some embodiments, the wireless node <NUM> sends the association request <NUM> to the data controller <NUM> and then the data controller <NUM> receives the configuration message <NUM>. However, the data controller <NUM> may be unable to authenticate the wireless node <NUM> until after receiving both the configuration message <NUM>, including the wireless node identification, and the association request <NUM>.

The data controller <NUM> may receive the association request <NUM> and compare the association request <NUM> with the wireless node identifications in the cluster <NUM>. Based on the comparison, the data controller <NUM> may send an association response to the wireless node <NUM>. Upon determining the wireless node <NUM> is not authenticated to join the cluster <NUM>, the association response sent from the data controller <NUM> to the wireless node <NUM> may include a rejection message (not depicted). Upon determining the wireless node <NUM> is authenticated to join the cluster <NUM>, the association response sent from the data controller <NUM> to the wireless node <NUM> may include a configuration message <NUM>. The configuration message <NUM> may include configuration parameters, such as, but not limited to, the sleep duration, the wake duration, or the fixed/variable wake cycle.

The wireless node <NUM> may receive the configuration message <NUM> and configure one or more components based on one or more of the configuration parameters. The wireless node <NUM> may configure the timing circuit based on the sleep duration and the wake duration. During the sleep duration, a power consumption of the wireless node <NUM> may be reduced, such that the transceiver and the sensor are unpowered. For example, where sensor of the wireless node <NUM> is a temperature sensor, the wireless node <NUM> may be configured with a sleep duration between fifteen and thirty minutes. During the wake duration, the transceiver and the sensor may be powered, such that the wireless node may receive data polling requests by the transceiver and generate sensor data by the sensor. Thus, the duty cycle of the wireless node <NUM> may be configured based on the configuration message <NUM>.

Similarly, the timing circuit may be configured based on the fixed wake cycle or the variable wake cycle. Where the timing circuit is configured with the variable wake cycle, the wireless node <NUM> may transmit a data sample immediately upon receiving a data polling request and generating a sensor measurement. Where the timing circuit is configured with the fixed wake cycle, the wireless node <NUM> may transmit the data sample after receiving the data polling request, generating the sensor measurement, and waiting until the end of the wake duration.

Upon configuring the components, the wireless node <NUM> may transmit an acknowledgement message <NUM> to the data controller <NUM>. The acknowledgement message <NUM> may include a confirmation that the wireless node <NUM> is configured according to the configuration parameters. The wireless data controller <NUM> may receive the acknowledgement message <NUM> from the data controller <NUM> at an acknowledgement receipt time. In some embodiments, subsequent to sending the acknowledgement <NUM>, the node <NUM> may remain in an active state until after a first polling request <NUM> is received and a polling response <NUM> is transmitted (as depicted). In some embodiments, the node <NUM> may begin the low-power portion of the duty cycle immediately after sending the acknowledgement message <NUM> (not depicted).

The data controller <NUM> may then transmit an acknowledgement message <NUM> to the network manager <NUM>. The acknowledgement message <NUM> may include a list of wireless nodes <NUM> in the cluster <NUM> of the data controller <NUM>, and a confirmation that the wireless nodes <NUM> are configured according to the various configuration parameters. Adaptive message scheduling will then be handled in a communication phase.

The network manager <NUM> may receive the acknowledgement message <NUM> and initiate a scheduling algorithm. The network manager <NUM> may schedule a first series of data polling request messages to the wireless nodes <NUM> after receiving the acknowledgement for the configuration message. The scheduling algorithm may determine a polling request schedule <NUM>. The polling request schedule <NUM> may be a time at which a series of polling requests may be sent from the data controller <NUM> to the wireless node <NUM>. The polling request schedule <NUM> may be determined based on a sleep duration of the wireless node, a tolerance of the timing circuit, and a receipt time of a previous polling response. By the adaptive scheduling of the polling requests, the number of polling requests sent by the data controller <NUM> may be reduced. Reducing the number of polling requests sent by the data controller <NUM> may similarly reducing a channel congestion. The reduced channel congestion may increase a number of available wireless nodes able to communicate with the data controller <NUM> by the channel. The network manager <NUM> may transmit the first polling request schedule <NUM> to the data controller <NUM>.

The data controller <NUM> may receive the polling request schedule <NUM> from the network manager <NUM>. The data controller <NUM> may then transmit polling requests <NUM> to the wireless node <NUM> according to the polling request schedule <NUM>. The wireless node <NUM> may receive one of the data polling request messages, send a polling response including sensor data, and enters a low-power state.

The data controller <NUM> may receive the polling response and generate a receipt time at which the polling response is received by the data controller <NUM>. The time may be determined by one or more clocks of the data controller <NUM>. In some embodiments, the clock of the data controller <NUM> is synchronized with a master clock of the network manager <NUM>. The data controller <NUM> may then transmit a controller response <NUM> to the network manager <NUM>, the controller response <NUM> including the polling response <NUM> and the receipt time.

The network manager <NUM> may receive the controller response <NUM>. Such controller response <NUM> may be used by the network manager <NUM> for coordinating a subsequent polling request schedule. The network manager <NUM> may consider the receipt time as the start of the low-power state wireless node <NUM>. The network manager <NUM> then schedules the second series of data polling request messages prior to the start of the active state of the wireless node. The schedule may be based on the sleep duration of the wireless node <NUM>, a tolerance of the wireless node timing circuit, and the receipt time. Furthermore, the sensor data may be provided to various aircraft applications <NUM>.

A second batch of polling requests may then be sent from the data controller <NUM> to the wireless node <NUM>, according to the second polling request schedule. For example, <FIG> depicts a second batch of polling request 212a, polling request 212b, and polling request 212c. The polling requests 212a and polling request 212b are not received by the wireless node <NUM>. In some instances, the polling request 212a and polling request 212b are not received by the wireless node <NUM> because the wireless node <NUM> is in the sleep duration such that the transceiver of the wireless node <NUM> is not currently in an active state. The network manager <NUM> may have scheduled the polling requests 212a and polling request 212b during the low-power state, because an actual time drift associated with the timing circuit of the wireless node <NUM> is unknown by the network manager <NUM>.

The wireless node <NUM> transitions into a second active state after the sleep duration and waits to receive one of the second batch of data polling request. The polling request 212c may be received by the wireless node <NUM> (i.e., by way of the transceiver during the wake duration). In response to receiving the polling request 212c, the wireless node <NUM> may generate sensor data by the sensor. The wireless node <NUM> may then transmit a polling response <NUM> including the sensor data to the data controller <NUM> by way of the transceiver. Subsequent to transmitting the polling response <NUM>, the wireless node <NUM> may be put into sleep mode. Where the timing circuit is configured with the fixed wake cycle, the wireless node <NUM> may transmit the polling response <NUM> at the end of the wake duration or prior to the end of the wake duration. Where the timing circuit is configured with the variable wake cycle, the wireless node <NUM> may transmit the polling response <NUM> immediately upon measurement by the sensor. In this regard, the wireless node <NUM> may be put into sleep mode before the wake duration has expired. This may be advantageous in reducing a power consumption of the wireless node <NUM>.

The data polling request and response sequence is then continued for a desired number of duty cycles of the wireless node <NUM>. The network manager <NUM> may adapt and generate the polling request schedules for any number (N) of duty cycles. In some embodiments, the duty cycles may continue throughout a flight of an aircraft.

Furthermore, although <FIG> depicts a wireless node <NUM> and a data controller <NUM>, this is not intended as a limitation on the present disclosure. In this regard, <FIG> depicts the network <NUM> with a plurality of data controllers <NUM>, with each data controller <NUM> including a cluster <NUM> with a plurality of wireless nodes <NUM>. The network manager <NUM> may generate the polling request schedule <NUM> for such network <NUM>.

Referring now to <FIG>, sequence diagrams 300a and 300b are described, in accordance with one or more embodiments of the present disclosure. The sequence diagrams 300a and 300b may depict one or more methods of accounting for timing drift by an algorithm. The algorithm of the network manager <NUM> for determining the schedule of polling requests may consider variations in the time behavior of the wireless node <NUM>, thereby accounting for timer drifts in the wake duration or the sleep duration.

The wireless node <NUM> may include a turnaround time. The turnaround time may indicate a time between a polling request which is received by the wireless node <NUM> to a response at the data controller. In some embodiments, the turnaround time is a fixed turnaround time. The fixed turnaround time may be determined empirically based on the type of the wireless node. Such fixed turnaround time may be stored in a configuration file of the network manager <NUM>. In some embodiments, the turnaround time is a variable turnaround time. The variable turnaround time may be based on timer drift analysis for previous turnaround times between the data controller <NUM> and the wireless node. For example, <FIG> depict the node turnaround time based on the immediately previous (i-<NUM>) node turnaround time (e.g., T. RECEIPT(i-<NUM>) - T. SEND(i-<NUM>) = Node Turnaround Time). The variable node turnaround time may be similarly based on multiple historical turnaround times between the data controller <NUM> and the wireless node <NUM>. In some embodiments, the variable turnaround time is adapted from the fixed turnaround time.

The timing circuit of the wireless node <NUM> may include a tolerance (T. The tolerance may be based on statistics of the error associated with the timing circuit.

The network manager <NUM> may schedule a series of polling request messages R1 to RN. The polling requests may be scheduled such that a time window between any two polling requests is at least equal to the turnaround time. In this regard, the wireless node <NUM> will have sufficient time to respond to the previous polling request before the next polling request is sent. Advantageously, scheduling the polling requests within this time window may reduce channel congestion. Additionally, the time window may be less than or equal to half of the wake duration. Providing polling requests at a higher rate than wireless node's wake duration may allow the wireless node <NUM> to receive the polling request without the awake state of the wireless node falling between sequential polling requests. For example, <FIG> depict T. WAKE / <NUM> >= T. R1(i) >= T. RECEIPT - T. Although the window between any successive requests is described as being contained within this boundary, such boundary is not intended as a limitation on the present disclosure. In this regard, a minimum time between successive requests may be reduced, at a cost of channel congestion.

The schedule for the current duty cycle (i) may include a series of request R1 to RN based on the previous time at which the polling response from the wireless node <NUM> is received (T.

After the completion of the previous duty cycle (i-<NUM>), a first polling request R1(i) for the current duty cycle (i) starts at a time T. The time T. R1(i) of the first polling request may be based on the receipt time of the previous polling response, the sleep duration of the timing circuit, and the tolerance of the timing circuit. For example, <FIG> depicts T. RECEIPT + T. In some embodiments, the timing circuit is configured with a fixed wake cycle. Where the timing circuit is configured with a fixed wake cycle, the timing circuit may include a remaining wake duration T. REMAIN after transmitting the polling response. The remaining wake duration may be transmitted with the polling response. The network manager <NUM> may account for the remaining wake duration, such that the time of the first polling request for the current duty cycle (i) may also be based on the wake duration. For example, <FIG> depicts T. RECEIPT + T.

Similarly, a final polling request RN(i) for the current duty cycle (i) may be based on the receipt time of the previous polling response, the sleep duration of the timing circuit, and the tolerance of the timing circuit. For example, <FIG> depicts T. RECEIPT + T. In some embodiments, the timing circuit is configured with a fixed wake cycle. Where the timing circuit is configured with a fixed wake cycle, the timing circuit may include the remaining wake duration (e.g., T. REMAIN) after transmitting the polling response. The network manager <NUM> may account for the remaining wake duration, such that the time of the final polling request for the current duty cycle (i) may also be based on the wake duration. For example, <FIG> depicts T. RECEIPT + T.

Based on the above, a duration between the first polling request R1(i) and the final polling request RN(i) of the duty cycle (i) may be based on the wake duration and twice the tolerance of the timing circuit. For example, T. WAKE + <NUM> * T.

As may be understood, the various formulas provided herein are not intended to be limiting, unless otherwise provided. Modifications may be made to the formulas while still performing adaptive scheduling of the polling requests based on the timing receipt, the sleep duration, or the tolerance, among others.

The network manager <NUM> may schedule polling requests for multiple data controllers <NUM>, multiple nodes <NUM>, or multiple clusters <NUM>. Polling request scheduling for each wireless node <NUM> is handled based on respective wake durations of the wireless nodes <NUM>.

Referring now to <FIG>, a sequence diagram <NUM> is described, in accordance with one or more embodiments of the present disclosure. The sequence diagram <NUM> may illustrate a method of scheduling for multiple wireless nodes.

In some embodiments, the cluster <NUM> may include multiple wireless nodes <NUM>. Each wireless node <NUM> may include a wake duration. The network manager <NUM> may schedule the data polling requests for each of such wireless nodes <NUM>. In some instances, the active states of the wireless nodes <NUM> may at least partially overlap. When the network manager <NUM> has to schedule data polling request messages for multiple wireless nodes <NUM> due to wake cycles of multiple nodes occurring at a same or similar time, a sequential scheduling method may be used to sequence the requests. For example, a wireless node 110a and a wireless node 110b may wake up at a similar time, such that the active state of the wireless node 110a and the active state of the wireless node 110b may at least partially overlap. The network manager <NUM> may generate the polling request schedule such that the polling requests from the data controller <NUM> do not overlap in a transmission channel. In this regard, the polling request transmitted to the wireless node 110a and the polling requests transmitted to the wireless node 110b may be sequential. Such sequential transmission may be advantageous such that each wireless node <NUM> may receive polling requests during the active state.

Referring now to <FIG>, a sequence diagram <NUM> is described, in accordance with one or more embodiments of the present disclosure. The sequence diagram <NUM> may illustrate a method of wireless node re-synchronization.

Wireless nodes <NUM> may lose synchronization with the network manager <NUM>. For example, the wireless nodes <NUM> may lose synchronization for various reasons, such as, during longer operations, by delays in the wireless node <NUM>, or a momentary reset of the wireless node <NUM>. When the wireless node <NUM> loses synchronization with the network manager <NUM>, the data controller <NUM> does not receive the polling response in response to the polling requests. In some embodiments, additional polling requests may be retransmitted to the wireless node <NUM>. The additional polling requests may be transmitted with an interval similar to that set forth in the schedule from the network manager. The wireless node <NUM> may receive a polling request of the additional polling requests and transmit the sensor data. The controller response including the polling response together with a receipt time may then be transmitted to the network manager <NUM>. The network manager may then generate a subsequent polling request schedule for the wireless node <NUM> based on the time of receipt of the sensor data, per the adaptive message scheduling previously described herein. By continuing the additional polling requests the data controller <NUM> may resynchronize with the wireless node <NUM>, at the cost of taking up the wireless channel. In the event that no response is received from the wireless node <NUM> to the data controller <NUM> for a time, polling request scheduling may be stopped for that wireless node <NUM>. The polling request scheduling may be stopped until the wireless node is re-associated with a data controller of the network <NUM>.

Referring now to <FIG> a sequence diagram <NUM> depicting a method for reassociating wireless nodes is described, in accordance with one or more embodiments of the present disclosure. A timeout may occur at the network manager <NUM> or the data controller <NUM>. Various scenarios may require the data controller <NUM> or the network manager <NUM> to re-associate the wireless nodes <NUM>. Such scenarios may include, but are not limited to, power loss at the network manager <NUM>, power loss at the data controller <NUM>, reset of the network manager <NUM>, or reset of the data controller <NUM>. Depending upon the communication loss, the data controller <NUM> may re-establish either the cluster <NUM> or the network manager <NUM> may re-establish the network <NUM>. In these cases, data requests will not be received from the network manager <NUM> to the wireless nodes <NUM>.

The following operations may be performed as part of the re-association process. The wireless node <NUM> may be currently associated with the data controller 108a. If the wireless node <NUM> does not receive any data request from the data controller 108a during the wake duration (e.g., TON), the wireless node <NUM> may attempt to associate with a next available data controller, such as the data controller 108b. The wireless node <NUM> may transmit the association request to the data controller 108b. The data controller 108b may authenticate the wireless node <NUM> based on the association request and a wireless node identification portion of a configuration message received from the network manager <NUM>. Upon successful authentication, the data controller 108b may transmit the configuration message to the wireless node <NUM> and await an acknowledgement. Adaptive message scheduling, polling requests, and sensor data communication may then commence. As depicted in <FIG>, the wireless node <NUM> may remain in the active state past the wake duration for reassociation purposes. Alternatively, the wireless node <NUM> may reassociate during the next active state. However, remaining in the active state past the wake duration may be advantageous in more rapidly reassociating the wireless node <NUM> and similarly receiving the sensor data.

The herein described methods may improve a communication reliability of wireless sensor networks with battery powered elements through time synchronization and adaptive message scheduling. The methods may support low data rate, low duty cycle operations of energy conservative wireless nodes with nano-powered timers. The time synchronization may be initialized by configuring a duty cycle of the wireless nodes. A reduction of radio frequency emissions from data controllers may occur through a selection of optimal time windows and data polling rates, thereby reducing channel congestion. By reducing channel congestion, the wireless sensor network may be scaled to include a greater number of wireless nodes.

The various methods provided herein may be adopted for wireless Health Monitoring applications within an aircraft, such as Integrated vehicle health management (IVHM), Prognostics and Health Management (PHM), System Health Management (SHM), Airplane Health Management (AHM), Engine Health Management (EHM), among others. Although example embodiments of the present disclosure are shown and described in an aircraft environment, the inventive concepts of the present disclosure may be configured to operate in any wireless networking known in the art. In the interest of simplicity and to most clearly define the inventive concepts of the present disclosure, embodiments may be described throughout the present disclosure in an aircraft environment. However, these references are not to be regarded as limiting. Thus, references to "aircraft" or "aviation," and like terms should not be interpreted as a limitation on the present disclosure, unless noted otherwise herein.

The herein described systems illustrates different components contained within, or connected with, other components by the network. It is to be understood that such depicted architectures are merely exemplary, and that in fact many other architectures can be implemented which achieve the same functionality. Likewise, any two components so associated can also be viewed as being "connected," or "coupled," to each other to achieve the desired functionality, and any two components capable of being so associated can also be viewed as being "couplable," to each other to achieve the desired functionality. Specific examples of couplable include but are not limited to wirelessly interactable and/or wirelessly interacting components and/or logically interacting and/or logically interactable components.

One or more components of the architecture <NUM> may include a processor, such as, but not limited to, the network manager <NUM>. For the purposes of the present disclosure, the term "processor" or "processing element" may be broadly defined to encompass any device having one or more processing or logic elements (e.g., one or more micro-processor devices, one or more application specific integrated circuit (ASIC) devices, one or more field programmable gate arrays (FPGAs), or one or more digital signal processors (DSPs)). In this sense, the one or more processors may include any device configured to execute algorithms and/or instructions (e.g., program instructions stored in memory).

The processor may be configured to execute a set of program instruction maintained on a memory medium. The memory may include any storage medium known in the art suitable for storing program instructions executable by the associated processor. For example, the memory medium may include a non-transitory memory medium. By way of another example, the memory medium may include, but is not limited to, a read-only memory (ROM), a random-access memory (RAM), a magnetic or optical memory device (e.g., disk), a solid-state drive and the like. It is further noted that memory medium may be housed in a common controller housing with the processor. In one embodiment, the memory medium may be located remotely with respect to the physical location of the one processor. By executing the program instructions, the processor may execute any of the various process steps described throughout the present disclosure, such as, but not limited to adaptive scheduling of polling requests.

The methods described herein may include storing results of one or more steps of the method embodiments in memory. The results may include any of the results described herein and may be stored in any manner known in the art. The memory may include any memory described herein or any other suitable storage medium known in the art. After the results have been stored, the results can be accessed in the memory and used by any of the method or system embodiments described herein, formatted for display to a user, used by another software module, method, or system, and the like. Furthermore, the results may be stored "permanently," "semi-permanently," temporarily," or for some period of time. For example, the memory may be random access memory (RAM), and the results may not necessarily persist indefinitely in the memory. It is further contemplated that each of the embodiments of the method described above may include any other step(s) of any other method(s) described herein. In addition, each of the embodiments of the method described above may be performed by any of the systems described herein. It is to be noted that the specific order of steps in the foregoing disclosed methods are examples of exemplary approaches. Based upon design preferences, it is understood that the specific order of steps in the method can be rearranged while remaining within the scope of the present disclosure.

One skilled in the art will recognize that the herein described components operations, devices, objects, and the discussion accompanying them are used as examples for the sake of conceptual clarity and that various configuration modifications are contemplated. Consequently, as used herein, the specific exemplars set forth and the accompanying discussion are intended to be representative of their more general classes. In general, use of any specific exemplar is intended to be representative of its class, and the non-inclusion of specific components, operations, devices, and objects should not be taken as limiting. Furthermore, the various geometries depicted in the accompanying figures are not intended to be limiting and that various modifications are contemplated.

It will be understood by those within the art that, in general, terms used herein, and especially in the appended claims are generally intended as "open" terms (e.g., the term "including" should be interpreted as "including but not limited to," the term "having" should be interpreted as "having at least," the term "includes" should be interpreted as "includes but is not limited to," and the like). It will be further understood by those within the art that if a specific number of an introduced claim recitation is intended, such an intent will be explicitly recited in the claim, and in the absence of such recitation no such intent is present. However, the use of such phrases should not be construed to imply that the introduction of a claim recitation by the indefinite articles "a" or "an" limits any particular claim containing such introduced claim recitation to inventions containing only one such recitation, even when the same claim includes the introductory phrases "one or more" or "at least one" and indefinite articles such as "a" or "an" (e.g., "a" and/or "an" should typically be interpreted to mean "at least one" or "one or more"); the same holds true for the use of definite articles used to introduce claim recitations. In addition, even if a specific number of an introduced claim recitation is explicitly recited, those skilled in the art will recognize that such recitation should typically be interpreted to mean at least the recited number (e.g., the bare recitation of "two recitations," without other modifiers, typically means at least two recitations, or two or more recitations). It will be further understood by those within the art that virtually any disjunctive word and/or phrase presenting two or more alternative terms, whether in the description, claims, or drawings, should be understood to contemplate the possibilities of including one of the terms, either of the terms, or both terms.

Claim 1:
A wireless sensor network comprising:
a wireless node (<NUM>) including a sensor, a transceiver, a battery, and a timing circuit, wherein the timing circuit includes a duty cycle including a sleep duration during which the wireless node is in a low-power state and a wake duration during which the wireless node is in an active state, wherein during the active state the wireless node is configured to receive a polling request (<NUM>) by the transceiver, generate sensor data by the sensor, and transmit the sensor data by the transceiver;
a data controller (<NUM>) including a reference clock, the data controller configured to transmit a plurality of polling requests to the transceiver of the wireless node, the plurality of polling requests including the polling request received by the transceiver during the active state, wherein the plurality of polling requests are transmitted according to a polling request schedule, the data controller further configured to receive the sensor data transmitted by the transceiver and generate a receipt time for the sensor data by the reference clock; and
a network manager (<NUM>), the network manager configured to bi-directionally communicate with the data controller, the network manager further configured to transmit a first configuration message to the data controller for initializing the data controller and the wireless node, and characterized in that the network manager is further configured to adaptively generate the polling request schedule for the plurality of polling requests based on at least the receipt time, the sleep duration of the wireless node, and a tolerance of the timing circuit.