WO2014146255A1 - Building floor determination for a location based service - Google Patents

Building floor determination for a location based service Download PDF

Info

Publication number
WO2014146255A1
WO2014146255A1 PCT/CN2013/072885 CN2013072885W WO2014146255A1 WO 2014146255 A1 WO2014146255 A1 WO 2014146255A1 CN 2013072885 W CN2013072885 W CN 2013072885W WO 2014146255 A1 WO2014146255 A1 WO 2014146255A1
Authority
WO
WIPO (PCT)
Prior art keywords
floor
confidence level
candidate
processor
transmitters
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.)
Ceased
Application number
PCT/CN2013/072885
Other languages
French (fr)
Inventor
Xiaoyong Jacky PAN
Justin Lipman
Robert A. COLBY
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Priority to US13/997,572 priority Critical patent/US9485626B2/en
Priority to PCT/CN2013/072885 priority patent/WO2014146255A1/en
Priority to KR1020157022313A priority patent/KR101691905B1/en
Priority to EP13879133.0A priority patent/EP2976900B1/en
Priority to CN201380073330.7A priority patent/CN104995930B/en
Publication of WO2014146255A1 publication Critical patent/WO2014146255A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/021Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/33Services specially adapted for particular environments, situations or purposes for indoor environments, e.g. buildings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management

Definitions

  • a location based service provides a service based on location.
  • the LBS may include a server-based LBS application hosted on an Internet server that is paired with a client-based LBS application hosted on an Internet Protocol (IP)-capable client device (CD), which may be stationary or mobile.
  • IP Internet Protocol
  • the paired LBS applications may communicate with each other over the Internet.
  • the LBS acquires a current location of the CD, and then provides an appropriate service to a consumer of the LBS, e.g., a user of the CD, based on the current location.
  • the LBS may cause the CD to display a geographical map indicating the current location, and provide audible directions that direct the user to a point-of-interest, such as a store or a restaurant in a shopping mall, etc.
  • Trilateration is a technique for determining a relative or an absolute location of the CD. Trilateration relies on signals that are transmitted to the CD from transmitters associated with reference points (RPs), e.g. Wi-Fi access points (APs) and beacons, having known locations. Trilateration may be used to calculate a location of the CD in a planar direction, i.e., a plane geometric location of the CD, such as its relative x, y or absolute latitude, longitude coordinates. When the CD is in a multi-story building that hosts multiple RPs dispersed across different floors of the building, the CD typically receives RP signals that originate from the different floors, including the floor on which the CD is located. Simple trilateration is insufficient to locate the CD reliably in both a planar direction and a vertical direction, e.g., to an altitude or a floor of the building.
  • RPs reference points
  • APs Wi-Fi access points
  • beacons having known locations. Trilateration may be used to calculate a location
  • FIG. 1 is a block diagram of an example location based service (LBS) environment.
  • LBS location based service
  • FIG. 2 is a simplified, perspective, example interior view of a multi-story building in the environment of FIG. 1.
  • FIG. 3 is a flowchart of an example method of determining a current floor on which a client device is located in a multi-story building.
  • FIG. 4 is a flowchart of an example method expanding on decreasing a floor confidence level in the method of FIG. 3.
  • FIG. 5 is a flowchart of a summary method of determining a floor of a multiple floor building on which a device is located, according to an embodiment.
  • FIG. 6 is a flowchart of an example method expanding on decreasing a confidence level in the method of FIG. 5.
  • FIG. 7 A is a flowchart of an example method expanding on selecting a candidate floor in the method of FIG. 5, according to a first method of selecting.
  • FIG. 7B is a flowchart of an example method expanding on selecting a candidate floor in the method of FIG. 5, according to a second method of selecting.
  • FIG. 8 is a block diagram of an example computer system.
  • FIG. 9 is a block diagram of an example system.
  • FIG. 1 is a block diagram of an example environment 100 to provide a location based service (LBS).
  • Environment 100 includes a multi-story (i.e., multi- floor) building or edifice 102; a building communication network 104 located in and/or around the building; and a client device 106, located in the building and configured to communicate with the building communication network.
  • Environment 100 also includes: one or more servers 108 each to host server-side LBS applications and related databases that support the LBS; and a communication network 110, such as the Internet, through which the servers, building communication network 106, and client device 106 may communicate.
  • a communication network 110 such as the Internet
  • Client device 106 may host a client-side LBS application 112 to communicate with peer LBS applications on servers 108, and provide the LBS to a user of the client device.
  • LBS application 112 may request and use location information related to client device 102, such as a location of the client device in the building, and a floor on which the client device is located.
  • client device 106 is configured to receive signals from building communication network 104 and process the received signals in accordance with embodiments described herein.
  • FIG. 2 is a simplified, perspective, example interior view of multi-story building 102.
  • Building 102 includes multiple vertically-spaced floors Fl, F2, and F3 having respective floor entries/exits El, E2, and E3 (also referred to as floor access ways) each opening into a vertically extending stairwell and/or elevator shaft 204 that provides access/service to/from all of the floors.
  • Building communication network 104 (depicted in FIG. 1 only as a single block) includes multiple sets of spaced-apart reference points (RPs) RPl, RP2, and RP3 located at known locations on each of floors Fl, F2, and F3, respectively. Note that “RPl” generally indicates multiple RPs on the first floor, “RP2” generally indicates multiple RPs on the second floor, and so on.
  • the RPs RP1 -RP3 may include, without limitation, Wi-Fi access points (APs) and beacons.
  • each of RPs RP1-RP3 typically includes a transmitter -receiver (transceiver) pair to transmit and receive (i.e., transceive) wireless and/or wired communication signals S, such as radio -frequency (RF) signals.
  • RPs among RP1- RP3 configured as beacons may include only a transmitter to transmit signals. All of the RPs depicted in FIG. 2 may transmit communication signals to client device 106, however, only three communication signals (S) are explicitly depicted in FIG. 2, so as to avoid undue confusion.
  • RPs RP1-RP3 may be incorporated in one or more wireless local area networks (WLANs) that operates in accordance with any number of wireless standards, such as the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standards.
  • WLANs wireless local area networks
  • the RPs may be incorporated in stand-alone point-to-point communication systems that are not part of a network.
  • RPs RP1-RP3 may transceive communication signals with each other and with client device 102.
  • RPs RP1-RP3, and client device 106 may also communicate with LBS servers 108 over communication network 110.
  • client device 106 may transceive signals with RPs RP2 located on the same floor (i.e., floor F2) as the client device, and with RPs RP1 and RP3 located on different floors (i.e., floors Fl and F3) from that of the client device.
  • embodiments described herein determine a location of client device 104 in building 102, including a current floor of the building on which the client device is located.
  • Such embodiments assume that certain RP-related information is known a priori and accessible as necessary to components in environment 100.
  • Such RP-related information may include:
  • a real-world (deployed) location i.e., geographical coordinates, of the RP associated with that ID
  • a floor e.g., Fl, F2, or F3 of building 102 on which the RP associated with that ID is located;
  • Example RP-related information for three RPs identified as A, B, and C among RPs RP1-RP3 is provided in Table 1 below: RP RP Geog. Location (e.g., x, y, Building RP Transmit
  • TP Floor ID Power
  • the RP -related information may include an associated record indicating a total number of floors in the building hosting the RPs listed in the table.
  • the building information may indicated In Table 1, the z-coordinate of a given RP may correspond to an altitude or height of a given floor in building 102 on which the RP is located.
  • Each of RPs RP1-RP3 may be provisioned with its corresponding RP-related information, e.g., its RP ID, geographical location, building floor, and transmit power, and may transmit such information to client device 106 automatically and repeatedly, or, only when requested to do so. Additionally, and/or alternatively, the RP-related information may be stored as RP -information records in one or more databases residing in servers 108. Such records may be indexed according to RP ID, or any other suitable index, and may be accessed by client device 106 and/or RPs RP1-RP3 through network 110.
  • RP-related information e.g., its RP ID, geographical location, building floor, and transmit power
  • the RP-related information may be stored as RP -information records in one or more databases residing in servers 108. Such records may be indexed according to RP ID, or any other suitable index, and may be accessed by client device 106 and/or RPs RP1-RP3 through network 110.
  • FIG. 3 is a flowchart of an example method 300 used to determine a current floor on which a client device is located in a multi-story building.
  • Method 300 may be invoked repeatedly to track movements of a client device between floors over time, and in response to a location request from an LBS application.
  • method 300 is described with reference to environment 100, as depicted in FIGs. 1 and 2. However, it is to be understood that method 300 may be implemented in other environments. To the extent that method 300 relies on access to RP -related information, such as RP IDs, locations (including floor designations), transmit powers, etc., such information may be received directly from RPs RP1-RP3, or may be accessed over communication network 110.
  • RP -related information such as RP IDs, locations (including floor designations), transmit powers, etc.
  • the floors referenced in FIG. 3 and manipulated by method 300 are indications/representations of the actual floors in a building.
  • Such floor indications may be stored as variables in client device 106 (e.g., as floor values or identifiers, such as Fl, F2, etc.) to be manipulated in accordance with method 300.
  • Method 300 employs a confidence level (as described below) that the current floor (i.e., indication of the current floor as determined in method 300) is correct.
  • the floor confidence level (also referred to herein simply as the "confidence level”) may range in value from a predetermined minimum level (i.e., minimum level) to a predetermined maximum level (i.e., maximum level), e.g., from 1 to 10 in increments of 1.
  • the confidence level may be initialized to the minimum level.
  • all of operations 302-316 of method 300 described below may be implemented in client device 106.
  • client device 106 has access to the necessary RP -related information, e.g., such as listed in Table 1.
  • operation 302 may be implemented in the client device while some or all of the remainder of operations 304-316 may be implemented in one or more of servers 108.
  • a receiver of client device 106 receives signals transmitted from RPs RP1-RP3, and measures respective signal strengths of the received signals, i.e., measures received signal power levels. Each measured signal strength is also referred to herein as a received signal strength indication (RSSI). The measured signal strengths are accessible by method 300.
  • RSSI received signal strength indication
  • one of the floors F1-F3 is selected as a candidate floor on which client device 106 may be located based at least in part on the measured signal strengths from 302.
  • the candidate floor may be selected in accordance with Candidate Floor Selection Method 1 or Method 2 described below, or any other suitable method that uses the measured signal strengths, as would be appreciated by one of ordinary skill in the relevant art(s) having read the present description.
  • the current floor may be initially set equal to the candidate floor selected at 304.
  • the confidence level is increased by a predetermined amount, such as 1, and flow proceeds to 316.
  • the threshold is equal to the minimum confidence level, e.g., 1, but the threshold may be set to a different value.
  • the current floor may be reported to an LBS in response to an earlier request for device location and/or floor information.
  • Method 300 may be performed repeatedly, i.e., each time device 106 scans its environment for the presence of signals and measures their signal strengths. Each pass through method 300 determines a current floor (that may be reported at 316), which then becomes a "previously determined" current floor to be used in a next pass through the method, i.e., that is used in the compare at 306 in the next pass, and that may be replaced at 314 in the next pass with the candidate floor selected at 304 of the next pass.
  • a candidate floor may be selected at 304 in a manner now described.
  • preliminary information including path losses and distances, is determined, as follows.
  • the set of detected RPs ⁇ RPj is sorted in an ascending order based on a calculated distance between the CD and each RP.
  • the distance may be calculated using a propagation model, such as the following Free Space Path Loss (FSPL) model:
  • L is the path loss in decibels (dB)
  • is the wavelength
  • d is the RP- CD distance in the same units as the wavelength.
  • the path loss L may be obtained according to the following:
  • dBt is the transmitted power in dB (know transmitter power is available from the RP-related information in Table 1)
  • dBr is the received signal strength indication (RSSI) in dB (as measured in the CD).
  • Sorting the set of detected RPs ⁇ RPj in the ascending order based on the calculated distance between the CD and each RP is equivalent to sorting in an ascending order based on the path loss L, and also RSSI.
  • the FSPL model requires knowledge of the transmit power of the RPs.
  • the set of ⁇ RP ⁇ may be sorted based on RSSI in a descending order, i.e., the RP corresponding to the highest RSSI is assigned a weight (N+l-1), the RP corresponding to the 2 nd highest RSSI is assigned a weight (N+l-2), and so on.
  • a candidate floor is selected using one or both of Candidate Floor Selection Method 1 and Candidate Floor Selection Method 2, described below:
  • Candidate Floor Selection Method 1 involves weighting RPs based on their corresponding RSSIs.
  • each reference point RP is assigned a weight (N+l-i).
  • the RP-related information in Table 1 indicates the floor on which each RP is located.
  • a floor weight (FW) is calculated as a sum of the weights of the RPs located on that floor. The floor having the greatest floor weight is selected as the candidate floor for the current floor.
  • Method 1 includes:
  • Candidate Floor Selection Method 2 may be applied solely or in a case where two floors have similar weights (e.g. their difference is less than a predetermined weight difference, such as 2) as computed in Method 1.
  • Candidate Floor Selection Method 2 includes calculating floor signal compensation for RPs in each floor using a self-adaptive path loss model. More specifically, Method 2 includes an adaptive method that utilizes the known locations of the RPs in the environment (e.g., building) to continuously adapt and compensate for error prone RSSIs used in a propagation model (e.g. FSPL described in connection with Method 1).
  • a compensation (D) is calculated using the formula below, which takes into consideration a difference between GeoDist (i.e., a distance calculated based on spatial dispersion of RPs) and RSSIDist (i.e., a distance calculated based on FSPL).
  • L is the path loss in decibels (dB)
  • is the wavelength
  • d! is a possible RP-CD (i.e., RP-CD receiver) distance that is based on the RP' s spatial dispersion (GeoDist) in the same units as the wavelength.
  • floor compensation (FD) is calculated using the formula:
  • the floor with a least FD (which means the signal compensation for the RPs in this floor is less than that of all of the other floors) is selected as the candidate floor.
  • Method 2 includes:
  • FIG. 4 is a flowchart of an example method 400 expanding on the decrease in confidence level 310 of method 300.
  • a location of client device 106 on the candidate floor is determined.
  • the location may be determined using known trilateration techniques based on (i) the signal strengths measured at 302, and (ii) the corresponding RP -related information, such as the transmitter powers (of transmitters associated with the RPs) and their known locations corresponding to the measured signal strengths.
  • the measured signal strength may be considered to be inversely proportional to the distance between client device 106 and the RP. Using measured signal strengths corresponding to multiple RPs improves the accuracy of the client device location.
  • using measured signal strength from a single transmitter locates the client device to a radial distance between the client device and the RP (i.e., locates the client device on any point of a circumference of a circular area surrounding the RP, where the circular area has a radius equal to a distance between the client device and the RP).
  • Using measured signal strengths from two RPs locates the client device to one of two points where the circumferences of the two circular areas overlap.
  • Using measured signal strengths from three or more RPs triangulates the location of the client device to a point.
  • the location determined at 401 is within a predetermined distance of any known entry/exit (i.e., access way) of the candidate floor (i.e., an entry/exit having a known location on the candidate floor). For example, with reference to FIG. 2, at 402 it is determined if the location of client device 106 is within a predetermined distance of one of entries/exits El, E2, and E3.
  • the predetermined distance may be any suitable distance, such as from 10 to 15 feet.
  • the known locations of the access ways may be stored in one or more databases in servers associated with building communication network 104 and accessible to client device 106, such as a database associated with, e.g., linked to, the RP -related information for a given building, such as the RP -related information in Table 1.
  • Such access way location databases may be accessed by client device 106 as necessary, e.g., via a request/response communication protocol, when method 300 is executed.
  • the access way location databases may also be stored in servers 108, for example.
  • locations of the access ways may be defined according to fingerprinting techniques and accessible to client device 106, as would be appreciated by those of ordinary skill in the relevant arts.
  • a predetermined first amount such as, e.g., between 2 and 5, which represents a relatively large amount.
  • method 300 may determine a direction in which client device 106 is travelling on the candidate floor over time. If it is determined that the direction is toward a known access way, then at 404 the confidence level is decreased by the predetermined first amount.
  • the location may include a distance test similar to that in 402, except that in 410 the predetermined distance within which the location must fall is less than the predetermined distance used in 402, e.g., the predetermined distance may be close to zero, such as two or three feet, instead of ten or fifteen feet. Therefore, at 410 it is determined if the location is within a predetermined distance of an entry/exit, where the predetermined distance is less than the predetermined distance in 402.
  • the entry/exit may correspond to a range or band of locations, and at 402 it is determined if the client device location is within the range or band of locations that corresponds to the entry/exit, and thereby coincides with the entry/exit.
  • method 400 ends.
  • FIG. 5 is a flowchart of an example summary method 500 of determining a floor of a multi-floor building on which a device, such as client device 106, is located.
  • Method 500 may be performed in connection with an LBS.
  • 502 includes storing an indication of a current floor of the multiple floor building on which the device is located.
  • [0084] 504 includes measuring signal strengths of signals received at the device (which includes a receiver to receive the signals and measure their signals strengths) from transmitters (i.e., transmitters of the RPs) having known locations on the floors of the building.
  • transmitters i.e., transmitters of the RPs
  • [0085] 506 includes selecting one of the multiple floors as a candidate floor based in part on the measured signal strengths.
  • [0086] 508 includes increasing a confidence level associated with the indication of the current floor if the candidate floor corresponds to, i.e., is the same as, the current floor.
  • [0087] 510 includes decreasing the confidence level if the candidate floor does not correspond to the current floor.
  • [0088] 512 includes replacing the indication of the current floor with the candidate floor if the confidence level is below a threshold.
  • FIG. 6 is a flowchart of an example method expanding on the decreasing at 510 of method 500.
  • 602 includes determining a location of the device on the candidate floor based in part on the measured signal strengths.
  • [0091] 604 includes decreasing the confidence level by a first amount if the location is within a predetermined distance of a known access way of the candidate floor.
  • 606 includes decreasing the confidence level by a second amount that is less than the first amount if the location is not within the predetermined distance of the known access.
  • FIG. 7A is a flowchart of an example method expanding on the selecting at 506 of method 500, corresponding to Candidate Floor Selection Method 1 .
  • [0094] 702 includes assigning weights to the transmitters based on the measured signal strength corresponding to each of transmitters.
  • [0095] 704 includes computing, for each floor, a floor weight as a sum of the weights assigned to the transmitters located on the given floor.
  • [0096] 706 includes selecting the floor having the greatest floor weight as the candidate floor.
  • FIG. 7B is a flowchart of an example method expanding on the selecting at 506 of method 500, corresponding to Candidate Floor Selection Method 2.
  • [0098] 708 includes computing a signal compensation for each of the transmitters based on (i) a possible spatial distance between the device and the given transmitter, and (ii) a path loss between from the device and the given transmitter.
  • [0099] 710 includes computing a floor signal compensation for each floor based on the signal compensation of the transmitters corresponding to the given floor.
  • [00100] 712 includes selecting the floor having the lowest floor signal compensation as the candidate floor.
  • FIG. 8 is a block diagram of an example computer system 800, configured to determine a location of a client device in a building, including a floor in the building on which the client device is located, in accordance with embodiments described herein.
  • Computer system 800 may be incorporated in client device 106 and/or servers 108.
  • Computer system 800 includes one or more processors, illustrated here as a processor 802, to execute instructions of a computer program 806.
  • Computer system 800 further includes a computer -readable medium or media (medium) 804.
  • Processor 802 may include one or more instruction processors and/or processor cores, and a control unit to interface between the instruction processor(s)/core(s) and medium 804.
  • Processor 802 may include, without limitation, one or more of a microprocessor, a graphics processor, a physics processor, a digital signal processor, a network processor, a front-end communications processor, a coprocessor, a management engine (ME), a controller or microcontroller, a central processing unit (CPU), a general purpose instruction processor, an application- specific processor.
  • Medium 804 may include a transitory or non-transitory computer-readable medium, and may include, without limitation, registers, cache, and memory.
  • Such memory may include non-volatile and volatile memory, such as read-only memory (ROM), including programmable ROM, and random access memory (RAM).
  • ROM read-only memory
  • RAM random access memory
  • Medium 804 includes a computer program 806 encoded therein, including instructions to be executed by processor 802.
  • Computer -readable medium 804 further includes data 808, which may be used by processor 802 during execution of computer program 806, and/or generated by processor 802 during execution of computer program 806.
  • Data 808 may include variables representing current floor, candidate floor, and confidence level. Data may also include RSSIs and RP -related information.
  • computer program 806 includes sets of instructions 810 that when executed cause processor 802 to determine a location of a client device and a floor a building on which the device is located, such as described in one or more examples above.
  • Instructions 810 include instructions to measure signal strengths, select a candidate floor, adjust a confidence level, determine device location, and implement an LBS application.
  • Computer system 800 may include communications infrastructure 840 to communicate amongst devices and/or resources of computer system 800. [00108] Computer system 800 may include one or more input/output (I/O) devices and/or controllers 842 to interface with one or more other systems, such as communication systems.
  • I/O input/output
  • Methods and systems disclosed herein may be implemented with respect to one or more of a variety of systems, such as described below with reference to FIG. 9. Methods and systems disclosed herein are not, however, limited to the examples of FIG. 9.
  • FIG. 9 is a block diagram of a system 900, which may represent client device 106, including a processor 902 and associated memory, cache, and/or other computer- readable medium, illustrated here as memory 904.
  • System 900 further includes a communication system 906 and a user interface system 930.
  • System 900 may further include an electronic or computer -readable storage medium (storage) 940, which may be accessible to processor 902, communication system 906, and/or user interface system 930.
  • Communication system 906 may include a wired and/or wireless communication system, and may be configured to communicate with an external communication network on behalf of processor 902 and user interface system 930.
  • the external network may include a voice network (e.g., a wireless telephone network), and/or a data or packet -based network (e.g., a proprietary network and/or the Internet).
  • communication system 906 includes transceiver components, such as a receiver and a transmitter, to communicate with network 110 and building communication system 104, and to measure signal strengths of signals received there from.
  • User interface system 930 may include a monitor or display 932 and/or a human interface device (HID) 934.
  • HID 934 may include, without limitation, a key board, a cursor device, a touch- sensitive device, a motion and/ or image sensor, a physical device and/or a virtual device, such as a monitor-displayed virtual keyboard.
  • User interface system 930 may include an audio system 936, which may include a microphone and/or a speaker.
  • System 900 may be configured as a stationary or portable/hand-held system, and may be configured as, for example, a mobile telephone, a set-top box, a gaming device, and/or a rack-mountable, desk -top, lap-top, notebook, net-book, note -pad, or tablet system, and/or other conventional and/or future -developed system(s).
  • System 900 is not, however, limited to these examples.
  • Example 1 includes a non-transitory computer -readable medium encoded with a computer program to determine a current floor on which a device is located in a multiple floor building, including instructions to cause a processor:
  • Example 2 includes the subject matter of example 1, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to:
  • Example 3 includes the subject matter of example 2, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to, after the confidence level is decreased by one of the first and second amounts:
  • Example 4 includes the subject matter of claim 3, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to, after the confidence level is decreased by one of the first and second amounts:
  • Example 5 includes the subject matter of claim 1, wherein the instructions to cause the processor to select further include instructions to cause the processor to:
  • Example 6 includes the subject matter of claim 1, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to:
  • [00135] calculate a signal compensation for each of the transmitters based on (i) a possible spatial distance between the device and the given transmitter, and (ii) a path loss between from the device and the given transmitter;
  • Example 7 includes an apparatus, comprising:
  • a processor and memory configured to:
  • [00140] store an indication of the current floor of a multiple floor building on which a device is located; [00141] access measured signal strengths of signals received at the device from transmitters having known locations on the multiple floors of the building;
  • [00142] select one of the multiple floors as a candidate floor based in part on the measured signal strengths
  • Example 8 The apparatus of claim 7, wherein the processor memory configured to decrease are further configured to:
  • [00149] decrease the confidence level by a second amount that is less than the first amount if the location is not within the predetermined distance of the known access.
  • Example 9 includes the subject matter of claim 8, wherein the processor and memory configured decrease are further configured to, after the confidence level is decreased by one of the first and second amounts:
  • Example 10 includes the subject matter of claim 9, wherein the processor and memory configured to decrease are further configured, after the confidence level is decreased by one of the first and second amounts:
  • Example 11 includes the subject matter of example 7, wherein the processor and memory configured to select are further configured to: [00155] assign weights to the transmitters based on the measured signal strength corresponding to each of the transmitters;
  • Example 12 includes the subject matter of example 7, wherein the processor and memory configured to select are further configured to:
  • [00159] calculate a signal compensation for each of the transmitters based on (i) a possible spatial distance between the device and the given transmitter, and (ii) a path loss between from the device and the given transmitter;
  • [00161] select the floor having the lowest floor signal compensation as the candidate floor.
  • Example 13 includes the subject matter of example 7, further comprising:
  • a communication system including a receiver to receive the signals and measure their signal strengths, to interface with a communication network and one or more of the processor and the user interface system; and
  • a housing to house the processor and memory, the user interface system, and the communication system.
  • Example 14 includes the subject matter of example 13, wherein:
  • the communication system includes a wireless communication system
  • the housing includes a mobile hand-held housing to house the processor and memory, the user interface, the communication system, and a battery.
  • Example 15 includes a method to determine a current floor on which a client device is located in a multiple floor building, comprising:
  • Example 16 includes the subject matter of example 15, wherein the decreasing includes:
  • Example 17 includes the subject matter of example 16, wherein the decreasing further includes, after decreasing the confidence level by one of the first and second amounts:
  • Example 18 includes the subject matter of example 17, wherein the decreasing further includes, after decreasing the confidence level by one of the first and second amounts:
  • Example 19 includes the subject matter of example 15, wherein the selecting includes: [00185] assigning weights to the transmitters based on the measured signal strength corresponding to each of the transmitters;
  • Example 20 includes the subject matter of example 15, wherein the selecting includes:
  • Example 21 includes at least one machine readable medium comprising a plurality of instructions that in response to being executed on a computing device, cause the computing device to carry out a method according to any one of examples 15 to 20.
  • Example 22 includes a communications device arranged to perform the method of any one of examples 15 to 20.
  • Example 23 includes a computer system to perform the method of any of examples 15 to 20.
  • Example 24 includes a machine to perform the method of any of examples 15 to 20.
  • Example 25 includes an apparatus comprising: means for performing the method of any of examples 15 to 20.
  • Example 26 includes an apparatus to determine a floor of a building on which a device is located, configured to perform the method of examples 15 -20.
  • Example 27 includes a computing device comprising a chipset according to any one of the examples 15-20 and memory to determine a floor of a building on which a device is located.
  • One or more features disclosed herein may be implemented in, without limitation, circuitry, a machine, a computer system, a processor and memory, a computer program encoded within a computer -readable medium, and/or combinations thereof.
  • Circuitry may include discrete and/or integrated circuitry, application specific integrated circuitry (ASIC), a system-on-a-chip (SOC), and combinations thereof.
  • ASIC application specific integrated circuitry
  • SOC system-on-a-chip

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)

Abstract

A device stores an indication of a current floor of a multiple floor building on which a device is located. The device measures signal strengths of signals received at the device from transmitters having known locations on the floors of the building. The device selects one of the multiple floors as a candidate floor based in part on the measured signal strengths. The device increases a confidence level associated with the indication of the current floor if the candidate floor corresponds to the current floor, and decreases the confidence level if the candidate floor does not correspond to the current floor. The device replaces the indication of the current floor with the candidate floor if the confidence level is below a threshold.

Description

BUILDING FLOOR DETERMINATION FOR A LOCATION BASED
SERVICE
BACKGROUND
[0001] A location based service (LBS) provides a service based on location. The LBS may include a server-based LBS application hosted on an Internet server that is paired with a client-based LBS application hosted on an Internet Protocol (IP)-capable client device (CD), which may be stationary or mobile. The paired LBS applications may communicate with each other over the Internet. Typically, the LBS acquires a current location of the CD, and then provides an appropriate service to a consumer of the LBS, e.g., a user of the CD, based on the current location. For example, the LBS may cause the CD to display a geographical map indicating the current location, and provide audible directions that direct the user to a point-of-interest, such as a store or a restaurant in a shopping mall, etc.
[0002] Trilateration is a technique for determining a relative or an absolute location of the CD. Trilateration relies on signals that are transmitted to the CD from transmitters associated with reference points (RPs), e.g. Wi-Fi access points (APs) and beacons, having known locations. Trilateration may be used to calculate a location of the CD in a planar direction, i.e., a plane geometric location of the CD, such as its relative x, y or absolute latitude, longitude coordinates. When the CD is in a multi-story building that hosts multiple RPs dispersed across different floors of the building, the CD typically receives RP signals that originate from the different floors, including the floor on which the CD is located. Simple trilateration is insufficient to locate the CD reliably in both a planar direction and a vertical direction, e.g., to an altitude or a floor of the building.
[0003] In the multi-story environment, conventional techniques, including trilateration, that use received RP signals to detect the floor on which the CD is located, tend to be error prone, i.e., often detect an incorrect floor. This is because such techniques may simply detect the floor that originates either a strongest one of the RP signals (as received at the CD), or the most RP signals. In either case, the CD may be located on a floor different from that originating either the strongest or the most RP signals. Incorrect floor information may translate to erroneous LBS operation. For example, a map indicating a location of a CD in a multi-story building may intermittently represent the CD on incorrect floors, and thereby "jump" back- and-forth between floors depicted in the map, thus confusing the LBS consumer.
BRIEF DESCRIPTION OF THE DRAWINGS
[0004] FIG. 1 is a block diagram of an example location based service (LBS) environment.
[0005] FIG. 2 is a simplified, perspective, example interior view of a multi-story building in the environment of FIG. 1.
[0006] FIG. 3 is a flowchart of an example method of determining a current floor on which a client device is located in a multi-story building.
[0007] FIG. 4 is a flowchart of an example method expanding on decreasing a floor confidence level in the method of FIG. 3.
[0008] FIG. 5 is a flowchart of a summary method of determining a floor of a multiple floor building on which a device is located, according to an embodiment.
[0009] FIG. 6 is a flowchart of an example method expanding on decreasing a confidence level in the method of FIG. 5.
[0010] FIG. 7 A is a flowchart of an example method expanding on selecting a candidate floor in the method of FIG. 5, according to a first method of selecting.
[0011] FIG. 7B is a flowchart of an example method expanding on selecting a candidate floor in the method of FIG. 5, according to a second method of selecting.
[0012] FIG. 8 is a block diagram of an example computer system.
[0013] FIG. 9 is a block diagram of an example system.
[0014] In the drawings, the leftmost digit(s) of a reference number identifies the drawing in which the reference number first appears.
DETAILED DESCRIPTION
LBS Environment
[0015] FIG. 1 is a block diagram of an example environment 100 to provide a location based service (LBS). Environment 100 includes a multi-story (i.e., multi- floor) building or edifice 102; a building communication network 104 located in and/or around the building; and a client device 106, located in the building and configured to communicate with the building communication network. Environment 100 also includes: one or more servers 108 each to host server-side LBS applications and related databases that support the LBS; and a communication network 110, such as the Internet, through which the servers, building communication network 106, and client device 106 may communicate.
[0016] Client device 106 may host a client-side LBS application 112 to communicate with peer LBS applications on servers 108, and provide the LBS to a user of the client device. LBS application 112 may request and use location information related to client device 102, such as a location of the client device in the building, and a floor on which the client device is located. As will be described below, client device 106 is configured to receive signals from building communication network 104 and process the received signals in accordance with embodiments described herein.
[0017] FIG. 2 is a simplified, perspective, example interior view of multi-story building 102. Building 102 includes multiple vertically-spaced floors Fl, F2, and F3 having respective floor entries/exits El, E2, and E3 (also referred to as floor access ways) each opening into a vertically extending stairwell and/or elevator shaft 204 that provides access/service to/from all of the floors. Building communication network 104 (depicted in FIG. 1 only as a single block) includes multiple sets of spaced-apart reference points (RPs) RPl, RP2, and RP3 located at known locations on each of floors Fl, F2, and F3, respectively. Note that "RPl" generally indicates multiple RPs on the first floor, "RP2" generally indicates multiple RPs on the second floor, and so on.
[0018] The RPs RP1 -RP3 may include, without limitation, Wi-Fi access points (APs) and beacons. As such, each of RPs RP1-RP3 typically includes a transmitter -receiver (transceiver) pair to transmit and receive (i.e., transceive) wireless and/or wired communication signals S, such as radio -frequency (RF) signals. RPs among RP1- RP3 configured as beacons may include only a transmitter to transmit signals. All of the RPs depicted in FIG. 2 may transmit communication signals to client device 106, however, only three communication signals (S) are explicitly depicted in FIG. 2, so as to avoid undue confusion. RPs RP1-RP3 may be incorporated in one or more wireless local area networks (WLANs) that operates in accordance with any number of wireless standards, such as the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standards. Alternatively, the RPs may be incorporated in stand-alone point-to-point communication systems that are not part of a network.
[0019] RPs RP1-RP3 may transceive communication signals with each other and with client device 102. RPs RP1-RP3, and client device 106, may also communicate with LBS servers 108 over communication network 110. As depicted in FIG. 2, client device 106 may transceive signals with RPs RP2 located on the same floor (i.e., floor F2) as the client device, and with RPs RP1 and RP3 located on different floors (i.e., floors Fl and F3) from that of the client device.
[0020] As mentioned above, embodiments described herein determine a location of client device 104 in building 102, including a current floor of the building on which the client device is located. Such embodiments assume that certain RP-related information is known a priori and accessible as necessary to components in environment 100. Such RP-related information may include:
[0021] (i) a list of RP identifiers (IDs) and network addresses of all of the deployed RPs in the sets of RPs RP1-RP3;
[0022] (ii) for each listed ID, a real-world (deployed) location, i.e., geographical coordinates, of the RP associated with that ID;
[0023] (iii) for each listed ID, a floor (e.g., Fl, F2, or F3) of building 102 on which the RP associated with that ID is located; and
[0024] (iv) for each listed ID, a predetermined transmit power level of the RP associated with that ID.
[0025] Example RP-related information for three RPs identified as A, B, and C among RPs RP1-RP3 is provided in Table 1 below: RP RP Geog. Location (e.g., x, y, Building RP Transmit
ID z and/or latitude (lat), Floor ID Power (TP) (e.g.,
longitude (long), altitude (alt) and/or Watts/dBs) coordinates) Altitude (alt)
A XA, yA, Za - latA, longA, altA FA, altA TPA
B XB, ye, zB - latB, longs ,altB FB, altB TPB
C xc, yc, zc - late, longc, altc Fc, altc TPc
Table 1
[0026] In addition to the RP-related information explicitly indicated in Table 1, the RP -related information may include an associated record indicating a total number of floors in the building hosting the RPs listed in the table. The building information may indicated In Table 1, the z-coordinate of a given RP may correspond to an altitude or height of a given floor in building 102 on which the RP is located.
[0027] Each of RPs RP1-RP3 may be provisioned with its corresponding RP-related information, e.g., its RP ID, geographical location, building floor, and transmit power, and may transmit such information to client device 106 automatically and repeatedly, or, only when requested to do so. Additionally, and/or alternatively, the RP-related information may be stored as RP -information records in one or more databases residing in servers 108. Such records may be indexed according to RP ID, or any other suitable index, and may be accessed by client device 106 and/or RPs RP1-RP3 through network 110.
Method Flowcharts
[0028] FIG. 3 is a flowchart of an example method 300 used to determine a current floor on which a client device is located in a multi-story building. Method 300 may be invoked repeatedly to track movements of a client device between floors over time, and in response to a location request from an LBS application.
[0029] By way of example, method 300 is described with reference to environment 100, as depicted in FIGs. 1 and 2. However, it is to be understood that method 300 may be implemented in other environments. To the extent that method 300 relies on access to RP -related information, such as RP IDs, locations (including floor designations), transmit powers, etc., such information may be received directly from RPs RP1-RP3, or may be accessed over communication network 110.
[0030] To avoid ambiguity, it is to be understood that the floors referenced in FIG. 3 and manipulated by method 300, e.g., "candidate floor" and "current floor," are indications/representations of the actual floors in a building. Such floor indications may be stored as variables in client device 106 (e.g., as floor values or identifiers, such as Fl, F2, etc.) to be manipulated in accordance with method 300.
[0031] Method 300 employs a confidence level (as described below) that the current floor (i.e., indication of the current floor as determined in method 300) is correct. The floor confidence level (also referred to herein simply as the "confidence level") may range in value from a predetermined minimum level (i.e., minimum level) to a predetermined maximum level (i.e., maximum level), e.g., from 1 to 10 in increments of 1. In method 300, the confidence level may be initialized to the minimum level.
[0032] In an embodiment, all of operations 302-316 of method 300 described below may be implemented in client device 106. In such an embodiment, it is assumed that while executing method 300, client device 106 has access to the necessary RP -related information, e.g., such as listed in Table 1. In an alternative embodiment, operation 302 may be implemented in the client device while some or all of the remainder of operations 304-316 may be implemented in one or more of servers 108.
[0033] At 302, a receiver of client device 106 receives signals transmitted from RPs RP1-RP3, and measures respective signal strengths of the received signals, i.e., measures received signal power levels. Each measured signal strength is also referred to herein as a received signal strength indication (RSSI). The measured signal strengths are accessible by method 300.
[0034] At 304, one of the floors F1-F3 is selected as a candidate floor on which client device 106 may be located based at least in part on the measured signal strengths from 302. The candidate floor may be selected in accordance with Candidate Floor Selection Method 1 or Method 2 described below, or any other suitable method that uses the measured signal strengths, as would be appreciated by one of ordinary skill in the relevant art(s) having read the present description. [0035] Note that, in a first pass through method 300, at 304, the current floor may be initially set equal to the candidate floor selected at 304.
[0036] At 306, it is determined if the candidate floor is equal to the current floor.
[0037] If at 306 it is determined that the candidate floor is equal to the current floor, then at 308, the confidence level is increased by a predetermined amount, such as 1, and flow proceeds to 316.
[0038] If at 306 it is determined that the candidate floor is not equal to the current floor, then at 310, the confidence level is decreased, as described further below in connection with FIG. 4, and flow proceeds to 312.
[0039] At 312 it is determined if the confidence is less than a minimum threshold. In an embodiment, the threshold is equal to the minimum confidence level, e.g., 1, but the threshold may be set to a different value.
[0040] If at 312 it is determined that the confidence is not less than the threshold, then flow proceeds to 316.
[0041] If at 312 it is determined that the confidence is less than the threshold, then flow proceeds to 314, where (i) the current floor is set equal to, i.e., replaced by, the candidate floor selected in 304, and (ii) the confidence level is set equal to the threshold. From 314, flow proceeds to 316.
[0042] At 316, the current floor may be reported to an LBS in response to an earlier request for device location and/or floor information.
[0043] Method 300 may be performed repeatedly, i.e., each time device 106 scans its environment for the presence of signals and measures their signal strengths. Each pass through method 300 determines a current floor (that may be reported at 316), which then becomes a "previously determined" current floor to be used in a next pass through the method, i.e., that is used in the compare at 306 in the next pass, and that may be replaced at 314 in the next pass with the candidate floor selected at 304 of the next pass.
Candidate Floor Selection [0044] In method 300, a candidate floor may be selected at 304 in a manner now described.
[0045] First, preliminary information, including path losses and distances, is determined, as follows.
[0046] Assume a client device (CD) scans its environment for signals from RPs, and the scan detects RPs in the set {RPi), i = 1~N.
[0047] The set of detected RPs {RPj is sorted in an ascending order based on a calculated distance between the CD and each RP. The distance may be calculated using a propagation model, such as the following Free Space Path Loss (FSPL) model:
L = 20 log10 J
[0048] where L is the path loss in decibels (dB), λ is the wavelength, and d is the RP- CD distance in the same units as the wavelength.
[0049] The path loss L may be obtained according to the following:
L = dBt— dBr
[0050] where dBt is the transmitted power in dB (know transmitter power is available from the RP-related information in Table 1), and dBr is the received signal strength indication (RSSI) in dB (as measured in the CD).
[0051] Once the pass loss L is known, then the distance d is calculated.
[0052] Sorting the set of detected RPs {RPj in the ascending order based on the calculated distance between the CD and each RP is equivalent to sorting in an ascending order based on the path loss L, and also RSSI.
[0053] The FSPL model requires knowledge of the transmit power of the RPs. In a case where the transmit powers are unknown, the set of {RP} may be sorted based on RSSI in a descending order, i.e., the RP corresponding to the highest RSSI is assigned a weight (N+l-1), the RP corresponding to the 2nd highest RSSI is assigned a weight (N+l-2), and so on. [0054] Once the above described preliminary information is determined, then a candidate floor is selected using one or both of Candidate Floor Selection Method 1 and Candidate Floor Selection Method 2, described below:
Candidate Floor Selection Method 1
[0055] Candidate Floor Selection Method 1 involves weighting RPs based on their corresponding RSSIs. In Method 1, each reference point RP; is assigned a weight (N+l-i). The RP-related information in Table 1 indicates the floor on which each RP is located. For each floor, a floor weight (FW) is calculated as a sum of the weights of the RPs located on that floor. The floor having the greatest floor weight is selected as the candidate floor for the current floor.
[0056] Summarizing, Method 1 includes:
[0057] assigning weights to the RPs (and thus, the received signals) based on the RSSI corresponding to each of the RPs;
[0058] computing a floor weight corresponding to each floor as a sum of the weights assigned to the RPs located on the given floor; and
[0059] selecting the floor having the greatest floor weight as the candidate floor.
Candidate Floor Selection Method 2
[0060] Candidate Floor Selection Method 2 may be applied solely or in a case where two floors have similar weights (e.g. their difference is less than a predetermined weight difference, such as 2) as computed in Method 1.
[0061] Candidate Floor Selection Method 2 includes calculating floor signal compensation for RPs in each floor using a self-adaptive path loss model. More specifically, Method 2 includes an adaptive method that utilizes the known locations of the RPs in the environment (e.g., building) to continuously adapt and compensate for error prone RSSIs used in a propagation model (e.g. FSPL described in connection with Method 1). A compensation (D) is calculated using the formula below, which takes into consideration a difference between GeoDist (i.e., a distance calculated based on spatial dispersion of RPs) and RSSIDist (i.e., a distance calculated based on FSPL).
D = 2 logio l— J- L
[0062] where L is the path loss in decibels (dB), λ is the wavelength, and d! is a possible RP-CD (i.e., RP-CD receiver) distance that is based on the RP' s spatial dispersion (GeoDist) in the same units as the wavelength.
[0063] Accordingly, a set of {Di} is calculated for the set {RPi), i = 1~N. The set of {Di} is divided into a series of sets {Dj }, j = 1 ~ K for each floor, where K is the number of RPs detected on a floor through in a floor. Then for each floor, floor compensation (FD) is calculated using the formula:
FD =— -— · Dj , if all Di are more than or equal 0 or
FD = Minimum ({Dj } ), if there is one D in the set of {Dj } less than 0
[0064] The floor with a least FD (which means the signal compensation for the RPs in this floor is less than that of all of the other floors) is selected as the candidate floor.
[0065] Summarizing the foregoing, Method 2 includes:
[0066] computing a signal compensation (D) for each of the RPs based on (i) a possible maximum or minimum spatial distance (d') between the client device and the RP, and (ii) a path loss (L) from the RP;
[0067] computing a floor signal compensation for each floor based on the signal compensation of the RPs in the floor; and
[0068] selecting the floor having the lowest floor signal compensation as the candidate floor.
[0069] FIG. 4 is a flowchart of an example method 400 expanding on the decrease in confidence level 310 of method 300. [0070] At 401 a location of client device 106 on the candidate floor is determined. The location may be determined using known trilateration techniques based on (i) the signal strengths measured at 302, and (ii) the corresponding RP -related information, such as the transmitter powers (of transmitters associated with the RPs) and their known locations corresponding to the measured signal strengths. In trilateration, as an approximation, the measured signal strength may be considered to be inversely proportional to the distance between client device 106 and the RP. Using measured signal strengths corresponding to multiple RPs improves the accuracy of the client device location. For example, using measured signal strength from a single transmitter locates the client device to a radial distance between the client device and the RP (i.e., locates the client device on any point of a circumference of a circular area surrounding the RP, where the circular area has a radius equal to a distance between the client device and the RP). Using measured signal strengths from two RPs locates the client device to one of two points where the circumferences of the two circular areas overlap. Using measured signal strengths from three or more RPs triangulates the location of the client device to a point.
[0071] At 402 it is determined whether the location determined at 401 is within a predetermined distance of any known entry/exit (i.e., access way) of the candidate floor (i.e., an entry/exit having a known location on the candidate floor). For example, with reference to FIG. 2, at 402 it is determined if the location of client device 106 is within a predetermined distance of one of entries/exits El, E2, and E3. The predetermined distance may be any suitable distance, such as from 10 to 15 feet. The known locations of the access ways may be stored in one or more databases in servers associated with building communication network 104 and accessible to client device 106, such as a database associated with, e.g., linked to, the RP -related information for a given building, such as the RP -related information in Table 1. Such access way location databases may be accessed by client device 106 as necessary, e.g., via a request/response communication protocol, when method 300 is executed. The access way location databases may also be stored in servers 108, for example. In an alternative embodiment, locations of the access ways may be defined according to fingerprinting techniques and accessible to client device 106, as would be appreciated by those of ordinary skill in the relevant arts. [0072] If at 402 it is determined that the determined location is within the predetermined distance of the entry/exit, then flow proceeds to 404, where the confidence level is decreased by a predetermined first amount, such as, e.g., between 2 and 5, which represents a relatively large amount. Then flow proceeds to 408. If the determined location is within the predetermined distance of the entry/exit, it is considered to be "close to" the entry/exit, and it is assumed that a possible floor change is imminent. The relatively large decreases at 404 correspondingly increases the likelihood that the current floor will change, i.e., the larger increment hastens the rate at which the current floor will change.
[0073] In an alternative embodiment, method 300 may determine a direction in which client device 106 is travelling on the candidate floor over time. If it is determined that the direction is toward a known access way, then at 404 the confidence level is decreased by the predetermined first amount.
[0074] If at 402 it is determined that the determined location in not within the predetermined distance of the entry/exit (or, in the alternative embodiment, not travelling in a direction toward the entry/exit), then flow proceeds to 406, where the confidence level is decreased by a predetermined second amount, such as, e.g., 1, that is less than the predetermined first amount and, therefore, considered a relatively small amount. Then flow proceeds to 408.
[0075] At 408 it is determined again if the confidence level is below the threshold.
[0076] If at 408 it is determined that the confidence level is below the threshold, then at 412 the current floor is set equal to, i.e., replaced with the candidate floor, and flow proceeds to 414.
[0077] At 414 the floor confidence level is set equal to the threshold, and then method 400 ends.
[0078] If at 408 it is determined that the confidence level is not below the threshold, then flow proceeds to 410.
[0079] Whereas at 402 it was determined if the location was close to an entry/exit, at 410 it is determined if the location coincides with, i.e., is at, the entry/exit. 410 may include a distance test similar to that in 402, except that in 410 the predetermined distance within which the location must fall is less than the predetermined distance used in 402, e.g., the predetermined distance may be close to zero, such as two or three feet, instead of ten or fifteen feet. Therefore, at 410 it is determined if the location is within a predetermined distance of an entry/exit, where the predetermined distance is less than the predetermined distance in 402. In another embodiment, the entry/exit may correspond to a range or band of locations, and at 402 it is determined if the client device location is within the range or band of locations that corresponds to the entry/exit, and thereby coincides with the entry/exit.
[0080] If at 410 it is determined that the location does not coincide with the entry/exit, then method 400 ends.
[0081] If at 410 it is determined that the location coincides with the entry/exit, then at 414 the floor confidence level is set equal to the threshold, and then method 400 ends.
[0082] FIG. 5 is a flowchart of an example summary method 500 of determining a floor of a multi-floor building on which a device, such as client device 106, is located. Method 500 may be performed in connection with an LBS.
[0083] 502 includes storing an indication of a current floor of the multiple floor building on which the device is located.
[0084] 504 includes measuring signal strengths of signals received at the device (which includes a receiver to receive the signals and measure their signals strengths) from transmitters (i.e., transmitters of the RPs) having known locations on the floors of the building.
[0085] 506 includes selecting one of the multiple floors as a candidate floor based in part on the measured signal strengths.
[0086] 508 includes increasing a confidence level associated with the indication of the current floor if the candidate floor corresponds to, i.e., is the same as, the current floor.
[0087] 510 includes decreasing the confidence level if the candidate floor does not correspond to the current floor.
[0088] 512 includes replacing the indication of the current floor with the candidate floor if the confidence level is below a threshold.
[0089] FIG. 6 is a flowchart of an example method expanding on the decreasing at 510 of method 500. [0090] 602 includes determining a location of the device on the candidate floor based in part on the measured signal strengths.
[0091] 604 includes decreasing the confidence level by a first amount if the location is within a predetermined distance of a known access way of the candidate floor.
[0092] 606 includes decreasing the confidence level by a second amount that is less than the first amount if the location is not within the predetermined distance of the known access.
[0093] FIG. 7A is a flowchart of an example method expanding on the selecting at 506 of method 500, corresponding to Candidate Floor Selection Method 1 .
[0094] 702 includes assigning weights to the transmitters based on the measured signal strength corresponding to each of transmitters.
[0095] 704 includes computing, for each floor, a floor weight as a sum of the weights assigned to the transmitters located on the given floor.
[0096] 706 includes selecting the floor having the greatest floor weight as the candidate floor.
[0097] FIG. 7B is a flowchart of an example method expanding on the selecting at 506 of method 500, corresponding to Candidate Floor Selection Method 2.
[0098] 708 includes computing a signal compensation for each of the transmitters based on (i) a possible spatial distance between the device and the given transmitter, and (ii) a path loss between from the device and the given transmitter.
[0099] 710 includes computing a floor signal compensation for each floor based on the signal compensation of the transmitters corresponding to the given floor.
[00100] 712 includes selecting the floor having the lowest floor signal compensation as the candidate floor.
Systems
[00101] FIG. 8 is a block diagram of an example computer system 800, configured to determine a location of a client device in a building, including a floor in the building on which the client device is located, in accordance with embodiments described herein. Computer system 800 may be incorporated in client device 106 and/or servers 108.
[00102] Computer system 800 includes one or more processors, illustrated here as a processor 802, to execute instructions of a computer program 806. Computer system 800 further includes a computer -readable medium or media (medium) 804.
[00103] Processor 802 may include one or more instruction processors and/or processor cores, and a control unit to interface between the instruction processor(s)/core(s) and medium 804. Processor 802 may include, without limitation, one or more of a microprocessor, a graphics processor, a physics processor, a digital signal processor, a network processor, a front-end communications processor, a coprocessor, a management engine (ME), a controller or microcontroller, a central processing unit (CPU), a general purpose instruction processor, an application- specific processor.
[00104] Medium 804 may include a transitory or non-transitory computer-readable medium, and may include, without limitation, registers, cache, and memory. Such memory may include non-volatile and volatile memory, such as read-only memory (ROM), including programmable ROM, and random access memory (RAM).
[00105] Medium 804 includes a computer program 806 encoded therein, including instructions to be executed by processor 802. Computer -readable medium 804 further includes data 808, which may be used by processor 802 during execution of computer program 806, and/or generated by processor 802 during execution of computer program 806. Data 808 may include variables representing current floor, candidate floor, and confidence level. Data may also include RSSIs and RP -related information.
[00106] In the example of FIG. 8, computer program 806 includes sets of instructions 810 that when executed cause processor 802 to determine a location of a client device and a floor a building on which the device is located, such as described in one or more examples above. Instructions 810 include instructions to measure signal strengths, select a candidate floor, adjust a confidence level, determine device location, and implement an LBS application.
[00107] Computer system 800 may include communications infrastructure 840 to communicate amongst devices and/or resources of computer system 800. [00108] Computer system 800 may include one or more input/output (I/O) devices and/or controllers 842 to interface with one or more other systems, such as communication systems.
[00109] Methods and systems disclosed herein may be implemented with respect to one or more of a variety of systems, such as described below with reference to FIG. 9. Methods and systems disclosed herein are not, however, limited to the examples of FIG. 9.
[00110] FIG. 9 is a block diagram of a system 900, which may represent client device 106, including a processor 902 and associated memory, cache, and/or other computer- readable medium, illustrated here as memory 904. System 900 further includes a communication system 906 and a user interface system 930. System 900 may further include an electronic or computer -readable storage medium (storage) 940, which may be accessible to processor 902, communication system 906, and/or user interface system 930.
[00111] Communication system 906 may include a wired and/or wireless communication system, and may be configured to communicate with an external communication network on behalf of processor 902 and user interface system 930. The external network may include a voice network (e.g., a wireless telephone network), and/or a data or packet -based network (e.g., a proprietary network and/or the Internet). In an embodiment, communication system 906 includes transceiver components, such as a receiver and a transmitter, to communicate with network 110 and building communication system 104, and to measure signal strengths of signals received there from.
[00112] User interface system 930 may include a monitor or display 932 and/or a human interface device (HID) 934. HID 934 may include, without limitation, a key board, a cursor device, a touch- sensitive device, a motion and/ or image sensor, a physical device and/or a virtual device, such as a monitor-displayed virtual keyboard. User interface system 930 may include an audio system 936, which may include a microphone and/or a speaker.
[00113] System 900 may be configured as a stationary or portable/hand-held system, and may be configured as, for example, a mobile telephone, a set-top box, a gaming device, and/or a rack-mountable, desk -top, lap-top, notebook, net-book, note -pad, or tablet system, and/or other conventional and/or future -developed system(s). System 900 is not, however, limited to these examples.
Further Embodiments and Examples
[00114] The following examples pertain to further embodiments.
[00115] Example 1 includes a non-transitory computer -readable medium encoded with a computer program to determine a current floor on which a device is located in a multiple floor building, including instructions to cause a processor:
[00116] store an indication of the current floor of the building on which the device is located;
[00117] access measured signal strengths of signals received at the device from transmitters having known locations on the floors of the building;
[00118] select one of the multiple floors as a candidate floor based in part on the measured signal strengths;
[00119] increase a confidence level associated with the indication of the current floor if the candidate floor corresponds to the current floor;
[00120] decrease the confidence level if the candidate floor does not correspond to the current floor; and
[00121] replace the indication of the current floor with the candidate floor if the confidence level is below a threshold.
[00122] Example 2 includes the subject matter of example 1, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to:
[00123] determine a location of the device on the candidate floor based in part on the measured signal strengths;
[00124] decrease the confidence level by a first amount if the location is within a predetermined distance of a known access way of the candidate floor; and
[00125] decrease the confidence level by a second amount that is less than the first amount if the location is not within the predetermined distance of the known access. [00126] Example 3 includes the subject matter of example 2, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to, after the confidence level is decreased by one of the first and second amounts:
[00127] replace the indication of the current floor with the candidate floor if the confidence level is below the threshold.
[00128] Example 4 includes the subject matter of claim 3, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to, after the confidence level is decreased by one of the first and second amounts:
[00129] set the confidence level equal to the threshold if the confidence level is below the threshold and the location coincides with the access way.
[00130] Example 5 includes the subject matter of claim 1, wherein the instructions to cause the processor to select further include instructions to cause the processor to:
[00131] assign weights to the transmitters based on the measured signal strength corresponding to each of the transmitters;
[00132] compute a floor weight corresponding to each floor as a sum of the weights assigned to the transmitters located on the given floor; and
[00133] select the floor having the greatest floor weight as the candidate floor.
[00134] Example 6 includes the subject matter of claim 1, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to:
[00135] calculate a signal compensation for each of the transmitters based on (i) a possible spatial distance between the device and the given transmitter, and (ii) a path loss between from the device and the given transmitter;
[00136] calculate a floor signal compensation for each floor based on the signal compensation of the transmitters corresponding to the given floor; and
[00137] select the floor having the lowest floor signal compensation as the candidate floor.
[00138] Example 7 includes an apparatus, comprising:
[00139] a processor and memory configured to:
[00140] store an indication of the current floor of a multiple floor building on which a device is located; [00141] access measured signal strengths of signals received at the device from transmitters having known locations on the multiple floors of the building;
[00142] select one of the multiple floors as a candidate floor based in part on the measured signal strengths;
[00143] increase a confidence level associated with the indication of the current floor if the candidate floor corresponds to the current floor;
[00144] decrease the confidence level if the candidate floor does not correspond to the current floor; and
[00145] replace the indication of the current floor with the candidate floor if the confidence level is below a threshold.
[00146] Example 8 The apparatus of claim 7, wherein the processor memory configured to decrease are further configured to:
[00147] determine a location of the device on the candidate floor based in part on the measured signal strengths;
[00148] decrease the confidence level by a first amount if the location is within a predetermined distance of a known access way of the candidate floor; and
[00149] decrease the confidence level by a second amount that is less than the first amount if the location is not within the predetermined distance of the known access.
[00150] Example 9 includes the subject matter of claim 8, wherein the processor and memory configured decrease are further configured to, after the confidence level is decreased by one of the first and second amounts:
[00151] replace the indication of the current floor with the candidate floor if the confidence level is below the threshold.
[00152] Example 10 includes the subject matter of claim 9, wherein the processor and memory configured to decrease are further configured, after the confidence level is decreased by one of the first and second amounts:
[00153] set the confidence level equal to the threshold if the confidence level is below the threshold and the location coincides with the access way.
[00154] Example 11 includes the subject matter of example 7, wherein the processor and memory configured to select are further configured to: [00155] assign weights to the transmitters based on the measured signal strength corresponding to each of the transmitters;
[00156] compute a floor weight corresponding to each floor as a sum of the weights assigned to the transmitters located on the given floor; and
[00157] select the floor having the greatest floor weight as the candidate floor.
[00158] Example 12 includes the subject matter of example 7, wherein the processor and memory configured to select are further configured to:
[00159] calculate a signal compensation for each of the transmitters based on (i) a possible spatial distance between the device and the given transmitter, and (ii) a path loss between from the device and the given transmitter;
[00160] calculate a floor signal compensation for each floor based on the signal compensation of the transmitters corresponding to the given floor; and
[00161] select the floor having the lowest floor signal compensation as the candidate floor.
[00162] Example 13 includes the subject matter of example 7, further comprising:
[00163] a user interface system; and
[00164] a communication system, including a receiver to receive the signals and measure their signal strengths, to interface with a communication network and one or more of the processor and the user interface system; and
[00165] a housing to house the processor and memory, the user interface system, and the communication system.
[00166] Example 14 includes the subject matter of example 13, wherein:
[00167] the communication system includes a wireless communication system; and
[00168] the housing includes a mobile hand-held housing to house the processor and memory, the user interface, the communication system, and a battery.
[00169] Example 15 includes a method to determine a current floor on which a client device is located in a multiple floor building, comprising:
[00170] storing an indication of the current floor of the multiple floor building on which a device is located; [00171] measuring signal strengths of signals received at the device from transmitters having known locations on the floors of the building;
[00172] selecting one of the multiple floors as a candidate floor based in part on the measured signal strengths;
[00173] increasing a confidence level associated with the indication of the current floor if the candidate floor corresponds to the current floor;
[00174] decreasing the confidence level if the candidate floor does not correspond to the current floor; and
[00175] replacing the indication of the current floor with the candidate floor if the confidence level is below a threshold.
[00176] Example 16 includes the subject matter of example 15, wherein the decreasing includes:
[00177] determining a location of the device on the candidate floor based in part on the measured signal strengths;
[00178] decreasing the confidence level by a first amount if the location is within a predetermined distance of a known access way of the candidate floor; and
[00179] decreasing the confidence level by a second amount that is less than the first amount if the location is not within the predetermined distance of the known access.
[00180] Example 17 includes the subject matter of example 16, wherein the decreasing further includes, after decreasing the confidence level by one of the first and second amounts:
[00181] replacing the indication of the current floor with the candidate floor if the confidence level is below the threshold.
[00182] Example 18 includes the subject matter of example 17, wherein the decreasing further includes, after decreasing the confidence level by one of the first and second amounts:
[00183] setting the confidence level equal to the threshold if the confidence level is below the threshold and the location coincides with the access way.
[00184] Example 19 includes the subject matter of example 15, wherein the selecting includes: [00185] assigning weights to the transmitters based on the measured signal strength corresponding to each of the transmitters;
[00186] computing a floor weight corresponding to each floor as a sum of the weights assigned to the transmitters located on the given floor; and
[00187] selecting the floor having the greatest floor weight as the candidate floor.
[00188] Example 20 includes the subject matter of example 15, wherein the selecting includes:
[00189] computing a signal compensation for each of the transmitters based on (i) a possible spatial distance between the device and the given transmitter, and (ii) a path loss between from the device and the given transmitter;
[00190] computing a floor signal compensation for each floor based on the signal compensation of the transmitters corresponding to the given floor; and
[00191] selecting the floor having the lowest floor signal compensation as the candidate floor.
[00192] Example 21 includes at least one machine readable medium comprising a plurality of instructions that in response to being executed on a computing device, cause the computing device to carry out a method according to any one of examples 15 to 20.
[00193] Example 22 includes a communications device arranged to perform the method of any one of examples 15 to 20.
[00194] Example 23 includes a computer system to perform the method of any of examples 15 to 20.
[00195] Example 24 includes a machine to perform the method of any of examples 15 to 20.
[00196] Example 25 includes an apparatus comprising: means for performing the method of any of examples 15 to 20.
[00197] Example 26 includes an apparatus to determine a floor of a building on which a device is located, configured to perform the method of examples 15 -20.
[00198] Example 27 includes a computing device comprising a chipset according to any one of the examples 15-20 and memory to determine a floor of a building on which a device is located. [00199] One or more features disclosed herein may be implemented in, without limitation, circuitry, a machine, a computer system, a processor and memory, a computer program encoded within a computer -readable medium, and/or combinations thereof. Circuitry may include discrete and/or integrated circuitry, application specific integrated circuitry (ASIC), a system-on-a-chip (SOC), and combinations thereof.
[00200] Methods and systems are disclosed herein with the aid of functional building blocks illustrating functions, features, and relationships thereof. At least some of the boundaries of these functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternate boundaries may be defined so long as the specified functions and relationships thereof are appropriately performed. While various embodiments are disclosed herein, it should be understood that they are presented as examples. The scope of the claims should not be limited by any of the example embodiments disclosed herein.

Claims

WHAT IS CLAIMED IS:
1. A non-transitory computer-readable medium encoded with a computer program to determine a current floor on which a device is located in a multiple floor building, including instructions to cause a processor to: store an indication of the current floor of the building on which the device is located; access measured signal strengths of signals received at the device from transmitters having known locations on the floors of the building; select one of the multiple floors as a candidate floor based in part on the measured signal strengths; increase a confidence level associated with the indication of the current floor if the candidate floor corresponds to the current floor; decrease the confidence level if the candidate floor does not correspond to the current floor; and replace the indication of the current floor with the candidate floor if the confidence level is below a threshold.
2. The non-transitory computer-readable medium of claim 1, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to: determine a location of the device on the candidate floor based in part on the
measured signal strengths; decrease the confidence level by a first amount if the location is within a
predetermined distance of a known access way of the candidate floor; and decrease the confidence level by a second amount that is less than the first amount if the location is not within the predetermined distance of the known access.
3. The non-transitory computer-readable medium of claim 2, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to, after the confidence level is decreased by one of the first and second amounts: replace the indication of the current floor with the candidate floor if the confidence level is below the threshold.
4. The non-transitory computer-readable medium of claim 3, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to, after the confidence level is decreased by one of the first and second amounts: set the confidence level equal to the threshold if the confidence level is below the threshold and the location coincides with the access way.
5. The non-transitory computer-readable medium of claim 1, wherein the instructions to cause the processor to select further include instructions to cause the processor to: assign weights to the transmitters based on the measured signal strength
corresponding to each of the transmitters; compute a floor weight corresponding to each floor as a sum of the weights assigned to the transmitters located on the given floor; and select the floor having the greatest floor weight as the candidate floor.
6. The non-transitory computer-readable medium of claim 1, wherein the instructions to cause the processor to decrease further include instructions to cause the processor to: calculate a signal compensation for each of the transmitters based on (i) a possible spatial distance between the device and the given transmitter, and (ii) a path loss between from the device and the given transmitter; calculate a floor signal compensation for each floor based on the signal compensation of the transmitters corresponding to the given floor; and select the floor having the lowest floor signal compensation as the candidate floor.
7. An apparatus, comprising: a processor and memory configured to: store an indication of a current floor of a multiple floor building on which the apparatus is located; access measured signal strengths of signals received at the apparatus from transmitters having known locations on the floors of the building; select one of the multiple floors as a candidate floor based in part on the measured signal strengths; increase a confidence level associated with the indication of the current floor if the candidate floor corresponds to the current floor; decrease the confidence level if the candidate floor does not correspond to the current floor; and replace the indication of the current floor with the candidate floor if the confidence level is below a threshold.
8. The apparatus of claim 7, wherein the processor memory configured to decrease are further configured to: determine a location of the apparatus on the candidate floor based in part on the
measured signal strengths; decrease the confidence level by a first amount if the location is within a
predetermined distance of a known access way of the candidate floor; and decrease the confidence level by a second amount that is less than the first amount if the location is not within the predetermined distance of the known access.
9. The apparatus of claim 8, wherein the processor and memory configured decrease are further configured to, after the confidence level is decreased by one of the first and second amounts: replace the indication of the current floor with the candidate floor if the confidence level is below the threshold.
10. The apparatus of claim 9, wherein the processor and memory configured to decrease are further configured, after the confidence level is decreased by one of the first and second amounts: set the confidence level equal to the threshold if the confidence level is below the threshold and the location coincides with the access way.
11. The apparatus of claim 7, wherein the processor and memory configured to select are further configured to: assign weights to the transmitters based on the measured signal strength
corresponding to each of the transmitters; compute a floor weight corresponding to each floor as a sum of the weights assigned to the transmitters located on the given floor; and select the floor having the greatest floor weight as the candidate floor.
12. The apparatus of claim 7, wherein the processor and memory configured to select are further configured to: calculate a signal compensation for each of the transmitters based on (i) a possible spatial distance between the apparatus and the given transmitter, and (ii) a path loss between from the apparatus and the given transmitter; calculate a floor signal compensation for each floor based on the signal compensation of the transmitters corresponding to the given floor; and select the floor having the lowest floor signal compensation as the candidate floor.
13. The apparatus of claim 7, further comprising: a user interface system; and a communication system, including a receiver to receive the signals and measure their signal strengths, to interface with a communication network and one or more of the processor and the user interface system; and a housing to house the processor and memory, the user interface system, and the communication system.
14. The apparatus of claim 13, wherein: the communication system includes a wireless communication system; and the housing includes a mobile hand-held housing to house the processor and memory, the user interface, the communication system, and a battery.
15. A method to determine a current floor on which a device is located in a multiple floor building, comprising: storing an indication of the current floor among the multiple floors on which the
device is located; measuring signal strengths of signals received at the device from transmitters having known locations on the floors of the building; selecting one of the multiple floors as a candidate floor based in part on the measured signal strengths; increasing a confidence level associated with the indication of the current floor if the candidate floor corresponds to the current floor; decreasing the confidence level if the candidate floor does not correspond to the
current floor; and replacing the indication of the current floor with the candidate floor if the confidence level is below a threshold.
16. The method of claim 15, wherein the decreasing includes: determining a location of the device on the candidate floor based in part on the
measured signal strengths; decreasing the confidence level by a first amount if the location is within a
predetermined distance of a known access way of the candidate floor; and decreasing the confidence level by a second amount that is less than the first amount if the location is not within the predetermined distance of the known access.
17. The method of claim 16, wherein the decreasing further includes, after decreasing the confidence level by one of the first and second amounts: replacing the indication of the current floor with the candidate floor if the confidence level is below the threshold.
18. The method of claim 17, wherein the decreasing further includes, after decreasing the confidence level by one of the first and second amounts: setting the confidence level equal to the threshold if the confidence level is below the threshold and the location coincides with the access way.
19. The method of claim 15, wherein the selecting includes: assigning weights to the transmitters based on the measured signal strength
corresponding to each of the transmitters; computing a floor weight corresponding to each floor as a sum of the weights
assigned to the transmitters located on the given floor; and selecting the floor having the greatest floor weight as the candidate floor.
20. The method of claim 15, wherein the selecting includes: computing a signal compensation for each of the transmitters based on (i) a possible spatial distance between the device and the given transmitter, and (ii) a path loss between from the device and the given transmitter; computing a floor signal compensation for each floor based on the signal
compensation of the transmitters corresponding to the given floor; and selecting the floor having the lowest floor signal compensation as the candidate floor.
21. At least one machine readable medium comprising a plurality of instructions that in response to being executed on a computing device, cause the computing device to carry out a method according to any one of claims 15 to 20.
22. A communications device arranged to perform the method of any one of claims 15 to 20.
23. A computer system to perform the method of any of claims 15 to 20.
24. A machine to perform the method of any of claims 15 to 20.
25. An apparatus comprising: means for performing the method of any of claims 15 to 20.
26. An apparatus to determine a floor of a building on which a device is located,
configured to perform the method of claims 15-20.
27. A computing device comprising a chipset according to any one of the claims 15-20 and memory to determine a floor of a building on which a device is located.
PCT/CN2013/072885 2013-03-19 2013-03-19 Building floor determination for a location based service Ceased WO2014146255A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US13/997,572 US9485626B2 (en) 2013-03-19 2013-03-19 Building floor determination for a location based service
PCT/CN2013/072885 WO2014146255A1 (en) 2013-03-19 2013-03-19 Building floor determination for a location based service
KR1020157022313A KR101691905B1 (en) 2013-03-19 2013-03-19 Building floor determination for a location based service
EP13879133.0A EP2976900B1 (en) 2013-03-19 2013-03-19 Building floor determination for a location based service
CN201380073330.7A CN104995930B (en) 2013-03-19 2013-03-19 It is determined for the building floor based on location-based service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/072885 WO2014146255A1 (en) 2013-03-19 2013-03-19 Building floor determination for a location based service

Publications (1)

Publication Number Publication Date
WO2014146255A1 true WO2014146255A1 (en) 2014-09-25

Family

ID=51579277

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/072885 Ceased WO2014146255A1 (en) 2013-03-19 2013-03-19 Building floor determination for a location based service

Country Status (5)

Country Link
US (1) US9485626B2 (en)
EP (1) EP2976900B1 (en)
KR (1) KR101691905B1 (en)
CN (1) CN104995930B (en)
WO (1) WO2014146255A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3244668A4 (en) * 2015-01-31 2018-02-07 Huawei Technologies Co. Ltd. Method of locating wireless access point and device utilizing same

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200137524A1 (en) * 2018-10-26 2020-04-30 Enseo, Inc. Geolocationing System and Method for Use of Same
US9894502B2 (en) * 2014-05-21 2018-02-13 Verizon Patent And Licensing Inc. Floor identification for emergency calls
US9730013B2 (en) * 2014-10-31 2017-08-08 Hsiao-Tse Chang Method, recording medium and electronic device of 3D geolocation
KR20160059074A (en) * 2014-11-17 2016-05-26 한국전자통신연구원 Apparatus and method for controlling transmit power
US9843905B1 (en) * 2016-09-08 2017-12-12 Here Global B.V. Floor detection based on determined floor detection parameters
JP6467387B2 (en) * 2016-09-14 2019-02-13 矢崎総業株式会社 Electrical unit
US10827311B2 (en) 2018-10-26 2020-11-03 Enseo, Inc. Geolocationing system and method for use of same
US10827219B2 (en) 2018-10-26 2020-11-03 Enseo, Inc. Geolocationing system and method for use of same
US11877207B2 (en) 2019-07-28 2024-01-16 Polaris Wireless, Inc. Estimating the location of a reference radio and using the estimated location of the reference radio to estimate the location of a wireless terminal
US12066344B2 (en) 2020-06-19 2024-08-20 Apple Inc. Location of interest altitude and determining calibration points
US11690041B2 (en) 2020-06-19 2023-06-27 Apple Inc. Wi-Fi Z-axis positioning
US11941327B2 (en) * 2020-09-14 2024-03-26 Autodesk, Inc. Customizable reinforcement learning of column placement in structural design
US12429334B1 (en) 2024-05-15 2025-09-30 Cary N. Davids System and method for determining vertical position in multi-floor building

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090067392A1 (en) * 2007-09-07 2009-03-12 Brian Donald Hart Floor determination for a wireless device
CN102791025A (en) * 2011-05-20 2012-11-21 盛乐信息技术(上海)有限公司 Wireless fidelity (WIFI) based layered positioning system and implementing method
CN102972072A (en) * 2010-05-06 2013-03-13 Sk电信有限公司 Location positioning method and device using wireless LAN signal

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7272394B2 (en) * 2004-02-11 2007-09-18 Avaya Technology Corp. Location estimation of wireless terminals in a multi-story environment
US7205938B2 (en) 2004-03-05 2007-04-17 Airespace, Inc. Wireless node location mechanism responsive to observed propagation characteristics of wireless network infrastructure signals
US7697893B2 (en) * 2004-06-18 2010-04-13 Nokia Corporation Techniques for ad-hoc mesh networking
WO2006012554A2 (en) * 2004-07-23 2006-02-02 Wireless Valley Communications, Inc. System, method, and apparatus for determining and using the position of wireless devices or infrastructure for wireless network enhancements
KR100703726B1 (en) * 2004-12-11 2007-04-05 삼성전자주식회사 Neighbor Node Management and Routing Path Setup in Mobile Ad Hoc Network Environment and Network Device Using the Same
EP2050286B1 (en) * 2006-07-31 2018-09-05 Mitel Networks, Inc. System to facilitate handover
CN101001432A (en) 2007-01-05 2007-07-18 华为技术有限公司 Method and mobile terminal of prompting radio signal
CN101242624A (en) 2007-02-09 2008-08-13 中兴通讯股份有限公司 A Method for Locating Coverage Blind Areas of WCDMA System
CN101631349B (en) 2008-07-14 2011-08-31 中国移动通信集团设计院有限公司 Method, device and wireless operation maintenance center for positioning terminal
CN101466070A (en) 2009-01-09 2009-06-24 吴鑫 Wireless indoor orientation method based on automatic learning of wireless signal acceptance strength distribution
CN102571389B (en) 2010-12-16 2015-07-01 中国移动通信集团河北有限公司 Method for determining communication blind spot and GIS (Geographic Information System)
CN102170697B (en) 2011-04-06 2014-09-17 北京邮电大学 Indoor positioning method and device
US8700054B2 (en) * 2011-06-10 2014-04-15 Google Inc. Prediction of indoor level and location using a three stage process
CN102420730B (en) * 2011-11-14 2014-06-18 无锡南理工科技发展有限公司 Safety topology construction method of high-speed mobile node
US8385943B1 (en) * 2012-05-02 2013-02-26 YFIND Technologies Pte. Ltd. Method and apparatus for determining location information of a position in a multi-storey building
CN102821356A (en) 2012-08-31 2012-12-12 李友林 Device and method for positioning cellphones on basis of various information aggregation
US9031574B2 (en) 2012-10-12 2015-05-12 Intel Corporation Location estimation based on adjusted distance values for a wireless device
EP2830240B1 (en) * 2013-07-26 2015-10-21 Telefonaktiebolaget L M Ericsson (Publ) Selection of a radio cell sector

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090067392A1 (en) * 2007-09-07 2009-03-12 Brian Donald Hart Floor determination for a wireless device
CN102972072A (en) * 2010-05-06 2013-03-13 Sk电信有限公司 Location positioning method and device using wireless LAN signal
CN102791025A (en) * 2011-05-20 2012-11-21 盛乐信息技术(上海)有限公司 Wireless fidelity (WIFI) based layered positioning system and implementing method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2976900A4 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3244668A4 (en) * 2015-01-31 2018-02-07 Huawei Technologies Co. Ltd. Method of locating wireless access point and device utilizing same
US10215838B2 (en) 2015-01-31 2019-02-26 Huawei Technologies Co., Ltd Method and apparatus for locating wireless access point

Also Published As

Publication number Publication date
CN104995930A (en) 2015-10-21
US9485626B2 (en) 2016-11-01
KR101691905B1 (en) 2017-01-02
EP2976900A4 (en) 2016-11-09
CN104995930B (en) 2019-07-16
KR20150108399A (en) 2015-09-25
EP2976900A1 (en) 2016-01-27
US20160037305A1 (en) 2016-02-04
EP2976900B1 (en) 2019-05-15

Similar Documents

Publication Publication Date Title
US9485626B2 (en) Building floor determination for a location based service
US9602960B2 (en) Positioning method
US9560622B2 (en) Indoor positioning in the presence of dynamic transmission power control access points
EP2832162B1 (en) Locating a mobile device
AU2015219463B2 (en) Localization of a wireless user equipment device in a target zone
CN103809153B (en) Method and system for accurate straight line distance estimation between two communication devices
CN111818634B (en) Positioning method, positioning platform and user terminal in 5G scene
Obreja et al. Evaluation of an indoor localization solution based on bluetooth low energy beacons
US20140243011A1 (en) Location estimation based on adjusted distance values for a wireless device
US9699757B2 (en) Small cell assisted location identification for a user device
CN111148217B (en) Positioning method and device and electronic equipment
CN102640011A (en) Estimating user device location in a wireless network
US20150133150A1 (en) Apparatus for determining indoor location and method for determining indoor location in multi-story building using the same
EP3293483B1 (en) Improved floor detection based on determined floor detection parameters
JP2011203000A (en) System, device, and program for estimating position
KR102204739B1 (en) Apparatus and method for indoor positioning
KR102281307B1 (en) A Method and Apparatus for Dual Beacon Positioning
WO2016193985A1 (en) Apparatus and method for assessing a relative distance of persons and objects
CN118201072A (en) Positioning method and device based on wireless network, electronic equipment and medium

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 13997572

Country of ref document: US

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13879133

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20157022313

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2013879133

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE