US20180088205A1 - Positioning - Google Patents
Positioning Download PDFInfo
- Publication number
- US20180088205A1 US20180088205A1 US15/279,485 US201615279485A US2018088205A1 US 20180088205 A1 US20180088205 A1 US 20180088205A1 US 201615279485 A US201615279485 A US 201615279485A US 2018088205 A1 US2018088205 A1 US 2018088205A1
- Authority
- US
- United States
- Prior art keywords
- mobile device
- doppler shift
- access point
- frequency
- calculating
- 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.)
- Abandoned
Links
- 238000000034 method Methods 0.000 claims abstract description 39
- 230000033001 locomotion Effects 0.000 claims abstract description 22
- 238000004891 communication Methods 0.000 claims abstract description 18
- 230000015654 memory Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 241001503987 Clematis vitalba Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-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/0257—Hybrid positioning
- G01S5/0268—Hybrid positioning by deriving positions from different combinations of signals or of estimated positions in a single positioning system
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-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/0246—Position-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 involving frequency difference of arrival or Doppler measurements
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-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/0294—Trajectory determination or predictive filtering, e.g. target tracking or Kalman filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/027—Services making use of location information using location based information parameters using movement velocity, acceleration information
-
- H04W4/043—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
- H04W84/12—WLAN [Wireless Local Area Networks]
Definitions
- the present specification relates to a method of determining a user location, and a positioning system, wireless access point and mobile device.
- HAIP High Accuracy Indoor Positioning
- Wi-Fi access control applications For example, a server can determine a user's location based on the network their mobile device is currently connected to. However, this requires collaboration between all of the network providers in the system.
- a method of determining a user location comprising:
- the method according to the first aspect does not require any features other than a mobile device and an access point, such as a wireless router.
- BLE beacons and other sensors are not necessary.
- Calculating the observed Doppler shift may comprise:
- the method may further comprise:
- ⁇ f is the observed Doppler shift
- e 1 is the first difference
- e 2 is the second difference
- a or the carrier frequency may be one of 2.4 GHz and 5 GHz.
- the method may comprise:
- the method may comprise:
- the method may comprise:
- the method may comprise receiving an identifier of the mobile device, and transmitting the calculated vertical position to the mobile device based on the identifier.
- the method may comprise converting the calculated vertical position of the mobile device to a floor number.
- the method may comprise displaying the vertical position of the mobile device.
- the mobile device may be determined to be at the same vertical position as the at least one wireless access point if the observed Doppler shift is greater than a threshold, and the mobile device may be determined to be at a different vertical position to the wireless access point if the observed Doppler shift is less than a the threshold, wherein the threshold is based on the expected Doppler shift.
- a mobile device comprising:
- the transmitter may be further configured to transmit an identifier for identifying the mobile device to the at least one wireless access point.
- the receiver may be further configured to receive a vertical position of the mobile device from one of a server and the at least one wireless access point; and the apparatus may further comprise a display for displaying the vertical position.
- an apparatus comprising:
- the transceiver may comprise a receiver configured to receive a first difference in frequency between a signal received by the mobile device and a signal transmitted by the mobile device;
- the controller may be further configured to:
- ⁇ f is the observed Doppler shift
- e 1 is the first difference
- e 2 is the second difference
- the controller may be configured to determine the mobile device to be at the same vertical position as the apparatus if the observed Doppler shift is greater than a threshold, and determine the mobile device to be at a different vertical position to the apparatus if the observed Doppler shift is less than a the threshold, wherein the threshold is based on the expected Doppler shift.
- the apparatus may be an IEEE 802.11 compliant access point.
- the apparatus may further comprise a wired or wireless interface for transmitting the vertical position of the mobile device to the mobile device or to a server.
- a positioning system comprising the mobile device according to the second aspect and one or more apparatuses according to the third aspect, and the system being configured to perform the steps according to the first aspect.
- the positioning system may further comprise a server configured to receive one of an observed Doppler shift from the one or more apparatuses, a difference in frequency between a signal transmitted by a mobile device and a signal received by the mobile device and a difference in frequency between a signal transmitted by an apparatus and a signal received by the apparatus, and a vertical position of the mobile device from the one or more apparatuses, wherein, if the observed Doppler shift is received or if the difference in frequencies are received, the server is configured to calculate the vertical position of the mobile device.
- the positioning system may further comprise a display device for displaying the vertical position of the mobile device.
- a computer-readable storage medium having computer-readable code stored thereon, the computer-readable code, when executed by at least one processor, causing performance of:
- the computer-readable storage medium having computer-readable code stored thereon, the computer-readable code, when executed by at least one processor, may cause performance of:
- the computer-readable storage medium according to claim 13 having computer-readable code stored thereon, the computer-readable code, when executed by at least one processor, may cause performance of:
- ⁇ f is the observed Doppler shift
- e 1 is the first difference
- e 2 is the second difference
- the mobile device may be determined to be at the same vertical position as the at least one wireless access point if the observed Doppler shift is greater than a threshold, and wherein the mobile device may be determined to be at a different vertical position to the wireless access point if the observed Doppler shift is less than the threshold, wherein the threshold is based on the expected Doppler shift.
- an apparatus comprising:
- the computer-readable instructions may cause the apparatus at least to:
- the computer-readable instructions may cause the apparatus at least to:
- ⁇ f is the observed Doppler shift
- e 1 is the first difference
- e 2 is the second difference
- the computer-readable instructions may cause the apparatus at least to:
- the apparatus may be an IEEE 802.11 compliant access point.
- FIG. 1 is a schematic diagram of a positioning system according to embodiments of the present specification
- FIGS. 2 a and 2 b are schematic diagrams illustration how the position of a mobile device is determined according to embodiments of the present specification
- FIG. 3 is a schematic diagram illustrating a building having a positioning system according to embodiments of the present specification
- FIG. 4 is a graph showing how the position of a mobile device in the vertical plane is determined according to an aspect of the present specification
- FIG. 5 is a flow chart illustrating operation of a mobile device according to embodiments of the present specification.
- FIG. 6 is a flow chart illustrating operation of an access point according to embodiments of the present specification.
- FIG. 7 is a system diagram of a system for triangulating the position of a mobile device according to embodiments of the present specification
- FIG. 8 is a schematic diagram illustrating a building having a positioning system according to embodiments of the present specification.
- FIG. 9 is a flow chart illustrating operation of a server according to embodiments of the present specification.
- FIG. 10 is a flow chart illustrating operation of a server according to another embodiment of the present specification.
- FIG. 11 is a schematic diagram illustrating a storage medium according to an aspect of the present specification.
- the present invention relates to calculating the vertical position of a mobile device 210 . This is particularly useful in buildings having multiple floors, where it is helpful to keep track of employees or customers.
- the invention described herein makes use of wireless access points 290 , such as commercial-off-the-shelf Wi-Fi routers, but any wireless standard with a known carrier frequency may be used.
- the Doppler shift that would be expected if the mobile device 210 and access point 290 were on the same level (i.e. the same or substantially the same horizontal plane) is calculated using the horizontal velocity of the mobile device.
- the actual observed Doppler shift is then calculated by comparing transmitted and received signals with the carrier frequency.
- the vertical position of the mobile device 210 is then inferred by comparing the expected Doppler shift with the observed Doppler shift.
- the mobile device 210 determines its own vertical position. In other embodiments, the access points 290 determine the mobile device's 210 vertical position. Finally, a server 702 (shown in FIG. 8 ) coupled to the access points 290 may calculate the vertical position of the mobile device 210 .
- FIG. 1 shows a system 100 according to embodiments of the present specification.
- the system 100 includes a mobile device 210 and an access point 290 .
- the mobile device 210 is portable and its location can be tracked.
- the mobile device 210 is a mobile tag, a mobile phone, a tablet or a laptop.
- the access point 290 according to some embodiments is a wireless access point, for example a Wi-Fi access point.
- the mobile device 210 includes a transceiver module 212 , which operates according to the IEEE 802.11 standard.
- the mobile device 210 in these embodiments is able to communicate with the access point 290 through an IEEE 802.11 standard protocol, such as 802.11b/g/n.
- the transceiver module 212 is capable of receiving and/or transmitting wireless signals with a frequency of 2.4 GHz and/or 5 GHz.
- the transceiver module 212 is also configured to operate according to other communication standards, for example where the mobile device 210 is a mobile phone, so that it can communicate with devices other than the access point 290 .
- These other communication standards may include BTLE, GSM, EDGE and LTE.
- the mobile device 210 includes a processor 211 .
- the processor 211 is connected to volatile memory such as RAM 216 by a bus 217 .
- the bus 217 also connects the processor 211 and the RAM 216 to non-volatile memory, such as ROM 214 .
- the transceiver module 212 is coupled to the bus 217 , and thus also to the processor 211 and the memories 214 , 216 .
- An antenna 218 is coupled to the transceiver module 212 . While the antenna 218 is shown as being external to the mobile device 210 , in some embodiments the antenna 218 is internal to the mobile device 210 .
- Within the ROM 214 is stored a software application 215 . The function of the software application 215 will be described with reference to FIGS. 2 a , 2 b and 3 , in which it will be explained how the location of the mobile device 210 is determined.
- the mobile device 210 also includes a power source 219 .
- the power source 219 may be for instance a battery such as a coin cell.
- the power source 219 powers the transceiver module 212 and any other components of the mobile device 210 .
- the mobile device 210 may optionally include a sensor 213 for detecting movement of the mobile device 210 .
- the sensor 213 may take the form of a tilt switch or accelerometer, for instance.
- the mobile device 210 may take any suitable form.
- the mobile device 210 may comprise processing circuitry 211 , including one or more processors, and a storage device 214 , 216 , comprising a single memory unit or a plurality of memory units.
- the storage device 214 , 216 may store computer program instructions 215 that, when loaded into the processing circuitry 211 , control the operation of the mobile device 210 .
- the transceiver module 212 may take any suitable form. Generally speaking, the transceiver module 212 of the mobile device 210 may comprise processing circuitry, including one or more processors, and a storage device comprising a single memory unit or a plurality of memory units. The storage device may store computer program instructions that, when loaded into the processing circuitry, control the operation of the transceiver module 212 .
- the transceiver module 212 includes a communication stack that is implemented at least partly in software using processor and memory resources (not shown), all of which are included within the transceiver module 212 .
- the transceiver module 212 is configured, when enabled by the processor 211 running application 215 , to transmit information on a signal according to the IEEE 802.11 standard.
- the information on the signal may include an identifier of the mobile device 210 .
- the information on the signal may also include the mobile device's horizontal velocity. Alternatively or additionally, the access point 290 or a server is used to determine the mobile device's horizontal velocity.
- the transceiver module 212 is also configured to receive signals according to the IEEE 802.11 standard and measure accurately their frequency. This will be discussed in more detail later.
- the transceiver module 212 of the mobile device 210 is both a transmitter and a receiver. However, while the transceiver module 212 is configured to receive a wireless signal according to the IEEE 802.11 standard, it may not be configured to transmit a signal according to the IEEE 802.11 standard. Instead, in these embodiments, the transceiver module 212 may be configured to transmit a signal according to any suitable communication standard.
- the access point 290 includes a processor 271 .
- the processor 271 is connected to volatile memory such as RAM 276 by a bus 277 .
- the bus 277 also connects the processor 271 and the RAM 276 to a non-volatile memory, such as ROM 274 .
- a software application 275 is stored within the ROM 274 .
- the software application 275 will be described in more detail with reference to FIG. 6 .
- the access point 290 also has a communication interface 273 connected to the processor 271 via a bus 277 .
- the communication interface 273 may be configured to allow two-way communication with external devices and/or networks.
- the communication interface 273 may be configured to communicate wirelessly via one or more of several protocols such as Global System for Mobile Communications (GSM), Code Division Multiple Access (CDMA) and Universal Mobile Telecommunications System (UMTS).
- GSM Global System for Mobile Communications
- CDMA Code Division Multiple Access
- UMTS Universal Mobile Telecommunications System
- the communication interface 273 may be configured for wired communication with a device or network.
- the communication interface 273 sends information identifying the calculated vertical position of the mobile device 210 to a terminal device ( 704 , in FIG. 8 ) for display of the position of the mobile device 210 when requested. Alternatively or in addition, the communication interface 273 sends information identifying the calculated vertical position of the mobile device 210 to the mobile device 210 for display.
- the access point 290 has a transceiver 280 connected to an antenna 288 .
- the transceiver 280 thus is configured to transmit a Wi-Fi signal to the mobile device 210 .
- the transceiver 280 may also be configured to receive a signal from the mobile device 210 .
- the signal received at the access point 290 may be a Wi-Fi signal.
- the access point 290 then forwards information decoded from the Wi-Fi signal to a server for processing. The information may be forwarded to the server through a wired or wireless interface, such as through the transceiver 280 or another messaging means.
- the use of a wired network is not essential.
- the use of a wired network may be advantageous in embodiments having a server, as will be described in more detail with reference to FIG. 8 .
- the computing burden on the processor 211 of the mobile device 210 is significantly reduced, thereby extending the battery life of the power source 219 of the mobile device 210 .
- Wi-Fi signals may be transmitted by the access point 290 to the mobile device 210 periodically, for instance at 4 Hz (250 millisecond intervals) or at intervals defined by some component within the system 100 .
- the Wi-Fi signals may alternatively be transmitted on request of some component within the system 100 .
- the mathematical derivation for calculating the vertical position of a mobile device 210 will now be described with reference to the system shown in FIGS. 2 a , 2 b and 3 . Although these calculations will be described as being carried out at the access point 290 , in other embodiments, some of the calculations are performed on a server or on the mobile device 210 . In other words, in embodiments described herein, the access point 290 is used to determine the location of a mobile device 210 . However, the skilled person would readily appreciate that the mobile device 210 in other embodiments uses signals received from the access point 290 to locate itself with respect to the access point 290 .
- FIGS. 2 a and 2 b each represent the same building having two floors, such as a shopping centre. There may be more than two floors in the building. Furthermore, it would be readily appreciated that the system may alternatively be employed in an outdoor environment, such as a mountain. Here, the two floors represent two levels, such as two locations at different altitudes on the mountain.
- the mobile device 210 is positioned on the second floor, while the access point 290 is positioned on the first floor.
- the access point 290 is static, while the mobile device 210 can move in the horizontal (i.e. XY) plane, and between floors (i.e. in the vertical or Z direction).
- the mobile device 210 is moving with a velocity v.
- the imaginary line connecting the mobile device 210 to the access point 290 or, in other words, the shortest distance between the mobile device 210 and the access point 290 , makes an angle ⁇ with respect to the direction of travel of the mobile device 210 .
- the angle ⁇ is 0 degrees.
- the access point 290 transmits a Wi-Fi signal on a carrier frequency f c which is received by the mobile device 210 .
- ⁇ ⁇ ⁇ f cos ⁇ ⁇ ⁇ ⁇ v c ⁇ f c ,
- the velocity of the mobile device 210 in the horizontal plane can be calculated by any suitable means.
- the access point 290 calculates how the XY coordinates (or polar coordinate, or latitude/longitude) of the mobile device 210 change with time. This may be achieved using triangulation of bearings using multiple access points 290 or a MIMO access point. Time-of-arrival and direction-of-arrival of signals may also be used to calculate how the horizontal position of the mobile device 210 changes with time.
- the mobile device 210 can calculate its own velocity, for example using the sensor 213 or a GPS receiver (not shown).
- the ⁇ f observed in the example of FIG. 2 a where the mobile device 210 and access point 290 are on the same floor, is significantly smaller than in the example of FIG. 2 b .
- the mobile device 210 and access point 290 are on the same floor.
- cos ⁇ is close to or equal to 1, so the Doppler shift can be estimated to be
- Comparing the expected, or estimated, Doppler shift to the actual observed Doppler shift allows the access point 290 to determine whether the mobile device 210 is on a different floor.
- the mobile device 210 is unknown to the access point 290 which of the floors (Floor 1 or Floor 2 ) the mobile device 210 is on, but the mobile device's 210 XY position is known.
- the mobile device 210 is at position (0, 0) on the XY plane. Therefore, the mobile device 210 could either be at position A or position B.
- the mobile device 210 is moving in direction v, and the moving direction v is known to the system.
- Point C is at XYZ coordinates (1, 1, 0). The Doppler shift in the same-floor case is then
- ⁇ ⁇ ⁇ f ′ cos ⁇ ⁇ ⁇ ⁇ ⁇ 1 ⁇ v c ⁇ f c ,
- ⁇ 1 is the angle between v and BC.
- the actual Doppler shift observed by the access point 290 depends on the user's floor. For example, if the user is on Floor 2 , the angle between v and AC is ⁇ 2> ⁇ 1. Therefore, the observed Doppler shift is
- the observed Doppler shift ⁇ f being less than the expected Doppler shift ⁇ f′ does not automatically mean that the mobile device 210 and the access point 290 are on different floors. For example, there may be a discrepancy because of imperfect Doppler shift measurement, inaccuracies in velocity or horizontal position measurement, or because the mobile device 210 is being held at a high height by the user. Therefore, in some embodiments a threshold is set as a fraction of the expected Doppler shift and used to determine whether the mobile device 210 and the access point 290 are on different floors. As the error grows with increased velocity of the mobile device 210 , the threshold frequency value (i.e. fraction of expected Doppler shift) in some embodiments is a function of velocity in order to compensate for the increasing error. This is shown in more detail in FIG. 4 .
- FIG. 4 shows a graph of expected Doppler shift against probability density, where there is an estimation of errors for velocity and cos ⁇ 1.
- the expected Doppler shift is the Doppler shift calculated based on the horizontal velocity of the mobile device 210 .
- the expected Doppler shift is the Doppler shift that would be expected if the mobile device 210 and access point 290 are on the same floor.
- a relatively low threshold frequency value 403 is set for use in determining whether the mobile device 210 and access point 290 are on the same or different floors.
- the bell-shape in FIG. 4 is an indication that the measurement is an inherently noisy process. There is a symmetry about the Y-axis which indicates that the same magnitude of quantities but with a different sign is observed in the cases of moving towards an access point 290 or moving away from an access point 290 .
- the operation of the mobile device 210 will now be described with reference to FIG. 5 .
- the transceiver module 212 of the mobile device 210 must be switched on.
- a first step 500 the mobile device 210 transmits a signal to an access point 290 .
- the frequency of this signal as measured at the mobile device 210 is designated f 1 .
- the frequency of the same signal as measured at the mobile device 210 and at the access point 290 will naturally be fractionally different, due to imperfect circuitry, attenuation in the antennas 218 , 288 , atmospheric conditions, errors in calculation and the Doppler shift caused by movement of the mobile device 210 .
- the Doppler shift which here is the observed or measured Doppler shift, would be the same value as measured at both the mobile device 210 and the access point 290 .
- the signal transmitted by the mobile device 210 is a Wi-Fi signal having a carrier frequency of 2.4 GHz or 5 GHz.
- Current Wi-Fi protocol requires a frequency stability of 25 ppm (802.11b) or less, which means there could be a frequency shift of up to 60 kHz for 2.4 GHz Wi-Fi devices due to imperfect circuits. Meanwhile, adults typically walk at 1.4 m/s or less, which speed induces a 11.2 Hz Doppler frequency shift.
- the mobile device 210 receives a signal from an access point 290 .
- the mobile device 210 may have a “wake up on LAN” feature, whereby receiving a wireless signal turns on the mobile device 210 fully.
- only the transceiver module 212 and the processor 211 may be powered.
- the mobile device 210 may transmit a request to the access point 290 for a signal prior to the signal being received.
- the access point 290 may transmit signals continuously, or at a predetermined period.
- the mobile device 210 measures the frequency of the received signal. This frequency is designated f 2 ′.
- a component of the received signal frequency f 2 ′ will be the observed Doppler shift as previously described.
- the access point 290 is an access point operating according to the IEEE 802.11 standard, it would be expected that the received signal would have a frequency close to the carrier frequency of 2.4 GHz or 5 GHz. In other embodiments, where the access point 290 operates according to a different wireless standard, the carrier frequencies will be different to 2.4 GHz and 5 GHz.
- the mobile device 210 calculates the difference between the frequency of the signal transmitted by the mobile device 210 , f 1 , and the frequency of the signal received by the mobile device 210 , f 2 ′. This difference in frequency, as measured at the mobile device 210 , is designated e 1 .
- the transceiver module 212 transmits e 1 to the access point 290 .
- the transceiver module 212 transmits e 1 to a server.
- the access point 290 then performs processing to determine the vertical position of the mobile device 210 .
- the vertical position can be used to determine vertical position information such as floor information, such as the floor number in a building on which the mobile device 210 is positioned.
- the process, B, carried out by the access point 290 will be described later with reference to FIG. 6 .
- the vertical position information is received from the access point 290 at the mobile device 210 .
- the vertical position information is displayed along with the horizontal position (i.e. the mobile device's 210 position on the XY plane).
- the horizontal position may be calculated by the mobile device 210 itself, or received from the access point 290 .
- the display of the vertical position information and the horizontal position may take the form of a map.
- Embodiments of the present disclosure may be applied to an augmented reality environment.
- the mobile device 210 may additionally be equipped with a camera which is able to capture images of the area covered by the mobile device 210 .
- the mobile device 210 overlays these images with tags based on the vertical and horizontal position information obtained from the access point 290 or server 702 .
- the mobile device 210 is able to determine that the user is positioned on the second floor of a building.
- the mobile device 210 is then able to overlay the names of shops in the user's vicinity, based on the determined horizontal position information, or display a marker indicating a shop selected by the user as their destination.
- steps 510 and 512 are optional steps. These steps are carried out when the user of the mobile device 210 is lost or is trying to find a route to a particular shop, for example.
- the vertical position information is transmitted to a server for display at an external display apparatus, or stored in order to perform analytics such as human traffic management.
- the access point 290 transmits a signal to the mobile device 210 .
- the signal is a Wi-Fi signal having a carrier frequency of 2.4 GHz or 5 GHz.
- the frequency of the transmitted signal, as measured at the access point 290 is designated f 2 .
- the access point receives e 1 in a signal received from the mobile device 210 .
- e 1 was calculated by the mobile device 210 in step 506 described with reference to FIG. 5 .
- the frequency of the signal containing e 1 is then measured, and the frequency of the received signal, as measured at the access point 290 is designated f 1 ′.
- the access point 290 suffers from the same problems as the mobile device 210 , such as imperfect circuits and signal attenuation.
- Process B as shown in FIG. 5 , will now be described with reference to steps carried out by the access point 290 .
- the access point 290 calculates the horizontal velocity of the mobile device 210 .
- the horizontal velocity includes the direction in which the mobile device 210 is moving.
- the horizontal velocity is calculated based on how the horizontal position (such as XY coordinates, polar coordinates, or latitude and longitude) changes with time.
- the horizontal position such as XY coordinates, polar coordinates, or latitude and longitude
- One example of a means to calculate the changing horizontal position will be described with reference to FIG. 7 .
- triangulation is used.
- Horizontal velocity may also be calculated by obtaining the horizontal position of the mobile device 210 from the mobile device 210 itself, and calculating how the horizontal position changes with time.
- the mobile device 210 may determine its horizontal position using GPS.
- the following techniques could be used to determine the horizontal position of the mobile device 210 : coarse localization using the time-of-arrival/time direction-of-arrival of a signal using multiple access points 290 ; and 2D accurate static device localization using both time-of-arrival and direction-of-arrival of a signal using one access point 290 . Since these coordinates are available at a fine time granularity (for example 250 millisecond), their rate of change, such as velocity and acceleration, can also be obtained.
- the expected Doppler shift of the mobile device 210 is then calculated in step 606 based on the horizontal velocity and the carrier frequency.
- the expected Doppler shift is calculated using the equation
- a tolerance is added to the measurement in some embodiments.
- the observed Doppler shift is calculated at the access point 290 .
- ⁇ f the observed Doppler shift is calculated at the access point 290 .
- ⁇ ⁇ ⁇ f - ( e 1 + e 2 ) 2 .
- steps 600 to 610 can be reversed while still providing the same advantages over the prior art.
- the calculating the observed Doppler shift in step 610 can be performed before the expected Doppler shift is calculated in step 606 .
- the observed Doppler shift is compared with a threshold frequency value based on the expected Doppler shift. More specifically, the threshold frequency value is a fraction of the expected Doppler shift, such as 90% of the expected Doppler shift.
- the threshold value depends on the configuration of the building in which the system is implemented. For example, the threshold depends on the height of each floor, or the material from which ceilings are made.
- step 614 it is determined whether the observed Doppler shift is greater than or less than the threshold frequency value. If the observed Doppler shift is greater than the threshold frequency value, then it is determined that the mobile device 210 and the access point 290 are at the same vertical position in step 616 . In other words, the mobile device 210 and access point 290 are determined to be on the same floor if the expected Doppler shift and observed Doppler shift are significantly similar.
- the mobile device 210 and the access point 290 are at different vertical positions to each other in step 618 . In other words, the mobile device 210 and access point 290 are on the different floors if the expected Doppler shift and observed Doppler shift are not the same, or significantly different.
- the vertical position information is then transmitted to the mobile device 210 or a server for storage or display in step 620 .
- the access point 290 comprises a memory 274 for storing a lookup table.
- the lookup table is read by the processor 271 to convert the vertical position of the mobile device 210 to a floor number.
- e 1 and e 2 may be transmitted to a server through a wired or wireless connection for processing, and here the server calculates the observed Doppler shift ⁇ f. Furthermore, the server may carry out steps 610 to 618 . Moreover, it would also be appreciated that steps 610 to 620 could be carried out on the mobile device 210 when the access point is configured to transmit e 2 to the mobile device 210 .
- FIG. 7 is a system diagram showing one method of calculating the horizontal position of the mobile device 210 . Measuring how the horizontal position changes with time (i.e. between t 1 and t 2 ) provides the horizontal velocity and direction of travel of the mobile device 210 .
- the system requires at least two access points 290 , located at positions A and B.
- the access points 290 are multiple in multiple out (MIMO) access points.
- the mobile device 210 which transmits a signal that can be received by both access points 290 , is positioned at point P.
- the two or more access points 290 measure the direction-of-arrival of an incoming signal from the mobile device 210 to estimate a bearing line to the mobile device 210 from each access point 29 .
- the point where these bearing lines cross is used as an estimation of the mobile device 210 location.
- the horizontal position of the mobile device 210 is triangulated using a plurality of access points 290 .
- the access point 290 is able to determine whether or not the mobile device 210 is on the same floor, or whether it is not on the same floor. Therefore, as shown in FIG. 8 , a plurality of access points 290 a , 290 b can be used to deduce the vertical position of the mobile device 210 .
- the first access point 290 a is disposed on a lower floor, such as a ground floor, with a vertical position 0 in the z direction.
- the mobile device 210 is disposed on the middle floor, with a vertical position h in the z direction.
- the second access point 290 b is disposed on the top floor, with a vertical position 2h in the z direction. There is no access point 290 disposed on the same floor as the mobile device 210 .
- the signal transmitted between the first access point 290 a and the mobile device 210 experiences an observed Doppler shift of ⁇ f 1 due to the movement of the mobile device 210 .
- the signal transmitted between the second access point 290 b and the mobile device 210 experiences an observed Doppler shift of ⁇ f 2 due to the movement of the mobile device 210 .
- the location system 700 comprises a server 702 .
- the server 702 is coupled to a plurality of access points 290 a , 290 b by a wired or wireless connection.
- the server 702 is coupled to the access points 290 a , 290 b by an Ethernet cable or a patch cable.
- the server 702 may be coupled to the access points 290 a , 290 by a wireless network standard such as BluetoothTM, Wi-Fi, Wireless Ethernet, etc.
- the access points transmit horizontal position information, e 1 and e 2 to the server 702 .
- e 1 may be transmitted to the server 702 directly from the mobile device 210 .
- the server 702 then calculates the change in horizontal position of the mobile device 210 using the horizontal position information, and the expected Doppler shift is calculated for the mobile device 210 .
- the server 702 then calculates ⁇ f 1 and ⁇ f 2 for each of the first and second access points 290 a , 290 b and compares the two values with the expected Doppler shift.
- the server 702 can infer the vertical position of the mobile device 210 based on the determination that it is not on the same floor as either of the access points 290 a , 290 b . This is useful in a collaborative network environment, where a plurality of network owners have subscribed to the location system. For example, in a retail complex, two stores may have access points 290 coupled to a server, but a third store may not have an access point 290 .
- the server 702 is in communication with a terminal device 704 , such as a computer monitor or television.
- the server 702 and the terminal device 704 may be electrically coupled by a wired or a wireless connection.
- the server 702 and/or the terminal device 704 may be coupled to a plurality of networks of access points 290 . This is useful for example in a shopping centre having an information kiosk for locating lost children having mobile devices 210 , or for locating a climber from a base camp in an outdoor environment.
- access points 290 Although only two access points 290 are shown coupled to the server 702 in FIG. 8 , it should be noted that it is within the scope of the present specification that one or more than two access points 290 may be coupled to the same server 702 .
- the server 702 receives a signal from a plurality of access points 290 .
- Each signal includes information including vertical position information of the mobile device 210 , calculated according to process B described with reference to FIG. 6 .
- the information in the signal further includes an identifier for identifying the mobile device 210 .
- the information in the signal further includes an identifier for the associated access point 290 .
- the identifiers are, for example, a MAC address, IMEI or telephone number.
- the server 702 may use the identifier of the access point 290 to determine the vertical position of the access point 290 using a lookup table stored in memory. Alternatively, the vertical position of the access point 290 is transmitted in the respective signal.
- the server 702 uses the known vertical position of each access point 290 and the received vertical position information of the mobile device 210 to deduce the vertical position of the mobile device 210 .
- the server 702 may receive three signals, each corresponding to one of three wireless access points. If the information in one of the signals includes vertical position information that indicates that the mobile device is on the same floor as the respective access point, the server 702 stores the vertical position information as a known vertical position. Alternatively, if none of the received signals include information indicating that the mobile device 210 is on the same floor as one of the access points 290 , then the server 702 is able to infer which of the floors that the mobile device 210 is likely to be on.
- the server 702 is able to use the relative differences between the expected Doppler shift and the observed Doppler shifts to predict the vertical position of the mobile device 210 .
- the difference between the observed Doppler shift and expected Doppler shift may be greater at one access point than the other, even though in both cases the value is greater than the threshold for the mobile device 210 and access point 290 being at the same vertical position.
- the server 702 can then determine that the mobile device 210 is closer to one access point 290 than the other, and hence deduce its location using multiple access points 290 .
- step 806 the vertical position of the mobile device 210 is transmitted to the mobile device 210 or an external terminal device 704 for display.
- the server 702 is arranged to store the movement of the mobile device 210 for later analytics processing.
- the server 702 is configured to carry out many of the processing steps shown in FIG. 6 .
- the access points 290 are arranged to transmit the information necessary for the server 702 to calculate observed Doppler shift for each access point 290 , and consequently calculate the vertical position of the mobile device.
- the server 702 receives the horizontal position of a mobile device 210 at a first time t 1 , and the horizontal position of the mobile device at a second time t 2 .
- the horizontal position may be received from the mobile device 210 , from at least one access point 290 , or from an external source.
- the server 702 also receives an identifier for identifying the mobile device.
- the identifier is, for example, a MAC address, IMEI or telephone number.
- step 904 the server 702 calculates the horizontal velocity of the mobile device, and the direction of travel.
- the server 702 receives the difference between the received signal frequency and the carrier frequency from either the mobile device 210 or the at least one access point 290 , and the difference between the transmitted signal frequency and the carrier frequency from the at least one access point 290 .
- step 908 the server 702 calculates the expected Doppler shift and observed Doppler shifts for each of the access points 290 according to the method described with reference to steps 604 , 610 and 612 in FIG. 6 .
- step 910 the server 702 compares the expected Doppler shift with the observed Doppler shift for each access point 290 , to determine whether the mobile device 210 is at the same vertical position as any of the access points 290 .
- the server 702 uses the amplitude of the differences in observed and expected Doppler shift to deduce the vertical position of the mobile device 210 .
- the server 702 is able to determine that the mobile device 210 is closer to the second access point 290 b than the first access point 290 a .
- the server 702 may use a received identifier of each access point 290 to determine the vertical position of the access point 290 using a lookup table stored in memory. Alternatively, each access point 290 may transmit its vertical position to the server 702 .
- the server 702 transmits the deduced mobile device position to the mobile device 210 or a terminal device 704 .
- the server 702 may store the deduced position for later processing.
- steps 902 to 908 can be carried out in an order different to the order shown in FIG. 10 without departing from the scope of the specification.
- the access point 290 is used to determine the horizontal position of the mobile device 210 (i.e. the position of the mobile device 210 on the XY plane). In other embodiments, however, the mobile device 210 is controlled to transmit horizontal position information to the access point 290 or server 702 .
- Embodiments of the present disclosure may be implemented in software, hardware, application logic or a combination of software, hardware and application logic.
- the software, application logic and/or hardware may reside on memory, or any computer media.
- the application logic, software or an instruction set is maintained on any one of various conventional computer-readable media.
- a “computer-readable medium” may be any media or means that can contain, store, communicate, propagate or transport the instructions for use by or in connection with an instruction execution system, apparatus, or device, such as a computer.
- a computer-readable medium may comprise a computer-readable storage medium that may be any tangible media or means that can contain or store the instructions for use by or in connection with an instruction execution system, apparatus, or device, such as a computer as defined previously.
- the computer program according to any of the above aspects may be implemented in a computer program product comprising a tangible computer-readable medium bearing computer program code embodied therein which can be used with the processor for the implementation of the functions described above.
- references to “computer-readable storage medium”, “computer program product”, “tangibly embodied computer program” etc., or a “processor” or “processing circuit” etc. should be understood to encompass not only computers having differing architectures such as single/multi processor architectures and sequencers/parallel architectures, but also specialised circuits such as field programmable gate arrays FPGA, application specify circuits ASIC, signal processing devices and other devices.
- References to computer program, instructions, code etc. should be understood to express software for a programmable processor firmware such as the programmable content of a hardware device as instructions for a processor or configured or configuration settings for a fixed function device, gate array, programmable logic device, etc.
- such “computer-readable storage medium” may mean a non-transitory computer-readable storage medium which may comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage, or other magnetic storage devices, flash memory, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer.
- An exemplary non-transitory computer-readable storage medium 1000 is shown in FIG. 11 , in the form of an optical storage disk such as a CD. Also, any connection is properly termed a “computer-readable medium”.
- Disk and disc include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and Blu-ray disc, where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of “computer-readable medium”.
- processors such as one or more digital signal processors (DSPs), general purpose microprocessors, application specific integrated circuits (ASICs), field programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuitry.
- DSPs digital signal processors
- ASICs application specific integrated circuits
- FPGAs field programmable logic arrays
- processors may refer to any of the foregoing structure or any other structure suitable for implementation of the techniques described herein.
- the functionality described herein may be provided within dedicated hardware and/or software modules. Also, the techniques could be fully implemented in one or more circuits or logic elements.
- the computer readable instructions/program code may be pre-programmed into the processor 211 / 271 .
- the computer readable instructions may arrive at the processor 211 / 271 via an electromagnetic carrier signal or may be copied from a physical entity 1000 such as a computer program product, a memory device or a record medium such as a CD-ROM or DVD an example of which is illustrated in FIG. 11 .
- the computer readable instructions may provide the logic and routines that enables the mobile device 210 , access point 290 and server 702 to perform the functionality described above.
- the combination of computer-readable instructions stored on memory may be referred to as a computer program product.
- references to computer program, instructions, code etc. should be understood to express software for a programmable processor firmware such as the programmable content of a hardware device as instructions for a processor or configured or configuration settings for a fixed function device, gate array, programmable logic device, etc.
- the different steps discussed herein may be performed in a different order and/or concurrently with each other. Furthermore, if desired, one or more of the above-described steps may be optional or may be combined.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
A method of determining a user location comprises: calculating a horizontal velocity and direction of horizontal movement of a mobile device in communication with at least one wireless access point, calculating an observed Doppler shift in a signal transmitted between the mobile device and the at least one wireless access point, calculating an expected Doppler shift in the transmitted signal based on a carrier frequency, the horizontal velocity and direction of horizontal movement, and determining a vertical position of the mobile device based on the expected Doppler shift and the observed Doppler shift. A mobile device, apparatus and positioning system for performing the method are also provided.
Description
- The present specification relates to a method of determining a user location, and a positioning system, wireless access point and mobile device.
- Current methods of indoor positioning include using Bluetooth™ beacons, for example for triangulating a user's location based on bearing calculations. The High Accuracy Indoor Positioning (HAIP) system developed by Nokia is an example of such a system.
- Other methods include using Wi-Fi access control applications. For example, a server can determine a user's location based on the network their mobile device is currently connected to. However, this requires collaboration between all of the network providers in the system.
- Generally, whether indoor or outdoor, it is relatively straightforward to determine a user's location on a horizontal plane. However, it is more difficult to also determine the user's elevation (or vertical position), particularly where GPS signal is poor.
- According to a first aspect of the present specification, there is provided a method of determining a user location, comprising:
-
- calculating a horizontal velocity and direction of horizontal movement of a mobile device in communication with at least one wireless access point;
- calculating an observed Doppler shift in a signal transmitted between the mobile device and the at least one wireless access point;
- calculating an expected Doppler shift in the transmitted signal based on a carrier frequency, the horizontal velocity and direction of horizontal movement; and
- determining a vertical position of the mobile device based on the expected Doppler shift and the observed Doppler shift.
- Advantageously, the method according to the first aspect does not require any features other than a mobile device and an access point, such as a wireless router. In other words, BLE beacons and other sensors are not necessary.
- Calculating the observed Doppler shift may comprise:
-
- measuring the frequency of a signal received by the mobile device from the wireless access point;
- calculating a first difference between the frequency of the signal received by the mobile device and the frequency of a signal transmitted by the mobile device;
- measuring a frequency of a signal transmitted by the at least one wireless access point;
- calculating a second difference between the frequency of the signal transmitted by the at least one wireless access point and the frequency of a signal received by the wireless access point from the mobile device; and
- calculating the observed Doppler shift based on the first difference and the second difference.
- The method may further comprise:
-
- calculating the observed Doppler shift according to the equation:
-
Δf=−(e 1 +e 2)/2, - wherein Δf is the observed Doppler shift, e1 is the first difference, and e2 is the second difference.
- A or the carrier frequency may be one of 2.4 GHz and 5 GHz.
- The method may comprise:
-
- calculating the observed Doppler shift in a plurality of signals transmitted between the mobile device and a plurality of wireless access points, wherein each signal is associated with a corresponding one of the plurality of wireless access points; and
- deducing the position of the mobile device based on the expected Doppler shift and the plurality of observed Doppler shifts.
- The method may comprise:
-
- calculating the observed Doppler shifts at each of the corresponding wireless access points;
- transmitting the Doppler shift observed at the plurality of wireless access points to a server; and
- calculating the vertical position of the mobile device at the server.
- The method may comprise:
-
- calculating the vertical position of the mobile device at the at least one wireless access point; and
- transmitting the calculated vertical position to at least one of a server, mobile device, and display apparatus.
- The method may comprise receiving an identifier of the mobile device, and transmitting the calculated vertical position to the mobile device based on the identifier.
- The method may comprise converting the calculated vertical position of the mobile device to a floor number.
- The method may comprise displaying the vertical position of the mobile device.
- The mobile device may be determined to be at the same vertical position as the at least one wireless access point if the observed Doppler shift is greater than a threshold, and the mobile device may be determined to be at a different vertical position to the wireless access point if the observed Doppler shift is less than a the threshold, wherein the threshold is based on the expected Doppler shift.
- According to a second aspect of the present specification, there is provided a mobile device comprising:
-
- a receiver configured to receive a signal from at least one wireless access point;
- a controller configured to:
- measure the frequency of the received signal; and
- calculate the difference between the frequency of the received signal and the frequency of a signal transmitted by the mobile device; and
- a transmitter configured to transmit the difference to the at least one wireless access point.
- The transmitter may be further configured to transmit an identifier for identifying the mobile device to the at least one wireless access point.
- The receiver may be further configured to receive a vertical position of the mobile device from one of a server and the at least one wireless access point; and the apparatus may further comprise a display for displaying the vertical position.
- According to a third aspect of the present specification, there is provided an apparatus comprising:
-
- a transceiver configured to transmit and receive a wireless signal to and from a mobile device;
- a controller configured to perform the steps of:
- obtaining a horizontal velocity and direction of horizontal movement of a mobile device;
- calculating an observed Doppler shift in a signal transmitted between the mobile device and the apparatus;
- calculating an expected Doppler shift in the transmitted signal based on a carrier frequency, the horizontal velocity and direction of horizontal movement; and
- determining a vertical position of the mobile device based on the expected Doppler shift and the observed Doppler shift.
- The transceiver may comprise a receiver configured to receive a first difference in frequency between a signal received by the mobile device and a signal transmitted by the mobile device; and
-
- the controller may be further configured to:
- measure a frequency of a signal received by the apparatus from the mobile device;
- calculate a second difference between the frequency of the signal received by the apparatus and the frequency of a signal transmitted by the apparatus; and
- calculate the observed Doppler shift based on the difference between the first difference and the second difference.
- the controller may be further configured to:
- The controller may be further configured to:
-
- calculate the observed Doppler shift according to the equation:
-
Δf=−(e 1 +e 2)/2, - wherein Δf is the observed Doppler shift, e1 is the first difference, and e2 is the second difference.
- The controller may be configured to determine the mobile device to be at the same vertical position as the apparatus if the observed Doppler shift is greater than a threshold, and determine the mobile device to be at a different vertical position to the apparatus if the observed Doppler shift is less than a the threshold, wherein the threshold is based on the expected Doppler shift.
- The apparatus may be an IEEE 802.11 compliant access point.
- The apparatus may further comprise a wired or wireless interface for transmitting the vertical position of the mobile device to the mobile device or to a server.
- According to a fourth aspect of the present specification, there is provided a positioning system comprising the mobile device according to the second aspect and one or more apparatuses according to the third aspect, and the system being configured to perform the steps according to the first aspect.
- The positioning system may further comprise a server configured to receive one of an observed Doppler shift from the one or more apparatuses, a difference in frequency between a signal transmitted by a mobile device and a signal received by the mobile device and a difference in frequency between a signal transmitted by an apparatus and a signal received by the apparatus, and a vertical position of the mobile device from the one or more apparatuses, wherein, if the observed Doppler shift is received or if the difference in frequencies are received, the server is configured to calculate the vertical position of the mobile device.
- The positioning system may further comprise a display device for displaying the vertical position of the mobile device.
- According to a fifth aspect of the present invention, there is provided a computer-readable storage medium having computer-readable code stored thereon, the computer-readable code, when executed by at least one processor, causing performance of:
-
- calculating a horizontal velocity and direction of horizontal movement of a mobile device in communication with at least one wireless access point;
- calculating an observed Doppler shift in a signal transmitted between the mobile device and the at least one wireless access point;
- calculating an expected Doppler shift in the transmitted signal based on a carrier frequency, the horizontal velocity and direction of horizontal movement; and
- determining a vertical position of the mobile device based on the expected Doppler shift and the observed Doppler shift.
- The computer-readable storage medium having computer-readable code stored thereon, the computer-readable code, when executed by at least one processor, may cause performance of:
-
- measuring the frequency of a signal received by the mobile device from the wireless access point;
- calculating a first difference between the frequency of the signal received by the mobile device and the frequency of a signal transmitted by the mobile device;
- measuring the frequency of a signal transmitted by the at least one wireless access point;
- calculating a second difference between the frequency of the signal transmitted by the at least one wireless access point and the frequency of a signal received by the wireless access point from the mobile device; and
- calculating the observed Doppler shift based on the first difference and the second difference.
- The computer-readable storage medium according to claim 13 having computer-readable code stored thereon, the computer-readable code, when executed by at least one processor, may cause performance of:
-
- calculating the observed Doppler shift according to the equation:
-
Δf=−(e 1 +e 2)/2, - wherein Δf is the observed Doppler shift, e1 is the first difference, and e2 is the second difference.
- The mobile device may be determined to be at the same vertical position as the at least one wireless access point if the observed Doppler shift is greater than a threshold, and wherein the mobile device may be determined to be at a different vertical position to the wireless access point if the observed Doppler shift is less than the threshold, wherein the threshold is based on the expected Doppler shift.
- According to a sixth aspect of the present invention, there is provided an apparatus comprising:
-
- at least one computer processor; and
- at least one memory having computer-readable instructions stored thereon, the computer-readable instructions when executed by the at least one processor causing the apparatus at least to:
- obtain a horizontal velocity and direction of horizontal movement of a mobile device;
- calculate an observed Doppler shift in a signal transmitted between the mobile device and the apparatus;
- calculate an expected Doppler shift in the transmitted signal based on the horizontal velocity and direction of horizontal movement; and
- determine a vertical position of the mobile device based on the expected Doppler shift and the observed Doppler shift.
- The computer-readable instructions may cause the apparatus at least to:
-
- receive a first difference in frequency between the signal received by the mobile device and a signal transmitted by the mobile device;
- measure a frequency of a signal received by the apparatus from the mobile device;
- calculate a second difference between the frequency of the signal received by the apparatus and the frequency of a signal transmitted by the apparatus; and
- calculate the observed Doppler shift based on the difference between the first difference and the second difference.
- The computer-readable instructions may cause the apparatus at least to:
-
- calculate the observed Doppler shift according to the equation:
-
Δf=−(e 1 +e 2)/2, - wherein Δf is the observed Doppler shift, e1 is the first difference, and e2 is the second difference.
- The computer-readable instructions may cause the apparatus at least to:
-
- determine the mobile device to be at the same vertical position as the apparatus if the observed Doppler shift is greater than a threshold, and determine the mobile device to be at a different vertical position to the apparatus if the observed Doppler shift is less than a the threshold, wherein the threshold is based on the expected Doppler shift.
- The apparatus may be an IEEE 802.11 compliant access point.
- All features described herein (including any accompanying claims, abstract and drawings), and/or all of the steps of any method or process so disclosed, may be combined with any of the above aspects in any combination, except combinations where at least some of such features and/or steps are mutually exclusive.
- Embodiments of the present specification will now be described, by way of example only, with reference to the accompanying drawings, in which:
-
FIG. 1 is a schematic diagram of a positioning system according to embodiments of the present specification; -
FIGS. 2a and 2b are schematic diagrams illustration how the position of a mobile device is determined according to embodiments of the present specification; -
FIG. 3 is a schematic diagram illustrating a building having a positioning system according to embodiments of the present specification; -
FIG. 4 is a graph showing how the position of a mobile device in the vertical plane is determined according to an aspect of the present specification; -
FIG. 5 is a flow chart illustrating operation of a mobile device according to embodiments of the present specification; -
FIG. 6 is a flow chart illustrating operation of an access point according to embodiments of the present specification; -
FIG. 7 is a system diagram of a system for triangulating the position of a mobile device according to embodiments of the present specification; -
FIG. 8 is a schematic diagram illustrating a building having a positioning system according to embodiments of the present specification; -
FIG. 9 is a flow chart illustrating operation of a server according to embodiments of the present specification; -
FIG. 10 is a flow chart illustrating operation of a server according to another embodiment of the present specification; and -
FIG. 11 is a schematic diagram illustrating a storage medium according to an aspect of the present specification. - In the description and drawings, like reference numerals refer to like elements throughout.
- The present invention relates to calculating the vertical position of a
mobile device 210. This is particularly useful in buildings having multiple floors, where it is helpful to keep track of employees or customers. The invention described herein makes use ofwireless access points 290, such as commercial-off-the-shelf Wi-Fi routers, but any wireless standard with a known carrier frequency may be used. The Doppler shift that would be expected if themobile device 210 andaccess point 290 were on the same level (i.e. the same or substantially the same horizontal plane) is calculated using the horizontal velocity of the mobile device. The actual observed Doppler shift is then calculated by comparing transmitted and received signals with the carrier frequency. The vertical position of themobile device 210 is then inferred by comparing the expected Doppler shift with the observed Doppler shift. - In some embodiments, the
mobile device 210 determines its own vertical position. In other embodiments, theaccess points 290 determine the mobile device's 210 vertical position. Finally, a server 702 (shown inFIG. 8 ) coupled to theaccess points 290 may calculate the vertical position of themobile device 210. -
FIG. 1 shows asystem 100 according to embodiments of the present specification. Thesystem 100 includes amobile device 210 and anaccess point 290. Themobile device 210 is portable and its location can be tracked. For example, themobile device 210 is a mobile tag, a mobile phone, a tablet or a laptop. Theaccess point 290 according to some embodiments is a wireless access point, for example a Wi-Fi access point. - The
mobile device 210 includes atransceiver module 212, which operates according to the IEEE 802.11 standard. Themobile device 210 in these embodiments is able to communicate with theaccess point 290 through an IEEE 802.11 standard protocol, such as 802.11b/g/n. Thetransceiver module 212 is capable of receiving and/or transmitting wireless signals with a frequency of 2.4 GHz and/or 5 GHz. In some embodiments, thetransceiver module 212 is also configured to operate according to other communication standards, for example where themobile device 210 is a mobile phone, so that it can communicate with devices other than theaccess point 290. These other communication standards may include BTLE, GSM, EDGE and LTE. - The
mobile device 210 includes aprocessor 211. Theprocessor 211 is connected to volatile memory such asRAM 216 by abus 217. Thebus 217 also connects theprocessor 211 and theRAM 216 to non-volatile memory, such asROM 214. Thetransceiver module 212 is coupled to thebus 217, and thus also to theprocessor 211 and thememories antenna 218 is coupled to thetransceiver module 212. While theantenna 218 is shown as being external to themobile device 210, in some embodiments theantenna 218 is internal to themobile device 210. Within theROM 214 is stored asoftware application 215. The function of thesoftware application 215 will be described with reference toFIGS. 2a, 2b and 3, in which it will be explained how the location of themobile device 210 is determined. - The
mobile device 210 also includes apower source 219. Thepower source 219 may be for instance a battery such as a coin cell. Thepower source 219 powers thetransceiver module 212 and any other components of themobile device 210. Themobile device 210 may optionally include asensor 213 for detecting movement of themobile device 210. Thesensor 213 may take the form of a tilt switch or accelerometer, for instance. - The
mobile device 210 may take any suitable form. Generally speaking, themobile device 210 may comprise processingcircuitry 211, including one or more processors, and astorage device storage device computer program instructions 215 that, when loaded into theprocessing circuitry 211, control the operation of themobile device 210. - The
transceiver module 212 may take any suitable form. Generally speaking, thetransceiver module 212 of themobile device 210 may comprise processing circuitry, including one or more processors, and a storage device comprising a single memory unit or a plurality of memory units. The storage device may store computer program instructions that, when loaded into the processing circuitry, control the operation of thetransceiver module 212. - The
transceiver module 212 includes a communication stack that is implemented at least partly in software using processor and memory resources (not shown), all of which are included within thetransceiver module 212. Thetransceiver module 212 is configured, when enabled by theprocessor 211 runningapplication 215, to transmit information on a signal according to the IEEE 802.11 standard. The information on the signal may include an identifier of themobile device 210. The information on the signal may also include the mobile device's horizontal velocity. Alternatively or additionally, theaccess point 290 or a server is used to determine the mobile device's horizontal velocity. Furthermore, thetransceiver module 212 is also configured to receive signals according to the IEEE 802.11 standard and measure accurately their frequency. This will be discussed in more detail later. - The
transceiver module 212 of themobile device 210 is both a transmitter and a receiver. However, while thetransceiver module 212 is configured to receive a wireless signal according to the IEEE 802.11 standard, it may not be configured to transmit a signal according to the IEEE 802.11 standard. Instead, in these embodiments, thetransceiver module 212 may be configured to transmit a signal according to any suitable communication standard. - The
access point 290 includes aprocessor 271. Theprocessor 271 is connected to volatile memory such asRAM 276 by abus 277. Thebus 277 also connects theprocessor 271 and theRAM 276 to a non-volatile memory, such asROM 274. Asoftware application 275 is stored within theROM 274. Thesoftware application 275 will be described in more detail with reference toFIG. 6 . Theaccess point 290 also has acommunication interface 273 connected to theprocessor 271 via abus 277. - The
communication interface 273 may be configured to allow two-way communication with external devices and/or networks. Thecommunication interface 273 may be configured to communicate wirelessly via one or more of several protocols such as Global System for Mobile Communications (GSM), Code Division Multiple Access (CDMA) and Universal Mobile Telecommunications System (UMTS). Alternatively or additionally, thecommunication interface 273 may be configured for wired communication with a device or network. - In some embodiments, the
communication interface 273 sends information identifying the calculated vertical position of themobile device 210 to a terminal device (704, inFIG. 8 ) for display of the position of themobile device 210 when requested. Alternatively or in addition, thecommunication interface 273 sends information identifying the calculated vertical position of themobile device 210 to themobile device 210 for display. - The
access point 290 has atransceiver 280 connected to anantenna 288. Thetransceiver 280 thus is configured to transmit a Wi-Fi signal to themobile device 210. Thetransceiver 280 may also be configured to receive a signal from themobile device 210. The signal received at theaccess point 290 may be a Wi-Fi signal. In some embodiments, theaccess point 290 then forwards information decoded from the Wi-Fi signal to a server for processing. The information may be forwarded to the server through a wired or wireless interface, such as through thetransceiver 280 or another messaging means. - As Wi-Fi signals are used to calculate the position of the
mobile device 210, the use of a wired network is not essential. However, the use of a wired network may be advantageous in embodiments having a server, as will be described in more detail with reference toFIG. 8 . Further, as the calculation is done within theaccess point 290, the computing burden on theprocessor 211 of themobile device 210 is significantly reduced, thereby extending the battery life of thepower source 219 of themobile device 210. - Wi-Fi signals may be transmitted by the
access point 290 to themobile device 210 periodically, for instance at 4 Hz (250 millisecond intervals) or at intervals defined by some component within thesystem 100. The Wi-Fi signals may alternatively be transmitted on request of some component within thesystem 100. - The mathematical derivation for calculating the vertical position of a
mobile device 210 will now be described with reference to the system shown inFIGS. 2a, 2b and 3. Although these calculations will be described as being carried out at theaccess point 290, in other embodiments, some of the calculations are performed on a server or on themobile device 210. In other words, in embodiments described herein, theaccess point 290 is used to determine the location of amobile device 210. However, the skilled person would readily appreciate that themobile device 210 in other embodiments uses signals received from theaccess point 290 to locate itself with respect to theaccess point 290. -
FIGS. 2a and 2b each represent the same building having two floors, such as a shopping centre. There may be more than two floors in the building. Furthermore, it would be readily appreciated that the system may alternatively be employed in an outdoor environment, such as a mountain. Here, the two floors represent two levels, such as two locations at different altitudes on the mountain. - While only one
access point 290 is shown, in other embodiments there are a plurality of access points 290. For example, to accurately locate themobile device 210, there may be anaccess point 290 disposed on each of the floors. - In the example in
FIG. 2a , themobile device 210 is positioned on the second floor, while theaccess point 290 is positioned on the first floor. Theaccess point 290 is static, while themobile device 210 can move in the horizontal (i.e. XY) plane, and between floors (i.e. in the vertical or Z direction). In the example shown inFIG. 2a , themobile device 210 is moving with a velocity v. - The imaginary line connecting the
mobile device 210 to theaccess point 290, or, in other words, the shortest distance between themobile device 210 and theaccess point 290, makes an angle θ with respect to the direction of travel of themobile device 210. As shown in the example inFIG. 2b , where themobile device 210 is on the same floor as theaccess point 290 the angle θ is 0 degrees. - The
access point 290 transmits a Wi-Fi signal on a carrier frequency fc which is received by themobile device 210. - The formula for Doppler shift of signals transmitted between the
mobile device 210 and theaccess point 290 is then -
- where c is me speed or light.
- The velocity of the
mobile device 210 in the horizontal plane can be calculated by any suitable means. Preferably, theaccess point 290 calculates how the XY coordinates (or polar coordinate, or latitude/longitude) of themobile device 210 change with time. This may be achieved using triangulation of bearings usingmultiple access points 290 or a MIMO access point. Time-of-arrival and direction-of-arrival of signals may also be used to calculate how the horizontal position of themobile device 210 changes with time. Alternatively, themobile device 210 can calculate its own velocity, for example using thesensor 213 or a GPS receiver (not shown). - The Δf observed in the example of
FIG. 2a , where themobile device 210 andaccess point 290 are on the same floor, is significantly smaller than in the example ofFIG. 2b . InFIG. 2b , themobile device 210 andaccess point 290 are on the same floor. When themobile device 210 andaccess point 290 are on the same floor, cos θ is close to or equal to 1, so the Doppler shift can be estimated to be -
- Comparing the expected, or estimated, Doppler shift to the actual observed Doppler shift allows the
access point 290 to determine whether themobile device 210 is on a different floor. - Further details of this mathematical derivation will now be described with reference to
FIG. 3 . Here, it is unknown to theaccess point 290 which of the floors (Floor 1 or Floor 2) themobile device 210 is on, but the mobile device's 210 XY position is known. For example, themobile device 210 is at position (0, 0) on the XY plane. Therefore, themobile device 210 could either be at position A or position B. Themobile device 210 is moving in direction v, and the moving direction v is known to the system. - Meanwhile, there is an
access point 290 onFloor 1 at point C. Point C is at XYZ coordinates (1, 1, 0). The Doppler shift in the same-floor case is then -
- wherein Ø1 is the angle between v and BC. As these are known values, the expected Doppler shift can be calculated.
- However, the actual Doppler shift observed by the
access point 290 depends on the user's floor. For example, if the user is onFloor 2, the angle between v and AC is Ø2>Ø1. Therefore, the observed Doppler shift is -
- The method for calculating the observed Doppler shift, based on signal analytics, will be described later.
- The observed Doppler shift Δf being less than the expected Doppler shift Δf′ does not automatically mean that the
mobile device 210 and theaccess point 290 are on different floors. For example, there may be a discrepancy because of imperfect Doppler shift measurement, inaccuracies in velocity or horizontal position measurement, or because themobile device 210 is being held at a high height by the user. Therefore, in some embodiments a threshold is set as a fraction of the expected Doppler shift and used to determine whether themobile device 210 and theaccess point 290 are on different floors. As the error grows with increased velocity of themobile device 210, the threshold frequency value (i.e. fraction of expected Doppler shift) in some embodiments is a function of velocity in order to compensate for the increasing error. This is shown in more detail inFIG. 4 . -
FIG. 4 shows a graph of expected Doppler shift against probability density, where there is an estimation of errors for velocity and cos φ1. The expected Doppler shift is the Doppler shift calculated based on the horizontal velocity of themobile device 210. In other words, the expected Doppler shift is the Doppler shift that would be expected if themobile device 210 andaccess point 290 are on the same floor. As can be seen fromFIG. 4 , when the expected Doppler shift is high, a relatively lowthreshold frequency value 403 is set for use in determining whether themobile device 210 andaccess point 290 are on the same or different floors. - If the velocity and horizontal position, and the floor height, are accurately known, the expected Doppler shift can be perfectly estimated for the motion on both floors. The bell-shape in
FIG. 4 is an indication that the measurement is an inherently noisy process. There is a symmetry about the Y-axis which indicates that the same magnitude of quantities but with a different sign is observed in the cases of moving towards anaccess point 290 or moving away from anaccess point 290. - The operation of the
mobile device 210 according to some embodiments will now be described with reference toFIG. 5 . Thetransceiver module 212 of themobile device 210 must be switched on. In afirst step 500, themobile device 210 transmits a signal to anaccess point 290. The frequency of this signal as measured at themobile device 210 is designated f1. The frequency of the same signal as measured at themobile device 210 and at theaccess point 290 will naturally be fractionally different, due to imperfect circuitry, attenuation in theantennas mobile device 210. The Doppler shift, which here is the observed or measured Doppler shift, would be the same value as measured at both themobile device 210 and theaccess point 290. - Preferably, the signal transmitted by the
mobile device 210 is a Wi-Fi signal having a carrier frequency of 2.4 GHz or 5 GHz. Current Wi-Fi protocol requires a frequency stability of 25 ppm (802.11b) or less, which means there could be a frequency shift of up to 60 kHz for 2.4 GHz Wi-Fi devices due to imperfect circuits. Meanwhile, adults typically walk at 1.4 m/s or less, which speed induces a 11.2 Hz Doppler frequency shift. - In
step 502, themobile device 210 receives a signal from anaccess point 290. Themobile device 210 may have a “wake up on LAN” feature, whereby receiving a wireless signal turns on themobile device 210 fully. Alternatively, only thetransceiver module 212 and theprocessor 211 may be powered. Themobile device 210 may transmit a request to theaccess point 290 for a signal prior to the signal being received. Alternatively, theaccess point 290 may transmit signals continuously, or at a predetermined period. - At
step 504, themobile device 210 measures the frequency of the received signal. This frequency is designated f2′. A component of the received signal frequency f2′ will be the observed Doppler shift as previously described. As theaccess point 290 is an access point operating according to the IEEE 802.11 standard, it would be expected that the received signal would have a frequency close to the carrier frequency of 2.4 GHz or 5 GHz. In other embodiments, where theaccess point 290 operates according to a different wireless standard, the carrier frequencies will be different to 2.4 GHz and 5 GHz. - At
step 506, themobile device 210 calculates the difference between the frequency of the signal transmitted by themobile device 210, f1, and the frequency of the signal received by themobile device 210, f2′. This difference in frequency, as measured at themobile device 210, is designated e1. - In
step 508, thetransceiver module 212 transmits e1 to theaccess point 290. In other embodiments, thetransceiver module 212 transmits e1 to a server. - The
access point 290 then performs processing to determine the vertical position of themobile device 210. The vertical position can be used to determine vertical position information such as floor information, such as the floor number in a building on which themobile device 210 is positioned. The process, B, carried out by theaccess point 290 will be described later with reference toFIG. 6 . - At
step 510, the vertical position information is received from theaccess point 290 at themobile device 210. Instep 512, the vertical position information is displayed along with the horizontal position (i.e. the mobile device's 210 position on the XY plane). The horizontal position may be calculated by themobile device 210 itself, or received from theaccess point 290. The display of the vertical position information and the horizontal position may take the form of a map. - Embodiments of the present disclosure may be applied to an augmented reality environment. Here the
mobile device 210 may additionally be equipped with a camera which is able to capture images of the area covered by themobile device 210. Themobile device 210 overlays these images with tags based on the vertical and horizontal position information obtained from theaccess point 290 orserver 702. This presents the user with a stream of images as themobile device 210 is held by the user. For example, using the vertical position information, themobile device 210 is able to determine that the user is positioned on the second floor of a building. Themobile device 210 is then able to overlay the names of shops in the user's vicinity, based on the determined horizontal position information, or display a marker indicating a shop selected by the user as their destination. - It would be readily appreciated that
steps mobile device 210 is lost or is trying to find a route to a particular shop, for example. In other embodiments, the vertical position information is transmitted to a server for display at an external display apparatus, or stored in order to perform analytics such as human traffic management. - The process carried out by the
access point 290 will now be described with reference toFIG. 6 . In a first step,step 600, theaccess point 290 transmits a signal to themobile device 210. Preferably, the signal is a Wi-Fi signal having a carrier frequency of 2.4 GHz or 5 GHz. The frequency of the transmitted signal, as measured at theaccess point 290, is designated f2. Next, instep 602, the access point receives e1 in a signal received from themobile device 210. e1 was calculated by themobile device 210 instep 506 described with reference toFIG. 5 . The frequency of the signal containing e1 is then measured, and the frequency of the received signal, as measured at theaccess point 290 is designated f1′. - The
access point 290 suffers from the same problems as themobile device 210, such as imperfect circuits and signal attenuation. One component of f1′, as with f2′, is the observed Doppler shift, which will have the same value in both cases. - Process B, as shown in
FIG. 5 , will now be described with reference to steps carried out by theaccess point 290. - In
step 604, theaccess point 290 calculates the horizontal velocity of themobile device 210. The horizontal velocity includes the direction in which themobile device 210 is moving. The horizontal velocity is calculated based on how the horizontal position (such as XY coordinates, polar coordinates, or latitude and longitude) changes with time. One example of a means to calculate the changing horizontal position will be described with reference toFIG. 7 . Here, triangulation is used. Horizontal velocity may also be calculated by obtaining the horizontal position of themobile device 210 from themobile device 210 itself, and calculating how the horizontal position changes with time. Themobile device 210 may determine its horizontal position using GPS. - Alternatively again, the following techniques could be used to determine the horizontal position of the mobile device 210: coarse localization using the time-of-arrival/time direction-of-arrival of a signal using
multiple access points 290; and 2D accurate static device localization using both time-of-arrival and direction-of-arrival of a signal using oneaccess point 290. Since these coordinates are available at a fine time granularity (for example 250 millisecond), their rate of change, such as velocity and acceleration, can also be obtained. - The expected Doppler shift of the
mobile device 210 is then calculated instep 606 based on the horizontal velocity and the carrier frequency. The expected Doppler shift is calculated using the equation -
- To account for inaccuracies in the measurement, a tolerance is added to the measurement in some embodiments.
- In
step 608, theaccess point 290 calculates the difference in frequency between the signal transmitted by theaccess point 290 and the signal received by theaccess point 290 from themobile device 210, as measured at theaccess point 290. In other words, the access point calculates e2=f1′−f2. - At
step 610, the observed Doppler shift is calculated at theaccess point 290. As the Δf component of e1 and e2 is the same in both, Δf can then be calculated according to the equation -
- This is the observed Doppler shift, as measured at the
access point 290. - It would be readily appreciated by the skilled person that the order of
steps 600 to 610 can be reversed while still providing the same advantages over the prior art. Particularly, the calculating the observed Doppler shift instep 610 can be performed before the expected Doppler shift is calculated instep 606. - At
step 612, the observed Doppler shift is compared with a threshold frequency value based on the expected Doppler shift. More specifically, the threshold frequency value is a fraction of the expected Doppler shift, such as 90% of the expected Doppler shift. The threshold value depends on the configuration of the building in which the system is implemented. For example, the threshold depends on the height of each floor, or the material from which ceilings are made. - At
step 614, it is determined whether the observed Doppler shift is greater than or less than the threshold frequency value. If the observed Doppler shift is greater than the threshold frequency value, then it is determined that themobile device 210 and theaccess point 290 are at the same vertical position instep 616. In other words, themobile device 210 andaccess point 290 are determined to be on the same floor if the expected Doppler shift and observed Doppler shift are significantly similar. - If the observed Doppler shift is less than the threshold frequency value, then it is determined that the
mobile device 210 and theaccess point 290 are at different vertical positions to each other instep 618. In other words, themobile device 210 andaccess point 290 are on the different floors if the expected Doppler shift and observed Doppler shift are not the same, or significantly different. - The vertical position information, such as a predicted floor number or a range of elevation, is then transmitted to the
mobile device 210 or a server for storage or display instep 620. In some embodiments, theaccess point 290 comprises amemory 274 for storing a lookup table. The lookup table is read by theprocessor 271 to convert the vertical position of themobile device 210 to a floor number. - It would be readily appreciated that in alternative embodiments e1 and e2 may be transmitted to a server through a wired or wireless connection for processing, and here the server calculates the observed Doppler shift Δf. Furthermore, the server may carry out
steps 610 to 618. Moreover, it would also be appreciated thatsteps 610 to 620 could be carried out on themobile device 210 when the access point is configured to transmit e2 to themobile device 210. -
FIG. 7 is a system diagram showing one method of calculating the horizontal position of themobile device 210. Measuring how the horizontal position changes with time (i.e. between t1 and t2) provides the horizontal velocity and direction of travel of themobile device 210. - The system requires at least two
access points 290, located at positions A and B. Here, theaccess points 290 are multiple in multiple out (MIMO) access points. Themobile device 210, which transmits a signal that can be received by bothaccess points 290, is positioned at point P. - The two or
more access points 290 measure the direction-of-arrival of an incoming signal from themobile device 210 to estimate a bearing line to themobile device 210 from each access point 29. The point where these bearing lines cross is used as an estimation of themobile device 210 location. In other words, the horizontal position of themobile device 210 is triangulated using a plurality of access points 290. - Where there are more than two floors in a building, it is difficult to determine the exact floor the user is on when there is only one
access point 290. Theaccess point 290 is able to determine whether or not themobile device 210 is on the same floor, or whether it is not on the same floor. Therefore, as shown inFIG. 8 , a plurality ofaccess points mobile device 210. - In the example shown in
FIG. 8 , thefirst access point 290 a is disposed on a lower floor, such as a ground floor, with avertical position 0 in the z direction. Themobile device 210 is disposed on the middle floor, with a vertical position h in the z direction. Thesecond access point 290 b is disposed on the top floor, with avertical position 2h in the z direction. There is noaccess point 290 disposed on the same floor as themobile device 210. - The signal transmitted between the
first access point 290 a and themobile device 210 experiences an observed Doppler shift of Δf1 due to the movement of themobile device 210. The signal transmitted between thesecond access point 290 b and themobile device 210 experiences an observed Doppler shift of Δf2 due to the movement of themobile device 210. - In the example shown in
FIG. 8 , thelocation system 700 comprises aserver 702. Theserver 702 is coupled to a plurality ofaccess points server 702 is coupled to theaccess points server 702 may be coupled to theaccess points - Here, the access points transmit horizontal position information, e1 and e2 to the
server 702. In some embodiments, e1 may be transmitted to theserver 702 directly from themobile device 210. Theserver 702 then calculates the change in horizontal position of themobile device 210 using the horizontal position information, and the expected Doppler shift is calculated for themobile device 210. Theserver 702 then calculates Δf1 and Δf2 for each of the first andsecond access points access points server 702 can infer the vertical position of themobile device 210 based on the determination that it is not on the same floor as either of theaccess points access points 290 coupled to a server, but a third store may not have anaccess point 290. - Also in the embodiment shown in
FIG. 8 , theserver 702 is in communication with aterminal device 704, such as a computer monitor or television. Theserver 702 and theterminal device 704 may be electrically coupled by a wired or a wireless connection. Theserver 702 and/or theterminal device 704 may be coupled to a plurality of networks of access points 290. This is useful for example in a shopping centre having an information kiosk for locating lost children havingmobile devices 210, or for locating a climber from a base camp in an outdoor environment. - Although only two
access points 290 are shown coupled to theserver 702 inFIG. 8 , it should be noted that it is within the scope of the present specification that one or more than twoaccess points 290 may be coupled to thesame server 702. - Processes carried out by the
server 702 according to aspects of the present specification will now be described with reference toFIGS. 9 and 10 . InFIG. 9 , most of the calculation steps are carried out by the access points 290. Instep 802, theserver 702 receives a signal from a plurality of access points 290. Each signal includes information including vertical position information of themobile device 210, calculated according to process B described with reference toFIG. 6 . The information in the signal further includes an identifier for identifying themobile device 210. The information in the signal further includes an identifier for the associatedaccess point 290. The identifiers are, for example, a MAC address, IMEI or telephone number. Theserver 702 may use the identifier of theaccess point 290 to determine the vertical position of theaccess point 290 using a lookup table stored in memory. Alternatively, the vertical position of theaccess point 290 is transmitted in the respective signal. - In
step 804, theserver 702 uses the known vertical position of eachaccess point 290 and the received vertical position information of themobile device 210 to deduce the vertical position of themobile device 210. For example, theserver 702 may receive three signals, each corresponding to one of three wireless access points. If the information in one of the signals includes vertical position information that indicates that the mobile device is on the same floor as the respective access point, theserver 702 stores the vertical position information as a known vertical position. Alternatively, if none of the received signals include information indicating that themobile device 210 is on the same floor as one of theaccess points 290, then theserver 702 is able to infer which of the floors that themobile device 210 is likely to be on. - In some embodiments, the
server 702 is able to use the relative differences between the expected Doppler shift and the observed Doppler shifts to predict the vertical position of themobile device 210. For example, the difference between the observed Doppler shift and expected Doppler shift may be greater at one access point than the other, even though in both cases the value is greater than the threshold for themobile device 210 andaccess point 290 being at the same vertical position. Theserver 702 can then determine that themobile device 210 is closer to oneaccess point 290 than the other, and hence deduce its location using multiple access points 290. - In
step 806, the vertical position of themobile device 210 is transmitted to themobile device 210 or an externalterminal device 704 for display. Alternatively, theserver 702 is arranged to store the movement of themobile device 210 for later analytics processing. - In
FIG. 10 , theserver 702 is configured to carry out many of the processing steps shown inFIG. 6 . In other words, theaccess points 290 are arranged to transmit the information necessary for theserver 702 to calculate observed Doppler shift for eachaccess point 290, and consequently calculate the vertical position of the mobile device. - In
step 902, theserver 702 receives the horizontal position of amobile device 210 at a first time t1, and the horizontal position of the mobile device at a second time t2. The horizontal position may be received from themobile device 210, from at least oneaccess point 290, or from an external source. Theserver 702 also receives an identifier for identifying the mobile device. The identifier is, for example, a MAC address, IMEI or telephone number. - In
step 904, theserver 702 calculates the horizontal velocity of the mobile device, and the direction of travel. - In
step 906, theserver 702 receives the difference between the received signal frequency and the carrier frequency from either themobile device 210 or the at least oneaccess point 290, and the difference between the transmitted signal frequency and the carrier frequency from the at least oneaccess point 290. - In
step 908, theserver 702 calculates the expected Doppler shift and observed Doppler shifts for each of theaccess points 290 according to the method described with reference tosteps FIG. 6 . - In
step 910, theserver 702 compares the expected Doppler shift with the observed Doppler shift for eachaccess point 290, to determine whether themobile device 210 is at the same vertical position as any of the access points 290. Theserver 702 uses the amplitude of the differences in observed and expected Doppler shift to deduce the vertical position of themobile device 210. - In other words, if the difference between the expected Doppler shift and the observed Doppler shift for a
first access point 290 a is greater than the difference between the expected Doppler shift and the observed Doppler shift for asecond access point 290 b, theserver 702 is able to determine that themobile device 210 is closer to thesecond access point 290 b than thefirst access point 290 a. Theserver 702 may use a received identifier of eachaccess point 290 to determine the vertical position of theaccess point 290 using a lookup table stored in memory. Alternatively, eachaccess point 290 may transmit its vertical position to theserver 702. - In
step 912, theserver 702 transmits the deduced mobile device position to themobile device 210 or aterminal device 704. Alternatively, theserver 702 may store the deduced position for later processing. - It would be readily understood that
steps 902 to 908 can be carried out in an order different to the order shown inFIG. 10 without departing from the scope of the specification. - In embodiments described herein, the
access point 290 is used to determine the horizontal position of the mobile device 210 (i.e. the position of themobile device 210 on the XY plane). In other embodiments, however, themobile device 210 is controlled to transmit horizontal position information to theaccess point 290 orserver 702. - While embodiments described herein describe the invention being implemented using Wi-Fi, it would be readily appreciated by the skilled person that the invention could be implemented using any RF band with a time division duplex profile. In other words, where the uplink and downlink (i.e. mobile device and access point) communicate via the same frequency band, the observed Doppler shift can be calculated.
- Embodiments of the present disclosure may be implemented in software, hardware, application logic or a combination of software, hardware and application logic. The software, application logic and/or hardware may reside on memory, or any computer media. In an example embodiment, the application logic, software or an instruction set is maintained on any one of various conventional computer-readable media. In the context of this document, a “computer-readable medium” may be any media or means that can contain, store, communicate, propagate or transport the instructions for use by or in connection with an instruction execution system, apparatus, or device, such as a computer.
- A computer-readable medium may comprise a computer-readable storage medium that may be any tangible media or means that can contain or store the instructions for use by or in connection with an instruction execution system, apparatus, or device, such as a computer as defined previously.
- According to various embodiments of the previous aspect of the present disclosure, the computer program according to any of the above aspects, may be implemented in a computer program product comprising a tangible computer-readable medium bearing computer program code embodied therein which can be used with the processor for the implementation of the functions described above.
- Reference to “computer-readable storage medium”, “computer program product”, “tangibly embodied computer program” etc., or a “processor” or “processing circuit” etc. should be understood to encompass not only computers having differing architectures such as single/multi processor architectures and sequencers/parallel architectures, but also specialised circuits such as field programmable gate arrays FPGA, application specify circuits ASIC, signal processing devices and other devices. References to computer program, instructions, code etc. should be understood to express software for a programmable processor firmware such as the programmable content of a hardware device as instructions for a processor or configured or configuration settings for a fixed function device, gate array, programmable logic device, etc.
- By way of example, and not limitation, such “computer-readable storage medium” may mean a non-transitory computer-readable storage medium which may comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage, or other magnetic storage devices, flash memory, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer. An exemplary non-transitory computer-
readable storage medium 1000 is shown inFIG. 11 , in the form of an optical storage disk such as a CD. Also, any connection is properly termed a “computer-readable medium”. For example, if instructions are transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. It should be understood, however, that “computer-readable storage medium” and data storage media do not include connections, carrier waves, signals, or other transient media, but are instead directed to non-transient, tangible storage media. Disk and disc, as used herein, include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and Blu-ray disc, where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of “computer-readable medium”. - Instructions may be executed by one or more processors, such as one or more digital signal processors (DSPs), general purpose microprocessors, application specific integrated circuits (ASICs), field programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuitry. Accordingly, the term “processor,” as used herein may refer to any of the foregoing structure or any other structure suitable for implementation of the techniques described herein. In addition, in some aspects, the functionality described herein may be provided within dedicated hardware and/or software modules. Also, the techniques could be fully implemented in one or more circuits or logic elements.
- The computer readable instructions/program code may be pre-programmed into the
processor 211/271. Alternatively, the computer readable instructions may arrive at theprocessor 211/271 via an electromagnetic carrier signal or may be copied from aphysical entity 1000 such as a computer program product, a memory device or a record medium such as a CD-ROM or DVD an example of which is illustrated inFIG. 11 . The computer readable instructions may provide the logic and routines that enables themobile device 210,access point 290 andserver 702 to perform the functionality described above. The combination of computer-readable instructions stored on memory (of any of the types described above) may be referred to as a computer program product. In general, references to computer program, instructions, code etc. should be understood to express software for a programmable processor firmware such as the programmable content of a hardware device as instructions for a processor or configured or configuration settings for a fixed function device, gate array, programmable logic device, etc. - If desired, the different steps discussed herein may be performed in a different order and/or concurrently with each other. Furthermore, if desired, one or more of the above-described steps may be optional or may be combined.
- Although various aspects of the present disclosure are set out in the independent claims, other aspects of the present disclosure comprise other combinations of features from the described embodiments and/or the dependent claims with the features of the independent claims, and not solely the combinations explicitly set out in the claims.
Claims (20)
1. A method comprising:
calculating a horizontal velocity and direction of horizontal movement of a mobile device in communication with at least one wireless access point;
calculating an observed Doppler shift in a signal transmitted between the mobile device and the at least one wireless access point;
calculating an expected Doppler shift in the transmitted signal based on a carrier frequency, the horizontal velocity and direction of horizontal movement; and
determining a vertical position of the mobile device based on the expected Doppler shift and the observed Doppler shift.
2. The method according to claim 1 , wherein calculating the observed Doppler shift comprises:
measuring the frequency of a signal received by the mobile device from the wireless access point;
calculating a first difference between the frequency of the signal received by the mobile device and the frequency of a signal transmitted by the mobile device;
measuring the frequency of a signal transmitted by the at least one wireless access point;
calculating a second difference between the frequency of the signal transmitted by the at least one wireless access point and the frequency of a signal received by the wireless access point from the mobile device; and
calculating the observed Doppler shift based on the first difference and the second difference.
3. The method according to claim 2 , further comprising:
calculating the observed Doppler shift according to the equation:
Δf=−(e 1 +e 2)/2,
Δf=−(e 1 +e 2)/2,
wherein Δf is the observed Doppler shift, e1 is the first difference, and e2 is the second difference.
4. The method according to claim 1 , wherein a or the carrier frequency is one of 2.4 GHz and 5 GHz.
5. The method according to claim 1 , comprising:
calculating the observed Doppler shift in a plurality of signals transmitted between the mobile device and a plurality of wireless access points, wherein each signal is associated with a corresponding one of the plurality of wireless access points; and
deducing the position of the mobile device based on the expected Doppler shift and the plurality of observed Doppler shifts.
6. The method according to claim 5 , comprising:
calculating the observed Doppler shifts at each of the corresponding wireless access points;
transmitting the Doppler shift observed at the plurality of wireless access points to a server; and
calculating the vertical position of the mobile device at the server.
7. The method according to any one of claim 1 , comprising:
calculating the vertical position of the mobile device at the at least one wireless access point; and
transmitting the calculated vertical position to at least one of a server, mobile device, and display apparatus.
8. The method according to claim 7 , comprising receiving an identifier of the mobile device, and transmitting the calculated vertical position to the mobile device based on the identifier.
9. The method according to claim 1 , comprising converting the calculated vertical position of the mobile device to a floor number.
10. The method according to claim 1 , comprising displaying the vertical position of the mobile device.
11. The method according to claim 1 , wherein the mobile device is determined to be at the same vertical position as the at least one wireless access point if the observed Doppler shift is greater than a threshold, and wherein the mobile device is determined to be at a different vertical position to the wireless access point if the observed Doppler shift is less than the threshold,
wherein the threshold is based on the expected Doppler shift.
12. A computer-readable storage medium having computer-readable code stored thereon, the computer-readable code, when executed by at least one processor, causing performance of:
calculating a horizontal velocity and direction of horizontal movement of a mobile device in communication with at least one wireless access point;
calculating an observed Doppler shift in a signal transmitted between the mobile device and the at least one wireless access point;
calculating an expected Doppler shift in the transmitted signal based on a carrier frequency, the horizontal velocity and direction of horizontal movement; and
determining a vertical position of the mobile device based on the expected Doppler shift and the observed Doppler shift.
13. The computer-readable storage medium according to claim 12 having computer-readable code stored thereon, the computer-readable code, when executed by at least one processor, causing performance of:
measuring the frequency of a signal received by the mobile device from the wireless access point;
calculating a first difference between the frequency of the signal received by the mobile device and the frequency of a signal transmitted by the mobile device;
measuring the frequency of a signal transmitted by the at least one wireless access point;
calculating a second difference between the frequency of the signal transmitted by the at least one wireless access point and the frequency of a signal received by the wireless access point from the mobile device; and
calculating the observed Doppler shift based on the first difference and the second difference.
14. The computer-readable storage medium according to claim 13 having computer-readable code stored thereon, the computer-readable code, when executed by at least one processor, causing performance of:
calculating the observed Doppler shift according to the equation:
Δf=−(e 1 +e 2)/2,
Δf=−(e 1 +e 2)/2,
wherein Δf is the observed Doppler shift, e1 is the first difference, and e2 is the second difference.
15. The computer-readable storage medium according to claim 12 , wherein the mobile device is determined to be at the same vertical position as the at least one wireless access point if the observed Doppler shift is greater than a threshold, and wherein the mobile device is determined to be at a different vertical position to the wireless access point if the observed Doppler shift is less than the threshold,
wherein the threshold is based on the expected Doppler shift.
16. An apparatus comprising:
at least one computer processor; and
at least one memory having computer-readable instructions stored thereon, the computer-readable instructions when executed by the at least one processor causing the apparatus at least to:
obtain a horizontal velocity and direction of horizontal movement of a mobile device;
calculate an observed Doppler shift in a signal transmitted between the mobile device and the apparatus;
calculate an expected Doppler shift in the transmitted signal based on the horizontal velocity and direction of horizontal movement; and
determine a vertical position of the mobile device based on the expected Doppler shift and the observed Doppler shift.
17. The apparatus according to claim 16 , the computer-readable instructions causing the apparatus at least to:
receive a first difference in frequency between the signal received by the mobile device and a signal transmitted by the mobile device;
measure a frequency of a signal received by the apparatus from the mobile device;
calculate a second difference between the frequency of the signal received by the apparatus and the frequency of a signal transmitted by the apparatus; and
calculate the observed Doppler shift based on the difference between the first difference and the second difference.
18. The apparatus according to claim 17 , the computer-readable instructions causing the apparatus at least to:
calculate the observed Doppler shift according to the equation:
Δf=−(e 1 +e 2)/2,
Δf=−(e 1 +e 2)/2,
wherein Δf is the observed Doppler shift, e1 is the first difference, and e2 is the second difference.
19. The apparatus according to claim 16 , the computer-readable instructions causing the apparatus at least to:
determine the mobile device to be at the same vertical position as the apparatus if the observed Doppler shift is greater than a threshold, and determine the mobile device to be at a different vertical position to the apparatus if the observed Doppler shift is less than a the threshold, wherein the threshold is based on the expected Doppler shift.
20. The apparatus according to claim 16 , wherein the apparatus is an IEEE 802.11 compliant access point.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/279,485 US20180088205A1 (en) | 2016-09-29 | 2016-09-29 | Positioning |
PCT/FI2017/050618 WO2018060545A1 (en) | 2016-09-29 | 2017-09-04 | Positioning |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/279,485 US20180088205A1 (en) | 2016-09-29 | 2016-09-29 | Positioning |
Publications (1)
Publication Number | Publication Date |
---|---|
US20180088205A1 true US20180088205A1 (en) | 2018-03-29 |
Family
ID=59895326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/279,485 Abandoned US20180088205A1 (en) | 2016-09-29 | 2016-09-29 | Positioning |
Country Status (2)
Country | Link |
---|---|
US (1) | US20180088205A1 (en) |
WO (1) | WO2018060545A1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021215974A1 (en) * | 2020-04-21 | 2021-10-28 | Telefonaktiebolaget Lm Ericsson (Publ) | User equipment two-dimensional state estimation |
US20210345240A1 (en) * | 2020-04-30 | 2021-11-04 | Arris Enterprises Llc | Wi-fi power reduction system, method and media |
US11250846B2 (en) * | 2018-12-20 | 2022-02-15 | Arris Enterprises Llc | Voice enabled searching for wireless devices associated with a wireless network and voice enabled configuration thereof |
WO2023107087A1 (en) * | 2021-12-06 | 2023-06-15 | Nokia Technologies Oy | Vertical positioning error reduction useful to systems such as iiot |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060111840A1 (en) * | 2002-07-30 | 2006-05-25 | Global Locate, Inc. | Method and apparatus for computing position using instantaneous doppler measurements from satellites |
US20080064446A1 (en) * | 2006-08-30 | 2008-03-13 | Camp William O | Method for safe operation of mobile phone in a car environment |
US20110018687A1 (en) * | 2007-11-13 | 2011-01-27 | Universitetet I Oslo | Ultrasound zone location system with high capacity |
US20120086606A1 (en) * | 2010-10-08 | 2012-04-12 | Mathews Michael B | Doppler aided inertial navigation |
US20130293414A1 (en) * | 2012-05-03 | 2013-11-07 | Raytheon Company | Global Positioning System (GPS) and Doppler Augmentation (GDAUG) and Space Location Inertial Navigation Geopositioning System (SPACELINGS) |
US20160234645A1 (en) * | 2015-02-06 | 2016-08-11 | Apple Inc. | Method and apparatus for indoor location determination with wlan/wpan/sensor support |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001264409A (en) * | 2000-03-21 | 2001-09-26 | Clarion Co Ltd | Multipass judgement method for car navigation device |
US9026151B2 (en) * | 2013-09-30 | 2015-05-05 | Qualcomm Incorporated | Base station positioning using Doppler observables, position, and velocity |
WO2015188847A1 (en) * | 2014-06-10 | 2015-12-17 | Here Global B.V. | Supporting indoor positioning |
-
2016
- 2016-09-29 US US15/279,485 patent/US20180088205A1/en not_active Abandoned
-
2017
- 2017-09-04 WO PCT/FI2017/050618 patent/WO2018060545A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060111840A1 (en) * | 2002-07-30 | 2006-05-25 | Global Locate, Inc. | Method and apparatus for computing position using instantaneous doppler measurements from satellites |
US20080064446A1 (en) * | 2006-08-30 | 2008-03-13 | Camp William O | Method for safe operation of mobile phone in a car environment |
US20110018687A1 (en) * | 2007-11-13 | 2011-01-27 | Universitetet I Oslo | Ultrasound zone location system with high capacity |
US20120086606A1 (en) * | 2010-10-08 | 2012-04-12 | Mathews Michael B | Doppler aided inertial navigation |
US20130293414A1 (en) * | 2012-05-03 | 2013-11-07 | Raytheon Company | Global Positioning System (GPS) and Doppler Augmentation (GDAUG) and Space Location Inertial Navigation Geopositioning System (SPACELINGS) |
US20160234645A1 (en) * | 2015-02-06 | 2016-08-11 | Apple Inc. | Method and apparatus for indoor location determination with wlan/wpan/sensor support |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11250846B2 (en) * | 2018-12-20 | 2022-02-15 | Arris Enterprises Llc | Voice enabled searching for wireless devices associated with a wireless network and voice enabled configuration thereof |
WO2021215974A1 (en) * | 2020-04-21 | 2021-10-28 | Telefonaktiebolaget Lm Ericsson (Publ) | User equipment two-dimensional state estimation |
US20210345240A1 (en) * | 2020-04-30 | 2021-11-04 | Arris Enterprises Llc | Wi-fi power reduction system, method and media |
US11617132B2 (en) * | 2020-04-30 | 2023-03-28 | Arris Enterprises Llc | Wi-Fi power reduction system, method and media |
WO2023107087A1 (en) * | 2021-12-06 | 2023-06-15 | Nokia Technologies Oy | Vertical positioning error reduction useful to systems such as iiot |
Also Published As
Publication number | Publication date |
---|---|
WO2018060545A1 (en) | 2018-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9560622B2 (en) | Indoor positioning in the presence of dynamic transmission power control access points | |
US10192416B2 (en) | Indoor positioning and tracking using a multi-band wireless networking system | |
Maghdid et al. | Seamless outdoors-indoors localization solutions on smartphones: Implementation and challenges | |
US9494432B2 (en) | Collaborative navigation techniques for mobile devices | |
US9817112B2 (en) | Pairwise measurements for improved position determination | |
US9229092B2 (en) | Adaptive passive scanning and/or active probing techniques for mobile device positioning | |
JP5173035B2 (en) | Wireless-based positioning adjustment using motion sensor | |
US8121621B2 (en) | Position estimation system | |
JP5249991B2 (en) | Positioning apparatus and method | |
US9949079B2 (en) | Method of and system for estimating position | |
US11722842B2 (en) | Telecommunications apparatus and methods | |
US9526082B2 (en) | Method and apparatus for estimating location of pedestrian using step length estimation model parameters | |
US8812023B2 (en) | Outdoor position estimation of a mobile device within a vicinity of one or more indoor environments | |
KR20150018827A (en) | Method and apparatus for determining locations of access points | |
US20110270519A1 (en) | Apparatus and Method for Estimating Relative Location | |
US10779125B2 (en) | Method and apparatus for handling positioning of a target device | |
US20180088205A1 (en) | Positioning | |
US9210543B2 (en) | Apparatus for determining indoor location and method for determining indoor location in multi-story building using the same | |
US20160066156A1 (en) | Selection of Location-Determination Information | |
KR101677205B1 (en) | system and method for positioning mobile terminal using GPS AND BASE STATION INFORMATION | |
Ruotsalainen et al. | The Present and Future of Indoor Navigation | |
KR102332561B1 (en) | Method for reconizing ble based a position using rssi compensation and appartus for supporting the same | |
US11566893B2 (en) | Systems and methods for generating vertical positioning information for unmanned aerial vehicles | |
KR20120064151A (en) | Method of displaying terminal location based on position determination technology | |
US20240114481A1 (en) | Method for determining positioning integrity based on speed of location estimation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: NOKIA TECHNOLOGIES OY, FINLAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SHAMAIN, DURGAPRASAD;LI, WUYUAN;REEL/FRAME:040805/0918 Effective date: 20160930 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |