US8089371B2 - Logical floor determination for a wireless device using weighted AP received signal strengths - Google Patents

Logical floor determination for a wireless device using weighted AP received signal strengths Download PDF

Info

Publication number
US8089371B2
US8089371B2 US12/182,563 US18256308A US8089371B2 US 8089371 B2 US8089371 B2 US 8089371B2 US 18256308 A US18256308 A US 18256308A US 8089371 B2 US8089371 B2 US 8089371B2
Authority
US
United States
Prior art keywords
signal strength
strength values
values
floor
weighting
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.)
Active, expires
Application number
US12/182,563
Other versions
US20100026513A1 (en
Inventor
Santosh G. PANDEY
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cisco Technology Inc filed Critical Cisco Technology Inc
Priority to US12/182,563 priority Critical patent/US8089371B2/en
Assigned to CISCO TECHNOLOGY, INC. reassignment CISCO TECHNOLOGY, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: PANDEY, SANTOSH G.
Publication of US20100026513A1 publication Critical patent/US20100026513A1/en
Priority to US13/267,422 priority patent/US8169300B2/en
Application granted granted Critical
Publication of US8089371B2 publication Critical patent/US8089371B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/0008General problems related to the reading of electronic memory record carriers, independent of its reading method, e.g. power transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10009Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
    • G06K7/10019Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves resolving collision on the communication channels between simultaneously or concurrently interrogated record carriers.
    • G06K7/10079Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves resolving collision on the communication channels between simultaneously or concurrently interrogated record carriers. the collision being resolved in the spatial domain, e.g. temporary shields for blindfolding the interrogator in specific directions
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B21/00Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
    • G08B21/02Alarms for ensuring the safety of persons
    • G08B21/0202Child monitoring systems using a transmitter-receiver system carried by the parent and the child
    • G08B21/0241Data exchange details, e.g. data protocol
    • G08B21/0247System arrangements wherein the alarm criteria uses signal strength
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B21/00Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
    • G08B21/02Alarms for ensuring the safety of persons
    • G08B21/0202Child monitoring systems using a transmitter-receiver system carried by the parent and the child
    • G08B21/0275Electronic Article Surveillance [EAS] tag technology used for parent or child unit, e.g. same transmission technology, magnetic tag, RF tag, RFID

Definitions

  • This application is generally related to determining the location of a wireless device.
  • Wireless asset detection and tracking systems are increasing in prevalence as wireless systems are incorporated in buildings and other areas such as Internet kiosks and lounges. Additionally, radio-frequency identification (RFID) tags have been in use for many years for tracking assets, such as in shipping yards and facilities and in consumer outlets for inventory and theft management.
  • RFID radio-frequency identification
  • Received access point (AP) signal strength metrics can be used to estimate the location of the devices within the regions of interest.
  • the AP signal strength metrics collected and used by various locating algorithms may cause processing delays, incorrect results, or require the installation of additional devices at entry/exit points.
  • FIG. 1 is a block diagram illustrating an apparatus configured in accordance with an example embodiment.
  • FIG. 2 is a more detailed block diagram of the apparatus shown in FIG. 1 .
  • FIG. 3 is a block diagram of a computer system for implementing an example embodiment.
  • FIG. 4 illustrates an example of a network implementing floor determination.
  • FIG. 5 illustrates an example methodology for determining the floor a client is on based on adjusted RSSI values.
  • a wireless device locating apparatus comprising a communication interface and determination logic.
  • the communication interface is configured to receive signal strength values including a first set of signal strength values for a wireless device detected at a first plurality of radio receivers disposed in a first region and a second set of signal strength values for the wireless device detected at a second plurality of radio receivers disposed in a second region.
  • the determination logic is operatively connected with the communication interface and is configured to determine a region that the wireless device is located.
  • the determination logic includes a first weighting portion, a first summing portion, and an identifying portion.
  • the first weighting portion selectively weights the signal strength values of the first set of signal strength values with at least two different weight values as a first set of weighted signal strength values, and selectively weights the signal strength values of the second set of signal strength values with at least two different weight values as a second set of weighted signal strength values.
  • the first summing portion sums the first set of weighted signal strength values as a first sum, and sums the second set of weighted signal strength values as a second sum.
  • the identifying portion identifies the region that the wireless device is located by a comparison of the first sum with the second sum. Preferably, the logical floor having the highest sum is determined to be the floor the wireless device is on.
  • the determination logic includes a sorting portion sorting the signal strength values of the first set of signal strength values as a first set of sorted signal strength values and sorting the signal strength values of the second set of signal strength values as a second set of sorted signal strength values.
  • the first weighting portion is configured to selectively weight the signal strength values of the first and second sets of sorted signal strength values by applying, respectively, a first set of predetermined weights having at least two different weight values against the first set of sorted signal strength values as the first set of weighted signal strength values and a second set of predetermined weights having at least two different weight values against the second set of sorted signal strength values as the second set of weighted signal strength values.
  • a method of locating a wireless device comprising receiving signal strength values including a first set of signal strength values for a wireless device detected at a first plurality of radio receivers disposed in a first region and a second set of signal strength values for the wireless device detected at a second plurality of radio receivers disposed in a second region, and determining a region that the wireless device is located.
  • the determining includes selectively weighting the signal strength values of the first set of signal strength values with at least two different weight values as a first set of weighted signal strength values, and selectively weighting the signal strength values of the second set of signal strength values with at least two different weight values as a second set of weighted signal strength values, summing the first and second sets of weighted signal strength values as a first and second sum, respectively, and identifying the region that the wireless device is located by a comparison of the first sum with the second sum.
  • the logical floor having the highest sum is determined to be the floor the wireless device is on.
  • the determining includes sorting the signal strength values of the first set of signal strength values as a first set of sorted signal strength values and sorting the signal strength values of the second set of signal strength values as a second set of sorted signal strength values
  • the weighting includes selectively weighting the signal strength values of the first and second sets of sorted signal strength values by applying, respectively, a first set of predetermined weights having at least two different weight values against the first set of sorted signal strength values as the first set of weighted signal strength values and a second set of predetermined weights having at least two different weight values against the second set of sorted signal strength values as the second set of weighted signal strength values.
  • the determining includes selectively sorting and weighting the RSSI only when a difference between of the summed adjusted RSSIs of floors having the first and second highest sums are within a predetermined threshold.
  • the adjusting includes adding a predetermined adjustment value to each of the AP RSSI values.
  • the weighting includes multiplying each of the AP RSSI values with at least two different predetermined weighting values.
  • a method of locating an associated wireless device includes receiving signal strength values including a first set of signal strength values for an associated wireless device detected at a first plurality of radio receivers disposed in a first region and a second set of signal strength values for the associated wireless device detected at a second plurality of radio receivers disposed in a second region; and, determining a region that the associated wireless device is located by: comparing the first set of signal strength values with the second set of signal strength values; and based on a result of the comparing, identifying the region that the associated wireless device is located by i) a first manipulation of the first and second sets of signal strength values or ii) a second manipulation of the first and second sets of signal strength values different than the first manipulation, the first manipulation including a weighting of the first and second sets of signal strength values and the second manipulation including an adjusting of the first and second sets of signal strength values.
  • FIG. 1 is a block diagram illustrating a floor determination apparatus 10 configured in accordance with an example embodiment.
  • Apparatus 10 comprises a communication interface 12 with a communication link 14 configured to be coupled to a network (not shown) that spans multiple physical and/or logical floors or any other desired or selected region, space or area.
  • Communication link can be a wired link (e.g. a coaxial cable, cat. 5 link, etc.) or a wireless (e.g. RF, IR, etc.) connection.
  • Communication interface 12 receives data from a plurality of access points (APs). The received data includes Received Signal Strength Indicator (RSSI) data of signals received from a wireless device (which may be is referred to herein as a ‘wireless client’ or ‘client’).
  • RSSI Received Signal Strength Indicator
  • Floor determination logic 16 is in data communication with communication interface 12 .
  • Floor determination logic is configured to receive RSSI data from communication interface 12 and perform an algorithm for determining the floor the client is on.
  • “Logic” and “signal” as used herein includes but is not limited to hardware, firmware, software and/or combinations of each to perform a function(s) or an action(s), and/or to cause a function or action from another component.
  • signals may be based in hardware or software and logic may include a software controlled microprocessor, discrete logic such as an application specific integrated circuit (ASIC), a programmable/programmed logic device, memory device containing instructions, or the like, or combinational logic embodied in hardware.
  • Logic may also be fully embodied as software that can be executed by a processor and signal may be software code, software steps, and/or data stored in memory.
  • floor determination apparatus 10 is configured to determine the floor a wireless device is on, floor determination apparatus may also be configured with additional logic for determining the location of the wireless device on or within the floor or within any other area or space (logical floor) as well.
  • floor determination apparatus 10 may be co-located with another device, such as a server (e.g. an Authentication, Authorization and Accounting ‘AAA’ server, location determination server) or any other type of network device such as a wireless domain controller (WDS) or access point (AP).
  • a server e.g. an Authentication, Authorization and Accounting ‘AAA’ server, location determination server
  • WDS wireless domain controller
  • AP access point
  • the AP weights can be changed on a case by case basis to adjust for applications, constraints and circumstances.
  • interfloor wireless device locating scheme improvement is realized when the second strongest AP is weighted higher than the others in a given logical floor.
  • floor determination logic 16 determines which floor the wireless device is on by selectively weighting the RSSIs and summing, for each logical floor, the weighted RSSIs received by each AP. The floor having the highest sum is then selected as the floor where the wireless device is located.
  • the RSSI are first sorted before they are weighted. Preferably then, the second strongest AP is weighted higher than the remaining APs for each given floor. This enables the outliers noted above to be addressed and their influences appropriately suppressed or muted. This is especially useful for use of the subject floor determination system and method in structures or areas where incorrect floor estimations are likely to occur.
  • the RSSIs received by each AP are selectively weighted as noted above, selectively sorted and weighted, selectively adjusted and weighted, and selectively adjusted, sorted, and weighted in the several example embodiments set out herein.
  • the RSSI are selectively sorted and weighted only when a difference between the summed adjusted RSSIs of adjacent floors having the first and second highest sums are within a predetermined threshold.
  • the adjusting includes adding a predetermined adjustment value to each of the AP RSSI values.
  • the weighting includes multiplying each of the AP RSSI values with at least two different predetermined weighting values.
  • a wireless device locating method and apparatus for determining a logical floor that the wireless device is located at by weighting the unadjusted or “raw” AP signal strength values AP ij directly with a set of weights wt_i for the non-sorted AP RSSI list, summing them, and choosing a logical floor according to:
  • the set of weights wt_i may be a predefined set of fixed values such as 0.5, 1.0, 0.5, 0.5, 0.5, etc., or the set of weights wt_i may be adjusted or variable based on the AP RSSI values such as, for example:
  • a wireless device locating method and apparatus for determining a logical floor that the wireless device is located at by first sorting the unadjusted or “raw” AP signal strength values AP ij then weighting the sorted AP signal strength values using predetermined weights wt_sort_i for the sorted AP RSSI list, summing them, and choosing a logical floor according to:
  • the set of weights wt_sort_i may be a predefined set of fixed values such as 0.5, 1.0, 0.5, 0.5, 0.5, etc., or the set of weights wt_sort_i may be adjusted or variable based on the AP RSSI values such as, for example:
  • a wireless device locating method and apparatus for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
  • a wireless device locating method and apparatus for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
  • X′ may be the same as or different from X as necessary or desired by the user of the system.
  • a wireless device locating method and apparatus for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
  • a wireless device locating method and apparatus for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
  • the communication interface 12 of the floor determination apparatus 10 of the example embodiment is configured to receive signal strength values AP ij including a first set of signal strength values AP i1 for a wireless device detected at a first plurality of radio receivers disposed in a first logical floor, a second set of signal strength values AP i2 for a wireless device detected at a second plurality of radio receivers disposed in a second logical floor, . . . , and an M th set of signal strength values AP iM for a wireless device detected at an M th plurality of radio receivers disposed in an M th logical floor.
  • the determination logic 16 of the example embodiment includes a first adjusting and weighting portion 100 , a first summing portion 102 , an identifying portion 104 identifying the region that the wireless device is located, and having a first memory 140 storing weights wt_i to be selectively applied to the non-sorted AP RSSI list, a second memory 141 storing weights wt_sort_i to be selectively applied to the sorted AP RSSI list, and a third memory 142 storing adjustment values X, X′ to be applied to the raw AP signal strength values, such as by adding X to the raw AP values. It is to be appreciated that X may be selected to be or take on a null or 0 value as necessary or desired by the user of the system.
  • N 2 number of APs on 2 nd logical floor that report RSSI
  • N 2 number of APs on 2 nd logical floor that report RSSI
  • N M number of APs on M th logical floor that report RSSI
  • the weighting values wt_i are stored and retrieved from the memory 140 and the adjustment value X is stored and retrieved from the memory 142 .
  • the adjusting and weighting portion 100 , the summing portion 102 , and the identifying portion 104 collectively identify the region that the wireless device is located by:
  • the first adjusting and weighting portion 100 is configured to selectively adjusts and selectively weight the sorted signal strength values of the first through M th sets of signal strength values by applying, respectively, an adjustment value X and a first set of predetermined weights having at least two different weight values against the first set of sorted signal strength values as the first set of weighted signal strength values, applying an adjustment value X and a second set of predetermined weights having at least two different weight values against the second set of sorted signal strength values as the second set of weighted signal strength values, and applying an adjustment value X and an Mth set of predetermined weights having at least two different weight values against the M th set of sorted signal strength values as the Mth set of weighted signal strength values.
  • the identifying portion 104 identifies the region that the wireless device is located by a comparison of the first through M th sums as Chosen_Floor_ 1 .
  • N 2 number of APs on 2 nd logical floor that report RSSI
  • N 2 number of APs on 2 nd logical floor that report RSSI
  • wt_sort_i*(X+AP i2 ) a second set of weighted signal strength values
  • wt_sort_i*(X+AP i2 ) . . .
  • selectively adjusts and selectively weights the signal strength values AP ij of the M th set of signal strength values A iM for i 1, . . . , N M (N M number of APs on M th logical floor that report RSSI) with an adjustment value and with at least two different weight values as an M th set of weighted signal strength values (wt_sort_i*(X+AP iM )).
  • the determination logic 16 of the communication interface 12 of the floor determination apparatus 10 of the example embodiment includes an adjusting portion 120 , a second summing portion 122 , and a determining portion 124 .
  • the adjusting portion 120 adjusts the signal strength values AP ij with a constant adjustment value X for scaling purposes.
  • the second summing portion 122 sums the sets of adjusted signal strength values.
  • the determining portion 124 generates a weighting signal 128 to selectively weight (rather than simply adjust) the signal strength values of the first through Mth sets of signal strength values when a difference between the first and second highest calculated floor weights W j values is less than a predetermined threshold value “threshold”.
  • the adjusting includes adding a predetermined adjustment value to each of the AP RSSI values.
  • the weighting includes multiplying each of the AP RSSI values with at least two different predetermined weighting values.
  • the first adjusting and weighting portion 100 is responsive to the signal 128 from the determining portion 124 to weight the signal strength values of the first through Mth sets of signal strength values as said first and second sets of weighted signal strength values respectively when said weighting signal 128 is generated.
  • the first summing portion 102 is responsive to the signal 128 from the determining portion 124 to sum the first through M th sets of weighted signal strength values as the first and second sums respectively when the weighting signal 128 is generated.
  • a selection circuit 132 is responsive to the determining portion to i) identify the region that the wireless device is located by a comparison of the first through M th weighted sums when the weighting signal 128 is generated, and ii) identify the region that the wireless device is located by a comparison of the first through M th adjusted sums when the weighting signal 128 is not generated. That is, Chosen_Floor_ 1 is selected as the output of the system 10 when the weighting signal 128 is generated and Chosen_Floor_ 2 is selected as the output of the system 10 when the weighting signal 128 is not generated.
  • the determination logic 16 is configured to determine a logical floor at which the wireless device is located by discriminating between an algorithm using adjusted signal strength values and an algorithm using selectively sorted and weighted signal strength values according to:
  • the adjusted AP RSSI values are selectively replaced with weighted AP RSSI values when a magnitude of a difference between the first and second signal strengths for a given floor is small and, in particular, when the magnitude of the difference is less than the predetermined threshold.
  • the strongest APs are usually outliers when an incorrect floor is estimated.
  • By selectively weighting the APs incorrect floor estimations can be reduced.
  • By selectively sorting then weighting the APs incorrect floor estimations can further be reduced.
  • the AP weights may be, 0.5, 1.0, 0.5, 0.5, 0.5, etc.
  • other sets of AP weight values may be used to realize favorable results and as may be desired or necessary to adjust for physical or electromagnetic characteristics of the application such as when the wireless device is to be located in a building having an atrium, for example or in applications where the radio receivers have different gain and/or other performance characteristics.
  • the set of weights may be a predefined set of fixed values or they may be adjusted or variable based on the AP RSSI values.
  • first, second, and third memories 140 , 141 , and 142 are provided in the apparatus 10 .
  • the memories 140 , 141 , and 142 are operatively connected with the communication interface and the determination logic, the memory being configured to store the first and second sets of predetermined weight values and adjustment values, respectively.
  • a user interface 144 is operatively connected with the communication interface, the determination logic, and the memory. The user interface provides a means for enabling a user of the wireless device locating apparatus to selectively modify the first, second, and M th sets of predetermined adjustment values and weight values.
  • a database 146 is included in the system for storing and manipulating the predetermined weights and for collecting and storing various operational, performance, and other data.
  • additional example embodiments include extensions of the single dimensional cases described above into two or more dimensions.
  • one dimension includes a time dimension. That is, the various adjustment values and/or weight values are time dependent.
  • the weights for the sorted and/or unsorted AP RSSI lists may be selected based on logical floor wherein wt_ij are the weights for weighting the unsorted AP RSSI list for the j th floor and wt_sort_ij are the weights for weighting the sorted AP RSSI list for the j th floor.
  • a wireless device locating method and apparatus for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
  • a wireless device locating method and apparatus for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
  • a wireless device locating method and apparatus for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
  • FIG. 3 is a block diagram of a computer system 200 for implementing an example embodiment.
  • Computer system 200 is suitably adapted for implementing floor determination apparatus 10 ( FIG. 1 ).
  • Computer system 200 includes a bus 202 or other communication mechanism for communicating information and a processor 204 coupled with bus 202 for processing information.
  • Computer system 200 also includes a main memory 206 , such as random access memory (RAM) or other dynamic storage device coupled to bus 202 for storing information and instructions to be executed by processor 204 .
  • Main memory 206 also may be used for storing a temporary variable or other intermediate information during execution of instructions to be executed by processor 204 .
  • Computer system 200 further includes a read only memory (ROM) 208 or other static storage device coupled to bus 202 for storing static information and instructions for processor 204 .
  • a storage device 210 such as a magnetic disk or optical disk, is provided and coupled to bus 202 for storing information and instructions.
  • An aspect of the invention is related to the use of computer system 200 for floor determination of a wireless device.
  • floor determination of a wireless device is provided by computer system 200 in response to processor 204 executing one or more sequences of one or more instructions contained in main memory 206 .
  • Such instructions may be read into main memory 206 from another computer-readable medium, such as storage device 210 .
  • Execution of the sequence of instructions contained in main memory 206 causes processor 204 to perform the process steps described herein.
  • processors in a multi-processing arrangement may also be employed to execute the sequences of instructions contained in main memory 206 .
  • hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention.
  • embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
  • Non-volatile media include for example optical or magnetic disks, such as storage device 210 .
  • Volatile media include dynamic memory such as main memory 206 .
  • Transmission media include coaxial cables, copper wire and fiber optics, including the wires that comprise bus 202 . Transmission media can also take the form of acoustic or light waves such as those generated during radio frequency (RF) and infrared (IR) data communications.
  • RF radio frequency
  • IR infrared
  • Computer-readable media include for example floppy disk, a flexible disk, hard disk, magnetic cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASHPROM, CD, DVD or any other memory chip or cartridge, or any other medium from which a computer can read.
  • Various forms of computer-readable media may be involved in carrying one or more sequences of one or more instructions to processor 204 for execution.
  • the instructions may initially be borne on a magnetic disk of a remote computer.
  • the remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem.
  • a modem local to computer system 200 can receive the data on the telephone line and use an infrared transmitter to convert the data to an infrared signal.
  • An infrared detector coupled to bus 202 can receive the data carried in the infrared signal and place the data on bus 202 .
  • Bus 202 carries the data to main memory 206 from which processor 204 retrieves and executes the instructions.
  • the instructions received by main memory 206 may optionally be stored on storage device 210 either before or after execution by processor 204 .
  • Computer system 200 also includes a communication interface 218 coupled to bus 202 .
  • Communication interface 218 provides a two-way data communication coupling to a network link 220 that is connected to a network 222 .
  • network link 220 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN.
  • LAN local area network
  • Wireless links may also be implemented.
  • communication interface 218 sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information.
  • Network link 220 typically provides data communication through one or more networks to other data devices, such as APs.
  • network link 220 may provide a connection through network 222 to the Internet.
  • Networks 222 and the Internet 228 may use electrical, electromagnetic, or optical signals that carry the digital data to and from computer system 200 , which are exemplary forms of carrier waves transporting the information.
  • Computer system 200 can send messages and receive data, including program codes, through the network(s), network link 220 , and communication interface 218 .
  • a server (not shown) might transmit a requested code for an application program through the Internet to network 222 , and communication interface 218 .
  • one such downloaded application provides for floor determination of a wireless device as described herein.
  • the received code may be executed by processor 204 as it is received, and/or stored in storage device 210 , or other non-volatile storage for later execution. In this manner, computer system 200 may obtain application code in the form of a carrier wave.
  • FIG. 4 illustrates an example of a network 300 implementing floor determination.
  • network 300 includes four floors 310 , 320 , 330 , 340 .
  • Floor 310 comprises access points 312 , 314 .
  • Floor 320 comprises access points 322 , 324 .
  • Floor 330 comprises access points 332 , 334 .
  • Floor 340 comprises access points 342 , 344 .
  • Access points 312 , 314 , 322 , 324 , 332 , 334 , 342 , 344 are in data communication with floor determination apparatus 10 .
  • wireless device 18 transmits, access points 312 , 314 , 322 , 324 , 332 , 334 , 342 , 344 send RSSI data to floor determination apparatus 10 .
  • an AP that does not receive a signal from device 18 does not send RSSI data to floor determination apparatus 10 , in which case floor determination apparatus can use this missing RSSI in the probability calculations in a way that tends to exclude nearby regions.
  • access points 312 , 314 , 322 , 324 , 332 , 334 , 342 , 344 also send AP-AP RSSI data to floor determination server 10 .
  • AP 312 can send the RSSI data for signals received from APs 314 , 322 , 324 , 332 , 334 , 342 , 344 .
  • This RSSI data may be corrected (by removing the effects of different antenna gains and/or different transmit powers) so the RSSI data is closer to an RSSI from a client under or nearby AP 312 to APs 314 - 344 .
  • floor determination apparatus 10 can determine the floor (floor 330 in the example illustrated in FIG. 3 ) that the associated wireless device 18 is on.
  • network 300 illustrates a selected number of floors and APs on each floor, those skilled in the art should readily appreciate that the number of floors and/or APs on the floors can be any physically realizable number.
  • the number of floors and APs selected for network 300 were merely selected for ease of illustration and should no way be construed as limiting the number of floors or APs that the apparatuses or methods described herein are capable of handling.
  • FIG. 5 illustrates an example methodology 400 for determining the floor a client is on based on selectively weighted RSSI values.
  • AP signals are received at step 402 and they are weighted, summed, and thereafter a floor of the wireless device is determined at step 404 .
  • AP signals are received at step 402 , they are adjusted and sorted at step 406 , and they are weighted 410 , summed 412 , and thereafter a floor of the wireless device is determined 414 in step 404 .
  • AP signals are received at step 402 , they are summed 420 and a threshold determination 422 is made in step 408 , the signals are sorted at step 406 , and they are weighted, summed, and thereafter a floor of the wireless device is determined at step 404 .
  • step 408 is not executed in the embodiment where the method locates the wireless device according to:
  • each of the sorting 406 and threshold determining 408 steps are illustrated in the linear flow to facilitate easier description of the example embodiments.

Abstract

An apparatus configured to acquire received signal strength intensities (RSSIs) for a wireless device from a plurality of access points (APs) located on a plurality logical floors. The apparatus is configured to determine which logical floor the wireless device is on by analyzing the RSSIs. The RSSIs for each floor are adjusted with an adjustment value and are selectively weighted with at least two different weight values, and the adjusted and weighted RSSIs for each floor are each summed. The floor with highest sum of adjusted or weighted RSSIs is determined to be the floor the wireless device is on. The logical floor is further determined by sorting the RSSIs for each floor and then weighting the sorted RSSIs with the different weight values. The sorted and weighted RSSIs for each floor are summed. The floor with highest sum of weighted sorted RSSIs is determined to be the floor the wireless device is on.

Description

TECHNICAL FIELD
This application is generally related to determining the location of a wireless device.
BACKGROUND
Wireless asset detection and tracking systems are increasing in prevalence as wireless systems are incorporated in buildings and other areas such as Internet kiosks and lounges. Additionally, radio-frequency identification (RFID) tags have been in use for many years for tracking assets, such as in shipping yards and facilities and in consumer outlets for inventory and theft management.
In many multi-floor deployments or in large areas it is often difficult to determine the location of client wireless devices. Received access point (AP) signal strength metrics can be used to estimate the location of the devices within the regions of interest. However, in some applications such as in deployments of devices in buildings with atriums or other unique structures or features, the AP signal strength metrics collected and used by various locating algorithms may cause processing delays, incorrect results, or require the installation of additional devices at entry/exit points.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings incorporated herein and forming a part of the specification, illustrate examples of the present invention, and together with the description serve to explain the principles of the invention.
FIG. 1 is a block diagram illustrating an apparatus configured in accordance with an example embodiment.
FIG. 2 is a more detailed block diagram of the apparatus shown in FIG. 1.
FIG. 3 is a block diagram of a computer system for implementing an example embodiment.
FIG. 4 illustrates an example of a network implementing floor determination.
FIG. 5 illustrates an example methodology for determining the floor a client is on based on adjusted RSSI values.
OVERVIEW OF EXAMPLE EMBODIMENTS
The following presents a simplified summary of the example embodiments in order to provide a basic understanding of some aspects of the example embodiments. This summary is not an extensive overview of the example embodiments. It is intended to neither identify key or critical elements of the invention nor delineate the scope of the invention. Its sole purpose is to present some concepts of the example embodiments in a simplified form as a prelude to the more detailed description that is presented later.
In accordance with an example embodiment, there is disclosed herein, a wireless device locating apparatus comprising a communication interface and determination logic. The communication interface is configured to receive signal strength values including a first set of signal strength values for a wireless device detected at a first plurality of radio receivers disposed in a first region and a second set of signal strength values for the wireless device detected at a second plurality of radio receivers disposed in a second region. The determination logic is operatively connected with the communication interface and is configured to determine a region that the wireless device is located. In one form, the determination logic includes a first weighting portion, a first summing portion, and an identifying portion. The first weighting portion selectively weights the signal strength values of the first set of signal strength values with at least two different weight values as a first set of weighted signal strength values, and selectively weights the signal strength values of the second set of signal strength values with at least two different weight values as a second set of weighted signal strength values. The first summing portion sums the first set of weighted signal strength values as a first sum, and sums the second set of weighted signal strength values as a second sum. The identifying portion identifies the region that the wireless device is located by a comparison of the first sum with the second sum. Preferably, the logical floor having the highest sum is determined to be the floor the wireless device is on.
In another form of the wireless device locating apparatus, the determination logic includes a sorting portion sorting the signal strength values of the first set of signal strength values as a first set of sorted signal strength values and sorting the signal strength values of the second set of signal strength values as a second set of sorted signal strength values. Also, the first weighting portion is configured to selectively weight the signal strength values of the first and second sets of sorted signal strength values by applying, respectively, a first set of predetermined weights having at least two different weight values against the first set of sorted signal strength values as the first set of weighted signal strength values and a second set of predetermined weights having at least two different weight values against the second set of sorted signal strength values as the second set of weighted signal strength values.
In accordance with another example embodiment, there is disclosed herein, a method of locating a wireless device, the method comprising receiving signal strength values including a first set of signal strength values for a wireless device detected at a first plurality of radio receivers disposed in a first region and a second set of signal strength values for the wireless device detected at a second plurality of radio receivers disposed in a second region, and determining a region that the wireless device is located. The determining includes selectively weighting the signal strength values of the first set of signal strength values with at least two different weight values as a first set of weighted signal strength values, and selectively weighting the signal strength values of the second set of signal strength values with at least two different weight values as a second set of weighted signal strength values, summing the first and second sets of weighted signal strength values as a first and second sum, respectively, and identifying the region that the wireless device is located by a comparison of the first sum with the second sum. Preferably, the logical floor having the highest sum is determined to be the floor the wireless device is on.
In another form of the method of locating a wireless device, the determining includes sorting the signal strength values of the first set of signal strength values as a first set of sorted signal strength values and sorting the signal strength values of the second set of signal strength values as a second set of sorted signal strength values, and the weighting includes selectively weighting the signal strength values of the first and second sets of sorted signal strength values by applying, respectively, a first set of predetermined weights having at least two different weight values against the first set of sorted signal strength values as the first set of weighted signal strength values and a second set of predetermined weights having at least two different weight values against the second set of sorted signal strength values as the second set of weighted signal strength values.
In another form of the method of locating a wireless device, the determining includes selectively sorting and weighting the RSSI only when a difference between of the summed adjusted RSSIs of floors having the first and second highest sums are within a predetermined threshold. This enables arbitration between floor determination algorithms wherein the adjusted RSSIs may be used directly in one floor determination algorithm and, in another algorithm, the RSSIs are selectively sorted and weighted. Preferably, the adjusting includes adding a predetermined adjustment value to each of the AP RSSI values. Also, preferably, the weighting includes multiplying each of the AP RSSI values with at least two different predetermined weighting values.
In accordance with another example embodiment, there is disclosed herein a method of locating an associated wireless device. The method includes receiving signal strength values including a first set of signal strength values for an associated wireless device detected at a first plurality of radio receivers disposed in a first region and a second set of signal strength values for the associated wireless device detected at a second plurality of radio receivers disposed in a second region; and, determining a region that the associated wireless device is located by: comparing the first set of signal strength values with the second set of signal strength values; and based on a result of the comparing, identifying the region that the associated wireless device is located by i) a first manipulation of the first and second sets of signal strength values or ii) a second manipulation of the first and second sets of signal strength values different than the first manipulation, the first manipulation including a weighting of the first and second sets of signal strength values and the second manipulation including an adjusting of the first and second sets of signal strength values.
There is shown and described herein example embodiments of this invention, simply by way of illustration of at least one of the best modes best suited to carry out the invention. As it will be realized, the invention is capable of other different embodiments and its several details are capable of modifications in various obvious aspects all without departing from the invention. Accordingly, the drawings and descriptions herein will be regarded as illustrative in nature and not as restrictive.
DESCRIPTION OF EXAMPLE EMBODIMENTS
This description provides examples not intended to limit the scope of the invention, as claimed. The figures generally indicate the features of the examples, where it is understood and appreciated that like reference numerals are used to refer to like elements.
FIG. 1 is a block diagram illustrating a floor determination apparatus 10 configured in accordance with an example embodiment. Apparatus 10 comprises a communication interface 12 with a communication link 14 configured to be coupled to a network (not shown) that spans multiple physical and/or logical floors or any other desired or selected region, space or area. Communication link can be a wired link (e.g. a coaxial cable, cat. 5 link, etc.) or a wireless (e.g. RF, IR, etc.) connection. Communication interface 12 receives data from a plurality of access points (APs). The received data includes Received Signal Strength Indicator (RSSI) data of signals received from a wireless device (which may be is referred to herein as a ‘wireless client’ or ‘client’).
Floor determination logic 16 is in data communication with communication interface 12. Floor determination logic is configured to receive RSSI data from communication interface 12 and perform an algorithm for determining the floor the client is on. “Logic” and “signal” as used herein, includes but is not limited to hardware, firmware, software and/or combinations of each to perform a function(s) or an action(s), and/or to cause a function or action from another component. For example, based on a desired application or need, signals may be based in hardware or software and logic may include a software controlled microprocessor, discrete logic such as an application specific integrated circuit (ASIC), a programmable/programmed logic device, memory device containing instructions, or the like, or combinational logic embodied in hardware. Logic may also be fully embodied as software that can be executed by a processor and signal may be software code, software steps, and/or data stored in memory.
Although as described herein, floor determination apparatus 10 is configured to determine the floor a wireless device is on, floor determination apparatus may also be configured with additional logic for determining the location of the wireless device on or within the floor or within any other area or space (logical floor) as well. In addition, floor determination apparatus 10 may be co-located with another device, such as a server (e.g. an Authentication, Authorization and Accounting ‘AAA’ server, location determination server) or any other type of network device such as a wireless domain controller (WDS) or access point (AP).
In practice it has been observed that the strongest APs are usually outliers when an incorrect floor is estimated. This may be due to various structural limitations or configurations or for other physical or electromagnetic properties or parameters for a given application. As an example, deployment of wireless locating devices in structures having atriums often results in highly skewed results placing or determining the client devices to be on incorrect floors.
However, in accordance with the present example embodiments, the AP weights can be changed on a case by case basis to adjust for applications, constraints and circumstances. Preferably, interfloor wireless device locating scheme improvement is realized when the second strongest AP is weighted higher than the others in a given logical floor.
In an example embodiment, floor determination logic 16 determines which floor the wireless device is on by selectively weighting the RSSIs and summing, for each logical floor, the weighted RSSIs received by each AP. The floor having the highest sum is then selected as the floor where the wireless device is located. In one form, the RSSI are first sorted before they are weighted. Preferably then, the second strongest AP is weighted higher than the remaining APs for each given floor. This enables the outliers noted above to be addressed and their influences appropriately suppressed or muted. This is especially useful for use of the subject floor determination system and method in structures or areas where incorrect floor estimations are likely to occur. The RSSIs received by each AP are selectively weighted as noted above, selectively sorted and weighted, selectively adjusted and weighted, and selectively adjusted, sorted, and weighted in the several example embodiments set out herein.
In another form, the RSSI are selectively sorted and weighted only when a difference between the summed adjusted RSSIs of adjacent floors having the first and second highest sums are within a predetermined threshold. This enables arbitration between floor determination algorithms wherein the adjusted RSSIs may be used directly in one floor determination algorithm and, in another algorithm, the RSSIs are selectively sorted and weighted. Preferably, the adjusting includes adding a predetermined adjustment value to each of the AP RSSI values. Also, preferably, the weighting includes multiplying each of the AP RSSI values with at least two different predetermined weighting values.
The following variables will be used to describe the example embodiments and their definitions are provided as follows:
    • M: total number of logical floors
    • Nj: number of APs on jth logical floor that report RSSI
    • APij: ith AP RSSI value (in dBm) on the jth logical floor
    • (X+APij) adjusted (by X) ith AP RSSI value (in dBm) on the jth logical floor
    • wt_i weights for weighting unsorted AP RSSI list
    • wt_sort_i: weights for weighting sorted AP RSSI list
    • Wj: weight of the calculated jth logical floor
    • threshold a predetermined value selectable by a user
    • maxk(APij): kth strongest AP on jth logical floor (if not present, then replace by some default minimum value (e.g. −120 dBm)))
    • maxk(Wj): the kth largest Wj
    • maxk_j(Wj): logical floor which has kth largest (Wj)
      • note: (max1_j(Wj) represents the logical floor with max(Wj)
In one example embodiment, a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by weighting the unadjusted or “raw” AP signal strength values APij directly with a set of weights wt_i for the non-sorted AP RSSI list, summing them, and choosing a logical floor according to:
For j = 1:M
  Wj = sum(wt_i * (APij)) for i = 1, ..., Nj
Chosen_Floor = max1_j(Wj)
It is to be appreciated that the set of weights wt_i may be a predefined set of fixed values such as 0.5, 1.0, 0.5, 0.5, 0.5, etc., or the set of weights wt_i may be adjusted or variable based on the AP RSSI values such as, for example:
wt_i = APij/max(APij)
or
wt_i = 0.5  for AP < −100 db
wt_i = 1.0  for −100 db < AP < −20 db
wt_i = 0.5  for −20 db < AP
In another example, a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by weighting the adjusted AP signal strength values (X+APij), where X=90 in the example, directly with a set of weights wt_i for the non-sorted AP RSSI list, summing them, and choosing a logical floor according to:
For j = 1:M
  W.sub.j= sum(wt_i * (X + AP.sub.ij)) for i = 1, ..., N.sub.j
Chosen_Floor = max1_j(W.sub.j)
In yet another example embodiment, a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by first sorting the unadjusted or “raw” AP signal strength values APij then weighting the sorted AP signal strength values using predetermined weights wt_sort_i for the sorted AP RSSI list, summing them, and choosing a logical floor according to:
For j = 1:M
  APij = sort(APij)
  Wj = sum(wt_sort_i * (APij)) for i = 1, ..., Nj
Chosen_Floor = max1_j(Wj)
It is to be appreciated that the set of weights wt_sort_i may be a predefined set of fixed values such as 0.5, 1.0, 0.5, 0.5, 0.5, etc., or the set of weights wt_sort_i may be adjusted or variable based on the AP RSSI values such as, for example:
wt_sort_i = APij/max(APij)
or
wt_sort_i = 0.5  for AP < −100 db
wt_sort_i = 1.0  for −100 db < AP < −20 db
wt_sort_i = 0.5  for −20 db < AP
In still yet another example embodiment, a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by first sorting the adjusted AP signal strength values (X+APij), where X=90 in the example, then weighting the sorted AP signal strength values using predetermined weights for the sorted AP RSSI list, summing them, and choosing a logical floor according to:
For j = 1:M
  APij = sort(APij)
  Wj = sum(wt_sort_i * (90 + APij)) for i = 1, ..., Nj
Chosen_Floor = max1_j(Wj)
In yet another example embodiment, a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
Wj = sum(X+Aij), for i = 1, ..., Nj and j = 1, ..., M
If max1(Wj) − max2(Wj) <= threshold
  For j = 1:M
  Wj = sum(wt_i * (APij)) for i = 1, ..., Nj
Chosen_Floor = max1_j(Wj)
In still yet another example embodiment, a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
Wj = sum(X′+Aij), for i = 1, ..., Nj and j = 1, ..., M
If max1(Wj) − max2(Wj) <= threshold
  For j = 1:M
    Wj = sum(wt_i * (X + APij)) for i = 1, ..., Nj
Chosen_Floor = max1_j(Wj)
In the above and in the example embodiments to be described below, X′ may be the same as or different from X as necessary or desired by the user of the system.
In still yet another example embodiment, a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
Wj = sum(X′+Aij), for i = 1, ..., Nj and j = 1, ..., M
If max1(Wj) − max2(Wj) <= threshold
 For j = 1:M
  APij = sort(APij)
  Wj = sum(wt_sort_i * (APij)) for i = 1, ..., Nj
Chosen_Floor = max1_j(Wj)
In yet still a further example embodiment, a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
Wj = sum(X′+Aij), for i = 1, ..., Nj and j = 1, ..., M
If max1(Wj) − max2(Wj) <= threshold
 For j = 1:M
  APij = sort(APij)
  Wj = sum(wt_sort_i * (X + APij)) for i = 1, ..., Nj
Chosen_Floor = max1_j(Wj)
With reference to FIG. 2, the communication interface 12 of the floor determination apparatus 10 of the example embodiment is configured to receive signal strength values APij including a first set of signal strength values APi1 for a wireless device detected at a first plurality of radio receivers disposed in a first logical floor, a second set of signal strength values APi2 for a wireless device detected at a second plurality of radio receivers disposed in a second logical floor, . . . , and an Mth set of signal strength values APiM for a wireless device detected at an Mth plurality of radio receivers disposed in an Mth logical floor. The determination logic 16 of the example embodiment includes a first adjusting and weighting portion 100, a first summing portion 102, an identifying portion 104 identifying the region that the wireless device is located, and having a first memory 140 storing weights wt_i to be selectively applied to the non-sorted AP RSSI list, a second memory 141 storing weights wt_sort_i to be selectively applied to the sorted AP RSSI list, and a third memory 142 storing adjustment values X, X′ to be applied to the raw AP signal strength values, such as by adding X to the raw AP values. It is to be appreciated that X may be selected to be or take on a null or 0 value as necessary or desired by the user of the system.
In a first example embodiment without sorting, the first adjusting and weighting portion 100 selectively adjusts and selectively weights the signal strength values APij (where APij=ith AP RSSI value on jth floor) of a first set of signal strength values Ai1 for i=1, . . . , N1 (where N1=number of APs on 1st logical floor that report RSSI) with an adjustment value X and with at least two different weight values wt_i (weights for weighting non-sorted AP RSSI list) as a first set of weighted signal strength values (wt_i*(X+APi1)), selectively adjusts and selectively weights the signal strength values APij of the second set of signal strength values Ai2 for i=1, . . . , N2 (where N2=number of APs on 2nd logical floor that report RSSI) with an adjustment value X and with at least two different weight values as a second set of weighted signal non-sorted strength values (wt_i*(X+APi2)), . . . , and selectively adjusts and selectively weights the signal strength values APij of the Mth set of signal strength values AiM for i=1, . . . , NM (where NM=number of APs on Mth logical floor that report RSSI) with an adjustment value X and with at least two different weight values as an Mth set of weighted signal strength values (wt_i*(X+APiM)). The weighting values wt_i are stored and retrieved from the memory 140 and the adjustment value X is stored and retrieved from the memory 142. The first summing portion 102 sums the first set of weighted signal strength values (wt_i*(X+APi1)) as a first sum Wj=sum (wt_i*(X+APij)), where j=1, sums the second set of weighted signal strength values (wt_i*(X+APi2)) as a second sum Wj=sum (wt_i*(X+APij)), (where j=2), . . . , and sums the Mth set of weighted signal strength values (wt_i*(X+APiM)) as an Mth sum Wj=sum (wt_i*(X+APij)), (where j=M). The identifying portion 104 identifies the region that the wireless device is located by a comparison of the first through Mth sums and generates a Chosen_Floor_1 signal 130 according to Chosen_Floor_1=max1_j(Wj).
In this example embodiment, the adjusting and weighting portion 100, the summing portion 102, and the identifying portion 104 collectively identify the region that the wireless device is located by:
For j = 1:M
 Wj = sum(wt_i * (X + APij)) for i = 1, ..., Nj
Chosen_Floor_1 = max1_j(Wj)
In the above example it is to be appreciated that the raw or unadjusted AP signal strength values APij may be used such as by setting X=0, as one preferred example, or any of a variety of selectable adjusted AP signal strength values APij may be used such as by setting X=90, as in one preferred example and X=180 in another.
In an example embodiment with sorting and with continued reference to FIG. 2, the determination logic 16 of the floor determination apparatus 10 includes a second memory 141 storing weight values wt_sort_i and a sorting portion 106 selectively sorting the signal strength values of the first set of signal strength values as a first set of sorted signal strength values APi1=sort(APi1), selectively sorting the signal strength values of the second set of signal strength values as a second set of sorted signal strength values APi2=sort(APi2), . . . , and selectively sorting the signal strength values of the Mth set of signal strength values as an Mth set of sorted signal strength values APiM=sort(APiM). The first adjusting and weighting portion 100 is configured to selectively adjusts and selectively weight the sorted signal strength values of the first through Mth sets of signal strength values by applying, respectively, an adjustment value X and a first set of predetermined weights having at least two different weight values against the first set of sorted signal strength values as the first set of weighted signal strength values, applying an adjustment value X and a second set of predetermined weights having at least two different weight values against the second set of sorted signal strength values as the second set of weighted signal strength values, and applying an adjustment value X and an Mth set of predetermined weights having at least two different weight values against the Mth set of sorted signal strength values as the Mth set of weighted signal strength values. The identifying portion 104 identifies the region that the wireless device is located by a comparison of the first through Mth sums as Chosen_Floor_1.
In particular, in the example embodiment with sorting, the sorting portion 106 selectively sorts the signal strength values of the first through Mth sets of signal strength values as first through Mth sets of sorted signal strength values according to APiM=sort(APiM). The first adjusting and weighting portion 100 selectively adjusts and selectively weights the signal strength values APij (where APij=ith AP RSSI value on jth floor) of the first set of signal strength values Ai1 for i=1, . . . , N1 (where N1=number of APs on 1st logical floor that report RSSI) with an adjustment value X and with at least two different weight values wt_sort_i (weights for weighting sorted AP RSSI list) as a first set of weighted signal strength values (wt_sort_i*(90+APi1)), selectively adjusts and selectively weights the signal strength values APij of the second set of signal strength values Ai2 for i=1, . . . , N2 (where N2=number of APs on 2nd logical floor that report RSSI) with an adjustment value X and with at least two different weight values as a second set of weighted signal strength values (wt_sort_i*(X+APi2)), . . . , and selectively adjusts and selectively weights the signal strength values APij of the Mth set of signal strength values AiM for i=1, . . . , NM (NM number of APs on Mth logical floor that report RSSI) with an adjustment value and with at least two different weight values as an Mth set of weighted signal strength values (wt_sort_i*(X+APiM)). The first summing portion 102 sums the first set of weighted signal strength values (wt_sort_i*(X+APi1)) as a first sum Wj=sum (wt_sort_i*(X+APij)), where j=1, sums the second set of weighted signal strength values (wt_sort_i*(X+APi2)) as a second sum Wj=sum (wt_sort_i*(X+APij)), (where j=2), . . . , and sums the Mth set of weighted signal strength values (wt_sort_i*(X+APiM)) as an Mth sum Wj=sum (wt_sort_i*(X+APij)), (where j=M). The identifying portion 104 identifies the region that the wireless device is located by a comparison of the first through Mth sums and generates a Chosen_Floor_2 signal 131 according to Chosen_Floor_2=max1_j(Wj) wherein the first adjusting and weighting portion 100, the summing portion 102, and the identifying and summing portions 104, 106 collectively identify the region that the wireless device is located according to:
For j = 1:M
 APij = sort(APij)
 Wj = sum(wt_sort_i * (X + APij)) for i = 1, ..., Nj
Chosen_Floor_1 = max1_j(Wj)
In the above example it is to be appreciated that the raw or unadjusted AP signal strength values APij may be used such as by setting X=0, as one preferred example, or any of a variety of selectable adjusted AP signal strength values APij may be used such as by setting X=90, as in one preferred example and X=180 in another. With yet continued reference to FIG. 2, the determination logic 16 of the communication interface 12 of the floor determination apparatus 10 of the example embodiment includes an adjusting portion 120, a second summing portion 122, and a determining portion 124. The adjusting portion 120 adjusts the signal strength values APij with a constant adjustment value X for scaling purposes. For example, the first set of signal strength values APi1 are adjusted with a predetermined weight value (X=90) as a first set of adjusted signal strength values (90+APi1), the signal strength values of the second set of signal strength values (APi2) are adjusted with the predetermined adjustment value (+90) as a second set of adjusted signal strength values (90+APi2), . . . , and the signal strength values of the Mth set of signal strength values (APiM) are adjusted with the predetermined adjustment value (+90) as a further set of adjusted signal strength values (90+APi(M+M)). The second summing portion 122 sums the sets of adjusted signal strength values. For example, the second summing portion 122 sums the first set of adjusted signal strength values (90+Ai1) as a first sum of adjusted values Wj=sum(90+Ai1), sums the second set of adjusted signal strength values (90+Ai2) as a second sum of adjusted values Wj=sum(90+Ai2), . . . , and sums the further set of adjusted signal strength values (90+Ai2) as a further sum of adjusted values Wj=sum(90+Ai(M+M)).
The determining portion 124 generates a weighting signal 128 to selectively weight (rather than simply adjust) the signal strength values of the first through Mth sets of signal strength values when a difference between the first and second highest calculated floor weights Wj values is less than a predetermined threshold value “threshold”. Preferably, the adjusting includes adding a predetermined adjustment value to each of the AP RSSI values. Also, preferably, the weighting includes multiplying each of the AP RSSI values with at least two different predetermined weighting values.
The first adjusting and weighting portion 100 is responsive to the signal 128 from the determining portion 124 to weight the signal strength values of the first through Mth sets of signal strength values as said first and second sets of weighted signal strength values respectively when said weighting signal 128 is generated. Similarly, the first summing portion 102 is responsive to the signal 128 from the determining portion 124 to sum the first through Mth sets of weighted signal strength values as the first and second sums respectively when the weighting signal 128 is generated. And, further, a selection circuit 132 is responsive to the determining portion to i) identify the region that the wireless device is located by a comparison of the first through Mth weighted sums when the weighting signal 128 is generated, and ii) identify the region that the wireless device is located by a comparison of the first through Mth adjusted sums when the weighting signal 128 is not generated. That is, Chosen_Floor_1 is selected as the output of the system 10 when the weighting signal 128 is generated and Chosen_Floor_2 is selected as the output of the system 10 when the weighting signal 128 is not generated.
Accordingly, overall, the determination logic 16 is configured to determine a logical floor at which the wireless device is located by discriminating between an algorithm using adjusted signal strength values and an algorithm using selectively sorted and weighted signal strength values according to:
Wj = sum(X′+Aij), for i = 1, ..., Nj and j = 1, ..., M
If max1(Wj) − max2(Wj) <= threshold
 For j = 1:M
  APij = sort(APij)
  Wj = sum(wt_sort_i * (X + APij)) for i = 1, ..., Nj
Chosen_Floor = max1_j(Wj)
In the example embodiment described immediately above, the adjusted AP RSSI values are selectively replaced with weighted AP RSSI values when a magnitude of a difference between the first and second signal strengths for a given floor is small and, in particular, when the magnitude of the difference is less than the predetermined threshold. As noted above, it has been observed in practice that the strongest APs are usually outliers when an incorrect floor is estimated. By selectively weighting the APs, incorrect floor estimations can be reduced. By selectively sorting then weighting the APs, incorrect floor estimations can further be reduced.
Preferably, in one example, the AP weights may be, 0.5, 1.0, 0.5, 0.5, 0.5, etc. However, other sets of AP weight values may be used to realize favorable results and as may be desired or necessary to adjust for physical or electromagnetic characteristics of the application such as when the wireless device is to be located in a building having an atrium, for example or in applications where the radio receivers have different gain and/or other performance characteristics. In addition and as described above, it is to be appreciated that the set of weights may be a predefined set of fixed values or they may be adjusted or variable based on the AP RSSI values.
It is to be appreciated that, for specific particular applications, the weighting function can be executed manually by an operator of the system to account for specific known structures of features in the target environment of the wireless devices. To that end, first, second, and third memories 140, 141, and 142 are provided in the apparatus 10. The memories 140, 141, and 142 are operatively connected with the communication interface and the determination logic, the memory being configured to store the first and second sets of predetermined weight values and adjustment values, respectively. In addition, a user interface 144 is operatively connected with the communication interface, the determination logic, and the memory. The user interface provides a means for enabling a user of the wireless device locating apparatus to selectively modify the first, second, and Mth sets of predetermined adjustment values and weight values. Still further, a database 146 is included in the system for storing and manipulating the predetermined weights and for collecting and storing various operational, performance, and other data.
In addition to the above, it is to be appreciated that additional example embodiments include extensions of the single dimensional cases described above into two or more dimensions. Here, one dimension includes a time dimension. That is, the various adjustment values and/or weight values are time dependent. Further, the weights for the sorted and/or unsorted AP RSSI lists may be selected based on logical floor wherein wt_ij are the weights for weighting the unsorted AP RSSI list for the jth floor and wt_sort_ij are the weights for weighting the sorted AP RSSI list for the jth floor.
In these embodiments a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
Wj = sum(X′+Aij), for i = 1, ..., Nj and j = 1, ..., M
If max1(Wj) − max2(Wj) <= threshold
 For j = 1:M
  Wj = sum(wt_ij * (APij)) for i = 1, ..., Nj
Chosen_Floor_2 = max1_j(Wj)
In still yet another example embodiment, a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
Wj = sum(X′+Aij), for i = 1, ..., Nj and j = 1, ..., M
If max1(Wj) − max2(Wj) <= threshold
 For j = 1:M
  Wj = sum(wt_ij * (X + APij)) for i = 1, ..., Nj
Chosen_Floor_2 = max1_j(Wj)
In still yet another example embodiment, a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
Wj = sum(X′+Aij), for i = 1, ..., Nj and j = 1, ..., M
If max1(Wj) − max2(Wj) <= threshold
 For j = 1:M
  APij = sort(APij)
  Wj = sum(wt_sort_ij * (APij)) for i = 1, ..., Nj
Chosen_Floor_1 = max1_j(Wj)
In yet still a further example embodiment, a wireless device locating method and apparatus is provided for determining a logical floor that the wireless device is located at by arbitrating between floor determination algorithms or methods according to:
Wj = sum(X′+Aij), for i = 1, ..., Nj and j = 1, ..., M
If max1(Wj) − max2(Wj) <= threshold
 For j = 1:M
  APij = sort(APij)
  Wj = sum(wt_sort_ij * (X + APij)) for i = 1, ..., Nj
Chosen_Floor_1 = max1_j(Wj)
FIG. 3 is a block diagram of a computer system 200 for implementing an example embodiment. For example, computer system 200 is suitably adapted for implementing floor determination apparatus 10 (FIG. 1). Computer system 200 includes a bus 202 or other communication mechanism for communicating information and a processor 204 coupled with bus 202 for processing information. Computer system 200 also includes a main memory 206, such as random access memory (RAM) or other dynamic storage device coupled to bus 202 for storing information and instructions to be executed by processor 204. Main memory 206 also may be used for storing a temporary variable or other intermediate information during execution of instructions to be executed by processor 204. Computer system 200 further includes a read only memory (ROM) 208 or other static storage device coupled to bus 202 for storing static information and instructions for processor 204. A storage device 210, such as a magnetic disk or optical disk, is provided and coupled to bus 202 for storing information and instructions.
An aspect of the invention is related to the use of computer system 200 for floor determination of a wireless device. According to one embodiment of the invention, floor determination of a wireless device is provided by computer system 200 in response to processor 204 executing one or more sequences of one or more instructions contained in main memory 206. Such instructions may be read into main memory 206 from another computer-readable medium, such as storage device 210. Execution of the sequence of instructions contained in main memory 206 causes processor 204 to perform the process steps described herein. One or more processors in a multi-processing arrangement may also be employed to execute the sequences of instructions contained in main memory 206. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
The term “computer-readable medium” as used herein refers to any medium that participates in providing instructions to processor 204 for execution. Such a medium may take many forms, including but not limited to non-volatile media, volatile media, and transmission media. Non-volatile media include for example optical or magnetic disks, such as storage device 210. Volatile media include dynamic memory such as main memory 206. Transmission media include coaxial cables, copper wire and fiber optics, including the wires that comprise bus 202. Transmission media can also take the form of acoustic or light waves such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media include for example floppy disk, a flexible disk, hard disk, magnetic cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASHPROM, CD, DVD or any other memory chip or cartridge, or any other medium from which a computer can read.
Various forms of computer-readable media may be involved in carrying one or more sequences of one or more instructions to processor 204 for execution. For example, the instructions may initially be borne on a magnetic disk of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system 200 can receive the data on the telephone line and use an infrared transmitter to convert the data to an infrared signal. An infrared detector coupled to bus 202 can receive the data carried in the infrared signal and place the data on bus 202. Bus 202 carries the data to main memory 206 from which processor 204 retrieves and executes the instructions. The instructions received by main memory 206 may optionally be stored on storage device 210 either before or after execution by processor 204.
Computer system 200 also includes a communication interface 218 coupled to bus 202. Communication interface 218 provides a two-way data communication coupling to a network link 220 that is connected to a network 222. For example, communication interface 218 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, communication interface 218 sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information.
Network link 220 typically provides data communication through one or more networks to other data devices, such as APs. For example, network link 220 may provide a connection through network 222 to the Internet. Networks 222 and the Internet 228 may use electrical, electromagnetic, or optical signals that carry the digital data to and from computer system 200, which are exemplary forms of carrier waves transporting the information.
Computer system 200 can send messages and receive data, including program codes, through the network(s), network link 220, and communication interface 218. In the Internet example, a server (not shown) might transmit a requested code for an application program through the Internet to network 222, and communication interface 218. In accordance with the invention, one such downloaded application provides for floor determination of a wireless device as described herein.
The received code may be executed by processor 204 as it is received, and/or stored in storage device 210, or other non-volatile storage for later execution. In this manner, computer system 200 may obtain application code in the form of a carrier wave.
FIG. 4 illustrates an example of a network 300 implementing floor determination. As illustrated, network 300 includes four floors 310, 320, 330, 340. Floor 310 comprises access points 312, 314. Floor 320 comprises access points 322, 324. Floor 330 comprises access points 332, 334. Floor 340 comprises access points 342, 344. Access points 312, 314, 322, 324, 332, 334, 342, 344 are in data communication with floor determination apparatus 10. When wireless device 18 transmits, access points 312, 314, 322, 324, 332, 334, 342, 344 send RSSI data to floor determination apparatus 10. In particular embodiments, an AP that does not receive a signal from device 18 does not send RSSI data to floor determination apparatus 10, in which case floor determination apparatus can use this missing RSSI in the probability calculations in a way that tends to exclude nearby regions. In an example embodiment, access points 312, 314, 322, 324, 332, 334, 342, 344 also send AP-AP RSSI data to floor determination server 10. For example AP 312 can send the RSSI data for signals received from APs 314, 322, 324, 332, 334, 342, 344. This RSSI data may be corrected (by removing the effects of different antenna gains and/or different transmit powers) so the RSSI data is closer to an RSSI from a client under or nearby AP 312 to APs 314-344. Based on the RSSI data received from access points 312, 314, 322, 324, 332, 334, 342, 344, floor determination apparatus 10 can determine the floor (floor 330 in the example illustrated in FIG. 3) that the associated wireless device 18 is on.
Although network 300 illustrates a selected number of floors and APs on each floor, those skilled in the art should readily appreciate that the number of floors and/or APs on the floors can be any physically realizable number. The number of floors and APs selected for network 300 were merely selected for ease of illustration and should no way be construed as limiting the number of floors or APs that the apparatuses or methods described herein are capable of handling.
In view of the foregoing structural and functional features described above, methodology in accordance with example embodiments will be better appreciated with reference to FIG. 5. While, for purposes of simplicity of explanation, the methodology of FIG. 5 is shown and described as executing serially, it is to be understood and appreciated that the example embodiments are not limited by the illustrated order, as some aspects could occur in different orders and/or concurrently with other aspects from that shown and described herein. Moreover, not all illustrated features may be required to implement a methodology in accordance with an aspect the example embodiment. Embodiments of the present invention are suitably adapted to implement the methodology in hardware, software, or a combination thereof.
FIG. 5 illustrates an example methodology 400 for determining the floor a client is on based on selectively weighted RSSI values. In one example embodiment of the illustrated method, AP signals are received at step 402 and they are weighted, summed, and thereafter a floor of the wireless device is determined at step 404. In another example embodiment of the illustrated method 400, AP signals are received at step 402, they are adjusted and sorted at step 406, and they are weighted 410, summed 412, and thereafter a floor of the wireless device is determined 414 in step 404. In still yet another example embodiment of the illustrated method 400, AP signals are received at step 402, they are summed 420 and a threshold determination 422 is made in step 408, the signals are sorted at step 406, and they are weighted, summed, and thereafter a floor of the wireless device is determined at step 404.
It is to be appreciated in FIG. 5 that the steps 406 and 408 are not executed in the embodiment where the method locates the wireless device according to:
For j = 1:M
 Wj = sum(wt_sort_i * (90 + APij)) for i = 1, ..., Nj
Chosen_Floor = max1_j(Wj)
It is to be further appreciated in FIG. 5 that the step 408 is not executed in the embodiment where the method locates the wireless device according to:
For j = 1:M
 APij = sort(APij)
 Wj = sum(wt_sort_i * (90 + APij)) for i = 1, ..., Nj
Chosen_Floor = max1_j(Wj)
However, for convenience, each of the sorting 406 and threshold determining 408 steps are illustrated in the linear flow to facilitate easier description of the example embodiments.
What has been described above includes example implementations. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the present invention, but one of ordinary skill in the art will recognize that many further combinations and permutations are possible. Accordingly, the scope of the appended claims interpreted in accordance with the breadth to which they are fairly, legally and equitably entitled include all such equivalents, alterations, modifications and variations.

Claims (23)

1. A wireless device locating apparatus, the apparatus comprising:
a communication interface configured to receive signal strength values including a first set of signal strength values for an associated wireless device detected at a first plurality of radio receivers disposed in a first region and a second set of signal strength values for the associated wireless device detected at a second plurality of radio receivers disposed in a second region; and,
determination logic operatively connected with the communication interface and being configured to determine a region that the associated wireless device is located, the determination logic including:
a first weighting portion selectively weighting the signal strength values of the first set of signal strength values with at least two different weight values as a first set of weighted signal strength values, and selectively weighting the signal strength values of the second set of signal strength values with at least two different weight values as a second set of weighted signal strength values;
a first summing portion summing the first set of weighted signal strength values as a first weighted sum, and summing the second set of weighted signal strength values as a second weighted sum; and,
an identifying portion identifying the region that the wireless device is located by a comparison of the first weighted sum with the second weighted sum.
2. An apparatus according to claim 1 wherein:
the determination logic includes a sorting portion selectively sorting the signal strength values of the first set of signal strength values as a first set of sorted signal strength values and sorting the signal strength values of the second set of signal strength values as a second set of sorted signal strength values; and,
the first weighting portion is configured to selectively weight the signal strength values of the first and second sets of sorted signal strength values by applying, respectively, a first set of predetermined weights having at least two different weight values against the first set of sorted signal strength values as said first set of weighted signal strength values and a second set of predetermined weights having at least two different weight values against the second set of sorted signal strength values as said second set of weighted signal strength values.
3. An apparatus according to claim 2 wherein said determination logic further includes:
an adjusting portion adjusting the signal strength values of the first set of signal strength values with a predetermined adjustment value as a first set of adjusted signal strength values, and adjusting the signal strength values of the second set of signal strength values with said predetermined adjustment value as a second set of adjusted signal strength values;
a second summing portion summing the first set of adjusted signal strength is values as a first adjusted sum, and summing the second set of adjusted signal strength values as a second adjusted sum; and,
a determining portion generating a weighting signal when a difference between said first and second adjusted sums is less than a predetermined threshold value and identifying the region that the wireless device is located by a comparison of the first adjusted sum with the second adjusted sum.
4. An apparatus according to claim 3 further including:
a selection circuit responsive to the determining portion to i) identify the region that the wireless device is located by said comparison of the first weighted sum with the second weighted sum when the weighting signal is generated, and ii) identify the region that the wireless device is located by said comparison of the first adjusted sum with the second adjusted sum when the weighting signal is not generated.
5. An apparatus according to claim 4 wherein:
the first weighting portion is responsive to the determining portion to weight the signal strength values of the first and second sets of signal strength values with said first and second sets of predetermined weights as said first and second sets of weighted signal strength values respectively only when said weighting signal is generated; and,
the first summing portion is responsive to the determining portion to sum the first and second sets of weighted signal strength values as the first and second weighted sums respectively only when said weighting signal is generated.
6. An apparatus according to claim 2 further including:
a first memory operatively connected with the communication interface and the determination logic, the first memory being configured to store the predetermined adjustment value; and,
a second memory operatively connected with the communication interface and the determination logic, the second memory being configured to store the first and second sets of predetermined weights.
7. An apparatus according to claim 6 further including:
a user interface operatively connected with the communication interface, the determination logic, and the first and second memories, the user interface providing a means for enabling a user of the wireless device locating apparatus to selectively modify: i) the first and second sets of adjustment values or ii) the first and second sets of predetermined weights; and,
a database including said first and second memories for enabling the associated user to selectively manipulate: i) said first and second sets of predetermined weights or ii) said first and second sets of adjustment values.
8. An apparatus according to claim 2 wherein:
the first weighting portion is configured to selectively weight the signal strength values of the first and second sets of signal strength values based, respectively, on first and second sets of selectable weights.
9. An apparatus according to claim 2 wherein:
the communication interface is configured to acquire received signal strength indicator (RSSI) data for the associated wireless device as said first and second sets of signal strength values.
10. A method of locating an associated wireless device, the method comprising:
receiving signal strength values including a first set of signal strength values for an associated wireless device detected at a first plurality of radio receivers disposed in a first region and a second set of signal strength values for the associated wireless device detected at a second plurality of radio receivers disposed in a second region; and,
determining a region that the associated wireless device is located by:
selectively weighting the signal strength values of the first set of signal strength values with at least two different weight values as a first set of weighted signal strength values, and selectively weighting the signal strength values of the second set of signal strength values with at least two different weight values as a second set of weighted signal strength values;
summing the first set of weighted signal strength values as a first weighted sum, and summing the second set of weighted signal strength values as a second weighted sum; and,
identifying the region that the wireless device is located by a comparison of the first weighted sum with the second weighted sum.
11. A method according to claim 10 wherein:
the determining includes selectively sorting the signal strength values of the first set of signal strength values as a first set of sorted signal strength values and sorting the signal strength values of the second set of signal strength values as a second set of sorted signal strength values; and,
the weighting includes selectively weighting the signal strength values of the first and second sets of sorted signal strength values by applying, respectively, a first set of predetermined weights having at least two different weight values against the first set of sorted signal strength values as said first set of weighted signal strength values and a second set of predetermined weights having at least two different weight values against the second set of sorted signal strength values as said second set of weighted signal strength values.
12. A method according to claim 11 wherein the determining further includes:
adjusting the signal strength values of the first set of signal strength values with a predetermined adjustment value as a first set of adjusted signal strength values, and adjusting the signal strength values of the second set of signal strength values with said predetermined adjustment value as a second set of adjusted signal strength values;
summing the first set of adjusted signal strength values as a first adjusted sum, and summing the second set of adjusted signal strength values as a second sum; and,
generating a weighting signal when a difference between said first and second adjusted sums is less than a predetermined threshold value.
13. A method according to claim 12 wherein:
the identifying includes, responsive to the determining portion and when said weighting signal is generated, i) identifying the region that the wireless device is located by a comparison of the first weighted sum with the second weighted sum when the weighting signal is generated, and ii) identifying the region that the wireless device is located by a comparison of the first adjusted sum with the second adjusted sum when the weighting signal is not generated.
14. A method according to claim 13 wherein:
the weighting includes, responsive to the determining portion and only when said weighting signal is generated, weighting the signal strength values of the first and second sets of signal strength values with said first and second sets of predetermined weights as said first and second sets of weighted signal strength values respectively; and,
the summing includes, responsive to the determining portion and only when said weighting signal is generated, summing the first and second sets of weighted signal strength values as the first and second weighted sums respectively.
15. A method according to claim 11 further including:
storing the adjustment value in a first memory; and,
storing the weight values in a second memory.
16. A method according to claim 15 further including selectively modifying the adjustment value or the weight values using a user interface.
17. A method according to claim 11 wherein:
the weighting includes selectively weighting the signal strength values of the first and second sets of signal strength values based, respectively, on first and second sets of selectable weights.
18. A method according to claim 11 wherein:
the receiving includes acquiring received signal strength indicator (RSSI) data for the wireless device as said first and second sets of signal strength values.
19. A method of locating an associated wireless device, the method comprising:
receiving signal strength values including a first set of signal strength values for an associated wireless device detected at a first plurality of radio receivers disposed in a first region and a second set of signal strength values for the associated wireless device detected at a second plurality of radio receivers disposed in a second region; and,
determining a region that the associated wireless device is located by:
comparing said first set of signal strength values with said second set of signal strength values; and
based on a result of said comparing, identifying the region that the associated wireless device is located by one of a group consisting of a first manipulation of the first and second sets of signal strength values, and a second manipulation of the first and second sets of signal strength values different than the first manipulation, the first manipulation including a weighting of said first and second sets of signal strength values and the second manipulation including an adjusting of said first and second sets of signal strength values.
20. The method according to claim 19 wherein said determining includes determining the region that the associated wireless device is located according to:
Wj = sum(X+Aij), for i = 1, ..., Nj and j = 1, ..., M If max1(Wj) − max2(Wj) <= threshold  For j = 1:M   APij = sort(APij)   Wj = sum(wt_sort_i * (X + APij)) for i = 1, ..., Nj Chosen_Floor = max1_j(Wj)
wherein:
M: is the total number of logical floors
Nj: is the number of APs on jth logical floor that report RSSI
APij: are the ith AP RSSI values (in dBm) on the jth logical floor
(X+APij) adjusted ith AP RSSI values on the jth logical floor
wt_i are the weights for weighting unsorted AP RSSI list
wt_sort_i: are the weights for weighting sorted AP RSSI list
Wj: is the weight of the calculated jth logical floor
maxk(APij): is the kth strongest AP on jth logical floor (if not present, then replace by some default minimum value (e.g. −120 dBm)))
maxk(Wj): is the the kth largest Wj
maxk_j(Wj): is the logical floor which has kth largest (Wj).
21. The method according to claim 19 wherein said determining includes determining the region that the associated wireless device is located according to:
Wj = sum(X+Aij), for i = 1, ..., Nj and j = 1, ..., M If max1(Wj) − max2(Wj) <= threshold  For j = 1:M   Wj = sum(wt_i * (X + APij)) for i = 1, ..., Nj Chosen_Floor = max1_j(Wj)
wherein:
M: is the total number of logical floors
Nj: is the number of APs on jth logical floor that report RSSI
APij: are the ith AP RSSI values (in dBm) on the jth logical floor
(X+APij) adjusted ith AP RSSI values on the jth logical floor
wt_i are the weights for weighting unsorted AP RSSI list
wt_sort_i: are the weights for weighting sorted AP RSSI list
Wj: is the weight of the calculated jth logical floor
maxk(APij): is the kth strongest AP on jth logical floor (if not present, then replace by some default minimum value (e.g. −120 dBm)))
maxk(Wj): is the the kth largest Wj
maxk_j(Wj): is the logical floor which has kth largest (Wj).
22. The method according to claim 19 wherein said determining includes determining the region that the associated wireless device is located according to:
Wj = sum(X+Aij), for i = 1, ..., Nj and j = 1, ..., M If max1(Wj) − max2(Wj) <= threshold  For j = 1:M   APij = sort(APij)   Wj = sum(wt_sort_ij * (X + APij)) for i = 1, ..., Nj Chosen_Floor = max1_j(Wj)
wherein:
M: is the total number of logical floors
Nj: is the number of APs on jth logical floor that report RSSI
APij: are the ith AP RSSI values (in dBm) on the jth logical floor
(X+APij) adjusted ith AP RSSI values on the jth logical floor
wt_ij are the weights for weighting unsorted AP RSSI list for jth floor
wt_sort_ij: are the weights for weighting sorted AP RSSI list for the jth floor
Wj: is the weight of the calculated jth logical floor
maxk(APij): is the kth strongest AP on jth logical floor (if not present, then replace by some default minimum value (e.g. −120 dBm)))
maxk(Wj): is the the kth largest Wj
maxk_j(Wj): is the logical floor which has kth largest (Wj).
23. The method according to claim 19 wherein said determining includes determining the region that the associated wireless device is located according to:
Wj = sum(X+Aij), for i = 1, ..., Nj and j = 1, ..., M If max1(Wj) − max2(Wj) <= threshold  For j = 1:M   Wj = sum(wt_i * (X + APij)) for i = 1, ..., Nj Chosen_Floor = max1_j(Wj)
wherein:
M: is the total number of logical floors
Nj: is the number of APs on jth logical floor that report RSSI
APij: are the ith AP RSSI values (in dBm) on the jth logical floor
(X+APij) adjusted ith AP RSSI values on the jth logical floor
wt_ij are the weights for weighting unsorted AP RSSI list for the jth floor
wt_sort_ij: are the weights for weighting sorted AP RSSI list for the jth floor
Wj: is the weight of the calculated jth logical floor
maxk(APij): is the kth strongest AP on jth logical floor (if not present, then replace by some default minimum value (e.g. −120 dBm)))
maxk(Wj): is the the kth largest Wj
maxk_j(Wj): is the logical floor which has kth largest (Wj).
US12/182,563 2008-07-30 2008-07-30 Logical floor determination for a wireless device using weighted AP received signal strengths Active 2030-05-02 US8089371B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US12/182,563 US8089371B2 (en) 2008-07-30 2008-07-30 Logical floor determination for a wireless device using weighted AP received signal strengths
US13/267,422 US8169300B2 (en) 2008-07-30 2011-10-06 Logical floor determination for a wireless device using weighted AP received signal strengths

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/182,563 US8089371B2 (en) 2008-07-30 2008-07-30 Logical floor determination for a wireless device using weighted AP received signal strengths

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/267,422 Continuation US8169300B2 (en) 2008-07-30 2011-10-06 Logical floor determination for a wireless device using weighted AP received signal strengths

Publications (2)

Publication Number Publication Date
US20100026513A1 US20100026513A1 (en) 2010-02-04
US8089371B2 true US8089371B2 (en) 2012-01-03

Family

ID=41607761

Family Applications (2)

Application Number Title Priority Date Filing Date
US12/182,563 Active 2030-05-02 US8089371B2 (en) 2008-07-30 2008-07-30 Logical floor determination for a wireless device using weighted AP received signal strengths
US13/267,422 Active US8169300B2 (en) 2008-07-30 2011-10-06 Logical floor determination for a wireless device using weighted AP received signal strengths

Family Applications After (1)

Application Number Title Priority Date Filing Date
US13/267,422 Active US8169300B2 (en) 2008-07-30 2011-10-06 Logical floor determination for a wireless device using weighted AP received signal strengths

Country Status (1)

Country Link
US (2) US8089371B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130293410A1 (en) * 2010-11-12 2013-11-07 Christian Hieronimi System for determining and/or controlling the location of objects
US20140192669A1 (en) * 2013-01-10 2014-07-10 Apple Inc. Filtering of wi-fi physical layer measurements
CN104049238A (en) * 2014-06-13 2014-09-17 上海交通大学 Floor positioning method based on wireless signals
US20170220829A1 (en) * 2015-02-04 2017-08-03 Timekeeping Systems, Inc. Tracking system for persons and/or objects
US11105909B2 (en) * 2015-02-04 2021-08-31 Timekeeping Systems, Inc. Tracking system for persons and/or objects
US11337176B2 (en) 2020-06-12 2022-05-17 Cisco Technology, Inc. Access point based location system for high density wifi deployments

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8412232B2 (en) 2010-08-20 2013-04-02 Qualcomm Incorporated Methods and apparatuses for use in estimating a location of a mobile device within a structure
KR101422251B1 (en) * 2011-01-31 2014-07-22 주식회사 케이티 Method for measuring position using access point and apparatus therefor
US8559975B2 (en) 2011-07-22 2013-10-15 Microsoft Corporation Location determination based on weighted received signal strengths
CN104054360B (en) * 2011-11-08 2019-02-15 优科无线有限公司 Method and apparatus for determining the location information of position in multi-story structure
EP2870791B1 (en) * 2012-07-09 2018-09-12 Hewlett-Packard Enterprise Development LP Site model selection for a wireless access point
JP5705279B2 (en) * 2013-08-27 2015-04-22 ヤフー株式会社 Location specifying server, location specifying method, and location specifying program
JP5706944B1 (en) * 2013-10-21 2015-04-22 ヤフー株式会社 Location specifying server, location specifying method, location specifying program, and terminal device
US9310463B2 (en) * 2013-11-06 2016-04-12 Cisco Technology, Inc. Detecting incorrectly placed access points
EP3170013B1 (en) 2014-07-18 2020-08-19 HERE Global B.V. Obtaining radiomaps
CN104202818B (en) * 2014-09-03 2015-10-07 创业软件股份有限公司 A kind of floor recognition methods distance weighted based on building open edge
CN107547598B (en) * 2016-06-27 2020-07-24 华为技术有限公司 Positioning method, server and terminal
EP3721252A1 (en) * 2017-12-08 2020-10-14 HERE Global B.V. Supporting a selection of a floor
JP2021087033A (en) * 2019-11-25 2021-06-03 株式会社デンソー System for vehicle, on-vehicle device, and terminal position identifying method

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020141363A1 (en) * 2000-06-26 2002-10-03 Olli Piirainen Method for improving the quality of data transmission
US6674403B2 (en) 2001-09-05 2004-01-06 Newbury Networks, Inc. Position detection and location tracking in a wireless network
US20040033795A1 (en) 2000-02-04 2004-02-19 Walsh Patrick J. Location information system for a wireless communication device and method therefor
US6799047B1 (en) * 1999-02-25 2004-09-28 Microsoft Corporation Locating and tracking a user in a wireless network through environmentally profiled data
US20050003827A1 (en) 2003-02-13 2005-01-06 Whelan Robert J. Channel, coding and power management for wireless local area networks
US20050040968A1 (en) * 2003-07-31 2005-02-24 Chanakya Damarla Method for RF fingerprinting
US20050176406A1 (en) 2004-02-11 2005-08-11 Krishnakumar Anjur S. Location estimation of wireless terminals in a multi-story environment
US20050175121A1 (en) * 2002-11-20 2005-08-11 Sanyo Electric Co., Ltd. Receiving method and receiver
US20050207381A1 (en) 2002-10-18 2005-09-22 Aeroscout, Ltd. Wireless local area network (WLAN) method and system for presence detection and location finding
US20050208952A1 (en) 2004-03-16 2005-09-22 Dietrich Paul F Location of wireless nodes using signal strength weighting metric
US20050261004A1 (en) 2004-05-18 2005-11-24 Dietrich Paul F Wireless node location mechanism featuring definition of search region to optimize location computation
US6978023B2 (en) 2003-03-25 2005-12-20 Sony Corporation Apparatus and method for location based wireless client authentication
US20050285793A1 (en) 2004-06-23 2005-12-29 Sugar Gary L Self-calibrated path loss position estimation and zone of impact determination
US7126951B2 (en) 2003-06-06 2006-10-24 Meshnetworks, Inc. System and method for identifying the floor number where a firefighter in need of help is located using received signal strength indicator and signal propagation time
US20070142061A1 (en) 2005-12-20 2007-06-21 Taubenheim David B Method and apparatus for determining the location of a node in a wireless network
US7894412B2 (en) 2007-09-07 2011-02-22 Cisco Technology, Inc. Floor determination for a wireless device
US7945270B2 (en) * 2006-03-28 2011-05-17 Research In Motion Limited Estimating a location of a mobile device
US7966021B2 (en) * 2004-09-10 2011-06-21 Cisco Systems, Inc. Enhanced wireless node location using differential signal strength metric

Patent Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6799047B1 (en) * 1999-02-25 2004-09-28 Microsoft Corporation Locating and tracking a user in a wireless network through environmentally profiled data
US20040033795A1 (en) 2000-02-04 2004-02-19 Walsh Patrick J. Location information system for a wireless communication device and method therefor
US20020141363A1 (en) * 2000-06-26 2002-10-03 Olli Piirainen Method for improving the quality of data transmission
US6674403B2 (en) 2001-09-05 2004-01-06 Newbury Networks, Inc. Position detection and location tracking in a wireless network
US20050207381A1 (en) 2002-10-18 2005-09-22 Aeroscout, Ltd. Wireless local area network (WLAN) method and system for presence detection and location finding
US20050175121A1 (en) * 2002-11-20 2005-08-11 Sanyo Electric Co., Ltd. Receiving method and receiver
US20050003827A1 (en) 2003-02-13 2005-01-06 Whelan Robert J. Channel, coding and power management for wireless local area networks
US6978023B2 (en) 2003-03-25 2005-12-20 Sony Corporation Apparatus and method for location based wireless client authentication
US7126951B2 (en) 2003-06-06 2006-10-24 Meshnetworks, Inc. System and method for identifying the floor number where a firefighter in need of help is located using received signal strength indicator and signal propagation time
US20050040968A1 (en) * 2003-07-31 2005-02-24 Chanakya Damarla Method for RF fingerprinting
US20050176406A1 (en) 2004-02-11 2005-08-11 Krishnakumar Anjur S. Location estimation of wireless terminals in a multi-story environment
WO2005091915A2 (en) 2004-03-16 2005-10-06 Airespace, Inc. Location of wireless nodes using signal strength weighting metric
US7116988B2 (en) 2004-03-16 2006-10-03 Airespace, Inc. Location of wireless nodes using signal strength weighting metric
US20050208952A1 (en) 2004-03-16 2005-09-22 Dietrich Paul F Location of wireless nodes using signal strength weighting metric
WO2005117470A2 (en) 2004-05-18 2005-12-08 Airespace, Inc. Wireless node location mechanism featuring definition of search region to optimize location computation
US20050261004A1 (en) 2004-05-18 2005-11-24 Dietrich Paul F Wireless node location mechanism featuring definition of search region to optimize location computation
US20050285793A1 (en) 2004-06-23 2005-12-29 Sugar Gary L Self-calibrated path loss position estimation and zone of impact determination
US7966021B2 (en) * 2004-09-10 2011-06-21 Cisco Systems, Inc. Enhanced wireless node location using differential signal strength metric
US20070142061A1 (en) 2005-12-20 2007-06-21 Taubenheim David B Method and apparatus for determining the location of a node in a wireless network
US7945270B2 (en) * 2006-03-28 2011-05-17 Research In Motion Limited Estimating a location of a mobile device
US7894412B2 (en) 2007-09-07 2011-02-22 Cisco Technology, Inc. Floor determination for a wireless device

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130293410A1 (en) * 2010-11-12 2013-11-07 Christian Hieronimi System for determining and/or controlling the location of objects
US9322903B2 (en) * 2010-11-12 2016-04-26 Christian Hieronimi System for determining and/or controlling the location of objects
US20140192669A1 (en) * 2013-01-10 2014-07-10 Apple Inc. Filtering of wi-fi physical layer measurements
US9960865B2 (en) * 2013-01-10 2018-05-01 Apple Inc. Filtering of Wi-Fi physical layer measurements
CN104049238A (en) * 2014-06-13 2014-09-17 上海交通大学 Floor positioning method based on wireless signals
CN104049238B (en) * 2014-06-13 2016-06-29 上海交通大学 Floor location method based on wireless signal
US20170220829A1 (en) * 2015-02-04 2017-08-03 Timekeeping Systems, Inc. Tracking system for persons and/or objects
US11105909B2 (en) * 2015-02-04 2021-08-31 Timekeeping Systems, Inc. Tracking system for persons and/or objects
US11337176B2 (en) 2020-06-12 2022-05-17 Cisco Technology, Inc. Access point based location system for high density wifi deployments

Also Published As

Publication number Publication date
US20120044072A1 (en) 2012-02-23
US8169300B2 (en) 2012-05-01
US20100026513A1 (en) 2010-02-04

Similar Documents

Publication Publication Date Title
US8089371B2 (en) Logical floor determination for a wireless device using weighted AP received signal strengths
US7894412B2 (en) Floor determination for a wireless device
US9042318B2 (en) Distributed channel assignment
US8085131B2 (en) System for tag estimation and anti-collision and method thereof
US20130090145A1 (en) Method for controlling random access for the efficient sensing of the cooperative spectrum in a cognitive radio-based frequency resource sharing system
Seo et al. A new GA-based resource allocation scheme for a reader-to-reader interference problem in RFID systems
US11412476B2 (en) Offloading location computation from cloud to access point (AP) with projection on base phase vectors
US20190104495A1 (en) Assigning a subset of access points in a wireless network to a high priority
CN107211434A (en) For method, system and the computer program product of the operation for managing WAP
JP6420360B2 (en) Method, apparatus and system for CoMP-based resource allocation
Eom et al. Framed-slotted ALOHA with estimation by pilot frame and identification by binary selection for RFID anti-collision
US20050153703A1 (en) Method of allocating resources in telecommunications system transceiver, computer program, and telecommunications system
CN112235724B (en) Indoor positioning method and device, electronic equipment and computer readable storage medium
US10306595B2 (en) Method and apparatus for selecting hopping target channels
CN109711222B (en) Radio frequency identification anti-collision performance test method, test instrument and storage medium
KR102009506B1 (en) A cognitive radio communication method
EP3997823A1 (en) Method and apparatus for carrier aggregation optimization
CN112449351A (en) Resource scheduling method based on space isolation
CN116930857B (en) Label positioning method and device, storage medium and electronic equipment
Raghavendra et al. Cognitive Radio Spectrum Sensing using Hybrid MME and Energy Double Thresholding Optimized with Weighted Chimp Optimization Algorithm
US20240048989A1 (en) Systems and methods for detecting unauthorized broadband internet access sharing
US20230269693A1 (en) Methods and systems for radio frequency signature generation and position estimation
CN113766517B (en) Mobile network coverage state calculation method and device
CN110012420B (en) RSS (received Signal Strength) -based method and device for malicious access point with unknown transmission power
Ray et al. A novel framework for the network-wide distributed detection problem

Legal Events

Date Code Title Description
AS Assignment

Owner name: CISCO TECHNOLOGY, INC.,CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PANDEY, SANTOSH G.;REEL/FRAME:021315/0775

Effective date: 20080730

Owner name: CISCO TECHNOLOGY, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PANDEY, SANTOSH G.;REEL/FRAME:021315/0775

Effective date: 20080730

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 8

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 12