CN112513663A - Motion detection for passive indoor positioning system - Google Patents

Motion detection for passive indoor positioning system Download PDF

Info

Publication number
CN112513663A
CN112513663A CN201980051749.XA CN201980051749A CN112513663A CN 112513663 A CN112513663 A CN 112513663A CN 201980051749 A CN201980051749 A CN 201980051749A CN 112513663 A CN112513663 A CN 112513663A
Authority
CN
China
Prior art keywords
computing device
user computing
access point
wireless signal
location
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201980051749.XA
Other languages
Chinese (zh)
Inventor
陈辉芳
阿毕实·穆赫吉
彭荣
奥斯卡·贝加拉诺·查韦斯
桑托什·甘诗雅姆·潘迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US16/103,781 external-priority patent/US10349216B1/en
Application filed by Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN112513663A publication Critical patent/CN112513663A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/14Determining absolute distances from a plurality of spaced points of known location
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/0009Transmission of position information to remote stations
    • G01S5/0018Transmission from mobile station to base station

Abstract

The enterprise system configures an access point device at the enterprise location to communicate with a location determination system (140). The location determination system receives wireless signal attributes of a user computing device (110) broadcasting Wi-Fi signal data at an enterprise location from one or more access point devices (130). For a particular time window, the location determination system determines aggregated characteristics of the received wireless signal data across all access point devices and classifies each user computing device as mobile or stationary by applying the wireless signal data to a model. For each user computing device determined to be mobile, the location determination system calculates a respective location of the user computing device based on the wireless signal data. For each user computing device determined to be stationary, the location determination system does not calculate a respective location of the respective user computing device.

Description

