MOTION LOCALIZATION IN WIRELESS MESH NETWORKS BASED ON MOTION INDICATOR VALUES - Patent application
By utilizing motion indicator values and time coefficients from wireless signals in a wireless mesh network, the system accurately detects and localizes motion within a space, addressing the limitations of existing technologies.
Patent Information
- Application Number
- JP2020518657
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2017-10-20
- Filing Date
- 2018-01-17
- Publication Date
- 2025-04-28
- Estimated Expiration
- 2038-01-17
AI Technical Summary
Existing motion detection systems struggle to accurately detect and localize motion within a space without clear lines of sight, especially in wireless communication systems.
The system uses motion indicator values and time coefficients based on wireless signals transmitted and received by wireless communication devices in a wireless mesh network to determine the location of detected motion.
This approach enables effective detection and localization of motion without the need for clear lines of sight, improving the accuracy and reliability of motion detection in wireless communication systems.
Smart Images

Figure 0007669146000017 
Figure 0007669146000018 
Figure 0007669146000019
Abstract
Description
[Technical field]
[0001] FIELD OF THE DISCLOSURE This disclosure relates generally to motion detection and localization.
[0002] (Priority Claim) This application claims priority to U.S. patent application Ser. No. 15 / 789,761, filed Oct. 20, 2017, entitled “Motion Localization in a Wireless Mesh Network Based on Motion Indicator Values,” the disclosure of which is incorporated herein by reference. [Background technology]
[0003] Motion detection systems have been used to detect the movement of objects, for example, within a room or an outdoor area. In some exemplary motion detection systems, infrared or optical sensors are used to detect the movement of objects within the field of view of the sensors. Motion detection systems are used in security systems, automatic control systems, and other types of systems. [Brief description of the drawings]
[0004] [Figure 1A] FIG. 1 illustrates an example wireless communication system. [Figure 1B] FIG. 2 illustrates an exemplary modem of a motion detector device. [Figure 1C] FIG. 1 illustrates exemplary communication paths that define communication links between wireless communication devices. [Diagram 2] FIG. 2 illustrates an exemplary motion probe signal. [Figure 3A] FIG. 2 illustrates exemplary signals communicated between wireless communication devices. [Figure 3B] FIG. 2 illustrates example signals communicated between wireless communication devices. [Figure 4A] FIG. 1 illustrates an example wireless communication system. [Figure 4B] FIG. 1 illustrates an example wireless communication system. [Figure 5A] 4C is a table of example sequence values shown in wireless signals transmitted and received in the wireless communication system of FIG. 4A and FIG. 4B in a one hundred percent (100%) throughput scenario. [Figure 5B] 4C is a table of example sequence values indicated in a motion probe signal received in the wireless communication system of FIGS. 4A and 4B under various throughput scenarios. [Figure 5C] 4C is a table of example movement information for communication links in the wireless communication system of FIGS. 4A and 4B. [Figure 5D] 4C is a table of example aggregate motion indicator values and confidence factors corresponding to wireless communication devices in the wireless communication networks of FIGS. 4A and 4B. [Figure 6] FIG. 2 illustrates a process for determining the location of detected movement in space. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0005] In some aspects of the subject matter described herein, the location of the detected motion in the space may be determined based on a motion indicator value, a time factor, or a combination thereof. For example, in some cases, the location of the detected motion may be determined based on a motion indicator value for each wireless communication device or link in a wireless communication system, such as a wireless mesh network. The motion indicator value for an individual wireless communication device may represent the degree of motion detected by the individual wireless communication device (generally or on a particular communication link) and may be based on a subset of wireless signals transmitted or received by the wireless communication device. The location of the detected motion in the space may be the likelihood that an object is present near one or more of the wireless communication devices having the maximum motion indicator value. The location may be determined by selecting a maximum motion indicator value or by selecting a motion indicator value that is greater than a threshold value.
[0006] As another example, in some cases, the location of the detected motion may be determined based on a time factor for each wireless communication device or link. The time factor may be, or may be based on, (i) a range of sequence values included in the motion probe signal used to detect motion on the communication link, (ii) a set (e.g., all) of sequence values included in the motion probe signal used to detect motion on the communication link, (iii) a minimum or maximum sequence value in the set of sequence values included in the motion probe signal used to detect motion on the communication link, or (iv) another indicator of the time period during which the motion probe signal is obtained to detect motion. For example, the time factor may be a weighting factor based on a maximum or minimum sequence value in the set of motion probe signals used to detect motion on a particular communication link by or between devices. The weighting factor may be used to weight the motion indicator value for the device or link, and the weighted motion indicator value may be used to determine the location of the detected motion.
[0007] The systems and techniques described herein may provide one or more advantages in some cases. For example, motion of an object may be detected based on wireless signals (e.g., radio frequency (RF) signals) received by a wireless communication device without requiring a clear line of sight. In addition, a location of the detected motion may be determined based on motion indicator values, time coefficients, or both for each of a plurality of wireless communication devices.
[0008] 1A illustrates an example wireless communication system 100. The example wireless communication system 100 includes three wireless communication devices: a first wireless communication device 102A, a second wireless communication device 102B, and a third wireless communication device 102C. The example wireless communication system 100 may include additional wireless communication devices and other components (e.g., additional wireless communication devices, one or more network servers, network routers, network switches, cables, or other communication links, etc.).
[0009] The exemplary wireless communication devices 102A, 102B, and 102C can operate within a wireless network, for example, according to a wireless network standard or another type of wireless communication protocol. For example, the wireless network can be configured to operate as a wireless local area network (WLAN), a personal area network (PAN), a metropolitan area network (MAN), or another type of wireless network. Examples of WLANs include networks configured to operate according to one or more of the 802.11 family of standards developed by the IEEE (e.g., Wi-Fi networks), etc. Examples of PANs include networks that operate according to short-range communication standards (e.g., BLUETOOTH, Near Field Communication (NFC), ZigBee), millimeter wave communications, etc.
[0010] In some implementations, the wireless communication devices 102A, 102B, and 102C may be configured to communicate within a cellular network according to, for example, a cellular network standard. Examples of cellular networks include networks configured according to 2G standards such as Global System for Mobile Communications (GSM) and Enhanced Data Rates for GSM Evolution (EDGE) or EGPRS, 3G standards such as Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Universal Mobile Telecommunications System (UMTS), and Time Division Synchronous Code Division Multiple Access (TD-SCDMA), 4G standards such as Long Term Evolution (LTE) and LTE Advanced (LTE-A), and the like.
[0011] In the embodiment shown in FIG. 1A, the wireless communication devices 102A, 102B, and 102C can be or include standard wireless network components. For example, the wireless communication devices 102A, 102B, and 102C can be commercially available Wi-Fi access points or another type of wireless access point (WAP) that performs one or more operations described herein embodied as instructions (e.g., software or firmware) on the WAP's modem. In some examples, the wireless communication devices 102A, 102B, and 102C can be nodes of a wireless mesh network, such as, for example, a commercially available mesh network system (e.g., GOOGLE WIFI). In some examples, another type of standard or conventional Wi-Fi transmitter device can be used. The wireless communication devices 102A, 102B, and 102C can be implemented without Wi-Fi components, for example, other types of standard or non-standard wireless communications can be used for motion detection. In some examples, the wireless communication devices 102A, 102B, and 102C can be or can be part of a dedicated motion detection system. For example, a dedicated motion detection system can include a hub device and one or more beacon devices (as remote sensor devices), and the wireless communication devices 102A, 102B, and 102C can be either the hub device or the beacon device in the motion detection system.
[0012] 1A, the exemplary wireless communication device 102C includes a modem 112, a processor 114, a memory 116, and a power unit 118, and any of the wireless communication devices 102A, 102B, and 102C in the wireless communication system 100 may include the same, additional, or different components, which may be configured to operate as shown in FIG. 1A or in another manner. In some implementations, the modem 112, the processor 114, the memory 116, and the power unit 118 of a wireless communication device are housed together in a common housing or other assembly. In some implementations, one or more of the components of a wireless communication device may be housed separately, for example, in a separate housing or other assembly.
[0013] The exemplary modem 112 can communicate (receive, transmit, or both) wireless signals. For example, the modem 112 can be configured to communicate radio frequency (RF) signals formatted according to a wireless communication standard (e.g., Wi-Fi or Bluetooth). The modem 112 can be implemented as the exemplary wireless network modem 112 shown in FIG. 1B, or can be implemented otherwise, for example, using other types of components or subsystems. In some implementations, the exemplary modem 112 includes a radio subsystem and a baseband subsystem. In some examples, the baseband subsystem and the radio subsystem can be implemented on a common chip or chipset, or can be implemented on a card or another type of assembled device. The baseband subsystem can be coupled to the radio subsystem, for example, by leads, pins, wires, or other types of connections. FIG. 1B illustrates an exemplary modem 112 of a wireless communication device.
[0014] In some examples, the radio subsystem in the modem 112 may include one or more antennas and radio frequency circuitry. The radio frequency circuitry may include, for example, circuitry for filtering, amplifying, or otherwise conditioning analog signals, circuitry for upconverting baseband signals to RF signals, circuitry for downconverting RF signals to baseband signals, and the like. Such circuitry may include, for example, filters, amplifiers, mixers, local oscillators, and the like. The radio subsystem may be configured to transmit radio frequency wireless signals over a wireless communication channel. As an example, the radio subsystem may include a radio chip 113, an RF front end 115, and one or more antennas 117 as shown in FIG. 1B. The radio subsystem may include additional or different components. In some implementations, the radio subsystem may be or include radio electronics (e.g., RF front end, radio chip, or similar components) from a conventional modem, such as, for example, a Wi-Fi modem, a pico base station modem, and the like. In some implementations, the antenna includes multiple antennas.
[0015] In some examples, the baseband subsystem in the modem 112 may include digital electronics configured to process digital baseband data, for example. As an example, the baseband subsystem may include the baseband chip 111 shown in FIG. 1B. The baseband subsystem may include additional or different components. In some examples, the baseband subsystem may include a digital signal processor (DSP) device or another type of processor device. In some examples, the baseband system may include digital processing logic circuitry to operate the radio subsystem, convey wireless network traffic via the radio subsystem, detect motion based on motion detection signals received via the radio subsystem, or perform other types of processing. For example, the baseband subsystem may include one or more chips, chip sets, or other types of devices configured to encode signals and send the encoded signals to the radio subsystem for transmission, or to identify and analyze data encoded in signals from the radio subsystem (e.g., by decoding the signals according to a wireless communication standard, by processing the signals according to a motion detection process, or otherwise).
[0016] In some cases, the radio subsystem in the exemplary modem 112 receives baseband signals from the baseband subsystem, upconverts the baseband signals to radio frequency (RF) signals, and transmits the radio frequency signals wirelessly (e.g., via an antenna). In some cases, the radio subsystem in the exemplary modem 112 receives radio frequency signals wirelessly (e.g., via an antenna), downconverts the radio frequency signals to baseband signals, and transmits the baseband signals to the baseband subsystem. Signals exchanged between the radio subsystem and the baseband subsystem may be digital or analog signals. In some embodiments, the baseband subsystem includes conversion circuitry (e.g., digital-to-analog converters, analog-to-digital converters) and exchanges analog signals with the radio subsystem. In some embodiments, the radio subsystem includes conversion circuitry (e.g., digital-to-analog converters, analog-to-digital converters) and exchanges digital signals with the baseband subsystem.
[0017] In some examples, the baseband subsystem of the exemplary modem 112 can communicate wireless network traffic (e.g., data packets) in a wireless communication network over one or more network traffic channels via the radio subsystem. The baseband subsystem of the modem 112 can also transmit or receive (or both) signals (e.g., motion probe signals or motion detection signals) over dedicated wireless communication channels via the radio subsystem. In some cases, the baseband subsystem generates and transmits motion probe signals, for example, to search a space for motion. In some cases, the baseband subsystem processes received motion detection signals (signals based on the motion probe signals transmitted through space), for example, to detect the motion of objects in the space.
[0018] The exemplary processor 114 may execute instructions, for example, to generate output data based on data input. The instructions may include programs, codes, scripts, or other types of data stored in memory. Additionally or alternatively, the instructions may be encoded as preprogrammed or reprogrammable logic circuits, logic gates, or other types of hardware or firmware components. The processor 114 may be or include a general-purpose microprocessor, as a dedicated co-processor or another type of data processing device. In some examples, the processor 114 performs high-level operations of the wireless communication device 102C. For example, the processor 114 may be configured to execute or interpret software, scripts, programs, functions, executable files, or other instructions stored in the memory 116. In some implementations, the processor 114 may be included in the modem 112.
[0019] The exemplary memory 116 may include a computer-readable medium, such as, for example, a volatile memory device, a non-volatile memory device, or both. The memory 116 may include one or more read-only memory devices, random access memory devices, buffer memory devices, or a combination of these and other types of memory devices. In some cases, one or more components of the memory may be integrated with or otherwise associated with another component of the wireless communication device 102C. The memory 116 may store instructions executable by the processor 114. For example, the instructions may include instructions for determining a location of the detected movement, such as by one or more of the operations of the exemplary process 600 of FIG. 6.
[0020] An exemplary power supply unit 118 provides power to other components of the wireless communication device 102C. For example, the other components may operate based on power provided by the power supply unit 118 via a voltage bus or other connection. In some implementations, the power supply unit 118 includes a battery or battery system, such as a rechargeable battery. In some implementations, the power supply unit 118 includes an adapter (e.g., an AC adapter) that receives an external power signal (from an external signal source) and converts the external power signal into an internal power signal conditioned for the components of the wireless communication device 102C. The power supply unit 118 may include or otherwise operate with other components.
[0021] 1A, the wireless communication devices 102A and 102B transmit wireless signals (e.g., in accordance with a wireless network standard, a motion detection protocol, or otherwise). For example, the wireless communication devices 102A and 102B may broadcast wireless signals (e.g., reference signals, beacon signals, status signals, etc.) or may send wireless signals addressed to other devices (e.g., user equipment, client devices, servers, etc.) and other devices (not shown), as well as the wireless communication device 102C, may receive the wireless signals transmitted by the wireless communication devices 102A and 102B. In some examples, the wireless signals transmitted by the wireless communication devices 102A and 102B are repeated periodically, for example, in accordance with a wireless communication standard or otherwise.
[0022] In the illustrated embodiment, the wireless communication device 102C processes wireless signals from the wireless communication devices 102A and 102B to detect motion of objects in a space accessed by the wireless signals and / or determine a location of the detected motion. For example, the wireless communication device 102C may perform one or more operations of the example process 600 of FIG. 6 or another type of process for detecting motion or determining a location of the detected motion. The space accessed by the wireless signals may be, for example, an indoor or outdoor space that may include one or more fully or partially enclosed areas, unenclosed open areas, and the like. The space may be or include the interior of a room, multiple rooms, a building, or the like. In some examples, the wireless communication system 100 may be modified such that, for example, the wireless communication device 102C transmits wireless signals and the wireless communication devices 102A and 102B process the wireless signals from the wireless communication device 102C to detect motion or determine a location of the detected motion.
[0023] The wireless signals used for motion detection may include, for example, beacon signals (e.g., Bluetooth beacons, Wi-Fi beacons, other wireless beacon signals), other standard signals generated according to wireless network standards for other purposes, or non-standard signals (e.g., random signals, reference signals, etc.) generated for motion detection or for other purposes. In some embodiments, the wireless signals may propagate through objects (e.g., walls) before or after interaction with a moving object, thereby making the movement of the moving object detectable without optical line of sight between the moving object and transmitting or receiving hardware. Based on the received signals, the third wireless communication device 102C may generate motion detection data. In some cases, the third wireless communication device 102C may communicate the motion detection data to another device or system, such as a security system, which may include a control center for monitoring movement within a space, such as a room, a building, an outdoor area, etc.
[0024] In some implementations, the wireless communication devices 102A and 102B may be modified to transmit motion probe signals (e.g., which may include a reference signal, a beacon signal, or another signal used to search the space for motion) on a wireless communication channel (e.g., a frequency channel or a coded channel) that is separate from the wireless network traffic signals. For example, the third wireless communication device 102C may know the modulation applied to the payload of the motion probe signal and the type of data or data structure within this payload, thereby reducing the amount of processing the third wireless communication device 102C performs motion detection. The header may include additional information, such as an indication of whether another device in the communication system 100 has detected motion, an indication of the modulation type, an identification of the device transmitting the signal, etc.
[0025] 1A, the wireless communication system 100 is a wireless mesh network having wireless communication links between each of the respective wireless communication devices 102. In the illustrated example, the wireless communication link between the third wireless communication device 102C and the first wireless communication device 102A can be used to search the first motion detection field 110A, the wireless communication link between the third wireless communication device 102C and the second wireless communication device 102B can be used to search the second motion detection field 110B, and the wireless communication link between the first wireless communication device 102A and the second wireless communication device 102B can be used to search the third motion detection field 110C. In some cases, each wireless communication device 102C detects motion within the motion detection field 110 that it accesses by processing a received signal based on a wireless signal transmitted by the wireless communication device 102 through the motion detection field 110. 1A moves within the first motion detection field 110A and the third motion detection field 110C, the wireless communication devices 102 can detect the motion based on signals received by these devices based on wireless signals transmitted through the respective motion detection fields 110. For example, the first wireless communication device 102A can detect the motion of the person in both the motion detection fields 110A and 110C, the second wireless communication device 102B can detect the motion of the person 106 in the motion detection field 110C, and the third wireless communication device 102C can detect the motion of the person 106 in the motion detection field 110A.
[0026] In some cases, the motion detection field 110 may include, for example, air, solid material, liquid, or another medium through which wireless electromagnetic signals can propagate. In the example shown in FIG. 1A, the first motion detection field 110A provides a wireless communication channel between the first wireless communication device 102A and the third wireless communication device 102C, the second motion detection field 110B provides a wireless communication channel between the second wireless communication device 102B and the third wireless communication device 102C, and the third motion detection field 110C provides a wireless communication channel between the first wireless communication device 102A and the second wireless communication device 102B. In some aspects of operation, wireless signals transmitted on a wireless communication channel (separate from or shared with a wireless communication channel for network traffic) are used to detect the movement of objects in space. The objects may be any type of stationary or movable object, and may be animate or inanimate. For example, the object may be a human (e.g., person 106 shown in FIG. 1A), an animal, an inanimate object, or another device, apparatus or assembly, an object that defines all or a portion of a boundary of a space (e.g., a wall, a door, a window, etc.), or another type of object. In some implementations, the motion information from the wireless communication devices may be analyzed to determine a location of the detected motion. For example, as described further below, one of the wireless communication devices 102 (or another device communicatively coupled to the device 102) may determine that the detected motion is in the vicinity of a particular wireless communication device.
[0027] 1C illustrates exemplary communication paths defining a communication link between the wireless communication device 102A and the wireless communication device 102C of FIG. 1A. In the illustrated embodiment, the first wireless communication device 102A includes a first modem 112A and the third wireless communication device 102C includes a third modem 112C. The exemplary wireless modems 112A and 112C communicate with each other through multiple communication paths 121-124. The four communication paths 121-124 define a communication link 126 between the two wireless communication devices 102A and 102C. Each communication path is defined by a signal hardware path of the modem 112A and a signal hardware path of the modem 112C. For example, in the illustrated embodiment, communication path 121 is defined by antenna 128A of modem 112A and antenna 128C of modem 112C, communication path 122 is defined by antenna 128A of modem 112A and antenna 130C of modem 112C, communication path 123 is defined by antenna 130A of modem 112A and antenna 128C of modem 112C, and communication path 124 is defined by antenna 130A of modem 112A and antenna 130C of modem 112C. In some cases, modems 112A and 112C may communicate over the various communication paths 121-124 by transmitting signals from both antennas 128 and 130 (e.g., the same signal at each antenna), which may be received by other modems using one or both of antennas 128, 130 (e.g., depending on interference on the respective communication paths). For example, a signal transmitted by antennas 128A, 130A may only be received by antenna 128C of modem 112C when there is significant interference near communication paths 122, 124. In some implementations, the signal hardware path includes multiple antennas of the modems. For example, a communication path may be defined by multiple antennas at the first modem 112A and multiple antennas at the third modem 112C.More specifically, each communication path is between a transmitter (e.g., one or more transmit antennas) of a first wireless communication device of the pair and a receiver (e.g., one or more receive antennas) of a second wireless communication device of the pair. In a particular implementation, modems 112 include two transmitters and two receivers, providing four communication paths per modem. Other modem configurations may include a different number of transmitters and receivers, such as two transmitters and four receivers providing eight RF communication paths.
[0028] 2 illustrates an exemplary motion probe signal 202. The exemplary motion probe signal 202 may be transmitted, for example, in a wireless communication system, to monitor motion in a space. In some embodiments, the motion probe signal 202 is transmitted in the form of a motion detection signal on a motion detection channel in a wireless communication network. In some embodiments, the motion probe signal 202 comprises a motion channel packet. For example, the motion probe signal 202 may include binary data that is converted to an analog signal, upconverted to a radio frequency, and transmitted wirelessly by an antenna.
[0029] The motion probe signal 202 shown in FIG. 2 includes control data 204 and motion data 206. The motion probe signal 202 may include additional or different features and may be formatted in other ways. In the illustrated embodiment, the control data 204 may include the type of control data included in a conventional data packet. For example, the control data 204 may include a preamble (also called a header) indicating the type of information included in the motion probe signal 202, an identifier of the wireless device transmitting the motion probe signal 202, a MAC address of the wireless device transmitting the motion probe signal 202, a transmit power, etc. The motion data 206 is the payload of the motion probe signal 202. In some implementations, the motion data 206 may be or include, for example, a pseudo-random code or another type of reference signal. In some implementations, the motion data 206 may be or include, for example, a beacon signal broadcast by a wireless network system.
[0030] In one example, the motion probe signal 202 is transmitted by a wireless device (e.g., the wireless communication device 102A shown in FIG. 1A) and received at a motion detection device (e.g., the motion detection device 102C shown in FIG. 1A). In some examples, the control data 204 changes with each transmission to indicate, for example, a transmission time or updated parameters. The motion data 206 may remain unchanged at each transmission of the motion probe signal 202. The motion detection device may process the received signal based on each transmission of the motion probe signal 202 to analyze the motion data 206 for changes. For example, the changes in the motion data 206 may indicate the movement of an object in a space accessed by the wireless transmission of the motion probe signal 202. The motion data 206 may then be processed, for example, to generate a response to the detected motion.
[0031] 3A and 3B illustrate exemplary signals transmitted between wireless communication devices. As illustrated in FIG. 3A and 3B, multiple exemplary paths of a wireless signal transmitted from a first wireless communication device 304A are illustrated with dashed lines. A wireless signal along a first signal path 316 is transmitted from the first wireless communication device 304A and reflects from a first wall 302A toward a second wireless communication device 304B. A wireless signal along a second signal path 318 is transmitted from the first wireless communication device 304A and reflects from a second wall 302B and from the first wall 302A toward a third wireless communication device 304C. A wireless signal along a third signal path 320 is transmitted from the first wireless communication device 304A and reflects from a second wall 302B toward a third wireless communication device 304C. The wireless signal along the fourth signal path 322 is transmitted from the first wireless communication device 304A and reflects off the third wall 202C towards the second wireless communication device 304B.
[0032] In FIG. 3A, the wireless signal along the fifth signal path 324A is transmitted from the first wireless communication device 304A and reflects off an object at the first position 314A toward the third wireless communication device 304C. Between FIG. 3A and FIG. 3B, the surface of the object moves in the space 300 from the first position 314A to the second position 314B (e.g., a distance away from the first position 314A). In FIG. 3B, the wireless signal along the sixth signal path 324B is transmitted from the first wireless communication device 304A and reflects off an object at the second position 314B toward the third wireless communication device 304C. The sixth signal path 324B shown in FIG. 3B is longer than the fifth signal path 324A shown in FIG. 3A due to the movement of the object from the first position 314A to the second position 314B. In some embodiments, signal paths may be added, removed, or otherwise changed due to the movement of an object in the space.
[0033] In the embodiment shown in Figures 3A and 3B, the first wireless communication device 304A may repeatedly transmit a wireless signal. Specifically, Figure 3A shows a wireless signal being transmitted from the first wireless communication device 304A at a first time, and Figure 3B shows the same wireless signal being transmitted from the first wireless communication device 304A at a second, subsequent time. The transmitted signal may be transmitted continuously, periodically, randomly, or intermittently at times, or the like, or combinations thereof. The transmitted signal may have multiple frequency components within a frequency bandwidth. The transmitted signal may be transmitted from the first wireless communication device 304A omnidirectionally, unidirectionally, or otherwise. In the illustrated embodiment, the wireless signal travels through multiple respective paths in the space 300, and the signal along each path may be attenuated due to path loss, scattering, reflection, etc., and may have a phase offset or frequency offset.
[0034] As shown in Figures 3A and 3B, signals from various paths 316, 318, 320, 322, 324A, and 324B are combined at the third wireless communication device 304C and the second wireless communication device 304B to form a received signal. Due to the influence of multiple paths in the space 300 on the transmitted signal, the space 300 can be represented as a transfer function (e.g., a filter) where the transmitted signal is input and the received signal is output. When an object moves in the space 300, the attenuation or phase offset that influenced the signal in the signal path can change, and thus the transfer function of the space 300 can change. Assuming the same wireless signal is transmitted from the first wireless communication device 304A, if the transfer function of the space 300 changes, the output of this transfer function, i.e., the received signal, will change as well. This change in the received signal can be used to detect the movement of the object.
[0035] Mathematically speaking, a transmit signal f(t) transmitted from the first wireless communication device 304A may be expressed according to the following equation (1):
number
number
number
number
[0036] The received signal R at the wireless communication device can then be analyzed. The received signal R at the wireless communication device can be transformed into the frequency domain, for example using a Fast Fourier Transform (FFT) or another type of algorithm. The transformed signal transforms the received signal R into a frequency domain with one value for each frequency component (n frequencies ω n The frequency ω can be expressed as a sequence of n complex values, each of which corresponds to a frequency n For frequency components in the complex value H n can be expressed as the following equation (5).
number
[0037] For a given frequency component ω n Complex value H for n is the frequency component ω n As an object moves through space, the complex-valued H n is the spatially varying channel response α n,k The channel response varies due to the presence of noise, interference, or other phenomena. Thus, detected changes in the channel response can indicate the movement of an object within the communication channel. In some cases, noise, interference, or other phenomena can affect the channel response detected by the receiver, and the motion detection system can reduce or isolate such effects to increase the accuracy and quality of the motion detection capability.
[0038] In some implementations, the channel response may be expressed as:
number
number
number
[0039] As shown in the above equation, the received signal can be considered as a convolution of the reference signal and the channel response. The convolution operation means that the channel coefficients have some correlation with each of the delayed replicas of the reference signal. Thus, the convolution operation shown in the above equation indicates that the received signal appears at different delay points, and each delayed replica is weighted by a channel coefficient. In some cases, the channel response h over space ch may be determined based on channel state information (CSI) determined by a modem or other component of a wireless communication device receiving the wireless signal.
[0040] In some aspects, a signal quality metric for the received signal can be determined based on the channel response. For example, the channel response (h ch ) is the reference signal (R ef ) to obtain the estimated received signal ( TIFF0007669146000011.tif7150) is obtained, and this estimated received signal is calculated based on the channel response (e.g., the reference signal (R ef ) and channel response (h ch ) can be an estimate of what the received signal should be. TIFF0007669146000012.tif7150) and the actual received signal (R cvd ) can be used to calculate a signal quality metric. In some embodiments, for example, the signal quality metric is calculated based on the actual received signal (R cvd ) and the estimated received signal ( TIFF0007669146000013.tif7150) and the actual received signal (R cvd ) and the dot product with the difference between, e.g.,
number
[0041] In some cases, a wireless communication device may "reject" a received signal. For example, in some implementations, the motion detection process may include a quality criterion for the signals. A received signal that does not meet the quality criterion may be rejected (e.g., discarded or ignored) and not considered in determining whether motion has occurred in the space 300. A signal may be accepted or rejected as an input to the motion detection process based on a signal quality metric (e.g., a value described in equation (9)). For example, in some examples, motion is detected using only a subset of received signals that have a value Q above a certain threshold.
[0042] 4A and 4B illustrate an exemplary wireless communication system 400. In the illustrated embodiment, the exemplary wireless communication system 400 is a wireless mesh network including a plurality of remote sensor devices 402A, 402B, 402C, 402D, and a hub device 404, each of which can wirelessly communicate with one or more of the other devices in the system 400. In some cases, the wireless communication system 400 can be used in the wireless communication system 100 of FIG. 1A. The remote sensor devices 402 and the hub device 404 in FIG. 4A and 4B can be implemented in the same or similar manner as the wireless communication devices 102A, 102B, and 102C of FIG. 1A, or the wireless communication device 302 of FIG. 3A and 3B. Configurations other than those shown in FIG. 4A and 4B are possible. In some implementations, any one of the remote sensor devices 402 can be configured to perform the operations of the hub device 404. In some cases, only one of devices 402 or 404 performs the operations of hub device 404 described herein.
[0043] In the example shown in Figures 4A and 4B, the hub device 404 transmits a beacon wireless signal 406 (shown in Figure 4A) and, in response to receiving the beacon wireless signal 406, each of the remote sensor devices 402 transmits a motion probe signal (motion probe signals 408, 410, 412, and 414 shown in Figure 4B). As shown in Figure 4B, when an object 416 (e.g., a person) moves within a space accessed by the motion probe signal, the signal paths of the motion probe signals may be added, removed, or otherwise altered due to the movement, as described above. For example, the motion probe signals 408, 410, 412, and 414 shown in Figure 4B may experience attenuation, frequency shifts, phase shifts, or other effects throughout their respective paths and may have portions that propagate in different directions based on interactions with moving objects. The remote sensor device 402 and / or hub device 404 can monitor these changes (e.g., by analyzing the channel response as described above) to detect movement of the object 416 in the space, and the hub device 404 can detect the relative position of the object 416 in the space (e.g., based on movement indicator values for the remote sensor device 402 and / or hub device 404, as described below).
[0044] As shown in FIG. 4A, the hub device 404 transmits an exemplary beacon wireless signal 406 in all directions. The beacon wireless signal 406 can be transmitted in other ways (e.g., in other beam patterns, such as non-omnidirectional patterns). For example, the hub 404 can broadcast the beacon wireless signal 406. The propagation of the beacon wireless signal 406 over a distance is illustrated by dashed concentric circles. The remote sensor device 402 receives the beacon wireless signal 406 and performs one or more actions based on the received beacon wireless signal 406. In some cases, the hub 404 transmits the beacon continuously, i.e., transmits the beacon wireless signal 406 at a first time and transmits the next beacon wireless signal at a second later time. The beacon wireless signal 406 transmitted by the hub device 404 can form a series of wireless signals. The hub device 404 can transmit the beacon wireless signal 406 continuously, periodically, randomly, intermittently, etc., or combinations thereof. In certain implementations, for example, the hub device 404 repeatedly transmits a beacon wireless signal 406. In certain implementations, the beacon wireless signal 406 indicates instructions to the remote sensor device 402 to transmit a motion probe signal.
[0045] In some implementations, the beacon wireless signal 406 includes synchronization information that controls the timing when the remote sensor device transmits the motion probe signals 408, 410, 412, and 414. For example, the synchronization information may indicate instructions for the remote sensor device 402 to simultaneously transmit the motion probe signals 408, 410, 412, and 414 at specified times. As another example, the synchronization information may indicate instructions for the remote sensor device to transmit the motion probe signals 408, 410, 412, and 414 at specified intervals after receiving the beacon wireless signal 406.
[0046] In some implementations, the beacon wireless signal 406 includes a sequence value. For example, the hub device 404 can configure a header (e.g., control data) of the beacon wireless signal 406 to include the sequence value. The header of the beacon wireless signal 406 can also include an identification of the transmitting remote sensor device 402. The hub device 404 can send subsequent beacon wireless signals 406 with incremented or decremented sequence values. To obtain each sequence value, the hub device 404 can sequentially select different values from a set of values, or the hub 404 can generate different values in a sequence. For example, a beacon wireless signal transmitted by the hub device 404 at a first time (t0) can include a sequence value of 999, and the hub device 404 can transmit a beacon wireless signal with the next sequence value of 1000 at a second later time (t1), as shown in FIG. 5A, and so on. In some cases, the sequence value represents the time position of the wireless signal within the sequence of the beacon wireless signals 406. The sequence values may be selected differently and changed in subsequent transmissions.
[0047] FIG 4B illustrates exemplary wireless motion probe signals transmitted in the wireless communication system 400 of FIG 4A. In the illustrated embodiment, each remote sensor device 402 transmits a motion probe signal in response to receiving a beacon wireless signal 406 (e.g., from the hub device 404 shown in FIG 4A). More specifically, in response to receiving the beacon wireless signal 406, remote sensor device 402A transmits a first motion probe signal 408, remote sensor device 402B transmits a second motion probe signal 410, remote sensor device 402D transmits a third motion probe signal 412, and remote sensor device 402D transmits a fourth motion probe signal 414. In the illustrated embodiment, the remote sensor devices 402 transmit their respective motion probe signals 408, 410, 412, 414 directionally. Propagation of the motion probe signals 408, 410, 412, and 414 over distances is illustrated by dashed concentric arcs. The remote sensor devices may transmit the motion probe signal in a different manner (e.g., in a different beam pattern, such as a non-omnidirectional pattern). In some cases, the hub device 404 transmits the motion probe signal in the same manner as the remote sensor devices 402.
[0048] In the embodiment shown in FIG. 4A and FIG. 4B, the remote sensor device 402A receives the beacon wireless signal 406 and, in response, performs one or more operations based on the received signal, such as, for example, updating an internal sequence value. For example, the remote sensor device 402A can be configured to store an internal sequence value and update the internal sequence value with a sequence value obtained from the most recently received beacon wireless signal 406. The remote sensor device 402A transmits a first motion probe signal 408 with a sequence value (e.g., in a header) that is the same as the stored internal sequence value. The remote sensor device 402A can also transmit the first motion probe signal 408 with an identifier indicating that the device 402A sent the signal 408. The other remote sensor devices 402B-402D and the hub device 404 can then receive signals based on the first motion probe signal 408 and then perform one or more operations (e.g., motion detection, motion information transmission, or other operations). The other remote sensor devices 402B-402D may operate in the same or similar manner as described above with respect to remote sensor device 402A, or in a different manner.
[0049] The remote sensor device 402 and the hub device 404 can detect the motion of the object 416 based on the motion probe signal transmitted by the remote sensor device. For example, the remote sensor device can analyze the change in the channel response (e.g., as described above) to detect whether motion has occurred in the space accessed by the motion probe signal. In some cases, a specified number of signals ("motion calculation quantity") is used to detect whether motion has occurred. If motion is detected in the space, a motion indicator value (MIV) is calculated by the device. The MIV represents the degree of motion detected by the device based on the wireless signals transmitted or received by the device. For example, a higher MIV may indicate a high level of channel perturbation (due to detected motion), while a lower MIV may indicate a low level of channel perturbation. A higher level of channel perturbation may indicate motion in close proximity to the device. The MIV may include an aggregate MIV (representing the degree of motion detected in total by each device 402), a link MIV (representing the degree of motion detected on a particular communication link between each device 402), a path MIV (representing the degree of motion detected on a particular communication path between hardware signal paths of each device 402), or a combination thereof. Exemplary MIVs are described below with respect to Figures 5C and 5D.
[0050] The hub device 404 can then determine a relative position of the detected motion of the object 416 based on the MIV (e.g., by performing one or more of the operations of the example process 600 of FIG. 6). In some implementations, for example, the remote sensor devices 402 transmit motion information to the hub device 404 (e.g., periodically or after motion is detected) including the MIV calculated by each remote sensor device 402. The motion information can also include other information related to the motion detection performed by each remote sensor device 402 in some cases. For example, the motion information can include signal quality metric values (e.g., for the device as a whole or for each link between the device and other devices), sequence values of signals used to detect motion, or other information used by the device 402 to detect motion. The hub device 404 then uses the motion information from the remote sensor devices 402 and its own motion information (because the hub device 404 also detects motion based on the motion probe signals) to determine the location of the detected motion (e.g., the position of the object 416). In some cases, the hub device 404 may weight one or more of the data in the motion information (e.g., the MIV) before using the data to determine the location of the detected motion.
[0051] In some implementations, another device may perform the detection of motion, the determination of the location of the detected motion, or both. For example, in some cases, a remote server communicatively coupled to the wireless communication system 400 may receive motion information from the devices 402, 404 (instead of the hub device 404 described above) and determine the location of the detected motion based on the motion information.
[0052] 5A is a table 510 of example sequence values shown in wireless signals transmitted and received by the wireless communication system 400 of FIG. 4A and FIG. 4B according to a one hundred percent (100%) throughput scenario. In the illustrated embodiment, the hub device 404 transmits ten consecutive beacon wireless signals (beacon number 0 through beacon number 9) each corresponding to one of ten consecutive time points from a first time (t0) through a tenth time (t9). The hub device 404 configures each of the ten consecutive beacon wireless signals (beacon number 0 through beacon number 9) to include a respective sequence value taken from a set of values {999, 1000, ..., 1007, 1008}. In the illustrated embodiment, the sequence values in the series of orders are incremented by an integer value of 1, although these sequence values may be incremented, decremented, or otherwise altered in other manners, such as, for example, by incrementing or decrementing by an integer value of 2. In some cases, the sequence value includes alphabetic characters and the sequence value is incremented in alphabetical order (eg, A to Z, AA to ZZ, etc.).
[0053] The ten consecutive beacon wireless signals (beacon number 0 through beacon number 9) are received by each remote sensor device 402, which in response transmits a motion probe signal. More specifically, the remote sensor device 402 constructs and transmits ten consecutive motion probe signals (e.g., motion probe signals 408, 410, 4121, 414) that include the respective sequence values {999, 1000, ..., 1007, 1008} received over the ten consecutive beacon wireless signals.
[0054] FIG. 5B is a table 520 of example sequence values shown in a motion probe signal received at the wireless communication system 400 of FIGS. 4A and 4B according to various throughput scenarios. More specifically, table 520 shows the ten most recently received sequence values in a motion probe signal on each communication link. As with the previous example, the hub device 404 configures each successive beacon wireless signal with a sequential sequence value incremented by an integer value of one. If interference is present or the link between the devices is otherwise of poor quality (e.g., long distance between the devices), only certain beacon wireless signals are received at the remote sensor device. Thus, only those particular sequence values received at the remote sensor device are sent in the motion probe signal, and as shown in FIG. 5B, the motion probe signals received on the various communication links will have different ranges of sequence values. These sequence values can be indicative of link signal quality and can be used, for example, to weight the MIV for each link. For example, if links have a wide range of sequence values or old sequence values compared to other links (e.g., links IDs 1 and 7 in FIG. 5B), the signal quality may be degraded and the data used to detect motion may be old (compared to other links), and thus motion detected on these links (MIV for the link) may be weighted lower or not considered in determining the location of the detected motion.
[0055] In table 520, the identification information of each communication link corresponds to the device identification information of the source and destination devices communicating over that communication link. Remote sensor devices 402A, 402B, 402C, 402D and hub device 404 have respective device IDs A, B, C, D, and H. In the illustrated embodiment, a first communication link (link ID 1) corresponds to source device ID A and destination device ID H. A second communication link (link ID 2) corresponds to source device ID B and destination device ID H. A third communication link (link ID 3) corresponds to source device ID C and destination device ID H. A fourth communication link (link ID 4) corresponds to source device ID D and destination device ID H. A fifth communication link (link ID 5) corresponds to source device ID B and destination device ID A. A sixth communication link (link ID 6) corresponds to source device ID C and destination device ID A. The seventh communication link (link ID 7) corresponds to source device ID D and destination device ID A. The eighth communication link (link ID 8) corresponds to source device ID C and destination device ID B. The ninth communication link (link ID 9) corresponds to source device ID D and destination device ID B. The tenth communication link (link ID 10) corresponds to source device ID D and destination device ID C. In the illustrated embodiment, reverse links between devices (e.g., the reverse link for link ID 10 where the source is device ID C and the destination is device ID D) are not shown to avoid redundancy.
[0056] 5C is a table 530 of example motion information for communication links in the wireless communication system 400 of FIGS. 4A and 4B. In the illustrated embodiment, the table 530 includes a link MIV corresponding to each communication link and indicating an amount of channel perturbation from detected motion between a source device and a destination device of the communication link. A larger MIV indicates a larger channel perturbation between the source device and the destination device of the communication link, and a smaller MIV indicates a smaller channel perturbation between the source device and the destination device pair. The example MIVs in the table 530 are normalized between zero (0) and 100. The table 530 also includes a signal quality metric value for each communication link and a range of sequence values of the motion probe signal used to detect motion (e.g., data used to generate the MIVs shown in the table 530). Although shown as including motion information for each communication link, in some implementations, the table 530 may include motion information for each communication path between various devices.
[0057] The signal quality metric values in table 530 indicate the relative communication quality on each individual communication link. The signal quality metric values can be based on multiple factors including the throughput between pairs of wireless communication devices corresponding to the communication links (as indicated by the sequence range for the communication links in table 530), the signal-to-noise ratio (SNR), the number of dropped packets, or a combination thereof. In the illustrated embodiment, the signal quality metric is calculated to be in the range of zero (0) to 100. In some cases, the signal quality metric is based on (e.g., equal to) the value Q described above in equation (9). A higher signal quality metric indicates a higher quality channel environment for the communication link. For example, in the illustrated embodiment, link IDs 1 and 7 both have a relatively low signal quality metric value of 10, based at least in part on the low throughput of these communication links.
[0058] The sequence ranges in table 530 indicate the time period over which motion is detected for each communication link. As an example, the motion probe signals used to detect motion on link ID 1 are collected for a longer time period based on the larger range of sequence range 905 to 995 compared to the smaller sequence range 999 to 1008 for link ID 2. In some cases, motion is detected using a specified number of data packets, and thus a larger sequence range indicates a longer time required to collect a specified number of packets to detect motion. For a low quality link (such as link ID 1), it may take longer to collect a specified number of packets, and thus motion detection may be less reliable compared to a link that has received data packets more recently (such as link ID 2). Thus, in some cases, the MIV may be weighted based on the sequence range associated with the MIV. A corresponding weighted MIV may be generated by scaling the unweighted MIV with the determined weight value.
[0059] The hub device 404 may determine the weight value based on a time factor (e.g., sequence range, etc.), a signal quality metric value, or another factor. For example, the hub device 404 may select the maximum sequence value in the sequence range column as a time reference value (also referred to as a "reference sequence value") and weight the MIV based on this reference sequence value. In the illustrated embodiment, the hub device 404 selects a value of 1008 as the reference sequence value because this is the most recently received sequence value. The hub 404 may generate the weight value based on the reference sequence value in various ways. For example, in the illustrated embodiment, a binary weighting (e.g., a weighting value of zero (0) or one is used) is applied based on whether the maximum sequence value for the communication link is within a threshold sequence range of the reference sequence value. Thus, in the illustrated embodiment, the MIV for link IDs 1 and 7 is weighted zero (0) because their maximum sequence values are not within a range of ten of the reference sequence value of 1008. Other weighting techniques may be implemented in place of the binary technique shown. For example, a stepped weighting method can be used that applies a weighting factor between zero (0) and 1. In some cases, for example, a communication link having a maximum sequence value (e.g., 900) that deviates significantly (e.g., outside a threshold sequence range) from a reference sequence value (1008 in the illustrated example), can contribute a portion of the MIV of that link to the position determination, such as by applying a weight value greater than zero.
[0060] In some implementations, the neural network is trained to determine a location of the detected movement based on information provided by the hub device 404. For example, the hub device 404 can provide the information in table 530 as input to the trained neural network, and the neural network can provide a determination of the location of the detected movement. The neural network can be configured to generate a weighting function through a machine learning process, and the input data to the neural network includes a range of sequence values and corresponding movement values.
[0061] 5D is a table 540 of example aggregate motion indicator values and confidence factors corresponding to wireless communication devices in the wireless communication network 400 of FIG. 4A and FIG. 4B. Specifically, table 540 includes confidence factors (with or without weighting) that are peak-to-average ratios of MIV. The aggregate MIV is based on the link MIVs shown in table 530. In some cases, the aggregate MIV may be calculated according to the following formula:
number
[0062] For example, in the example for link ID 1, the motion indicator value (motion(link)) is source ) and hub device 404(link dest) indicates the degree of detected motion between the device and the device ID A. A larger aggregate MIV for a device may indicate that the detected motion is closer to the device, while a smaller aggregate MIV may indicate that the detected motion is further away from the device. The hub device 404 may then compare the aggregate MIV for each device to determine the location of the detected motion. For example, in the illustrated embodiment, the hub device 404 may determine that the detected motion is closest to device ID A because this device has the largest aggregate MIV (in both the weighted and unweighted cases). In some cases, the weighted MIV may be used to determine the location of the detected motion. In some implementations, the hub device 404 determines a peak-to-average ratio (weighted or unweighted) of the aggregate MIV. The peak-to-average ratio may be used as a confidence factor and may be expressed as:
number
[0063] The confidence factor can then be used to determine the location of the detected movement. For example, in the illustrated embodiment, the hub device 404 can determine that the detected movement is closest to device ID A because this is the device with the highest confidence factor (peak-to-average ratio, in both weighted and unweighted cases). In some examples, such as when the number of users is less than the number of remote sensor devices 402, the hub device 404 can expand the confidence factor to determine that the movement is at the corresponding device. For example, if the wireless communication system 400 includes a total of five devices and one user, a wireless communication device with a maximum peak-to-average ratio above a peak-to-average ratio threshold will indicate a possibility that the user is near the wireless communication device with the highest confidence factor. Similarly, if the wireless communication system 400 includes a total of five devices and two users, the top two confidence factors above a certain value can indicate a possibility that the user is near the two devices with the two highest confidence factors.
[0064] In a particular implementation, the hub device 404 may perform time-averaged sampling over a time period to smooth the aggregate MIV of the communication link based on the signal quality metric value. In some cases, the motion information may be further aggregated into a snapshot indicating the percentage of the wireless communication device that detected motion over various time periods. Over a given time period, the freshness of the motion information (e.g., how recently the motion probe signal was received based on the sequence value) may be used to increment a counter for a determined location of the detected motion based on the wireless communication device (e.g., device ID). If during the sampling time period the freshness of the data is below a threshold (e.g., the latest sequence value is less than a particular reference value), the counter is not incremented. As a result, the sum (e.g., as a percentage) of the counters of each device over a particular time period may be used to determine the most active wireless communication device (the device closest to the detected motion) for that time period.
[0065] In some implementations, the location of the detected movement may be shown on a user equipment (e.g., smartphone, speaker) or electronic display device (e.g., television, monitor, screen) to display or indicate the determined position of the object (i.e., person). The location of the detected movement may be presented to the user in an interface (e.g., visual, audio, audiovisual display) that, for example, highlights the device 402 or 404 where the movement was last determined to have occurred.
[0066] FIG. 6 illustrates a process 600 for determining a location of a detected motion in a space. In some cases, the process 600 can be implemented to determine a location of a detected motion based on a motion indicator value for each device, communication link, communication path, or a combination thereof. A data processing device (e.g., the processor 114 of the example wireless communication device 102C in FIG. 1A) can perform the operations in the example process 600 to determine a location of a detected motion based on signals received at various wireless communication devices (e.g., the hub device 404 of FIGS. 4A and 4B can determine a location of a detected motion of an object 416 based on signals received at the remote sensor device 402 and the hub device 404). Another type of device can also perform the example process 600. For example, the operations of the process 600 can be performed by a system other than a wireless communication device that receives a signal (e.g., a computer system connected to the wireless communication system 400 of FIGS. 4A and 4B that aggregates and analyzes the motion indicator values).
[0067] The example process 600 may include additional or different operations, and the operations may be performed in the order shown or in a different order. In some examples, one or more of the operations shown in FIG. 6 are implemented as a process that includes multiple operations, sub-processes, or other types of routines. In some examples, operations may be combined, performed in a different order, performed in parallel, repeated, or otherwise repeated or performed in a different manner.
[0068] At 602, a wireless signal is transmitted through space. The wireless signal may be a motion probe signal configured to search the space for motion. The motion probe signal may be formatted similarly to the motion probe signal 202 of FIG. 2 or in another manner. With reference to the example shown in FIGS. 4A and 4B, a remote sensor device 402 transmits a motion probe signal in response to a beacon wireless signal transmitted by a hub device 404. In a particular implementation, the beacon wireless signal includes a sequence value indicating when the beacon wireless signal was transmitted, and the remote sensor device includes the sequence value (e.g., in the control data 204) in the motion probe signal transmitted in response to the beacon wireless signal.
[0069] At 604, motion is detected based on the wireless signals transmitted at 602. Motion may be detected at one or more of the wireless communication devices receiving the signals transmitted at 602. For example, with reference to the example shown in FIG. 4A and FIG. 4B, each of the remote sensor device 402 and the hub device 404 may perform a motion detection process to detect motion of the object 416. The motion detection process may detect motion of the object 416 based on a set of signals received at the respective wireless communication devices at 602. In some cases, the motion detection process includes a comparison of signals received over a period of time. For example, motion may be detected based on a detected change in frequency response of the signals received at 602 or based on a detected change in channel response over space (e.g., based on channel state information (CSI)).
[0070] At 606, a motion indicator value for each communication link is calculated. The motion indicator value may indicate a relative degree of motion detected on the communication link. For example, referring to the example shown in FIG. 5C, the motion indicator value in the fourth column of table 530 indicates the degree of motion detected by one or both of the devices shown in the second and third columns on each communication link between these devices. The motion indicator value may be calculated based on the amount of perturbation observed in the channel response for the communication link. In some cases, the motion indicator value is normalized. For example, the motion indicator value in table 530 of FIG. 5C is a normalized value between zero (0) and 100.
[0071] At 608, a time factor for each communication link is calculated. The time factor for each communication link may be (i) a range of sequence values included in the motion probe signal used to detect motion on that communication link, (ii) a set (e.g., all) of sequence values included in the motion probe signal used to detect motion on that communication link, (iii) a minimum or maximum sequence value within the set of sequence values included in the motion probe signal used to detect motion on that communication link, or (iv) another indicator of the time period during which a motion probe signal is available to detect motion. In some implementations, the time factor for each communication link includes a value based on one or more of the above examples. For example, the time factor may be a weighting factor based on a maximum or minimum sequence value in the set of motion probe signals used to detect motion.
[0072] At 610, the motion indicator values are processed. The motion indicator values may be processed by a designated hub device (e.g., hub device 404 in the example shown in FIG. 4A and FIG. 4B) or by another system communicatively coupled to the device transmitting or sending the motion probe signal. In a particular implementation, processing the motion indicator values for each communication link includes calculating an aggregate motion indicator value for the wireless communication device. Calculating the aggregate motion indicator value may include, in some cases, calculating a sum of each link motion indicator value associated with the wireless communication device. For example, with reference to the example shown in FIG. 5C and FIG. 5D, the value in the second column of table 540 includes a sum of the link motion indicator values shown in table 530. The aggregate link motion indicator value may, in some examples, be used as an aggregate motion indicator value at 612 to determine the location of the detected motion.
[0073] In certain implementations, calculating the aggregate motion indicator value includes calculating a peak-to-average ratio of the total link motion indicator values for each wireless communication device. For example, with reference to the example shown in Figures 5C and 5D, the values in the third column of table 540 include the peak-to-average ratios of the total link motion indicator values shown in table 530. The peak-to-average ratio may be used as the aggregate motion indicator value in 612 in some examples to determine the location of the detected motion. In some cases, the peak-to-average ratio may be used as a confidence factor as discussed above.
[0074] In some implementations, processing the motion indicator values for each communication link includes weighting the link motion indicator values (e.g., using binary weighting, graduated weighting, or a weighting scheme determined by a neural network). In some cases, the weighting is based on the time factors calculated at 608. For example, the same sum and peak-to-average values as described above are then calculated based on the weighted motion indicator values, and the calculated values can be used as an aggregate motion indicator value in determining the location of the detected motion at 612.
[0075] At 612, a location of the detected motion is determined. The location of the detected motion may be determined as a possibility that the object motion is near one or more of the wireless communication devices. In some cases, the location is determined based on (i) the maximum aggregate motion indicator value based on unweighted link motion indicator values, (ii) the maximum aggregate motion indicator value based on weighted link motion indicator values, (iii) the highest confidence factor (e.g., peak-to-average ratio), or (iv) a confidence factor greater than a threshold. In some implementations, the determined location is for one of the wireless communication devices. For example, with reference to the example shown in FIG. 5C and FIG. 5D, the determined location may be indicated for device ID A (e.g., “detected motion near device ID A”) based on device ID A having the maximum link motion indicator sum value or the maximum peak-to-average ratio among all the devices. In some implementations, the determined location is for multiple wireless communication devices. For example, referring to the examples shown in Figures 5C and 5D, a determined location may be indicated for device IDs A and B (e.g., "detected movement near device IDs A and B") based on device IDs A and B having a peak-to-average ratio greater than 1 (in a weighted scenario).
[0076] Although the present disclosure has been described with respect to motion values determined per communication link (e.g., communication link 126 in FIG. 1C), the process 600 of FIG. 6 can be implemented on a per communication path (e.g., communication paths 121 to 124 in FIG. 1C) basis. In some cases, this can scale the number of inputs to the motion localization process described above. For example, in some implementations, a motion indicator value is calculated for each communication path. For example, assuming that each device shown in table 530 of FIG. 5C has two transmit antennas and two receive antennas, a motion indicator value can be calculated for each of the four communication paths between each antenna of the device. In some examples, the motion indicator value for a communication link can be based on the motion indicator values for each communication path of the link. In some cases, the motion indicator value for each communication path can be weighted based on the signal quality metric value for the communication path, and the weighted value for the communication path can be used to determine the motion indicator value for the communication link. In some examples, the motion indicator values for the communication paths may be used in the same manner as described herein with respect to the use of motion indicator values for the communication links (e.g., path motion indicator values may be used instead of link motion indicator values in 610 to calculate an aggregate motion indicator value for the communication devices). Also, a time factor may be calculated for each communication path in the same manner as described above for the communication links. In some cases, a time factor may be used to calculate a time factor for each communication link or may be used in place of a time factor for each communication link (e.g., path time factor may be used instead of link time factor in 610).
[0077] Portions of the subject matter and operations described herein may be implemented in digital electronic circuitry, or computer software, firmware, or hardware, including the structures disclosed herein and their structural equivalents, or a combination of one or more of these. Portions of the subject matter described herein may be implemented as one or more computer programs, i.e., as one or more modules of computer program instructions encoded on a computer storage medium and executed by or to control the operation of a data processing apparatus. A computer storage medium may be or be included in a computer readable storage device, a computer readable storage substrate, a random or serial access memory array or device, or a combination of one or more of these. Furthermore, a computer storage medium is not a propagating signal, although a computer storage medium may be a source or destination for computer program instructions encoded in an artificially generated propagating signal. A computer storage medium may also be or be included in one or more separate physical components or media (e.g., multiple CDs, disks, or other storage devices).
[0078] Some of the operations described herein may be implemented as operations performed by a data processing apparatus on data stored in one or more computer-readable storage devices or received from other sources.
[0079] The term "data processing apparatus" encompasses all types of apparatus, devices and machines that process data, including, by way of example, the aforementioned programmable processors, computers, systems-on-chip or systems-on-chips, or combinations of the aforementioned. An apparatus may include special purpose logic circuitry, such as, for example, an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit). An apparatus may further include, in addition to hardware, code that forms the execution environment for the subject computer program, such as, for example, code that constitutes a processor firmware, a protocol stack, a database management system, an operating system, a cross-platform runtime environment, a virtual machine, or a combination of one or more of these.
[0080] A computer program (also known as a program, software, software application, script, or code) can be written in any type of programming language, including compiled or interpreted, declarative or procedural, and a computer program can be deployed in any type, including as a stand-alone program or as a module, component, subroutine, object, or other unit suitable for use in a computing environment. A computer program can, but need not, correspond to a file in a file system. A program can be stored in a single file dedicated to the program, or in multiple linked files (e.g., a file that stores one or more modules, subprograms, or portions of code), in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document). A computer program can be deployed to run on one computer or on multiple computers located at one site or distributed across multiple sites and interconnected by a communications network.
[0081] Some of the processes and logic flows described herein may be performed by one or more programmable processors executing one or more computer programs to perform operations by operating on input data to generate output. The processes and logic flows may also be performed by, and apparatus may be implemented as, special purpose logic circuitry, such as, for example, an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).
[0082] Processors suitable for executing computer programs include, by way of example, both general purpose and special purpose microprocessors, as well as processors of any type of digital computer. In general, a processor receives instructions and data from a read-only memory or a random access memory, or both. Elements of a computer system may include a processor for performing operations according to instructions, and one or more memory devices for storing instructions and data. A computer system may also include one or more mass storage devices for storing data, such as, for example, a non-magnetic drive (e.g., a solid state drive), a magnetic disk, a magneto-optical disk, or an optical disk, or may be operatively coupled to receive and / or transfer data therebetween. However, a computer system need not have such devices. Furthermore, a computer system may be incorporated into another device, such as, for example, a telephone, a tablet computer, an electronic device, a portable audio or video player, a gaming machine, a global positioning system (GPS) receiver, or an Internet of Things (IoT) device, a machine-to-machine (M2M) sensor or actuator, or a portable storage device (e.g., a Universal Serial Bus (USB) flash drive). Devices suitable for storing computer program instructions and data include, by way of example, all forms of non-volatile memory, media and memory devices, including semiconductor memory devices (e.g., EPROM, EEPROM, flash memory devices, etc.), magnetic disks (e.g., internal hard disks, removable disks, etc.), magneto-optical disks, and CD ROM and DVD ROM disks. In some examples, the processor and the memory may be supplemented by or incorporated in special purpose logic circuitry.
[0083] To provide for user interaction, the operations may be implemented on a computer having a display device (e.g., a monitor or another type of display device) that displays information to the user, and a keyboard and pointing device (e.g., a mouse, trackball, stylus pen, touch-sensitive screen, or another type of pointing device) that allows the user to provide input to the computer. Other types of devices may also be used to provide user interaction, e.g., feedback provided to the user may be any form of sensory feedback, e.g., visual feedback, auditory feedback, or haptic feedback, and input from the user may be received in any form, including acoustic input, speech input, or tactile input. Additionally, the computer may interact with the user by sending and receiving documents to and from a device used by the user, e.g., by sending a web page to a web browser on the user's client device in response to a request received from the web browser.
[0084] A computer system may include a single computing device or multiple computers operating in close proximity or generally remote from each other and typically interacting through a communications network. The communications network may include one or more of a local area network ("LAN") and a wide area network ("WAN"), an internetwork (e.g., the Internet), a network including satellite links, and a peer-to-peer network (e.g., an ad hoc peer-to-peer network). The relationship of client and server may arise by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
[0085] In some general aspects of the described embodiments, a location of the detected movement within a space is determined.
[0086] In a first embodiment, the motion of an object in a space is detected based on wireless signals transmitted through the space by a wireless communication system comprising a plurality of wireless communication devices. Each wireless signal is transmitted and received by a respective pair of wireless communication devices. A motion indicator value for each wireless communication device is calculated by operation of one or more processors. The motion indicator value for each wireless communication device represents a degree of motion detected by each wireless communication device based on a subset of the wireless signals transmitted or received by the respective wireless communication device. A location of the detected motion in the space is determined based on the motion indicator value.
[0087] An implementation of the first example may include one or more of the following features in some examples: The wireless communication system may include a hub device and a remote sensor device, where the hub device may receive a motion indicator value from the remote sensor device and determine a location of the detected motion based on the received motion indicator value. The motion indicator value may be an aggregate motion indicator value. A link motion indicator value for each communication link in the wireless communication system is obtained, and an aggregate motion indicator value for each wireless communication device is calculated based on link motion indicator values for a subset of communication links supported by the wireless communication device. Each communication link may be provided by a respective pair of wireless communication devices. Calculating the aggregate motion indicator value for the wireless communication device may include weighting the link motion indicator values for the subset of communication links based on a signal quality metric for the respective communication link. The wireless communication system may include a plurality of communication links, each provided by a respective pair of wireless communication devices, where each communication link includes a plurality of communication paths, with each communication path being between a first signal hardware path of a first wireless communication device of the pair and a second signal hardware path of a second wireless communication device of the pair. A path motion indicator value for each communication path in the wireless communication system may be obtained, and an aggregate motion indicator value for each wireless communication device may be calculated based on the path motion indicator values for a subset of the communication paths supported by that wireless communication device.
[0088] An implementation of the first example may include one or more of the following features in some examples: A confidence factor for each wireless communication device may be calculated based on a scaling of a motion indicator value for the wireless communication device by a normative motion indicator value for that wireless communication device, and a location of the detected motion may be determined based on the confidence factor. Determining the location of the detected motion in the space may include determining which of the wireless communication devices is closest to the detected motion based on a comparison of the respective motion indicator values for the wireless communication devices. The location of the detected motion in the space may be determined based on signal quality metrics for each communication link in the wireless communication system, each communication link being provided by a respective pair of wireless communication devices. Determining the location of the detected motion in the space may include combining signal quality metrics for a subset of the communication links supported by each wireless communication device. The motion indicator values may be provided as inputs to a neural network, and a location of the detected motion may be determined based on an output of the neural network.
[0089] In a second example, the movement of an object in a space is detected based on a sequence of wireless signals transmitted through the space by a wireless communication system including a plurality of wireless communication devices. A time coefficient for each pair of wireless communication devices is calculated by operation of one or more processors based on sequence values included in each wireless signal transmitted and received between the pair of wireless communication devices. The sequence value in each wireless signal represents a time position of the wireless signal in the sequence of signals. A location of the detected movement in the space is determined based on the time coefficients.
[0090] An implementation of the second example may include one or more of the following features in some examples: The wireless communication system may include a hub device and a remote sensor device. The hub device may receive a motion indicator value from the remote sensor device and determine a location of the detected motion based on the received motion indicator value and a time factor. A motion indicator value may be calculated for each wireless communication device of the wireless communication system, with the motion indicator value for each wireless communication device representing an extent of motion detected by the each wireless communication device. The motion indicator value may be based on a subset of a series of wireless signals transmitted or received by the each wireless communication device. The location of the detected motion may be determined based on the motion indicator value and the time factor. Each motion indicator value may be weighted with an associated time factor, and the location of the detected motion may be determined based on the weighted motion indicator value. The associated time factor may be for the same wireless communication device as the motion indicator value.
[0091] Implementations of the second example may include one or more of the following features in some examples: The step of calculating the time coefficients may include selecting a reference sequence value from among sequence values included in a set of wireless signals received by wireless communication devices of the wireless communication system, and calculating a time coefficient for each communication link provided by each respective pair of wireless communication devices. The step of calculating the time coefficient for each communication link may be based on a determination as to whether a sequence value in the wireless signal received on the communication link is within a threshold sequence range of the reference sequence value. The reference sequence value may be a maximum or minimum sequence value in the set of wireless signals received by the wireless communication devices of the wireless communication system. The step of calculating the time coefficient for each communication link may include determining whether a maximum sequence value included in a subset of wireless signals received on the communication link is within a threshold sequence range of the reference sequence value. The sequence values may be provided as inputs to a neural network, and the time coefficients may be calculated based on an output of the neural network.
[0092] In some implementations, a computer-readable storage medium stores instructions operable, when executed by a data processing device, to perform one or more operations of the first or second example. In some implementations, the system (e.g., a wireless communication device, a computer system, or other type of system communicatively coupled to a wireless communication device) includes one or more data processing devices and a memory storing instructions operable, when executed by the data processing device, to perform one or more operations of the first or second example. In some implementations, the motion detection system includes a hub device and one or more remote sensor devices, which are configured to perform one or more operations of the first or second example.
[0093] Although the present specification contains many details, these details should not be construed as limiting the scope of what can be claimed, but rather as descriptions of features specific to particular examples. Also, some features described in the present specification in the context of separate implementations may also be combined. Conversely, various features described in the context of a single implementation may also be implemented in multiple embodiments separately or in any suitable subcombination.
[0094] Although certain embodiments have been described, it will be understood that various modifications may be made and, accordingly, other embodiments are within the scope of the following claims.
Claims
1. 1. A motion detection method, comprising: detecting a motion of an object in a space based on a wireless signal including a plurality of frequency components transmitted through the space by a wireless communication system including a plurality of wireless communication devices, each wireless signal being transmitted and received via a respective communication link provided by a respective pair of the wireless communication devices, the detecting the motion of the object including detecting a change in a channel response of each communication link, the channel response including an attenuation coefficient of each frequency component of each wireless signal determined based on a received signal; calculating, by operation of one or more processors, a motion indicator value for each of the communication links, the calculating the motion indicator value comprising calculating the motion indicator value based on an amount of perturbation of the channel response; determining a location of the detected movement within the space based on the movement indicator value of each communication link; A motion detection method comprising:
2. 2. The method of claim 1, wherein the wireless communication system includes a hub device and a remote sensor device, the hub device receiving the motion indicator value from the remote sensor device and determining a location of the detected motion based on the received motion indicator value.
3. the motion indicator value is an aggregate motion indicator value; The method comprises: obtaining link movement indicator values for each communication link in the wireless communication system, each communication link being provided by a respective pair of the wireless communication devices; calculating the aggregate motion indicator value for each wireless communication device based on the link motion indicator values for a subset of the wireless signals transmitted or received by the wireless communication device; The method of claim 1 , comprising:
4. 4. The method of claim 3, wherein calculating the aggregate motion indicator value for a wireless communication device comprises weighting the link motion indicator values for a subset of the transmitted or received wireless signals based on a signal quality metric for the respective communication link.
5. the wireless communication system includes a plurality of communication links, each communication link provided by a respective pair of the wireless communication devices, each communication link including a plurality of communication paths, each communication path being between a first signal hardware path of a first wireless communication device of the pair and a second signal hardware path of a second wireless communication device of the pair; the motion indicator value is an aggregate motion indicator value; The method comprises: obtaining a path movement indicator value for each communication path within the wireless communication system; calculating the aggregate motion indicator value for each wireless communication device based on the path motion indicator values for a subset of the wireless signals transmitted or received by the wireless communication device; The method of claim 1 , comprising:
6. 6. The method of claim 1 , comprising: for each wireless communication device, calculating a confidence factor based on scaling the movement indicator value for the wireless communication device by a reference movement indicator value for the wireless communication device, and a location of the detected movement is determined based on the confidence factor.
7. 6. The method of claim 1, wherein determining a location of the detected motion within the space comprises determining which of the wireless communication devices is closest to the detected motion based on a comparison of the respective motion indicator values for the wireless communication devices.
8. 6. The method of claim 1, wherein a location of the detected motion in the space is determined based on the motion indicator values weighted based on a signal quality metric for each communication link in the wireless communication system, each communication link being provided by a respective pair of the wireless communication devices.
9. 10. The method of claim 8, wherein determining a location of the detected movement within the space comprises combining signal quality metrics for a subset of the wireless signals transmitted or received by each wireless communication device.
10. providing said motion indicator values as inputs to a neural network; determining a location of the detected movement based on an output of the neural network; The method of any one of claims 1 to 5, comprising:
11. 1. A computer-readable storage medium storing instructions operable to perform operations when executed by a data processing apparatus, comprising: The operation includes: detecting a motion of an object in a space based on a wireless signal including a plurality of frequency components transmitted through the space by a wireless communication system including a plurality of wireless communication devices, each wireless signal being transmitted and received via a respective communication link provided by a respective pair of the wireless communication devices, detecting the motion of the object includes detecting a change in a channel response of each communication link, the channel response including an attenuation coefficient of each frequency component of each wireless signal determined based on a received signal; calculating a motion indicator value for each communication link, the calculating the motion indicator value comprising calculating the motion indicator value based on an amount of perturbation of the channel response; determining a location of the detected motion within the space based on the motion indicator value of each communication link; 23. A computer-readable storage medium comprising:
12. 12. The computer-readable storage medium of claim 11, wherein the wireless communication system includes a hub device and a remote sensor device, the hub device receiving a motion indicator value from the remote sensor device and determining a location of the detected motion based on the received motion indicator value.
13. the motion indicator value is an aggregate motion indicator value; The operation includes: obtaining link movement indicator values for respective communication links in the wireless communication system, each communication link being provided by a respective pair of the wireless communication devices; calculating the aggregate motion indicator value for each wireless communication device based on the link motion indicator values for a subset of the wireless signals transmitted or received by the wireless communication device; The computer-readable storage medium of claim 11 .
14. 14. The computer-readable storage medium of claim 13, wherein calculating the aggregate motion indicator value for the wireless communication device comprises weighting the link motion indicator values for a subset of the transmitted or received wireless signals based on a signal quality metric for the respective communication link.
15. the wireless communication system includes a plurality of communication links, each communication link provided by a respective pair of the wireless communication devices, each communication link including a plurality of communication paths, each communication path being between a first signal hardware path of a first wireless communication device of the pair and a second signal hardware path of a second wireless communication device of the pair; the motion indicator value is an aggregate motion indicator value; The operation includes: obtaining a path movement indicator value for each communication path within the wireless communication system; calculating the aggregate motion indicator value for each wireless communication device based on the path motion indicator values for a subset of the wireless signals transmitted or received by the wireless communication device; The computer-readable storage medium of claim 11, comprising:
16. 16. The computer-readable storage medium of claim 11, further comprising: for each wireless communication device, calculating a confidence factor based on a scaling of the motion indicator value for the wireless communication device by a reference motion indicator value for the wireless communication device, wherein a location of the detected motion is determined based on the confidence factor.
17. 16. The computer-readable storage medium of claim 11, wherein determining a location of the detected motion within the space includes determining which of the wireless communication devices is closest to the detected motion based on a comparison of the respective motion indicator values for the wireless communication devices.
18. 16. The computer-readable storage medium of claim 11, wherein a location of the detected motion in the space is determined based on the motion indicator values weighted based on a signal quality metric for each communication link in the wireless communication system, each communication link being provided by a respective pair of the wireless communication devices.
19. 20. The computer-readable storage medium of claim 18, wherein determining a location of the detected movement within the space includes combining signal quality metrics for a subset of the wireless signals transmitted or received by each wireless communication device.
20. The operation includes: providing said motion indicator values as inputs to a neural network; determining a location of the detected movement based on an output of the neural network; and 16. The computer readable storage medium of claim 11, comprising:
21. 1. A motion detection system comprising: the motion detection system includes a plurality of remote sensor devices; Each remote sensor device is configured to detect a motion of an object in space based on a wireless signal including a plurality of frequency components received from the other remote sensor device via a respective communication link by detecting a change in a channel response, the channel response including an attenuation coefficient of each frequency component of the respective wireless signal determined based on the received signal; each remote sensor device configured to determine a motion indicator value for said respective communication link based on an amount of perturbation of said channel response; The motion detection system comprises: a hub device communicatively coupled to the remote sensor devices, the hub device configured to transmit a beacon wireless signal and configured to determine a location of the detected movement within the space based on the movement indicator value received from the respective remote sensor device in response to the beacon wireless signal. Motion detection system.
22. 22. The motion detection system of claim 21, wherein the remote sensor device and the hub device form a wireless mesh network.
23. 22. The motion detection system of claim 21, wherein the motion indicator values are link motion indicator values for each communication link between a pair of remote sensor devices, and the hub device is configured to calculate an aggregate motion indicator value for each remote sensor device based on the link motion indicator values for a subset of the wireless signals transmitted or received by the remote sensor devices.
24. 24. The motion detection system of claim 23, wherein the hub device is configured to calculate the aggregate motion indicator value for each remote sensor device by weighting the link motion indicator values for a subset of the wireless signals transmitted or received by the remote sensor device based on a signal quality metric for the communication link.
25. the movement indicator value is a path movement indicator value for a first signal hardware path of a remote sensor device and a second signal hardware path of the remote sensor device; the hub device is configured to calculate an aggregate motion indicator value for each remote sensor device based on the path motion indicator values for a subset of the wireless signals transmitted or received by each remote sensor device.
22. The motion detection system of claim 21.
26. 26. The movement detection system of claim 21, wherein the hub device is configured to calculate, for each remote sensor device, a confidence factor based on scaling the movement indicator value for the remote sensor device by a reference movement indicator value for the wireless communication device, and to determine a location of the detected movement based on the confidence factor.
27. 26. The motion detection system of claim 21, wherein the hub device is configured to determine a location of the detected motion by determining which of the remote sensor devices is closest to the detected motion based on a comparison of the respective motion indicator values for the remote sensor devices.
28. 26. The motion detection system of claim 21 , wherein the hub device is configured to determine a location of the detected motion within the space based on the motion indicator value weighted based on a signal quality metric for each communication link in a wireless communication system, each communication link being provided by a respective pair of the remote sensor devices.
29. 30. The motion detection system of claim 28, wherein the hub device is configured to determine a location of the detected motion within the space by combining signal quality metrics for a subset of the wireless signals transmitted or received by each remote sensor device.
30. 26. A movement detection system according to any one of claims 21 to 25, wherein the hub device is configured to provide the movement indicator value as an input to a neural network and to determine a location of the detected movement based on an output of the neural network.
Citation Information
Patent Citations
Intrusion detection system, intrusion detection slave unit, intrusion detection master unit, intrusion detection method and intrusion detection program
JP2013072756A
Systems and methods of device-free motion detection and presence detection
US20120146788A1
Detecting signal modulation for motion detection
US9524628B1
Detecting location within a network
WO2017078811A2