Determining the exact location of a mobile device (e.g., a smart phone operated by a user) in an environment can be quite challenging, especially when the mobile device is located in an urban environment or is located within a building. Imprecise estimates of the mobile device's altitude, for example, may have life-or-death consequences for the user of the mobile device since the imprecise altitude estimate can delay emergency personnel response times as they search for the user on multiple floors of a building. In less dire situations, imprecise altitude estimates can lead a user to the wrong area in an environment.
Different approaches exist for estimating an altitude of a mobile device. In a barometric-based location determination system, such as the system shown in
where Pmobile is the estimate of pressure at the location of the mobile device determined using a pressure sensor of the mobile device, Psensor is an accurate estimate of pressure at the location of a reference pressure sensor 130 (e.g., accurate to within a tolerated amount of pressure from true pressure, such as <5 Pa), Tremote is an accurate estimate of temperature (e.g., in Kelvin) at the location of the reference pressure sensor 130 or a different location of a remote temperature sensor, hsensor is an estimated altitude of the reference pressure sensor 130 (e.g., estimated to within a desired amount of altitude error, such as 0.5 meters), g corresponds to the acceleration due to gravity, R is a gas constant, and M is the molar mass of air (e.g., dry air or other). The minus sign (−) may be substituted with a plus sign (+) in alternative embodiments of Equation 1, as would be understood by one of ordinary skill in the art. The estimate of pressure at the location of the reference pressure sensor 130 can be converted to an estimated reference-level pressure that corresponds to the reference pressure sensor 130 in that it specifies an estimate of pressure at the latitude and longitude of the reference pressure sensor 130, but at a reference-level altitude that likely differs from the altitude of the reference pressure sensor 130. The reference-level pressure can be determined as follows:
where Psensor is the estimate of pressure at the location of the reference pressure sensor 130, Pref is the reference-level pressure estimate and href is the reference-level altitude. The altitude of the mobile device hmobile can be computed using Equation 1, where href is substituted for hsensor and Pref is substituted for Psensor. The reference-level altitude href may be any altitude, and is often set at mean sea-level (MSL). When two or more reference-level pressure estimates are available, the reference-level pressure estimates are combined into a single reference-level pressure estimate value (e.g., using an average, weighted average, or other suitable combination of the reference pressures), and the single reference-level pressure estimate value is used for the reference-level pressure estimate Pref.
The accuracy of the estimated altitude of the mobile device depends on two measurements of pressure. A first measurement is a reference-level pressure determined from measurement(s) of pressure from one or more of the reference pressure sensors 130 of the network. A second measurement is a measurement of pressure from an unstable pressure sensor of the mobile device. Due to drift, which is a phenomenon whereby measurements of pressure from an unstable pressure sensor deviate from the true values of pressure over time, the unstable pressure sensor of the mobile device must be regularly calibrated using a reference-level pressure corresponding to a reference pressure sensor. One approach for calibrating a pressure sensor of the mobile device relies on a reference-level pressure determined from measurement(s) of pressure from one or more of the reference pressure sensors 130 of the network for an earlier time. Since an estimated altitude hmobile is computed as:
an aim for calibrating the pressure sensor of the mobile device is to determine an adjustment to the value of Pmobile such that hmobile is within a tolerated amount of distance from the true altitude of the mobile device, htruth. During calibration, a known representative altitude of the area in which the mobile device is expected to reside based on an estimated position of the mobile device can be assigned as the representative true altitude of the mobile device, htruth, which may or may not include an adjustment of a typical height at which the mobile device is likely to be held above the ground or floor of the area. Once the representative true altitude of the mobile device, htruth, is determined, a calibration value C needed to adjust the estimate of pressure at the location of the mobile device, Pmobile, is determined using a combination of Equation 3 and the following equation to solve for C:
As one of ordinary skill in the art will appreciate, the accuracy of reference-level pressures corresponding to reference pressure sensors of a network affects the accuracy of a barometric-based altitude estimate in two ways: (1) determination of the estimated altitude using a reference-level pressure itself, and (2) determination of the estimated altitude using a measurement of pressure from a pressure sensor that was calibrated using a reference-level pressure.
When floor-level accuracy is required for an estimated altitude of a mobile device, only small amounts of error in the reference-level pressure can be tolerated since every 10 Pascals of measurement error can result in 1 meter of error in the estimated altitude of the mobile device as compared to the true altitude of the mobile device. It follows that reliable reference-level pressures are needed for sensor calibration and altitude estimation when floor-level altitude accuracy to within 3 meters of error (or preferably 1 meter of error) from true altitude is desired. The reference pressure network shown in
Unfortunately, the spatial coverage of the network shown in
In some aspects, the techniques described herein relate to a method including: determining, by one or more processors, an estimated position of a mobile device; determining, by the one or more processors, that the estimated position of the mobile device is outside a coverage area of a first network of reference pressure sensors; for each reference pressure sensor of the first network, determining, by the one or more processors, a distance between a respective reference pressure sensor and the estimated position of the mobile device; identifying, by the one or more processors, a first reference pressure sensor of the first network that is nearest to the estimated position of the mobile device as compared to other reference pressure sensors of the first network; determining, by the one or more processors, an assigned reference-level pressure value using a first reference pressure measured at the first reference pressure sensor; and determining, by the one or more processors, an estimated altitude of the mobile device or calibrating a pressure sensor of the mobile device using the assigned reference-level pressure value.
In some aspects, the techniques described herein relate to a method including: determining, by one or more processors, an estimated position of a mobile device; determining, by the one or more processors, that the estimated position of the mobile device is outside a coverage area of a first network of reference pressure sensors; for each reference pressure sensor of the first network, determining, by the one or more processors, a distance between a respective reference pressure sensor and the estimated position of the mobile device; identifying, by the one or more processors, a first reference pressure sensor of the first network; identifying, by the one or more processors, a first reference pressure measured at the first reference pressure sensor; identifying, by the one or more processors, a second reference pressure that is associated with reference pressure sensors of a second network of reference pressure sensors, a location of the second reference pressure being nearest to the estimated position of the mobile device as compared to locations of other reference pressures associated with the second network; identifying, by the one or more processors, a third reference pressure that is associated with the reference pressure sensors of the second network, a location of the third reference pressure being nearest to the location of the first reference pressure sensor as compared to locations of other reference pressures associated with the second network; determining, by the one or more processors, an assigned reference-level pressure value using the first reference pressure, the second reference pressure, and the third reference pressure; and determining, by the one or more processors, an estimated altitude of the mobile device or calibrating a pressure sensor of the mobile device using the assigned reference-level pressure value.
Estimated altitudes of mobile devices that are accurate to a floor level in a building are highly desired. Floor-level accuracy is possible using a barometric-based location determination system, such as the network of reference pressure sensors 130 within an operational environment 100 shown in
where Pmobile is an estimate of pressure at the location of the mobile device 120 by a pressure sensor of the mobile device 120, Tremote is an accurate estimate of ambient temperature in the network, href is a reference-level altitude, g corresponds to the acceleration due to gravity, R is a gas constant, and M is the molar mass of air. By way of example,
As described in the Background section of this disclosure, the accuracy of reference-level pressures corresponding to the reference pressure sensors 130 affects the accuracy of the estimated altitude of the mobile device 120 (hmobile) in two ways: (1) use of the reference-level pressure reference-level pressure (Pref) to determine the estimated altitude, and (2) use of a reference-level pressure when calibrating a pressure sensor of the mobile device that provides a measurement of pressure used to determine the estimated altitude. When a floor-level accuracy is required for an estimated altitude of the mobile device 120, only small amounts of error in the reference-level pressure can be tolerated (e.g., <5 Pa, or a greater value that is a fraction of a maximum pressure error corresponding to a tolerated amount of altitude error for floor-level accuracy). It follows that reliable reference-level pressures are needed for sensor calibration and altitude estimation when floor-level altitude accuracy to within 1-3 meters of altitude error (which corresponds to a maximum pressure error of 10-30 Pa) is needed.
When calibrated, the network of reference pressure sensors 130 shown in
By way of example,
By way of another example,
As mentioned when discussing the illustrations in
Under circumstances when pressure data from other sources is not available or desirable for use in sensor calibration and altitude estimation, a third approach uses wind data measured in the region (e.g., in the coverage area) to adjust locations of reference-level pressures from inside the coverage area to outside the coverage area.
A first approach for extending the spatial coverage of a network of reference pressure sensors in a region (e.g., for use in calibrating a pressure sensor of a mobile device, or estimating an altitude of the mobile device) uses pressure data from a first system (e.g., a non-network source like a NOAA system) to determine a pressure pattern in the region, and depending on different circumstances, uses the pressure pattern to identify a reference-level pressure corresponding to a reference pressure sensor from a second system (e.g., the network).
One method for extending the spatial coverage of a network of reference pressure sensors based on a pressure pattern of a region is shown in
As shown in
For each reference pressure sensor of the network, a reference-level pressure for a reference-level altitude is determined using a measurement of pressure from that reference pressure sensor and the altitude of that reference pressure sensor (step 220). By way of example, each reference-level pressure may be determined using Equation 2 from the Background section of this disclosure. In different embodiments, step 220 is performed using a processor of the reference pressure sensor, a mobile device, a server, and/or another suitable machine.
A set of reference-level pressures that were not determined using measurements of pressure from the network of reference pressure sensors are used to determine a pressure pattern for a region that includes the estimated position of the mobile device, an area in which the mobile device resides outside of the coverage area of the network, and optionally at least some of the coverage area of the network (step 230). By way of example, the set of reference-level pressures that were not determined using measurements of pressure from the network may include reference-level pressures from public information like NOAA weather maps, such as NOAA High-Resolution Rapid Refresh. NOAA data may be available on an hourly basis or as frequently as every 10 minutes. Optionally, the reference-level pressures corresponding to the reference pressure sensors may be used as additional information for determining the pressure pattern in one embodiment, but not all embodiments. Such reference-level pressures may be used to add more resolution to part of the pressure pattern inside the coverage area. A pressure pattern of a region can be represented in different forms, including a grid of points representing different expected reference-level pressures at different locations in the region, or a group of isobars representing different reference-level pressures in the region. By way of example,
Based on the determined pressure pattern, a determination is made as to whether an expected reference-level pressure corresponding to the estimated position of the mobile device is within a threshold amount of pressure from a reference-level pressure corresponding to a selected reference pressure sensor from the network (step 240). Different embodiments of step 240 are provided in
If the expected reference-level pressure corresponding to the estimated position of the mobile device is within the threshold amount of pressure from the reference-level pressure corresponding to the selected reference pressure sensor, the reference-level pressure corresponding to the selected reference pressure sensor is used to calibrate a pressure sensor of the mobile device or to estimate an altitude of the mobile device (step 250). In different embodiments, step 250 is performed using a processor of a mobile device, a server, and/or another suitable machine.
If the expected reference-level pressure corresponding to the estimated position of the mobile device is not within the threshold amount of pressure from the reference-level pressure corresponding to the selected reference pressure sensor, none of the determined reference-level pressures for any reference pressure sensor in the network are used to calibrate a pressure sensor of the mobile device or to estimate an altitude of the mobile device (step 260). In different embodiments, step 260 is performed using a processor of a mobile device, a server, and/or another suitable machine.
Two embodiments of step 240 discussed below use a pressure pattern that includes a set of isobars that represent different reference-level pressures for the reference-level altitude. When determining the pressure pattern during step 240, evenly-spaced isobars at intervals equal to the threshold amount of pressure can be used to form the pressure pattern, where (i) one isobar may pass through the estimated position of the mobile device so the largest defined area between the isobars is created to compare the location of the estimated position against locations of reference-level pressures from the reference pressure sensors of the network, or (ii) the isobars are drawn relative to some minimum or maximum value instead of the estimated position. Alternatively, less than the threshold amount of pressure can be used as spacing between the isobars.
One embodiment of step 240 that uses isobars in the pressure pattern is shown in
Another embodiment of step 240 that uses isobars in the pressure pattern is shown in
The likelihood of the estimated position of the mobile device and a reference pressure sensor being on or between a pair of isobars or being separated by only one isobar is higher when larger distances separate neighboring isobars compared to when smaller distances separate neighboring isobars. Thus, the processes of
The pressure pattern need not use isobars, and can alternatively use a grid of pressure values. One embodiment of step 240 that uses a grid in the pressure pattern is shown in FIG. 4C. During this embodiment of step 240, an expected reference-level pressure corresponding to the estimated position of the mobile device is determined using one or more reference-level pressures from the grid in the pressure pattern (step 431c). In one implementation, the expected reference-level pressure is a reference-level pressure from the pressure pattern (e.g., a weather map) that is closest to the estimated position of the mobile device. In another implementation, the expected reference-level pressure is a combination (e.g., an average) of n reference-level pressures from the pressure pattern that are closest to the estimated position of the mobile device, for any value of n (e.g., n=4). A determination is made as to whether the expected reference-level pressure corresponding to the estimated position of the mobile device is within the threshold amount of pressure from any of the reference-level pressures corresponding to the reference pressure sensors in the network (step 432c). By way of example,
A second approach for extending the spatial coverage of a network of reference pressure sensors (e.g., for use in calibrating a pressure sensor of a mobile device, or estimating an altitude of the mobile device) (i) determines pressure contours (e.g., isobars) that represent reference-level pressures in a given region, (ii) selects a pressure contour (e.g., a pressure contour that is closest to or next to an estimated position of the mobile device), (iii) adjusts the value of the pressure contour using pressure values from the network, and (iv) uses the adjusted pressure value of that contour as the reference-level pressure for sensor calibration and altitude estimation. In different embodiments, the second approach is performed using a processor of a mobile device, a server, and/or another suitable machine.
When the mobile device resides outside the coverage area of the network, available pressure contours may have been generated using non-network pressure data (e.g., NOAA pressure data). Since non-network pressure data is typically less reliable than network pressure data, such circumstances can produce calibration and altitude values that have errors in excess of the maximum tolerated calibration and altitude errors. An illustration in
As described further below with reference to
One method for extending the spatial coverage of a network of reference pressure sensors by updating values of pressure contours is shown in
Initially, a determination is made that an estimated position of a mobile device resides outside a coverage area of the network (step 810). In different embodiments, step 810 is performed using a processor of a mobile device, a server, and/or another suitable machine.
A set of isobars (e.g., pressure contours) for a region are determined using a set of reference-level pressures that were determined using measurements of pressure from weather sensors that are not part of the network of reference pressure sensors (step 820). By way of example, the set of reference-level pressures may be a gridded set of reference-level pressures from the NOAA High-resolution Rapid Refresh. In one embodiment, each pair of neighboring isobars in the set of isobars are separated by no more than a first threshold amount of pressure (e.g., 2 Pa, 5 Pa, 10 Pa, 30 Pa, or other value equal to or less than). The first threshold amount of pressure may have different values—e.g., (i) being equal to an amount of tolerated pressure error associated with a tolerated calibration or altitude error (e.g., 10 Pa or 30 Pa), or (ii) being less than the tolerated pressure error, such as a fraction of the tolerated pressure error. In different embodiments, step 820 is performed using a processor of a mobile device, a server, and/or another suitable machine.
An Nth isobar from the set of isobars that passes through the coverage area of the network and that is an Nth closest isobar to the estimated position of the mobile device is determined (step 830), where the value of N equals 1 for the first iteration of step 830. In different embodiments, step 830 is performed using a processor of a mobile device, a server, and/or another suitable machine.
At each location of a plurality of different locations on the Nth isobar inside the coverage area, an estimated reference-level pressure is determined for that location using reference-level pressures that are based on measurements of pressure from the network of reference pressure sensors (step 840). By way of example, the plurality of locations may be every point on the Nth isobar inside the coverage area. Alternatively, the plurality of locations may include only points on the Nth isobar inside the coverage area that are separated by a predefined distance. In one embodiment for step 840, for each location of the plurality of locations, the estimated reference-level pressure is determined at that location by combining (e.g., averaging, interpolating, or other combination) selected values from the reference-level pressures that are based on measurements of pressure from the network of reference pressure sensors (e.g., n reference-level pressures that are closest to the location). By way of example,
An Nth maximum (highest) estimated reference-level pressure and an Nth minimum (lowest) estimated reference-level pressure are identified from the estimated reference-level pressures that are at the plurality of different locations on the Nth isobar (step 850). In different embodiments, step 850 is performed using a processor of a mobile device, a server, and/or another suitable machine.
A determination is made as to whether the Nth maximum estimated reference-level pressure and the Nth minimum estimated reference-level pressure are within a predefined amount of pressure (e.g., 2, Pa, 5 Pa, 10 Pa, 30 Pa, or other value that is equal to or preferably less than the threshold amount of pressure used to separate the isobars) (step 860). In different embodiments, step 860 is performed using a processor of a mobile device, a server, and/or another suitable machine.
If the Nth maximum estimated reference-level pressure and the Nth minimum estimated reference-level pressure are within the predefined amount of pressure, an Nth mean pressure value of the estimated reference-level pressures that are at the plurality of different locations on the Nth isobar is determined, and the Nth mean reference-level pressure value is used as a reference-level pressure to calibrate a pressure sensor of the mobile device or estimate an altitude of the mobile device (step 870). In different embodiments, step 870 is performed using a processor of a mobile device, a server, and/or another suitable machine.
If the Nth maximum estimated reference-level pressure and the Nth minimum estimated reference-level pressure are not within the predefined amount of pressure of each other, a determination is made as to whether the process should return to step 830 or end (step 880). A first embodiment of step 880 when the first threshold amount of pressure is equal to the tolerated pressure error comprises the following step(s): end the process without calibrating the pressure sensor of the mobile device or estimating the altitude of the mobile device using any determined mean reference-level pressure value. A second embodiment of step 880, when the first threshold amount of pressure is less than the tolerated pressure error (e.g., a fraction 1/n of the tolerated pressure error), comprises the following step(s): increment N by 1, determine if the current value of N is greater than the value of n, and return to step 830 if the current value of N is not greater than the value of n, or otherwise end the process without calibrating the pressure sensor of the mobile device or estimating the altitude of the mobile device using any determined mean reference-level pressure value. Alternatively, after arriving at step 880 for N=1, a determination is made as to whether the amount of pressure separating the first isobar and a second isobar is less than or equal to one-half of the tolerated pressure error, and if so, then the process returns to step 830 for N=2. A third embodiment of step 880 when the tolerated pressure error can be exceeded comprises the following step(s): increment N by 1, determine if the current value of N is greater than a number of isobars from the set of isobars that pass through the coverage area, and return to step 830 if the current value of N is not greater than the number of isobars from the set of isobars that pass through the coverage area, or otherwise end the process without calibrating the pressure sensor of the mobile device or estimating the altitude of the mobile device using any determined mean reference-level pressure value. In different embodiments, step 880 is performed using a processor of a mobile device, a server, and/or another suitable machine.
A third approach for extending the spatial coverage of a network of reference pressure sensors (e.g., for use in calibrating a pressure sensor of a mobile device, or estimating an altitude of the mobile device) translates initial positions of reference-level pressures corresponding to reference pressure sensors of the network to other locations in a region that are possibly outside the coverage area of the network. The initial positions are translated to other locations using wind information that may be accessed from public data (e.g., NOAA HRRR wind fields) or other wind measurements. A spatial average wind speed and direction is computed using information about wind inside the coverage area of the network and/or other areas of the region. The average wind speed can be decomposed into two parts: speed along an cast-west direction, and speed along a north-south direction. The magnitudes of distances traveled along east-west and north-south directions are computed by assuming a time interval (e.g., 600 seconds), which may be a function of atmospheric conditions (calm versus disturbed weather), underlying flatness of the terrain, air temperature change with distance near a terrestrial surface, or other factors. An cast-west distance can be computed as the product of the east-west wind speed times the time interval, and a north-south distance can be computed as the product of the north-south wind speed times the time interval. The resultant distances are used to translate each reference-level pressure location inside the coverage area to a new position that may be closer to an estimated position of a mobile device that resides outside the coverage area. If new positions of reference-level pressures are closer to an estimated position of a mobile device, then a predefined number of reference-level pressures with new positions that are closest to the estimate position of the mobile device can be combined (e.g., averaged) where the combined result is used as the reference-level pressure during sensor calibration or altitude estimation.
One method for extending the spatial coverage of a network of reference pressure sensors using wind data is shown in
Initially, an estimated position of a mobile device is determined to reside outside a coverage area of a network of reference pressure sensors (step 1110). In different embodiments, step 1110 is performed using a processor of a mobile device, a server, and/or another suitable machine.
A plurality of wind speeds and corresponding directions of wind for a plurality of positions inside the coverage area of the network is determined (step 1120). In one embodiment, the determination of wind speeds and directions is accomplished by accessing wind speeds and directions for different locations inside the coverage area from public data like NOAA HRRR wind fields. In different embodiments, step 1120 is performed using a processor of a mobile device, a server, and/or another suitable machine.
One or more magnitudes of distance and one or more directions of distance are determined using the plurality of wind speeds and directions, and also a time interval (step 1130). One embodiment of step 1130 is shown in
The one or more magnitudes of distance and the one or more directions of distance are used to obtain adjusted locations of reference-level pressures (step 1140)—e.g., by moving the initial locations of reference-level pressures to new locations that are separated from the initial locations by the one or more magnitudes of distance and the one or more directions of distance. By way of illustration,
One or more new locations of reference-level pressures are then identified, and the one or more reference-level pressures of the one or more identified locations are used to calibrate a pressure sensor of the mobile device or estimate an altitude of the mobile device (step 1150). In one embodiment of step 1150, identification of the one or more new locations of reference-level pressures is accomplished by selecting the closest n≥1 new locations to an estimated position of the mobile device as the one or more identified new locations. In another embodiment of step 1150, identification of the one or more new locations of reference-level pressures is accomplished by selecting n≥1 locations from a group of the new locations that are within a predefined maximum distance (e.g., <5 km) from the estimated position as the one or more identified new locations. In yet another embodiment of step 1150, identification of the one or more new locations of reference-level pressures is accomplished by determining a group of the new locations that are within the predefined maximum distance from the estimated position, and selecting n≥1 locations from the group that are closest to an estimated position of the mobile device as the one or more identified new locations. In different embodiments, step 1150 is performed using a processor of a mobile device, a server, and/or another suitable machine.
In one embodiment of the process shown in
A fourth approach for extending the spatial coverage of a network of reference pressure sensors involves using reference pressure data, generated by a reference pressure sensor of the network of reference pressure sensors, that is nearest to the estimated position of a mobile device when the mobile device is outside of the coverage area of the network. This approach is useful for calibrating a pressure sensor of the mobile device or estimating its altitude. In some embodiments, the reference pressure sensor is part of a weather station within the network of reference pressure sensors.
In some embodiments, the atmospheric model includes a grid of data that is periodically updated based on collected atmospheric data. In some embodiments, the atmospheric data is collected using sensors that are not of the reference pressure sensor network, i.e., of a second network. One non-limiting example of the atmospheric model is the High-Resolution Rapid Refresh (HRRR) generated by the United States' National Oceanic & Atmospheric Administration (NOAA). The HRRR data is updated every fifteen minutes over a one-hour period and the grid of data has a 3-km horizontal resolution.
In some embodiments, a distance (e.g., a straight-line distance) between each of the reference pressure sensors 1406a-c of the reference pressure sensor network and the estimated position of the mobile device 1408 is determined using one or more processors at the mobile device and/or at one or more servers, and a reference pressure sensor within the coverage area 1404 that is nearest to the estimated position of the mobile device 1408 is selected by the one or more processors.
However, if it is determined by the one or more processors that one or more data requirements of the reference pressure sensor have not been satisfied, the next nearest reference pressure sensor may be considered (up to a determined distance threshold value, such as 25 km) and used by the one or more processors to generate the reference-level pressure value. In some embodiments, non-limiting examples of the data requirement include how recently the nearest reference pressure sensor generated a new atmospheric data measurement, a status of current network connectivity, how recently the nearest reference pressure sensor was calibrated, a confidence value of a calibration of the nearest reference pressure sensor, a proximity of the nearest reference pressure sensor to a geographic anomaly such as a body of water, etc.
Thus, in such embodiments, the nearest appropriate reference pressure sensor is considered to have been selected. For the sake of brevity, the “nearest reference pressure sensor” as referred to herein is the nearest reference pressure sensor to the estimated position of the mobile device 1408 that is considered to be appropriate for use in the processes disclosed herein.
A reference-level pressure value is then determined by the one or more processors for that reference pressure sensor and assigned for use to the mobile device 1408. In this context, assigning a reference-level pressure value to the mobile device 1408 means that the mobile device 1408 and/or a server may use the reference-level pressure value to calibrate a barometric pressure sensor of the mobile device and/or to generate an estimated altitude of the mobile device.
In the example shown in
As expressed in Equation 7 above, an assigned reference-level pressure value Pref at the estimated position of the mobile device 1408 is equal to a reference-level pressure pReferenceNetworkNearestPS that is generated at the reference pressure sensor within the reference pressure network that is nearest to the estimated position of the mobile device 1408.
Because a region may have a larger number of reference pressure sensors, and identifying relevant atmospheric and positioning data for each of the reference pressure sensors may involve retrieving such data from multiple different servers, assigning the reference-level pressure data as described above is not practical to be performed as a manual task or as a mental process. Additionally, determining an estimated position of the mobile device to make such a distance comparison, for example, using positioning signals received at the mobile device, may be impossible to be entirely performed as a mental task. As such, determining and assigning the reference-level pressure data may be accomplished using the one or more processors at the mobile device and/or a server.
A fifth approach for extending the spatial coverage of a network of reference pressure sensors involves combining a reference pressure value generated by a first network of reference pressure sensors with data generated using a second network of reference pressure sensors. The first network includes sensors within the coverage area 1404 of the reference pressure sensor network, while the second network provides reference pressure data based on the atmospheric model 1402. This combined data can be processed using one or more processors at the mobile device and/or at a server to calibrate the pressure sensor of the mobile device or estimate its altitude.
In some embodiments, the atmospheric model 1402 may be, or may include, the HRRR atmospheric model. As mentioned above, the HRRR atmospheric model is a weather forecasting model used by NOAA, the United States' National Oceanic and Atmospheric Administration. The HRRR model generates updated analysis (i.e., a gridded representation of “current” conditions characterized by pressure and temperature, among other values) and forecasts every hour, or forecasts as frequently as every 10-15 minutes, for tracking and predicting the evolution of severe weather conditions by ingesting a large quantity of real-time weather data from a variety of sources, including satellites, weather radars, weather stations, and aircraft, among other sources. As such, the HRRR atmospheric model 1402 has a high temporal resolution and detailed spatial grid (it covers the continental U.S. with a grid spacing of approximately 3 km) of grid points (examples of which are illustrated as solid black circles), allowing it to capture fine-scale weather phenomena that might be missed by other, lower-resolution models.
In some embodiments, a reference-level pressure value at the estimated position of the mobile device 1408 is determined and assigned to the mobile device using the one or more processors in accordance with the following expression:
where Pref is an assigned reference-level pressure value at the estimated position of the mobile device 1408, PModelLO is an atmospheric pressure measurement derived from the atmospheric model 1402 at a location that is outside of the coverage area 1404 of the reference weather station network at or near the location of the mobile device 1408 (e.g., using atmospheric data associated with grid point 1410b), PNearestPSModel is an atmospheric pressure measurement derived from the atmospheric model 1402 at a location that is at or near the reference pressure sensor of the network of reference pressure sensors that is nearest to the estimated position of the mobile device 1408 (e.g., using atmospheric data associated with the grid point 1410a), and pReferenceNetworkNearestPS is the reference pressure from the reference pressure sensor within the coverage area 1404 of the reference pressure network that is nearest to the estimated position of the mobile device 1408 (e.g., reference pressure sensor 1406a). In some embodiments, the atmospheric pressure measurements PModelLO and PModelNearestPS are the values at grid points of the atmospheric model 1402. In other embodiments, they are derived using bi-linear interpolation of the grid points of the atmospheric model 1402. For example, in such embodiments, PModelLO would be generated using a bi-linear interpolation of the grid point 1410b and other grid points at or near the location of the mobile device 1408. Similarly, in such embodiments, pReferenceNetworkNearestPS would be generated using a bi-linear interpolation of the grid point 1410a and other grid points at or near the location of the reference pressure sensor 1406a.
In other embodiments, a reference-level pressure value at the estimated position of the mobile device 1408 is determined and assigned to the mobile device using the one or more processors in accordance with the following expression:
Regarding Equation 8 and Equation 9, the expression shown in Equation 8 adjusts the atmospheric pressure PModelLO derived from the atmospheric model 1402 (e.g., using grid point 1410b) using a pressure correction (pModelNearestPS−PReferenceNetworkNearestPS) computed at the nearest reference pressure sensor (e.g., 1406a) by assuming that the correction is valid at the estimated position of the mobile device 1408. By comparison, the expression shown in Equation 9 corrects the atmospheric pressure PReferenceNetworkNearestPS generated using the network of pressure sensors using a horizontal pressure gradient (PModelNearestPS−PModelLO) between two pressures derived using the atmospheric model 1402 at two dissimilar locations.
In some embodiments, Equation 7, Equation 8, or Equation 9 is advantageously selected (e.g., by a server) for use in assigning a reference-level pressure value to the mobile device 1408 based on a topology of the region in which the mobile device is located. That is, as disclosed herein, a reference-level pressure at the location of the mobile device may be estimated based on i) a nearest-distance approach, ii) a pressure correction of modeled data using reference pressure sensor data, iii) a pressure gradient computation between reference pressure sensor data and the location of the mobile device, and so on. Approach i may be more accurate than approaches ii and iii when atmospheric conditions are volatile (e.g., windy, stormy, turbulent). Approach ii may be more accurate than approaches i and iii when there are no intervening terrain features and/or water bodies between the mobile device and the reference pressure sensor. Approach iii may be more accurate than approaches i and ii if reference pressure values are avoided that convert measured/modeled atmospheric pressure to a reference level over regions where there are mountains or if the reference level pressure is underground. As such, in some embodiments, the one or more processors advantageously select a most appropriate approach for estimating a reference-level pressure at the mobile device based on weather conditions and topological features in the region of the mobile device.
Because a region may have a larger number of reference pressure sensors, the atmospheric model may involve a large amount of data, and identifying relevant atmospheric and positioning data for each of the reference pressure sensors may involve retrieving such data from multiple different servers, assigning the reference-level pressure data as described above is not practical to be performed as a manual task or as a mental process. Additionally, as mentioned above, determining an estimated position of the mobile device to make such a distance comparison, for example using positioning signals received at the mobile device, may be impossible to be entirely performed as a mental task. As such, determining and assigning the reference-level pressure data may be accomplished using the one or more processors at the mobile device and/or a server.
Mobile devices are routinely used to estimate the positions of their users in different environments. Examples of estimated positions include estimated altitudes of mobile devices that are based on (i) reference pressures from a network of reference pressure sensors and (ii) measurements of pressure from pressure sensors of the mobile devices. Unfortunately, limitations in the functionality of the network of reference pressure sensors can impact the accuracy of estimated altitudes, which impairs different uses of the estimated altitudes (e.g., emergency response, navigation, etc.). Such functional limitations of the network of reference pressure sensors include limited coverage area. Processes described herein improve the field of location determination by expanding coverage areas of networks that provide reference-level pressures used to estimate an altitude of a mobile device. Expanded coverage areas enable more accurate, more reliable, and/or more available estimated altitudes, which in turn provide for quicker emergency response times or otherwise improve the usefulness of estimated altitudes. In some embodiments, a coverage area of an existing network can be expanded to include a new expansion area without having to install additional equipment into the expansion area, which reduces costs to install and maintain the network, or which makes coverage possible for an expansion area in which installation or maintenance of additional equipment would not be possible. In other embodiments, a desired coverage area can be achieved with a network that uses less equipment compared to the amount of equipment required by other approaches.
Any method (also referred to as a “process” or an “approach”) described or otherwise enabled by the disclosure herein may be implemented by hardware components (e.g., machines), software modules (e.g., stored in machine-readable media), or a combination thereof. By way of example, machines may include one or more computing device(s), processor(s), controller(s), integrated circuit(s), chip(s), system(s) on a chip, server(s), programmable logic device(s), field programmable gate array(s), electronic device(s), special purpose circuitry, and/or other suitable device(s) described herein or otherwise known in the art. One or more non-transitory machine-readable media embodying program instructions that, when executed by one or more machines, cause the one or more machines to perform or implement operations comprising the steps of any of the methods described herein are contemplated herein. As used herein, machine-readable media includes all forms of machine-readable media (e.g. one or more non-volatile or volatile storage media, removable or non-removable media, integrated circuit media, magnetic storage media, optical storage media, or any other storage media, including RAM, ROM, and EEPROM) that may be patented under the laws of the jurisdiction in which this application is filed, but does not include machine-readable media that cannot be patented under the laws of the jurisdiction in which this application is filed. Systems that include one or more machines and one or more non-transitory machine-readable media are also contemplated herein. One or more machines that perform or implement, or are configured, operable, or adapted to perform or implement operations comprising the steps of any methods described herein are also contemplated herein. Method steps described herein may be order independent and can be performed in parallel or in an order different from that described if possible to do so. Different method steps described herein can be combined to form any number of methods, as would be understood by one of ordinary skill in the art. Any method step or feature disclosed herein may be omitted from a claim for any reason. Certain well-known structures and devices are not shown in figures to avoid obscuring the concepts of the present disclosure. When two things are “coupled to” each other, those two things may be directly connected together, or separated by one or more intervening things. Where no lines or intervening things connect two particular things, coupling of those things is contemplated in at least one embodiment unless otherwise stated. Where an output of one thing and an input of another thing are coupled to each other, information sent from the output is received in its outputted form or a modified version thereof by the input even if the information passes through one or more intermediate things. Any known communication pathways and protocols may be used to transmit information (e.g., data, commands, signals, bits, symbols, chips, and the like) disclosed herein unless otherwise stated. The words comprise, comprising, include, including and the like are to be construed in an inclusive sense (i.e., not limited to) as opposed to an exclusive sense (i.e., consisting only of). Words using the singular or plural number also include the plural or singular number, respectively, unless otherwise stated. The word “or” and the word “and” as used in the Detailed Description cover any of the items and all of the items in a list unless otherwise stated. The words some, any and at least one refer to one or more. The terms may or can are used herein to indicate an example, not a requirement—e.g., a thing that may or can perform an operation, or may or can have a characteristic, need not perform that operation, or have that characteristic in each embodiment, but that thing performs that operation or has that characteristic in at least one embodiment. Unless an alternative approach is described, access to data from a source of data may be achieved using known techniques (e.g., requesting component requests the data from the source via a query or other known approach, the source searches for and locates the data, and the source collects and transmits the data to the requesting component, or other known techniques).
By way of example in
In some embodiments, the atmospheric sensors 14 include a reference pressure sensor. In other embodiments, a stand-alone reference pressure sensor (e.g., a weather station) is substituted for the transmitter, and the stand-alone reference pressure sensor includes: atmospheric sensors (e.g., a pressure sensor for measuring pressures, a temperature sensor for measuring temperatures); memory (e.g., storing instructions for computing reference-level pressures based on the measured pressures); processor(s) for executing instructions stored in the memory; and any suitable interface for communicating pressure data to other things (e.g., the mobile device and/or the server).
By way of example
By way of example
Certain aspects disclosed herein relate to estimating the positions of mobile devices e.g., where the position is represented in terms of: latitude, longitude, and/or altitude coordinates; x, y, and/or z coordinates; angular coordinates; or other representations. Various techniques to estimate the position of a mobile device can be used, including trilateration, which is the process of using geometry to estimate the position of a mobile device using distances traveled by different “positioning” (or “ranging”) signals that are received by the mobile device from different beacons (e.g., terrestrial transmitters and/or satellites). If position information like the transmission time and reception time of a positioning signal from a beacon is known, then the difference between those times multiplied by the speed of light would provide an estimate of the distance traveled by that positioning signal from that beacon to the mobile device. Different estimated distances corresponding to different positioning signals from different beacons can be used along with position information like the locations of those beacons to estimate the position of the mobile device. Positioning systems and methods that estimate a position of a mobile device (in terms of latitude, longitude and/or altitude) based on positioning signals from beacons (e.g., transmitters, and/or satellites) and/or atmospheric measurements are described in co-assigned U.S. Pat. No. 8,130,141, issued Mar. 6, 2012, and U.S. Pat. Pub. No. 2012/0182180, published Jul. 19, 2012. It is noted that the term “positioning system” may refer to satellite systems (e.g., Global Navigation Satellite Systems (GNSS) like GPS, GLONASS, Galileo, and Compass/Beidou), terrestrial transmitter systems, and hybrid satellite/terrestrial systems.
This application claims priority to U.S. Provisional Patent Application No. 63/518,750, filed on Aug. 10, 2023, and entitled “Systems And Methods For Extending The Spatial Coverage Of A Reference Pressure Network”; which is hereby incorporated by reference for all purposes.
Number | Date | Country | |
---|---|---|---|
63518750 | Aug 2023 | US |