Wireless body-area network time synchronization using R peak reference broadcasts
10375659 ยท 2019-08-06
Assignee
Inventors
Cpc classification
H04B13/005
ELECTRICITY
H04W4/06
ELECTRICITY
H04L67/12
ELECTRICITY
Y02D30/70
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
International classification
H04W4/70
ELECTRICITY
Abstract
A WBAN system for real-time telemonitoring health of a subject, involving a wearable biosignal sensors, each sensor of the sensors configured to measure a plurality of biosignals, ultra-low-power radios correspondingly coupled with the sensors; and a processor operable with at least one of the sensors and the radios, each radio of the radios configured to receive the biosignals from each corresponding sensor and to transmit the biosignals to a processor via a WBAN, and the processor configured to: receive the biosignals from the radios, process the biosignals via a set of executable instructions storable in relation to a nontransitory memory device, the set of executable instructions comprising an instruction for synchronizing time of the biosignals by using the broadcasted R peak reference, whereby real-time health data is providable, and transmit the real-time health data to a healthcare provider.
Claims
1. A WBAN system for real-time telemonitoring health of a subject, comprising: an ECG sensor; a plurality of wearable biosignal sensors comprising a plurality of ECG signals, the plurality of ECG signals providing ECG data, each sensor of the plurality of wearable biosignal sensors configured to measure a plurality of biosignals; a plurality of ultra-low-power radios correspondingly coupled with the plurality of sensors; and a processor operable with at least one of the plurality of sensors and the plurality of radios, each radio of the plurality of radios configured to receive the plurality of biosignals from each corresponding sensor and to transmit the plurality of biosignals to a processor via a WBAN, and the processor configured to: receive the plurality of biosignals from the plurality of radios, process the plurality of biosignals via a set of executable instructions storable in relation to a nontransitory memory device, the set of executable instructions comprising an instruction for synchronizing time of the plurality of biosignals by using the broadcasted R peak reference, whereby real-time health data is providable, and transmit the real-time health data to a healthcare provider; wherein the set of executable instructions comprises an instruction for performing an RBS, and whereby a nondeterministic latency arising from at least one of a transmitting time delay and an accessing time delay is eliminated; wherein the instruction for performing an RBS comprises an instruction for performing RB S by using a broadcast message corresponding to an R peak reference to synchronize each receiver of a set of receivers with one another, whereby each node in the set of receivers is configured to receive the same broadcast message, and whereby each node in the set of receivers respectively experiences a nondeterministic latency arising from only at least one of a propagation time delay and a receiving time delay; wherein the processor is configured to operate via one of: a first system architecture, wherein the ECG sensor is configured to transmit a short flag message every time that an R peak is detected, wherein the short flag message serves as a broadcast message to all devices, excluding the ECG sensor, in the WBAN, and wherein each receiving device records the time at which such device receives the short flag message; and a second architecture, wherein the ECG sensor is configured to transmit an entire ECG data stream, wherein the entire ECG data stream serves as a broadcast message to all devices, excluding the ECG sensor, in the WBAN, and wherein each receiving device is configured to perform an R peak detection on the entire ECG data stream and to determine a time at which each R peak occurs, wherein each R peak serves as a notable timestamp point for at least its distinct shape and facile identification, and wherein a set of times at which each R peak occurs defines t.sub.i.
2. The system of claim 1, wherein the broadcast message is transmittable to, and receivable by, one of a smartphone and any other device in the WBAN, wherein the broadcast message complies with at least one short-range, low-power, wireless, communication standard, wherein the at least one short-range, low-power, wireless, communication standard comprises at least one of IEEE 802.15.6 and Bluetooth, whereby each device in the WBAN, excluding the ECG sensor, is configured to receive and process the broadcast message in an absence of additional hardware.
3. A method of fabricating a WBAN system for real-time telemonitoring health of a subject, comprising: providing a plurality of wearable biosignal sensors, each sensor of the plurality of sensors configured to measure a plurality of biosignals; providing a plurality of ultra-low-power radios correspondingly coupled with the plurality of sensors; providing a processor operable with at least one of the plurality of sensors and the plurality of radios, providing the plurality of ultra-low-power radios comprising configuring each radio of the plurality of ultra-low-power radios to receive the plurality of biosignals from each corresponding sensor and to transmit the plurality of biosignals to the processor via a WBAN, wherein providing a plurality of ultra-low-power radios comprises providing the WBAN as a single-hop network, wherein any device in the WBAN is capable of directly communicating with any other device in the WBAN, wherein providing the WBAN as the single-hop network comprises providing the device as an ECG sensor, wherein the plurality of biosignals comprises a plurality of ECG signals, the plurality of ECG signals providing ECG data; providing the processor comprising configuring the processor to: receive the plurality of biosignals from the plurality of radios, process the plurality of biosignals via a set of executable instructions storable in relation to a nontransitory memory device, the set of executable instructions comprising an instruction for synchronizing time of the plurality of biosignals by using the broadcasted R peak reference, whereby real-time health data is providable, and transmit the real-time health data to a healthcare provider, wherein providing the processor comprises configuring the processor to operate via one of: a first system architecture, wherein the ECG sensor is configured to transmit a short flag message every time that an R peak is detected, wherein the short flag message serves as a broadcast message to all devices, excluding the ECG sensor, in the WBAN, and wherein each receiving device records the time at which such device receives the short flag message; and a second architecture, wherein the ECG sensor is configured to transmit an entire ECG data stream, wherein the entire ECG data stream serves as a broadcast message to all devices, excluding the ECG sensor, in the WBAN, and wherein each receiving device is configured to perform an R peak detection on the entire ECG data stream and to determine a time at which each R peak occurs, wherein each R peak serves as a notable timestamp point for at least its distinct shape and facile identification, and wherein a set of times at which each R peak occurs defines t.sub.i.
4. The method of claim 3, wherein the broadcast message is transmittable to, and receivable by, one of a smartphone and any other device in the WBAN, wherein the broadcast message complies with at least one short-range, low-power, wireless, communication standard, wherein the at least one short-range, low-power, wireless, communication standard comprises at least one of IEEE 802.15.6 and Bluetooth, whereby each device in the WBAN, excluding the ECG sensor, is configured to receive and process the broadcast message in an absence of additional hardware.
5. A method of real-time telemonitoring health of a subject by way of a WBAN system, comprising: providing the WBAN system, comprising: providing a plurality of wearable biosignal sensors, each sensor of the plurality of sensors configured to measure a plurality of biosignals; providing a plurality of ultra-low-power radios correspondingly coupled with the plurality of sensors; and providing a processor operable with at least one of the plurality of sensors and the plurality of radios; providing the plurality of ultra-low-power radios comprising configuring each radio of the plurality of ultra-low-power radios to receive the plurality of biosignals from each corresponding sensor and to transmit the plurality of biosignals to the processor via a WBAN, and providing the processor comprising configuring the processor to: receive the plurality of biosignals from the plurality of radios, process the plurality of biosignals via a set of executable instructions storable in relation to a nontransitory memory device, the set of executable instructions comprising an instruction for synchronizing time of the plurality of biosignals by using the broadcasted R peak reference, whereby real-time health data is providable, and transmit the real-time health data to a healthcare provider; performing RBS using a broadcast message, corresponding to an R peak reference, to synchronize each receiver of a set of receivers with one another, whereby each node in the set of receivers is configured to receive the same broadcast message, and whereby each node in the set of receivers respectively experiences only nondeterministic latencies from only propagation time delay and receiving time delay, wherein performing RBS comprises: assuming that a set of receivers comprises two nodes, the two nodes comprising a first node and a second node, wherein t.sub.first node,A denotes a time that event A occurs with respect to a clock corresponding to the first node; broadcasting N distinct messages B to the first node and the second node via a transmitting node, wherein the first node and the second node respectively record a receive time for the N distinct messages B, and whereby respective timestamps t.sub.first node,B={t.sub.first node,B1, . . . , t.sub.first node,BN}.sup.T and t.sub.second node,B={t.sub.second node,B1, . . . , t.sub.second node,BN}.sup.T are generated; exchanging respective timestamps t.sub.first node,B={t.sub.first node,B1, . . . , t.sub.first node,BN}.sup.T and t.sub.second node,B={t.sub.second node,B1, . . . , t.sub.second node,BN}.sup.T between the first node and the second node; and performing a least-squares regression in relation to the node i, thereby determining a best linear fit for an expression y=mx+b, wherein y=t.sub.jt.sub.i, x=t.sub.i, m=a clock skew, thereby determining a rate change of a difference in time between a node i clock and a node j clock, as measured in relation to the node i, and wherein b=a time difference between the node i clock and the node j clock at a time t.sub.i,B1, thereby enabling conversion of any timestamp from the node j clock to a timestamp which would have been generated by the node i clock, and thereby enabling conversion of any timestamp from the node i clock to a timestamp which would have been generated by the node j clock, whereby the two nodes of the set of receivers are synchronized with one another.
6. A method of real-time telemonitoring health of a subject by way of a WBAN system, comprising: providing the WBAN system, comprising: providing a plurality of wearable biosignal sensors, each sensor of the plurality of sensors configured to measure a plurality of biosignals; providing a plurality of ultra-low-power radios correspondingly coupled with the plurality of sensors; and providing a processor operable with at least one of the plurality of sensors and the plurality of radios; providing the plurality of ultra-low-power radios comprising configuring each radio of the plurality of ultra-low-power radios to receive the plurality of biosignals from each corresponding sensor and to transmit the plurality of biosignals to the processor via a WBAN, and providing the processor comprising configuring the processor to: receive the plurality of biosignals from the plurality of radios, process the plurality of biosignals via a set of executable instructions storable in relation to a nontransitory memory device, the set of executable instructions comprising an instruction for synchronizing time of the plurality of biosignals by using the broadcasted R peak reference, whereby real-time health data is providable, and transmit the real-time health data to a healthcare provider; performing RBS using a broadcast message, corresponding to an R peak reference, to synchronize each receiver of a set of receivers with one another, whereby each node in the set of receivers is configured to receive the same broadcast message, and whereby each node in the set of receivers respectively experiences only nondeterministic latencies from only propagation time delay and receiving time delay, wherein performing RBS comprises: assuming that a set of receivers comprises two nodes, the two nodes comprising a first node and a second node, wherein t.sub.first node,A denotes a time that event A occurs with respect to a clock corresponding to the first node; broadcasting N distinct messages B to the first node and the second node via a transmitting node, wherein the first node and the second node respectively record a receive time for the N distinct messages B, and whereby respective timestamps t.sub.first node,B={t.sub.first node,B1, . . . , t.sub.first node,BN}.sup.T and t.sub.second node,B={t.sub.second node,B1, . . . , t.sub.second node,BN}.sup.T are generated; exchanging respective timestamps t.sub.first node,B={t.sub.first node,B1, . . . , t.sub.first node,BN}.sup.T and t.sub.second node,B={t.sub.second node,B1, . . . , t.sub.second node,BN}.sup.T between the first node and the second node; and performing Deming regression in relation to a node i, thereby determining a best linear fit for an expression y=mx+b, wherein y=t.sub.jt.sub.i, x=t.sub.i, m=a clock skew, thereby determining a rate change of a difference in time between a node i clock and a node j clock, as measured in relation to the node i, and wherein b=the time difference between the node i clock and the node j clock at the time t.sub.i,B1, thereby enabling conversion of any timestamp from the node j clock to a timestamp which would have been generated by the node i clock, and thereby enabling conversion of any timestamp from the node i clock to a timestamp which would have been generated by the node j clock, whereby the two nodes of the set of receivers are synchronized with one another.
Description
BRIEF DESCRIPTION OF THE DRAWING
(1) The above, and other aspects, features, and benefits of several embodiments of the present disclosure are further understood from the following Detailed Description of the Invention as presented in conjunction with the following several figures of the Drawing.
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9) Corresponding reference numerals or characters indicate corresponding components throughout the several figures of the Drawing. Elements in the several figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be emphasized relative to other elements for facilitating understanding of the various presently disclosed embodiments. Also, common, but well-understood, elements that are useful or necessary in commercially feasible embodiments are often not depicted in order to facilitate a less obstructed view of these various embodiments of the present disclosure.
DETAILED DESCRIPTION OF THE EMBODIMENT(S)
Network Synchronization
(10) In accordance with embodiments of the present disclosure, various solutions for network synchronization are provided. For network synchronization, a challenge exists in the nondeterministic latencies in the exchange of timing messages from one node (a sending node) to another node (a receiving node) in a network. Examples of sources of these nondeterministic latencies include, but are not limited to, (a) a transmitting time delay, such as a time period required for generating a message and transmitting the message to a network interface, (b) an accessing time delay, such as a time period required in waiting for the network interface to gain access to a transmission channel, (c) a propagation time delay, such as a time period required for physically transmitting the message from the sending node to the receiving node, and (d) a receiving time delay, such as a time period required by a receiving network interface for receiving and processing the message.
(11) The propagation time delay, relative to some other forms of time delay, is short for a telemonitoring system, such as a WBAN system S (
Reference Broadcast Synchronization (RBS)
(12) In the system S, a processor 30 is operable by way of a set of executable instructions comprising an instruction for performing an RBS (
(13) In general, RBS is performed as follows: assuming that a set of receivers comprises two nodes, e.g., a node i and a node j, wherein t.sub.i,A denotes a time that event A occurs with respect to a clock corresponding to the node i; broadcasting N distinct messages B to the node i and the node j via a transmitting node, wherein the node i and the node j respectively record a receipt time for the N distinct messages B, and whereby respective timestamps t.sub.i,B={t.sub.i,B1, . . . , t.sub.i,BN}.sup.T and t.sub.j,B=[t.sub.j,B1, . . . , t.sub.j,BN].sup.T are generated; exchanging respective timestamps t.sub.i,B={t.sub.i,B1, . . . , t.sub.i,BN}.sup.T and t.sub.j,B=[t.sub.j,B1, . . . , t.sub.j,BN].sup.T between the node i and the node j; performing a least-squares regression in relation to the node i, thereby determining a best linear fit for the expression y=mx+b, wherein y=t.sub.jt.sub.i, x=t.sub.i, m=a clock skew, e.g., a rate of change in the time difference between the two clocks, as measured in relation to the node i, and b=the time difference between the two clocks at the time t.sub.i,B1, thereby enabling conversion of any timestamp from the node j's clock to a timestamp which would have been generated by the node i's clock, and, also, thereby enabling conversion of any timestamp from the node i's clock to a timestamp which would have been generated by the node j's clock, whereby the two nodes of the set of receivers are synchronized with one another. In this manner, RBS provides synchronization that is more precise than that provided by the related art systems that measure round-trip delay and also provides post-facto synchronization, e.g., wherein previous time offsets are now estimable at a later time by way of the WBAN system S via the processor 30.
(14) In the system S, the WBAN 60 comprises a single-hop network, e.g., wherein each device in the WBAN 60 can directly communicate with any other device in the WBAN 60, and wherein the device comprises another device, such as a wearable sensor 10, e.g., an ECG sensor, a smartphone 40, a smartwatch, an inertial measurement unit, a temperature sensor, a galvanic skin response sensor, any biometric sensor, and the like. If the wearable sensor 10 comprises an ECG sensor, and for at least that ECG data is generally analyzed for an RR interval, wherein the RR interval comprises a period of time between heart beats, and wherein P, Q, and R refer to characteristic peaks or points on an ECG signal waveform, and whereby heart-rate variability is determinable, the system S is configured to use two system architectures: a first architecture, Architecture A, wherein the ECG sensor is configured to transmit a short flag message every time that an R peak is detected, wherein the short flag message serves as a broadcast message to all devices, excluding the ECG sensor, in the WBAN 60, and wherein each receiving device records the time at which such device receives the short flag message; and a second architecture, Architecture B, wherein the ECG sensor is configured to transmit an entire ECG data stream, such as a compressed ECG data stream or an uncompressed ECG data stream, wherein the entire ECG data stream serves as a broadcast message to all devices, excluding the ECG sensor, in the WBAN 60, and wherein each receiving device, such as a device i is configured to perform an R peak detection on the entire ECG data stream and to determine a time at which each R peak occurs, wherein each R peak serves as a notable timestamp point for at least its distinct shape and facile identification, and wherein a set of times at which each R peak occurs defines t.sub.i.
(15) In both foregoing architectures used by the system S, the broadcast message is transmittable to, and receivable by, a smartphone 40 as well as by any other device in the WBAN 60. The broadcast message is compliant with short-range, low-power, wireless communications standards, e.g., IEEE 802.15.6 and Bluetooth, whereby each device in the WBAN 60, excluding the ECG sensor, is configured to receive and process the broadcast message without using any additional hardware. Relative to Architecture B, Architecture A does not require R peak detection at the receiving devices, consumes less power for at least that the ECG in Architecture A transmits significantly less data than otherwise transmitting via Architecture B, and has a lower receiving time delay. For many implementations, Architecture A is preferred for the system S.
(16) In the system S, implementing Architecture A, whenever any wearable sensor 10 of the plurality of wearable sensors 10 needs to transfer data to the smartphone 40, the sensor 10 also transmits N timestamps, corresponding to the reception times of the broadcast messages, whereby the smartphone 40 can convert the N timestamps from the sensor 10's clock to timestamps that would have been generated by the smartphone's clock (not shown), e.g., via the processor 30. However, if the sensor 10 stores its data and infrequently transmits such data to the smartphone 40, the N timestamps correspond to the time window within which data of interest has been measured, wherein the smartphone 40 is assumed to be synchronized to approximately 1.5 s of Coordinated Universal Time (UTC), whereby the smartphone's clock does not deviate much from the true time, as otherwise would the sensor 10's clock. The system S, implementing Architecture A, instead of using LS regression, in combination with RBS, for determining the best linear fit to the expression y=mx+b, the system S alternatively uses Deming regression, e.g., in combination with RBS, to account for errors in the timestamps, e.g., from clock offset relative to UTC and to the receiving time delay of both the sensor 10 and the smartphone 40.
(17) Referring to
(18) Referring to
Simulation Results
(19) Example simulation results are provided to evaluate synchronization performance of a WBAN system S, using RBS. Initially, a clock model for generating time and frequency data is discussed. Subsequently, a receiving time delay model is discussed.
Clock Model
(20) A clock offset is a difference in time between a clock n's time and the true time at a discrete time k. A two-state clock model effectively models clock dynamics and is expressed by equation 1 as follows:
(21)
wherein T=the time interval between state updates, wherein .sub.n represents a Wiener process contributing to the rate of change in .sub.n, and wherein {right arrow over (w.sub.n)}(k) represents a zero-mean process noise with a covariance expressed by
(22)
wherein parameters q.sub.1,n and q.sub.2,n are obtainable from the Allan variance of sensor node n's oscillator from the expression
(23)
Receiving Time Delay
(24) In sample testing, RBS has been implemented in relation to a network of Berkeley Mote platforms (a small, low-power, low-cost radio-and-sensor platform), wherein the receiving time delay has been experimentally shown Gaussian and having a zero-mean and a standard deviation of approximately 11.1 s. Also, the resolution of the receive timestamp of the reference broadcast messages has been found to be approximately 2 s. Hence, performance of the WBAN system S, using RBS, has been simulated using the receiver characteristics of the Berkeley Mote platform.
Synchronization Performance
(25) The foregoing example of a simulated WBAN system S comprises a sensor 10, e.g., an ECG sensor, a smartphone 40, a Berkeley Mote platform (not shown), and used data, comprising Record 16773 of the MIT-BIF Normal Sinus rhythm Database, wherein Record 16773 comprises a 24-hour recording of ECG data from a 26-year old subject having no significant arrhythmia. Locations of R peaks have been determined by the system S via the processor 30 using a MATLAB findpeaks function. A total of 81,983 peaks occurred in such 24-hour period.
(26) Both the smartphone 40 and the Berkeley Mote platform use the receiver characteristics from the foregoing receiver characteristics in this experiment. In this example, the smartphone 40 is synchronized to within 1.5 s of UTC, e.g., having a time offset that is Gaussian with zero-mean and a standard deviation of 1.5 s. The Berkeley Mote platform uses a 32,768-Hz crystal oscillator with a frequency stability of 100 ppm; and the parameters q.sub.1,n and q.sub.2,n are determined by using the Allan variance given for a poor crystal oscillator. Without any synchronization, the clock offset of the Berkley Mote platform is over approximately 8 s by the end of the 24-hour period.
(27) Referring to
(28) Referring to
(29) Referring to
(30) Still referring to
(31) Still referring to
(32) Still referring to
(33) Still referring to
(34) Still referring to
(35) Referring to
(36) Still referring to
(37) Still referring to
(38) Still referring to
(39) Still referring to
(40) Referring to
(41) Still referring to
(42) Still referring to
(43) Understood is that many additional changes in the details, materials, steps and arrangement of parts, which have been herein described and illustrated to explain the nature of the invention, may be made by those skilled in the art within the principle and scope of the invention as expressed in the appended claims.