US20170295461A1 - Method and System for Providing Enhanced Location Based Trilateration - Google Patents
Method and System for Providing Enhanced Location Based Trilateration Download PDFInfo
- Publication number
- US20170295461A1 US20170295461A1 US15/630,589 US201715630589A US2017295461A1 US 20170295461 A1 US20170295461 A1 US 20170295461A1 US 201715630589 A US201715630589 A US 201715630589A US 2017295461 A1 US2017295461 A1 US 2017295461A1
- Authority
- US
- United States
- Prior art keywords
- mobile device
- location
- information
- location information
- processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C17/00—Compasses; Devices for ascertaining true or magnetic north for navigation or surveying purposes
- G01C17/02—Magnetic compasses
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C5/00—Measuring height; Measuring distances transverse to line of sight; Levelling between separated points; Surveyors' levels
- G01C5/06—Measuring height; Measuring distances transverse to line of sight; Levelling between separated points; Surveyors' levels by using barometric means
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/0009—Transmission of position information to remote stations
- G01S5/0072—Transmission between mobile stations, e.g. anti-collision systems
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0205—Details
- G01S5/0236—Assistance data, e.g. base station almanac
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0257—Hybrid positioning
- G01S5/0263—Hybrid positioning by combining or switching between positions derived from two or more separate positioning systems
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0284—Relative positioning
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0284—Relative positioning
- G01S5/0289—Relative positioning of multiple transceivers, e.g. in ad hoc networks
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0294—Trajectory determination or predictive filtering, e.g. target tracking or Kalman filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/023—Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/026—Services making use of location information using location based information parameters using orientation information, e.g. compass
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/027—Services making use of location information using location based information parameters using movement velocity, acceleration information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/90—Services for handling of emergency or hazardous situations, e.g. earthquake and tsunami warning systems [ETWS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Definitions
- the present application relates generally to a wireless mobile communication system, and more particularly to methods and systems that provide enhanced location information for wireless mobile devices.
- Wireless communication technologies and mobile electronic devices have grown in popularity and use over the past several years.
- mobile electronic devices have become more powerful and feature rich, and now commonly include global positioning system (GPS) receivers, sensors, and many other components for connecting users to friends, work, leisure activities and entertainment.
- GPS global positioning system
- mobile devices remain lacking in their ability to provide effective location based services, information, or communications.
- generating enhanced location information for mobile devices is expected to become an important and challenging design criterion for mobile device manufactures and network engineers.
- the various aspects include methods of determining a location of a mobile device via enhanced location based trilateration, the method including receiving, via a processor of the mobile device, location information from one or more external devices, the received location information including a waypoint from each of the one or more external devices, each waypoint including a coordinate value, an altitude value and a range value, the range value identifying a distance from a external device to the mobile device, determining the validity of each of the received waypoints, performing normalization operations to normalize the received valid waypoints, assigning an overall ranking to each of the normalized waypoints, assigning an device-specific ranking to each of the normalized waypoints, and storing the normalized waypoints in memory, selecting four waypoints from memory based on a combination of the overall ranking and the device-specific ranking associated with each waypoint, applying the four selected waypoints to a kalman filter to generate a final location waypoint, and using the generated final location waypoint to provide a location based service.
- receiving location information from one or more external devices may include receiving location information from one or more of a mobile device, a device having a Cell ID, a WiFi device, a Bluetooth device, an RFID device, a GPS device, a location beacon transmitting device, and external trilateration location information.
- determining the validity of each of the received waypoints may include determining a range value for each waypoint included in the received location information, and determining the validity of each of the received waypoints based on its corresponding range value.
- determining the validity of each of the received waypoints may include determining a confidence value for each waypoint included in the received location information, and determining the validity of each of the received waypoints based on its corresponding confidence value.
- receiving location information from one or more external devices may include establishing communication links to each of a plurality of external devices in a communication group, and receiving location information from only the external devices in the communication group.
- selecting four waypoints from memory based on a combination of the overall ranking and the device-specific ranking associated with each waypoint may includes selecting one of the waypoints included in the received location information and three previously generated waypoints from the memory.
- selecting four waypoints from memory based on a combination of the overall ranking and the device-specific ranking associated with each waypoint may include selecting two of the waypoints included in the received location information and two previously generated waypoints from the memory.
- selecting four waypoints from memory based on a combination of the overall ranking and the device-specific ranking associated with each waypoint may includes selecting three of the waypoints included in the received location information and one previously generated waypoints from the memory.
- Further embodiments may include a computing device having a processor configured with processor-executable instructions to perform various operations corresponding to the methods discussed above. Further embodiments may include a computing device having various means for performing functions corresponding to the method operations discussed above. Further embodiment may include a non-transitory processor-readable storage medium having stored thereon processor-executable instructions configured to cause a processor to perform various operations corresponding to the method operations discussed above.
- FIG. 1 is a communication system block diagram illustrating network components of an example telecommunication system suitable for use in a mobile-device centric approach for determining the location of a mobile device in accordance with various embodiments.
- FIG. 2 is a communication system block diagram illustrating network components of an example telecommunication system suitable for use in a network centric approach for determining the location of a mobile device in accordance with various embodiments.
- FIG. 3 is an illustration of an example mobile device suitable for use in grouping with other mobile devices and computing precise location information in accordance with the various embodiments.
- FIG. 4A is a communication system block diagram illustrating network components of an example LTE communication system suitable for use with various embodiments
- FIG. 4B is a block diagram illustrating logical components, communication links and information flows in an embodiment communication system.
- FIGS. 5A-5C are component block diagrams illustrating functional components, communication links, and information flows in an embodiment method of grouping mobile devices and sharing location information between grouped mobile devices.
- FIG. 5D is a process flow diagram illustrating an embodiment mobile device method for grouping mobile devices and sharing location information between grouped mobile devices and the network to compute enhanced location information.
- FIGS. 6A-6D are component block diagrams illustrating functional components, communication links, and information flows in an embodiment method for computing location information in which the grouped/paired mobile devices are updated with their respective location information.
- FIG. 6E is a process flow diagram illustrating an embodiment system method of determining the location of two or more grouped mobile devices.
- FIG. 6F is a process flow diagram illustrating an embodiment mobile device method of adjusting the update intervals in response to detecting a low battery condition.
- FIG. 7 is a component block diagram illustrating functional components, communication links, and information flows in embodiment method of periodically scan for cells.
- FIG. 8 is a process flow diagram illustrating an embodiment mobile device method for determining the location of a mobile device in a wireless network.
- FIGS. 9A-9E are component block diagrams illustrating various logical and functional components, information flows and data suitable for use in various embodiments.
- FIG. 10 is a sequence diagram illustrating an embodiment hybrid lateration method by which mobile devices may gain access to the network.
- FIG. 11 is a sequence diagram illustrating another embodiment hybrid lateration method in which a mobile device cannot locate a network due coverage problems.
- FIGS. 12A-12C are component block diagrams illustrating functional components, communication links, and information flows in an embodiment method of transferring a connection from a local radio system to the small cell system.
- FIGS. 13A-13C are component block diagrams illustrating functional components, communication links, and information flows in an embodiment method of identifying and responding to a distressed mobile device.
- FIG. 14 is a component block diagrams illustrating functional components, communication links, and information flows in an embodiment method of performing dead reckoning grouping mobile devices in an ad-hoc scheme.
- FIG. 15 is an illustration of an enhanced antenna that may be used with various embodiments to further improve positional accuracy.
- FIG. 16A-B are illustrations of various enhanced antenna configurations that may be used with the various embodiments to further improve positional accuracy.
- FIG. 17A-B are sectional diagrams illustrating strips of antenna patches that may be used in various embodiments.
- FIG. 18 is a circuit diagram of antenna system suitable for use with various embodiments.
- FIG. 19 is an illustration of an embodiment antenna array retrofitted into an existing cellular wireless network in accordance with an embodiment.
- FIG. 20 is a component block diagram of a mobile device suitable for use with an embodiment.
- FIG. 21 is a component block diagram of a server suitable for use with an embodiment.
- FIG. 22 is a flow diagram that illustrates various components, operations, and information flows in a system configured to perform location-based operations in accordance with an embodiment.
- FIG. 23 is a flow diagram that illustrates an embodiment location-based method in which a mobile device operates as a master.
- FIG. 24 is a flow diagram that illustrates an embodiment location-based method in which a mobile device operates as a slave
- FIG. 25 is a component block diagram illustrating functional components, communication links, and information flows in system configured to perform a method for determining and using the Latitude, Longitude, and Altitude of a trusted or known location in accordance with an embodiment.
- FIGS. 26 through 29 are component block diagrams that illustrate sharing of location based information between mobile devices in accordance with various embodiments.
- FIG. 30A is a block diagram illustrating various components, information flows, and operations in an example mobile device system configured to perform enhanced location based service (eLBS) trilateration operations in accordance with various embodiments.
- eLBS enhanced location based service
- FIG. 30B is a block diagram illustrating various components, information flows, and operations in an example mobile device system configured to perform single device eLBS trilateration operations in accordance with various embodiments
- FIG. 30C is a block diagram illustrating various components, information flows, and operations in a device/system configured to perform eLBS trilateration operations in accordance with some embodiments.
- FIG. 31 is a diagram illustrating a method of time normalization in accordance with an embodiment.
- FIG. 32 is a block diagram that illustrates various components, operations, and information flows in a system configured to perform location based operations in accordance with an embodiment.
- FIG. 33 is a block diagram that illustrates various components, operations, and information flows in a system configured to perform location based operations in accordance with an embodiment.
- FIG. 34 is a block diagram that illustrates various components, operations, and information flows in a system for receiving trilateration input from up to N units in accordance with an embodiment.
- FIG. 35 is a block diagram that illustrates various components, operations, and information flows in a system configured to use a kalman filter in accordance with an embodiment.
- FIG. 36 is a block diagram that illustrates various components, operations, and information flows in a system configured for multiple different types of inputs in accordance with an embodiment.
- FIG. 37 illustrates sharing of location based information between mobile devices in accordance with various embodiments.
- FIG. 38 illustrates a block diagram that illustrates various components, operations, and information flows in a system in accordance to embodiments.
- mobile device cellular telephone
- cell phone refers to any one or all of cellular telephones, smartphones, personal data assistants (PDA's), laptop computers, tablet computers, ultrabooks, palm-top computers, wireless electronic mail receivers, multimedia Internet enabled cellular telephones, wireless gaming controllers, and similar personal electronic devices which include a programmable processor, a memory and circuitry for sending and/or receiving wireless communication signals. While the various embodiments are particularly useful in mobile devices, such as cellular telephones, which have limited battery life, the embodiments are generally useful in any computing device that may be used to wirelessly communicate information.
- wireless network may be a radio access point (e.g., a cell tower), which provides the radio link to the mobile device so that the mobile device can communicate with the core network.
- radio access point e.g., a cell tower
- Such services and standards include, e.g., third generation partnership project (3GPP), long term evolution (LTE) systems, third generation wireless mobile communication technology (3G), fourth generation wireless mobile communication technology (4G), global system for mobile communications (GSM), universal mobile telecommunications system (UMTS), 3GSM, general packet radio service (GPRS), code division multiple access (CDMA) systems (e.g., cdmaOne, CDMA2000TM), enhanced data rates for GSM evolution (EDGE), advanced mobile phone system (AMPS), digital AMPS (IS-136/TDMA), evolution-data optimized (EV-DO), digital enhanced cordless telecommunications (DECT), Worldwide Interoperability for Microwave Access (WiMAX), wireless local area network (WLAN), public switched telephone network (PSTN), Wi-Fi Protected Access I & II (WPA, WPA2), Bluetooth®, integrated digital enhanced network (iden), and
- 3GPP third generation partnership project
- LTE long term evolution
- 4G fourth generation wireless mobile communication technology
- GSM global system for mobile
- solutions A number of different methods, technologies, solutions, and/or techniques (herein collectively “solutions”) are currently available for determining the location of mobile device, any or all of which may be implemented by, included in, and/or used by the various embodiments.
- solutions include, e.g., global positioning system (GPS) based solutions, assisted GPS (A-GPS) solutions, and cell-based positioning solutions such as cell of origin (COO), time of arrival (TOA), observed time difference of arrival (OTDOA), advanced forward link trilateration (AFLT), and angle of arrival (AOA).
- GPS global positioning system
- A-GPS assisted GPS
- COO cell of origin
- TOA time of arrival
- OOA observed time difference of arrival
- AFLT advanced forward link trilateration
- AOA angle of arrival
- WWANs wireless wide area networks
- WLANs wireless local area networks
- WPANs wireless personal area networks
- a WWAN may be a Code Division Multiple Access (CDMA) network, a Frequency Division Multiple Access (FDMA) network, an OFDMA network, a 3GPP LTE network, a WiMAX (IEEE 802.16) network, and so on.
- the WPAN may be a Bluetooth network, an IEEE 802.15x network, and so on.
- a WLAN may be an IEEE 802.11x network, 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.
- RATs radio access technologies
- Various embodiments discussed herein may generate, compute, and/or make use of location information pertaining to one or more mobile devices. Such location information may be useful for providing and/or implementing a variety of location-based services, including emergency location services, commercial location services, internal location services, and lawful intercept location services.
- emergency location services may include services relating to the provision of location and/or identification information to emergency service personal and/or emergency systems (e.g., to 911 system); commercial location services may include any general or value-added service (e.g., asset tracking services, navigation services, location-based advertising services, etc); internal location services may include services pertaining to the management of the wireless service provider network (e.g., radio resource management services, message delivery services, paging services, call delivery services, services for providing position/location network enhancements, etc.); and lawful intercept location services may include any service that provides public safety and/or law enforcement agencies with identification and/or location information pertaining to a mobile device or a mobile device user. While the various embodiments are particularly useful in applications that fall within one or more of the categories/types of location based services discussed above, the embodiments are generally useful in any application or service that benefits from location information.
- Modern mobile electronic devices typically include one or more geospatial positioning systems/components for determining the geographic location of the mobile device. Location information obtained by these geospatial systems may be used by location-aware mobile software applications (e.g., Google® Maps, Yelp®, Twitter® Places, “Find my Friends” on Apple®, etc.) to provide users with information regarding the mobile device's physical location at a given point in time.
- location-based services and software applications have increased in popularity, and now enable mobile device users to navigate cities, read reviews of nearby restaurants and services, track assets or friends, obtain location-based safety advice, and/or take advantage of many other location-based services on their mobile devices.
- the various embodiments overcome these and other limitations of existing solutions by collecting information from multiple mobile devices, generated more precise location information on or about one or more mobile devices, generating advanced three-dimensional location and position information on or about one or more mobile devices, and using the generated location/position information to provide mobile device users with more accurate, more powerful, and more reliable location based services.
- One of the challenges associated with using geo-spatial positioning technology on a mobile device is that the mobile device's ability to acquire satellite signals and navigation data to calculate its geospatial location (called “performing a fix”) may be hindered when the mobile device is indoors, below grade, and/or when the satellites are obstructed (e.g., by tall buildings, etc.).
- the presence of physical obstacles, such as metal beams or walls, may cause multipath interference and signal degradation of the wireless communication signals when the mobile device is indoors or in urban environments that include tall buildings or skyscrapers.
- the mobile device may not have sufficient access to satellite communications (e.g., to a global positioning system satellite) to effectively ascertain the mobile device's current location.
- satellite communications e.g., to a global positioning system satellite
- the various embodiments include improved location determination solutions that determine the location of a mobile device at the level of position accuracy which is suitable for use in emergency location services, commercial location services, internal location services, and lawful intercept location services.
- a mobile-device centric approach a mobile-device centric approach
- a network centric approach a hybrid approach that may include aspects of both the mobile device centric approach and the network centric approach.
- FIG. 1 illustrates an example communication system 100 suitable for implementing a mobile-device centric approach for determining the location of a mobile device 102 in accordance with various embodiments.
- the mobile device 102 may include a global positioning system (GPS) receiver in communication with multiple geo-spatial positioning and navigation satellites 110 and a base tower 104 of a communication network 106 .
- the mobile device 102 may receive (e.g., via the GPS receiver) radio signals emitted by the navigation satellites 110 , measure the time required for the signals to reach the mobile device 102 , and use trilateration techniques to determine the geographical coordinates (e.g., latitude and longitude coordinates) of the mobile device 102 .
- the mobile device 102 may send the geographical coordinates to the communication network 106 at various times and/or in response to various conditions or events, such as upon initial acquisition with the communication network 106 , in response to network-based requests, in response to third party requests, etc.
- the communication network may be a cellular telephone network.
- a typical cellular telephone network includes a plurality of cellular base stations/base towers 104 coupled to a network operations center 108 , which operates to connect voice and data calls between mobile devices 102 (e.g., mobile phones) and other network destinations, such as via telephone land lines (e.g., a POTS network, not shown) and the Internet 114 . Communications between the mobile devices 102 and the cellular telephone network may be accomplished via two-way wireless communication links, such as 4G, 3G, CDMA, TDMA, and other cellular telephone communication technologies.
- the communication network 106 may also include one or more servers 112 coupled to or within the network operations center 108 that provide connections to the Internet 114 .
- the mobile device 102 may be configured to communicate with a radio access node, which can include any wireless base station or radio access point such as LTE, CDMA2000/EVDO, WCDMA/HSPA, IS-136, GSM, WiMax, WiFi, AMPS, DECT, TD-SCDMA, or TD-CDMA and switch, Land Mobile Radio (LMR) interoperability equipment, a satellite Fixed Service Satellite (FSS) for remote interconnecting to the Internet and PSTN.
- LMR Land Mobile Radio
- FSS Satellite Fixed Service Satellite
- FIG. 2 illustrates an example communication system 200 suitable for implementing a network centric approach for determining the location of a mobile device 102 in accordance with various embodiments.
- the mobile device 102 may include a circuitry for wirelessly sending and receiving radio signals.
- the communication system 200 may include a plurality of radio access points 204 , 206 having installed thereon additional radio equipment 208 for measuring the location of the mobile devices in the communication system.
- the mobile device 102 may transmit radio signals for reception by one or more (e.g., typically three) radio access points 204 , and the radio access points may receive the transmitted signals and measure the signal strength and/or radio energy of the received signals to identify the location of the mobile device 102 .
- the radio access points 204 may be configured to determine the location of the mobile device relative to a known location of a network component, such as the illustrated radio access point 206 .
- the additional radio equipment 208 installed on the radio access points 204 , 206 provides the communication system 200 with similar functionality as is provided by a GPS receiver for signals received from the mobile device.
- the radio equipment on one or more of the radio access points 204 may measure how long it takes for the radio signal to travel from the mobile device 102 to another radio access point 206 , and using trilateration techniques (e.g., time of arrival, angle of arrival, or a combination thereof), the mobile device 102 or a network server 210 may estimate the location of the mobile device 102 to within an accuracy of 100 to 300 meters.
- this information can be used to determine the geo-spatial location of the mobile device 102 , which may be communicated to other systems, servers or components via the Internet 114 .
- Various embodiments may implement and/or make use of a hybrid approach for determining the location of mobile devices in a communication network, which may include aspects of both the device-centric and the network-centric approaches discussed above with reference to FIGS. 1 and 2 .
- an embodiment may implement a hybrid approach in which the GPS capabilities of mobile devices, the measured signal strengths and/or radio energy of radio signals transmitted from the mobile devices, and known locations of network components are used in combination to estimate the locations of one or more mobile devices in a network.
- the mobile devices and/or network components e.g., severs, radio access points, etc.
- FIG. 3 illustrates sample components of a mobile device 102 in the form of a phone that may be used with the various embodiments.
- the mobile device/phone 102 may include a speaker 304 , user input elements 306 , microphones 308 , an antenna 312 for sending and receiving electromagnetic radiation, an electronic display 314 , a processor 324 , a memory 326 and other well known components of modern electronic devices.
- the phone 102 may also include one or more sensors 310 for monitoring physical conditions (e.g., location, motion, acceleration, orientation, altitude, etc.).
- the sensors may include any or all of a gyroscope, an accelerometer, a magnetometer, a magnetic compass, an altimeter, an odometer, and a pressure sensor.
- the sensors may also include various bio-sensors (e.g., heart rate monitor, body temperature sensor, carbon sensor, oxygen sensor, etc.) for collecting information pertaining to environment and/or user conditions.
- the sensors may also be external to the mobile device and paired or grouped to the mobile device via a wired or wireless connection (e.g., Bluetooth®, etc.).
- the mobile device 102 may include two or more of the same type of sensor (e.g., two accelerometers, etc.).
- the phone 102 may also include a GPS receiver 318 configured to receive GPS signals from GPS satellites to determine the geographic location of the phone 102 .
- the phone 102 may also include circuitry 320 for transmitting wireless signals to radio access points and/or other network components.
- the phone 102 may further include other components/sensors 322 for determining the geographic position/location of the phone 102 , such as components for determining the radio signal delays (e.g., with respect to cell-phone towers and/or cell sites), performing trilateration and/or multilateration operations, identifying proximity to known networks (e.g., Bluetooth® networks, WLAN networks, WiFi, etc.), and/or for implementing other known geographic location technologies.
- known networks e.g., Bluetooth® networks, WLAN networks, WiFi, etc.
- the phone 102 may also include a system acquisition function configured to access and use information contained in a subscriber identity module (SIM), universal subscriber identity module (USIM), and/or preferred roaming list (PRL) to, for example, determine the order in which listed frequencies or channels will be attempted when the phone 102 is to acquire/connect to a wireless network or system.
- SIM subscriber identity module
- USIM universal subscriber identity module
- PRL preferred roaming list
- the phone 102 may be configured to attempt to acquire network access (i.e., attempt to locate a channel or frequency with which it can access the wireless/communication network) at initial power-on and/or when a current channel or frequency is lost (which may occur for a variety of reasons).
- the mobile device 102 may include pre-built in USIM, SIM, PRL or access point information.
- the mobile device may be configured for first responders and/or public safety network by, for example, setting the incident radio system as the default and/or preferred communication system.
- determining the specific location of a mobile device in a wireless network remains a challenging task for a variety of reasons, including the variability of environmental conditions in which mobile devices are often used by consumers, deficiencies in existing technologies for computing and/or measuring location information on mobile devices, and the lack of uniform standards.
- mobile device designers and wireless network operators, in conjunction with local public safety and third party providers are using a variety of inefficient, incoherent, and sometimes incompatible methods, technologies, solutions, and/or techniques to determine the location of a mobile device and/or to provide location based services.
- Phase I Phase I
- Phase II Phase II
- the FCC requested cellular service providers upgrade their systems in two phases.
- cellular service providers were to upgrade their systems so that emergency calls (e.g., 911 calls) are routed to the public service answering point (PSAP) closest to the cell-tower antenna with which the mobile device is connected, and so that PSAP call-takers can view the phone number of the mobile device and the location of the connecting cell-tower.
- PSAP public service answering point
- the location of the connecting cell-tower may be used to identify the general location of the mobile device within a 3-6 mile radius.
- cellular service providers were to upgrade their systems so that PSAP call-takers could identify the location of the mobile device to within 300 meters.
- wireless service providers have implemented a variety of technologies, and depending on the technology used, can generally identify the location of the mobile device to within 50-300 meters.
- a network-based solution e.g., triangulation of nearby cell towers, etc.
- the location of a mobile device can be determined within an accuracy of 100 meters 67% of the time, and to within an accuracy of 300 meters 95% of the time.
- a mobile device-based solution e.g., embedded global positioning system receivers, etc.
- the location of the mobile device may be determined to within 50 meters 67% of the time, and to within 150 meters 95% of the time.
- phase I and II solutions are not adequate for generating location information having sufficient accuracy or detail for use in providing accurate, powerful, and reliable location based services.
- Various embodiments may use some or all of the capabilities built into existing systems (e.g., as part of phase I and II upgrades, device-centric systems, network-centric systems, etc.), in conjunction with more advanced location determination techniques, to compute location information suitable for the advanced location based services demanded by today's consumers.
- a single-carrier signal transmitted between a transceiver and a mobile device can be received via multiple paths (i.e., multipath), and the multiple paths of the signal can have different received powers and arrival times.
- the received signal may be cross-correlated to distinguish the multiple paths of the received signal.
- the first-arrival path e.g., first detected signal, strongest signal, etc.
- this first-arrival path is the strongest path due to zero or fewer reflections, relative to the other paths, between the transceiver and the mobile device.
- the first-arrival time of the identified first-arrival path may be used in addition to other parameters (e.g., an estimated signal transmission time and/or a time offset between clocks of the transceiver and the mobile device, etc.) to estimate distance between a mobile device and a network component (e.g., another mobile device, a transceiver, an access point, a base station, etc.).
- the first-arrival time may be estimated by the mobile device (e.g., based on the downlink received signal) or by the network component (e.g., based on an uplink received signal).
- the location of the mobile device may also be determined by estimating the distance between the mobile device and a network component or other signal sources (e.g., a transceiver, ground or satellite-based signal sources, etc.). For example, the location of the mobile device may be determined by performing trilateration using estimated distances between multiple (e.g., three or more) transceivers and the mobile device.
- a network component or other signal sources e.g., a transceiver, ground or satellite-based signal sources, etc.
- the location of the mobile device may be determined by performing trilateration using estimated distances between multiple (e.g., three or more) transceivers and the mobile device.
- Another location determination solution may include computing an observed time difference of arrival (OTDOA) value by measuring the timing of signals received from three network components (e.g., mobile devices, transceivers, access points, etc.).
- OTDA observed time difference of arrival
- a mobile device may be configured to compute two hyperbolas based on a time difference of arrival between a reference transceiver signal and signals of two neighbor transceivers. The intersection of the computed hyperbolas may define a position on the surface of the earth that may be used by various embodiments to determine the location of the mobile device.
- OTDOA solutions may be a function of the resolution of the time difference measurements and the geometry of the neighboring transceivers. As such, implementing an OTDOA solution may require determining the precise timing relationship between the neighboring transceivers. However, in existing asynchronous networks, this precise timing relationship may be difficult to ascertain.
- location measurement units may be added throughout a deployment region of an asynchronous network to measure/compute timing information for one or more network components (e.g., transceivers) relative to a high quality timing reference signal.
- a mobile device or an LMU may determine the observed time difference between frame timing of transceiver signals, and the observed time difference may be sent to the transceiver or a radio network controller of the communication network to determine the location of the mobile device.
- the location of the mobile device may also be determined based on the observed time difference and assistance data (e.g., position of the reference and neighbor transceivers) received from the communication network.
- Another location determination solution may include computing an uplink-time difference of arrival (U-TDOA) based on network measurements of the time of arrival of a known signal sent from the mobile device and received at multiple (e.g., four or more) LMUs.
- U-TDOA uplink-time difference of arrival
- LMUs may be positioned in the geographic vicinity of the mobile device to accurately measure the time of arrival of known signal bursts, and the location of the mobile device may be determined using hyperbolic trilateration based on the known geographical coordinates of the LMUs and the measured time-of-arrival values.
- location determination solutions are typically based on single-carrier signals.
- the various embodiments include a ground-based location determination solution based on multi-carrier signals.
- a location determination solution based on multi-carrier signals may improve the accuracy of the computed location information by, for example, improving the accuracy of the timing estimation (e.g., by expanding the bandwidth of cellular signals).
- Location determination solutions based on multiple carriers may be used in both the device-centric (e.g., mobile device-based) and network-centric (e.g., base station-based) approaches, and may be applied to both 3GPP and 3GPP2 wireless communication technologies.
- a mobile device may be configured to determine its geospatial location based on information collected from mobile device sensors (e.g. gyroscope, accelerometer, magnetometer, pressure sensor, etc.), information received from other mobile devices, and information received from network components in a communication system.
- mobile device sensors e.g. gyroscope, accelerometer, magnetometer, pressure sensor, etc.
- FIG. 4A illustrates an example communication system within which the various embodiments may be implemented.
- the mobile device 102 may be configured to send and receive communication signals to and from a network 406 , and ultimately the Internet 114 , using a variety of communication systems/technologies (e.g., GPRS, UMTS, LTE, cdmaOne, CDMA2000TM).
- LTE long term evolution
- eNB eNodeB
- S-GW serving gateway
- the mobile device 102 or serving gateway 408 may also send signaling (control plane) information (e.g., information pertaining to security, authentication, etc.) to a mobility management entity (MME) 410 .
- MME mobility management entity
- the MME 410 may request user and subscription information from a home subscriber server (HSS) 412 , perform various administrative tasks (e.g., user authentication, enforcement of roaming restrictions, etc.), and send various user and control information to the S-GW 408 .
- the S-GW 408 may receive and store the information sent by the MME 410 (e.g., parameters of the IP bearer service, network internal routing information, etc.), generate data packets, and forward the data packets to a packet data network gateway (P-GW) 416 .
- the P-GW 416 may process and forward the packets to a policy and control enforcement function (PCEF) 414 which receives the packets and requests charging/control policies for the connection from a policy and charging rules function (PCRF) 415 .
- PCEF policy and control enforcement function
- the PCRF 415 provides the PCEF 414 with policy rules that it enforces to control the bandwidth, the quality of service (QoS), and the characteristics of the data and services being communicated between the network (e.g., Internet, service network, etc.) and the mobile device 102 .
- the PCEF 414 may be a part of, or perform operations typically associated with, the P-GW 416 .
- Policy and Charging Control Architecture may be found in “3rd Generation Partnership Project Technical Specification Group Services and System Aspects, Policy and Charging Control Architecture,” TS 23.203, the entire contents of which are incorporated herein by reference.
- the network 406 may also include an Evolved Serving Mobile Location Center (E-SMLC) 418 .
- E-SMLC Evolved Serving Mobile Location Center
- the E-SMLC 418 collects and maintains tracking information about the mobile device 102 .
- the E-SMLC 418 may be configured to provide location services via a lightweight presentation protocol (LPP), which supports the provision of application services on top of TCP/IP networks.
- LPP lightweight presentation protocol
- the E-SMLC 418 may send or receive (e.g., via LPP) almanac and/or assistance data to and from the MME 410 and/or eNB 404 .
- the E-SMLC 418 may also forward external or network initiated location service requests to the MME 410 .
- the mobile device 102 may receive information from the serving eNodeB 404 via System Information Blocks that includes the neighbor cells to scan that are on the same system using the same frequencies or different frequencies, Home eNB (HeNB), in addition to CDMA, GERAN and UTRA cells.
- HeNB Home eNB
- FIG. 4B illustrates logical components, communication links, and information flows in an embodiment communication system 450 suitable for use in determining the location of the mobile device.
- the communication system 450 may include a network location based system 452 , a core network 454 , and a radio access network 456 .
- the communication system 450 may also include an application component 458 , a position calculation component 460 , a wireless grouping component 462 , and a sensor data component 464 , any or all of which may be included in a mobile device 102 .
- the application component 458 e.g., client software
- the network location based system 452 (or another client attached to, or within, the core network 454 ) may request and receive location information from the application component 458 .
- the mobile device 102 may be configured to determine its geospatial location based on information collected from mobile device sensors (e.g. gyroscope, accelerometer, magnetometer, pressure sensor, etc.), information received from other mobile devices, and information received from network components in a communication system.
- the collection and reporting of sensor information may be controlled/performed by the sensor data component 464 .
- the application component 458 may retrieve/receive sensor information from the sensor data component 464 and send the sensor information to the position calculation component 460 to compute the location of the mobile device locally for position updates and/or position augmentation.
- the application component 458 may also send the computed location information to the network location based system 452 and/or other mobile devices.
- the mobile device 102 may be configured to determine its geospatial location based on information collected from other mobile devices.
- two or more mobile devices may be organized into groups.
- Each mobile device may also share its location information with the other mobile devices with which the mobile device is grouped.
- mobile devices may be configured to share their current location and/or position information (e.g., latitude, longitude, altitude, velocity, etc.) and an estimate of a distance between themselves and a target mobile device with other mobile devices in their group.
- the grouping of mobile devices may be controlled by the wireless grouping component 462 .
- the application component 458 may retrieve wireless group information (e.g., information pertaining to the locations of other mobile devices) from the wireless grouping component 462 , and send the group information to the position calculation component 460 to perform local calculations for position updates and/or position augmentation.
- the position calculation component 460 may perform the local calculations based on both sensor information received from the sensor data component 464 and group information received from the wireless grouping component 462 .
- the mobile device 102 may be configured to automatically share its location information with other mobile devices upon discovery of the other mobile devices.
- Mobile devices may augment their location information (e.g., position coordinates) with information received from other mobile devices within same geographic location, and in a controlled pseudo ad-hoc environment. Since the shared location information (e.g., latitude, longitude, altitude, velocity, etc.) involves a relatively small amount of data, in an embodiment the mobile devices may receive such information from a network server by in-band and/or out-of-band signaling.
- the various embodiments may include an E-SMLC 418 component configured to send and receive location information (e.g., latitude, longitude, altitude, velocity, etc.) to and from the mobile devices, which may be achieved both on-net and off-net.
- location information e.g., latitude, longitude, altitude, velocity, etc.
- the location information may be delivered in standard formats, such as those for cell-based or geographical coordinates, together with the estimated errors (uncertainty) of the location, position, altitude, and velocity of a mobile device and, if available, the positioning method (or the list of the methods) used to obtain the position estimate
- 3GPP-LTE networks have standardized several reference signals. Various embodiments may use these reference signals for timing based location and positioning solutions. Such reference signals may include the primary and secondary synchronization signals and the cell specific reference signals.
- two or more mobile devices may be organized into groups.
- Mobile devices within the same group may be part of the same network, or may be associated with different networks and/or network technologies.
- the mobile devices within the same group may also operate on different network operating systems (NOSs) and/or radio access networks (RANs).
- NOSs network operating systems
- RANs radio access networks
- FIGS. 5A-5C illustrate functional components, communication links, and information flows in an embodiment method of grouping mobile devices and sharing location information between grouped mobile devices.
- the mobile device 102 may scan the airwaves for predefined and/or preferred radio frequency carriers and/or systems with which the mobile device 102 may connect to the network. If the mobile device 102 does not find an appropriate network with which it may connect (or loses its connection) the mobile device 102 may scan the airwaves for other radio access systems (e.g., mobile network, radio access point associated with a mobile device, etc.) to acquire (i.e., connect to) until a connection to a network/Internet 510 is established. These operations may also be performed in the event of a dropped call or power interruption.
- radio access systems e.g., mobile network, radio access point associated with a mobile device, etc.
- the mobile device 102 may also begin acquiring GPS signals while scanning the airwaves for radio frequency carriers and/or systems. If the mobile device 102 cannot acquire GPS signals, a network component (not illustrated) may help determine the relative position of the mobile device 102 based on one or more of the location determination solutions discussed herein (e.g., based on the antenna used for the radio access point, the time delay, angle of arrival, etc.).
- the mobile device 102 may acquire (i.e., connect to) an appropriate radio access system, radio frequency carrier and/or system via the mobile device's system acquisition system.
- the mobile device 102 establishes a connection to a network 510 via an eNodeB 404 .
- any or all of the communication technologies discussed above are contemplated and within the scope of the various embodiments.
- the network 510 i.e., a component in the network such as a server
- the network 510 will know the approximate location of the mobile device 102 (e.g., via one or more of the location determination solutions discussed above, such as proximity to base towers).
- the mobile device 102 may compute its current location (e.g., via GPS and/or the location determination solutions discussed above), store the computations in a memory of the mobile device, and report its current location to the network 510 .
- the network 510 may also be informed of the locations of other mobile devices 502 and the proximity of the other mobile devices 502 to the recently acquired mobile device 102 .
- FIG. 5B illustrates that the network 510 may send instructions/commands to the mobile devices 102 , 502 to cause the mobile devices 102 , 502 to group with mobile devices 102 , 502 and possibly others.
- the network 510 may be configured to automatically group the mobile devices 102 , 502 based on the proximity of the mobile devices 102 , 502 with respect to one another.
- the network 510 may be configured to allow an incident command system (ICS) commander to group the devices.
- ICS incident command system
- the network 510 may be configured to allow the mobile devices to form groups based on their proximity to one another.
- FIG. 5C illustrates that the mobile device 102 may pair/group with another mobile device 502 and/or establish communication links so that the mobile devices 102 , 502 may share real-time relative location information with each other.
- Two or more grouped/paired mobile devices 102 and 502 may identify their relative positions to each other by sending relative location information over the established communication links.
- the relative location information may include time-to-arrival, angle-of-arrival, and existing or self-aware location information.
- the mobile devices 102 , 502 may be configured report sensor information to each other and/or the network 510 .
- the sensor information may include x, y, z coordinate information and velocity information.
- the sensor information may be polled on a continuous basis, may be requested periodically, and/or made available on demand in response to network/system requests.
- a mobile device 102 , 502 may be configured to report sensor information in response to determining that there is a high likelihood that there has been change in a location of the mobile device 102 , 502 (e.g., in response to detecting motion).
- the mobile devices 102 , 502 may also be configured collect and report sensor information to the network 510 in response to receiving an instruction/command from the network 510 (i.e., a component in the network such as a server or E-SLMC 418 illustrated in FIG. 4 ).
- the network 510 (i.e., a component in the network) may be configured to receive the sensor and location information from the mobile devices 102 , 502 , and compute and store information about the distances (e.g., in time delay and angle of arrival with respect to the mobile devices 102 , 502 ).
- the reporting of sensor information may be based on local parameter settings.
- the mobile devices 102 , 502 may be configured to transmit sensor information when any of the measured parameters (e.g., x, y, z, and velocity information) meet or exceed a threshold value (e.g., exceed a rate-of-change, meet a timeout limit), which may be identified by local parameter settings stored in a memory of the mobile devices 102 , 502 .
- the mobile devices 102 , 502 may be configured to re-compute and/or update their location information in response to determining that the measured parameters (e.g., x, y, and z coordinates and velocity information) meet or exceed a threshold value.
- a mobile device 102 and/or the network 510 may be configured to compare collected sensor information to computed latitude and longitude coordinates, relative altitude information, and other available information to determine if there is a discrepancy between the collected/measured values and the expected values.
- the mobile device 102 and/or network 510 may perform additional measurements to improve the location accuracy of the measurements/location information.
- FIG. 5D illustrates an embodiment mobile device method 550 for grouping mobile devices and sharing location information between grouped mobile devices and the network to compute enhanced location information.
- the mobile device may scan the airwaves for predefined and/or preferred radio frequency carriers and/or systems with which the mobile device may connect.
- the mobile device may begin acquiring GPS signals while scanning the airwaves for radio frequency carriers and/or systems. If the mobile device cannot acquire GPS signals, the mobile device or a network component may, as part of block 554 , determine the relative position of the mobile device based on one or more of the location determination solutions discussed herein.
- the mobile device may acquire (i.e., connect to) an appropriate radio access system, radio frequency carrier, system and/or network.
- the mobile device may compute its current location (e.g., via GPS and/or the location determination solutions discussed above), store the computations in a memory, and report its current location to the network.
- the mobile device may group with other mobile devices in response to receiving instructions/commands from a network component and/or in response to detecting that the other mobile devices are within a predefined proximity to the mobile device (i.e., within a threshold distance).
- the mobile device may share its current location information, as well as information collected from sensors, with the grouped mobile devices.
- the mobile device may receive location and/or sensor information from the grouped mobile devices.
- the sensor information may include x, y, z coordinate information and velocity information.
- the mobile device may identify the relative positions of the other mobile devices, which may be achieve by evaluating the location and sensor information received from the other mobile devices and/or via any or all of the location determination solutions discussed herein.
- the mobile device may send the relative location information, its current location information, and/or sensor information to a network component and/or the other mobile devices, which may receive the sensor and location information and compute updated location information (e.g., based on distance in time delay and angle of arrival, relative altitude information, etc.).
- the mobile device may receive updated location information from the network component and/or the other grouped mobile devices.
- the mobile device may update its current location calculation and/or information based on the information received from the network component and/or the other grouped mobile devices.
- the operations of blocks 562 - 572 may be repeated until the desired level of precision is achieved for the location information.
- FIGS. 6A-6D illustrate functional components, communication links, and information flows in an embodiment method for computing location information in which the grouped/paired mobile devices 102 , 502 are updated with their respective location information.
- FIG. 6A illustrates that the mobile device 102 may communicate with a serving eNodeB 404 to relay its location information to the network 510 and/or to receive location information from the network 510 .
- FIG. 6B illustrates that another mobile device 502 may also communicate with the serving eNodeB 404 to relay its location information to the network 510 and/or to receive location information from the network 510 .
- FIG. 6C illustrates that the grouped/paired mobile devices 102 , 502 may communicate with each other to determine the distance between each other, which may be achieved by the mobile devices 102 , 502 communicating various types of information, such as time-of-arrival, relative position with angle-of-arrival measurements, and other similar values, measurements, or computations.
- the mobile devices 102 , 502 may then re-compute, refine, and/or update their current location calculations and/or location information based on information received from the other mobile devices 102 , 502 .
- FIG. 6D illustrates that the grouped/paired mobile devices 102 and 502 may send their self-aware location information and/or relative location information to the network 510 (via the serving eNodeB 404 ), and receive updated location information from the network 510 .
- the mobile devices 102 and 502 may send their present location coordinates, distances between mobile device (e.g., distance to each other), altitude, and bearings (e.g., where mobile device 102 is with respect to mobile device 502 ) to the network 220 .
- the network may compute updated location information based on the received information (e.g., coordinates, sensor information, proximity information, etc.), and send the updated location information to the mobile devices 102 , 502 .
- the mobile devices 102 , 502 may then re-compute, refine, and/or update their current location calculations and/or location information based on information received from the network.
- the operations discussed above with respect to FIGS. 6A-6D may be repeated so that the mobile devices 102 , 502 recursively, continuously, and/or periodically re-compute, refine, and/or update their current location calculations and/or location information based on updated information received from the other mobile devices and/or the network 510 until the desired level of precision is achieved for the location information.
- FIG. 6E illustrates an embodiment system method 650 of determining the location of two or more grouped mobile devices.
- a first mobile device may send and/or receive current location information to and from a network component.
- a second mobile device may send and/or receive current location information to and from a network component.
- the first and second mobile devices may communicate with each other to determine the relative distances between each other, which may be achieved by communicating various types of information, including time-of-arrival, relative position with angle-of-arrival measurements, velocity, altitude, etc.
- the first and/or second mobile devices may re-compute, refine, and/or update their current location calculations and/or location information based on information received from the other mobile devices and/or the network.
- the first and/or second mobile devices may send their updated current location calculations and/or location information to the network component, which may receive the calculations/information and compute updated location information (e.g., based on distance in time delay and angle of arrival, relative altitude information, etc.).
- the first and/or second mobile devices may receive updated location information from the network. The operations in blocks 658 - 662 may be repeated until the desired level of precision is achieved for the location information.
- the methods and operations discussed above with reference to FIGS. 5A-5D and 6A-6F may also be performed such that they include more than two devices.
- the mobile devices may be grouped into units of four (4) such that each mobile device may triangulate its position relative to the other mobile devices in the same group.
- a mobile device 102 and/or a network component may store relative location information for all the mobile devices within each group, based on the type of grouping. For example, a network component may store relative location information for all the mobile devices grouped/paired by an incident command system (ICS) commander. Likewise, the network component may store relative location information for all the mobile devices grouped/paired based on their proximity to each another.
- ICS incident command system
- the mobile device 102 may be configured to detect a low battery condition, and initiate operations to conserve battery. For example, a mobile device 102 may be configured to turn off its radio and/or terminate or reduce its participation in the group/pairing information exchange. As another example, a mobile device 102 may be flagged or identified as having a low battery condition, and the other grouped/paired mobiles devices may be informed of the low battery situation so that update intervals may be adjusted to reduce battery consumption.
- FIG. 6F illustrates an embodiment method 670 of adjusting the update intervals in a mobile device in response to detecting a low battery condition.
- the mobile device may detect/determine that the amount of power remaining in the mobile device battery is below a predetermined threshold.
- the mobile device may transmit a signal or otherwise inform grouped mobile devices of the detected low battery condition.
- the mobile device may initiate operations to converse power, such as by turn off its radio and/or reducing its participation in exchanging information with grouped mobile devices.
- the mobile device and/or the informed grouped mobile devices may adjust the update intervals with respect to the mobile device to reduce the load on the mobile device.
- grouped mobile devices may share various types of information to improve the accuracy of the location determination calculations.
- a comparison may be made for the path, range, between the mobile devices using any or all of the information available to the mobile devices (e.g., location coordinates, sensor information, proximity information, etc.). If the two mobile devices report relative positional information that is within a user or network defined range tolerance as being acceptable this is information may be forwarded to the network. If the relative positional information is not within the user or network defined range tolerance, additional polling operations may be performed to improve the accuracy of the measurements or location information. The above mentioned operations may be repeated until the desired level of accuracy is achieved. In an embodiment, the number of times the above-mentioned operations are repeated may determined based on a user-definable values which can be set by the network, user or algorithm used.
- a mobile device 102 may include two or more of the same type of sensor.
- the mobile device 102 includes more than one of the same type of sensor (e.g., includes two accelerometers)
- one of the sensors e.g., one the two accelerometers
- the values measures by each sensor may be compared, and if the difference between the values falls within a tolerance range, the values measured by the master sensor may be used to compute the sensor parameters (e.g., x, y, z, and velocity parameters). If the difference between the values falls outside a tolerance range, the mobile device may use information collected from other sensors (of the same or different types) to determine if the values measured by the master sensor are consistent with expected values.
- the mobile device may use information collected from various other types of sensors to compute sensor parameters (e.g., x, y, z, and velocity parameters), and compare the computed sensor parameters to similar sensor parameters computed based on the values measured on the master sensor to determine if the master sensor is functioning correctly. Values measured on the master sensor may also be compared to information stored in the network or other mobile devices to determine if the master sensor is functioning correctly. If it is determined that the master sensor is not functioning correctly, a secondary sensor may be designated as the master sensor. The previous master sensor may be demoted to standby status (i.e., for use if the primary sensor has a failure) and not used for immediate positional calculations.
- sensor parameters e.g., x, y, z, and velocity parameters
- the mobile devices may be asked to group/pair with more devices.
- the number of devices that a mobile device can group/pair with may be restricted by user configuration, through the system, and/or user intervention so as to conserve battery and computational efforts (e.g., when the mobile device detects a low battery condition).
- proximity grouping may be used in the x, y, and z coordinates/fields and/or for velocity information.
- the mobile device may group with yet another mobile device in an ad-hoc fashion. If no mobile device is pairable with the mobile device, it may rely on its own geographic and/or and sensor information to report to the network.
- the system may be configured so that an approval from the incident commander or user is required before the mobile is degrouped/depaired. In an embodiment, this may be achieved may transmitting a signal to a mobile device of the incident commander or user requesting approval, to which the incident commander or user may send a reply approving or disapproving of the request to degroup/depair.
- the degrouping/depairing process may be transparent to the mobile device users.
- the mobile device may send telemetry information pertaining to location services (and other telemetry information) to a grouped mobile device for relaying to the network.
- polling for information may be performed once the network has lost communication with the mobile device.
- Mobile devices that and known to be grouped to the mobile device may be instructed to communicate with the disconnected mobile even when it is trying to reacquire the network.
- a logical sequence based on proximity, signal quality to the network, and/or battery strength may be used to determine which mobile device will be used as a relay for communicating with the network.
- the relayed telemetry information may include more than just positional information.
- the telemetry information may also include bio sensor and user bio information reporting on the environment and user conditions, including heart rate and temperature, CO, O2 and other sensor information.
- the network may continuously measure/monitor the connected mobile devices. Knowing their location and relative location to each of the other mobile devices enables the network to continuously measure the uplink and downlink communication paths. If communication path degradation occurs and begins to fall within a defined system quality range (which may be user defined), a mobile device may be instructed to either handover to another radio access node for the same network and/or network technology, or be instructed to initiate to perform relay operations to relay communications though a defined mobile device as a secondary signal path.
- a defined system quality range which may be user defined
- the mobile device may attempt to acquire itself on another network. While the acquisition process is underway, a mobile device may act as a mesh device. Other mobile devices in the proximity group may also connect as a mesh network.
- the mobile devices may utilize dead reckoning (also called deducted reckoning) techniques to compute updated location information.
- Mobile devices may store the updated information for eventual relay to another mobile device which has network access or until one of the mobile devices or both devices have access to the initial network or another network and granted access to whether it is public or a private network.
- FIG. 7 illustrates normal operating conditions in which a mobile device 102 will periodically scan for other cells 704 , including its serving cell 903 . If the radio access points are part of the network then the mobile device will report the identity and signaling information required by the existing network to determine (e.g., via triangulating and/or trilateration) the mobile device's location based on a network approach. If the mobile device detects a radio access point is not part of its preferred cell selection process, it may attempt to read the coordinates and positional information from the access point that is broadcast.
- the mobile device may determine the timing difference and other requisite information to help determine its relative location and distance from the access point. This information may be related to the location system used by the mobile device to help refine its current location calculations.
- the mobile device may be configured to compare each cell read to its own coordinate and using bearing and time difference for all the cells it reads. The mobile device may then triangulate on its own position.
- a software application on the distressed mobile device may be executed.
- the software application may access an active neighbor list, read the overhead of each cell, and use that information to triangulate on the mobile device's own position.
- the mobile device may also read the time offset for each of the cells.
- the system begins to try and locate the distressed mobile's position with more precision an accuracy to assist First Responders with triangulating on the distressed mobile's position and sending the information to the incident commander and/or public service answering point (PSAP) with a relative distance to target indication that is updated on pre-defined intervals. If the mobile device has lost contact with the 911 center, PSAP then the last location is continuously displayed and any velocity information is also relayed to assist the first responders.
- PSAP public service answering point
- the mobile device 102 may be configured to send its location information to the network.
- the mobile device 102 may be configured to automatically send its location information in response to detecting the emergency, or may provide the user with an option to send the location information.
- the mobile device 102 may be configured to send its location information in response to a network initiated command.
- Each mobile device may become an access point (AP).
- the decision to be the access point may be periodically updated while still in communication with the network, or when no network is found.
- each mobile device may act as a client, and on a pseudo random time interval, the mobile devices may become an access point and then a client.
- the location based methodology may be the same for a frequency-division duplexing (FDD) and a time-division duplexing (TDD) system.
- FDD frequency-division duplexing
- TDD time-division duplexing
- the mobile device may be configured to relay its telemetry information through another mobile device having network access.
- all information sent via wireless communication links may be digital.
- the information may be encrypted to a requisite advanced encryption standard (AES) standards level or the appropriate encryption level needed for the requisite communication system and access method used.
- AES advanced encryption standard
- the location based systems may utilize reactive or proactive based methods.
- the mobile devices may synchronously interact with each other on a time basis or some other predetermined update method.
- the mobile devices may update their location information based on a set of predetermined event conditions using an algorithm.
- the various embodiments may include both reactive and proactive aspects, taking the best of both approaches to enhance location accuracy and precision.
- Various embodiments may include location determination solutions that utilize horizontal data (i.e., a set of reference points on the Earth's surface against which position measurements are made) and/or vertical data.
- Horizontal data define the origin and orientation of the coordinate system and are prerequisites for referring a position relative to the Earth's surface.
- Vertical data are based on geoids, which primarily serves as a basis to determine the height of a position relative to mean sea level for which the geoids act as a benchmark for origin and orientation.
- Various embodiments may utilize horizontal and vertical data to provide/generate enhanced three dimensional location information.
- the horizontal and vertical data can be global, national, local or custom depending on the locality and positioning reference system utilized.
- Global data are used for initial position fixing if possible and are based on GPS coordinates.
- Local data are based on a particular position on the surface of the earth, which allows for a non GPS based location based services to take place.
- the various embodiments may use global data, local data, or both.
- GPS may be used to help identify the initial positional fix, and may be augmented by dead reckoning and a hybrid trilateration solution that utilizes both network and terminal based positioning.
- both local and global data may be used.
- a hybrid lateration and trilateration solution includes a mobile device performing a measurement and sending it to the network, and a network component performing the location determination calculations.
- the various embodiments include a hybrid lateration and trilateration solution in which the mobile device performs the location determination calculations, with and without the support of the network components.
- Various embodiments may include sensor fusion operations in which a collaborative approach is used so that the sensors do not act as individual sensors, but as a collective team.
- the mobile device may include various sensors (e.g., accelerometer, gyros, magnetic compass, altimeters, odometers, etc.) capable of generating heading, orientation, distance traveled, and velocity as part of the sensor information collected on the mobile device.
- information collected from any or all the internal sensors may be used for improving location or positioning accuracy and/or confidence improvements.
- Various embodiments may compute location information based on information from multiple sensors, with or without the aid of radio frequency propagation information.
- the sensor fusion operations may include the sharing of telemetry including sensor data indicating relative movement of the individual mobile device, which enables temporal readings to assist in the location estimate, either with external assistance or dead reckoning.
- FIG. 8 illustrates an embodiment mobile device method 800 for determining the location of a mobile device in a wireless network.
- a mobile device may determine its current location using any of the above mentioned location determination solutions.
- the mobile device may share its location information with other grouped mobile devices and/or receive location information from other grouped mobile devices.
- the mobile device may compute and send updated distance vector and sensor information to a network component for improved positional fix.
- the mobile device may receive updated location information from the network component, and perform its own positional fix based on mobile data information received from the network.
- the mobile device may update its location information and/or confirm its location information using dead reckoning to enhance positional accuracy.
- Dead reckoning may provide the needed positional corrections as a local datum method for positioning when GPS or other network related positioning solutions are not available. Additionally dead reckoning may enhance the location position accuracy and precision calculations by providing additional horizontal and vertical datum comparisons.
- the current position may be deduced (or extrapolated) from the last known position.
- the dead reckoning accuracy requires a known starting point which either can be provided by the network, GPS, near field communication link, RF beacon, or via another mobile device.
- a dead reckoning system may be dependent upon the accuracy of measured distance and heading, and the accuracy of the known origin.
- error accumulation caused by sensor drift (i.e., differences or errors in values computed/collected from one or more sensors).
- sensor drift i.e., differences or errors in values computed/collected from one or more sensors.
- magnetic, accelerometers and gyroscopes are susceptible to sensor drift.
- the error accumulation for any of the sensors may increase over undulating terrain, as compared to flat terrain. Bias error and step size error are leading contributors to dead reckoning errors.
- any bias drift associated with the sensors may be address by utilizing a kalman filter to reduce the errors from the primary and/or secondary sensors (e.g., gyroscopes).
- the mobile device may be configured to include velocity computations as part of the location determination computations to account for position changes that occur.
- the step size (via velocity computation) and compass bias errors may be estimated by an enhanced kalman filter (EKF). Additionally if GPS is available, the compass may also be able to identify slow motion changes due to changes in magnetic inclination. The compass may be relied upon for motion computations in addition to that of accelerometers and gyroscopes, with and without the availability of GPS.
- EKF enhanced kalman filter
- the mobile device may be configured to not only use its own internal sensors to compute the location/positional information, but may also communicate with other mobile devices to leverage their location/positional information to enhance its own location/positional information. In essence, the mobile devices may act as RF base stations, providing the lateration capability to improve the positional accuracy of other mobile devices.
- a mobile device may be configured to poll one or more other mobile devices to gain a better positional fix on its location.
- Mobile devices may be grouped together, either through assignment by the network or through the mobile device acquiring/detecting/connecting to other mobile devices (which may or may not be in the same network) as part of a discovery method for sharing location information.
- Location information may be shared via the use of a near field communications system (e.g., Bluetooth®, ultrawideband, peanut radios, etc.), infrared, ultrasonic, and other similar technologies, such as via the use of WiFi.
- the wireless communications may also be ad hoc or infrastructure based, or based on a TDD system, such as LTE, SD-CDMA, TD-CDMA, or any other TDD methods.
- the mobile device may be configured to initiate the sharing of location/position information in response to receiving a network-driven grouping request from a network component.
- the mobile device when it has lost contact with the network, it may attempt to find a suitable mobile device to help in its location determination computations, and for possible connection to the network (e.g., via a relay).
- the mobile device may be configured to send a request for location information to another mobile device.
- the request may be sent after the authentication process between mobile devices, and may include a time stamp which may be sub-seconds in size (milliseconds).
- Another mobile device may respond with a message that also has its time stamp and when it received the time stamp from the initiating mobile device.
- Several messages may be exchanged quickly between the mobile devices to establish time synchronization and share location/positional information that includes x, y, and z coordinates and a velocity component in each message.
- the time differences along with the x, y, and z coordinates may be compared with possible pulses or pings to establish an estimated distance vector between the devices.
- a point-to-point fix may be established. This process may be repeated for all the mobile devices in a group that has been assigned or created by the mobile device itself. Having multiple distance vectors from other points to the mobile will enhance the positioning accuracy.
- a mobile device may be configured to report back to the network location server the distance vectors it has found between different mobiles.
- the other mobile devices also involved with the positioning enhancement may also report their distance vectors to the network to have their overall position accuracy improved as well.
- the positional accuracy is meant to be done in incremental steps and the process will continue until no more positional improvements will be achievable.
- the positional accuracy improvement threshold may be operator defined, and may be stored in a mobile device memory.
- the hybrid lateration method may be used in various embodiments to augment the positioning accuracy and confidence for network based position request due to boundary changes or paging requests or other position/location triggered events.
- FIGS. 9A-9E illustrate various logical components, information flows and data suitable for use in various embodiments.
- FIG. 9A illustrates that mobile devices 901 , 902 , 903 , and 904 are communicating with the wireless network via multiple cell sites/radio access points/eNodeBs 911 .
- the mobile devices 901 , 902 , 903 , and 904 may compute a relative fix on their initial location using any of the location determination solutions discussed above.
- a first mobile device 901 may be instructed to find and communicate with the other mobile devices 902 , 903 , and 904 , and/or any or all of mobile devices 902 , 903 , and 904 may be instructed to communicate with the first mobile device 901 .
- the mobile devices 901 , 902 , 903 , and 904 may be grouped together (e.g., via one of the grouping methods discussed above).
- the network may also designate one of the mobile devices 901 (e.g., a mobile device having a high position confidence) to be used as the reference or beacon for the other mobile devices 902 , 903 , and 904 within the group of mobile devices 901 , 902 , 903 , and 904 .
- FIG. 9B illustrates that a combination of circular and hyperbolic trilateration operations may be performed as part of an embodiment location determination solution. For example, if any of the coordinate data provided by the sensors and/or mobile devices is in latitude and longitudinal coordinates, it may be converted to Cartesian coordinates to facilitate a hybrid lateration calculation. In the example illustrated in FIG.
- the mobile devices 901 has been designated as reference mobile device
- reference number 912 identifies the position to be determined/computed (i.e., with a high level of accuracy) with respect to mobile device 901
- reference number 910 identifies a three dimensional sphere that encompass the mobile device 901
- reference number 914 identifies an area of the three dimensional sphere (with x, y, and z coordinates) within which the device exists.
- FIG. 9C-9D illustrate that distance vectors may be computed between the mobile devices 901 , 902 , 903 , and 904 as part of an embodiment location determination solution.
- mobile 901 using the hybrid trilateration method determines is relative position with respect to mobile devices 902 , 903 , and 904 respectively.
- reference numbers 915 , 909 , and 916 identify the relative areas of mobile devices 902 , 903 , and 904 , respectively.
- mobile devices 902 , 903 , and 904 may locate mobile device 901 , and the mobile device 901 may compute a distance vector between itself and mobile devices 902 , 903 , and/or 904 .
- the mobile device 901 may initiate communications with mobile device 902 (although mobile device 902 could initiate the communication) and exchange time stamps, positional information, sensor data. The same process may occur with respect to mobile devices 904 and 903 , in which positional and sensor information is exchanged.
- the mobile devices 902 , 903 , and 904 may establish a distance vector between themselves and mobile device 901 .
- the same process may occur with respect to mobile devices 902 , 903 , and/or 904 , in which positional and sensor information is exchanged.
- mobile device 901 may use mobiles 902 , 903 , 904 to enhance it positional information and mobile device 902 may use mobiles 901 , 903 , and 904 to enhance its positional information, and so forth for all the mobile devices that are grouped together.
- the three circles or ellipses 909 , 915 , and 916 illustrated in FIG. 9C and the three circles or ellipses 906 , 907 , and 908 illustrated in FIG. 9D do not intersect at a given point, but span an area of a particular size depending on the range involved.
- FIG. 9E illustrates an embodiment hybrid trilateration method in which the position of mobile device 901 is validated or improved upon.
- a separate calculation operation may be required for each x, y, and z coordinates, in addition to accounting for velocity.
- the ability to have three mobile devices 902 , 903 , and 904 locate mobile device 901 may present an error window (or an error area) for each coordinate plane represented by reference number 930 .
- the error window/area may be a combination of range errors from the mobile devices 902 , 903 , and 904 .
- the error area 930 is a combination of determining the range between the other mobile devices and mobile device 901 .
- the hyperbolic lateration is a typical calculation method used in location based systems and is based on the principal that the range between two locations is the same. However the range determined for the points may not be constant since both can be moving toward, away or together at a similar velocity and trajectory.
- r i ⁇ ( X i ⁇ x ) 2 +( Y i ⁇ y ) 2 +( Z i ⁇ z ) 2
- Three range calculations are then averaged to determine the distance vector that is used. If the previous range calculation r j as compared to that of the current calculation has an error in excess of a user defined percentage or variance, then the new measurement is disregarded. Included with the distance vector validation may be the fusion sensor information where expected position vector calculated may be included for the confidence interval.
- An iterative process may be used for position improvement, which may include the use of a least squares calculation fit to approximate the position solution in a step wise basis. The process may continue until the range difference measured does not produce any noticeable accuracy improvement, which may be user-defined, either at the mobile device or network or both.
- the multi-lateration calculations may include estimating a location of a mobile device based upon estimated distances to three or more measurement locations (i.e., locations of three other mobile devices or wireless transceivers).
- the estimated distance from a measurement location (location of another mobile device) to the mobile device may be derived from the measured signal strength. Since signal strength roughly decreases as the inverse square of the separation distance, and the transmission power of the mobile device can be presumed, the distance d i can be simply calculated as:
- d i is the estimated separation distance between a measurement location and the mobile device
- S i is the measured signal strength
- S 0 is the strength of the signal transmitted by the other mobile device.
- the signal strength readings may be translated into distances using a path loss model, such as the following:
- RSSI i a ⁇ cb log 10 ( d i )
- c is the path loss slope with 20 being used for free space.
- the lateration operations may include performing a least squares computation, which may accomplished by a processor calculating the following formula:
- d i is the distance calculated based on a measured signal strength value
- MS i corresponds to the known location/position of the mobile device
- the minimization value of (x, y) is the estimated position of other mobile devices.
- FIG. 10 illustrates an embodiment hybrid lateration method 1000 in which mobile devices may gain access to the network.
- the mobile devices may be instructed to be grouped by the network.
- Mobile devices 901 and 902 may initiate sharing of information for position/location, either due to the network driven grouping request or when the mobile device has lost contact with the network and attempts to find a suitable mobile device to help in its position/location and possible connection to the network via a relay or to another network.
- Mobile device 901 may send a request for position information to mobile device 902 .
- the information may be sent after the authentication process between mobile devices, and may include a time stamp.
- the time stamp may be sub seconds in size (e.g., milliseconds).
- the mobile device 902 may respond with a message that also has a time stamp, and timing information pertaining to when the mobile device 902 received the time stamp from mobile device 901 .
- Three messages may be transferred quickly to establish time synchronization.
- the time differences may then be compared, along with possible pulses or pings, to establish an estimated distance vector between the mobile devices. Knowing the distance vector and the x, y, and z coordinates of both 901 and 902 , a point-to-point fix may be established.
- the mobile device 901 may then initiate communication with mobile devices 903 , 904 and repeat the operations discussed above with respect to mobile device 902 for each of mobile device 903 , 904 . After obtaining two or more distance vectors along with positional information, the mobile device 901 may compare the new coordinates to its previously computed current location, and adjust the location computations accordingly.
- the positional information distance vectors may be sent to the network for positional processing with other network positional information.
- the network i.e., a component in the network, such as a network server or E-SMLC
- the network may instruct the mobile device to adjust its positional information.
- the mobile device 901 may also make a positional correction if the network either does not respond in time, which may result in a message update time out. Alternatively, when the network cannot make the necessary correction, and the positional information may be used by another component and/or other mobile devices to perform the necessary corrections.
- FIG. 11 illustrates another embodiment hybrid lateration method in which a mobile device cannot locate a network due to coverage problems.
- the mobile device 901 may operate in an autonomous mode and attempt to locate another mobile device.
- the other mobile device could be used to relay information to the network and possibly set up a near field communication bridge in addition to providing location enhancement capability.
- mobile device 901 establishes a near field LAN inviting other mobile devices in proximity to communicate with it. Positional information can then be shared and the mobile device 901 can have its location improved and the positional information can be relayed back to the core network via another mobile device.
- the mobile device 901 may also communicate its positional information and establish near field communication link with a mobile device that is not part of the home network associated with mobile device 901 .
- the mobile devices may have the USIM, SIM, PRL or access point information pre-built in.
- the mobile device for first responders may have the incident radio system set as their preferred system, or in the case that the radio access system being used as a public safety network.
- first responders For first responders to utilize a wireless mobile network (e.g., LTE) the position/location information accuracy needs to improved for in building environments in addition to providing more accurate location information about where the mobile devices are actually located. Whether the mobile device is used by a first responder, commercial cellular user, or a combination of both.
- a wireless mobile network e.g., LTE
- the positional location improvement for first responders may be helpful to improve situation awareness, improved telemetry and overall communication with the incident commander. Since all incidents for first responders tend to be fluid the ability to account for a dynamic environment of mobile devices coming into and out of the incident area. In addition the mobile devices proximity location to other mobile devices can and will change as the incident situation changes where resources are added and/or reassigned as the need arises for operational requirements.
- the use of network and terminal driven position enhancement techniques previously discussed may be exploited.
- the grouping of mobile devices may be done either as part of pre-plan, with intervention by the incident commander or driven from the commercial wireless network, public safety wireless network, or local incident communication system (ICS) 1204 based on reported proximity of the mobile devices.
- ICS local incident communication system
- FIG. 12A illustrates that upon arriving at the incident scene, a mobile device 102 may recognize the existence of a local radio network 1202 . If there is no ICS radio network 1204 with which the mobile device may connect, the mobile device 102 will continue to communicate via a commercial or other wireless network, 1202 .
- FIG. 12B illustrates that the mobile device 102 may determine that there is a valid local radio system 1202 with which it may communicate, and may have a priority access to small cell system 1204 based on a preferred network and cell selection process the mobile device 102 has been instructed to use.
- FIG. 12C illustrates that the mobile device 102 may transfer the connection from the local radio system 1202 to the small cell system 1204 .
- the location based process can be used to help in the search and rescue of the person.
- FIG. 13A illustrates that the mobile device 102 may be identified by the network as being in distress via network monitoring of the mobile device 102 or via the mobile device transmitting a distress signal.
- the distressed mobile device 102 may determine that it has lost communication with the network, and may instruct the wearer/user to either disable or initiate a distress signal.
- the mobile device 102 upon initiation of a distress signal, may begin a grouping process previously defined.
- FIG. 13B illustrates that the network 510 to which the serving eNodeB 404 is connected to may instruct a mobile device 1302 in the same group as the distressed mobile device 102 to report the last known location of the mobile device 102 and time stamp.
- FIG. 13C illustrates that the network 510 may instruct additional mobiles devices 1304 to attempt to group with the distressed mobile device 102 .
- FIG. 14 illustrates that when the mobile device 102 is unable to communicate with the network 510 , it may be operating under a dead reckoning process and continue to attempt to locate other mobile devices 1402 , 1404 and group with them under an ad-hoc scheme.
- the relative location of the mobile device will be sent to all the mobile devices that are in active search for that mobile device.
- the selection of which mobile devices will be searched may be determined by operator intervention and selection.
- FIG. 15 illustrates an embodiment enhanced antenna scheme 1500 that may be used by wireless network operators or first responders to improve the positional accuracy for the mobile device.
- the enhanced antenna scheme 1500 may include a radome 1515 that is curved over a series of patch antennas 1520 . Several antennas 1520 may be used achieve better angle of arrival measurement.
- the enhanced antenna scheme 1500 may include an array of antennas 1520 on flexible circuit boards so they can conform to the radome 1515 .
- FIG. 16A-B illustrate that the above mentioned enhanced antenna scheme 1500 may be implemented on a vehicle 1602 .
- FIG. 16A illustrates an enhanced antenna scheme 1500 that includes two antennas 1602 for this purpose.
- FIG. 16B illustrates an enhanced antenna scheme 1500 that includes four antennas 1602 for this purpose.
- Each antenna 1602 may include an array of antennas 1520 on flexible circuit boards so they can conform to the radome 1515 .
- FIG. 17A-B illustrate strips of antenna patches that may be used in various embodiments.
- FIG. 17A illustrates two strips of antenna patches 1520 and 1521 next to each other in an antenna array (which may be on a flexible circuit board so they conform to a radome).
- FIG. 17B is an illustration of a cross sectional view of the radome 1515 in which the antenna patches 1520 and 1521 of the antenna array are shown layered.
- the antenna patch 1520 is closer to the outer radome cover 1515 than is antenna array 1521 .
- a fiber glass or a transparent RF medium 1522 may provide rigidity and enable the antennas to be closely spaced.
- the antenna array may be cone shaped using a flexible circuit design (for receive only configurations).
- Envelope detectors may be used to determine which of the antenna patches are receiving the highest quality signal from the mobile device using an amplitude method for detection.
- the detection and tracking of a mobile device may be controlled so that the measurements are in-sync with an eNodeB pulse request to the mobile device for positional information.
- FIG. 18 illustrates an antenna array ( 1520 or 1521 ) in which the antenna system is connected to the normal antenna port on a receiver (e.g., eNodeB) 1525 .
- a receiver e.g., eNodeB
- Each of the patch antennas may be matched to a 10 db coupler 1527 and configured to provide a port coupling to a receive patch detector 1530 .
- the receive patch detector 1530 may be configured to determine which patch antenna has the strongest signal, and based on the number of patch antennas and the distance calculation, another altitude measurement may be made by the mobile device.
- the antenna array system may not be connected to the eNodeB receiver 1525 and control coordination may be provided by the E-SMLC for synchronization of the received signal from the mobile device.
- FIG. 19 illustrates an embodiment antenna array 1523 retrofitted into an existing cellular wireless network.
- the array 1523 may be installed in parallel to an existing antenna 1524 .
- a control mechanism that is the same as or similar to the control mechanism illustrated in FIG. 18 may be used for the commercial applications.
- FIG. 20 is a system block diagram of a mobile transceiver device in the form of a smartphone/cell phone 2000 suitable for use with any of the embodiments.
- the cell phone 2000 may include a processor 2001 coupled to internal memory 2002 , a display 2003 , and to a speaker 2054 . Additionally, the cell phone 2000 may include an antenna 2004 for sending and receiving electromagnetic radiation that may be connected to a wireless data link and/or cellular telephone transceiver 2005 coupled to the processor 2001 .
- Cell phones 2000 typically also include menu selection buttons or rocker switches 2008 for receiving user inputs.
- a typical cell phone 2000 also includes a sound encoding/decoding (CODEC) circuit 2024 which digitizes sound received from a microphone into data packets suitable for wireless transmission and decodes received sound data packets to generate analog signals that are provided to the speaker 2054 to generate sound.
- CODEC sound encoding/decoding
- one or more of the processor 2001 , wireless transceiver 2005 and CODEC 2024 may include a digital signal processor (DSP) circuit (not shown separately).
- DSP digital signal processor
- the cell phone 2000 may further include a peanut or a ZigBee transceiver (i.e., an IEEE 802.15.4 transceiver) 2013 for low-power short-range communications between wireless devices, or other similar communication circuitry (e.g., circuitry implementing the Bluetooth® or WiFi protocols, etc.).
- Such a server 2100 typically includes one or more processors 2101 , 2102 coupled to volatile memory 2103 and a large capacity nonvolatile memory, such as a disk drive 2104 .
- the server 2100 may also include a floppy disc drive, compact disc (CD) or DVD disc drive 2106 coupled to the processor 2101 .
- the server 2100 may also include network access ports 2106 coupled to the processor 2101 for establishing data connections with a network 2105 , such as a local area network coupled to other communication system computers and servers.
- the processors 2001 , 2101 , and 2102 may be any programmable microprocessor, microcomputer, or multiple processor chip or chips that can be configured by software instructions (applications) to perform a variety of functions, including the functions of the various embodiments described below.
- multicore processors 2102 may be provided, such as one processor core dedicated to wireless communication functions and one processor core dedicated to running other applications.
- software applications may be stored in the internal memory 2002 , 2103 , and 2104 before they are accessed and loaded into the processor 2001 , 2101 , and 2102 .
- the processor 2001 , 2101 , and 2102 may include internal memory sufficient to store the application software instructions.
- the wireless (or mobile) device location determination techniques described herein may be implemented in conjunction with various wireless communication networks such as a wireless wide area network (WWAN), a wireless local area network (WLAN), a wireless personal area network (WPAN), and so on.
- WWAN wireless wide area network
- WLAN wireless local area network
- WPAN wireless personal area network
- the term “network” and “system” are often used interchangeably.
- a WWAN may be a Code Division Multiple Access (CDMA) network, a Frequency Division Multiple Access (FDMA) network, a Time Division Multiple Access (TDMA) network, an OFDMA network, a 3GPP LTE network, a WiMAX (IEEE 802.16) network, 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.
- RATs radio access technologies
- CDMA2000 includes IS-95, IS-2000, and IS-856 standards.
- W-CDMA is 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
- 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.
- Various embodiments may include enhancements to the current location based service methods and methodologies used for wireless mobile communications, and include improved methods for determining the location of a mobile or wireless device (e.g., mobile device 102 ).
- the various embodiments include mobile devices that are configured to accurately determine their locations within a wireless network to a high degree of confidence/precision.
- the various embodiments include mobile devices that may be used by first responders for improved situation awareness at the site of an incident. In some embodiments, this may be accomplished by configuring a mobile device to determine its location with a high degree of accuracy and precision.
- geo-spatial positioning systems such as GPS systems
- GPS systems provide a good estimate for a mobile device's location.
- these geo-spatial positioning systems are not available and/or do not generate sufficiently accurate location information.
- a GPS system may not be able to acquire satellite signals and/or sufficient navigation data to calculate its geospatial location (called “performing a fix”) when the device is indoors, below grade, or when the satellites are obstructed (e.g., by tall buildings, etc.).
- network based solutions for determining the location of mobile device may also not be adequate for locating a mobile device within buildings and/or in urban environments.
- existing solutions are often unable to generate location information with a sufficiently high level of accuracy, precision or detail required to provide enhanced location based services (e.g., applications that improve situational awareness at the site of an incident, etc.).
- wireless network systems such as LTE
- LTE Long Term Evolution
- LTE wireless network systems
- This combination may allow for excellent coverage in urban and indoor environments.
- the accuracy and precision of the location information is often limited.
- location information that is generated via existing network based solutions and/or existing wireless network system technologies often does not include a sufficiently high level of accuracy, precision or detail to provide enhanced location based services (e.g., applications that improve situational awareness at the site of an incident, etc.).
- Improving positional location accuracy, confidence and precision in a mobile device has many advantages, particularly when the device is used for emergency location services, commercial location services, internal location services and lawful intercept location services.
- the various embodiments provide the ability to improve the positional location information for both new and existing wireless networks, and improve the positional location accuracy, confidence and precision in a mobile device.
- a mobile device's ability to generate highly accurate location information may provide the system with various network radio resource improvements.
- eLBS information may also allow for unique advertising targeting capabilities.
- eLBS information may be used for applications related to improved fleet management, asset tracking and various machine to machine communications for which highly accurate location/position information is important. For commercial users, the need for improved position/location information accuracy is most needed for in-building environments where the location of the mobile device can be more accurately pin pointed for location based services.
- the advantage of law enforcement with improved positional information will enable the tracking of mobile devices inside a building to enable determination of what floor or part of the building the device is being used is located without the need for replacing radio beacons or location aware access points.
- the advantage comes to better positional location of the party in need of assistance, especially in an urban environment where the positional information is most problematic with existing techniques.
- this enhancement enables mobile devices which are in the same scene to help augment their position coordinates with each other in a controlled ad-hoc environment.
- the positional information shared not only includes latitude and longitude but also altitude and velocity. Since this information involves a small amount of data the mobile devices can have the E-SMLC in the case of LTE share the information both on net and off-net.
- sensors including accelerometers, gyroscopes, magnetometers and pressure sensors along with GPS receivers with mobile devices is becoming more prevalent. Therefore the enhancements for positional location will give the E-SMLC in the case of LTE the ability to not only utilize GPS or Network derived coordinate information but also to have an augmentation with sensors associated the mobile device which can include accelerometers, gyroscopes, magnetometer and pressure sensors for refining and reducing some of the positional uncertainties that are in inherent to wireless positional determination.
- the position/location information accuracy needs to be improved for in building environments in addition to providing more accurate location information about where the mobile devices are actually located. Whether the mobile device is used by a first responder, commercial cellular user or a combination of both.
- Positional location improvement enables improved situation awareness, improved telemetry, and improved overall communication with the incident commander.
- the mobile devices proximity location to other mobile devices can and will change dynamically allowing for resources to be added and/or reassigned as the need arises for operational requirements.
- the various embodiments include methods, and mobile computing devices configured to implement the methods, of determining a location of a mobile device.
- the methods may include determining an approximate location of the mobile device, grouping the mobile device with a wireless transceiver in proximity to the mobile device to form a communication group, sending the determined approximate location of the mobile device to the wireless transceiver, receiving on the mobile device location information from the wireless transceiver, and determining a more precise location of the mobile device based on the location information received from the wireless transceiver.
- the mobile device may estimate its position and/or generate a position estimate. It could be beneficial for these position estimates to include latitude, longitude and elevation information that is accurate to within one (1) meter (and many times within one meter accuracy).
- the mobile device may be equipped with a “sensor fusion” system/component.
- the sensor fusion component may be configured to collect and use information from sensors in the mobile device to further improve the location position determinations. As such, the sensor fusion component may allow the device to better determine its approximate location and/or to generate a better position estimate (e.g., a more precise value, more accurate coordinates, etc.).
- the mobile device may be configured to receive (e.g., via an antenna coupled to one or more of its processors, etc.) location information from a multitude of external devices, and use this information to better determine its approximate location and/or to generate a better position estimate (e.g., a more precise value, more accurate coordinates, etc.).
- location information e.g., via an antenna coupled to one or more of its processors, etc.
- a better position estimate e.g., a more precise value, more accurate coordinates, etc.
- the mobile device may be configured to receive the location information was waypoints.
- a waypoint may be an information structure that includes one or more information fields, component vectors, location information, position information, coordinate information, etc.
- each waypoint may include coordinate values (e.g., x and y coordinates, latitude and longitude values, etc.), an altitude value, a time value, a timestamp, ranking values, confidence values, precision values, a range value, and an information type identifier (e.g., GPS, Loran C, sensor, combined, etc.).
- the coordinate and altitude value may identify the three-dimensional location of the corresponding external device.
- the timestamp may identify the time that the location was determined/captured.
- the range value may identify a distance between the external device and the mobile device.
- a waypoint may also be, or may include, a location estimate value, a location set, or any other similar location information suitable for adequately conveying or communicating location information.
- the mobile device may be configured to receive location information in the form of a first waypoint from a first external device, a second waypoint from a second external device, a third waypoint from a third external device, and a fourth waypoint from a forth external device.
- the mobile device may use any combination of the received waypoints (e.g., first through fourth waypoints) in conjunction with stored and historical information (e.g., previously computed waypoints, movement information, etc.) to determine or compute its approximate and/or more precise location with a high degree of accuracy.
- the mobile device may be configured to perform advanced location based operations (e.g., advanced sensor fusion operations) to generate location information (e.g., a location estimate set/value), use a differential RMS 2 method (or any other method known in the art) compute confidence values, and compare the computed confidence values to one or more threshold values to determine whether there is a sufficiently high degree of confidence in the accuracy of the generated location information (e.g., location estimate set/value).
- the mobile device may be configured to compute a confidence value between 0.0 and 1.0 that identifies a confidence level in the accuracy of the measurement for each data field in the location estimation set (e.g., a confidence value for each of the latitude, longitude and altitude data fields, etc.). For example, confidence values of 0.90, 0.95, and 0.91 may indicate that the x, y, and z coordinates are accurate within 30 meters between 90 and 95 percent of the time.
- the mobile device may be configured to also compute a precision value that identifies, or which is indicative of, the repeatability factor of the computation/measurements over multiple measurements.
- the precision value may be used to determine how often the device reports the same position/location (i.e., based on evaluating multiple reports indicating that the device has not moved more than X meters, etc.), which may be used to determine the precision of the measurement (e.g., within 1 meter, etc.).
- the precision value may also be used to determine the likelihood that repeating the computation (e.g., using the same inputs or input sources) will result in substantially the same values.
- the mobile device may be configured to perform normalization operations to normalize/synchronize the timing of the received location information (the “location information timing”). In some embodiments, this may be accomplished via a timing component or mechanism (a timer, system clock, processor cycles, etc.) in the mobile device.
- the mobile device may use a common time value (or common timer, reference clock, etc.) to synchronize and/or coordinate the information included in the received waypoints.
- the mobile device may generate normalized waypoints that include normalized values and/or which are normalized, synchronized and/or updated to account for various delays and inconsistencies, including the propagation delay between the mobile device and the corresponding external device, the time difference between when the waypoint was captured in external device and when the waypoint received in the mobile device, the relative movements of the devices, communication pathway time delays, delays associated with processing the requests, etc.
- the mobile device may be configured to associate or assign a time value to each normalized waypoint (e.g., by storing the waypoint relative to the time value in a map or table, etc.), and determine whether each normalized waypoint is valid. For example, mobile device may determine whether the time value associated is within a valid duration or whether the waypoint includes sufficiently accurate information (e.g., by determining whether a precision or confidence value associated with the waypoint exceeds a threshold value, etc.). In response to determining that a waypoint is valid, the mobile device may determine or compute one or more rankings for that waypoint, and associate and/or assign the rankings to the waypoint (by storing it as a field. In some embodiments, the mobile device may determine and assign an overall rank and a device-specific rank to each valid waypoint, and store the waypoints in memory (e.g., in a location database, etc.).
- the mobile device may be configured to determine the number of stored waypoints that are suitable for use in determining the device's current location. For example, the mobile device may determine whether the memory stores four or more valid waypoints, whether the stored waypoints are associated with sufficiently high rankings, whether the stored waypoints identify four or more independent locations, whether the stored waypoints identify the locations of four or more external devices relative to the current location of the mobile device with a sufficiently high level of accuracy, etc.
- the mobile device may intelligently select the four most suitable waypoints (e.g., waypoints having the highest overall rank and/or device-specific rank, etc.), apply the selected waypoints as inputs to a kalman filter, and use the output of the kalman filter to generate location information that identifies the mobile device's current location with a high level of accuracy (e.g., within one meter in all directions, etc.).
- the four most suitable waypoints e.g., waypoints having the highest overall rank and/or device-specific rank, etc.
- apply the selected waypoints as inputs to a kalman filter
- use the output of the kalman filter to generate location information that identifies the mobile device's current location with a high level of accuracy (e.g., within one meter in all directions, etc.).
- FIG. 22 illustrates an example eLBS method 2200 that may be performed by a processor in a mobile or wireless computing device to better determine its location in accordance with an embodiment.
- the mobile device may turn on (i.e., power on, etc.) and acquire service from a wireless service provider (e.g., via operations performed by the mobile device processor, etc.).
- the processor/mobile device may obtain an initial positional fix, and use this information to generate a waypoint (e.g., a current location waypoint) or other location information unit.
- a waypoint e.g., a current location waypoint
- the mobile device may obtain the initial positional fix by using GPS, CellID, WiFi ID, enhanced LoranC, and/or other similar information that is received by, computed in, or available to the mobile device to perform any or all of the location determination techniques, methods, or operations discussed in this application.
- the processor/mobile device may also obtain, determine, generate or compute a near term positional fix estimate (e.g., latitude and longitude values, etc.) from information received from small cells (e.g., femto cells, etc.) that are positioned in, or suitable for use in, interior locations, such as within buildings, at store entrances in malls, on light posts, in fixtures, etc.
- a near term positional fix estimate e.g., latitude and longitude values, etc.
- small cells e.g., femto cells, etc.
- the operations in block 2204 may be accomplished by utilizing RFID chips, quick response (QR) codes, or other similar technologies.
- QR quick response
- an external device may include an RFID chip that transmits its location information to the mobile device.
- the mobile device may receive and use this information to generate a near term positional fix estimate value, use the near term positional fix estimate value to generate a new waypoint, and use this new waypoint to check or validate an existing waypoint (e.g., the current location waypoint, etc.).
- the mobile device may also be configured to use the near term positional fix estimate value to compute, replace and/or re-compute the current location waypoint.
- the most recently computed, generated or stored waypoint e.g., the previous “current location waypoint,” etc.
- the mobile device may determine whether the received “additional location information” is more accurate (or has higher confidence and/or precision values) than the last known/trusted location stored in memory (or the current location waypoint discussed above), and select the more accurate location information for use in generating a final location waypoint. For example, the mobile device may generate a temporary waypoint based on the received “additional location information,” determine whether the temporary waypoint is more accurate than the current location waypoint, and select/set the more accurate of the two waypoints for use in determining the final location waypoint.
- the mobile device may use the selected waypoint (e.g., current location waypoint) to establish an LBS fix.
- the mobile device may determine whether the LBS fix is sufficient (e.g., sufficiently detailed, sufficiently accurate, etc.) for use in determining the final location waypoint.
- the mobile device may store the location information (e.g., the LBS fix, waypoint associated with the LBS fix, current location waypoint, etc.) in a location buffer in block 2216 , enter an eLBS network mode (or receive eLBS network data) in block 2218 , and receive LBS information from other devices in block 2220 .
- the mobile device may request, retrieve and/or receive sensor data, and use this information to perform sensor fusion operations.
- the mobile device may perform dead reckoning operations (e.g., based on the sensor data, results of the sensor fusion operations, etc.) to generate a DR waypoint (or DR data) that includes DR location values (X, Y, Z), a time value, DR location delta values ( ⁇ X, ⁇ Y, ⁇ Z), confidence values (C X ,C Y ,C Z ), and one or more precision values.
- the mobile device may perform trilateration operations (e.g., based on the received LBS information, DR data, etc.) to generate updated eLBS information. For example, in blocks 2224 and 2226 , the mobile device may use the received LBS information and/r DR data to determine/compute the current location of the device, generate a final location waypoint (or estimate value) that includes trilateration location values (X, Y, Z), a time value, trilateration location delta values ( ⁇ X, ⁇ Y, ⁇ Z), confidence values (C X ,C Y ,C Z ) and one or more precision values, and/or use the generated final location waypoint to set the current location of the device (e.g., by storing the generated final location waypoint as the current location waypoint, etc.). The mobile device may store any or all of this updated eLBS position information (e.g., the final location waypoint, etc.) in a location buffer in block 2216 .
- this updated eLBS position information e.g
- the mobile device processor attempts to obtain its positional location in block 2204 , and based on the types of position/location information that is provided/received, determines a confidence level value for the received information.
- the processor may be configured so that, if no responses are provided or received in block 2204 , the processor may use the last location of the mobile device to obtain/determine the initial positional fix. After the initial fix is obtained (regardless of its accuracy), the mobile device may determine whether additional improvements are available, possible, acquirable, and/or required.
- the mobile device may use the information collected from its various sensors to determine, compute and/or provide an estimate (e.g., a waypoint or estimate value) of the change in location/position of the device. In some embodiments, this may be achieved via the mobile device processor performing a combination of sensor fusion and dead reckoning operations (which are described in greater detail above).
- the sensors/sensor information may be incremented and/or decremented based on any of a variety of weighting filters, including a kalman filter.
- a kalman filter may be a component in the mobile device that is configured to perform kalman operations on a plurality of input data streams to generate a single output in the form of a location, location information, coordinates, or a waypoint.
- the mobile device may be configured to update or adjust the intervals for the sensors based on each sensor's response characteristics. Adjusting the sensors may allow the mobile device to prevent sensor saturation, thereby improving the device's overall responsiveness. For example, accelerometer data may be updated at 100 Hz intervals, manometer data may be updated at 15 Hz intervals, and the difference in the updates intervals may be included (or otherwise accounted for) in the dead reckoning determinations made in the mobile device (e.g., when the mobile device generates a dead reckoning position estimate in block 2222 , etc.).
- the trilateration component of the mobile device may be configured to perform various operations/calculations to determine or generate triangulation data (e.g., in blocks 2224 and 2226 ) that identifies the location of the device with respect to other wireless devices, both fixed and mobile. For example, after the dead reckoning position is estimated (or after the DR data is generated in block 2222 , etc.), this information may be passed to the trilateration component (e.g., via memory write operations, wireless transceiver, etc.) that uses these inputs in conjunction with the information received from the wireless/external devices to compute the location of the device (e.g., in blocks 2224 and 2226 ).
- sensor data associated with the dead reckoning estimate/value may include confidence intervals for the x, y, and z axis. These confidence values may identify an individual or overall confidence of the position/location information.
- performing eLBS method 2200 improves the performance of the mobile device by improving the location-based solutions described above (e.g., with reference to FIGS. 1-19 , etc.).
- eLBS method 2200 may allow the mobile device to generate the “more precise location information,” updated eLBS position information, or a more accurate waypoint more efficiently than if the information is generated based solely on received location information.
- This method also allows the mobile device to generate more accurate location information with fewer iterations, thereby freeing up the devices resources and improving its performance characteristics. For all these reasons, method 2200 improves the overall functionality of the mobile device.
- eLBS method 2200 may allow the mobile device to intelligently determine whether or when to request additional location information to perform further location updates/improvements.
- the mobile device may be configured to not request or initiate a positional improvement (i.e., not generate more precise location information) if/when the mobile device is stationary or when it determines that the device has moved less than one meter. This improves the power consumption characteristics of the device and helps preserve its battery life.
- this allows the mobile device to request a position update (or generate more precise location information) immediately after a subscriber dials 911 or otherwise initiates an emergency call. This also allows the information to be sent/routed to the public service answering point (PSAP) faster, which in turn improves the responsiveness and overall functionality of the mobile device.
- PSAP public service answering point
- the mobile computing device may be configured to request a position updates from other devices.
- the mobile device's initial position may be determined through the use of time of flight (TOF) via two message inquiries.
- TOF time of flight
- the RSSI may be read as well, and using the TOF and RSSI, the mobile device may more accurately determine the distance between the mobile device and each of the other devices. The mobile device may then use this distance information to better determine its current location (via the performance of any or all the methods, operations, or techniques discussed in this application).
- Privacy e.g., data privacy, etc.
- the various techniques, solutions, methods, and operations discussed in the application allow for a subscriber to be identified quickly and effectively without requiring the use of that subscriber's IMSI (or other sensitive data) that could be misused by malware or a hacker.
- the system e.g., mobile devices, sensors, etc.
- the device ID may change every time the wireless device is powered on. For these and other reasons, performing the above-described operations improves the device's overall functionality (e.g., by improving its privacy and security characteristics, etc.).
- the mobile may exchange its location information with another device.
- the mobile device may provide known points, which may be waypoints, RFID/QC points, WiFi AP points, or any information unit or structure that includes latitude and longitude values (or equivalents thereof).
- the mobile device may be configured to receive and/or use four known points to generate more accurate or more precise location information.
- FIG. 23 illustrates a system 2300 for relaying information request messages and obtaining location information from other devices in accordance with an embodiment.
- the mobile device may then use the obtained location information to determine or compute the more precise location information (or an update final location value, etc.).
- the system 2300 includes a mobile device 102 , immediate neighbor mobile devices 2302 , and other mobile devices 2304 .
- one or more of the components in the system 2300 may be configured to track and report the number of hops in a path (e.g., communication pathway, wireless data path, etc.). This allows devices that are not initially connected to the mobile device 102 in the network to more quickly and efficiently provide data back to the mobile device 102 .
- a path e.g., communication pathway, wireless data path, etc.
- the mobile device 102 may be configured to generate, send, receive and/or use a message/information structure 2306 that includes distance information 2308 and/or location information 2310 .
- the distance information 2308 may include time of flight (TOF) information, an originating device ID field/value, a responding device ID field/value, a priority field/value, a handle time field/value, an originating TAG field/value, RFID information, a latitude field/value, a longitude field/value, an altitude field/value, a bearing field/value, a speed field/value, a timestamp field/value, an accuracy field/value, a barometer field/value, a hop distance field/value, and a path field/value.
- TOF time of flight
- the location information 2310 may include an originating device ID field/value, a responding device ID field/value, an originating TAG field/value, a latitude field/value, a longitude field/value, an altitude field/value, a bearing field/value, a speed field/value, a time stamp field/value, an accuracy field/value, a barometer field/value, and a hop distance field/value, a path field/value.
- the location information 2310 may also include one or more known points, including a latitude field/value, a longitude field/value, an altitude field/value, a distance field/value, a bearing field/value, a confidence field/value, and/or a device ID field/value.
- one or more of the points/known points may be a waypoint that includes any or all of the information, fields, or values discussed above.
- any or all of the data/values included in the distance information 2308 and/or location information 2310 messages to determine or compute one or more waypoints (e.g., current location waypoint, final location waypoint, etc.).
- the mobile device 102 may search for near field (NF) LANs and/or determine whether there are NF LANs available. In operation block 2314 , the mobile device 102 may determine that there are no NF LANs available. In operation block 2316 , mobile device 102 may set up a mesh network in response to determining that there are no NF LANs available. In operation blocks 2318 and 2320 , the mobile device 102 may perform various operations to establish an NF LAN, and take on the role of master.
- NF near field
- the mobile device 102 may communicate with the immediate neighbor mobile devices 2302 to determine the distance between the mobile device 102 and its neighboring devices.
- the mobile device 102 may communicate with the immediate neighbor mobile devices 2302 (which relay information to the other mobile devices 2304 ) to obtain location information.
- the mobile device 102 may generate and send a distance request message to one or more of the immediate neighbor mobile devices 2302 .
- the mobile device 102 may receive a distance acknowledgment message from one or more of the immediate neighbor mobile devices 2302 .
- the mobile device 102 may send a second distance request message to the immediate neighbor mobile devices 2302 .
- the mobile device 102 may receive a second distance acknowledgment message from the immediate neighbor mobile devices 2302 .
- the mobile device 102 may send a location information request message to the immediate neighbor mobile devices 2302 .
- one or more of the immediate neighbor mobile devices 2302 may relay the location information request message to other mobile devices 2304 .
- the mobile device 102 may receive a location information acknowledgment message from one or more of the immediate neighbor mobile devices 2302 .
- the immediate neighbor mobile devices 2302 may receive a “relay location information acknowledgment message” from one or more of the other mobile devices 2304 , and send the relay location information acknowledgment message to the mobile device in operation 2338 .
- the mobile device 102 operates as the master in the communication flow.
- FIG. 24 illustrates that the mobile device 102 may also operate as a slave.
- FIG. 24 further illustrates that the eLBS for communication with other mobile devices 2304 may take on a “listen only” mode when an update is not needed or necessary (e.g., when it is determined to not to be required).
- each device may provide any or all of the information illustrated in FIG. 24 .
- the mobile device 102 may search for NF LANs.
- the mobile device 102 may determine that an NF LAN is available in operation block 2314 , and join an NF LAN with one or more of the immediate neighbor devices 2302 and one or more of the other devices 2304 in blocks 2404 and 2406 .
- the mobile device 102 may communicate with the immediate neighbor devices 2302 to determine or establish the distances to the mobile devices (e.g., via time, RSSI, etc.).
- the mobile device 102 may communicate with the immediate neighbor devices 2302 and the other mobile devices 2034 to determine, obtain, or provide location information.
- Other methods for obtaining an initial fix may include communicating or interacting with ibeacon type devices and/or devices that emit sounds above the audible hearing range of humans.
- Additional devices that provide location information (e.g., Lat, Long and Altitude of a trusted or known location) to the mobile device 102 may include devices that include or utilize RFID or QR Codes, examples of which are illustrated in FIG. 25 .
- FIG. 25 illustrates a system that includes a mobile device 102 configured to utilize RFID or QR Codes in accordance with the various embodiments.
- an RFID/QR device 2501 provides location information to the mobile device 102 .
- the RFID/QR device 2501 may positioned, placed, or located in any of a variety of locations (e.g., entrances to malls or stores, on street lamp poles, etc.) and configured to send, transmit or broadcast its location to the mobile device 102 (e.g., periodically, in response to receiving a query message, based on the mobile device's location, etc.).
- the mobile device 102 may be configured to receive and use this information (e.g., as part of the eLBS operations) to determine its current and/or future-estimated location.
- the RFID/QR device 2501 may be configured to send its location in response to receiving a location query message 2503 from the mobile device 102 .
- the mobile device 102 may be configured to scan a QR Code to initiate the process of generating and sending a location query message 2503 to the RFID/QR device 2501 .
- the location query message 2503 may include a Tag (e.g., RFID TAG) value/field, which may used as a message ID in some embodiments.
- the location query message 2503 may also include a time value that may be used for calculating Time of Flight (TOF) and/or other similar information (e.g., for determining when the message began, etc.).
- TOF Time of Flight
- the RFID/QR device 2501 may generate and send a transponded Tag message 2505 to the mobile device 102 .
- the transponded Tag message 2505 may include a time value, a time stamp, a device ID, and location information (e.g., lat, long, alt, etc.) that identifies the location of the QR/RFID device 2501 .
- the device ID may be a name, a street address, store number, etc.
- Time value may include a delay value that is associated with the RFID/QR device 2501 or the distance between the RFID/QR device 2501 and the mobile device 102 .
- four known points in space may be used to generate accurate three dimensional location/position information via trilateration.
- the mobile device 102 could be configured to use the known/relative locations of four different mobile devices to generate three dimensional location/position information.
- the examples below illustrate various techniques that may be implemented and used by the mobile device 102 to generate more accurate three dimensional location/position information with or without the availability of location information from four independent devices.
- FIG. 26 illustrates an example system 2600 that includes two mobile devices 102 , 2601 that are configured to collaborate or work in concert to determine their respective locations with a high degree of accuracy.
- the system includes a first mobile device 2601 (Mobile A or “A”) and a second mobile device 102 (Mobile B or “B”).
- the second mobile device 102 may be a target wireless device that is configured to receive and use location information from the first mobile device 2601 to perform eLBS operations (e.g., to generate accurate three dimensional location/position information, generate more precise location information, improve its positional fix, etc.).
- eLBS operations e.g., to generate accurate three dimensional location/position information, generate more precise location information, improve its positional fix, etc.
- the more precise location information (INFO B′) may be a waypoint or another information structure that includes a latitude value, longitude value, altitude value, timestamp, confidence value, precision value, etc.
- the second mobile device 102 may use the more precise location information (INFO B′) to provide its user with an enhanced location based service.
- the second mobile device 102 may be further configured to send the generated more precise location information (INFO B′) to the first mobile device 2601 .
- the first mobile device 2601 may be configured to receive and use this information (INFO B′) to compute different more precise location information (INFO A′), and send this information (INFO A′) back to the second mobile device 102 for use in computing even more precise location information (INFO B′′).
- INFO B′ information
- INFO A′ more precise location information
- INFO A′ different more precise location information
- INFO A′ e.g., a confidence or precision value associated with the generated location information exceeds a threshold value, etc.
- a mobile device may be configured to generate one or more of such data points based on its location in time, including its past locations and/or estimated-future locations.
- These two vectors may be adjusted based on dead reckoning information (or the information generated via the other techniques discussed in this application) and to account for the relative differences in values for either the first mobile device 2601 (A), the second mobile device 102 (B), or for both devices.
- the mobile device 102 may be configured to also compute, determine, and/or estimate point A(t+1) and point B(t+1). Based on the confidence values associated with these points, the mobile device may select four points for use in determining its three-dimensional location and/or performing location-based operations (e.g., eLBS operations, etc.).
- FIG. 27 illustrates an example system in which two mobile devices 2701 , 102 are used to obtain four data points based on the motion of one or both of the devices.
- the second mobile device 102 may be configured to intelligently select one or more of these vectors (for use in generating more precise three dimensional location information, etc.) based on a confidence interval associated with the initial calculation (which may be extrapolated).
- FIG. 28 illustrates an example system in which three mobile devices 2801 , 102 and 2803 are used to obtain four data points based on the motion of one or more of the devices.
- Mobile device 102 obtains information from mobile device 2801 and mobile device 2803 .
- the possibility of having needed for positional location is closer without having to estimate two points.
- three mobile devices it is possible to extract this information by using a similar concept discussed above with reference to FIGS.
- FIG. 29 illustrates an example system in which four mobile devices 2901 , 102 , 2903 , and 2905 are used to obtain four data points based on the motion of one or more of the devices.
- the mobile device may perform the same or similar operations as those discussed above with reference to FIGS. 26 and 27 , but use one or more data points that have lower confidence values (or approximate or less precise location information) than which would otherwise be optimal or desired.
- Some embodiments may include mobile computing device(s) that are configured to perform enhanced location based trilateration operations. Trilateration for enhanced location based positions may require that a mobile device perform sensor fusion operations. As is discussed further below, when information from a multitude of devices is used to generate accurate three dimensional information the manner in which the sensor fusion operations are performed by a wireless/mobile device become even more important.
- FIG. 30A illustrates various components, information flows, and operations in an example mobile device system 3000 that is configured to perform enhanced location based service (eLBS) trilateration operations in accordance with an embodiment.
- FIG. 30B illustrates that, in another embodiment, the mobile device system 3000 may be configured to perform single device eLBS trilateration operations that do not require receiving information from other devices in the communication group.
- the system 3000 includes a location information component 3002 , a trilateration component 3004 , and an output/storage component 3006 .
- a processor of the mobile device may receive information that is suitable for use as, may be used to generate, or which includes, location information, such as GPS data, a Cell ID, a WiFi ID, Beacon data, a RFID, Loran C data, OS Library Function, etc. or changes in any of the these values.
- location information such as GPS data, a Cell ID, a WiFi ID, Beacon data, a RFID, Loran C data, OS Library Function, etc. or changes in any of the these values.
- the mobile device may receive location information from active or passive external devices/systems.
- the mobile device may communicate with an active external device, such as location based server from a fleet management company, to receive location information.
- the mobile device may perform various operations (e.g., interrogation, etc.) to establish communication links and receive information from the active external devices.
- the mobile device may receive location information from a passive external device, such an RFID chip that scans for the presence of device and/or which broadcasts location information periodically.
- the mobile device may generate location information locally (in the device) based on information received from an external system in block 3012 .
- the mobile device may generate GPS data (e.g., GPS coordinates or GPS determined position information) in a local GPS receiver based on GPS information received from an external GPS system.
- the mobile device may use received WiFi ID information to determine or compute its proximity to known networks, and generate location information based on the determined proximity to these known networks.
- the mobile device may generate and/or receive updated dead reckoning (DR) position information (or dead reckoning position estimate value).
- DR dead reckoning
- the mobile device may be equipped with sensors (e.g., accelerometer, gyros, magnetic compass, altimeters, odometers, etc.) that allow it to estimate the distance it has traveled or moved over a period of time in any dimension (e.g., x, y or z; latitude, longitude or altitude; etc.).
- the mobile device may use information collected from these sensors in block 3014 to perform any or all of the dead reckoning operations discussed in this application and generate DR position information.
- the mobile device may use information from the sensors (e.g., accelerometer, gyros, magnetic compass, altimeters, odometers, etc.) to determine the distance it has traveled (or been moved) since the last time it was able to ascertain its location with a sufficiently high degree of confidence (e.g., Cx, Cy and Cz are all greater than 95, etc.), determine its current location based on the determined distance (e.g., distance it has traveled, etc.), and generate updated DR position information that identifies its current location.
- the mobile device may also compute confidence values and/or a precision value for the generated DR position information in block 3014 .
- the mobile device may receive and process location based service information (LBS information) from other devices, such as from transceiver or other mobile devices in the communication group.
- LBS information location based service information
- the LBS information may include, or may be used to generate or establish, multiple waypoints at discrete times and/or for discrete durations or periods of time.
- the LBS information may include estimated distances between multiple (e.g., three or more) devices/transceivers and the mobile device.
- Each waypoint may be an information structure that includes one or more information fields, component vectors, location information, position information, coordinate information, etc.
- the location information component 3002 of the mobile device may be configured to receive, process and/or generate standard location information (or a first data set, estimate value, etc.) in block 3012 , updated DR position information (or a second data set, estimate value, etc.) in block 3014 , and LBS information (a third data set, estimate value, etc.) in block 3016 .
- the location information component 3002 may send any or all such information (e.g., first, second, and third values/sets) to the trilateration component 3004 as input data.
- the mobile device/trilateration component 3004 may use the received input data to perform trilateration operations (e.g., trilateration API location operations, etc.), determine the geographical coordinates (e.g., latitude, longitude, and altitude coordinates) of the mobile device, generate a trilateration position estimate value, generate a final position set (e.g., a final location estimate value), generate an updated final position set (e.g., x, y and z coordinates, an updated position estimate value, more precise information, etc.), and send the updated final position set to the output/storage component 3006 .
- the trilateration operations may include operations for implementing any or all of the techniques discussed in this application, including time of arrival, angle of arrival, mobile-to-mobile trilateration, lateration, multilateration, triangulation, etc.
- the mobile device in block 3018 , the mobile device generates/computes/receives trilateration location values (X, Y, Z), a time value, trilateration location delta values ( ⁇ X, ⁇ Y, ⁇ Z), confidence values (C X ,C Y ,C Z ), and one or more precision values, the combination of which may be stored or used as a waypoint (or a data set or estimate value).
- the mobile device may rank or assign weights to the current or historical waypoints (i.e., previously computed waypoints).
- the mobile device may generate two or three dimensional vectors using the waypoints (current and/or historic). In an embodiment, the mobile device may generate the vectors based on their rank/weights (e.g., by including/using only waypoints having a rank that exceeds a threshold value).
- the trilateration component 3004 may send the computed updated final position set to the output/storage component 3006 .
- the output/storage component 3006 may store the updated final position set in a location buffer or the illustrated updated final position datastore 3024 .
- the output/storage component 3006 may use the updated final position set (more precise location information) to provide a location based service.
- the output/storage component 3006 may send the updated final position set to other devices, such as to a network server or the other mobile devices in the communication group.
- the mobile device system 3000 may be required to communicate with other devices in a communication group (e.g., in block 3016 ).
- a communication group e.g., in block 3016
- mobile devices do not always have access to a communication group (yet alone a sufficiently large communication group) and/or to the robust data that could be required to accurately determine the location of the device.
- the mobile device may receive LBS information from a server computing device (e.g., a network provided location service).
- the mobile device may send the standard location information (or first data set, estimate value, etc.), updated DR position information (or second data set, estimate value, etc.), and the LBS information received from the server (or third data set, estimate value, etc.) to the trilateration component 3004 as input data.
- the trilateration component 3004 may receive and use the input data to compute/generate a final position set and/or an updated final position set, and send the generated position set to the output/storage component 3006 for storage and/or use.
- FIG. 30C illustrates various additional components, information flows, and operations in an example mobile device system 3000 configured to perform enhanced location based service (eLBS) trilateration operations in accordance with the various embodiments.
- the mobile device may use information received from active and/or passive external devices or systems to generate a first data set (e.g., x, y and z coordinates, first estimate value, etc.).
- the mobile device may use information collected from internal sensors and systems to perform dead reckoning operations and generate a second data set (e.g., x, y and z coordinates, second estimate value, etc.).
- the mobile device may receive location based service (LBS) information from a server (e.g., x, y and z coordinates, LBS estimate value, etc.).
- LBS location based service
- the mobile device may pass the received LBS information through a first kalman filter (Kalman Filter 1) to generate filtered LBS data (e.g., a filtered LBS estimate value, etc.).
- the kalman filter may be a procedure, algorithm, method, technique, or sequence of operations for accomplishing the function of a kalman filter.
- the mobile device may perform trilateration operations (e.g., trilateration API location operations, etc.), determine the geographical coordinates of the mobile device, and generate a third data set (e.g., x, y and z coordinates, third estimate value, etc.) based on the determined geographical coordinates.
- the mobile device may pass the first, second, and third data sets (or estimate values, etc.) through a second kalman filter (Kalman Filter 2) to generate a position set (e.g., final position set, final location estimate value, updated final location estimate value, etc.).
- Kalman Filter 2 second kalman filter
- the mobile device may use the position set to determine/compute the current location of the device.
- the mobile device may generate a waypoint information structure (or estimate value) that includes trilateration location values (X, Y, Z), a time value, trilateration location delta values ( ⁇ X, ⁇ Y, ⁇ Z), confidence values (C X ,C Y ,C Z ), and one or more precision values, and use the generated way point to set the current location of the device.
- the mobile device may be configured to store the waypoint in a list (or other information structure) in conjunction with a timestamp.
- FIG. 30C illustrates three types of position calculations that are fused creating one position that is reported for the device.
- the eLBS Trilaterion process at a high level is illustrated in FIG. 30C .
- the anchor mobile device (AD) determines its position from
- the external trilateration position is fed into another kalman filter process which also uses as inputs the internal position tracking via dead reckoning, and the available external stationary devices and systems, and external mobile device and systems, collectively abbreviated to as external devices (ED), which are reporting what the current devices location is.
- ED external devices
- a waypoint is location information that has been determined to be valid location information and has a confidence value associated with it.
- Waypoints generally have an overall rank and a device specific rank also associated with them. Waypoints can be based on location information based on dead reckoning location information, external trilateration location information, or location information received from external devices.
- FIG. 31 illustrates communication and information flows in a system configured to determine the range between two devices 3101 , 3103 when there is no external time source (e.g., a common time value, etc.) with which all the devices may synchronize.
- the two devices illustrated in FIG. 31 are an anchor mobile device (AD) 3103 and an external device (ED) 3101 . These devices may obtain a pseudo synchronization of measurements, taking account communication pathway time delays and the delay associated with processing a request.
- AD anchor mobile device
- ED external device
- AD 3103 sends a location query request 3107 for position updates to ED(x) 3101 .
- ED(x) 3101 and AD 3103 do not share a common clock.
- the location query request 3107 may include any or all of information discussed above with reference to FIG. 25 , such as the time when the query was sent, etc.
- ED(x) 3101 may send a location query response 3109 that includes information identifying the time difference between when ED(x) 3101 received the location query request 3107 and when ED(x) 3101 transmitted the location query response 3109 .
- the location query response 3109 may include the time at which the location query request 3107 was received, the time when the location query response 3109 was sent, or both.
- the location query response 3109 may also include a delay value that identifies when ED(x) received the location query request 3107 to when ED(x) sent the location query response 3109 . It may also include location information and/or any other information requested via the location query request 3107 .
- AD 3103 may record the time that it sent the location query request 3107 , record the time it received the location query response 3109 from ED(x) 3101 , and use this information to determine a total time delay. Knowing the delay in processing the request and communication pathways allows for synchronizing the timing for the location information provided and the clock of the AD 3103 .
- FIGS. 32 and 33 illustrate methods for receiving and using in an anchor mobile device (AD) an external device's (ED's) position information to prove an enhanced location based service.
- the AD may be configured to determine the ED's relative position (e.g., relative to itself) and compare the determined relative position to a range value provided by the ED.
- the range value may be value that is calculated in the ED, and which identifies a distance between the ED and the AD.
- the method illustrated in FIG. 32 represents an example for receiving data from a single mobile device. It should be understood that, in other embodiments, the same or similar operations may be performed based on information received from multiple mobile devices.
- an AD may receive location information (e.g., LBS information, etc.) from ED(1).
- the location information may include a latitude value, a longitude value, an altitude value, range information, and a time value.
- the location information may be a waypoint.
- the AD may perform a pseudo synchronization method, which is discussed in detail further below.
- the AD may determine and assign a confidence value to each unit of location information (e.g., each waypoint, etc.) provided by each ED.
- the AD may determine whether the received location information is valid. Validity may be determined on a variance between expected and actual relative positions. For example, the AD may be configured to compute or determine an expected position (or expected relative position) based on previous trilateration results, previous dead reckoning results, or data received from other external sensors or devices. In some embodiments, the location may calculated based on the location information provided to the AD by the ED.
- the AD may calculate a rank for location information provided by ED(1) with respect to AD based on the range calculation and confidence value of the location information provided by ED(1).
- the AD may determine whether the location information provided by ED(1) has a sufficiently high confidence value.
- the AD may mark the location information provided by ED(1) to be discarded in block 3209 . This is similar to the AD making a determination that the information is not valid, but the location information has a confidence value, and range value/calculation associated with it.
- the AD in block 3213 , may stores the location information as a waypoint (e.g., as a current location waypoint) for ED(1) in its location database.
- FIG. 33 illustrates process 3300 , which is an expanded and continuation of process 3200 for FIG. 32 .
- the AD may determine whether the ED previously reported a location (or sent a valid waypoint, etc.).
- determination block 3301 “No”
- the AD may determine whether the AD moved (or changed its reported location) by more than a distance or a percentage value in any axis or direction.
- the AD may determine it is stationary (and mark itself as such) in block 3305 .
- the AD may select and use the highest ranking waypoint/location information in block 3313 .
- the AD may retrieve three of the highest ranked previously reported waypoints stored in memory to obtain a total of four waypoints.
- Block 3325 uses the waypoints in the sorted list as input for trilateration and continues to FIGS. 34 and 35 , which illustrate processes for determining the position location accuracy using the trilateration methods for multiple devices reporting locations.
- the output of the AD's trilateration for each EDs, the reported positions, may be ranked with respect to each other based on accuracy and confidence. Using these values, possibly discarding or ignoring those values which are considered inferior or invalid, provides for achieving highest position location accuracy to be achieved.
- the output of the eLBS trilateration operations may be a position/location (or waypoint) that is used by a device to report its current position (or for other functions, such as to provide an enhanced location based service).
- FIG. 34 illustrates the output of FIG. 33 may be used (for each reporting ED) as trilateration input.
- Block 3401 illustrates the trilateration input for a first ED, ED(1), which is process 3300 for ED(1).
- Block 3402 illustrates the trilateration input for a second ED, ED(2) which is process 3300 for ED(2).
- 3420 illustrates one or more EDs providing trilateration input.
- the AD may retrieve the four highest ranked waypoints, and provides these four waypoints to a kalman filter in block 3510 .
- the kalman filter 3510 may be a procedure, algorithm, method, technique, or sequence of operations for accomplishing the function of a kalman filter.
- All the reporting EDs may be compared to each other, ranked prior to being sent to a kalman filter with the appropriate matrix and weighting factors.
- the trilateration operations discussed above with reference to FIGS. 32-35 may be performed/conducted for various sources.
- the fusion trilateration operations discussed above enable the device to generate more robust position/location information having high confidence values (e.g., for accuracy, precision, etc.).
- FIG. 36 illustrates a method 3600 of performing fusion trilateration operations using information from external and internal sources.
- an anchor mobile device may receive information from external sources, including include GPS data, Cell ID, WiFiID, Beacon/RFID and other data from external position sources.
- the AD may retrieve and use previous reported locations from memory (similar to the operations discussed above with reference to block 3313 ). If more than the required number of waypoints have been reported (and stored in memory), the AD may select and use the waypoints/location information with the highest ranks in block 3606 as the location information. Alternatively, the if no valid previous locations have been reported, the AD could elect to not use data from that device, but rather use dead reckoning position information and/or external trilateration positioning information to select location information in block 3606 .
- the ED is reporting valid location information to AD, it is ranked according to previously received location information for that device. If no previous location information has been received, the most current valid location information being received is used. If the current reported location information is ranked highest, it is used as the location information and stored in the location information database. If previous location information has been received and the ranking of the current received location information is lower than the previous information, the highest ranked previously reported location information is used
- any external trilateration position information is received, all location information is synchronized for time values in block 3607 , by any means discussed above or below, with the dead reckoning data from the AD. If in block 3608 , only one valid position is available, that location information is stored by the AD as the location for the AD. If more than one valid position is reported, these are ranked from best to worse as described previously regarding confidence values, and the four highest positions are used for input into a kalman filter. The output from the kalman filter is stored as the AD's location. If more than one, but less than four locations are reported (e.g., similar to discussed above with reference to FIG.
- the use of previous positions can be used to achieve the necessary set of points from which a three dimension position can be calculated.
- FIG. 37 illustrates a high level diagram showing only two devices for ease of reading however the concept can easily be extrapolated to having multiple devices.
- AD's position is AD(t0).
- the range or distance between the two devices is also determined using both a sounding method as well as RSSI. The range can also be used to determine the confidence of the position reported which will be in addition to the confidence the ED(x) 3701 is reporting about its own location.
- the vector between the two units is 1X (0,0).
- the vectors can also be calculated from AD(t ⁇ 1) 102 to ED(x)(t ⁇ 1) 3701 and is represented by 1X ( ⁇ 1, ⁇ 1) and similarly from AD(t ⁇ 1) 102 to ED(x)(t ⁇ 2) 3701 , this being represented by 1X ( ⁇ 2, ⁇ 1).
- the vector is 1X ( ⁇ 2, ⁇ 2).
- Each location information having a confidence value calculated and associated with it is now a waypoint.
- FIG. 38 illustrates a method 3800 for determining a location of a mobile device via enhanced location based trilateration.
- Method 3800 may include receiving, via a processor of the mobile device, location information from one or more external devices.
- the received location information may include a waypoint from each of the one or more external devices.
- a processor in a mobile device may request location information from internal and external devices, which may be accomplished by generating and sending a location request message to the internal/external devices.
- the location request message may request location information that includes coordinate values (e.g., lat and long, etc.), an altitude value, and/or a range value.
- the range value may include information that identifies the distance between the mobile device and an external device (e.g., an external device that sends the location information in response to receiving the location request message, etc.).
- the mobile device may skip the operations in block 3802 as these may not be necessary to receive the location information.
- the processor may receive location information from one or more external devices.
- the received location information may include a waypoint or another unit of information (location information unit) from each of a plurality of devices (e.g., the internal and/or external devices).
- Each waypoint may include a coordinate value (e.g., a latitude value, an longitude, etc.), an altitude value and a range value.
- the range value may identify a distance from a external device to the mobile device.
- the mobile device may initiate or reinitiate the trilateration operations by requesting location information from the same or different external devices in optional block 3802 and/or by resetting the timer and waiting for another set period of time for a response or location information.
- the processor may determine the validity of each of the received waypoints and/or perform normalization operations to normalize the received valid waypoints (or normalize the received location information timing). Also in block 3806 , the processor may obtain or assign a time value to each unit of received information (i.e., to the location information received from each external device, to each waypoint, etc.), which may accomplished via, or as part of, the processor performing any or all of the normalization or synchronization operations discussed in this application.
- the processor may determine, compute, or update a range value for each external device that is reporting location information (e.g., for each external device from which location information was received, for each waypoint, etc.). For example, in block 3808 , the processor may determine or compute a first range value for a first external device based on the waypoint from the first external device, determine or compute a second range value for a second external device based on a second waypoint provided by the second external device, etc. In an embodiment, the processor may also associate the range value with the waypoint that is used to determine that range value, and store the range value in relation to waypoint in memory and/or as a data field value in the waypoint.
- the processor may determine, compute, or calculate a confidence value for each location information unit (or waypoint) that is received. In some embodiments, the processor may also associate the confidence value with the location information unit (or waypoint) for which the confidence value was calculated, and determining the validity of each of the one or more location information in block 3812 . In block 3812 , the processor may assign an overall rank and/or a device specific rank to each of the normalized waypoints (e.g., each location information unit or waypoint received from an external device, etc.). In block 3814 , the processor may determine the validity of each of the received waypoints. In block 3816 , the processor may store valid location information in location information database (e.g., as one or more waypoints, a current location waypoint, etc.).
- location information database e.g., as one or more waypoints, a current location waypoint, etc.
- the processor may assign an overall ranking and a device specific ranking.
- the overall ranking may be a ranking of the valid location information (e.g., valid waypoint, etc.) for the location information being reported by the external device (e.g., the location information included in the waypoint, etc.) based on a combination of dead reckoning location information (e.g., DR data, etc.), all valid and invalid location information (e.g., all location information received for that general location or device, etc.), to include external trilateration location information, being reported by external devices and stored information/waypoints in the location database for the external devices reporting valid and invalid location information
- the device specific ranking may be a ranking of location information received by a mobile device for one type of location information from the external device reporting the type of location information and the ranking being based on a calculated range and an associated confidence value with the location information, to the valid location information, and storing the location information and associated data in the location database as a waypoint
- the processor may determine whether the location database contains at least four valid waypoints (or four valid location information units identifying four locations, etc.). In an embodiment, if fewer than four waypoints are stored in the location database, the mobile device may repeat the location determination operations discussed above until it determines that the location database stores at least four valid waypoints. In response to determining that there are fewer than four valid way points (i.e., determination block 3818 “No”), in block 3802 , the processor may initiate another request for location information from internal and external devices.
- the processor may select four of the highest ranked waypoints from memory based on a combination of the overall ranking, device-specific ranking, confidence value, precision value, range value, etc. associated with each waypoint (e.g., the four highest overall ranked waypoints) and apply the selected waypoints to a kalman filter to generate output in the form of updated location information (or more precise location information).
- the processor may store the output of the kalman filter as the currently location of the mobile device.
- the processor may assign a confidence value (and/or ranking or precision values) to the output of kalman filter.
- the processor may report output location from kalman filter as the location of the mobile device.
- DSP digital signal processor
- ASIC application specific integrated circuit
- FPGA field programmable gate array
- a general-purpose processor may be a microprocessor, but, in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine.
- a processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. Alternatively, some blocks or methods may be performed by circuitry that is specific to a given function.
- the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored as one or more instructions or code on a non-transitory computer-readable medium or non-transitory processor-readable medium. The steps of a method or algorithm disclosed herein may be embodied in a processor-executable software component which may reside on a non-transitory computer-readable or processor-readable storage medium. Non-transitory computer-readable or processor-readable storage media may be any storage media that may be accessed by a computer or a processor.
- non-transitory computer-readable or processor-readable media may include RAM, ROM, EEPROM, FLASH memory, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that may be used to store desired program code in the form of instructions or data structures and that may be accessed by a computer.
- Disk and disc 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 are also included within the scope of non-transitory computer-readable and processor-readable media.
- the operations of a method or algorithm may reside as one or any combination or set of codes and/or instructions on a non-transitory processor-readable medium and/or computer-readable medium, which may be incorporated into a computer program product.
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Business, Economics & Management (AREA)
- Emergency Management (AREA)
- Environmental & Geological Engineering (AREA)
- Public Health (AREA)
- Telephone Function (AREA)
- Automation & Control Theory (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
- Telephonic Communication Services (AREA)
Abstract
Method, systems and devices for determining for performing enhanced location based trilateration include receiving location information (e.g., waypoints) from one or more external devices, determining the validity of the received location information, performing normalization operations to normalize the received location information, assigning an overall ranking and a device-specific ranking to the location information, and storing the validated and normalized location information in memory. The enhanced location based trilateration may also include selecting four locations (e.g., waypoints) from the memory based on a combination of the overall ranking and the device-specific ranking, and generating a final location value or waypoint based on a result of applying the four selected waypoints to a kalman filter. The output of the kalman filter may also be reported and/or used as the device's current location.
Description
- This application is a Continuation of U.S. Non-Provisional application Ser. No. 15/284,806 entitled “Method and System for Providing Enhanced Location Based Trilateration” filed on Oct. 4, 2016, which is a Continuation of U.S. Non-Provisional application Ser. No. 14/993,618 entitled “Method and System for Providing Enhanced Location Based Trilateration” filed Jan. 12, 2016 Ser. No. 14/993,618 entitled “Method and System for Providing Enhanced Location Based Trilateration” filed Jan. 12, 2016, which claims benefit of priority to U.S. Provisional Application No. 62/102,853 entitled “Method and System for Providing Enhanced Location Based Trilateration” filed Jan. 13, 2015, and is a continuation in part of U.S. patent application Ser. No. 14/950,595 entitled “Method and System for Providing Enhanced Location Based Information for Wireless Handsets” filed on Nov. 24, 2015, and issued May 17, 2016 as U.S. Pat. No. 9,344,848, which is a continuation of U.S. patent application Ser. No. 14/823,244, entitled “Method and System for Providing Enhanced Location Based Information for Wireless Handsets” filed on Aug. 11, 2015, and issued May 3, 2016 as U.S. Pat. No. 9,332,386, which is a continuation of U.S. patent application Ser. No. 14/293,056 entitled “Method and System for Providing Enhanced Location Based Information for Wireless Handsets” filed Jun. 2, 2014, and issued Jan. 5, 2016 as U.S. Pat. No. 9,232,354, which is a continuation of U.S. patent application Ser. No. 13/585,125 entitled “Method and System for Providing Enhanced Location Based Information for Wireless Handsets” filed Aug. 14, 2012, and issued Jul. 22, 2014 as U.S. Pat. No. 8,787,944, which claims the benefit of priority of U.S. Provisional Application No. 61/575,300, entitled “Method and System for Providing Enhanced Location Based Information for Wireless Handsets” filed Aug. 18, 2011, and U.S. Provisional Application No. 61/573,636, entitled “Method and System for Providing Enhanced Location Based Information for Wireless Handsets” filed Sep. 9, 2011, the entire contents of all of which are hereby incorporated by reference. This application is also related to U.S. patent application Ser. No. 14/961,088 entitled Method and System for Providing Enhanced Location Based Server Trilateration using a Single Device filed on Dec. 7, 2015, the entire contents of which is hereby incorporated by reference.
- The present application relates generally to a wireless mobile communication system, and more particularly to methods and systems that provide enhanced location information for wireless mobile devices.
- Wireless communication technologies and mobile electronic devices (e.g., cellular phones, tablets, laptops, etc.) have grown in popularity and use over the past several years. To keep pace with increased consumer demands, mobile electronic devices have become more powerful and feature rich, and now commonly include global positioning system (GPS) receivers, sensors, and many other components for connecting users to friends, work, leisure activities and entertainment. However, despite these advancements, mobile devices remain lacking in their ability to provide effective location based services, information, or communications. As mobile devices and technologies continue to grow in popularity and use, generating enhanced location information for mobile devices is expected to become an important and challenging design criterion for mobile device manufactures and network engineers.
- The various aspects include methods of determining a location of a mobile device via enhanced location based trilateration, the method including receiving, via a processor of the mobile device, location information from one or more external devices, the received location information including a waypoint from each of the one or more external devices, each waypoint including a coordinate value, an altitude value and a range value, the range value identifying a distance from a external device to the mobile device, determining the validity of each of the received waypoints, performing normalization operations to normalize the received valid waypoints, assigning an overall ranking to each of the normalized waypoints, assigning an device-specific ranking to each of the normalized waypoints, and storing the normalized waypoints in memory, selecting four waypoints from memory based on a combination of the overall ranking and the device-specific ranking associated with each waypoint, applying the four selected waypoints to a kalman filter to generate a final location waypoint, and using the generated final location waypoint to provide a location based service.
- In an embodiment, receiving location information from one or more external devices may include receiving location information from one or more of a mobile device, a device having a Cell ID, a WiFi device, a Bluetooth device, an RFID device, a GPS device, a location beacon transmitting device, and external trilateration location information. In a further embodiment, determining the validity of each of the received waypoints may include determining a range value for each waypoint included in the received location information, and determining the validity of each of the received waypoints based on its corresponding range value. In a further embodiment, determining the validity of each of the received waypoints may include determining a confidence value for each waypoint included in the received location information, and determining the validity of each of the received waypoints based on its corresponding confidence value. In a further embodiment, receiving location information from one or more external devices may include establishing communication links to each of a plurality of external devices in a communication group, and receiving location information from only the external devices in the communication group.
- In a further embodiment, selecting four waypoints from memory based on a combination of the overall ranking and the device-specific ranking associated with each waypoint may includes selecting one of the waypoints included in the received location information and three previously generated waypoints from the memory. In a further embodiment, selecting four waypoints from memory based on a combination of the overall ranking and the device-specific ranking associated with each waypoint may include selecting two of the waypoints included in the received location information and two previously generated waypoints from the memory. In a further embodiment, selecting four waypoints from memory based on a combination of the overall ranking and the device-specific ranking associated with each waypoint may includes selecting three of the waypoints included in the received location information and one previously generated waypoints from the memory.
- Further embodiments may include a computing device having a processor configured with processor-executable instructions to perform various operations corresponding to the methods discussed above. Further embodiments may include a computing device having various means for performing functions corresponding to the method operations discussed above. Further embodiment may include a non-transitory processor-readable storage medium having stored thereon processor-executable instructions configured to cause a processor to perform various operations corresponding to the method operations discussed above.
- The accompanying drawings, which are incorporated herein and constitute part of this specification, illustrate exemplary embodiments of the invention, and, together with the general description given above and the detailed description given below, serve to explain features of the invention.
-
FIG. 1 is a communication system block diagram illustrating network components of an example telecommunication system suitable for use in a mobile-device centric approach for determining the location of a mobile device in accordance with various embodiments. -
FIG. 2 is a communication system block diagram illustrating network components of an example telecommunication system suitable for use in a network centric approach for determining the location of a mobile device in accordance with various embodiments. -
FIG. 3 is an illustration of an example mobile device suitable for use in grouping with other mobile devices and computing precise location information in accordance with the various embodiments. -
FIG. 4A is a communication system block diagram illustrating network components of an example LTE communication system suitable for use with various embodiments -
FIG. 4B is a block diagram illustrating logical components, communication links and information flows in an embodiment communication system. -
FIGS. 5A-5C are component block diagrams illustrating functional components, communication links, and information flows in an embodiment method of grouping mobile devices and sharing location information between grouped mobile devices. -
FIG. 5D is a process flow diagram illustrating an embodiment mobile device method for grouping mobile devices and sharing location information between grouped mobile devices and the network to compute enhanced location information. -
FIGS. 6A-6D are component block diagrams illustrating functional components, communication links, and information flows in an embodiment method for computing location information in which the grouped/paired mobile devices are updated with their respective location information. -
FIG. 6E is a process flow diagram illustrating an embodiment system method of determining the location of two or more grouped mobile devices. -
FIG. 6F is a process flow diagram illustrating an embodiment mobile device method of adjusting the update intervals in response to detecting a low battery condition. -
FIG. 7 is a component block diagram illustrating functional components, communication links, and information flows in embodiment method of periodically scan for cells. -
FIG. 8 is a process flow diagram illustrating an embodiment mobile device method for determining the location of a mobile device in a wireless network. -
FIGS. 9A-9E are component block diagrams illustrating various logical and functional components, information flows and data suitable for use in various embodiments. -
FIG. 10 is a sequence diagram illustrating an embodiment hybrid lateration method by which mobile devices may gain access to the network. -
FIG. 11 is a sequence diagram illustrating another embodiment hybrid lateration method in which a mobile device cannot locate a network due coverage problems. -
FIGS. 12A-12C are component block diagrams illustrating functional components, communication links, and information flows in an embodiment method of transferring a connection from a local radio system to the small cell system. -
FIGS. 13A-13C are component block diagrams illustrating functional components, communication links, and information flows in an embodiment method of identifying and responding to a distressed mobile device. -
FIG. 14 is a component block diagrams illustrating functional components, communication links, and information flows in an embodiment method of performing dead reckoning grouping mobile devices in an ad-hoc scheme. -
FIG. 15 is an illustration of an enhanced antenna that may be used with various embodiments to further improve positional accuracy. -
FIG. 16A-B are illustrations of various enhanced antenna configurations that may be used with the various embodiments to further improve positional accuracy. -
FIG. 17A-B are sectional diagrams illustrating strips of antenna patches that may be used in various embodiments. -
FIG. 18 is a circuit diagram of antenna system suitable for use with various embodiments. -
FIG. 19 is an illustration of an embodiment antenna array retrofitted into an existing cellular wireless network in accordance with an embodiment. -
FIG. 20 is a component block diagram of a mobile device suitable for use with an embodiment. -
FIG. 21 is a component block diagram of a server suitable for use with an embodiment. -
FIG. 22 is a flow diagram that illustrates various components, operations, and information flows in a system configured to perform location-based operations in accordance with an embodiment. -
FIG. 23 is a flow diagram that illustrates an embodiment location-based method in which a mobile device operates as a master. -
FIG. 24 is a flow diagram that illustrates an embodiment location-based method in which a mobile device operates as a slave -
FIG. 25 is a component block diagram illustrating functional components, communication links, and information flows in system configured to perform a method for determining and using the Latitude, Longitude, and Altitude of a trusted or known location in accordance with an embodiment. -
FIGS. 26 through 29 are component block diagrams that illustrate sharing of location based information between mobile devices in accordance with various embodiments. -
FIG. 30A is a block diagram illustrating various components, information flows, and operations in an example mobile device system configured to perform enhanced location based service (eLBS) trilateration operations in accordance with various embodiments. -
FIG. 30B is a block diagram illustrating various components, information flows, and operations in an example mobile device system configured to perform single device eLBS trilateration operations in accordance with various embodiments -
FIG. 30C is a block diagram illustrating various components, information flows, and operations in a device/system configured to perform eLBS trilateration operations in accordance with some embodiments. -
FIG. 31 is a diagram illustrating a method of time normalization in accordance with an embodiment. -
FIG. 32 is a block diagram that illustrates various components, operations, and information flows in a system configured to perform location based operations in accordance with an embodiment. -
FIG. 33 is a block diagram that illustrates various components, operations, and information flows in a system configured to perform location based operations in accordance with an embodiment. -
FIG. 34 is a block diagram that illustrates various components, operations, and information flows in a system for receiving trilateration input from up to N units in accordance with an embodiment. -
FIG. 35 is a block diagram that illustrates various components, operations, and information flows in a system configured to use a kalman filter in accordance with an embodiment. -
FIG. 36 is a block diagram that illustrates various components, operations, and information flows in a system configured for multiple different types of inputs in accordance with an embodiment. -
FIG. 37 illustrates sharing of location based information between mobile devices in accordance with various embodiments. -
FIG. 38 illustrates a block diagram that illustrates various components, operations, and information flows in a system in accordance to embodiments. - The various embodiments will be described in detail with reference to the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts. References made to particular examples and implementations are for illustrative purposes, and are not intended to limit the scope of the invention or the claims.
- The word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any implementation described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other implementations.
- The terms “mobile device,” “cellular telephone,” and “cell phone” are used interchangeably herein to refer to any one or all of cellular telephones, smartphones, personal data assistants (PDA's), laptop computers, tablet computers, ultrabooks, palm-top computers, wireless electronic mail receivers, multimedia Internet enabled cellular telephones, wireless gaming controllers, and similar personal electronic devices which include a programmable processor, a memory and circuitry for sending and/or receiving wireless communication signals. While the various embodiments are particularly useful in mobile devices, such as cellular telephones, which have limited battery life, the embodiments are generally useful in any computing device that may be used to wirelessly communicate information.
- The terms “wireless network”, “network”, “cellular system”, “cell tower” and “radio access point” may be used generically and interchangeably to refer to any one of various wireless mobile systems. In an embodiment, wireless network may be a radio access point (e.g., a cell tower), which provides the radio link to the mobile device so that the mobile device can communicate with the core network.
- A number of different cellular and mobile communication services and standards are available or contemplated in the future, all of which may implement and benefit from the various embodiments. Such services and standards include, e.g., third generation partnership project (3GPP), long term evolution (LTE) systems, third generation wireless mobile communication technology (3G), fourth generation wireless mobile communication technology (4G), global system for mobile communications (GSM), universal mobile telecommunications system (UMTS), 3GSM, general packet radio service (GPRS), code division multiple access (CDMA) systems (e.g., cdmaOne, CDMA2000™), enhanced data rates for GSM evolution (EDGE), advanced mobile phone system (AMPS), digital AMPS (IS-136/TDMA), evolution-data optimized (EV-DO), digital enhanced cordless telecommunications (DECT), Worldwide Interoperability for Microwave Access (WiMAX), wireless local area network (WLAN), public switched telephone network (PSTN), Wi-Fi Protected Access I & II (WPA, WPA2), Bluetooth®, integrated digital enhanced network (iden), and land mobile radio (LMR). Each of these technologies involves, for example, the transmission and reception of voice, data, signaling and/or content messages. It should be understood that any references to terminology and/or technical details related to an individual telecommunication standard or technology are for illustrative purposes only, and are not intended to limit the scope of the claims to a particular communication system or technology unless specifically recited in the claim language.
- A number of different methods, technologies, solutions, and/or techniques (herein collectively “solutions”) are currently available for determining the location of mobile device, any or all of which may be implemented by, included in, and/or used by the various embodiments. Such solutions include, e.g., global positioning system (GPS) based solutions, assisted GPS (A-GPS) solutions, and cell-based positioning solutions such as cell of origin (COO), time of arrival (TOA), observed time difference of arrival (OTDOA), advanced forward link trilateration (AFLT), and angle of arrival (AOA). In various embodiments, such solutions may implemented in conjunction with one or more wireless communication technologies and/or networks, including wireless wide area networks (WWANs), wireless local area networks (WLANs), wireless personal area networks (WPANs), and other similar networks or technologies. By way of example, a WWAN may be a Code Division Multiple Access (CDMA) network, a Frequency Division Multiple Access (FDMA) network, an OFDMA network, a 3GPP LTE network, a WiMAX (IEEE 802.16) network, and so on. The WPAN may be a Bluetooth network, an IEEE 802.15x network, and so on. A WLAN may be an IEEE 802.11x network, 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.
- Various embodiments discussed herein may generate, compute, and/or make use of location information pertaining to one or more mobile devices. Such location information may be useful for providing and/or implementing a variety of location-based services, including emergency location services, commercial location services, internal location services, and lawful intercept location services. By way of example: emergency location services may include services relating to the provision of location and/or identification information to emergency service personal and/or emergency systems (e.g., to 911 system); commercial location services may include any general or value-added service (e.g., asset tracking services, navigation services, location-based advertising services, etc); internal location services may include services pertaining to the management of the wireless service provider network (e.g., radio resource management services, message delivery services, paging services, call delivery services, services for providing position/location network enhancements, etc.); and lawful intercept location services may include any service that provides public safety and/or law enforcement agencies with identification and/or location information pertaining to a mobile device or a mobile device user. While the various embodiments are particularly useful in applications that fall within one or more of the categories/types of location based services discussed above, the embodiments are generally useful in any application or service that benefits from location information.
- Modern mobile electronic devices (e.g., mobile phones) typically include one or more geospatial positioning systems/components for determining the geographic location of the mobile device. Location information obtained by these geospatial systems may be used by location-aware mobile software applications (e.g., Google® Maps, Yelp®, Twitter® Places, “Find my Friends” on Apple®, etc.) to provide users with information regarding the mobile device's physical location at a given point in time. In recent years, such location-based services and software applications have increased in popularity, and now enable mobile device users to navigate cities, read reviews of nearby restaurants and services, track assets or friends, obtain location-based safety advice, and/or take advantage of many other location-based services on their mobile devices.
- Consumers of modern mobile devices now demand more advanced, robust, and feature-rich location-based services than that which is currently available on their mobile devices. However, despite many recent advances in mobile and wireless technologies, mobile devices remain lacking in their ability to provide their users/consumers with location based services that are accurate or powerful enough to meet the demands of these consumers. For example, while existing location-aware mobile software applications (e.g., “Find my Friends” on Apple®, Google® Latitude, etc.) enable a mobile device user to view the approximate geographical position of other mobile devices on a two-dimensional map, they lack the capability to accurately, efficiently and consistently pin point the precise location and/or position of the other mobile devices in all three dimensions and/or within a wireless communication network. The various embodiments overcome these and other limitations of existing solutions by collecting information from multiple mobile devices, generated more precise location information on or about one or more mobile devices, generating advanced three-dimensional location and position information on or about one or more mobile devices, and using the generated location/position information to provide mobile device users with more accurate, more powerful, and more reliable location based services.
- One of the challenges associated with using geo-spatial positioning technology on a mobile device is that the mobile device's ability to acquire satellite signals and navigation data to calculate its geospatial location (called “performing a fix”) may be hindered when the mobile device is indoors, below grade, and/or when the satellites are obstructed (e.g., by tall buildings, etc.). The presence of physical obstacles, such as metal beams or walls, may cause multipath interference and signal degradation of the wireless communication signals when the mobile device is indoors or in urban environments that include tall buildings or skyscrapers. In rural environments, the mobile device may not have sufficient access to satellite communications (e.g., to a global positioning system satellite) to effectively ascertain the mobile device's current location. These and other factors often cause existing geo-spatial technologies to function inaccurately and/or inconsistently on mobile devices, and hinder the mobile device user's ability to fully utilize location-aware mobile software applications and/or other location based services and applications on his/her mobile device.
- Another problem with using existing geo-spatial positioning technologies is that position accuracy afforded by existing technologies is not sufficient for use in emergency services due to the relatively high level of position accuracy required by these services.
- The various embodiments include improved location determination solutions that determine the location of a mobile device at the level of position accuracy which is suitable for use in emergency location services, commercial location services, internal location services, and lawful intercept location services.
- Generally, there are three basic approaches for determining the location of mobile devices in a communication network: a mobile-device centric approach, a network centric approach and a hybrid approach that may include aspects of both the mobile device centric approach and the network centric approach.
-
FIG. 1 illustrates anexample communication system 100 suitable for implementing a mobile-device centric approach for determining the location of amobile device 102 in accordance with various embodiments. Themobile device 102 may include a global positioning system (GPS) receiver in communication with multiple geo-spatial positioning andnavigation satellites 110 and abase tower 104 of acommunication network 106. Themobile device 102 may receive (e.g., via the GPS receiver) radio signals emitted by thenavigation satellites 110, measure the time required for the signals to reach themobile device 102, and use trilateration techniques to determine the geographical coordinates (e.g., latitude and longitude coordinates) of themobile device 102. Themobile device 102 may send the geographical coordinates to thecommunication network 106 at various times and/or in response to various conditions or events, such as upon initial acquisition with thecommunication network 106, in response to network-based requests, in response to third party requests, etc. - In an embodiment, the communication network may be a cellular telephone network. A typical cellular telephone network includes a plurality of cellular base stations/base towers 104 coupled to a
network operations center 108, which operates to connect voice and data calls between mobile devices 102 (e.g., mobile phones) and other network destinations, such as via telephone land lines (e.g., a POTS network, not shown) and theInternet 114. Communications between themobile devices 102 and the cellular telephone network may be accomplished via two-way wireless communication links, such as 4G, 3G, CDMA, TDMA, and other cellular telephone communication technologies. Thecommunication network 106 may also include one ormore servers 112 coupled to or within thenetwork operations center 108 that provide connections to theInternet 114. - In various embodiments, the
mobile device 102 may be configured to communicate with a radio access node, which can include any wireless base station or radio access point such as LTE, CDMA2000/EVDO, WCDMA/HSPA, IS-136, GSM, WiMax, WiFi, AMPS, DECT, TD-SCDMA, or TD-CDMA and switch, Land Mobile Radio (LMR) interoperability equipment, a satellite Fixed Service Satellite (FSS) for remote interconnecting to the Internet and PSTN. -
FIG. 2 illustrates anexample communication system 200 suitable for implementing a network centric approach for determining the location of amobile device 102 in accordance with various embodiments. Themobile device 102 may include a circuitry for wirelessly sending and receiving radio signals. Thecommunication system 200 may include a plurality ofradio access points additional radio equipment 208 for measuring the location of the mobile devices in the communication system. For example, themobile device 102 may transmit radio signals for reception by one or more (e.g., typically three)radio access points 204, and the radio access points may receive the transmitted signals and measure the signal strength and/or radio energy of the received signals to identify the location of themobile device 102. - In an embodiment, the
radio access points 204 may be configured to determine the location of the mobile device relative to a known location of a network component, such as the illustratedradio access point 206. In this manner, theadditional radio equipment 208 installed on theradio access points communication system 200 with similar functionality as is provided by a GPS receiver for signals received from the mobile device. For example, the radio equipment on one or more of theradio access points 204 may measure how long it takes for the radio signal to travel from themobile device 102 to anotherradio access point 206, and using trilateration techniques (e.g., time of arrival, angle of arrival, or a combination thereof), themobile device 102 or anetwork server 210 may estimate the location of themobile device 102 to within an accuracy of 100 to 300 meters. Once the network has estimated the latitude and longitude coordinates of themobile device 102, this information can be used to determine the geo-spatial location of themobile device 102, which may be communicated to other systems, servers or components via theInternet 114. - Various embodiments may implement and/or make use of a hybrid approach for determining the location of mobile devices in a communication network, which may include aspects of both the device-centric and the network-centric approaches discussed above with reference to
FIGS. 1 and 2 . For example, an embodiment may implement a hybrid approach in which the GPS capabilities of mobile devices, the measured signal strengths and/or radio energy of radio signals transmitted from the mobile devices, and known locations of network components are used in combination to estimate the locations of one or more mobile devices in a network. In a further embodiment, the mobile devices and/or network components (e.g., severs, radio access points, etc.) may be configured to dynamically determine which factors (e.g., radio signal strength, GPS, etc.) to measure and/or use in determining the location of the mobile devices. -
FIG. 3 illustrates sample components of amobile device 102 in the form of a phone that may be used with the various embodiments. The mobile device/phone 102 may include aspeaker 304,user input elements 306,microphones 308, anantenna 312 for sending and receiving electromagnetic radiation, anelectronic display 314, aprocessor 324, amemory 326 and other well known components of modern electronic devices. - The
phone 102 may also include one ormore sensors 310 for monitoring physical conditions (e.g., location, motion, acceleration, orientation, altitude, etc.). The sensors may include any or all of a gyroscope, an accelerometer, a magnetometer, a magnetic compass, an altimeter, an odometer, and a pressure sensor. The sensors may also include various bio-sensors (e.g., heart rate monitor, body temperature sensor, carbon sensor, oxygen sensor, etc.) for collecting information pertaining to environment and/or user conditions. The sensors may also be external to the mobile device and paired or grouped to the mobile device via a wired or wireless connection (e.g., Bluetooth®, etc.). In embodiment, themobile device 102 may include two or more of the same type of sensor (e.g., two accelerometers, etc.). - The
phone 102 may also include aGPS receiver 318 configured to receive GPS signals from GPS satellites to determine the geographic location of thephone 102. Thephone 102 may also includecircuitry 320 for transmitting wireless signals to radio access points and/or other network components. Thephone 102 may further include other components/sensors 322 for determining the geographic position/location of thephone 102, such as components for determining the radio signal delays (e.g., with respect to cell-phone towers and/or cell sites), performing trilateration and/or multilateration operations, identifying proximity to known networks (e.g., Bluetooth® networks, WLAN networks, WiFi, etc.), and/or for implementing other known geographic location technologies. - The
phone 102 may also include a system acquisition function configured to access and use information contained in a subscriber identity module (SIM), universal subscriber identity module (USIM), and/or preferred roaming list (PRL) to, for example, determine the order in which listed frequencies or channels will be attempted when thephone 102 is to acquire/connect to a wireless network or system. In various embodiments, thephone 102 may be configured to attempt to acquire network access (i.e., attempt to locate a channel or frequency with which it can access the wireless/communication network) at initial power-on and/or when a current channel or frequency is lost (which may occur for a variety of reasons). - The
mobile device 102 may include pre-built in USIM, SIM, PRL or access point information. In an embodiment, the mobile device may be configured for first responders and/or public safety network by, for example, setting the incident radio system as the default and/or preferred communication system. - As mentioned above, despite recent advances in mobile and wireless communication technologies, determining the specific location of a mobile device in a wireless network remains a challenging task for a variety of reasons, including the variability of environmental conditions in which mobile devices are often used by consumers, deficiencies in existing technologies for computing and/or measuring location information on mobile devices, and the lack of uniform standards. For example, there is currently no universally accepted standard for implementing or providing location-based services. As a result, mobile device designers and wireless network operators, in conjunction with local public safety and third party providers, are using a variety of inefficient, incoherent, and sometimes incompatible methods, technologies, solutions, and/or techniques to determine the location of a mobile device and/or to provide location based services.
- While there are no universally accepted standards for implementing or providing location-based services, there are certain requirements or standards associated with determining the location of a mobile device that may be of use in various embodiments. The U.S. Congress has mandated that cellular service providers configure their networks, communication systems and/or mobile devices so that the locations of mobile devices can be determined when a 911 call is placed. To implement Congress's mandate, the Federal Communications Commission (FCC) requested cellular service providers upgrade their systems in two phases (herein “Phase I” and “Phase II” respectively). While the level of precision/accuracy provided by these Phase I and II upgrades are generally inadequate for providing effective location based services that meet the demands of modern users of mobile devices, these upgrades provide a foundation from which more effective location based solutions may be built.
- As mentioned above, the FCC requested cellular service providers upgrade their systems in two phases. In the first phase (Phase I), cellular service providers were to upgrade their systems so that emergency calls (e.g., 911 calls) are routed to the public service answering point (PSAP) closest to the cell-tower antenna with which the mobile device is connected, and so that PSAP call-takers can view the phone number of the mobile device and the location of the connecting cell-tower. The location of the connecting cell-tower may be used to identify the general location of the mobile device within a 3-6 mile radius.
- In the second phase (Phase II), cellular service providers were to upgrade their systems so that PSAP call-takers could identify the location of the mobile device to within 300 meters. To meet these Phase II requirements, wireless service providers have implemented a variety of technologies, and depending on the technology used, can generally identify the location of the mobile device to within 50-300 meters. For example, on systems that have implemented a network-based solution (e.g., triangulation of nearby cell towers, etc.), the location of a mobile device can be determined within an accuracy of 100 meters 67% of the time, and to within an accuracy of 300 meters 95% of the time. On systems that have adopted a mobile device-based solution (e.g., embedded global positioning system receivers, etc.), the location of the mobile device may be determined to within 50 meters 67% of the time, and to within 150 meters 95% of the time.
- Existing phase I and II solutions, alone, are not adequate for generating location information having sufficient accuracy or detail for use in providing accurate, powerful, and reliable location based services. Various embodiments may use some or all of the capabilities built into existing systems (e.g., as part of phase I and II upgrades, device-centric systems, network-centric systems, etc.), in conjunction with more advanced location determination techniques, to compute location information suitable for the advanced location based services demanded by today's consumers.
- In addition to the three basic approaches discussed above, a number of different solutions are currently available for determining the location of mobile device, any or all of which may be implemented by and/or included in the various embodiments.
- Most conventional location determination solutions use distance estimation techniques that are based on single-carrier signals, and one of the fundamental operations in ground-based (or network-centric) location determination solutions is timing estimation of a first-arrival path of a signal. That is, a single-carrier signal transmitted between a transceiver and a mobile device can be received via multiple paths (i.e., multipath), and the multiple paths of the signal can have different received powers and arrival times. The received signal may be cross-correlated to distinguish the multiple paths of the received signal. In this method it is generally assumed that the first-arrival path (e.g., first detected signal, strongest signal, etc.) is associated with the path traveling the shortest distance, and hence is the right value to use in estimating distance between the mobile device and the transceiver. Often, this first-arrival path is the strongest path due to zero or fewer reflections, relative to the other paths, between the transceiver and the mobile device.
- In various embodiments, the first-arrival time of the identified first-arrival path may be used in addition to other parameters (e.g., an estimated signal transmission time and/or a time offset between clocks of the transceiver and the mobile device, etc.) to estimate distance between a mobile device and a network component (e.g., another mobile device, a transceiver, an access point, a base station, etc.). The first-arrival time may be estimated by the mobile device (e.g., based on the downlink received signal) or by the network component (e.g., based on an uplink received signal).
- The location of the mobile device may also be determined by estimating the distance between the mobile device and a network component or other signal sources (e.g., a transceiver, ground or satellite-based signal sources, etc.). For example, the location of the mobile device may be determined by performing trilateration using estimated distances between multiple (e.g., three or more) transceivers and the mobile device.
- Another location determination solution may include computing an observed time difference of arrival (OTDOA) value by measuring the timing of signals received from three network components (e.g., mobile devices, transceivers, access points, etc.). For example, a mobile device may be configured to compute two hyperbolas based on a time difference of arrival between a reference transceiver signal and signals of two neighbor transceivers. The intersection of the computed hyperbolas may define a position on the surface of the earth that may be used by various embodiments to determine the location of the mobile device.
- The accuracy of such OTDOA solutions may be a function of the resolution of the time difference measurements and the geometry of the neighboring transceivers. As such, implementing an OTDOA solution may require determining the precise timing relationship between the neighboring transceivers. However, in existing asynchronous networks, this precise timing relationship may be difficult to ascertain.
- In various embodiments, location measurement units (LMUs) may be added throughout a deployment region of an asynchronous network to measure/compute timing information for one or more network components (e.g., transceivers) relative to a high quality timing reference signal. For example, a mobile device or an LMU may determine the observed time difference between frame timing of transceiver signals, and the observed time difference may be sent to the transceiver or a radio network controller of the communication network to determine the location of the mobile device. The location of the mobile device may also be determined based on the observed time difference and assistance data (e.g., position of the reference and neighbor transceivers) received from the communication network.
- Another location determination solution may include computing an uplink-time difference of arrival (U-TDOA) based on network measurements of the time of arrival of a known signal sent from the mobile device and received at multiple (e.g., four or more) LMUs. For example, LMUs may be positioned in the geographic vicinity of the mobile device to accurately measure the time of arrival of known signal bursts, and the location of the mobile device may be determined using hyperbolic trilateration based on the known geographical coordinates of the LMUs and the measured time-of-arrival values.
- As discussed above, conventional location determination solutions are typically based on single-carrier signals. The various embodiments include a ground-based location determination solution based on multi-carrier signals. A location determination solution based on multi-carrier signals may improve the accuracy of the computed location information by, for example, improving the accuracy of the timing estimation (e.g., by expanding the bandwidth of cellular signals). Location determination solutions based on multiple carriers may be used in both the device-centric (e.g., mobile device-based) and network-centric (e.g., base station-based) approaches, and may be applied to both 3GPP and 3GPP2 wireless communication technologies.
- In various embodiments, a mobile device may be configured to determine its geospatial location based on information collected from mobile device sensors (e.g. gyroscope, accelerometer, magnetometer, pressure sensor, etc.), information received from other mobile devices, and information received from network components in a communication system.
-
FIG. 4A illustrates an example communication system within which the various embodiments may be implemented. Generally, themobile device 102 may be configured to send and receive communication signals to and from anetwork 406, and ultimately theInternet 114, using a variety of communication systems/technologies (e.g., GPRS, UMTS, LTE, cdmaOne, CDMA2000™). In the example illustrated inFIG. 4 , long term evolution (LTE) data transmitted from themobile device 102 is received by a eNodeB (eNB) 404 and sent to a serving gateway (S-GW) 408 located within thecore network 406. Themobile device 102 or servinggateway 408 may also send signaling (control plane) information (e.g., information pertaining to security, authentication, etc.) to a mobility management entity (MME) 410. - The
MME 410 may request user and subscription information from a home subscriber server (HSS) 412, perform various administrative tasks (e.g., user authentication, enforcement of roaming restrictions, etc.), and send various user and control information to the S-GW 408. The S-GW 408 may receive and store the information sent by the MME 410 (e.g., parameters of the IP bearer service, network internal routing information, etc.), generate data packets, and forward the data packets to a packet data network gateway (P-GW) 416. The P-GW 416 may process and forward the packets to a policy and control enforcement function (PCEF) 414 which receives the packets and requests charging/control policies for the connection from a policy and charging rules function (PCRF) 415. ThePCRF 415 provides the PCEF 414 with policy rules that it enforces to control the bandwidth, the quality of service (QoS), and the characteristics of the data and services being communicated between the network (e.g., Internet, service network, etc.) and themobile device 102. In an embodiment, the PCEF 414 may be a part of, or perform operations typically associated with, the P-GW 416. Detailed information about policy and charging enforcement function operations may be found in “3rd Generation Partnership Project Technical Specification Group Services and System Aspects, Policy and Charging Control Architecture,” TS 23.203, the entire contents of which are incorporated herein by reference. - In an embodiment, the
network 406 may also include an Evolved Serving Mobile Location Center (E-SMLC) 418. Generally, theE-SMLC 418 collects and maintains tracking information about themobile device 102. TheE-SMLC 418 may be configured to provide location services via a lightweight presentation protocol (LPP), which supports the provision of application services on top of TCP/IP networks. TheE-SMLC 418 may send or receive (e.g., via LPP) almanac and/or assistance data to and from theMME 410 and/oreNB 404. TheE-SMLC 418 may also forward external or network initiated location service requests to theMME 410. - In addition, the
mobile device 102 may receive information from the servingeNodeB 404 via System Information Blocks that includes the neighbor cells to scan that are on the same system using the same frequencies or different frequencies, Home eNB (HeNB), in addition to CDMA, GERAN and UTRA cells. -
FIG. 4B illustrates logical components, communication links, and information flows in anembodiment communication system 450 suitable for use in determining the location of the mobile device. Thecommunication system 450 may include a network location basedsystem 452, acore network 454, and aradio access network 456. Thecommunication system 450 may also include anapplication component 458, aposition calculation component 460, awireless grouping component 462, and asensor data component 464, any or all of which may be included in amobile device 102. The application component 458 (e.g., client software) may request and receive location information from the network location based system 452 (e.g., through thecore network 454 and the radio access network 456). Likewise, the network location based system 452 (or another client attached to, or within, the core network 454) may request and receive location information from theapplication component 458. - In various embodiments, the
mobile device 102 may be configured to determine its geospatial location based on information collected from mobile device sensors (e.g. gyroscope, accelerometer, magnetometer, pressure sensor, etc.), information received from other mobile devices, and information received from network components in a communication system. In an embodiment, the collection and reporting of sensor information may be controlled/performed by thesensor data component 464. For example, theapplication component 458 may retrieve/receive sensor information from thesensor data component 464 and send the sensor information to theposition calculation component 460 to compute the location of the mobile device locally for position updates and/or position augmentation. Theapplication component 458 may also send the computed location information to the network location basedsystem 452 and/or other mobile devices. - As mentioned above, in various embodiments, the
mobile device 102 may be configured to determine its geospatial location based on information collected from other mobile devices. In these embodiments, two or more mobile devices may be organized into groups. Each mobile device may also share its location information with the other mobile devices with which the mobile device is grouped. For example, mobile devices may be configured to share their current location and/or position information (e.g., latitude, longitude, altitude, velocity, etc.) and an estimate of a distance between themselves and a target mobile device with other mobile devices in their group. - In an embodiment, the grouping of mobile devices may be controlled by the
wireless grouping component 462. For example, theapplication component 458 may retrieve wireless group information (e.g., information pertaining to the locations of other mobile devices) from thewireless grouping component 462, and send the group information to theposition calculation component 460 to perform local calculations for position updates and/or position augmentation. In an embodiment, theposition calculation component 460 may perform the local calculations based on both sensor information received from thesensor data component 464 and group information received from thewireless grouping component 462. - In an embodiment, the
mobile device 102 may be configured to automatically share its location information with other mobile devices upon discovery of the other mobile devices. Mobile devices may augment their location information (e.g., position coordinates) with information received from other mobile devices within same geographic location, and in a controlled pseudo ad-hoc environment. Since the shared location information (e.g., latitude, longitude, altitude, velocity, etc.) involves a relatively small amount of data, in an embodiment the mobile devices may receive such information from a network server by in-band and/or out-of-band signaling. - When implemented in a 3GPP-LTE network, the various embodiments may include an E-SMLC 418 component configured to send and receive location information (e.g., latitude, longitude, altitude, velocity, etc.) to and from the mobile devices, which may be achieved both on-net and off-net. The location information may be delivered in standard formats, such as those for cell-based or geographical coordinates, together with the estimated errors (uncertainty) of the location, position, altitude, and velocity of a mobile device and, if available, the positioning method (or the list of the methods) used to obtain the position estimate
- To aid in the determination of the locations of mobile devices, 3GPP-LTE networks have standardized several reference signals. Various embodiments may use these reference signals for timing based location and positioning solutions. Such reference signals may include the primary and secondary synchronization signals and the cell specific reference signals.
- As mentioned above, two or more mobile devices may be organized into groups. Mobile devices within the same group may be part of the same network, or may be associated with different networks and/or network technologies. The mobile devices within the same group may also operate on different network operating systems (NOSs) and/or radio access networks (RANs).
-
FIGS. 5A-5C illustrate functional components, communication links, and information flows in an embodiment method of grouping mobile devices and sharing location information between grouped mobile devices. With reference toFIG. 5A , after amobile device 102 is powered on, themobile device 102 may scan the airwaves for predefined and/or preferred radio frequency carriers and/or systems with which themobile device 102 may connect to the network. If themobile device 102 does not find an appropriate network with which it may connect (or loses its connection) themobile device 102 may scan the airwaves for other radio access systems (e.g., mobile network, radio access point associated with a mobile device, etc.) to acquire (i.e., connect to) until a connection to a network/Internet 510 is established. These operations may also be performed in the event of a dropped call or power interruption. - The
mobile device 102 may also begin acquiring GPS signals while scanning the airwaves for radio frequency carriers and/or systems. If themobile device 102 cannot acquire GPS signals, a network component (not illustrated) may help determine the relative position of themobile device 102 based on one or more of the location determination solutions discussed herein (e.g., based on the antenna used for the radio access point, the time delay, angle of arrival, etc.). - The
mobile device 102 may acquire (i.e., connect to) an appropriate radio access system, radio frequency carrier and/or system via the mobile device's system acquisition system. In the examples illustrated inFIGS. 5A-5C , themobile device 102 establishes a connection to anetwork 510 via aneNodeB 404. However, it should be understood that any or all of the communication technologies discussed above are contemplated and within the scope of the various embodiments. - After the
mobile device 102 acquires the radio access system, the network 510 (i.e., a component in the network such as a server) will know the approximate location of the mobile device 102 (e.g., via one or more of the location determination solutions discussed above, such as proximity to base towers). In addition, themobile device 102 may compute its current location (e.g., via GPS and/or the location determination solutions discussed above), store the computations in a memory of the mobile device, and report its current location to thenetwork 510. - In addition to knowing the approximate location of the
mobile device 102, thenetwork 510 may also be informed of the locations of othermobile devices 502 and the proximity of the othermobile devices 502 to the recently acquiredmobile device 102. -
FIG. 5B illustrates that thenetwork 510 may send instructions/commands to themobile devices mobile devices mobile devices network 510 may be configured to automatically group themobile devices mobile devices network 510 may be configured to allow an incident command system (ICS) commander to group the devices. In an embodiment, thenetwork 510 may be configured to allow the mobile devices to form groups based on their proximity to one another. -
FIG. 5C illustrates that themobile device 102 may pair/group with anothermobile device 502 and/or establish communication links so that themobile devices mobile devices - The
mobile devices network 510. The sensor information may include x, y, z coordinate information and velocity information. The sensor information may be polled on a continuous basis, may be requested periodically, and/or made available on demand in response to network/system requests. - In an embodiment, a
mobile device mobile device 102, 502 (e.g., in response to detecting motion). Themobile devices network 510 in response to receiving an instruction/command from the network 510 (i.e., a component in the network such as a server or E-SLMC 418 illustrated inFIG. 4 ). The network 510 (i.e., a component in the network) may be configured to receive the sensor and location information from themobile devices mobile devices 102, 502). - In an embodiment, the reporting of sensor information may be based on local parameter settings. For example, the
mobile devices mobile devices mobile devices - In an embodiment, a
mobile device 102 and/or the network 510 (i.e., a component in the network) may be configured to compare collected sensor information to computed latitude and longitude coordinates, relative altitude information, and other available information to determine if there is a discrepancy between the collected/measured values and the expected values. When it is determined that there exists a discrepancy between the expected and measured values, themobile device 102 and/ornetwork 510 may perform additional measurements to improve the location accuracy of the measurements/location information. -
FIG. 5D illustrates an embodimentmobile device method 550 for grouping mobile devices and sharing location information between grouped mobile devices and the network to compute enhanced location information. After a mobile device is powered on, inblock 552, the mobile device may scan the airwaves for predefined and/or preferred radio frequency carriers and/or systems with which the mobile device may connect. Inblock 554, the mobile device may begin acquiring GPS signals while scanning the airwaves for radio frequency carriers and/or systems. If the mobile device cannot acquire GPS signals, the mobile device or a network component may, as part ofblock 554, determine the relative position of the mobile device based on one or more of the location determination solutions discussed herein. Inblock 556, the mobile device may acquire (i.e., connect to) an appropriate radio access system, radio frequency carrier, system and/or network. - In
block 558, the mobile device may compute its current location (e.g., via GPS and/or the location determination solutions discussed above), store the computations in a memory, and report its current location to the network. Inblock 560, the mobile device may group with other mobile devices in response to receiving instructions/commands from a network component and/or in response to detecting that the other mobile devices are within a predefined proximity to the mobile device (i.e., within a threshold distance). Inblock 562, the mobile device may share its current location information, as well as information collected from sensors, with the grouped mobile devices. Inblock 564, the mobile device may receive location and/or sensor information from the grouped mobile devices. The sensor information may include x, y, z coordinate information and velocity information. - In
block 566, the mobile device may identify the relative positions of the other mobile devices, which may be achieve by evaluating the location and sensor information received from the other mobile devices and/or via any or all of the location determination solutions discussed herein. Inblock 568, the mobile device may send the relative location information, its current location information, and/or sensor information to a network component and/or the other mobile devices, which may receive the sensor and location information and compute updated location information (e.g., based on distance in time delay and angle of arrival, relative altitude information, etc.). Inblock 570, the mobile device may receive updated location information from the network component and/or the other grouped mobile devices. Inblock 572, the mobile device may update its current location calculation and/or information based on the information received from the network component and/or the other grouped mobile devices. The operations of blocks 562-572 may be repeated until the desired level of precision is achieved for the location information. -
FIGS. 6A-6D illustrate functional components, communication links, and information flows in an embodiment method for computing location information in which the grouped/pairedmobile devices -
FIG. 6A illustrates that themobile device 102 may communicate with a servingeNodeB 404 to relay its location information to thenetwork 510 and/or to receive location information from thenetwork 510. -
FIG. 6B illustrates that anothermobile device 502 may also communicate with the servingeNodeB 404 to relay its location information to thenetwork 510 and/or to receive location information from thenetwork 510. -
FIG. 6C illustrates that the grouped/pairedmobile devices mobile devices mobile devices mobile devices -
FIG. 6D illustrates that the grouped/pairedmobile devices network 510. For example, themobile devices mobile device 102 is with respect to mobile device 502) to the network 220. The network may compute updated location information based on the received information (e.g., coordinates, sensor information, proximity information, etc.), and send the updated location information to themobile devices mobile devices - The operations discussed above with respect to
FIGS. 6A-6D may be repeated so that themobile devices network 510 until the desired level of precision is achieved for the location information. -
FIG. 6E illustrates anembodiment system method 650 of determining the location of two or more grouped mobile devices. Inblock 652, a first mobile device may send and/or receive current location information to and from a network component. Inblock 654, a second mobile device may send and/or receive current location information to and from a network component. Inblock 656, the first and second mobile devices may communicate with each other to determine the relative distances between each other, which may be achieved by communicating various types of information, including time-of-arrival, relative position with angle-of-arrival measurements, velocity, altitude, etc. - In
block 658, the first and/or second mobile devices may re-compute, refine, and/or update their current location calculations and/or location information based on information received from the other mobile devices and/or the network. Inblock 660, the first and/or second mobile devices may send their updated current location calculations and/or location information to the network component, which may receive the calculations/information and compute updated location information (e.g., based on distance in time delay and angle of arrival, relative altitude information, etc.). Inblock 662, the first and/or second mobile devices may receive updated location information from the network. The operations in blocks 658-662 may be repeated until the desired level of precision is achieved for the location information. - It should be understood that the methods and operations discussed above with reference to
FIGS. 5A-5D and 6A-6F may also be performed such that they include more than two devices. For example, in an embodiment, the mobile devices may be grouped into units of four (4) such that each mobile device may triangulate its position relative to the other mobile devices in the same group. - In an embodiment, a
mobile device 102 and/or a network component may store relative location information for all the mobile devices within each group, based on the type of grouping. For example, a network component may store relative location information for all the mobile devices grouped/paired by an incident command system (ICS) commander. Likewise, the network component may store relative location information for all the mobile devices grouped/paired based on their proximity to each another. - In an embodiment, the
mobile device 102 may be configured to detect a low battery condition, and initiate operations to conserve battery. For example, amobile device 102 may be configured to turn off its radio and/or terminate or reduce its participation in the group/pairing information exchange. As another example, amobile device 102 may be flagged or identified as having a low battery condition, and the other grouped/paired mobiles devices may be informed of the low battery situation so that update intervals may be adjusted to reduce battery consumption. -
FIG. 6F illustrates anembodiment method 670 of adjusting the update intervals in a mobile device in response to detecting a low battery condition. Inblock 672, the mobile device may detect/determine that the amount of power remaining in the mobile device battery is below a predetermined threshold. Inblock 674, the mobile device may transmit a signal or otherwise inform grouped mobile devices of the detected low battery condition. Inblock 676, may initiate operations to converse power, such as by turn off its radio and/or reducing its participation in exchanging information with grouped mobile devices. Inblock 678, the mobile device and/or the informed grouped mobile devices may adjust the update intervals with respect to the mobile device to reduce the load on the mobile device. - As discussed above, grouped mobile devices may share various types of information to improve the accuracy of the location determination calculations. For the information shared between grouped/paired mobile devices, a comparison may be made for the path, range, between the mobile devices using any or all of the information available to the mobile devices (e.g., location coordinates, sensor information, proximity information, etc.). If the two mobile devices report relative positional information that is within a user or network defined range tolerance as being acceptable this is information may be forwarded to the network. If the relative positional information is not within the user or network defined range tolerance, additional polling operations may be performed to improve the accuracy of the measurements or location information. The above mentioned operations may be repeated until the desired level of accuracy is achieved. In an embodiment, the number of times the above-mentioned operations are repeated may determined based on a user-definable values which can be set by the network, user or algorithm used.
- As mentioned above, a
mobile device 102 may include two or more of the same type of sensor. In the embodiments in which themobile device 102 includes more than one of the same type of sensor (e.g., includes two accelerometers), one of the sensors (e.g., one the two accelerometers) may be identified as a master sensor. The values measures by each sensor may be compared, and if the difference between the values falls within a tolerance range, the values measured by the master sensor may be used to compute the sensor parameters (e.g., x, y, z, and velocity parameters). If the difference between the values falls outside a tolerance range, the mobile device may use information collected from other sensors (of the same or different types) to determine if the values measured by the master sensor are consistent with expected values. For example, the mobile device may use information collected from various other types of sensors to compute sensor parameters (e.g., x, y, z, and velocity parameters), and compare the computed sensor parameters to similar sensor parameters computed based on the values measured on the master sensor to determine if the master sensor is functioning correctly. Values measured on the master sensor may also be compared to information stored in the network or other mobile devices to determine if the master sensor is functioning correctly. If it is determined that the master sensor is not functioning correctly, a secondary sensor may be designated as the master sensor. The previous master sensor may be demoted to standby status (i.e., for use if the primary sensor has a failure) and not used for immediate positional calculations. - As mobile devices move into an area, the mobile devices may be asked to group/pair with more devices. The number of devices that a mobile device can group/pair with may be restricted by user configuration, through the system, and/or user intervention so as to conserve battery and computational efforts (e.g., when the mobile device detects a low battery condition).
- In an embodiment, proximity grouping may be used in the x, y, and z coordinates/fields and/or for velocity information.
- In the event that a mobile device is unable to group with another mobile device with which it is instructed to group/pair with (e.g., due to a RF path problems), the mobile device may group with yet another mobile device in an ad-hoc fashion. If no mobile device is pairable with the mobile device, it may rely on its own geographic and/or and sensor information to report to the network.
- When a
mobile device 102 is undetected as being within a given proximity of a grouping radius, other mobile devices in the same group as themobile device 102 may be informed of the decision to degroup/depair them from themobile device 102. In an embodiment, the system may be configured so that an approval from the incident commander or user is required before the mobile is degrouped/depaired. In an embodiment, this may be achieved may transmitting a signal to a mobile device of the incident commander or user requesting approval, to which the incident commander or user may send a reply approving or disapproving of the request to degroup/depair. In an embodiment, the degrouping/depairing process may be transparent to the mobile device users. - In the event that a mobile device is unable to communicate with the network, the mobile device may send telemetry information pertaining to location services (and other telemetry information) to a grouped mobile device for relaying to the network.
- In an embodiment, polling for information may be performed once the network has lost communication with the mobile device. Mobile devices that and known to be grouped to the mobile device may be instructed to communicate with the disconnected mobile even when it is trying to reacquire the network. A logical sequence based on proximity, signal quality to the network, and/or battery strength may be used to determine which mobile device will be used as a relay for communicating with the network.
- The relayed telemetry information may include more than just positional information. For example, the telemetry information may also include bio sensor and user bio information reporting on the environment and user conditions, including heart rate and temperature, CO, O2 and other sensor information.
- In an embodiment, the network may continuously measure/monitor the connected mobile devices. Knowing their location and relative location to each of the other mobile devices enables the network to continuously measure the uplink and downlink communication paths. If communication path degradation occurs and begins to fall within a defined system quality range (which may be user defined), a mobile device may be instructed to either handover to another radio access node for the same network and/or network technology, or be instructed to initiate to perform relay operations to relay communications though a defined mobile device as a secondary signal path.
- In the event that a communication link is lost with the network the mobile device may attempt to acquire itself on another network. While the acquisition process is underway, a mobile device may act as a mesh device. Other mobile devices in the proximity group may also connect as a mesh network.
- In an embodiment, the mobile devices may utilize dead reckoning (also called deducted reckoning) techniques to compute updated location information. Mobile devices may store the updated information for eventual relay to another mobile device which has network access or until one of the mobile devices or both devices have access to the initial network or another network and granted access to whether it is public or a private network.
-
FIG. 7 illustrates normal operating conditions in which amobile device 102 will periodically scan forother cells 704, including its servingcell 903. If the radio access points are part of the network then the mobile device will report the identity and signaling information required by the existing network to determine (e.g., via triangulating and/or trilateration) the mobile device's location based on a network approach. If the mobile device detects a radio access point is not part of its preferred cell selection process, it may attempt to read the coordinates and positional information from the access point that is broadcast. - Once synched with the access point the mobile device may determine the timing difference and other requisite information to help determine its relative location and distance from the access point. This information may be related to the location system used by the mobile device to help refine its current location calculations.
- Additionally the mobile device may be configured to compare each cell read to its own coordinate and using bearing and time difference for all the cells it reads. The mobile device may then triangulate on its own position.
- During a 911 call a software application on the distressed mobile device may be executed. The software application may access an active neighbor list, read the overhead of each cell, and use that information to triangulate on the mobile device's own position. The mobile device may also read the time offset for each of the cells.
- In this case the system begins to try and locate the distressed mobile's position with more precision an accuracy to assist First Responders with triangulating on the distressed mobile's position and sending the information to the incident commander and/or public service answering point (PSAP) with a relative distance to target indication that is updated on pre-defined intervals. If the mobile device has lost contact with the 911 center, PSAP then the last location is continuously displayed and any velocity information is also relayed to assist the first responders.
- In an emergency, the
mobile device 102 may be configured to send its location information to the network. Themobile device 102 may be configured to automatically send its location information in response to detecting the emergency, or may provide the user with an option to send the location information. In an embodiment, themobile device 102 may be configured to send its location information in response to a network initiated command. - Each mobile device may become an access point (AP). The decision to be the access point may be periodically updated while still in communication with the network, or when no network is found. Upon powering up, each mobile device may act as a client, and on a pseudo random time interval, the mobile devices may become an access point and then a client.
- The location based methodology may be the same for a frequency-division duplexing (FDD) and a time-division duplexing (TDD) system. However in the event that the communication link between the mobile device and the network is lost, the mobile device may be configured to relay its telemetry information through another mobile device having network access.
- In an embodiment, all information sent via wireless communication links may be digital. In an embodiment, the information may be encrypted to a requisite advanced encryption standard (AES) standards level or the appropriate encryption level needed for the requisite communication system and access method used.
- Generally, the location based systems (LBS) may utilize reactive or proactive based methods. In a reactive location based system, the mobile devices may synchronously interact with each other on a time basis or some other predetermined update method. In a proactive location based system, the mobile devices may update their location information based on a set of predetermined event conditions using an algorithm. The various embodiments may include both reactive and proactive aspects, taking the best of both approaches to enhance location accuracy and precision.
- Various embodiments may include location determination solutions that utilize horizontal data (i.e., a set of reference points on the Earth's surface against which position measurements are made) and/or vertical data. Horizontal data define the origin and orientation of the coordinate system and are prerequisites for referring a position relative to the Earth's surface. Vertical data are based on geoids, which primarily serves as a basis to determine the height of a position relative to mean sea level for which the geoids act as a benchmark for origin and orientation. Various embodiments may utilize horizontal and vertical data to provide/generate enhanced three dimensional location information. The horizontal and vertical data can be global, national, local or custom depending on the locality and positioning reference system utilized.
- Traditionally global data are used for position/location as compared to a local datum. Global data are used for initial position fixing if possible and are based on GPS coordinates. Local data are based on a particular position on the surface of the earth, which allows for a non GPS based location based services to take place. The various embodiments may use global data, local data, or both. In an embodiment, GPS may be used to help identify the initial positional fix, and may be augmented by dead reckoning and a hybrid trilateration solution that utilizes both network and terminal based positioning. In this embodiment, both local and global data may be used.
- Generally, a hybrid lateration and trilateration solution includes a mobile device performing a measurement and sending it to the network, and a network component performing the location determination calculations. The various embodiments include a hybrid lateration and trilateration solution in which the mobile device performs the location determination calculations, with and without the support of the network components.
- Various embodiments may include sensor fusion operations in which a collaborative approach is used so that the sensors do not act as individual sensors, but as a collective team. As discussed above, the mobile device may include various sensors (e.g., accelerometer, gyros, magnetic compass, altimeters, odometers, etc.) capable of generating heading, orientation, distance traveled, and velocity as part of the sensor information collected on the mobile device. In various embodiments, information collected from any or all the internal sensors may be used for improving location or positioning accuracy and/or confidence improvements. Various embodiments may compute location information based on information from multiple sensors, with or without the aid of radio frequency propagation information.
- The sensor fusion operations may include the sharing of telemetry including sensor data indicating relative movement of the individual mobile device, which enables temporal readings to assist in the location estimate, either with external assistance or dead reckoning.
-
FIG. 8 illustrates an embodimentmobile device method 800 for determining the location of a mobile device in a wireless network. Inblock 802, a mobile device may determine its current location using any of the above mentioned location determination solutions. Inblock 804, the mobile device may share its location information with other grouped mobile devices and/or receive location information from other grouped mobile devices. Inblock 806, the mobile device may compute and send updated distance vector and sensor information to a network component for improved positional fix. Inblock 808, the mobile device may receive updated location information from the network component, and perform its own positional fix based on mobile data information received from the network. Inblock 810, the mobile device may update its location information and/or confirm its location information using dead reckoning to enhance positional accuracy. - Dead reckoning may provide the needed positional corrections as a local datum method for positioning when GPS or other network related positioning solutions are not available. Additionally dead reckoning may enhance the location position accuracy and precision calculations by providing additional horizontal and vertical datum comparisons.
- With dead reckoning, the current position may be deduced (or extrapolated) from the last known position. The dead reckoning accuracy requires a known starting point which either can be provided by the network, GPS, near field communication link, RF beacon, or via another mobile device.
- A dead reckoning system may be dependent upon the accuracy of measured distance and heading, and the accuracy of the known origin. However the problem with relying on dead reckoning alone to assist in positional improvement is error accumulation caused by sensor drift (i.e., differences or errors in values computed/collected from one or more sensors). In particular, magnetic, accelerometers and gyroscopes are susceptible to sensor drift. The error accumulation for any of the sensors may increase over undulating terrain, as compared to flat terrain. Bias error and step size error are leading contributors to dead reckoning errors.
- Various embodiments may tightly couple the mobile device sensors and continuously recalibrate the sensors to reduce any drift problems caused by unaided dead reckoning. Additionally, as part of the tightly coupling the sensors, any bias drift associated with the sensors (e.g., a gyroscope) may be address by utilizing a kalman filter to reduce the errors from the primary and/or secondary sensors (e.g., gyroscopes).
- In various embodiments, the mobile device may be configured to include velocity computations as part of the location determination computations to account for position changes that occur. When a GPS signal is available, the step size (via velocity computation) and compass bias errors may be estimated by an enhanced kalman filter (EKF). Additionally if GPS is available, the compass may also be able to identify slow motion changes due to changes in magnetic inclination. The compass may be relied upon for motion computations in addition to that of accelerometers and gyroscopes, with and without the availability of GPS.
- Dead reckoning accuracy degrades with time, requiring regular position updates or positional corrections. Therefore, the mobile device may be configured to not only use its own internal sensors to compute the location/positional information, but may also communicate with other mobile devices to leverage their location/positional information to enhance its own location/positional information. In essence, the mobile devices may act as RF base stations, providing the lateration capability to improve the positional accuracy of other mobile devices.
- In an embodiment, a mobile device may be configured to poll one or more other mobile devices to gain a better positional fix on its location.
- Mobile devices may be grouped together, either through assignment by the network or through the mobile device acquiring/detecting/connecting to other mobile devices (which may or may not be in the same network) as part of a discovery method for sharing location information.
- Location information may be shared via the use of a near field communications system (e.g., Bluetooth®, ultrawideband, peanut radios, etc.), infrared, ultrasonic, and other similar technologies, such as via the use of WiFi. The wireless communications may also be ad hoc or infrastructure based, or based on a TDD system, such as LTE, SD-CDMA, TD-CDMA, or any other TDD methods.
- In an embodiment, the mobile device may be configured to initiate the sharing of location/position information in response to receiving a network-driven grouping request from a network component.
- In an embodiment, when the mobile device has lost contact with the network, it may attempt to find a suitable mobile device to help in its location determination computations, and for possible connection to the network (e.g., via a relay).
- In an embodiment, the mobile device may be configured to send a request for location information to another mobile device. The request may be sent after the authentication process between mobile devices, and may include a time stamp which may be sub-seconds in size (milliseconds). Another mobile device may respond with a message that also has its time stamp and when it received the time stamp from the initiating mobile device.
- Several messages (e.g., three messages) may be exchanged quickly between the mobile devices to establish time synchronization and share location/positional information that includes x, y, and z coordinates and a velocity component in each message. The time differences along with the x, y, and z coordinates may be compared with possible pulses or pings to establish an estimated distance vector between the devices.
- When the distance vector and the x, y, z coordinates of two mobile devices are known, a point-to-point fix may be established. This process may be repeated for all the mobile devices in a group that has been assigned or created by the mobile device itself. Having multiple distance vectors from other points to the mobile will enhance the positioning accuracy.
- A mobile device may be configured to report back to the network location server the distance vectors it has found between different mobiles. The other mobile devices also involved with the positioning enhancement may also report their distance vectors to the network to have their overall position accuracy improved as well.
- The positional accuracy is meant to be done in incremental steps and the process will continue until no more positional improvements will be achievable. The positional accuracy improvement threshold may be operator defined, and may be stored in a mobile device memory.
- When collecting the distance vectors and other positional information, if the error in position is greater than x % for a lower positional confidence level then no update may be required. As the mobile device receives other sensor data and more than a pre-described distance in any direction or a combined distance vector than the positional update process begins again. However if the x % of positional confidence level is less than desired, additional positional updates may be made with the mobile devices grouped together in an interactive process to improve the confidence level of the positional information.
- It is important to note that typical positional location methods that are used currently by the network are not necessarily replaced with above-described positional lateration. Instead, the hybrid lateration method may be used in various embodiments to augment the positioning accuracy and confidence for network based position request due to boundary changes or paging requests or other position/location triggered events.
-
FIGS. 9A-9E illustrate various logical components, information flows and data suitable for use in various embodiments.FIG. 9A illustrates thatmobile devices eNodeBs 911. Themobile devices mobile device 901 may be instructed to find and communicate with the othermobile devices mobile devices mobile device 901. Themobile devices mobile devices mobile devices -
FIG. 9B illustrates that a combination of circular and hyperbolic trilateration operations may be performed as part of an embodiment location determination solution. For example, if any of the coordinate data provided by the sensors and/or mobile devices is in latitude and longitudinal coordinates, it may be converted to Cartesian coordinates to facilitate a hybrid lateration calculation. In the example illustrated inFIG. 9B , themobile devices 901 has been designated as reference mobile device,reference number 912 identifies the position to be determined/computed (i.e., with a high level of accuracy) with respect tomobile device 901,reference number 910 identifies a three dimensional sphere that encompass themobile device 901, andreference number 914 identifies an area of the three dimensional sphere (with x, y, and z coordinates) within which the device exists. -
FIG. 9C-9D illustrate that distance vectors may be computed between themobile devices FIG. 9C mobile 901 using the hybrid trilateration method determines is relative position with respect tomobile devices reference numbers mobile devices mobile devices mobile device 901, and themobile device 901 may compute a distance vector between itself andmobile devices mobile device 901 may initiate communications with mobile device 902 (althoughmobile device 902 could initiate the communication) and exchange time stamps, positional information, sensor data. The same process may occur with respect tomobile devices - As illustrated in
FIG. 9D , themobile devices mobile device 901. The same process may occur with respect tomobile devices mobile device 902 undergoes the same process as that done withmobile device 901 as part of the hybrid trilateration process,mobile device 901 may usemobiles mobile device 902 may usemobiles - The three circles or
ellipses FIG. 9C and the three circles orellipses FIG. 9D do not intersect at a given point, but span an area of a particular size depending on the range involved. -
FIG. 9E illustrates an embodiment hybrid trilateration method in which the position ofmobile device 901 is validated or improved upon. As part of the hybrid lateration method, a separate calculation operation may be required for each x, y, and z coordinates, in addition to accounting for velocity. However, the ability to have threemobile devices mobile device 901 may present an error window (or an error area) for each coordinate plane represented byreference number 930. The error window/area may be a combination of range errors from themobile devices reference numbers reference number 921 is the hybrid range error associated withmobile device 902;reference number 922 is the hybrid range error associated withmobile device 903; andreference number 923 is the hybrid range error associated withmobile device 904. Additionally this process can be done with less or more mobile devices than used in the above example. - For each axis (x, y, or z), a similar process occurs where the
error area 930 is a combination of determining the range between the other mobile devices andmobile device 901. The hyperbolic lateration is a typical calculation method used in location based systems and is based on the principal that the range between two locations is the same. However the range determined for the points may not be constant since both can be moving toward, away or together at a similar velocity and trajectory. - With the hybrid lateration method proposed a corrective distance vector Δx, Δy, Δz is used that can be used to apply to the estimated position.
- The three circles or
ellipses FIG. 9C and the three circles orellipses FIG. 9D do not intersect at a given point, but span an area of a particular size depending on the range involved. Therefore range is “r” and is denoted by the subscript representing the distance vector involved. Thus: -
r=p i+error - The pseudo range pi deviated from the actual range in any axis due to the inaccuracy in synchronization or propagation in a multipath environment or due to sensor induced errors. Where the distance vector accounting for change in direction is:
-
r i=√(X i −x)2+(Y i −y)2+(Z i −z)2 - Three range calculations are then averaged to determine the distance vector that is used. If the previous range calculation rj as compared to that of the current calculation has an error in excess of a user defined percentage or variance, then the new measurement is disregarded. Included with the distance vector validation may be the fusion sensor information where expected position vector calculated may be included for the confidence interval.
-
Range difference=d ij =r i −r j - An iterative process may be used for position improvement, which may include the use of a least squares calculation fit to approximate the position solution in a step wise basis. The process may continue until the range difference measured does not produce any noticeable accuracy improvement, which may be user-defined, either at the mobile device or network or both.
- The multi-lateration calculations may include estimating a location of a mobile device based upon estimated distances to three or more measurement locations (i.e., locations of three other mobile devices or wireless transceivers). In these calculations, the estimated distance from a measurement location (location of another mobile device) to the mobile device may be derived from the measured signal strength. Since signal strength roughly decreases as the inverse square of the separation distance, and the transmission power of the mobile device can be presumed, the distance di can be simply calculated as:
-
d i=√(S 0 /Si i) - where:
- di is the estimated separation distance between a measurement location and the mobile device;
- Si is the measured signal strength; and
- S0 is the strength of the signal transmitted by the other mobile device.
- Alternatively, the signal strength readings may be translated into distances using a path loss model, such as the following:
-
RSSIi =a−cb log10(d i) - where:
- a is the signal strength at di=1 meter;
- b is the path loss exponent; and
- c is the path loss slope with 20 being used for free space.
- The lateration operations may include performing a least squares computation, which may accomplished by a processor calculating the following formula:
-
min(x,y)Σ(d i −∥MS i−(x,y)∥)2 - where:
- di is the distance calculated based on a measured signal strength value;
- MSi corresponds to the known location/position of the mobile device; and
- the minimization value of (x, y) is the estimated position of other mobile devices.
-
FIG. 10 illustrates an embodimenthybrid lateration method 1000 in which mobile devices may gain access to the network. The mobile devices may be instructed to be grouped by the network.Mobile devices -
Mobile device 901 may send a request for position information tomobile device 902. The information may be sent after the authentication process between mobile devices, and may include a time stamp. The time stamp may be sub seconds in size (e.g., milliseconds). Themobile device 902 may respond with a message that also has a time stamp, and timing information pertaining to when themobile device 902 received the time stamp frommobile device 901. Three messages may be transferred quickly to establish time synchronization. The time differences may then be compared, along with possible pulses or pings, to establish an estimated distance vector between the mobile devices. Knowing the distance vector and the x, y, and z coordinates of both 901 and 902, a point-to-point fix may be established. - The
mobile device 901 may then initiate communication withmobile devices mobile device 902 for each ofmobile device mobile device 901 may compare the new coordinates to its previously computed current location, and adjust the location computations accordingly. - The positional information distance vectors may be sent to the network for positional processing with other network positional information. Based on the position calculated for the mobile device, the network (i.e., a component in the network, such as a network server or E-SMLC) may instruct the mobile device to adjust its positional information.
- Additionally the
mobile device 901 may also make a positional correction if the network either does not respond in time, which may result in a message update time out. Alternatively, when the network cannot make the necessary correction, and the positional information may be used by another component and/or other mobile devices to perform the necessary corrections. - If the error is greater than x % for a lower positional confidence level then no update is required. As the mobile receives other sensor data and more than a pre-described distance in any direction or a combined distance vector than the positional update process begins again. If the x % of positional confidence level is less than desired, additional positional updates may be made with the grouped mobile devices (e.g., iteratively) to improve the confidence level of the positional information. Additionally if the positional information from one of the mobile devices that is being attempted to obtain a distance vector appears to be in error, then that mobile devices data may be selected to not be used for this iterative step of performing positional updates with other grouped mobile devices. However it will continue to be queried as part of the process since its position/location could be corrected in one of the steps it is taking to improve its position/location as well.
- Additionally, in the event that one or more mobile devices lose communication with the core network it will still be possible to maintain position accuracy through one of the other grouped mobile devices. It will also be possible to continue to maintain a communication link by establishing a network relay connection with another of the mobile devices in the same group which still has communication with the network itself.
-
FIG. 11 illustrates another embodiment hybrid lateration method in which a mobile device cannot locate a network due to coverage problems. Themobile device 901 may operate in an autonomous mode and attempt to locate another mobile device. The other mobile device could be used to relay information to the network and possibly set up a near field communication bridge in addition to providing location enhancement capability. - In the example illustrated in
FIG. 11 ,mobile device 901 establishes a near field LAN inviting other mobile devices in proximity to communicate with it. Positional information can then be shared and themobile device 901 can have its location improved and the positional information can be relayed back to the core network via another mobile device. - The
mobile device 901 may also communicate its positional information and establish near field communication link with a mobile device that is not part of the home network associated withmobile device 901. - The mobile devices may have the USIM, SIM, PRL or access point information pre-built in. The mobile device for first responders may have the incident radio system set as their preferred system, or in the case that the radio access system being used as a public safety network.
- For first responders to utilize a wireless mobile network (e.g., LTE) the position/location information accuracy needs to improved for in building environments in addition to providing more accurate location information about where the mobile devices are actually located. Whether the mobile device is used by a first responder, commercial cellular user, or a combination of both.
- The positional location improvement for first responders may be helpful to improve situation awareness, improved telemetry and overall communication with the incident commander. Since all incidents for first responders tend to be fluid the ability to account for a dynamic environment of mobile devices coming into and out of the incident area. In addition the mobile devices proximity location to other mobile devices can and will change as the incident situation changes where resources are added and/or reassigned as the need arises for operational requirements.
- The use of network and terminal driven position enhancement techniques previously discussed may be exploited. The grouping of mobile devices may be done either as part of pre-plan, with intervention by the incident commander or driven from the commercial wireless network, public safety wireless network, or local incident communication system (ICS) 1204 based on reported proximity of the mobile devices.
-
FIG. 12A illustrates that upon arriving at the incident scene, amobile device 102 may recognize the existence of alocal radio network 1202. If there is noICS radio network 1204 with which the mobile device may connect, themobile device 102 will continue to communicate via a commercial or other wireless network, 1202. -
FIG. 12B illustrates that themobile device 102 may determine that there is a validlocal radio system 1202 with which it may communicate, and may have a priority access tosmall cell system 1204 based on a preferred network and cell selection process themobile device 102 has been instructed to use. -
FIG. 12C illustrates that themobile device 102 may transfer the connection from thelocal radio system 1202 to thesmall cell system 1204. - For first responders when a situation arises that requires finding a man down or responding to an emergency call (911) the location based process can be used to help in the search and rescue of the person.
-
FIG. 13A illustrates that themobile device 102 may be identified by the network as being in distress via network monitoring of themobile device 102 or via the mobile device transmitting a distress signal. The distressedmobile device 102 may determine that it has lost communication with the network, and may instruct the wearer/user to either disable or initiate a distress signal. Themobile device 102, upon initiation of a distress signal, may begin a grouping process previously defined. -
FIG. 13B illustrates that thenetwork 510 to which the servingeNodeB 404 is connected to may instruct amobile device 1302 in the same group as the distressedmobile device 102 to report the last known location of themobile device 102 and time stamp. -
FIG. 13C illustrates that thenetwork 510 may instructadditional mobiles devices 1304 to attempt to group with the distressedmobile device 102. -
FIG. 14 illustrates that when themobile device 102 is unable to communicate with thenetwork 510, it may be operating under a dead reckoning process and continue to attempt to locate othermobile devices - Once the mobile device has been grouped, or is still connected to the network, the relative location of the mobile device will be sent to all the mobile devices that are in active search for that mobile device. The selection of which mobile devices will be searched may be determined by operator intervention and selection.
-
FIG. 15 illustrates an embodiment enhancedantenna scheme 1500 that may be used by wireless network operators or first responders to improve the positional accuracy for the mobile device. Theenhanced antenna scheme 1500 may include aradome 1515 that is curved over a series ofpatch antennas 1520.Several antennas 1520 may be used achieve better angle of arrival measurement. In an embodiment, theenhanced antenna scheme 1500 may include an array ofantennas 1520 on flexible circuit boards so they can conform to theradome 1515. -
FIG. 16A-B illustrate that the above mentionedenhanced antenna scheme 1500 may be implemented on avehicle 1602. Specifically,FIG. 16A illustrates anenhanced antenna scheme 1500 that includes twoantennas 1602 for this purpose.FIG. 16B illustrates anenhanced antenna scheme 1500 that includes fourantennas 1602 for this purpose. Eachantenna 1602 may include an array ofantennas 1520 on flexible circuit boards so they can conform to theradome 1515. -
FIG. 17A-B illustrate strips of antenna patches that may be used in various embodiments.FIG. 17A illustrates two strips ofantenna patches FIG. 17B is an illustration of a cross sectional view of theradome 1515 in which theantenna patches antenna patch 1520 is closer to theouter radome cover 1515 than isantenna array 1521. A fiber glass or a transparent RF medium 1522 may provide rigidity and enable the antennas to be closely spaced. The antenna array may be cone shaped using a flexible circuit design (for receive only configurations). Envelope detectors may be used to determine which of the antenna patches are receiving the highest quality signal from the mobile device using an amplitude method for detection. - In an embodiment, the detection and tracking of a mobile device may be controlled so that the measurements are in-sync with an eNodeB pulse request to the mobile device for positional information.
-
FIG. 18 illustrates an antenna array (1520 or 1521) in which the antenna system is connected to the normal antenna port on a receiver (e.g., eNodeB) 1525. Each of the patch antennas may be matched to a 10db coupler 1527 and configured to provide a port coupling to a receivepatch detector 1530. The receivepatch detector 1530 may be configured to determine which patch antenna has the strongest signal, and based on the number of patch antennas and the distance calculation, another altitude measurement may be made by the mobile device. - In an embodiment, the antenna array system may not be connected to the
eNodeB receiver 1525 and control coordination may be provided by the E-SMLC for synchronization of the received signal from the mobile device. -
FIG. 19 illustrates anembodiment antenna array 1523 retrofitted into an existing cellular wireless network. Thearray 1523 may be installed in parallel to an existingantenna 1524. A control mechanism that is the same as or similar to the control mechanism illustrated inFIG. 18 may be used for the commercial applications. - The various embodiments may be implemented on a variety of mobile computing devices, an example of which is illustrated in
FIG. 20 . Specifically,FIG. 20 is a system block diagram of a mobile transceiver device in the form of a smartphone/cell phone 2000 suitable for use with any of the embodiments. Thecell phone 2000 may include aprocessor 2001 coupled tointernal memory 2002, adisplay 2003, and to aspeaker 2054. Additionally, thecell phone 2000 may include anantenna 2004 for sending and receiving electromagnetic radiation that may be connected to a wireless data link and/orcellular telephone transceiver 2005 coupled to theprocessor 2001.Cell phones 2000 typically also include menu selection buttons orrocker switches 2008 for receiving user inputs. - A
typical cell phone 2000 also includes a sound encoding/decoding (CODEC)circuit 2024 which digitizes sound received from a microphone into data packets suitable for wireless transmission and decodes received sound data packets to generate analog signals that are provided to thespeaker 2054 to generate sound. Also, one or more of theprocessor 2001,wireless transceiver 2005 andCODEC 2024 may include a digital signal processor (DSP) circuit (not shown separately). Thecell phone 2000 may further include a peanut or a ZigBee transceiver (i.e., an IEEE 802.15.4 transceiver) 2013 for low-power short-range communications between wireless devices, or other similar communication circuitry (e.g., circuitry implementing the Bluetooth® or WiFi protocols, etc.). - Various embodiments may be implemented on any of a variety of commercially available server devices, such as the
server 2100 illustrated inFIG. 21 . Such aserver 2100 typically includes one ormore processors volatile memory 2103 and a large capacity nonvolatile memory, such as a disk drive 2104. Theserver 2100 may also include a floppy disc drive, compact disc (CD) or DVD disc drive 2106 coupled to theprocessor 2101. Theserver 2100 may also include network access ports 2106 coupled to theprocessor 2101 for establishing data connections with anetwork 2105, such as a local area network coupled to other communication system computers and servers. - The
processors multicore processors 2102 may be provided, such as one processor core dedicated to wireless communication functions and one processor core dedicated to running other applications. Typically, software applications may be stored in theinternal memory processor processor - The wireless (or mobile) device location determination techniques described herein may be implemented in conjunction with various wireless communication networks such as a wireless wide area network (WWAN), a wireless local area network (WLAN), a wireless personal area network (WPAN), and so on. The term “network” and “system” are often used interchangeably. A WWAN may be a Code Division Multiple Access (CDMA) network, a Frequency Division Multiple Access (FDMA) network, a Time Division Multiple Access (TDMA) network, an OFDMA network, a 3GPP LTE network, a WiMAX (IEEE 802.16) network, 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. W-CDMA is 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. - Various embodiments may include enhancements to the current location based service methods and methodologies used for wireless mobile communications, and include improved methods for determining the location of a mobile or wireless device (e.g., mobile device 102).
- Commercial and public safety positioning applications are growing in popularity and use, as are other similar services and applications that are based on, or which utilize, precise, accurate, and detailed location information. As a result, it is becoming increasingly important for modern wireless/mobile devices to be able to accurately determine their locations within a wireless network. The various embodiments include mobile devices that are configured to accurately determine their locations within a wireless network to a high degree of confidence/precision.
- Public Safety systems are now embarking on the use of commercial cellular technologies, such as the third generation partnership project (3GPP) long-term evolution (LTE), as their communication protocol(s) of choice. As a result, there is a need for improved situation awareness at the site of an incident (e.g., for first responders, mobile device users, etc.). The various embodiments include mobile devices that may be used by first responders for improved situation awareness at the site of an incident. In some embodiments, this may be accomplished by configuring a mobile device to determine its location with a high degree of accuracy and precision.
- Under the correct conditions, existing geo-spatial positioning systems, such as GPS systems, provide a good estimate for a mobile device's location. However in many other cases (e.g., in buildings and urban environments) these geo-spatial positioning systems are not available and/or do not generate sufficiently accurate location information. For example, a GPS system may not be able to acquire satellite signals and/or sufficient navigation data to calculate its geospatial location (called “performing a fix”) when the device is indoors, below grade, or when the satellites are obstructed (e.g., by tall buildings, etc.). In addition, the presence of physical obstacles, such as metal beams or walls, may cause multipath interference and signal degradation of the wireless communication signals when the mobile device is indoors (or in urban environments that include tall buildings, skyscrapers, etc.). These and other factors often cause existing geo-spatial technologies to function inaccurately and/or inconsistently on mobile devices, and hinder the mobile device user's ability to fully utilize location-aware mobile software applications and/or other location based services and applications.
- Similarly, network based solutions for determining the location of mobile device may also not be adequate for locating a mobile device within buildings and/or in urban environments. The introduction of new wireless network systems, such as LTE, has presented some new opportunities and capabilities (e.g., network based solutions). However, despite these advancements, existing solutions are often unable to generate location information with a sufficiently high level of accuracy, precision or detail required to provide enhanced location based services (e.g., applications that improve situational awareness at the site of an incident, etc.).
- In some cases, wireless network systems, such as LTE, may be used in conjunction with the public safety band. This combination may allow for excellent coverage in urban and indoor environments. However, using existing solutions, the accuracy and precision of the location information is often limited. For example, location information that is generated via existing network based solutions and/or existing wireless network system technologies often does not include a sufficiently high level of accuracy, precision or detail to provide enhanced location based services (e.g., applications that improve situational awareness at the site of an incident, etc.).
- Improving positional location accuracy, confidence and precision in a mobile device has many advantages, particularly when the device is used for emergency location services, commercial location services, internal location services and lawful intercept location services. The various embodiments provide the ability to improve the positional location information for both new and existing wireless networks, and improve the positional location accuracy, confidence and precision in a mobile device.
- For commercial applications, a mobile device's ability to generate highly accurate location information (e.g., eLBS information) within a multiple story building, in an urban environment, within a mall, etc. may provide the system with various network radio resource improvements. In addition, eLBS information may also allow for unique advertising targeting capabilities. Moreover, eLBS information may be used for applications related to improved fleet management, asset tracking and various machine to machine communications for which highly accurate location/position information is important. For commercial users, the need for improved position/location information accuracy is most needed for in-building environments where the location of the mobile device can be more accurately pin pointed for location based services. The advantage of law enforcement with improved positional information will enable the tracking of mobile devices inside a building to enable determination of what floor or part of the building the device is being used is located without the need for replacing radio beacons or location aware access points. For emergency services the advantage comes to better positional location of the party in need of assistance, especially in an urban environment where the positional information is most problematic with existing techniques. For first responders this enhancement enables mobile devices which are in the same scene to help augment their position coordinates with each other in a controlled ad-hoc environment. The positional information shared not only includes latitude and longitude but also altitude and velocity. Since this information involves a small amount of data the mobile devices can have the E-SMLC in the case of LTE share the information both on net and off-net.
- The use of sensors including accelerometers, gyroscopes, magnetometers and pressure sensors along with GPS receivers with mobile devices is becoming more prevalent. Therefore the enhancements for positional location will give the E-SMLC in the case of LTE the ability to not only utilize GPS or Network derived coordinate information but also to have an augmentation with sensors associated the mobile device which can include accelerometers, gyroscopes, magnetometer and pressure sensors for refining and reducing some of the positional uncertainties that are in inherent to wireless positional determination.
- For wireless mobile network like LTE, the position/location information accuracy needs to be improved for in building environments in addition to providing more accurate location information about where the mobile devices are actually located. Whether the mobile device is used by a first responder, commercial cellular user or a combination of both.
- Positional location improvement enables improved situation awareness, improved telemetry, and improved overall communication with the incident commander. In addition, the mobile devices proximity location to other mobile devices can and will change dynamically allowing for resources to be added and/or reassigned as the need arises for operational requirements.
- As discussed above, the various embodiments include methods, and mobile computing devices configured to implement the methods, of determining a location of a mobile device. The methods may include determining an approximate location of the mobile device, grouping the mobile device with a wireless transceiver in proximity to the mobile device to form a communication group, sending the determined approximate location of the mobile device to the wireless transceiver, receiving on the mobile device location information from the wireless transceiver, and determining a more precise location of the mobile device based on the location information received from the wireless transceiver. As part of determining its approximate location, the mobile device may estimate its position and/or generate a position estimate. It could be beneficial for these position estimates to include latitude, longitude and elevation information that is accurate to within one (1) meter (and many times within one meter accuracy).
- In some embodiments, the mobile device may be equipped with a “sensor fusion” system/component. The sensor fusion component may configured to collect and use information from sensors in the mobile device to further improve the location position determinations. As such, the sensor fusion component may allow the device to better determine its approximate location and/or to generate a better position estimate (e.g., a more precise value, more accurate coordinates, etc.).
- In further embodiments, the mobile device may be configured to receive (e.g., via an antenna coupled to one or more of its processors, etc.) location information from a multitude of external devices, and use this information to better determine its approximate location and/or to generate a better position estimate (e.g., a more precise value, more accurate coordinates, etc.).
- In some embodiments, the mobile device may be configured to receive the location information was waypoints. A waypoint may be an information structure that includes one or more information fields, component vectors, location information, position information, coordinate information, etc. In some embodiments, each waypoint may include coordinate values (e.g., x and y coordinates, latitude and longitude values, etc.), an altitude value, a time value, a timestamp, ranking values, confidence values, precision values, a range value, and an information type identifier (e.g., GPS, Loran C, sensor, combined, etc.). The coordinate and altitude value may identify the three-dimensional location of the corresponding external device. The timestamp may identify the time that the location was determined/captured. The range value may identify a distance between the external device and the mobile device. In some embodiments, a waypoint may also be, or may include, a location estimate value, a location set, or any other similar location information suitable for adequately conveying or communicating location information.
- In an embodiment, the mobile device may be configured to receive location information in the form of a first waypoint from a first external device, a second waypoint from a second external device, a third waypoint from a third external device, and a fourth waypoint from a forth external device. The mobile device may use any combination of the received waypoints (e.g., first through fourth waypoints) in conjunction with stored and historical information (e.g., previously computed waypoints, movement information, etc.) to determine or compute its approximate and/or more precise location with a high degree of accuracy.
- In some embodiments, the mobile device may be configured to perform advanced location based operations (e.g., advanced sensor fusion operations) to generate location information (e.g., a location estimate set/value), use a differential RMS2 method (or any other method known in the art) compute confidence values, and compare the computed confidence values to one or more threshold values to determine whether there is a sufficiently high degree of confidence in the accuracy of the generated location information (e.g., location estimate set/value). In some embodiments, the mobile device may be configured to compute a confidence value between 0.0 and 1.0 that identifies a confidence level in the accuracy of the measurement for each data field in the location estimation set (e.g., a confidence value for each of the latitude, longitude and altitude data fields, etc.). For example, confidence values of 0.90, 0.95, and 0.91 may indicate that the x, y, and z coordinates are accurate within 30 meters between 90 and 95 percent of the time.
- In some embodiments, the mobile device may be configured to also compute a precision value that identifies, or which is indicative of, the repeatability factor of the computation/measurements over multiple measurements. The precision value may be used to determine how often the device reports the same position/location (i.e., based on evaluating multiple reports indicating that the device has not moved more than X meters, etc.), which may be used to determine the precision of the measurement (e.g., within 1 meter, etc.). The precision value may also be used to determine the likelihood that repeating the computation (e.g., using the same inputs or input sources) will result in substantially the same values.
- In some embodiments, the mobile device may be configured to perform normalization operations to normalize/synchronize the timing of the received location information (the “location information timing”). In some embodiments, this may be accomplished via a timing component or mechanism (a timer, system clock, processor cycles, etc.) in the mobile device. The mobile device may use a common time value (or common timer, reference clock, etc.) to synchronize and/or coordinate the information included in the received waypoints. The mobile device may generate normalized waypoints that include normalized values and/or which are normalized, synchronized and/or updated to account for various delays and inconsistencies, including the propagation delay between the mobile device and the corresponding external device, the time difference between when the waypoint was captured in external device and when the waypoint received in the mobile device, the relative movements of the devices, communication pathway time delays, delays associated with processing the requests, etc.
- In some embodiments, the mobile device may be configured to associate or assign a time value to each normalized waypoint (e.g., by storing the waypoint relative to the time value in a map or table, etc.), and determine whether each normalized waypoint is valid. For example, mobile device may determine whether the time value associated is within a valid duration or whether the waypoint includes sufficiently accurate information (e.g., by determining whether a precision or confidence value associated with the waypoint exceeds a threshold value, etc.). In response to determining that a waypoint is valid, the mobile device may determine or compute one or more rankings for that waypoint, and associate and/or assign the rankings to the waypoint (by storing it as a field. In some embodiments, the mobile device may determine and assign an overall rank and a device-specific rank to each valid waypoint, and store the waypoints in memory (e.g., in a location database, etc.).
- In some embodiments, the mobile device may be configured to determine the number of stored waypoints that are suitable for use in determining the device's current location. For example, the mobile device may determine whether the memory stores four or more valid waypoints, whether the stored waypoints are associated with sufficiently high rankings, whether the stored waypoints identify four or more independent locations, whether the stored waypoints identify the locations of four or more external devices relative to the current location of the mobile device with a sufficiently high level of accuracy, etc. In response to determining that there are four or more suitable waypoints stored in memory, the mobile device may intelligently select the four most suitable waypoints (e.g., waypoints having the highest overall rank and/or device-specific rank, etc.), apply the selected waypoints as inputs to a kalman filter, and use the output of the kalman filter to generate location information that identifies the mobile device's current location with a high level of accuracy (e.g., within one meter in all directions, etc.).
-
FIG. 22 illustrates anexample eLBS method 2200 that may be performed by a processor in a mobile or wireless computing device to better determine its location in accordance with an embodiment. Inblock 2202, the mobile device may turn on (i.e., power on, etc.) and acquire service from a wireless service provider (e.g., via operations performed by the mobile device processor, etc.). Inblock 2204, the processor/mobile device may obtain an initial positional fix, and use this information to generate a waypoint (e.g., a current location waypoint) or other location information unit. The mobile device may obtain the initial positional fix by using GPS, CellID, WiFi ID, enhanced LoranC, and/or other similar information that is received by, computed in, or available to the mobile device to perform any or all of the location determination techniques, methods, or operations discussed in this application. - In some embodiments, as part of the operations in
block 2204, the processor/mobile device may also obtain, determine, generate or compute a near term positional fix estimate (e.g., latitude and longitude values, etc.) from information received from small cells (e.g., femto cells, etc.) that are positioned in, or suitable for use in, interior locations, such as within buildings, at store entrances in malls, on light posts, in fixtures, etc. In some embodiments, the operations inblock 2204 may be accomplished by utilizing RFID chips, quick response (QR) codes, or other similar technologies. For example, an external device may include an RFID chip that transmits its location information to the mobile device. The mobile device may receive and use this information to generate a near term positional fix estimate value, use the near term positional fix estimate value to generate a new waypoint, and use this new waypoint to check or validate an existing waypoint (e.g., the current location waypoint, etc.). The mobile device may also be configured to use the near term positional fix estimate value to compute, replace and/or re-compute the current location waypoint. - In
determination block 2206, the mobile device may determine whether additional location information was received and/or whether the mobile device recently reported its location information (which is indicative of the device having acquired an adequate positional fix). In response to determining that additional location information was not received (i.e.,determination block 2206=“No”), inblock 2210 the mobile device may select the last known/trusted location from memory. In various embodiments, this may be accomplished by selecting the most recently computed, generated or stored waypoint (e.g., the previous “current location waypoint,” etc.), selecting the waypoint having the most recent timestamp, selecting the waypoint having the highest precision or confidence values, selecting the waypoint having the highest ranking, or any combination thereof. - In response to determining that additional location information was received (i.e.,
determination block 2206=“Yes”), inblock 2208, the mobile device may determine whether the received “additional location information” is more accurate (or has higher confidence and/or precision values) than the last known/trusted location stored in memory (or the current location waypoint discussed above), and select the more accurate location information for use in generating a final location waypoint. For example, the mobile device may generate a temporary waypoint based on the received “additional location information,” determine whether the temporary waypoint is more accurate than the current location waypoint, and select/set the more accurate of the two waypoints for use in determining the final location waypoint. - In
block 2211, the mobile device may use the selected waypoint (e.g., current location waypoint) to establish an LBS fix. Indetermination block 2212, the mobile device may determine whether the LBS fix is sufficient (e.g., sufficiently detailed, sufficiently accurate, etc.) for use in determining the final location waypoint. In response to determining that the LBS fix is sufficient (i.e.,determination block 2212=“Yes”), the mobile device may store the location information (e.g., the LBS fix, waypoint associated with the LBS fix, current location waypoint, etc.) in a location buffer inblock 2216, enter an eLBS network mode (or receive eLBS network data) inblock 2218, and receive LBS information from other devices inblock 2220. In response to determining that the LBS fix is not sufficient (i.e.,determination block 2212=“No”), inblock 2214, the mobile device may request, retrieve and/or receive sensor data, and use this information to perform sensor fusion operations. Inblock 2222, the mobile device may perform dead reckoning operations (e.g., based on the sensor data, results of the sensor fusion operations, etc.) to generate a DR waypoint (or DR data) that includes DR location values (X, Y, Z), a time value, DR location delta values (ΔX, ΔY, ΔZ), confidence values (CX,CY,CZ), and one or more precision values. - In blocks 2224, 2226 and 2228, the mobile device may perform trilateration operations (e.g., based on the received LBS information, DR data, etc.) to generate updated eLBS information. For example, in
blocks block 2216. - In some embodiments, the mobile device processor attempts to obtain its positional location in
block 2204, and based on the types of position/location information that is provided/received, determines a confidence level value for the received information. In some embodiments, the processor may be configured so that, if no responses are provided or received inblock 2204, the processor may use the last location of the mobile device to obtain/determine the initial positional fix. After the initial fix is obtained (regardless of its accuracy), the mobile device may determine whether additional improvements are available, possible, acquirable, and/or required. If improvements are required (or when a 911 call is placed), the mobile device may use the information collected from its various sensors to determine, compute and/or provide an estimate (e.g., a waypoint or estimate value) of the change in location/position of the device. In some embodiments, this may be achieved via the mobile device processor performing a combination of sensor fusion and dead reckoning operations (which are described in greater detail above). - As part of the dead reckoning operations (e.g., operations in
block 2222, etc.), the sensors/sensor information may be incremented and/or decremented based on any of a variety of weighting filters, including a kalman filter. A kalman filter may be a component in the mobile device that is configured to perform kalman operations on a plurality of input data streams to generate a single output in the form of a location, location information, coordinates, or a waypoint. - In some embodiments, the mobile device may be configured to update or adjust the intervals for the sensors based on each sensor's response characteristics. Adjusting the sensors may allow the mobile device to prevent sensor saturation, thereby improving the device's overall responsiveness. For example, accelerometer data may be updated at 100 Hz intervals, manometer data may be updated at 15 Hz intervals, and the difference in the updates intervals may be included (or otherwise accounted for) in the dead reckoning determinations made in the mobile device (e.g., when the mobile device generates a dead reckoning position estimate in
block 2222, etc.). - The trilateration component of the mobile device may be configured to perform various operations/calculations to determine or generate triangulation data (e.g., in
blocks 2224 and 2226) that identifies the location of the device with respect to other wireless devices, both fixed and mobile. For example, after the dead reckoning position is estimated (or after the DR data is generated inblock 2222, etc.), this information may be passed to the trilateration component (e.g., via memory write operations, wireless transceiver, etc.) that uses these inputs in conjunction with the information received from the wireless/external devices to compute the location of the device (e.g., inblocks 2224 and 2226). In some embodiments, sensor data associated with the dead reckoning estimate/value may include confidence intervals for the x, y, and z axis. These confidence values may identify an individual or overall confidence of the position/location information. - Generally, performing
eLBS method 2200 improves the performance of the mobile device by improving the location-based solutions described above (e.g., with reference toFIGS. 1-19 , etc.). For example,eLBS method 2200 may allow the mobile device to generate the “more precise location information,” updated eLBS position information, or a more accurate waypoint more efficiently than if the information is generated based solely on received location information. This method also allows the mobile device to generate more accurate location information with fewer iterations, thereby freeing up the devices resources and improving its performance characteristics. For all these reasons,method 2200 improves the overall functionality of the mobile device. - In addition,
eLBS method 2200 may allow the mobile device to intelligently determine whether or when to request additional location information to perform further location updates/improvements. For example, the mobile device may be configured to not request or initiate a positional improvement (i.e., not generate more precise location information) if/when the mobile device is stationary or when it determines that the device has moved less than one meter. This improves the power consumption characteristics of the device and helps preserve its battery life. Moreover, this allows the mobile device to request a position update (or generate more precise location information) immediately after a subscriber dials 911 or otherwise initiates an emergency call. This also allows the information to be sent/routed to the public service answering point (PSAP) faster, which in turn improves the responsiveness and overall functionality of the mobile device. - In some embodiments, the mobile computing device may be configured to request a position updates from other devices. The mobile device's initial position may be determined through the use of time of flight (TOF) via two message inquiries. The RSSI may be read as well, and using the TOF and RSSI, the mobile device may more accurately determine the distance between the mobile device and each of the other devices. The mobile device may then use this distance information to better determine its current location (via the performance of any or all the methods, operations, or techniques discussed in this application).
- Privacy (e.g., data privacy, etc.) is an important aspect of modern systems. The various techniques, solutions, methods, and operations discussed in the application allow for a subscriber to be identified quickly and effectively without requiring the use of that subscriber's IMSI (or other sensitive data) that could be misused by malware or a hacker. For example, rather than using the subscriber's IMSI, the system (e.g., mobile devices, sensors, etc.) could use a PN code to generate an independent device ID when the device turns on, and use this device ID for all subsequent communications. The device ID may change every time the wireless device is powered on. For these and other reasons, performing the above-described operations improves the device's overall functionality (e.g., by improving its privacy and security characteristics, etc.).
- Once the initial handshake has taken place the mobile may exchange its location information with another device. The mobile device may provide known points, which may be waypoints, RFID/QC points, WiFi AP points, or any information unit or structure that includes latitude and longitude values (or equivalents thereof). In some embodiments, the mobile device may be configured to receive and/or use four known points to generate more accurate or more precise location information.
-
FIG. 23 illustrates asystem 2300 for relaying information request messages and obtaining location information from other devices in accordance with an embodiment. The mobile device may then use the obtained location information to determine or compute the more precise location information (or an update final location value, etc.). In the example illustrated inFIG. 23 , thesystem 2300 includes amobile device 102, immediate neighbormobile devices 2302, and othermobile devices 2304. In some embodiments, one or more of the components in thesystem 2300 may be configured to track and report the number of hops in a path (e.g., communication pathway, wireless data path, etc.). This allows devices that are not initially connected to themobile device 102 in the network to more quickly and efficiently provide data back to themobile device 102. - In some embodiments, the
mobile device 102 may be configured to generate, send, receive and/or use a message/information structure 2306 that includesdistance information 2308 and/orlocation information 2310. Thedistance information 2308 may include time of flight (TOF) information, an originating device ID field/value, a responding device ID field/value, a priority field/value, a handle time field/value, an originating TAG field/value, RFID information, a latitude field/value, a longitude field/value, an altitude field/value, a bearing field/value, a speed field/value, a timestamp field/value, an accuracy field/value, a barometer field/value, a hop distance field/value, and a path field/value. Thelocation information 2310 may include an originating device ID field/value, a responding device ID field/value, an originating TAG field/value, a latitude field/value, a longitude field/value, an altitude field/value, a bearing field/value, a speed field/value, a time stamp field/value, an accuracy field/value, a barometer field/value, and a hop distance field/value, a path field/value. In some embodiments, thelocation information 2310 may also include one or more known points, including a latitude field/value, a longitude field/value, an altitude field/value, a distance field/value, a bearing field/value, a confidence field/value, and/or a device ID field/value. In some embodiments, one or more of the points/known points may be a waypoint that includes any or all of the information, fields, or values discussed above. In various embodiments, any or all of the data/values included in thedistance information 2308 and/orlocation information 2310 messages to determine or compute one or more waypoints (e.g., current location waypoint, final location waypoint, etc.). - In
operation block 2312, themobile device 102 may search for near field (NF) LANs and/or determine whether there are NF LANs available. Inoperation block 2314, themobile device 102 may determine that there are no NF LANs available. Inoperation block 2316,mobile device 102 may set up a mesh network in response to determining that there are no NF LANs available. Inoperation blocks mobile device 102 may perform various operations to establish an NF LAN, and take on the role of master. - In
operations 2322 through 2328, themobile device 102 may communicate with the immediate neighbormobile devices 2302 to determine the distance between themobile device 102 and its neighboring devices. Inoperations 2330 through 2338, themobile device 102 may communicate with the immediate neighbor mobile devices 2302 (which relay information to the other mobile devices 2304) to obtain location information. In particular, inoperation 2322, themobile device 102 may generate and send a distance request message to one or more of the immediate neighbormobile devices 2302. Inoperation 2324, themobile device 102 may receive a distance acknowledgment message from one or more of the immediate neighbormobile devices 2302. Inoperation 2326, themobile device 102 may send a second distance request message to the immediate neighbormobile devices 2302. Inoperation 2328, themobile device 102 may receive a second distance acknowledgment message from the immediate neighbormobile devices 2302. - In
operation 2330, themobile device 102 may send a location information request message to the immediate neighbormobile devices 2302. Inoperation 2332, one or more of the immediate neighbormobile devices 2302 may relay the location information request message to othermobile devices 2304. Inoperation 2334, themobile device 102 may receive a location information acknowledgment message from one or more of the immediate neighbormobile devices 2302. Inoperation 2336, the immediate neighbormobile devices 2302 may receive a “relay location information acknowledgment message” from one or more of the othermobile devices 2304, and send the relay location information acknowledgment message to the mobile device inoperation 2338. - In the example illustrated in
FIG. 23 , themobile device 102 operates as the master in the communication flow.FIG. 24 illustrates that themobile device 102 may also operate as a slave.FIG. 24 further illustrates that the eLBS for communication with othermobile devices 2304 may take on a “listen only” mode when an update is not needed or necessary (e.g., when it is determined to not to be required). In addition, during the active exchange with othermobile devices 2304 and immediate neighbormobile devices 2302, each device may provide any or all of the information illustrated inFIG. 24 . - With reference to
FIG. 24 , inoperation block 2312, themobile device 102 may search for NF LANs. Themobile device 102 may determine that an NF LAN is available inoperation block 2314, and join an NF LAN with one or more of theimmediate neighbor devices 2302 and one or more of theother devices 2304 inblocks mobile device 102 may communicate with theimmediate neighbor devices 2302 to determine or establish the distances to the mobile devices (e.g., via time, RSSI, etc.). Inoperations 2420 through 2426, themobile device 102 may communicate with theimmediate neighbor devices 2302 and the other mobile devices 2034 to determine, obtain, or provide location information. - Other methods for obtaining an initial fix may include communicating or interacting with ibeacon type devices and/or devices that emit sounds above the audible hearing range of humans. Additional devices that provide location information (e.g., Lat, Long and Altitude of a trusted or known location) to the
mobile device 102 may include devices that include or utilize RFID or QR Codes, examples of which are illustrated inFIG. 25 . -
FIG. 25 illustrates a system that includes amobile device 102 configured to utilize RFID or QR Codes in accordance with the various embodiments. In the example illustrated inFIG. 25 , an RFID/QR device 2501 provides location information to themobile device 102. The RFID/QR device 2501 may positioned, placed, or located in any of a variety of locations (e.g., entrances to malls or stores, on street lamp poles, etc.) and configured to send, transmit or broadcast its location to the mobile device 102 (e.g., periodically, in response to receiving a query message, based on the mobile device's location, etc.). Themobile device 102 may be configured to receive and use this information (e.g., as part of the eLBS operations) to determine its current and/or future-estimated location. - In some embodiments, the RFID/
QR device 2501 may be configured to send its location in response to receiving alocation query message 2503 from themobile device 102. Themobile device 102 may be configured to scan a QR Code to initiate the process of generating and sending alocation query message 2503 to the RFID/QR device 2501. Thelocation query message 2503 may include a Tag (e.g., RFID TAG) value/field, which may used as a message ID in some embodiments. Thelocation query message 2503 may also include a time value that may be used for calculating Time of Flight (TOF) and/or other similar information (e.g., for determining when the message began, etc.). - In response to receiving the
location query message 2503, the RFID/QR device 2501 may generate and send a transponded Tag message 2505 to themobile device 102. The transponded Tag message 2505 may include a time value, a time stamp, a device ID, and location information (e.g., lat, long, alt, etc.) that identifies the location of the QR/RFID device 2501. The device ID may be a name, a street address, store number, etc. Time value may include a delay value that is associated with the RFID/QR device 2501 or the distance between the RFID/QR device 2501 and themobile device 102. - Generally, four known points in space (e.g. four sets of coordinates) may be used to generate accurate three dimensional location/position information via trilateration. For example, the
mobile device 102 could be configured to use the known/relative locations of four different mobile devices to generate three dimensional location/position information. Yet, in a mobile environment, it is often difficult to identify, request and receive location information for four wireless devices that are within the same proximity (i.e., are sufficiently close to one another). Accordingly, the examples below (e.g., discussed with reference toFIGS. 26 through 29 ) illustrate various techniques that may be implemented and used by themobile device 102 to generate more accurate three dimensional location/position information with or without the availability of location information from four independent devices. -
FIG. 26 illustrates anexample system 2600 that includes twomobile devices FIG. 26 , the system includes a first mobile device 2601 (Mobile A or “A”) and a second mobile device 102 (Mobile B or “B”). The secondmobile device 102 may be a target wireless device that is configured to receive and use location information from the firstmobile device 2601 to perform eLBS operations (e.g., to generate accurate three dimensional location/position information, generate more precise location information, improve its positional fix, etc.). - The first
mobile device 2601 may be configured to determine/compute its location at various times (e.g., at t=t−1; t=0; t=t+1, etc.), and provide this location information (INFO A) to the secondmobile device 102. The secondmobile device 102 may determine its location at various times (e.g., at t=t−1; t=0; t=t+1, etc.) and generate location information (INFO B), use the received location information (INFO A) to determine, compute, or generate more precise location information (INFO B′). The more precise location information (INFO B′) may be a waypoint or another information structure that includes a latitude value, longitude value, altitude value, timestamp, confidence value, precision value, etc. The secondmobile device 102 may use the more precise location information (INFO B′) to provide its user with an enhanced location based service. - In some embodiments, the second
mobile device 102 may be further configured to send the generated more precise location information (INFO B′) to the firstmobile device 2601. The firstmobile device 2601 may be configured to receive and use this information (INFO B′) to compute different more precise location information (INFO A′), and send this information (INFO A′) back to the secondmobile device 102 for use in computing even more precise location information (INFO B″). These operations may be performed repeatedly or continuously by themobile devices - Generally, the accuracy of three dimensional location information improves significantly when the device has access to four data points (e.g., four known/relative locations, four sets of coordinate values, four points in space or space-time, etc.). A mobile device may be configured to generate one or more of such data points based on its location in time, including its past locations and/or estimated-future locations. As such,
mobile devices Mobile devices Mobile devices - In the example illustrated in
FIG. 26 , communications between themobile devices distance 2603 that the firstmobile device 2601 travels or moves between times t=t−1 and t=0. The vector “A L1” represents thedistance 2605 that the firstmobile device 2601 is likely to travel or move between times t=0 and t=t+ 1. Similarly, vectors “B L0” and “B L1” represent thedistances mobile device 102 travels or moves between times t=t−1 and t=0 and between times t=0 and t=t+1, respectively. - Vector AB (−1,0) represents sounding data (i.e., ranging) that is established between the mobile devices at time t=t−1. Vector AB (0,0) represents sounding data for time t=0. These two vectors may be adjusted based on dead reckoning information (or the information generated via the other techniques discussed in this application) and to account for the relative differences in values for either the first mobile device 2601 (A), the second mobile device 102 (B), or for both devices. In some embodiments, an additional vector may be generated for time t=t+1, which is represented as vector AB (1,0) in
FIG. 26 . This additional vector may be used as a replacement value and/or as a check value. - Due to the ranging information between A and B at both t=−1 and t=0, points B(t−1), B(t=0), A(t−1) and A(t=0) are known to the
mobile device 102 after the communication exchange at time t=0. In some embodiments, themobile device 102 may be configured to also compute, determine, and/or estimate point A(t+1) and point B(t+1). Based on the confidence values associated with these points, the mobile device may select four points for use in determining its three-dimensional location and/or performing location-based operations (e.g., eLBS operations, etc.). - There are a number of perturbations with the method discussed above, two of which are illustrated in Tables 1 and 2 below.
-
TABLE 1 Two device Pseudo Position Mobile Time (t) 1 B 0 2 A −1 3 A 0 4 A +1 -
TABLE 2 Two device Pseudo Position (example 2) Mobile Time (t) 1 B −1 2 B 0 3 A 0 4 A +1 -
FIG. 27 illustrates an example system in which twomobile devices mobile device 102 at t=+1 may use the current location and two previous locations of the firstmobile device 2701 to determine its current location/position. These locations may also be used as a check for dead reckoning and/or positional validation. - In some embodiments, the first mobile device 2701 (Mobile A) may be configured to estimate its future locations (at t=t+1, t=t+2), and send these estimates to the second mobile device 102 (Mobile B). In addition, the sounding data for AB at t=t−1 and AB at t=0 may provide two vectors that may be used to determine the locations of the
mobile devices mobile device 2701, secondmobile device 102, or both. A third vector may be calculated, determined or computed for AB at t=t+1, and used as a replacement and/or as a check value. In the illustrated example, the vector for AB at t=t−1 is AB (−1, 1), the vector for AB at t=0 is AB (0, 1), and the vector for AB at t=t+1 is AB (+1, 1). The second mobile device 102 (Mobile B) may be configured to intelligently select one or more of these vectors (for use in generating more precise three dimensional location information, etc.) based on a confidence interval associated with the initial calculation (which may be extrapolated). -
FIG. 28 illustrates an example system in which threemobile devices Mobile device 102 obtains information frommobile device 2801 andmobile device 2803. The possibility of having needed for positional location is closer without having to estimate two points. With three mobile devices, it is possible to extract this information by using a similar concept discussed above with reference toFIGS. 26 and 27 , with the exception that which positions at t=t−1, t=0, and t=t+1 and vectors AB (−1,1), AB (0,1), AB (1,1), CB (−1,2), CB (0,2) and CB (1,2) selected and used as part of the trilateration operations could be determined based on a confidence interval. -
FIG. 29 illustrates an example system in which fourmobile devices other mobiles FIGS. 26 and 27 , but use one or more data points that have lower confidence values (or approximate or less precise location information) than which would otherwise be optimal or desired. The positions as at t=t−1, t=0 and t=t+1 for the fourmobile devices BL 1, C L0, C L1, D L0 and D L1 or associated vectors AB (−1,1), AB (0,1) AB (1,1), CB (−1,1), CB (0,1), CB (1,1), DB (−1,1), DB (0,1), DB (1,1), any or all of which may be intelligently selected based on one or more confidence values. - Some embodiments may include mobile computing device(s) that are configured to perform enhanced location based trilateration operations. Trilateration for enhanced location based positions may require that a mobile device perform sensor fusion operations. As is discussed further below, when information from a multitude of devices is used to generate accurate three dimensional information the manner in which the sensor fusion operations are performed by a wireless/mobile device become even more important.
-
FIG. 30A illustrates various components, information flows, and operations in an examplemobile device system 3000 that is configured to perform enhanced location based service (eLBS) trilateration operations in accordance with an embodiment.FIG. 30B illustrates that, in another embodiment, themobile device system 3000 may be configured to perform single device eLBS trilateration operations that do not require receiving information from other devices in the communication group. In the examples illustrated inFIGS. 30A and 30B , thesystem 3000 includes alocation information component 3002, atrilateration component 3004, and an output/storage component 3006. - In
block 3012, a processor of the mobile device may receive information that is suitable for use as, may be used to generate, or which includes, location information, such as GPS data, a Cell ID, a WiFi ID, Beacon data, a RFID, Loran C data, OS Library Function, etc. or changes in any of the these values. In some embodiments, the mobile device may receive location information from active or passive external devices/systems. For example, the mobile device may communicate with an active external device, such as location based server from a fleet management company, to receive location information. As part of these operations, the mobile device may perform various operations (e.g., interrogation, etc.) to establish communication links and receive information from the active external devices. Alternatively or in addition, the mobile device may receive location information from a passive external device, such an RFID chip that scans for the presence of device and/or which broadcasts location information periodically. In addition, the mobile device may generate location information locally (in the device) based on information received from an external system inblock 3012. For example, the mobile device may generate GPS data (e.g., GPS coordinates or GPS determined position information) in a local GPS receiver based on GPS information received from an external GPS system. As another example, the mobile device may use received WiFi ID information to determine or compute its proximity to known networks, and generate location information based on the determined proximity to these known networks. - In
block 3014, the mobile device may generate and/or receive updated dead reckoning (DR) position information (or dead reckoning position estimate value). As mentioned above, the mobile device may be equipped with sensors (e.g., accelerometer, gyros, magnetic compass, altimeters, odometers, etc.) that allow it to estimate the distance it has traveled or moved over a period of time in any dimension (e.g., x, y or z; latitude, longitude or altitude; etc.). The mobile device may use information collected from these sensors inblock 3014 to perform any or all of the dead reckoning operations discussed in this application and generate DR position information. For example, the mobile device may use information from the sensors (e.g., accelerometer, gyros, magnetic compass, altimeters, odometers, etc.) to determine the distance it has traveled (or been moved) since the last time it was able to ascertain its location with a sufficiently high degree of confidence (e.g., Cx, Cy and Cz are all greater than 95, etc.), determine its current location based on the determined distance (e.g., distance it has traveled, etc.), and generate updated DR position information that identifies its current location. In some embodiments, the mobile device may also compute confidence values and/or a precision value for the generated DR position information inblock 3014. - In
block 3016, the mobile device may receive and process location based service information (LBS information) from other devices, such as from transceiver or other mobile devices in the communication group. Since the LBS information may be received from devices that are being moved and/or which are not stationary, the LBS information may include, or may be used to generate or establish, multiple waypoints at discrete times and/or for discrete durations or periods of time. In some embodiments, the LBS information may include estimated distances between multiple (e.g., three or more) devices/transceivers and the mobile device. Each waypoint may be an information structure that includes one or more information fields, component vectors, location information, position information, coordinate information, etc. - Thus, the
location information component 3002 of the mobile device may be configured to receive, process and/or generate standard location information (or a first data set, estimate value, etc.) inblock 3012, updated DR position information (or a second data set, estimate value, etc.) inblock 3014, and LBS information (a third data set, estimate value, etc.) inblock 3016. Inoperation 3040, thelocation information component 3002 may send any or all such information (e.g., first, second, and third values/sets) to thetrilateration component 3004 as input data. - In blocks 3018-3022, the mobile device/
trilateration component 3004 may use the received input data to perform trilateration operations (e.g., trilateration API location operations, etc.), determine the geographical coordinates (e.g., latitude, longitude, and altitude coordinates) of the mobile device, generate a trilateration position estimate value, generate a final position set (e.g., a final location estimate value), generate an updated final position set (e.g., x, y and z coordinates, an updated position estimate value, more precise information, etc.), and send the updated final position set to the output/storage component 3006. The trilateration operations may include operations for implementing any or all of the techniques discussed in this application, including time of arrival, angle of arrival, mobile-to-mobile trilateration, lateration, multilateration, triangulation, etc. - In the example illustrated in
FIG. 30A , inblock 3018, the mobile device generates/computes/receives trilateration location values (X, Y, Z), a time value, trilateration location delta values (ΔX, ΔY, ΔZ), confidence values (CX,CY,CZ), and one or more precision values, the combination of which may be stored or used as a waypoint (or a data set or estimate value). Inblock 3020, the mobile device may rank or assign weights to the current or historical waypoints (i.e., previously computed waypoints). Inblock 3022, the mobile device may generate two or three dimensional vectors using the waypoints (current and/or historic). In an embodiment, the mobile device may generate the vectors based on their rank/weights (e.g., by including/using only waypoints having a rank that exceeds a threshold value). - As mentioned above, the
trilateration component 3004 may send the computed updated final position set to the output/storage component 3006. The output/storage component 3006 may store the updated final position set in a location buffer or the illustrated updatedfinal position datastore 3024. Inblock 3026, the output/storage component 3006 may use the updated final position set (more precise location information) to provide a location based service. Inblock 3028, the output/storage component 3006 may send the updated final position set to other devices, such as to a network server or the other mobile devices in the communication group. - In order to accurately compute/determine the updated final position set, the
mobile device system 3000 may be required to communicate with other devices in a communication group (e.g., in block 3016). However, mobile devices do not always have access to a communication group (yet alone a sufficiently large communication group) and/or to the robust data that could be required to accurately determine the location of the device. As such, in the example illustrated inFIG. 30B , inblock 3044, the mobile device may receive LBS information from a server computing device (e.g., a network provided location service). Inoperation 3042, the mobile device may send the standard location information (or first data set, estimate value, etc.), updated DR position information (or second data set, estimate value, etc.), and the LBS information received from the server (or third data set, estimate value, etc.) to thetrilateration component 3004 as input data. Thetrilateration component 3004 may receive and use the input data to compute/generate a final position set and/or an updated final position set, and send the generated position set to the output/storage component 3006 for storage and/or use. -
FIG. 30C illustrates various additional components, information flows, and operations in an examplemobile device system 3000 configured to perform enhanced location based service (eLBS) trilateration operations in accordance with the various embodiments. Inblock 3052, the mobile device may use information received from active and/or passive external devices or systems to generate a first data set (e.g., x, y and z coordinates, first estimate value, etc.). Inblock 3054, the mobile device may use information collected from internal sensors and systems to perform dead reckoning operations and generate a second data set (e.g., x, y and z coordinates, second estimate value, etc.). Inblock 3056, the mobile device may receive location based service (LBS) information from a server (e.g., x, y and z coordinates, LBS estimate value, etc.). Inblock 3056, the mobile device may pass the received LBS information through a first kalman filter (Kalman Filter 1) to generate filtered LBS data (e.g., a filtered LBS estimate value, etc.). The kalman filter may be a procedure, algorithm, method, technique, or sequence of operations for accomplishing the function of a kalman filter. - In
block 3060, the mobile device may perform trilateration operations (e.g., trilateration API location operations, etc.), determine the geographical coordinates of the mobile device, and generate a third data set (e.g., x, y and z coordinates, third estimate value, etc.) based on the determined geographical coordinates. Inblock 3062, the mobile device may pass the first, second, and third data sets (or estimate values, etc.) through a second kalman filter (Kalman Filter 2) to generate a position set (e.g., final position set, final location estimate value, updated final location estimate value, etc.). Inblock 3064, the mobile device may use the position set to determine/compute the current location of the device. As part of these operations, the mobile device may generate a waypoint information structure (or estimate value) that includes trilateration location values (X, Y, Z), a time value, trilateration location delta values (ΔX, ΔY, ΔZ), confidence values (CX,CY,CZ), and one or more precision values, and use the generated way point to set the current location of the device. In an embodiment, the mobile device may be configured to store the waypoint in a list (or other information structure) in conjunction with a timestamp. -
FIG. 30C illustrates three types of position calculations that are fused creating one position that is reported for the device. - The eLBS Trilaterion process at a high level is illustrated in
FIG. 30C . Not only is a kalman filter approach used for the trilateration process involving external devices which the anchor mobile device (AD) determines its position from, but the external trilateration position is fed into another kalman filter process which also uses as inputs the internal position tracking via dead reckoning, and the available external stationary devices and systems, and external mobile device and systems, collectively abbreviated to as external devices (ED), which are reporting what the current devices location is. - Several decisions are made regarding the measurements received as well as the need to obtain previous waypoints based on the amount of devices reporting to the anchor mobile device. A waypoint is location information that has been determined to be valid location information and has a confidence value associated with it. Waypoints generally have an overall rank and a device specific rank also associated with them. Waypoints can be based on location information based on dead reckoning location information, external trilateration location information, or location information received from external devices.
-
FIG. 31 illustrates communication and information flows in a system configured to determine the range between twodevices FIG. 31 are an anchor mobile device (AD) 3103 and an external device (ED) 3101. These devices may obtain a pseudo synchronization of measurements, taking account communication pathway time delays and the delay associated with processing a request. - Specifically in the illustrated example of
FIG. 31 ,AD 3103 sends alocation query request 3107 for position updates to ED(x) 3101. ED(x) 3101 andAD 3103 do not share a common clock. Thelocation query request 3107 may include any or all of information discussed above with reference toFIG. 25 , such as the time when the query was sent, etc. ED(x) 3101 may send alocation query response 3109 that includes information identifying the time difference between when ED(x) 3101 received thelocation query request 3107 and when ED(x) 3101 transmitted thelocation query response 3109. - The
location query response 3109 may include the time at which thelocation query request 3107 was received, the time when thelocation query response 3109 was sent, or both. Thelocation query response 3109 may also include a delay value that identifies when ED(x) received thelocation query request 3107 to when ED(x) sent thelocation query response 3109. It may also include location information and/or any other information requested via thelocation query request 3107. Similarly,AD 3103 may record the time that it sent thelocation query request 3107, record the time it received thelocation query response 3109 from ED(x) 3101, and use this information to determine a total time delay. Knowing the delay in processing the request and communication pathways allows for synchronizing the timing for the location information provided and the clock of theAD 3103. -
FIGS. 32 and 33 illustrate methods for receiving and using in an anchor mobile device (AD) an external device's (ED's) position information to prove an enhanced location based service. The AD may be configured to determine the ED's relative position (e.g., relative to itself) and compare the determined relative position to a range value provided by the ED. The range value may be value that is calculated in the ED, and which identifies a distance between the ED and the AD. For ease of legibility, the method illustrated inFIG. 32 represents an example for receiving data from a single mobile device. It should be understood that, in other embodiments, the same or similar operations may be performed based on information received from multiple mobile devices. - At
block 3201, an AD may receive location information (e.g., LBS information, etc.) from ED(1). The location information may include a latitude value, a longitude value, an altitude value, range information, and a time value. In an embodiment, the location information may be a waypoint. Inblock 3203, the AD may normalize the location information timing to a time (e.g., t=0). Said another way, the AD may normalize its measured location and/or received location information to a common time (e.g., based on the processors cycle) so that the ad-hoc positions reported by all the EDs and other sensors are normalized (or synchronized) to a unified time. In some embodiments, inblock 3203, the AD may perform a pseudo synchronization method, which is discussed in detail further below. In some embodiments, after normalizing/synchronizing the location information timing, the AD may determine and assign a confidence value to each unit of location information (e.g., each waypoint, etc.) provided by each ED. - In
determination block 3205, the AD may determine whether the received location information is valid. Validity may be determined on a variance between expected and actual relative positions. For example, the AD may be configured to compute or determine an expected position (or expected relative position) based on previous trilateration results, previous dead reckoning results, or data received from other external sensors or devices. In some embodiments, the location may calculated based on the location information provided to the AD by the ED. - In response to determining that location information is not valid, (i.e.,
determination block 3205=“No”), the AD may discard the measurement inblock 3209. If a location value is determined to not be valid and/or has a confidence that is too low (i.e., does not exceed a threshold value), it can be temporarily stored and marked to be discarded. If the AD receives location information from several EDs having low confidence values associated with the location information which were initially determined not to be valid, but the EDs reported location information have high precision, the AD may take those low confidence measurements as being valid. In this case the measurements have the marker for discarding removed and are stored for use inblock 3207. In response to determining that a location information is valid, (i.e.,determination block 3205=“Yes”) the AD may use the information inblock 3207. - In particular, in
block 3207, the AD may calculate a rank for location information provided by ED(1) with respect to AD based on the range calculation and confidence value of the location information provided by ED(1). Indetermination block 3211, the AD may determine whether the location information provided by ED(1) has a sufficiently high confidence value. In response to determining that the location information provided by ED(1) does not have a sufficiently high confidence value (i.e.,determination block 3211=“No”), the AD may mark the location information provided by ED(1) to be discarded inblock 3209. This is similar to the AD making a determination that the information is not valid, but the location information has a confidence value, and range value/calculation associated with it. In response to determining that a location information has a sufficiently high confidence value, the AD, inblock 3213, may stores the location information as a waypoint (e.g., as a current location waypoint) for ED(1) in its location database. -
FIG. 33 illustratesprocess 3300, which is an expanded and continuation ofprocess 3200 forFIG. 32 . Indetermination block 3301, the AD may determine whether the ED previously reported a location (or sent a valid waypoint, etc.). In response to determining the ED did not previously report a location, (i.e.,determination block 3301=“No”), indetermination block 3311, the AD may determine whether the AD moved (or changed its reported location) by more than a distance or a percentage value in any axis or direction. - In response to determining that the AD did change its position by a set percentage in any axis (i.e.,
determination block 3311=“Yes”), inblock 3313, the AD may select and use the highest ranked waypoint, which may be a previously computed and stored waypoint for AD (e.g., for t=t−1 or t=t−2 etc.) with its range corrected to the t=0 for the current position of AD. Inblock 3325, the AD may insert the waypoint into a sorted list of coordinates X, Y, and Z and bearing components reported from ED1 for t=0, t=t−1, or possibly t=t−2 accordingly. - In response to determining that the AD did not move (or change its reported location) by more than the distance or percentage value in any axis or direction (i.e.,
determination block 3311=“No”), the AD may determine it is stationary (and mark itself as such) inblock 3305. - In response to determining that the ED did report a location (i.e.,
determination block 3301=“Yes”) or in response to determining that the AD is stationary inblock 3305, the AD may determine whether four or more EDs are currently reporting location information (or whether waypoints where received from four or more devices) indetermination block 3303. In response to determining that four or more EDs are reporting location information (i.e.,determination block 3303=“Yes”), the AD may determine whether a rank value associated with reported location information (or reported waypoint) exceeds (e.g., is greater than, etc.) the ranks of the other stored or received location information (or received waypoints) indetermination block 3307. - In response to determining that the rank of the reported waypoint exceeds the ranks of the other stored or received waypoints (i.e.,
determination block 3307=“Yes”), inblock 3309 the AD may store the location information (or received waypoint) in memory and/or mark the information as being suitable for use as the current location waypoint or location information for t=0. On the other hand, in response to determining that the rank of the reported waypoint does not exceed the ranks of the other stored or received waypoints (i.e.,determination block 3307=“No”), the AD may select and use the highest ranking waypoint/location information inblock 3313. - In response to determining that four or more EDs are not reporting location information (i.e.,
determination block 3303=“No”), indetermination block 3315 the AD may determine whether three EDs are currently reporting location information. In response to determining that three EDs are reporting location information (i.e.,determination block 3315=“Yes”), inblock 3317 the AD may retrieve the highest ranking location information or the highest ranked stored waypoint from memory. The highest ranked stored waypoint may be a previously reported waypoint (received from any of the reporting EDs) that has the highest rank. The retrieved waypoint may added to the existing three reported waypoints (i.e., the waypoints received from each of the three reporting EDs) to obtain a total of four waypoints. The waypoints may time normalized to t=0 and range corrected for t=0, and inblock 3325, the AD may insert the waypoints into a sorted list of coordinates X, Y, and Z and bearing components reported from ED1 for t=0, t=t−1, or possibly t=t−2 accordingly. - In response to determining that three EDs are not reporting location information (i.e.,
determination block 3315=“No”), indetermination block 3319 the AD may determine whether two EDs are currently reporting location information. In response to determining that two EDs are reporting location information (i.e.,determination block 3319=“Yes”), inblock 3321 the AD may retrieve two previously reported highest ranked waypoints (received from any of the reporting EDs). The AD may add the retrieved waypoints to the existing two reported waypoints to obtain a total of four way points. The previously reported waypoints may be time normalized to t=0 and range corrected for t=0. Inblock 3325, the AD may insert the waypoints into a sorted list of coordinates X, Y, and Z and bearing components reported from ED1 for t=0, t=t−1, or possibly t=t−2 accordingly. - In response to determining that two EDs are not reporting location information (i.e.,
determination block 3319=“No”), inblock 3323 the AD may retrieve three of the highest ranked previously reported waypoints stored in memory to obtain a total of four waypoints. The previously reported waypoints may be time normalized to t=0 and range corrected for t=0. Inblock 3325, the AD may insert the waypoints into a sorted list of coordinates X, Y, and Z and bearing components reported from ED1 for t=0, t=t−1, or possibly t=t−2 accordingly. -
Block 3325 uses the waypoints in the sorted list as input for trilateration and continues toFIGS. 34 and 35 , which illustrate processes for determining the position location accuracy using the trilateration methods for multiple devices reporting locations. The output of the AD's trilateration for each EDs, the reported positions, may be ranked with respect to each other based on accuracy and confidence. Using these values, possibly discarding or ignoring those values which are considered inferior or invalid, provides for achieving highest position location accuracy to be achieved. The output of the eLBS trilateration operations may be a position/location (or waypoint) that is used by a device to report its current position (or for other functions, such as to provide an enhanced location based service). - In particular,
FIG. 34 illustrates the output ofFIG. 33 may be used (for each reporting ED) as trilateration input.Block 3401 illustrates the trilateration input for a first ED, ED(1), which isprocess 3300 for ED(1).Block 3402 illustrates the trilateration input for a second ED, ED(2) which isprocess 3300 for ED(2). 3420 illustrates one or more EDs providing trilateration input.Block 3430 illustrates the trilateration input for an Nth ED, ED(N) which isprocess 3300 for ED(N). All of the trilateration input may combined inblock 3410 as reporting EDs waypoints. All of the separate ED's waypoints may be normalized to a time, t=0. - In
determination block 3501, the AD may determine whether four or more EDs are reporting location information. In response to determining four or more EDs are reporting location information (i.e.,determination block 3501=“Yes”), inblock 3502, the AD may select the highest ranked waypoint reported for each ED. The AD may provide the selected waypoints as inputs to a kalman filter inblock 3510. - In response to determining fewer than four EDs are reporting location information (i.e.,
determination block 3501=“No”), indetermination block 3503, the AD may determine whether three EDs are reporting location information. In response to determining three EDs are reporting location information (i.e.,determination block 3503=“Yes”), inblock 3504, the AD may use the reported waypoints from all three EDs and selects the highest ranked previously reported waypoint for t=t−1 and/or t=t−2 for any ED in the database (and in so doing obtains a total of four waypoints). The AD may then provide the four waypoints to a kalman filter inblock 3510. - In response to determining that fewer than three EDs are reporting location information (i.e.,
determination block 3503=“No”), indetermination block 3505 the AD may determine whether two EDs are reporting location information. In response to determining two EDs are reporting location information (i.e.,determination block 3505=“Yes”), inblock 3506 the AD may use the reported waypoints for both EDs and select the two highest ranked previously reported waypoints for t=t−1 and/or t=t−2 (for any reporting ED in the database) to obtain a total of four waypoints. The AD may provide these four waypoints to the kalman filter inblock 3510. - In response to determining that fewer than two EDs are reporting location information (i.e.,
determination block 3505=“No”), indetermination block 3507 the AD may determine whether one ED is reporting location information. In response to determining that one ED is reporting location information (i.e.,determination block 3507=“Yes”), inblock 3508 the AD may use the reported waypoint and the three highest ranked previously reported waypoints for t=t−1 and/or t=t−2 for the any EDs in the database to obtain a total of four waypoints. The AD may provide these four waypoints to the kalman filter inblock 3510. - In response to determining no EDs are reporting location information, (i.e.,
determination block 3505=“No”), inblock 3509 the AD may retrieve the four highest ranked waypoints, and provides these four waypoints to a kalman filter inblock 3510. - The kalman filter in
block 3510 may be used to generate an external trilateration determinedposition 3511 for time period 0 (t=0). This value may be fed as input to thefusion trilaterion process 3512 to generate filtered LBS data (e.g., a filtered LBS estimate value, etc.). Thekalman filter 3510 may be a procedure, algorithm, method, technique, or sequence of operations for accomplishing the function of a kalman filter. - All the reporting EDs may be compared to each other, ranked prior to being sent to a kalman filter with the appropriate matrix and weighting factors.
- The trilateration operations discussed above with reference to
FIGS. 32-35 may be performed/conducted for various sources. The fusion trilateration operations discussed above enable the device to generate more robust position/location information having high confidence values (e.g., for accuracy, precision, etc.). -
FIG. 36 illustrates amethod 3600 of performing fusion trilateration operations using information from external and internal sources. Inblock 3601, an anchor mobile device (AD) may receive information from external sources, including include GPS data, Cell ID, WiFiID, Beacon/RFID and other data from external position sources. Inblock 3602, the AD may determine whether a waypoint or location information has been reported by a specific device having a source type. In response to determining that at least one waypoint or location information has been reported (i.e.,determination block 3603=“Yes”), inblock 3604 the AD may select the received information (for t=0). In response to determining that a waypoint or location information has not been reported (i.e.,determination block 3603=“No”), inblock 3605 the AD may retrieve and use previous reported locations from memory (similar to the operations discussed above with reference to block 3313). If more than the required number of waypoints have been reported (and stored in memory), the AD may select and use the waypoints/location information with the highest ranks inblock 3606 as the location information. Alternatively, the if no valid previous locations have been reported, the AD could elect to not use data from that device, but rather use dead reckoning position information and/or external trilateration positioning information to select location information inblock 3606. - If the ED is reporting valid location information to AD, it is ranked according to previously received location information for that device. If no previous location information has been received, the most current valid location information being received is used. If the current reported location information is ranked highest, it is used as the location information and stored in the location information database. If previous location information has been received and the ranking of the current received location information is lower than the previous information, the highest ranked previously reported location information is used
- Having received the location reporting devices from external devices, if any external trilateration position information is received, all location information is synchronized for time values in
block 3607, by any means discussed above or below, with the dead reckoning data from the AD. If inblock 3608, only one valid position is available, that location information is stored by the AD as the location for the AD. If more than one valid position is reported, these are ranked from best to worse as described previously regarding confidence values, and the four highest positions are used for input into a kalman filter. The output from the kalman filter is stored as the AD's location. If more than one, but less than four locations are reported (e.g., similar to discussed above with reference toFIG. 35 , blocks 3503 and 3504, 3505 and 3506, 3507 and 3508 as appropriate), for determining the remaining positions to obtain a total of four positions inblock 3609 and inputting these into the kalman filter inblock 3610 and storing the best location (output of the kalman filter) inblock 3611. - In
determination block 3612, the AD may determine whether the new location of AD changed (relative to its previously computed location) more than a given distance or percentage value in any axis, or greater than a location information value. In response to determining that the new location of AD changed (relative to its previously computed location) more than a given distance or percentage value in any axis (i.e.,determination block 3612=“Yes”), the trilateration process may be continued or repeated in block 2614 to obtain a more precise location information. If there is no change or the change is less than a certain percentage (i.e.,determination block 3612=“No”), the AD may wait for a set amount of time (T) to obtain any changes in location inblock 3613. The procedure can also mark the AD as stationary and wait until a change is reported by any reporting device, external trilateration information, or internal sensors or components that can be used for dead reckoning. - As part of the process involving external device trilateration, the use of previous positions can be used to achieve the necessary set of points from which a three dimension position can be calculated.
-
FIG. 37 illustrates a high level diagram showing only two devices for ease of reading however the concept can easily be extrapolated to having multiple devices. InFIG. 37 , the position of ED(x) 3701 at t=0, ED(x)(t0) 3701 is reported to AD (mobile device 102). At t=0, AD's position is AD(t0). The range or distance between the two devices is also determined using both a sounding method as well as RSSI. The range can also be used to determine the confidence of the position reported which will be in addition to the confidence the ED(x) 3701 is reporting about its own location. The vector between the two units is 1X (0,0). Moving backward to t=t−1, the previous locations were ED(x)(t−1) 3701 and AD(t−1). The locations moved by ED(x) 3701 isL -
FIG. 38 illustrates amethod 3800 for determining a location of a mobile device via enhanced location based trilateration.Method 3800 may include receiving, via a processor of the mobile device, location information from one or more external devices. The received location information may include a waypoint from each of the one or more external devices. - In
optional block 3802, a processor in a mobile device may request location information from internal and external devices, which may be accomplished by generating and sending a location request message to the internal/external devices. In some embodiments, the location request message may request location information that includes coordinate values (e.g., lat and long, etc.), an altitude value, and/or a range value. The range value may include information that identifies the distance between the mobile device and an external device (e.g., an external device that sends the location information in response to receiving the location request message, etc.). In listen only mode, or with regard to beaconing devices, the mobile device may skip the operations inblock 3802 as these may not be necessary to receive the location information. - In
block 3804, the processor may receive location information from one or more external devices. The received location information may include a waypoint or another unit of information (location information unit) from each of a plurality of devices (e.g., the internal and/or external devices). Each waypoint may include a coordinate value (e.g., a latitude value, an longitude, etc.), an altitude value and a range value. The range value may identify a distance from a external device to the mobile device. In some embodiments, if as part of the operations inblock 3804, no location information is received during a first period of time (e.g., within a predetermined time period, etc.) or before a timer expires, the mobile device may initiate or reinitiate the trilateration operations by requesting location information from the same or different external devices inoptional block 3802 and/or by resetting the timer and waiting for another set period of time for a response or location information. - In
block 3806, the processor may determine the validity of each of the received waypoints and/or perform normalization operations to normalize the received valid waypoints (or normalize the received location information timing). Also inblock 3806, the processor may obtain or assign a time value to each unit of received information (i.e., to the location information received from each external device, to each waypoint, etc.), which may accomplished via, or as part of, the processor performing any or all of the normalization or synchronization operations discussed in this application. - In
block 3808, the processor may determine, compute, or update a range value for each external device that is reporting location information (e.g., for each external device from which location information was received, for each waypoint, etc.). For example, inblock 3808, the processor may determine or compute a first range value for a first external device based on the waypoint from the first external device, determine or compute a second range value for a second external device based on a second waypoint provided by the second external device, etc. In an embodiment, the processor may also associate the range value with the waypoint that is used to determine that range value, and store the range value in relation to waypoint in memory and/or as a data field value in the waypoint. - In
block 3810, the processor may determine, compute, or calculate a confidence value for each location information unit (or waypoint) that is received. In some embodiments, the processor may also associate the confidence value with the location information unit (or waypoint) for which the confidence value was calculated, and determining the validity of each of the one or more location information inblock 3812. Inblock 3812, the processor may assign an overall rank and/or a device specific rank to each of the normalized waypoints (e.g., each location information unit or waypoint received from an external device, etc.). Inblock 3814, the processor may determine the validity of each of the received waypoints. Inblock 3816, the processor may store valid location information in location information database (e.g., as one or more waypoints, a current location waypoint, etc.). - As mentioned above, for valid location information (e.g., waypoints determined to be valid), the processor may assign an overall ranking and a device specific ranking. The overall ranking may be a ranking of the valid location information (e.g., valid waypoint, etc.) for the location information being reported by the external device (e.g., the location information included in the waypoint, etc.) based on a combination of dead reckoning location information (e.g., DR data, etc.), all valid and invalid location information (e.g., all location information received for that general location or device, etc.), to include external trilateration location information, being reported by external devices and stored information/waypoints in the location database for the external devices reporting valid and invalid location information The device specific ranking may be a ranking of location information received by a mobile device for one type of location information from the external device reporting the type of location information and the ranking being based on a calculated range and an associated confidence value with the location information, to the valid location information, and storing the location information and associated data in the location database as a waypoint.
- In
block 3818, the processor may determine whether the location database contains at least four valid waypoints (or four valid location information units identifying four locations, etc.). In an embodiment, if fewer than four waypoints are stored in the location database, the mobile device may repeat the location determination operations discussed above until it determines that the location database stores at least four valid waypoints. In response to determining that there are fewer than four valid way points (i.e.,determination block 3818 “No”), inblock 3802, the processor may initiate another request for location information from internal and external devices. - If there are four waypoints in the location database (i.e.,
determination block 3818 “Yes”), inblock 3820 the processor may select four of the highest ranked waypoints from memory based on a combination of the overall ranking, device-specific ranking, confidence value, precision value, range value, etc. associated with each waypoint (e.g., the four highest overall ranked waypoints) and apply the selected waypoints to a kalman filter to generate output in the form of updated location information (or more precise location information). In an embodiment, the processor may store the output of the kalman filter as the currently location of the mobile device. Inblock 3822, the processor may assign a confidence value (and/or ranking or precision values) to the output of kalman filter. Inblock 3824, the processor may report output location from kalman filter as the location of the mobile device. - The foregoing method descriptions and the process flow diagrams are provided merely as illustrative examples and are not intended to require or imply that the blocks of the various embodiments must be performed in the order presented. As will be appreciated by one of skill in the art the order of blocks in the foregoing embodiments may be performed in any order. Words such as “thereafter,” “then,” “next,” etc. are not intended to limit the order of the blocks; these words are simply used to guide the reader through the description of the methods. Further, any reference to claim elements in the singular, for example, using the articles “a,” “an” or “the” is not to be construed as limiting the element to the singular.
- The various illustrative logical blocks, components, circuits, and algorithm blocks described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, components, circuits, and blocks have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
- The hardware used to implement the various illustrative logics, logical blocks, components, and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but, in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. Alternatively, some blocks or methods may be performed by circuitry that is specific to a given function.
- In one or more exemplary aspects, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored as one or more instructions or code on a non-transitory computer-readable medium or non-transitory processor-readable medium. The steps of a method or algorithm disclosed herein may be embodied in a processor-executable software component which may reside on a non-transitory computer-readable or processor-readable storage medium. Non-transitory computer-readable or processor-readable storage media may be any storage media that may be accessed by a computer or a processor. By way of example but not limitation, such non-transitory computer-readable or processor-readable media may include RAM, ROM, EEPROM, FLASH memory, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that may be used to store desired program code in the form of instructions or data structures and that may 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 are also included within the scope of non-transitory computer-readable and processor-readable media. Additionally, the operations of a method or algorithm may reside as one or any combination or set of codes and/or instructions on a non-transitory processor-readable medium and/or computer-readable medium, which may be incorporated into a computer program product.
- The preceding description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the following claims and the principles and novel features disclosed herein.
Claims (22)
1-21. (canceled)
22. A method of determining a location of a mobile device via enhanced location based trilateration, the method comprising:
receiving, via a processor of the mobile device, location information;
obtaining dead reckoning (DR) position information;
receiving, via a processor of the mobile device, location based service (LBS) information;
performing trilateration based on the received location information, the obtained DR position information, and the received LBS information;
storing an updated final position set in memory; and
using the updated final position set to provide an enhanced location.
23. The method of claim 22 , wherein receiving location information comprises receiving location information broadcasted by a passive external device.
24. The method of claim 22 , wherein receiving location information comprises receiving global positioning system (GPS) data from a GPS receiver of the mobile device.
25. The method of claim 22 , wherein obtaining DR position information comprises:
receiving sensor data from one or more sensors of the mobile device;
determining a distance traveled by the mobile device since last obtaining DR position information;
determining a current location of the mobile device based on the determined distance traveled by the mobile device; and
generating updated DR position information identifying a current location of the mobile device.
26. The method of claim 25 , wherein the one or more sensors include one or more of:
an accelerometer;
a gyro;
a magnetic compass;
an altimeter; and
an odometer.
27. The method of claim 22 , wherein receiving LBS information comprises receiving LBS information from a server computing device.
28. The method of claim 22 , wherein receiving LBS information comprises receiving LBS information from one or more other devices within a communication group.
29. A mobile device, comprising:
a processor configured with processor-executable instructions to perform operations comprising:
receiving location information;
obtaining dead reckoning (DR) position information;
receiving location based service (LBS) information;
performing trilateration based on the received location information, the obtained DR position information, and the received LBS information;
storing an updated final position set in memory; and
using the updated final position set to provide an enhanced location.
30. The mobile device of claim 29 , wherein the processor is configured with processor-executable instructions to perform operations such that receiving location information comprises receiving location information broadcasted by a passive external device.
31. The mobile device of claim 29 , wherein the processor is configured with processor-executable instructions to perform operations such that receiving location information comprises receiving global positioning system (GPS) data from a GPS receiver of the mobile device.
32. The mobile device of claim 29 , wherein the processor is configured with processor-executable instructions to perform operations such that obtaining DR position information comprises:
receiving sensor data from one or more sensors of the mobile device;
determining a distance traveled by the mobile device since last obtaining DR position information;
determining a current location of the mobile device based on the determined distance traveled by the mobile device; and
generating updated DR position information identifying a current location of the mobile device.
33. The mobile device of claim 30 , wherein the processor is configured with processor-executable instructions to perform operations such that the one or more sensors include one or more of:
an accelerometer;
a gyro;
a magnetic compass;
an altimeter; and
an odometer.
34. The mobile device of claim 29 , wherein the processor is configured with processor-executable instructions to perform operations such that receiving LBS information comprises receiving LBS information from a server computing device.
35. The mobile device of claim 29 , wherein the processor is configured with processor-executable instructions to perform operations such that receiving LBS information comprises receiving LBS information from one or more other devices within a communication group.
36. A non-transitory computer readable storage medium having stored thereon processor-executable software instructions configured to cause a processor in a mobile device to perform operations comprising:
receiving location information;
obtaining dead reckoning (DR) position information;
receiving location based service (LBS) information;
performing trilateration based on the received location information, the obtained DR position information, and the received LBS information;
storing an updated final position set in memory; and
using the updated final position set to provide an enhanced location.
37. The non-transitory computer readable storage medium of claim 36 , wherein the stored processor-executable software instructions are configured to cause a processor to perform operations such that receiving location information comprises receiving location information broadcasted by a passive external device.
38. The non-transitory computer readable storage medium of claim 36 , wherein the stored processor-executable software instructions are configured to cause a processor to perform operations such that receiving location information comprises receiving global positioning system (GPS) data from a GPS receiver of the mobile device.
39. The non-transitory computer readable storage medium of claim 36 , wherein the stored processor-executable software instructions are configured to cause a processor to perform operations such that obtaining DR position information comprises:
receiving sensor data from one or more sensors of the mobile device;
determining a distance traveled by the mobile device since last obtaining DR position information;
determining a current location of the mobile device based on the determined distance traveled by the mobile device; and
generating updated DR position information identifying a current location of the mobile device.
40. The non-transitory computer readable storage medium of claim 39 , wherein the stored processor-executable software instructions are configured to cause a processor to perform operations such that the one or more sensors include one or more of:
an accelerometer;
a gyro;
a magnetic compass;
an altimeter; and
an odometer.
41. The non-transitory computer readable storage medium of claim 36 , wherein the stored processor-executable software instructions are configured to cause a processor to perform operations such that receiving LBS information comprises receiving LBS information from a server computing device.
42. The non-transitory computer readable storage medium of claim 36 , wherein the stored processor-executable software instructions are configured to cause a processor to perform operations such that receiving LBS information comprises receiving LBS information from one or more other devices within a communication group.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/630,589 US20170295461A1 (en) | 2011-08-18 | 2017-06-22 | Method and System for Providing Enhanced Location Based Trilateration |
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161575300P | 2011-08-18 | 2011-08-18 | |
US201161573636P | 2011-09-09 | 2011-09-09 | |
US13/585,125 US8787944B2 (en) | 2011-08-18 | 2012-08-14 | Method and system for providing enhanced location based information for wireless handsets |
US14/293,056 US9232354B2 (en) | 2011-08-18 | 2014-06-02 | Method and system for providing enhanced location based information for wireless handsets |
US201562102853P | 2015-01-13 | 2015-01-13 | |
US14/823,244 US9332386B2 (en) | 2011-08-18 | 2015-08-11 | Method and system for providing enhanced location based information for wireless handsets |
US14/950,595 US9344848B2 (en) | 2011-08-18 | 2015-11-24 | Method and system for providing enhanced location based information for wireless handsets |
US14/993,618 US9485623B2 (en) | 2011-08-18 | 2016-01-12 | Method and system for providing enhanced location based trilateration |
US15/284,806 US9723453B2 (en) | 2011-08-18 | 2016-10-04 | Method and system for providing enhanced location based trilateration |
US15/630,589 US20170295461A1 (en) | 2011-08-18 | 2017-06-22 | Method and System for Providing Enhanced Location Based Trilateration |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/284,806 Continuation US9723453B2 (en) | 2011-08-18 | 2016-10-04 | Method and system for providing enhanced location based trilateration |
Publications (1)
Publication Number | Publication Date |
---|---|
US20170295461A1 true US20170295461A1 (en) | 2017-10-12 |
Family
ID=55854242
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/993,618 Active US9485623B2 (en) | 2011-08-18 | 2016-01-12 | Method and system for providing enhanced location based trilateration |
US15/284,806 Active US9723453B2 (en) | 2011-08-18 | 2016-10-04 | Method and system for providing enhanced location based trilateration |
US15/630,589 Abandoned US20170295461A1 (en) | 2011-08-18 | 2017-06-22 | Method and System for Providing Enhanced Location Based Trilateration |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/993,618 Active US9485623B2 (en) | 2011-08-18 | 2016-01-12 | Method and system for providing enhanced location based trilateration |
US15/284,806 Active US9723453B2 (en) | 2011-08-18 | 2016-10-04 | Method and system for providing enhanced location based trilateration |
Country Status (1)
Country | Link |
---|---|
US (3) | US9485623B2 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170359795A1 (en) * | 2014-12-15 | 2017-12-14 | Zte Corporation | Method and System for Realizing Wireless Positioning, and Device for Calculating Positioning Location |
US9877298B1 (en) * | 2016-03-22 | 2018-01-23 | Massachusetts Mutual Life Insurance Company | Beacon-based location introduction system |
US20180077533A1 (en) * | 2015-03-17 | 2018-03-15 | Philips Lighting Holding B.V. | Localization based on motion detection of the mobile device |
US10264509B2 (en) * | 2016-09-29 | 2019-04-16 | Hughes Network Systems, Llc | Mobile network node routing |
US10636069B1 (en) | 2016-03-24 | 2020-04-28 | Massachusetts Mutal Life Insurance Company | Beacon-based management of queues |
WO2020139497A1 (en) * | 2018-12-27 | 2020-07-02 | Intel Corporation | System and method of location determination using multiple location inputs |
US10757672B1 (en) | 2016-03-22 | 2020-08-25 | Massachusetts Mutual Life Insurance Company | Location-based introduction system |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012109446A1 (en) * | 2011-02-09 | 2012-08-16 | Andrew, Llc | System and method for location boosting using proximity information |
US9485623B2 (en) * | 2011-08-18 | 2016-11-01 | Rivada Research, Llc | Method and system for providing enhanced location based trilateration |
US9877299B2 (en) | 2011-08-18 | 2018-01-23 | Rivada Research, Llc | Method and system for performing trilateration for fixed infrastructure nodes (FIN) based on enhanced location based information |
US9585228B2 (en) * | 2012-11-30 | 2017-02-28 | Enlighted, Inc. | Associating information with an asset or a physical space |
US10182487B2 (en) | 2012-11-30 | 2019-01-15 | Enlighted, Inc. | Distributed fixture beacon management |
US9557404B1 (en) * | 2013-03-20 | 2017-01-31 | Iotera, Inc. | Circuit and antenna design for small form factor internet of things devices |
US9945953B2 (en) * | 2014-09-04 | 2018-04-17 | Khalifa University Of Science, Technology And Research | Methods and devices for bias estimation and correction |
US10824654B2 (en) | 2014-09-18 | 2020-11-03 | Snap Inc. | Geolocation-based pictographs |
US11216869B2 (en) | 2014-09-23 | 2022-01-04 | Snap Inc. | User interface to augment an image using geolocation |
US9015285B1 (en) | 2014-11-12 | 2015-04-21 | Snapchat, Inc. | User interface for accessing media at a geographic location |
US10616239B2 (en) | 2015-03-18 | 2020-04-07 | Snap Inc. | Geo-fence authorization provisioning |
US10228441B2 (en) * | 2015-08-18 | 2019-03-12 | International Business Machines Corporation | Accurate tracking information system |
US9877266B1 (en) | 2015-12-10 | 2018-01-23 | Massachusetts Mutual Life Insurance Company | Methods and systems for beacon-based management of shared resources |
US9958277B1 (en) * | 2015-12-18 | 2018-05-01 | EMC IP Holding Company LLC | Waypoint-assisted navigation of an enterprise facility |
US9749810B1 (en) | 2016-02-23 | 2017-08-29 | At&T Mobility Ii Llc | User equipment assisted indoor small cell location determination |
US10178737B2 (en) | 2016-04-02 | 2019-01-08 | Enlighted, Inc. | Monitoring occupancy of a desktop with a desktop apparatus |
US20170311123A1 (en) * | 2016-04-22 | 2017-10-26 | Senni Perumal | Accessory Device for Geo-Localization and Proximity Detection in Industrial Applications and Methods for Operating Same |
US20170328679A1 (en) | 2016-05-11 | 2017-11-16 | Rivada Research, Llc | Method and System for Using Enhanced Location-Based Information to Guide Munitions |
US10194265B2 (en) * | 2016-05-22 | 2019-01-29 | Qualcomm Incorporated | Systems and methods for supporting positioning beacons compatible with legacy wireless devices |
US10650621B1 (en) | 2016-09-13 | 2020-05-12 | Iocurrents, Inc. | Interfacing with a vehicular controller area network |
US10085118B1 (en) | 2017-03-17 | 2018-09-25 | SCRRD, Inc. | Wireless device detection, tracking, and authentication platform and techniques |
JP2020515205A (en) | 2017-03-17 | 2020-05-21 | エスシーアールアールディー, インク.Scrrd, Inc. | Cross reference for wireless device detection, tracking and authentication platforms and technology applications |
US10341814B2 (en) | 2017-03-17 | 2019-07-02 | SCRRD, Inc. | Wireless device detection, tracking, and authentication platform and techniques |
US10499193B2 (en) | 2017-03-20 | 2019-12-03 | Satori Worldwide, Llc | Collaborative geo-positioning of electronic devices |
US10085113B1 (en) | 2017-03-27 | 2018-09-25 | J. J. Keller & Associates, Inc. | Methods and systems for determining positioning information for driver compliance |
GB201705767D0 (en) * | 2017-04-10 | 2017-05-24 | Blue Vision Labs Uk Ltd | Co-localisation |
CN108010285B (en) * | 2017-11-30 | 2023-08-25 | 珠海恒宇新科技有限公司 | Alarm and method |
US10616853B2 (en) * | 2017-12-29 | 2020-04-07 | Sonitor Technologies As | Location determination using acoustic-contextual data |
US10743141B2 (en) * | 2018-06-05 | 2020-08-11 | Kenmar Corporation | Systems and methods for determining a location of an electronic device using bilateration |
CN109270487A (en) * | 2018-07-27 | 2019-01-25 | 昆明理工大学 | A kind of indoor orientation method based on ZigBee and inertial navigation |
GB2576787B (en) * | 2018-09-03 | 2022-05-11 | Ge Aviat Systems Ltd | Measuring weight and balance and optimizing center of gravity |
US11153717B2 (en) * | 2019-04-04 | 2021-10-19 | Qualcomm Incorporated | Enhanced reporting of positioning-related states |
US11617148B2 (en) | 2019-05-03 | 2023-03-28 | Samsung Electronics Co., Ltd. | Enhancement of flexibility to change STS index/counter for IEEE 802.15.4z |
WO2021029683A1 (en) * | 2019-08-13 | 2021-02-18 | 엘지전자 주식회사 | Method for transmitting and receiving signal in wireless communication system, and apparatus supporting same |
CN110719584B (en) * | 2019-09-02 | 2021-07-16 | 华为技术有限公司 | Method and electronic equipment for short-distance information transmission |
US11528176B2 (en) * | 2019-09-13 | 2022-12-13 | Samsung Electronics Co., Ltd | Apparatus and method for symbol time recovery using feedback loop |
US11508016B1 (en) * | 2020-02-04 | 2022-11-22 | Avalara, Inc. | Determining a resource for a place based on three-dimensional coordinates that define the place |
TWI744861B (en) * | 2020-04-15 | 2021-11-01 | 財團法人工業技術研究院 | Application service server, information processing method based on located region, and user equipment |
CN113868102A (en) | 2020-06-30 | 2021-12-31 | 伊姆西Ip控股有限责任公司 | Method, electronic device and computer program product for information display |
CN113865587A (en) | 2020-06-30 | 2021-12-31 | 伊姆西Ip控股有限责任公司 | Method, electronic device and computer program product for monitoring a field device |
CN115132369B (en) * | 2022-06-09 | 2023-05-02 | 中国传媒大学 | Information propagation analysis method and system based on social media mimicry environment modeling |
TWI831461B (en) * | 2022-11-08 | 2024-02-01 | 中華電信股份有限公司 | Positioning device and positioning method for providing location-based service for mobile device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110090123A1 (en) * | 2009-10-16 | 2011-04-21 | Qualcomm Incorporated | Binning Venues Into Categories Based On Propagation Characteristics |
US20120176525A1 (en) * | 2011-01-12 | 2012-07-12 | Qualcomm Incorporated | Non-map-based mobile interface |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2337386B (en) | 1996-09-09 | 2001-04-04 | Dennis J Dupray | Location of a mobile station |
US6421009B2 (en) | 1998-05-08 | 2002-07-16 | Peter Suprunov | Mobile station position tracking system for public safety |
JP3543769B2 (en) | 2001-02-19 | 2004-07-21 | 株式会社日立製作所 | Device for measuring the position of mobile terminals |
US7084809B2 (en) | 2002-07-15 | 2006-08-01 | Qualcomm, Incorporated | Apparatus and method of position determination using shared information |
DE10345511B4 (en) | 2003-09-30 | 2005-11-17 | Siemens Ag | Method for determining the spatial position of at least one mobile radio communication device, associated radio communication device and radio communication system |
JP4367233B2 (en) | 2004-05-21 | 2009-11-18 | 株式会社日立製作所 | Position detection method, position detection system, and position detection server device |
WO2006096923A1 (en) | 2005-03-18 | 2006-09-21 | Seeker Wireless Pty Limited | Enhanced mobile location |
US7602480B2 (en) * | 2005-10-26 | 2009-10-13 | Alcatel-Lucent Usa Inc. | Method and system for tracking a moving station or target in free space communications |
US7769395B2 (en) * | 2006-06-20 | 2010-08-03 | Seven Networks, Inc. | Location-based operations and messaging |
US7945270B2 (en) | 2006-03-28 | 2011-05-17 | Research In Motion Limited | Estimating a location of a mobile device |
US7693652B2 (en) | 2006-04-05 | 2010-04-06 | Microsoft Corporation | Waypoint adjustment and advertisement for flexible routing |
WO2007117606A2 (en) | 2006-04-07 | 2007-10-18 | Pelago, Inc. | Proximity-based user interaction |
KR100814762B1 (en) | 2006-11-07 | 2008-03-19 | 에스케이 텔레콤주식회사 | Method and system for providing location measurement of network based to mobile communication terminal by using g-pcell database |
US8838481B2 (en) | 2011-07-26 | 2014-09-16 | Golba Llc | Method and system for location based hands-free payment |
WO2008123546A1 (en) | 2007-04-03 | 2008-10-16 | Sharp Kabushiki Kaisha | Mobile information terminal device and mobile telephone |
US7724610B2 (en) | 2007-09-18 | 2010-05-25 | Honeywell International Inc. | Ultrasonic multilateration system for stride vectoring |
US20090079622A1 (en) | 2007-09-26 | 2009-03-26 | Broadcom Corporation | Sharing of gps information between mobile devices |
US20090149202A1 (en) | 2007-12-07 | 2009-06-11 | Christian Steele | System and method for determination of position |
US9646025B2 (en) * | 2008-05-27 | 2017-05-09 | Qualcomm Incorporated | Method and apparatus for aggregating and presenting data associated with geographic locations |
JP5238422B2 (en) | 2008-09-16 | 2013-07-17 | 株式会社ゼンリンデータコム | Information provision system |
US8359643B2 (en) | 2008-09-18 | 2013-01-22 | Apple Inc. | Group formation using anonymous broadcast information |
EP2380096B1 (en) | 2008-11-25 | 2018-12-26 | Apple Inc. | Computer-implemented method for providing location related content to a mobile device |
US8340936B2 (en) | 2009-06-12 | 2012-12-25 | Raytheon Company | Methods and systems for locating targets |
US8676226B2 (en) | 2009-07-09 | 2014-03-18 | Htc Corporation | Method of handling location service and related communication device |
US20110124347A1 (en) | 2009-09-15 | 2011-05-26 | Byron Hua Chen | Method And Apparatus for UE Positioning in LTE Networks |
WO2011037214A1 (en) | 2009-09-24 | 2011-03-31 | 日本電気株式会社 | Base station, terminal station, radio system, radio control method, and storage medium |
US8335522B2 (en) | 2009-11-15 | 2012-12-18 | Nokia Corporation | Method and apparatus for mobile assisted event detection and area of interest determination |
CN101720058A (en) | 2009-11-23 | 2010-06-02 | 中兴通讯股份有限公司 | Mobile phone positioning method and user equipment |
US8306552B2 (en) * | 2009-12-10 | 2012-11-06 | Qualcomm Incorporated | Pattern filtering for mobile station position estimation |
US20110171973A1 (en) | 2010-01-08 | 2011-07-14 | Andrew, Llc | System and Method for Mobile Location By Proximity Detection |
US8200251B2 (en) * | 2010-01-15 | 2012-06-12 | Apple Inc. | Determining a location of a mobile device using a location database |
US8433334B2 (en) * | 2010-01-15 | 2013-04-30 | Apple Inc. | Managing a location database for network-based positioning system |
US20110227788A1 (en) | 2010-03-16 | 2011-09-22 | David Lundgren | Method and system for generating and propagating location information by a mobile device using sensory data |
US20120129545A1 (en) | 2010-11-19 | 2012-05-24 | IIlume Software, Inc. | Systems and methods for selectively invoking positioning systems for mobile device control applications using multiple sensing modalities |
US8665154B2 (en) | 2011-05-13 | 2014-03-04 | Microsoft Corporation | Modeling and location inference based on ordered beacon sets |
US8787944B2 (en) | 2011-08-18 | 2014-07-22 | Rivada Research, Llc | Method and system for providing enhanced location based information for wireless handsets |
US9485623B2 (en) * | 2011-08-18 | 2016-11-01 | Rivada Research, Llc | Method and system for providing enhanced location based trilateration |
KR101686477B1 (en) | 2012-07-09 | 2016-12-15 | 인텔 코포레이션 | Improved trilateration processing |
US9538330B2 (en) * | 2013-08-21 | 2017-01-03 | Quallcomm Incorporated | System and method for selecting a Wi-Fi access point for position determination |
US9374799B2 (en) * | 2013-12-23 | 2016-06-21 | Cellco Partnership | Mobile device locating using long term evolution signals |
US10698073B2 (en) * | 2014-05-30 | 2020-06-30 | Apple Inc. | Wireless access point location estimation using collocated harvest data |
US9161175B1 (en) | 2014-05-31 | 2015-10-13 | Apple Inc. | Location transition determination |
-
2016
- 2016-01-12 US US14/993,618 patent/US9485623B2/en active Active
- 2016-10-04 US US15/284,806 patent/US9723453B2/en active Active
-
2017
- 2017-06-22 US US15/630,589 patent/US20170295461A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110090123A1 (en) * | 2009-10-16 | 2011-04-21 | Qualcomm Incorporated | Binning Venues Into Categories Based On Propagation Characteristics |
US20120176525A1 (en) * | 2011-01-12 | 2012-07-12 | Qualcomm Incorporated | Non-map-based mobile interface |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170359795A1 (en) * | 2014-12-15 | 2017-12-14 | Zte Corporation | Method and System for Realizing Wireless Positioning, and Device for Calculating Positioning Location |
US10292128B2 (en) * | 2014-12-15 | 2019-05-14 | Zte Corporation | Method and system for realizing wireless positioning, and device for calculating positioning location |
US20180077533A1 (en) * | 2015-03-17 | 2018-03-15 | Philips Lighting Holding B.V. | Localization based on motion detection of the mobile device |
US10142793B2 (en) * | 2015-03-17 | 2018-11-27 | Philips Lighting Holding B.V. | Localization based on motion detection of the mobile device |
US9877298B1 (en) * | 2016-03-22 | 2018-01-23 | Massachusetts Mutual Life Insurance Company | Beacon-based location introduction system |
US10306582B1 (en) | 2016-03-22 | 2019-05-28 | Massachusetts Mutual Life Insurance Company | Beacon-based location introduction system |
US10660059B1 (en) | 2016-03-22 | 2020-05-19 | Massachusetts Mutual Life Insurance Company | Beacon-based location introduction system |
US10757672B1 (en) | 2016-03-22 | 2020-08-25 | Massachusetts Mutual Life Insurance Company | Location-based introduction system |
US10636069B1 (en) | 2016-03-24 | 2020-04-28 | Massachusetts Mutal Life Insurance Company | Beacon-based management of queues |
US11704711B1 (en) | 2016-03-24 | 2023-07-18 | Massachusetts Mutual Life Insurance Company | Beacon-based management of queues |
US10264509B2 (en) * | 2016-09-29 | 2019-04-16 | Hughes Network Systems, Llc | Mobile network node routing |
WO2020139497A1 (en) * | 2018-12-27 | 2020-07-02 | Intel Corporation | System and method of location determination using multiple location inputs |
Also Published As
Publication number | Publication date |
---|---|
US20160127871A1 (en) | 2016-05-05 |
US20170026805A1 (en) | 2017-01-26 |
US9485623B2 (en) | 2016-11-01 |
US9723453B2 (en) | 2017-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9723453B2 (en) | Method and system for providing enhanced location based trilateration | |
US9843900B2 (en) | Method and system for providing enhanced location based service (ELBS) trilateration using a single device | |
US9877299B2 (en) | Method and system for performing trilateration for fixed infrastructure nodes (FIN) based on enhanced location based information | |
US9641978B2 (en) | Method and system for providing enhanced location based information for wireless handsets | |
US20180020329A1 (en) | Method and System for Internet of Things (iOT) Enhanced Location Based Services Trilateration | |
US20170164315A1 (en) | Method and System for Performing Trilateration for Fixed Infrastructure Nodes (FIN) Based On Enhanced Location Based Information | |
CN107409275B (en) | Method and system for providing enhanced location-based trilateration | |
WO2016094681A1 (en) | Method and system for providing enhanced location based information for wireless handsets | |
WO2017143023A1 (en) | Method and system for performing trilateration for fixed infrastructure nodes (fin) based on enhanced location based information | |
WO2017116973A1 (en) | Method and system for enhanced location based information for fixed platforms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: RIVADA RESEARCH, LLC, COLORADO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SMITH, CLINT;SURAMPUDI, PURNIMA;SIGNING DATES FROM 20171128 TO 20171129;REEL/FRAME:044419/0340 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: DEAN & COMPANY STRATEGY CONSULTANTS, LLC, VIRGINIA Free format text: COURT ORDER;ASSIGNOR:RIVADA RESEARCH, LLC;REEL/FRAME:046246/0145 Effective date: 20180417 |