Motion detection for passive indoor positioning system
Technical Field
The present disclosure relates generally to indoor positioning systems, and more particularly to determining user computing device location based on wireless signal data of the user computing device.
Background
Large-scale positioning systems that track thousands of devices and utilize hundreds of access points ("APs") have become a paramount component of real-world wireless deployments. Customer participation, asset tracking, and indoor navigation are some specific applications that may utilize an indoor positioning system. These positioning systems may use angle-of-arrival ("AoA") and/or received signal strength indicator ("RSSI") measurements to achieve position accuracy within one to three meters, each position calculation typically being expensive. Inertial sensor data traditionally used to detect motion of a user computing device is generally not available to a position determination system. Since users are often stationary in an enterprise setting (workplace, hospital, etc.) for a significant amount of time, the positioning system unnecessarily recalculates the position calculations. Thus, existing indoor positioning systems have provided considerable accuracy, but have limited scalability and coverage.
Current applications for determining the location of a user computing device do not provide for efficient positioning based on motion classification.
Disclosure of Invention
The technology herein provides a computer-implemented method of determining a location of a user computing device based on wireless signal data and motion classifications received at an access point. In an example, an enterprise system configures an access point device at an enterprise location to communicate with a location determination system via a network and receive Wi-Fi signal data via a wireless communication channel. One or more users configure respective user computing devices to broadcast Wi-Fi signal data at an enterprise location. The location determination system receives wireless signal attributes of user computing devices broadcasting Wi-Fi signal data at an enterprise location from one or more access point devices via a network. For a particular time window, the location determination system receives wireless signal attributes of the user computing devices over the time window from one or more access point devices, aggregates the received wireless signal attributes, and determines whether each user computing device is moving or stationary by applying the aggregated wireless signal attributes to a model. For each user computing device determined to be mobile, the location determination system calculates a respective location of the user computing device based on wireless signal data associated with the respective user computing device and displays the determined location via the user interface. For each user computing device determined to be stationary, the location determination system does not calculate a respective location of the respective user computing device. Location determination continues to receive wireless signal attributes from one or more computing devices at the enterprise location that continue to broadcast Wi-Fi signal data via the network, and continues to determine a location of the user computing device based on the motion classification.
In certain other example aspects described herein, systems and computer program products are provided for determining a location of a user computing device based on wireless signal data and motion classifications received at an access point.
These and other aspects, objects, features and advantages of the example embodiments will become apparent to those of ordinary skill in the art upon consideration of the following detailed description of the illustrated example embodiments.
Drawings
Fig. 1 is a diagram depicting an example system for determining a location of a user computing device based on wireless signal data and motion classifications received at an access point, according to some examples.
Fig. 2 is a block flow diagram depicting a method for determining a location of a user computing device from a motion classification based on wireless signal data received at an access point device, according to some examples.
Fig. 3 is a block flow diagram depicting a method for registering an account with a position determination system and downloading an application onto a user computing device by a user, according to some examples.
Fig. 4 is a block flow diagram depicting a method for receiving wireless signal data of a user computing device from an access point device by a location determination system, according to some examples.
Fig. 5 is a block flow diagram depicting a method for determining, by a location determination system, a motion classification of a user computing device based on wireless signal properties of the user computing device over a time window, according to some examples.
Fig. 6 is a diagram illustrating an example configuration of an example user computing device and a plurality of access point devices at an example enterprise location at time T, according to some examples.
Fig. 7 is a diagram illustrating an example method for extracting features from Wi-Fi signal data received at multiple access points, according to some examples.
FIG. 8 is a block diagram depicting a computing machine and modules, according to some examples.
Detailed Description
Overview
Example embodiments described herein provide computer-implemented techniques for determining a location of a user computing device based on wireless signal data and motion classifications received at an access point.
In an example, an enterprise system configures an access point device at an enterprise location to communicate with a location determination system via a network and receive Wi-Fi signal data via a wireless communication channel. One or more users configure respective user computing devices to broadcast Wi-Fi signal data at an enterprise location. The location determination system receives wireless signal attributes of user computing devices broadcasting Wi-Fi signal data at an enterprise location from one or more access point devices via a network. For a particular time window, the location determination system receives wireless signal attributes of the user computing devices over the time window from one or more access point devices, aggregates the received wireless signal attributes, and determines whether each user computing device is moving or stationary by applying the aggregated wireless signal attributes to a model. For each user computing device determined to be mobile, the location determination system calculates a respective location of the user computing device based on wireless signal data associated with the respective user computing device and displays the determined location via the user interface. For each user computing device determined to be stationary, the location determination system does not calculate a respective location of the respective user computing device. Location determination continues to receive wireless signal attributes from one or more computing devices at the enterprise location that continue to broadcast Wi-Fi signal data via the network, and continues to determine a location of the user computing device based on the motion classification.
Using and relying on the methods and systems described herein, a network system can detect motion of a user computing device by comparing phase vectors determined from Wi-Fi signals of the user computing device received at one or more access points to RSSI data. The systems and methods herein provide new motion detection models that exploit changes in measurements and temporal-spatial relationships with respect to device motion and achieve substantial accuracy while incurring negligible computational overhead. As such, the systems and methods herein provide computational savings with negligible impact on position accuracy.
Various examples will be explained in more detail in the following description, which is read in conjunction with the accompanying drawings showing the program flow.
Turning now to the drawings, wherein like numerals indicate like (but not necessarily identical) elements throughout the several views, example embodiments are described in detail.
System architecture
Fig. 1 is a block diagram depicting a system 100 for determining a location of a user computing device 110 based on wireless signal data and motion classifications received at an access point, according to some examples. As shown in fig. 1, system 100 includes network computing devices 110, 130, 140, and 150 configured to communicate with each other via one or more networks 120. In some embodiments, a user associated with a device must install an application and/or make a feature selection to obtain the benefits of the techniques described herein.
In an example, network 120 includes wired or wireless telecommunication mechanisms by which network systems (including systems 110, 130, and 140) can communicate and exchange data. For example, each network 120 may include, be implemented as, or may be part of: a Storage Area Network (SAN), a Personal Area Network (PAN), a Metropolitan Area Network (MAN), a Local Area Network (LAN), a Wide Area Network (WAN), a Wireless Local Area Network (WLAN), a Virtual Private Network (VPN), an intranet, the internet, a mobile telephone network, a card network, Bluetooth Low Energy (BLE), a near field communication Network (NFC), any form of standardized radio frequency, infrared, sound (e.g., audible sounds, melodies, and ultrasound), other short-range communication channels, or any combination thereof, or any other suitable architecture or system that facilitates communication of signals, data, and/or messages (often referred to as data). Throughout this specification, it should be understood that the terms "data" and "information" are used interchangeably herein to refer to text, images, audio, video, or any other form of information that may be present in a computer-based environment.
In an example, each network system (including systems 110, 130, and 140) includes a device having a communication module that is capable of sending and receiving data over network 120. For example, each network system (including systems 110, 130, and 140) may include: a server, a personal computer, a mobile device (e.g., a notebook computer, a handheld computer, a tablet computer, a netbook computer, a Personal Digital Assistant (PDA), a video game device, a GPS locator device, a cellular telephone, a smart phone, or other mobile device), a television having one or more processors embedded therein and/or coupled to one or more processors, an appliance having one or more processors embedded therein and/or coupled to one or more processors, or other suitable technology including or coupled to a web browser or other application for communicating via network 120. In the example shown in fig. 1, the network systems (including systems 110, 130, and 140) are operated by user 101, an access point device 130 operator, and a location determination system 140 operator, respectively.
The example user computing device 110 includes a user interface 111, an application 113, a data storage unit 115, an antenna 117, and a microphone assembly 119. In an example, the user computing device 110 communicates with the location determination system 140 via the network 120. In an example, the user computing device 110 broadcasts data via a wireless communication channel (e.g., the Wi-Fi communication channel 105) such that nearby access point devices 130 may receive the broadcast data via the wireless communication channel. In an example, the user computing device 110 receives data from one or more access point devices 130 associated with the location determination system 140 over a wireless communication channel (e.g., Wi-Fi communication channel 105). In this example, the user computing device 110 transmits data over a wireless communication channel (e.g., Wi-Fi communication channel 105) to one or more access point devices 130 associated with the position determination system 140.
In an example, the user interface 111 enables the user 101 to interact with the user computing device 110. For example, user interface 111 includes a touch screen, a voice-based interface, or any other interface that allows user 101 to provide input and receive output from application 113 on user computing device 110. In an example, a user 101 interacts with an application 113 via a user interface 111. In an example, the user 101 may log into the application 113 by selecting the application 113 via the user computing device 110 and/or entering a name and password for the user 101 via the user interface 111.
In an example, the application 113 is a program, function, routine, applet, or similar entity that resides on the user computing device 110 and performs its operations on the user computing device 110. In some examples, the user 101 must install the application 113 and/or make feature selections on the user computing device 110 to obtain the benefits of the techniques described herein. In an example, a user 101 accesses an application 113 on a user computing device 110 via a user interface 111. In an example, the application 113 is associated with a location determination system 140. In an example, the application 113 includes a payment application or a wallet application. In another example, the application 113 includes a ticketing application. In yet another example, the applications 113 include an email application, a mapping application, a shopping application, a social media application, or other applications. In an example, when the user 101 logs into the application, the user computing device 110 broadcasts data, e.g., a user computing device 110 network identifier, via the Wi-Fi communication channel 105. In other examples, the user computing device 110 broadcasts data via the Wi-Fi communication channel 105 based on one or more configurations of the user computing device 110 set by the user 110 via the user interface 111. In some examples, the user computing device 110 does not include the application 113, or the user 101 does not download the application 113 onto the user computing device 110 via the network 120. In some examples, one or more functions described herein as being performed by application 113 or via application 113 are performed via the user computing device 110 operating system.
In an example, the data storage unit 115 includes a local or remote data storage structure accessible to the user computing device 110 suitable for storing information. In an example, the data storage unit 115 stores encrypted information, such as HTML5 local storage.
In an example, the antenna 117 is the means of communication between the user computing device 110 and the access point device 130. In an example embodiment, Wi-Fi controller 119 outputs radio signals through antenna 117 or listens for radio signals from access point device 130. In another example embodiment, a bluetooth controller or a near field communication ("NFC") controller is used.
In an example, the Wi-Fi controller 119 can send and receive data, perform authentication and encryption functions, and instruct the user computing device 110 how to listen for transmissions from the access point device 130 or configure the user computing device 110 into various power saving modes according to Wi-Fi specified procedures. In another example embodiment, the user computing device 110 includes a bluetooth controller or NFC controller capable of performing similar functions. The example Wi-Fi controller 119 communicates with the application 113 and is capable of sending and receiving data over the wireless Wi-Fi communication channel 105. In another example embodiment, the bluetooth controller 119 or the NFC controller 119 performs similar functions as the Wi-Fi controller 119 using bluetooth or NFC protocols. In an example embodiment, the Wi-Fi controller 119 activates the antenna 117 to create a wireless communication channel between the user computing device 110 and the access point device 130. The user computing device 110 communicates with the access point device 130 via the antenna 117. In an example embodiment, when the user computing device 110 has been activated, the Wi-Fi controller 119 polls for radio signals through the antenna 117 or listens for radio signals from the access point device 130.
The example access point device 130 includes an application 133, a data storage unit 135, an antenna 137, and a Wi-Fi controller 139. In some examples, the access point device 130 includes a beacon device or a mobile computing device, such as a smartphone device, tablet device, or other mobile computing device. In an example, the access point device 130 receives data broadcast by one or more user computing devices 110 via the Wi-Fi communication channel 105. In other examples, the access point device 130 transmits data to the user computing device 110 via a Wi-Fi communication channel. In another example, the access point device 130 communicates with the user computing device 110 via the network 120. In an example, the access point device 130 communicates with the position determination system 140 via the network 120 to send data to the position determination system 140. In an example, the access point device 130 communicates with the location determination system 140 via the network 120 to receive data from the location determination system 140. In an example, the location associated with the location determination system 140 includes a plurality of access point devices 130, the plurality of access point devices 130 in communication with the location determination system 140 via the network 120. In this example, each of the plurality of access point devices 130 receives data broadcast by the plurality of user computing devices 110 over the Wi-Fi communication channel 105.
In an example, the application 133 is a program, function, routine, applet, or similar entity that resides on the access point device 130 and performs its operations on the access point device 130. In certain example embodiments, an access point device 130 operator or other location determination system 140 must install an application 133 and/or make a feature selection on the access point device 130 to obtain the benefits of the techniques described herein. In an example embodiment, the access point device 130 operator may access the application 133 on the access point device 130 via a user interface. In an example embodiment, the application 133 may be associated with a location determination system 140. In another example embodiment, the application 133 may be associated with a system that is otherwise associated with the access point device 130.
In an example, the data storage unit 135 includes a local or remote data storage structure that is accessible to the access point device 130 and is adapted to store information. In an example, the data storage unit 135 stores encrypted information, such as HTML5 local storage.
In an example, the antenna 137 is a means of communication between the access point device 130 and one or more user computing devices 110. In an example embodiment, Wi-Fi controller 139 outputs radio signals through antenna 137 or listens for radio signals from one or more user computing devices 110 at a location. In another example embodiment, a bluetooth controller or a near field communication ("NFC") controller is used. In an example embodiment, Wi-Fi controller 139 outputs radio signals through antenna 137, or listens for radio signals from one or more user computing devices 110. In an example, the antenna 137 includes an antenna array. In an example, the antenna 137 comprises a rotated highly directional antenna 137, enabling the user computing device 110 to determine an angle of arrival ("AOA") of received Wi-Fi signal data.
In an example, the Wi-Fi controller 139 can send and receive data, perform authentication and encryption functions, and instruct the access point device 130 how to listen for transmissions from one or more user computing devices 110 at a location or configure the access point device 130 into various power saving modes according to Wi-Fi specified procedures. In another example embodiment, the access point device 130 includes a bluetooth controller or NFC controller capable of performing similar functions. The example Wi-Fi controller 139 is in communication with the application 133 and is capable of sending and receiving data over the wireless Wi-Fi communication channel 105. In another example embodiment, the bluetooth controller 139 or the NFC controller 139 performs similar functions as the Wi-Fi controller 139 using bluetooth or NFC protocols. In an example embodiment, the Wi-Fi controller 139 activates the antenna 137 to create a wireless communication channel between each of the one or more user computing devices 110 and the access point device 130. The access point device 130 communicates with the user computing device 110 via the antenna 137. In an example embodiment, when the access point device 130 has been activated, the Wi-Fi controller 139 polls for radio signals through the antenna 137, or listens for radio signals from one or more user computing devices 110.
The example position determination system 140 includes a position determination component 143 and a data storage unit 145. In an example, the location determination system 140 communicates with the user computing device 110 and the access point device 130 via the network 120.
In an example, location determining component 143 receives wireless signal attribute data from one or more access point devices 130 via network 120. In an example, the location determining component 143 classifies each of the one or more user computing devices 110 as "mobile" or "stationary" based on received wireless signal attribute data from the one or more access point devices 130. In an example, the location determination component 143 calculates a location for each user computing device 110 classified as "mobile" and does not calculate a location for each user computing device 110 classified as "stationary".
In an example, the data storage unit 145 includes a local or remote data storage structure adapted to store information that is accessible to the location determination system 140. In an example, the data storage unit 145 stores encrypted information, such as HTML5 local storage.
In an example, the network computing device and any other computing machines associated with the techniques presented herein may be any type of computing machine, such as, but not limited to, those discussed in more detail with respect to fig. 8. Additionally, any function, application, or component associated with any of these computing machines, such as those described herein, or any other (e.g., script, web content, software, firmware, hardware, or module) associated with the techniques presented herein, may be any of the components discussed in more detail with respect to fig. 8. The computing machines discussed herein may communicate with each other, as well as with other computing machines or communication systems, over one or more networks, such as network 120. Network 120 may include any type of data or communication network, including any of the network technologies discussed with respect to fig. 8.
Example procedure
The example methods illustrated in fig. 2-5 are described below with respect to components of the example operating environment 100. The example methods of fig. 2-5 may also be performed by other systems and in other environments. The operations described with respect to any of fig. 2-5 may be implemented as executable code stored on a computer-or machine-readable non-transitory tangible storage medium (e.g., floppy disks, hard disks, ROMs, EEPROMs, non-volatile RAM, CD-ROMs, etc.), which are performed based on execution of the code by a processor circuit implemented using one or more integrated circuits; the operations described herein may also be implemented as executable logic (e.g., a programmable logic array or device, a field programmable gate array, programmable array logic, an application specific integrated circuit, etc.) encoded in one or more non-transitory tangible media for execution.
Fig. 2 is a block diagram depicting a method 200 for determining a location of a user computing device 110 from a motion classification based on wireless signal data received at an access point device 130, according to some examples. The method 200 is described with reference to the components shown in FIG. 1.
In block 210, the enterprise system configures the access point device 130 at the enterprise location. In an example, the enterprise location includes multiple levels of office buildings, transfer stations, schools, stadiums, trains, planes, ships, or other locations associated with the enterprise system and including the plurality of access point devices 130. In an example, an enterprise system configures access point device 130 to communicate with location determination system 140 over network 120. Additionally, in this example, the enterprise system configures the access point device 130 to receive data via the Wi-Fi communication channel 105 at the enterprise location. For example, the access point device 130 is configured to receive Wi-Fi signal data broadcast by one or more user computing devices 110 at an enterprise location. In an example, the access point device 130 is configured to transmit received Wi-Fi signal data to the location determination system 140 via the network 120. In some examples, the enterprise system includes a location determination system 140 or otherwise communicates with the location determination system 140 via the network 120. In an example, each access point device 130 includes a respective access point device 130 identifier that identifies the respective access point device 130, and each access point device 130 is associated with a particular location within the enterprise location at which the respective access point device 130 is located. In an example, the enterprise system accesses the location determination system 140 website and downloads the application 133 on each access point device 130. In other examples, the enterprise system purchases or otherwise obtains the access point devices 130 from the location determination system 140, and the access point devices 130 already have applications 133 pre-installed on each access point device 130. In an example, the application 133 communicates with the location determination system 140 via the network 120.
In block 220, the user 101 configures the user computing device 110 to broadcast data via the wireless communication channel 105. The method for configuring the user computing device 110 to broadcast data via the wireless communication channel 105 is described in more detail below with reference to the method described in fig. 3. In an example, a plurality of users 101 configure respective user computing devices 110 using the method described in fig. 3, and enter an enterprise location using the user computing devices 110. For example, a plurality of employees at a business location configure respective employer-provided user computing devices 110 using the method described in fig. 3.
Fig. 3 is a block diagram depicting a method 220 for configuring a user computing device 110 to broadcast data via a wireless communication channel 105, according to some examples. The method 220 is described with reference to the components shown in FIG. 1.
In block 310, the user 101 accesses the location determination system 140 website via the user computing device 110. In an example, the user 101 enters the website 143 address into the web browser 112 of the user computing device 110 or otherwise accesses the website 143 via the user interface 111 of the user computing device 110. In an example, the user 101 drives the user interface 111 object on an advertisement on the web browser 112, and the web browser 112 redirects to the website 143.
In block 320, the user 101 registers the user 101 account via the location determination system 140 website. The user 101 may obtain the user 101 account number, receive appropriate applications and software to install on the user computing device 110, request authorization to participate in transaction processing, or perform any actions required by the location determination system 140. The user 101 may utilize the functionality of the user computing device 110, such as the user interface 111 and the web browser, to register and configure the user 101 account. In an example, the user 101 may enter payment account information (e.g., one or more credit accounts, one or more bank accounts, one or more stored value accounts, and/or other suitable accounts) associated with one or more user 101 accounts into the user 101 accounts maintained by the location determination system 140. In an example, the location determination system 140 generates a network identifier for the user computing device 110, associates the network identifier with the respective user computing device 110, and transmits the network identifier to the application 113 of the user computing device 110 via the network 120.
In block 330, the user 101 uploads account information to the user 101 account. In an example, the user 101 may configure the user's 101 account settings or add, delete, or edit payment account information via the location determination system website 143. In an example, the user 101 may select an option to enable or disable permission for the location determination system 140 to process the transaction. For example, the payment account information includes: an account number, expiration date, address, user 101 account holder name, or other information associated with the user 101 payment account that will enable the location determination system 140 to process the payment transaction.
In block 340, the user 101 downloads the application 113 onto the user computing device 110. In an example, the user 101 selects an option on the location determination system 140 website 143 to download the advertising application 113 onto the user computing device 110. In an example, the advertising application 113 running on the user computing device 110 can communicate with the location determination system 140 over the network 120. In an example, when the user 101 logs into the advertising application 113, the advertising application 113 running on the user computing device 110 can communicate with the location determination system 140 over the network 120.
In block 350, the user 101 logs into the application 113 at the enterprise location. For example, the user 101 selects the application 113 via the user computing device 110 to log into the application 113. In another example, the user 101 selects an application via the user interface 111 and enters a username and password. In an example, the user 101 logs into the application 113 before, after, or upon entering the business location.
In block 360, the user computing device 110 broadcasts data at the enterprise location. For example, the user computing device 110 transmits a radio frequency signal including Wi-Fi signal data in a scan of the access point device 130. In some examples, the radio frequency signal data includes one or more of: Wi-Fi signal data, Bluetooth Low energy ("BLE") signal data, near field communication ("NFC") signal data, and other signal data. In an example, in response to the user 101 logging into the application 113, the application broadcasts Wi-Fi signal data of the user computing device 110 via the Wi-Fi communication channel 105 at the enterprise location. In an example, the user computing device 110 broadcasts Wi-Fi signal data that includes a network identifier of the user computing device 110. In an example, the user computing device 110 network identifier was previously generated by the location determination system 140. In an example, the user computing device 110 broadcasts Wi-Fi signal data via the wireless communication channel 105 at an enterprise location so that other computing devices including one or more access point devices 130 at the enterprise location can receive the broadcasted Wi-Fi signal data.
In some examples, the user 101 does not download the application 113 onto the user computing device 110 and does not log into the application 113 to have the user computing device 110 broadcast data. In some examples, the user 101 configures one or more settings of the user computing device 110 via the user interface 111 such that the user computing device 110 broadcasts Wi-Fi signal data via the wireless communication channel 105 at the enterprise location. In other examples, the user computing device 110 is configured to continuously or periodically broadcast Wi-Fi signal data according to one or more default settings.
From block 360, the method 220 proceeds to block 230 in fig. 2.
Returning to fig. 2, in block 230, the location determination system 140 receives wireless signal attributes of the user computing device 110 from the access point device 130. The method 230 of receiving wireless signal data of the user computing device 110 from the access point device 130 by the location determination system 140 is described in more detail below with reference to the method described in fig. 4.
Fig. 4 is a block diagram of a method 230 of receiving wireless signal data of a user computing device 110 from an access point device 130 by a location determination system 140, according to some examples. The method 230 is described with reference to the components shown in FIG. 1. The approach described herein is from the perspective of a single access point device 130. However, in certain examples, the plurality of access point devices 130 receive Wi-Fi signal data from the one or more user computing devices 110 via the Wi-Fi communication channel 105 and retransmit the Wi-Fi signal data received from the one or more user computing devices 110 to the location determination system 140 via the network 120.
In block 410, the access point device 130 receives Wi-Fi signal data from the user computing device 110 via the Wi-Fi communication channel 105. For example, when the access point device 130 has been activated, the Wi-Fi controller 139 polls for radio signals through the antenna 137, or listens for radio signals broadcast by one or more user computing devices 110. Example Wi-Fi signal data includes a user computing device 110 network identifier. For example, the user computing device 110 network identifier is "uservevice 1". In an example, the access point device 130 generates a timestamp associated with the time Wi-Fi signal data was received from the user computing device 110 and associates the timestamp with the user computing device 110 network identifier. For example, the timestamp includes one or more of: month, day of month, year, hour of day, minute of hour, second of minute, millisecond of second, and other suitable time metrics. For example, Wi-Fi signal data is received from the user computing device 110 at 6:35:03 pm at GMT time 12 p.6.2018, and a timestamp writes "18:35:03 p.6.12 p.2018". In an example, the access point device 130 determines available Wi-Fi signal data at each time interval t. For example, the time interval t is a one second, two seconds, thirty seconds, one minute, two minutes, or other suitable length time interval t. Configuring the higher time interval t at which the access point device 130 determines available Wi-Fi signal data reduces the accuracy of the position determination, while configuring the lower time interval t at which the access point device 130 determines available Wi-Fi signal data increases the accuracy of the position determination. For example, the time interval is one second, and the access point device 130 receives Wi-Fi signal data from the user computing device 110 that includes the network identifiers "user device 1" and "user device 2".
In block 420, the access point device 130 determines wireless signal attributes of the user computing device 110 based on the Wi-Fi signal data received from the user computing device 110. For example, the access point device 130 determines one or more of the following: a received signal strength indicator ("RSSI"), an angle of arrival ("AoA"), a time of arrival ("TOA"), a time difference of arrival ("TDOA"), or other relevant wireless signal attributes. In an example, determining the wireless signal property includes: the difference in phase values (phase vectors) received at each antenna 137 in the array of antennas 137 is determined based on Wi-Fi signal data received from the user computing device 110. In some examples, the access point device 130 determines the second wireless signal attribute from the first wireless signal attribute. For example, the access point device 130 determines the AoA from the phase vector data. For example, the access point device 130 receives Wi-Fi signal data from the user computing device 110 identified by the user computing device 110 network identifier "user device 1". In this example, the access point device 130 determines that the received Wi-Fi signal data broadcast by the user computing device 110 includes a phase vector that includes thirty-two phase values measured at thirty-two circular array antennas of the access point device 130. In this example, the phase vector may comprise another suitable number of phase values measured at a corresponding number of circular array antennas of access point device 130. In an example, the access point device 130 determines that includes n1,n2,…ni]Where these values are at 0<n<2 pi range, where pi is 3.14159. For example, access point device 130 determines to include [0.5, 0.6.. 0.57] based on the received Wi-Fi signal data]N phase vector values. Each phase value represents the phase of a signal arriving at a particular antenna of the circular antenna array of the access point device 130. In some examples, the antenna array may include another suitable antenna array configuration other than a circular antenna array. In an example, the access point device 130 determines an angle of arrival ("AoA") of the received Wi-Fi signal data broadcast by the user computing device 110 based on the determined phase vector data. In an example, AoA may be expressed in radians, degrees, or other suitable angular quantities. For example, the access point device 130 determines an AoA of 1.4 radians based on the determined phase vector data for the received Wi-Fi signal data broadcast by the user computing device 110. In an example, the access point device 130 determines a received signal strength indicator ("RSSI") of-40 dBm based on received Wi-Fi signal data broadcast by the user computing device 110. In the example, the RSSI values range between-120 dBm to 0dBm, with 0dBm indicating the strongest received signal strength and-120 dBm indicating the weakest received signal strength.
In block 430, the access point device 130 transmits the wireless signal attributes of the user computing device 110 to the location determination system 140 via the network 120. For example, the access point device 130 transmits the determined wireless signal attributes of the user computing device 110, the recorded timestamp, and the user computing device 110 network identifier to the location determination system 140 via the network 120. Example wireless signal attributes include one or more of phase vector data, AoA, and RSSI determined from received Wi-Fi signal data broadcast by the user computing device 110. Example wireless signal attributes also include a user computing device 110 network identifier. Example wireless signal attributes also include an access point device 130 identifier associated with the access point device 130. For example, the access point device 130 sends wireless signal attributes including "12 d 6/2018 18:35:03, uservevice 1, RSSI-40, AoA-1.2" to the location determination system 140 via the network 120. In an example, access point device 130 also transmits an access point device 130 network identifier (e.g., "ap 1") as part of the wireless signal attribute data to location determination system 140 via network 120. For example, access point device 130 transmits wireless signal attribute data including a network identifier for access point device 130, including "18: 35:03, uservice 1, RSSI-40, AoA-1.2, ap 1" in 6/12/2018. In an example, the access point device 130 includes phase vector data as part of the wireless attribute data. For example, access point device 130 transmits wireless signal attribute data including "18: 35:03, uservevice 1, RSSI-40, AoA-1.2, [0.13,0.15,0.35.. 0.57 ]", where [0.13,0.15,0.35.. 0.57] includes a phase vector value for each of the n antennas of the circular antenna array of access point device 130.
In block 440, the location determination system 140 receives wireless signal attributes of the user computing device 110 from the access point device 130 via the network 120. In an example, the location determining system 140 includes a location determining component 143, the location determining component 143 storing the received wireless signal attributes in a database in a data store 145 accessible to the location determining component 143. In an example, the location determining component 143 stores wireless signal attributes from the user computing device 110 network identifier and the access point device 130 network identifier. For example, the location determination system 140 receives wireless signal attributes for the user computing device 110 from the access point device 130 (including "12.6.20112: 35:03, uservevice 1, RSSI-40, AoA-1.2, ap 1"), and stores the received wireless signal attributes "RSSI-40", "AoA-1.2", time "12.6.2018 18:35: 03" under the user computing device 110 network identifier "uservevice 1" and under the access point device 130 network identifier "ap 1". In an example, the location determination system 140 periodically or continuously receives subsequent wireless signal attributes of the user computing device 110 from the access point device 130 via the network 120. For example, the location determination system 140 receives subsequent wireless signal attributes of the user computing device 110 every second, every five seconds, or at another suitable interval.
From block 440, the method 230 proceeds to block 240 in fig. 2.
The example method 230 describes receiving Wi-Fi signal data for a single user computing device 110 from a single access point device 130. However, in an example, the location determination system 140 receives wireless signal attributes for a plurality of user computing devices 110 at an enterprise location from a plurality of access point devices 130 at the enterprise location using the example method 230. In an example, the location determination system 140 uses the example method 230 to periodically receive wireless signal attributes for a plurality of user computing devices 110 at an enterprise location from a plurality of access point devices 130 over a subsequent time interval at the enterprise location. In some examples, each of the plurality of access point devices 130 is synchronized to transmit, at each subsequent time interval, wireless signal attributes of one or more user computing devices 110 for which the respective access point device 130 received Wi-Fi signal data over the previous time interval. Example time intervals include one second, two seconds, five seconds, or other suitable time intervals.
Returning to fig. 2, in block 240, the location determination system 140 receives wireless signal attributes of the user computing device 110 over the next time window from one or more access point devices 130. In an example, the location determination system 140 receives wireless signal attributes of a plurality of user computing devices 110 at an enterprise location from a plurality of access point devices 130 at the enterprise location using the example method 230. In this example, each access point device 130 transmits wireless signal attributes of one or more user computing devices 110 to the location determination system 140 using the example method 230. In this example, the location determination system 140 records the received wireless signal attributes in a database based on the user computing device 110 network identifier and the access point device 130 network identifier. Additionally, in an example, the location determination system 140 organizes the wireless signal attribute data associated with the particular user computing device 110 network identifier in a database according to the timestamp.
In block 250, the location determination system classifies the user computing device 110 as stationary or moving over the current time window. The method 250 of determining, by the location determination system 140, a motion classification for the user computing device 110 based on wireless signal data of the user computing device 110 over a time window is described in more detail below with reference to the method described in fig. 5. In an example, the current time window includes one or more time intervals for which wireless signal data of one or more user computing devices 110 is received from one or more access point devices 130 from an enterprise location via network 120.
The example method 250 describes the location determination system 140 determining a motion classification for an individual user computing device 110 at an enterprise location based on wireless signal attribute data of the user computing device 110 over a current time window received from one or more access point devices 130 at the enterprise location. In some examples, the location determination system 140 determines a motion classification for two or more user computing devices 110 at an enterprise location based on wireless signal attribute data of the two or more user computing devices 110 over a current time window received from one or more access point devices 130 at the enterprise location. For example, as previously discussed, in an example, the location determination system 140 receives wireless signal attributes for a plurality of user computing devices 110 at an enterprise location from a plurality of access point devices 130 at the enterprise location using the example method 230. In this example, each access point device 130 transmits wireless signal attributes of one or more user computing devices 110 to the location determination system 140 using the example method 230. In this example, the location determination system 140 records the received wireless signal attributes in a database based on the user computing device 110 network identifier and the access point device 130 identifier.
Fig. 5 is a block diagram depicting a method 250, according to some examples, for determining, by the location determination system 140, a motion classification of the user computing device 110 based on wireless signal data of the user computing device 110 over a time window. The method 250 is described with reference to the components shown in FIG. 1.
In block 510, the location determination system 140 extracts the wireless signal data of the user computing device 110 received from each access point device 130. For example, the location determining component 143 retrieves all wireless signal attribute data associated with a particular user computing device 110 network identifier at various points in time from a database in the data store 145 and organizes the retrieved wireless signal attribute data of the user computing devices 110 according to the access point device 130 network identifier and/or according to a timestamp. For example, over an example time window 18:35:10-18:35:20 of a five second time interval, for an individual user computing device 110 associated with the user computing device 110 network identifier "user device1," the organized data includes:
"uservevice 1, ap1, 18:35:10, RSSI-40, [ phase vector data 1 ]",
"uservevice 1, ap1, 18:35:15, RSSI-39, [ phase vector data 2 ]",
"uservevice 1, ap1, 18:35:20, RSSI-14, [ phase vector data 3 ]",
"uservevice 1, ap2, 18:35:10, RSSI-12, [ phase vector data x ]",
"uservevice 1, ap2, 18:35:15, RSSI-13, [ phase vector data y ]",
"uservevice 1, ap2, 18:35:20, RSSI-12, [ phase vector data z ]".
In this example, each of example phase vector data 1, phase vector data 2, phase vector data 3, phase vector data x, phase vector data y, and phase vector data z includes a phase value detected for Wi-Fi signal data of the user computing device 110 at a time associated with a particular timestamp for each antenna of the circular array of antennas of the access point device 130. In some examples, the wireless signal data of the user computing device 110 is organized differently, e.g., first according to a timestamp and then according to an access point device 130 identifier. In some examples, the location determination system 140 does not have wireless signal data for all user computing devices 110 for each access point device 130 network identifier or at each time interval t. For example, not every access point device 130 may receive Wi-Fi signal data from the user computing device 110 at any particular time interval t, as shown in fig. 6. For example, the access point device 130 may not be able to determine the RSSI, one or more phase vector values of the phase vector data, or the AoA based on the Wi-Fi signal data broadcast by the user computing device 110 for each time interval of the current time window. In another example, the access point device 130 does not receive Wi-Fi signal data from the user computing device 110 for one or more time intervals of the current time window.
In another example, for each time interval over the time window w, the location determination system 140 extracts wireless signal data for a particular user computing device 110 network identifier for a particular access point device 130. For example, for the user computing device 110 corresponding to the network identifier "user device1," for the wireless signal data received from the access point devices 130 corresponding to the network identifiers "ap 2," "ap 3," and "ap 5," the location determination system 140 extracts the following wireless signal data:
"uservevice 1, ap2, 18:35:15, RSSI-40, [ phase vector data y ]",
"uservevice 1, ap2, 18:35:20, RSSI-35, [ phase vector data z ]",
"uservevice 1, ap3, 18:35:15, RSSI-40, [ phase vector data a ]",
"uservevice 1, ap3, 18:35:20, RSSI-35, [ phase vector data b ]",
"userpevice 1, ap5, 18:35:15, RSSI ═ no data, [ no phase vector data ]",
"uservevice 1, ap5, 18:35:20, RSSI-35, [ phase vector data n ]".
In this example, the access point device 130 labeled "ap 5" does not send any wireless signal data to the position determination system 140 at times 18:35: 15.
Fig. 6 is a diagram illustrating an example configuration of an example user computing device 110 and a plurality of access point devices 130 at an example enterprise location at time T. Fig. 6 illustrates an example user computing device 110 and six example access point devices 130 labeled A, B, C, D, E and F at various locations within an enterprise location at time T. In this example illustration, the location of the user computing device 110 is such that only the access point device A, B, C, D receives Wi-Fi signal data broadcast by the user computing device via the Wi-Fi communication channel 105 at time T. In this example illustration, access point devices E and F do not receive Wi-Fi signal data of the user computing device 110 at time T. For example, access point devices E and F are not within the predefined threshold range necessary to receive Wi-Fi signal data from the user computing device 110 at time T, while access point devices A, B, C and D are within the predefined threshold range. In another example, one or more of access point devices E and F are disabled, or otherwise do not receive Wi-Fi signal data from the user computing device 110 via a Wi-Fi communication channel.
Returning to fig. 5, in block 520, the location determination system 140 extracts the characteristics of the wireless signal data of the user computing device 110 received from each access point device 130 at the enterprise location.
As previously discussed, in an example, each access point device 130 at an enterprise location is configured to transmit wireless signal data to the location determination system 140 via the network 120. Each access point device 130 receives Wi-Fi signal data from each of the one or more user computing devices 110 via the wireless communication channel 105 at each time interval t over the time window w, determines wireless signal attribute data based on the received Wi-Fi signal data, and transmits the determined wireless signal attribute data to the location determination system 140 via the network 120. For example, the time interval t is a one second, two seconds, thirty seconds, one minute, two minutes, or other suitable length time interval t. Configuring the higher time interval t at which the access point device 130 determines available Wi-Fi signal data reduces the accuracy of the position determination, while configuring the lower time interval t at which the access point device 130 determines available Wi-Fi signal data increases the accuracy of the position determination.
In an example, the location determination system 140 aggregates wireless signal features describing wireless signal features of the user computing device 110 between the most recent time interval t and one or more previous time intervals for one or more access point devices 130. For example, for access point device 130, location determination system 140 aggregates wireless signal characteristics associated with a particular user computing device 110 over one or more of time intervals t, t-1, t-2, t-3, t-4, t-5, t-6, t-7, t-8, t-9, and t-10. In this example, for one or more of time intervals t, t-1, t-2, t-3, t-4, t-5, t-6, t-7, t-8, t-9, and t-10, location determination system 140 may not have one or more wireless signal characteristics for one or more access point device 130 network identifiers.
In some examples, the location determination system 140 selectively selects wireless signal attributes (RSSI, phase vector) from the wireless signal data measured at each access point device 130 in the time window to compute the signature from the attributes. For example, location determination system 140 receives wireless signal attributes (phase vectors) p (t), p (t-1), p (t-2), p (t-3) for a time window comprising four time intervals t, t-1, t-2, t-3 from access point device 130. For example, the access point device 130 has eight antennas in a circular antenna array, and each phase vector has eight phase values, where "NA" represents the unmeasured phase value:
p(t)=[NA,0.5,NA,1.2,1.2,2.4,NA,1.1]
p(t-1)=[3.2,0.4,NA,1.1,NA,2.4,NA,NA]
p(t-2)=[NA,0.3,NA,1.3,1.2,2.1,NA,NA]
p(t-3)=[NA,NA,NA,NA,1.2,2.4,NA,1.1]
in this example, the phase values measured by access point device 130 at p (t-1) and p (t) are compared, and access point device 130 has measured phase vector values at both p (t-1) and p (t) at the following three antennas: antennas 2, 4 and 6. Comparing the phase values measured by access point device 130 at p (t-2) and p (t), access point device 130 has measured phase vector values at both p (t-2) and p (t) at the following four antennas: antennas 2, 4, 5 and 6. Comparing the phase values measured by access point device 130 at p (t-3) and p (t), access point device 130 has measured phase vector values at both p (t-3) and p (t) at the following three antennas: antennas 5, 6 and 8. In this example, the threshold number of phase values measured at the access point 130 at the same antenna is 4 antennas to ensure high certainty of the phase vector correlation value. Thus, in this example, the wireless signal properties from time intervals t and t-2 are considered in calculating the phase correlation. In some examples, the position determination system 140 normalizes the phase correlation with the number of phase values measured at corresponding antennas for which phase values were measured for a selected time interval.
In one example, the position determination system 140 calculates a correlation value of one or more characteristics of the wireless signal data (e.g., one or more of the following: RSSI values, AoA values, phase vector data, and other data calculated from the wireless signal data) between the current time interval t and the time interval t-1 (the previous time interval). In another example, the location determination system 140 calculates a correlation between one or more features for one or more previous time intervals and a most recent time interval (e.g., for one or more of t-6, t-5, t-4, t-3, t-2, and t-1). For example, correlation represents the similarity between wireless signal characteristics from the following time intervals for which wireless signal properties have been determined: a latest time interval, and two or more previous time intervals.
In an example, the phase vector correlation value may be determined as follows:
Figure BDA0002931272680000201
which determines phase vector data for one or more previous time intervals
Figure BDA0002931272680000202
Phase vector data for the latest available time interval
Figure BDA0002931272680000203
The correlation between them. Other formulas may be used to calculate the correlation value for the wireless signal characteristic. In another example, to determine the correlation, the location determination system 140 may compare the aggregate RSSI values of the latest time interval for which the wireless signal data of the user computing device 110 has been determined to the selected previous time interval. In yet another example, the position determination system 140 determines an absolute between the aggregate RSSI measured for two or more previous time intervals and the latest time intervalAnd (4) poor. In this example, if the aggregated RSSI data is not determined for one or more time intervals, the time intervals will not be considered in determining correlation. In yet another example, the location determination system 140 determines absolute differences between consecutive aggregate RSSIs determined for two or more previous time intervals and the most recently available time interval within the time window and then calculates a standard deviation of these differences. In yet another example, the position determination system 140 determines a relevance value that includes: the ratio between the number of time intervals comprising the available aggregated RSSI and the number of time intervals being considered in the time window.
In block 530, for a plurality of access point devices 130, the location determination system 140 aggregates wireless signal features over a time window that includes a most recent time interval and one or more time intervals prior to the most recent time interval. In an example, the location determination system 140 determines one or more phase vector correlations from each of the one or more access point devices 130 over a time window. The location determination system 140 determines an aggregated phase vector correlation comprising a maximum of the one or more phase vector correlations determined for the one or more access point devices 130.
In another example, the location determination system 140 determines a continuous RSSI at each of the one or more access point devices 130 over a time window and determines the following aggregated feature given multiple values of the feature extracted from the multiple access point devices 130: the aggregate signature includes Pearson correlation (Pearson correlation) of the pairs of consecutive RSSIs. In this example, the continuous RSSI comprises a pair of RSSIs measured at the access point device 130 at the current time interval t and the previous time interval t-1. In another example, the location determination system 140 determines absolute differences between successive RSSIs measured at each of the one or more access point devices 130 over a time window, and the location determination system 140 determines an aggregated characteristic comprising an average of these determined absolute differences. In another example, the location determination system 140 determines a standard deviation of the RSSI measured at each of the one or more access point devices 130 over the time window, and the location determination system 140 determines an aggregated characteristic comprising an average of the determined standard deviations. In another example, the location determination system 140 determines a difference between consecutive RSSIs in a time window for each of the one or more access point devices 130, and then calculates an aggregated feature comprising an average of standard deviations of the determined differences. In yet another example, the location determination system 140 determines a number of available RSSIs over the time window for each of the one or more access point devices 130, and the location determination system 140 determines an aggregated characteristic comprising a ratio between the number of available RSSIs and the time window size.
In block 540, the location determination system 140 determines a motion classification for the user computing device 110 over the last time window based on the aggregated wireless signal features. For example, as previously described in block 530, the location determination system 140 determines aggregated wireless signal characteristics. In some examples, the location determination system 140 determines an aggregate phase vector correlation, and a higher aggregate phase vector correlation indicates that the user computing device 110 is more likely to be stationary over the time window. Conversely, a lower aggregate phase vector correlation indicates that the user computing device 110 is more likely to have moved over the time window. In this example, if the aggregated phase vector meets or exceeds the threshold, the location determination system 140 determines that the motion classification of the user computing device over the time window is "stationary". In this example, if the aggregated phase vector is below the threshold, the location determination system 140 determines that the motion classification of the user computing device over the time window is "movement".
In other examples, the location determination system 140 determines pearson correlations for consecutive RSSIs measured at one or more access point devices 130 over a time window, and a higher pearson correlation indicates that the user computing device 110 is more likely to be stationary over the time window. Conversely, a lower pearson correlation indicates that the user computing device 110 is more likely to have moved over the time window. In this example, if the pearson correlation meets or exceeds the threshold, the location determination system 140 determines that the motion classification of the user computing device over the time window is "stationary". In this example, if the pearson correlation is below the threshold, the location determination system 140 determines that the motion classification of the user computing device over the time window is "movement.
In other examples, the position determination system 140 determines an absolute difference between consecutive RSSIs measured at each of the one or more access point devices 130 over a time window. In these examples, a higher absolute difference indicates that the user computing device is more likely to be stationary over the time window. Conversely, a lower absolute difference indicates that the user computing device is more likely to have moved over the time window. In this example, if the absolute difference meets or exceeds the threshold, the location determination system 140 determines that the motion classification of the user computing device over the time window is "stationary". In this example, if the absolute difference is below the threshold, the location determination system 140 determines that the motion classification of the user computing device over the time window is "movement".
In other examples, the location determination system 140 determines an average of the standard deviations of the RSSI measured at each of the one or more access point devices 130 over a time window. In these examples, a higher average value indicates that the user computing device is more likely to be stationary over the time window. Conversely, a lower average value indicates that the user computing device is more likely to have moved over the time window. In this example, if the average meets or exceeds the threshold, the location determination system 140 determines that the motion classification of the user computing device over the time window is "stationary". In this example, if the average is below the threshold, the location determination system 140 determines that the motion classification of the user computing device over the time window is "movement.
In other examples, the location determination system 140 determines, for each of the one or more access point devices 130, an average of the standard deviations of the differences between consecutive RSSIs in the time window. In these examples, a higher average value indicates that the user computing device is more likely to be stationary over the time window. Conversely, a lower average value indicates that the user computing device is more likely to have moved over the time window. In this example, if the average meets or exceeds the threshold, the location determination system 140 determines that the motion classification of the user computing device over the time window is "stationary". In this example, if the average is below the threshold, the location determination system 140 determines that the motion classification of the user computing device over the time window is "movement.
In still other examples, the position determination system 140 determines a ratio between the number of available RSSIs and the time window size. In these examples, a higher ratio indicates that the user computing device is more likely to be stationary over the time window. Conversely, a lower ratio indicates that the user computing device is more likely to have moved over the time window. In this example, if the ratio meets or exceeds the threshold ratio, the location determination system 140 determines that the motion classification of the user computing device over the time window is "stationary". In this example, if the ratio is below the threshold ratio, the location determination system 140 determines that the motion classification of the user computing device over the time window is "movement".
In addition to determining motion based on relevance values of aggregated features of the cross access point device 130, other example models may be used. For example, the location determination system 140 may use a Recurrent Neural Network (RNN), a Random Forest (RF), a Support Vector Machine (SVM), or a Hidden Markov Model (HMM) to classify the user computing device 110 as mobile or stationary based on applying the aggregated wireless signal features to the appropriate model. In an example end-to-end RNN approach, the RNN learns the time correlation of RSSI and phase vector data to perform motion classification. The example end-to-end RNNs include an RNN for the LSTM block of each access point device 130 to capture the time correlation of RSSI and phase vectors measured at the respective access point device 130. Additionally, in this example, the end-to-end RNNs include neurons that combine outputs from each RNN corresponding to a respective access point device 130 to predict a motion classification for the user computing device 110. In some examples, the location determination system 140 may determine a relevance value over a time window using one of the previously mentioned models, and then determine a motion classification for the user computing device 110 based on the relevance value determined by the model.
Returning to fig. 2, in block 260, the location determination system 140 classifies the user computing device 110 as stationary or moving over the current time window. As previously discussed, the location determination system 140 classifies the user computing device 110 as "mobile" or "stationary" based on correlation values of aggregated wireless signal features associated with one or more access point devices 130 for the user computing device 110 over a time window. The relevance value indicates whether the device is moving. The more similar the wireless signal data is from the current time interval to the previous time interval, the greater the likelihood that the user computing device 110 is stationary. However, significant changes in the location of the user computing device 110 result in changes in the wireless signal data received from the plurality of access point devices 130. RSSI is, for example, an indication of signal strength and may be used as a proxy metric for the distance of the user computing device 110 from the access point device 130, and a significant change in RSSI indicates movement of the user computing device 110 close to the access point device 130 or away from the access point device 130. The AoA is, for example, an indication of an angular direction from which wireless signals of the user computing device 110 are received relative to the access point device 130, and a change in the AoA indicates movement of the user computing device 110 relative to the access point device 130.
Additionally, as previously discussed, the location determination system 140 may classify the user computing device 110 as mobile or stationary based on applying the aggregated wireless signal features to a Recurrent Neural Network (RNN), a Random Forest (RF), a Support Vector Machine (SVM), a Hidden Markov Model (HMM), or other suitable model.
If the location determination system 140 classifies the user computing device 110 as stationary over the current time window, the method 200 returns to block 240 and the location determination system 140 receives wireless signal attributes of the user computing device 110 over the next time window from one or more access point devices 130. For example, if the location determination system 140 classifies the user computing device 110 as "stationary" over the current time window, the location determination system 140 does not calculate the location of the user computing device 110 and the method 240 is repeated. Not calculating the location of the user computing device 110 in response to the "stationary" classification and only in response to the "mobile" classification results in reduced processing by the location determination system 140. In some examples, one or more user computing devices 110 are determined to be "stationary" over the current time window, and the location determination system 140 does not calculate a location for each of the respective user computing devices 110 classified as "stationary" over the current time window.
Returning to block 260, if the location determination system 140 classifies the user computing device 110 as moving over the current time window, the method 200 proceeds to block 270. For example, the location determination system 140 classifies the user computing device 110 as "moving" over the current time window.
In block 270, the location determination system 140 calculates the location of the user computing device 110 for the current time window based on wireless signal attributes received from one or more access points. For example, if the location determination system 140 classifies the user computing device 110 as "moving" over the current time window, the location determination system 140 calculates the location of the user computing device 110 and the method 240 is repeated. Calculating the location of the user computing device 110 in response to the "moving" classification and not calculating the location of the user computing device 110 in response to the "stationary" classification results in reduced processing by the location determination system 140. In some examples, one or more user computing devices 110 are determined to be "moving" over the current time window, and the location determination system 140 calculates a location for each of the respective user computing devices 110 classified as "moving" over the current time window. In an example, the location determination system 140 calculates a location for the user computing device 110 using the latest aoas and RSSIs for the current time window, or determines the location of the user computing device 110 based on wireless signal attributes of the user computing device 110 received from one or more access point devices 130 via the network 120. In these examples, the position determination system 140 determines the AoA from the phase vector data.
In block 280, the location determination system 140 displays the current calculated location of the user computing device 110 via the user interface. In an example, the location determination system 140 provides a display of the most recently calculated location of the user computing device 110 determined via the example method 200. In another example, the location determination system 140 sends an indication of the location of the one or more user computing devices 110 determined via the example method 200 to the one or more computing devices via the network 120. In an example, an operator of the location determination system 140 may interact with a user interface 111 display of the most recently calculated location of one or more user computing devices 110 at an enterprise location. In some examples, the calculated location of one or more user computing devices 110 may enable location-based services, such as asset location records or zone notifications. For example, when a particular user computing device 110 enters a particular area within an enterprise location, the location determination system 140 may notify computing devices associated with the enterprise location via the network 120.
In block 290, the location determination system 140 determines whether other wireless signal attributes of the user computing device 110 have been received from one or more access point devices 130. In some examples, the user computing device 110 continues to broadcast Wi-Fi signal data at the enterprise location via the wireless communication channel 105, and the one or more access point devices 130 receive the broadcasted Wi-Fi signal data and retransmit the wireless signal characteristics of the user computing device 110 to the location determination system 140 via the network 120. However, in another example, the user computing device 110 is outside of the Wi-Fi broadcast range of any access point device 130 at the enterprise location, and the location determination system 140 does not receive any other wireless signal characteristics of the user computing device 110 from one or more access point devices 130 via the network 120. In another example, the user 101 logs out of the application 113 on the user computing device 110 or otherwise powers down the user computing device 110, and the user computing device 110 stops broadcasting Wi-Fi signal data.
If the location determination system 140 has received other wireless signal attributes of the user computing device 110 from one or more access point devices 130, the method 200 proceeds to block 240 and the location determination system 140 receives wireless signal attributes of the user computing device 110 over the next time window from one or more access point devices 130. For example, the location determination system 140 determines a classification of "moving" or "stationary" and calculates a new location in response to determining the "moving" classification or does not calculate a new location in response to determining the "stationary" classification of the user computing device 110 based on the example method 200.
Returning to block 290, if the location determination system 140 has not received other wireless signal attributes of the user computing device 110 from one or more access points, the method 200 proceeds to block 340 in fig. 3. For example, in FIG. 3, in block 340, the user logs into the application 113 on the user computing device 110 at the enterprise location. For example, the user 101 logs out of the application 113 or otherwise powers down the user computing device 110, leaves the enterprise location, returns to the enterprise location the next day, and then logs into the application 113 on the user computing device 110.
Other examples
Fig. 8 depicts a computing machine 2000 and a module 2050, according to some examples. The computing machine 2000 may correspond to any of the various computers, servers, mobile devices, embedded systems, or computing systems set forth herein. The module 2050 may include one or more hardware or software elements configured to facilitate the computing machine 2000 in performing the various methods and processing functions set forth herein. The computing machine 2000 may include various internal or attached components, such as a processor 2010, a system bus 2020, a system memory 2030, a storage medium 2040, an input/output interface 2060, and a network interface 2070 for communicating with a network 2080.
The computing machine 2000 may be implemented as a conventional computer system, an embedded controller, a laptop computer, a server, a mobile device, a smartphone, a set-top box, a kiosk, a router or other network node, a vehicle information system, one or more processors associated with a television, a customized machine, any other hardware platform, or any combination or multiplicity thereof. The computing machine 2000 may be a distributed system configured to function with multiple computing machines interconnected via a data network or bus system.
The processor 2010 may be configured to execute code or instructions to perform the operations and functions described herein, manage request flow and address mapping, and perform calculations and generate commands. The processor 2010 may be configured to monitor and control the operation of the components in the computing machine 2000. Processor 2010 may be a general purpose processor, a processor core, a multiprocessor, a reconfigurable processor, a microcontroller, a digital signal processor ("DSP"), an application specific integrated circuit ("ASIC"), a graphics processing unit ("GPU"), a field programmable gate array ("FPGA"), a programmable logic device ("PLD"), a controller, a state machine, gated logic, discrete hardware components, any other processing unit, or any combination or multiplicity thereof. Processor 2010 may be a single processing unit, multiple processing units, a single processing core, multiple processing cores, a dedicated processing core, a coprocessor, or any combination thereof. According to some embodiments, the processor 2010 and other components of the computing machine 2000 may be virtualized computing machines executing within one or more other computing machines.
The system memory 2030 may include a non-volatile memory such as a read only memory ("ROM"), a programmable read only memory ("PROM"), an erasable programmable read only memory ("EPROM"), a flash memory, or any other device capable of storing program instructions or data with or without applied power. The system memory 2030 may also include volatile memory such as random access memory ("RAM"), static random access memory ("SRAM"), dynamic random access memory ("DRAM"), and synchronous dynamic random access memory ("SDRAM"). Other types of RAM may also be used to implement system memory 2030. The system memory 2030 may be implemented using a single memory module or a plurality of memory modules. Although the system memory 2030 is depicted as being part of the computing machine 2000, those skilled in the art will recognize that the system memory 2030 may be separate from the computing machine 2000 without departing from the scope of the subject technology. It should also be appreciated that the system memory 2030 may include or may operate in conjunction with a non-volatile storage device, such as the storage media 2040.
The storage medium 2040 may include: a hard disk, a floppy disk, a compact disk read only memory ("CD-ROM"), a digital versatile disk ("DVD"), a blu-ray disk, a magnetic tape, a flash memory, other non-volatile memory devices, a solid state drive ("SSD"), any magnetic storage device, any optical storage device, any electrical storage device, any semiconductor storage device, any physical-based storage device, any other data storage device, or any combination or multiplicity thereof. The storage media 2040 may store one or more operating systems, application programs and program modules (such as the module 2050), data, or any other information. The storage medium 2040 may be part of the computing machine 2000 or may be connected to the computing machine 2000. The storage media 2040 may also be part of one or more other computing machines in communication with the computing machine 2000, such as a server, database server, cloud storage, network attached storage, and so forth.
The module 2050 may include one or more hardware or software elements configured to facilitate the computing machine 2000 in performing the various methods and processing functions set forth herein. The module 2050 may include one or more sequences of instructions stored as software or firmware in association with the system memory 2030, the storage medium 2040, or both. The storage medium 2040 may thus represent an example of a machine or computer readable medium on which instructions or code may be stored for execution by the processor 2010. A machine or computer readable medium may generally refer to any medium or media used to provide instructions to processor 2010. Such machine or computer-readable media associated with the module 2050 may include a computer software product. It should be appreciated that the computer software product including the module 2050 may also be associated with one or more processes or methods for delivering the module 2050 to the computing machine 2000 via the network 2080, any signal-bearing medium, or any other communication or delivery technique. The module 2050 may also include hardware circuitry or information for configuring hardware circuitry (such as microcode or configuration information for an FPGA or other PLD).
The input/output ("I/O") interface 2060 may be configured to couple to one or more external devices to receive data from the one or more external devices and to transmit data to the one or more external devices. Such external devices as well as various internal devices may also be referred to as peripheral devices. The I/O interface 2060 may include both electrical and physical connections for operatively coupling various peripheral devices to the computing machine 2000 or the processor 2010. The I/O interface 2060 may be configured to transfer data, addresses, and control signals between the peripheral device, the computing machine 2000, or the processor 2010. The I/O interface 2060 may be configured to implement any standard interface, such as small computer system interface ("SCSI"), serial attached SCSI ("SAS"), fibre channel, peripheral component interconnect ("PCI"), PCI Express (PCIe), serial bus, parallel bus, advanced technology attachment ("ATA"), serial ATA ("SATA"), universal serial bus ("USB"), Thunderbolt, FireWire, various video buses, and the like. The I/O interface 2060 may be configured to implement only one interface or bus technology. Alternatively, the I/O interface 2060 may be configured to implement a variety of interface or bus technologies. The I/O interface 2060 may be configured as part of the system bus 2020, as the entire system bus 2020, or in conjunction with the system bus 2020. The I/O interface 2060 may comprise one or more buffers for buffering transmissions between one or more external devices, internal devices, the computing machine 2000, or the processor 2010.
The I/O interface 2060 may couple the computing machine 2000 to various input devices including a mouse, touch screen, scanner, electronic digitizer, sensor, receiver, touchpad, trackball, camera, microphone, keyboard, any other pointing device, or any combination thereof. The I/O interface 2060 may couple the computing machine 2000 to various output devices including video displays, speakers, printers, projectors, haptic feedback devices, automated controls, robotic components, actuators, motors, fans, solenoids, valves, pumps, transmitters, signal transmitters, lights, and the like.
The computing machine 2000 may operate in a networked environment using logical connections across the network 2080 to one or more other systems or computing machines through a network interface 2070. The network 2080 may include a Wide Area Network (WAN), a Local Area Network (LAN), an intranet, the internet, a wireless access network, a wired network, a mobile network, a telephone network, an optical network, or a combination thereof. The network 2080 may be packet-switched, circuit-switched, have any topology, and may use any communication protocol. The communication links within the network 2080 may involve various digital or analog communication media such as fiber optic cables, free-space optics, waveguides, electrical conductors, wireless links, antennas, radio frequency communications, and so forth.
The processor 2010 may be coupled to the other elements of the computing machine 2000 or various peripherals discussed herein via a system bus 2020. It is to be appreciated that the system bus 2020 can be internal to the processor 2010, external to the processor 2010, or both. According to certain examples, the processor 2010, other elements of the computing machine 2000, or any of the various peripherals discussed herein may be integrated into a single device, such as a system on a chip ("SOC"), system on package ("SOP"), or ASIC device.
Where the system discussed herein collects or otherwise makes available personal information about a user, the user may be provided with the following opportunities or options: whether or not a program or feature collects user information (e.g., information about a user's social network, social actions or activities, profession, a user's preferences, or a user's current location), or whether and/or how to receive content from a content server that may be more relevant to the user. Further, certain data may be processed in one or more ways before it is stored or used, such that personally identifiable information is removed. For example, the identity of the user may be processed such that personally identifiable information cannot be determined for the user, or the geographic location of the user (such as summarized at a city, zip code, or state level) may be summarized where location information is obtained such that a particular location of the user cannot be determined. Thus, the user may control how information is collected about the user and how the content server uses the information.
Embodiments may include computer programs embodying the functionality described and illustrated herein, where the computer programs are implemented in a computer system including instructions stored in a machine-readable medium and a processor executing the instructions. It should be apparent, however, that there are many different ways in which embodiments may be implemented in computer programming, and these embodiments should not be construed as limited to any one set of computer program instructions. In addition, a skilled programmer will be able to write such a computer program to implement embodiments of the disclosed embodiments based on the accompanying flow charts and associated description in the application text. Therefore, disclosure of a particular set of program code instructions is not considered necessary for a complete understanding of how to make and use embodiments. In addition, those skilled in the art will recognize that one or more aspects of the embodiments described herein may be performed by hardware, software, or a combination thereof, as may be embodied in one or more computing systems. Moreover, any reference to an action being performed by a computer should not be construed as being performed by a single computer, as more than one computer may perform the action.
The examples described herein may be used with computer hardware and software that perform the methods and processing functions described herein. The systems, methods, and processes described herein may be embodied in a programmable computer, computer-executable software, or digital circuitry. The software may be stored on a computer readable medium. For example, the computer-readable medium may include: floppy disk, RAM, ROM, hard disk, removable media, flash memory, memory stick, optical media, magneto-optical media, CD-ROM, and the like. Digital circuitry may include integrated circuits, gate arrays, building block logic, Field Programmable Gate Arrays (FPGAs), and the like.
The example systems, methods, and acts described in the embodiments previously presented are illustrative, and in alternative embodiments, some acts may be performed in a different order, performed in parallel with each other, omitted entirely, and/or combined between different examples, and/or some additional acts may be performed, without departing from the scope and spirit of the various embodiments. Accordingly, such alternate embodiments are included within the scope of the following claims, which are to be accorded the broadest interpretation so as to encompass such alternate embodiments.
Although specific embodiments have been described in detail above, this description is for illustrative purposes only. It should be recognized, therefore, that many of the aspects described above are not intended as required or essential elements unless explicitly stated otherwise. Modifications of the disclosed aspects in addition to those described above, as well as equivalent components or actions corresponding thereto, may be made by persons of ordinary skill in the art having the benefit of this disclosure without departing from the spirit and scope of the embodiments as defined in the following claims, the scope of which is to be accorded the broadest interpretation so as to encompass such modifications and equivalent structures.

Claims (20)

1. A method of determining a location of a user computing device based on wireless signal attribute data and motion classification, comprising:
receiving, by one or more computing devices, wireless signal data associated with a user computing device from one or more access point computing devices for a time window comprising at least a first time interval and one or more second time intervals prior to the first time interval;
for each of the one or more access point computing devices, extracting, by the one or more computing devices, one or more features of the wireless signal data associated with the user computing device at the first time interval and at the one or more second time intervals prior to the first time interval;
determining, by the one or more computing devices, an aggregated feature based on the extracted one or more features of the wireless signal data received from the one or more access point computing devices;
classifying, by the one or more computing devices, the user computing device as mobile based on the determined aggregated features, an
In response to classifying the user computing device as mobile, determining, by the one or more computing devices, a location of the user computing device based on the received wireless signal attribute data; and
sending, by the one or more computing devices, the determined location of the user computing device to a second computing device for display via the second computing device.
2. The method of claim 1, wherein the wireless signal data comprises one or more of: a received signal strength indicator and a phase vector.
3. The method of claim 2, further comprising: determining, by the one or more computing devices, an angle of arrival based on the received phase vector, and wherein the location of the user computing device is determined based on the determined angle of arrival and the received signal strength indicator.
4. The method of any preceding claim, wherein the wireless signal data comprises one or more of: Wi-Fi signal data, Bluetooth Low energy ("BLE") signal data, and near field communication ("NFC") signal data.
5. The method of any preceding claim, further comprising: determining, by the one or more access point devices, the wireless signal data based on data received from the user computing device via one or more wireless communication channels.
6. The method of any preceding claim, wherein the one or more characteristics of the wireless signal data comprise phase vector correlation.
7. The method of any preceding claim, wherein the one or more characteristics of the wireless signal data comprise: a difference of consecutive received signal strength indicators, a standard deviation of the difference of consecutive received signal strength indicators, or a ratio between a number of available received signal strength indicators and a total number of the first time intervals and the second time intervals.
8. The method of any preceding claim, wherein classifying the user computing device as mobile further comprises applying the received wireless signal data to a model comprising one or more of: a recurrent neural network, a random forest, a support vector machine, and a hidden markov model.
9. A computer-readable storage device having computer-executable program instructions embodied therein that, when executed by a computer, cause the computer to determine a location of a user computing device based on wireless signal attribute data and a motion classification, the computer-readable program instructions comprising:
computer-readable program instructions for: receiving, from one or more access point computing devices, wireless signal data associated with a user computing device for a time window comprising at least a first time interval and one or more second time intervals prior to the first time interval;
computer-readable program instructions for: for each of the one or more access point computing devices, extracting one or more features of the wireless signal data associated with the user computing device at the first time interval and at the one or more second time intervals prior to the first time interval;
computer-readable program instructions for: determining an aggregate feature based on the extracted one or more features of the wireless signal data received from the one or more access point computing devices;
computer-readable program instructions for: classifying the user computing device as mobile based on the determined aggregated features, an
Computer-readable program instructions for: determining a location of the user computing device based on the received wireless signal attribute data in response to classifying the user computing device as mobile; and
computer-readable program instructions for: sending the determined location of the user computing device to a second computing device for display via the second computing device.
10. The computer program product of claim 9, wherein the one or more wireless signal data comprises one or more of: a received signal strength indicator and a phase vector.
11. The computer program product of claim 10, further comprising computer-readable program instructions to: determining an angle of arrival based on the received phase vector, and wherein the location of the user computing device is determined based on the determined angle of arrival and the received signal strength indicator.
12. The computer program product of any of claims 9 to 11, wherein the wireless signal data comprises one or more of: Wi-Fi signal data, Bluetooth Low energy ("BLE") signal data, near field communication ("NFC") signal data.
13. The computer program product of any of claims 9 to 12, wherein the one or more access point devices determine the wireless signal attribute data based on data received from the user computing device via one or more wireless communication channels.
14. The computer program product of any of claims 9 to 13, wherein the one or more features of the wireless signal data comprise phase vector correlation.
15. The computer program product of any of claims 9 to 14, wherein the one or more characteristics of the wireless signal data comprise: a difference of consecutive received signal strength indicators, a standard deviation of the difference of consecutive received signal strength indicators, or a ratio between a number of available received signal strength indicators and a total number of the first time intervals and the second time intervals.
16. A system configured to:
receiving, from one or more access point computing devices, wireless signal attribute data associated with a user computing device for a time window comprising at least a first time interval and one or more second time intervals prior to the first time interval;
for each access point computing device, extracting one or more features of the wireless signal attribute data associated with the user computing device at the first time interval and at the one or more second time intervals prior to the first time interval;
determining an aggregate feature based on the extracted one or more features of the wireless signal attribute data received from the one or more access point computing devices;
classifying the user computing device as mobile based on the determined aggregated features, an
In response to classifying the user computing device as mobile, determining a location of the user computing device based on the received wireless signal attribute data; and
transmitting the determined location of the user computing device to a second computing device.
17. The system of claim 16, wherein the one or more characteristics of the wireless signal attribute data comprise one or more of: a received signal strength indicator and a phase vector.
18. The system of any of claims 16 to 17, wherein the one or more characteristics of the wireless signal attribute data comprise one or more of: Wi-Fi signal data, Bluetooth Low energy ("BLE") signal data, near field communication ("NFC") signal data.
19. The system of any of claims 16 to 18, further comprising the one or more access point computing devices, wherein the one or more access point devices are configured to determine the wireless signal attribute data based on data received from the user computing device via one or more wireless communication channels.
20. The system of any of claims 16 to 19, wherein classifying the user computing device as mobile further comprises applying the aggregated wireless signal features to a model comprising one or more of: a recurrent neural network, a random forest, a support vector machine, and a hidden markov model.
CN201980051749.XA 2018-08-14 2019-08-02 Motion detection for passive indoor positioning system Pending CN112513663A (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US16/103,781 US10349216B1 (en) 2018-08-14 2018-08-14 Motion detection for passive indoor positioning system
US16/103,781 2018-08-14
US201916427273A 2019-05-30 2019-05-30
US16/427,273 2019-05-30
PCT/US2019/044969 WO2020036756A1 (en) 2018-08-14 2019-08-02 Motion detection for passive indoor positioning system

Publications (1)

Publication Number Publication Date
CN112513663A true CN112513663A (en) 2021-03-16

Family

ID=67766273

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980051749.XA Pending CN112513663A (en) 2018-08-14 2019-08-02 Motion detection for passive indoor positioning system

Country Status (3)

Country Link
EP (1) EP3837566A1 (en)
CN (1) CN112513663A (en)
WO (1) WO2020036756A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113473380A (en) * 2021-05-13 2021-10-01 深圳市乙辰科技股份有限公司 Client track identification method and distributed wireless network system

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080261623A1 (en) * 2007-04-18 2008-10-23 Kamran Etemad Techniques to enhance location estimation in an ofdma based system
US20100159958A1 (en) * 2008-12-22 2010-06-24 Qualcomm Incorporated Post-deployment calibration for wireless position determination
CN102265174A (en) * 2008-11-21 2011-11-30 高通股份有限公司 Wireless position determination using adjusted round trip time measurements
US20120164953A1 (en) * 2010-12-23 2012-06-28 Electronics And Telecommunications Research Institute Method And Apparatus For Sensing Movement
CN104704499A (en) * 2012-06-21 2015-06-10 菲利普莫里斯生产公司 Systems and methods relating to network-based biomarker signatures
CN105051569A (en) * 2013-01-14 2015-11-11 微软技术许可有限责任公司 Location determination for emergency services in wireless networks
US20160291124A1 (en) * 2015-04-05 2016-10-06 Nicholaus J. Bauer Determining a location of a transmitter device
CN106062581A (en) * 2014-02-12 2016-10-26 谷歌公司 Energy-efficient location determination
CN107003378A (en) * 2014-11-07 2017-08-01 索尼公司 It is determined that the geographical position of the portable electron device with synthetic antenna array
US9749786B1 (en) * 2016-03-22 2017-08-29 Cisco Technology, Inc. Determining location via wireless signal attributes
US9814051B1 (en) * 2016-09-20 2017-11-07 Deeyook Location Technologies Ltd. Identifying angle of departure of multi-antenna transmitters
CN107980100A (en) * 2015-03-07 2018-05-01 维里蒂工作室股份公司 Distributed positioning system and method and self-locating devices
WO2018114011A1 (en) * 2016-12-23 2018-06-28 Telefonaktiebolaget Lm Ericsson (Publ) Communication node, target device and methods for activation positioning procedure in wireless communication network

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8193982B2 (en) * 2009-06-29 2012-06-05 Research In Motion Limited Controlling a GPS receiver by detecting motion based on radiofrequency signal traces

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080261623A1 (en) * 2007-04-18 2008-10-23 Kamran Etemad Techniques to enhance location estimation in an ofdma based system
CN102265174A (en) * 2008-11-21 2011-11-30 高通股份有限公司 Wireless position determination using adjusted round trip time measurements
US20100159958A1 (en) * 2008-12-22 2010-06-24 Qualcomm Incorporated Post-deployment calibration for wireless position determination
US20120164953A1 (en) * 2010-12-23 2012-06-28 Electronics And Telecommunications Research Institute Method And Apparatus For Sensing Movement
CN104704499A (en) * 2012-06-21 2015-06-10 菲利普莫里斯生产公司 Systems and methods relating to network-based biomarker signatures
CN105051569A (en) * 2013-01-14 2015-11-11 微软技术许可有限责任公司 Location determination for emergency services in wireless networks
CN106062581A (en) * 2014-02-12 2016-10-26 谷歌公司 Energy-efficient location determination
CN107003378A (en) * 2014-11-07 2017-08-01 索尼公司 It is determined that the geographical position of the portable electron device with synthetic antenna array
CN107980100A (en) * 2015-03-07 2018-05-01 维里蒂工作室股份公司 Distributed positioning system and method and self-locating devices
US20160291124A1 (en) * 2015-04-05 2016-10-06 Nicholaus J. Bauer Determining a location of a transmitter device
US9749786B1 (en) * 2016-03-22 2017-08-29 Cisco Technology, Inc. Determining location via wireless signal attributes
US9814051B1 (en) * 2016-09-20 2017-11-07 Deeyook Location Technologies Ltd. Identifying angle of departure of multi-antenna transmitters
WO2018114011A1 (en) * 2016-12-23 2018-06-28 Telefonaktiebolaget Lm Ericsson (Publ) Communication node, target device and methods for activation positioning procedure in wireless communication network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
朱雪梅;李石荣;李泽彬;: "基于RSSI分布重叠的WKNN室内定位方法", 徐州工程学院学报(自然科学版), no. 03, 30 September 2017 (2017-09-30) *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113473380A (en) * 2021-05-13 2021-10-01 深圳市乙辰科技股份有限公司 Client track identification method and distributed wireless network system
CN113473380B (en) * 2021-05-13 2023-11-14 深圳市乙辰科技股份有限公司 Client track recognition method and distributed wireless network system

Also Published As

Publication number Publication date
WO2020036756A1 (en) 2020-02-20
EP3837566A1 (en) 2021-06-23

Similar Documents

Publication Publication Date Title
US10206058B2 (en) Determining location via current and previous wireless signal attributes
US20230072151A1 (en) Location-Based Services
US10932087B2 (en) Motion detection for passive indoor positioning system
US10178555B2 (en) Securing a wireless mesh network via a chain of trust
JP6316986B2 (en) Verifying secure connections between network beacons and user computing devices
EP3139196B1 (en) System and method for positioning, mapping and data management by using crowdsourcing
US11178596B2 (en) Identifying users via mobile hotspots
US9965754B2 (en) Point of sale terminal geolocation
JP6338682B2 (en) Automatic learning of store topography using in-store location signals
CN103918327A (en) Position estimation via proximate fingerprints
Bai et al. A new method for improving Wi-Fi-based indoor positioning accuracy
KR102612792B1 (en) Electronic device and method for determining entry in region of interest thereof
CN112513663A (en) Motion detection for passive indoor positioning system
US20180195867A1 (en) Systems and methods for indoor and outdoor mobile device navigation
US11122437B2 (en) Detection of GPS spoofing using wireless network visibility to mobile devices
Öhrström et al. The precision of RSSI-fingerprinting based on connected Wi-Fi devices
Acanfora et al. Mobile indoor localization in museum environment: an experimentation in FIBAC project

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination