Obtaining accurate position information for mobile stations, such as cellular or other wireless communication devices, is becoming prevalent in the communications industry. The Global Positioning System (GPS) offers an approach to providing wireless mobile station position determination. A GPS user can derive precise navigation information including three-dimensional position, velocity and time of day through information gained from satellite vehicles (SVs) in orbit around the earth. The signals that are received from the SVs are typically rather weak. Therefore, in order to determine the position of the receiver, the receiver must be sufficiently sensitive to receive these weak signals and interpret the information that is represented by them.
One limitation of current GPS receivers is that their operation is limited to situations in which multiple satellites are clearly in view, without obstructions, and where a good quality antenna is properly positioned to receive such signals. As such, they normally are unusable in areas with blockage conditions, such as where there is significant foliage or building blockage (e.g., urban canyons) and within buildings.
One manner to compensate for limitations in GPS positioning is the use of dead reckoning. Dead reckoning is used to estimate a current position based on a previously determined position and the direction and distance traveled from that previously determined position, e.g., as measured by motion sensors or other sensors. Dead reckoning measurements, however, may suffer from drift errors. For example, drift in an accelerometer may affect the measured distance traveled. Further environmental factors, such the horizontal travel of an escalator may affect the distance measurement. Additionally, Earth magnetic field disturbances (anomalies) may affect magnetic measurements producing an error in the direction traveled. Consequently, the use of dead reckoning results in position determination that becomes increasingly inaccurate over time. Thus, improvements for position determination of mobile stations are desired.
A mobile station improves its position estimate using dead reckoning and wireless signal distance estimates. The mobile station calculates a first round trip time (RTT) based distance at a first mobile station position between the first mobile station position and an access point. The mobile station moves to a second position and calculates a dead reckoning transition distance between the first mobile station position and the second mobile station position. The mobile station calculates a wireless signal transition distance between the first mobile station position and the second mobile station position based on a second RTT-based distance calculated between the access point and the second mobile station position. The mobile station computes an uncertainty associated with the first RTT-based distance and/or the second RTT-based distance using the dead reckoning transition distance and the wireless signal transition distance. The mobile station can correct the first RTT-based distance or the second RTT-based distanced based on comparing the dead reckoning transition distance with the wireless signal transition distance.
A wireless signal location database is used to assist in the determination of the position of a mobile station. The wireless signal location database may be generated within a mobile station or in an online server that is accessed by mobile stations. The database is generated by receiving measured parameters of a wireless signal and the estimated position of the measurement locations. The distance between the wireless signal access point and the measurement locations is estimated, e.g., based on the round trip time or path loss of the wireless signals. The positions of the wireless signal access points are then estimated based on the estimated distances and the estimated positions of the measurement locations. The estimated position of the wireless signal access point and a corresponding confidence level are stored in the database. The stored positions of the wireless signal access points and the corresponding confidence level may be used to assist in estimating the position of the mobile station using wireless signals from the access points.
As used herein, a mobile station (MS) refers to a device such as a cellular or other wireless communication device, personal communication system (PCS) device, personal navigation device (PND), Personal Information Manager (PIM), Personal Digital Assistant (PDA), laptop or other suitable mobile device which is capable of receiving wireless communication and/or navigation signals, such as navigation positioning signals. The term “mobile station” is also intended to include devices which communicate with a personal navigation device (PND), such as by short-range wireless, infrared, wireline connection, or other connection—regardless of whether satellite signal reception, assistance data reception, and/or position-related processing occurs at the device or at the PND. Also, “mobile station” is intended to include all devices, including wireless communication devices, computers, laptops, etc. which are capable of communication with a server, such as via the Internet, WiFi, or other network, and regardless of whether satellite signal reception, assistance data reception, and/or position-related processing occurs at the device, at a server, or at another device associated with the network. Any operable combination of the above are also considered a “mobile station.”
A satellite positioning system (SPS) typically includes a system of transmitters positioned to enable entities to determine their location on or above the Earth based, at least in part, on signals received from the transmitters. Such a transmitter typically transmits a signal marked with a repeating pseudo-random noise (PN) code of a set number of chips and may be located on ground based control stations, user equipment and/or space vehicles. In a particular example, such transmitters may be located on Earth orbiting satellite vehicles (SVs) 102, illustrated in
In accordance with certain aspects, the techniques presented herein are not restricted to global systems (e.g., GNSS) for SPS. For example, the techniques provided herein may be applied to or otherwise enabled for use in various regional systems, such as, e.g., Quasi-Zenith Satellite System (QZSS) over Japan, Indian Regional Navigational Satellite System (IRNSS) over India, Beidou over China, etc., and/or various augmentation systems (e.g., an Satellite Based Augmentation System (SBAS)) that may be associated with or otherwise enabled for use with one or more global and/or regional navigation satellite systems. By way of example but not limitation, an SBAS may include an augmentation system(s) that provides integrity information, differential corrections, etc., such as, e.g., Wide Area Augmentation System (WAAS), European Geostationary Navigation Overlay Service (EGNOS), Multi-functional Satellite Augmentation System (MSAS), GPS Aided Geo Augmented Navigation or GPS and Geo Augmented Navigation system (GAGAN), and/or the like. Thus, as used herein an SPS may include any combination of one or more global and/or regional navigation satellite systems and/or augmentation systems, and SPS signals may include SPS, SPS-like, and/or other signals associated with such one or more SPS.
The mobile station 100 is not limited to use with an SPS for position determination, as position determination techniques described herein may be implemented in conjunction with various wireless communication networks, including cellular towers 106 and from wireless communication access points 104, such as a wireless wide area network (WWAN), a wireless local area network (WLAN), a wireless personal area network (WPAN), and so on. Further the mobile station 100 may access online servers to obtain data, such as satellite images, using various wireless communication networks via cellular towers 106 and from wireless communication access points 104, or using satellite vehicles 102 if desired. The term “network” and “system” are often used interchangeably. A WWAN may be a Code Division Multiple Access (CDMA) network, a Time Division Multiple Access (TDMA) network, a Frequency Division Multiple Access (FDMA) network, an Orthogonal Frequency Division Multiple Access (OFDMA) network, a Single-Carrier Frequency Division Multiple Access (SC-FDMA) network, Long Term Evolution (LTE), and so on. A CDMA network may implement one or more radio access technologies (RATs) such as cdma2000, Wideband-CDMA (W-CDMA), and so on. Cdma2000 includes IS-95, IS-2000, and IS-856 standards. A TDMA network may implement Global System for Mobile Communications (GSM), Digital Advanced Mobile Phone System (D-AMPS), or some other RAT. GSM and W-CDMA are described in documents from a consortium named “3rd Generation Partnership Project” (3GPP). Cdma2000 is described in documents from a consortium named “3rd Generation Partnership Project 2” (3GPP2). 3GPP and 3GPP2 documents are publicly available. A WLAN may be an IEEE 802.11x network, and a WPAN may be a Bluetooth network, an IEEE 802.15x, or some other type of network. The techniques may also be implemented in conjunction with any combination of WWAN, WLAN and/or WPAN.
The accelerometer 122 and magnetometer 124 in the motion sensors 120, SPS receiver 140, and wireless transceiver 135 are connected to and communicate with a mobile station control 150. The mobile station control 150 accepts and processes data from the motion sensors 120, SPS receiver 140, and wireless transceiver 135 and controls the operation of the devices. The mobile station control 150 may be provided by a processor 152 and associated memory 154, a clock 153, hardware 156, software 158, and firmware 157. The mobile station 150 further includes a received signal strength indicator system (RSSI) 155 that may be separate from or part of the processor 152. The RSSI system 155 determines the signal strength of any radio signal received by the wireless transceiver 135 provides the measured signal strength to the processor 152. Additionally, the processor 152 may control the wireless receiver 135 to produce a signal to an access point and monitor the time to receive a response to determine a round trip time for the wireless signal.
The mobile station 150 further includes a location engine 159, which is illustrated separately from processor 152 for clarity, but may also be within the processor 152. The location engine 159 processes the positioning data, including the SPS data, the dead reckoning data, and wireless signal data, and the wireless location database to determine the position of the mobile station 100. The wireless location database may be stored in memory 154 or, alternatively, in a server database that is accessed via the wireless transceiver 135. Moreover, in some embodiments, the location engine may also be located on a server, e.g., server 112 in
It will be understood as used herein that the processor 152 can, but need not necessarily include, one or more microprocessors, embedded processors, controllers, application specific integrated circuits (ASICs), digital signal processors (DSPs), and the like. The term processor is intended to describe the functions implemented by the system rather than specific hardware. Moreover, as used herein the term “memory” refers to any type of computer storage medium, including long term, short term, or other memory associated with the mobile station, and is not to be limited to any particular type of memory or number of memories, or type of media upon which memory is stored.
The mobile station 100 also includes a user interface 160 that is in communication with the mobile station control 150, e.g., the mobile station control 150 accepts data and controls the user interface 160. The user interface 160 may include a display 162 that displays images produced by a camera 130 as well as control menus and positional information. The user interface 160 further includes a keypad 164 or other input device through which the user can input information into the mobile station 100. In one embodiment, the keypad 164 may be integrated into the display 162, such as a touch screen display. The user interface 160 may also include, e.g., a microphone and speaker, e.g., when the mobile station 100 is a cellular telephone.
The methodologies described herein may be implemented by various means depending upon the application. For example, these methodologies may be implemented in hardware 156, firmware 157, software 158, or any combination thereof. For a hardware implementation, the processing units may be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, electronic devices, other electronic units designed to perform the functions described herein, or a combination thereof.
For a firmware and/or software implementation, the methodologies may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. Any machine-readable medium tangibly embodying instructions may be used in implementing the methodologies described herein. For example, software codes may be stored in memory 154 and executed by the processor 152. Memory may be implemented within the processor unit or external to the processor unit. As used herein the term “memory” refers to any type of long term, short term, volatile, nonvolatile, or other memory and is not to be limited to any particular type of memory or number of memories, or type of media upon which memory is stored.
If implemented in firmware and/or software, the functions may be stored as one or more instructions or code on a computer-readable medium. Examples include computer-readable media encoded with a data structure and computer-readable media encoded with a computer program. Computer-readable media includes physical computer storage media. A storage medium may be any available medium that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer; disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
In addition to storage on computer readable medium, instructions and/or data may be provided as signals on transmission media included in a communication apparatus. For example, a communication apparatus may include a transceiver having signals indicative of instructions and data. The instructions and data are configured to cause one or more processors to implement the functions outlined in the claims. That is, the communication apparatus includes transmission media with signals indicative of information to perform disclosed functions. At a first time, the transmission media included in the communication apparatus may include a first portion of the information to perform the disclosed functions, while at a second time the transmission media included in the communication apparatus may include a second portion of the information to perform the disclosed functions.
For illustrative purposes,
To correct for drift in the dead reckoning position estimate, wireless signals received by the mobile station are used to assist in the position determination. For example, referring to
Referring to
In order to improve the position estimate using a measured parameter, e.g., the RSSI or RTT of the wireless signal (208), the measured parameter is compared to a wireless signal fingerprint, which may be stored in the mobile station 100 or, alternatively, stored in an external database. A wireless signal fingerprint is defined as RSSI and/or round trip time measurements from all received access points. The wireless signal fingerprint is approximately unique with respect to position.
In one embodiment, the wireless signal fingerprint is stored in the mobile station 100.
The distance between the wireless signal access points and the estimated positions for the measurement locations is estimated (404). Estimation of distance from the wireless access point to the measurement locations may be determined using a channel model and may be based on round trip time measurements and/or path-loss measurements. An estimated distance that is based on path-loss measurements assumes knowledge of wireless access point transmit power. In a channel, multipath should be taken into account or the distance estimates will be impacted. Wireless signals that take an indirect path to the receiver or are reflected somewhere, will have the distance estimate affected by the round trip time estimate and the RSSI. When the mobile station moves from a non-line-of-sight position to a line-of-sight position with respect to an access point, the distance estimate based on the wireless signal will change more than the change of position due to dead reckoning would indicate. For example, in
The positions of the wireless access points may then be estimated based on a number of estimated distances and the estimated positions of the measurement locations (406). The confidence levels for the estimated positions of the measurement locations, as well as confidence levels for the estimated distances, may also be used in the determination of the access point locations. For example, estimated positions or distance estimates that are less reliable can be taken into account during minimization by attenuating their impact on the cost function. Additionally, confidence levels for the estimated positions of the wireless signal access points may be determined. The determined access point locations may be stored in a database in memory 154 for use while the mobile station is at the present location, e.g., building 300. The determined access point locations may also be stored for future use, e.g., when mobile station returns to the building 300.
With the database of access point locations generated, a wireless signal based position estimate of the mobile station may then be determined based on measured parameters (RSSI and/or RTT) of received wireless signals and the estimated positions of the wireless signal access points (408). The wireless confidence level that corresponds to the wireless signal based position estimate may also be determined. For example, the mobile station position may use the RSSI and RTT to estimate the distance to the access points, as described above. Using the estimated distance and the estimated position of the access point, the position of the mobile station may be determined, e.g., using trilateration.
The estimated position of the mobile station, e.g., from step 202 in
Additionally, the mobile station may access a server, e.g., server 112 in
As discussed above, the wireless signal locations may be stored in an external database, as opposed to being produced and stored in the mobile station. For example, the mobile station 100 may receive a wireless signal and measure one or more parameters, such as RSSI or RTT, which is provided to an external server 112 on network 110. The server 112 in response may return a corresponding wireless signal based position estimate with a confidence level if desired. The wireless signal based position estimate (with confidence level) returned from the server 112 may be provided to the location engine 159 along with the previously determined position estimate, e.g., based on dead reckoning, and a fused position estimate may be generated using the confidence levels from the different position estimates as discussed above. For example, a fused position estimate may be generated by weighting position estimates based on their respective confidence levels, e.g., higher confidence level is given more weight, before combining the position estimates, e.g., weighted average, to obtain the final fused position estimate. The server 112 may be accessed periodically, e.g., based on time or movement, to update the position estimate.
As with the processor 152 in the mobile station, it will be understood as used herein that the processor 512 can, but need not necessarily include, one or more microprocessors, embedded processors, controllers, application specific integrated circuits (ASICs), digital signal processors (DSPs), and the like. The term processor is intended to describe the functions implemented by the system rather than specific hardware. Moreover, as used herein the term “memory” refers to any type of computer storage medium, including long term, short term, or other memory associated with the server, and is not to be limited to any particular type of memory or number of memories, or type of media upon which memory is stored.
The methodologies described herein may be implemented by various means depending upon the application. For example, these methodologies may be implemented in hardware 516, firmware 520, software 518, or any combination thereof. For a hardware implementation, the processing units may be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, electronic devices, other electronic units designed to perform the functions described herein, or a combination thereof.
For a firmware and/or software implementation, the methodologies may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. Any machine-readable medium tangibly embodying instructions may be used in implementing the methodologies described herein. For example, software codes may be stored in memory 514 and executed by the processor 512. Memory may be implemented within the processor unit or external to the processor unit. As used herein the term “memory” refers to any type of long term, short term, volatile, nonvolatile, or other memory and is not to be limited to any particular type of memory or number of memories, or type of media upon which memory is stored.
If implemented in firmware and/or software, the functions may be stored as one or more instructions or code on a computer-readable medium. Examples include computer-readable media encoded with a data structure and computer-readable media encoded with a computer program. Computer-readable media includes physical computer storage media. A storage medium may be any available medium that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer; disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
In addition to storage on computer readable medium, instructions and/or data may be provided as signals on transmission media included in a communication apparatus. For example, a communication apparatus may include a transceiver having signals indicative of instructions and data. The instructions and data are configured to cause one or more processors to implement the functions outlined in the claims. That is, the communication apparatus includes transmission media with signals indicative of information to perform disclosed functions. At a first time, the transmission media included in the communication apparatus may include a first portion of the information to perform the disclosed functions, while at a second time the transmission media included in the communication apparatus may include a second portion of the information to perform the disclosed functions.
To save battery life and bandwidth in mobile stations, the estimated positions and wireless locations may be provided to the server for the purpose of data base building if motion sensors 120 in the mobile station indicate movement, if the area is covered by wireless signals, and if the area is not yet accurately reflected in the database. For example, it may be evident that the area is not yet accurately reflected in the database when the mobile station does not receive a position estimate after submitting a measured wireless signal parameter. In addition, to save battery life in the mobile station, the present methods may be extended to areas that have both SPS and wireless signal coverage so that position determination in the mobile station can take place without using the SPS system, thereby using less power and incurring little or no delay in obtaining an initial position fix, which can take several minutes using an SPS system.
Based on the received data, the distance between wireless signal access points and the estimated positions of the measurement locations for the wireless signals is determined using a channel model (604). The distance estimation may be performed similar to the estimation described in block 404 (
The positions of the wireless signal access points can then be estimated based on the estimated distances and the estimated positions of the measurement locations (606). Additionally, positions in the wireless signal fingerprint can then be estimated based on the estimated distances and the mobile station positions (606). The estimated positions of the access points and/or the fingerprints (along with corresponding confidence levels) is stored (608), e.g., in a database in memory 514. The server may provide position information to the mobile station (610). For example, where the database contains the estimated positions of the access points, the server may provide estimated positions of the access points in response to receiving the information from the mobile station (602). The mobile station may then use the provided estimates of the positions of the access points (with corresponding confidence levels) along with the channel model and measurements of the wireless signals to determine a wireless based position estimate, which can then be fused with an SPS enhanced dead reckoning position estimate, as discussed above. Alternatively or additionally, the database may contain the wireless signal fingerprint and the corresponding wireless based position estimates for different locations within the wireless fingerprint and corresponding confidence estimates. The server may provide the wireless based position estimate and confidence level to the mobile station (610) and the mobile station may fuse wireless based position estimate with an SPS enhanced dead reckoning position estimate. Alternatively, the server may fuse the SPS enhanced dead reckoning position estimate provided by the mobile station (602) with the wireless based position estimate and provided the fused position estimate to the mobile station.
Due to the large number of fingerprints constraining the position of the access points, e.g., distance to access points derived from pilot strength measurements as well as well as the relative position of fingerprints to one another derived from dead reckoning), the estimated positions of the access points will be accurate. The position estimates corresponding to the fingerprints themselves will be affected to some extent by multi-path. Therefore, these position estimates of the mobile stations will be noisy relative to the access point location estimates. However, as long as the access points are accurately positioned, the position estimates of the fingerprints will not have a bias caused by inaccurate access point positions.
Although the present invention is illustrated in connection with specific embodiments for instructional purposes, the present invention is not limited thereto. Various adaptations and modifications may be made without departing from the scope of the invention. Therefore, the spirit and scope of the appended claims should not be limited to the foregoing description.
This application is a continuation of U.S. application Ser. No. 14/748,856, entitled “Position Determination Using A Wireless Signal,” filed Jun. 24, 2015, which is a divisional of U.S. application Ser. No. 12/621,310, entitled “Position Determination Using A Wireless Signal,” filed Nov. 18, 2009, both of which are assigned to the assignee hereof and are incorporated herein by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
Parent | 12621310 | Nov 2009 | US |
Child | 14748856 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14748856 | Jun 2015 | US |
Child | 15698493 | US |