Obtaining positioning information from IoT devices
By dynamically generating location report plans, the transmission of location information is optimized based on the current location of IoT devices and environmental factors, solving the problem of location information interruption in fixed plans and achieving reliable location information transmission and power saving in various environments.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- QUALCOMM INC
- Filing Date
- 2024-09-23
- Publication Date
- 2026-05-05
AI Technical Summary
In the prior art, fixed location reporting schemes cannot effectively account for interruptions, damage or failures in wireless communication that cause interruptions or failures in device location information, especially when inside buildings, tunnels or when the battery is depleted, and cannot provide reliable location information.
The server generates a dynamic location reporting plan that takes into account factors such as the current location of IoT devices, their travel routes, traffic conditions, and battery status. It optimizes the reporting frequency and method of location information, including non-periodic, on-demand reporting, and standby mode to save power.
It enables reliable transmission of location information for IoT devices under various environmental and power constraints, reduces power consumption, and improves the reliability of location information and the tracking efficiency of devices.
Smart Images

Figure CN121986503A_ABST
Abstract
Description
[0001] Related applications
[0002] This application claims the benefit of Indian Application No. 202341071522, filed on October 19, 2023, entitled “OBTAINING POSITION INFORMATION FROM AN IOT DEVIC”, which has been assigned to the assignee of this application and is incorporated herein by reference in its entirety. Technical Field
[0003] This disclosure relates generally to the field of obtaining location information from a device, and more specifically to determining a reporting plan for obtaining location information from a device. Background Technology
[0004] Related technical descriptions
[0005] Devices moving from one location to another can provide location information based on fixed reporting schedules and the use of wireless communication. However, the use of fixed schedules may fail to account for various factors associated with interruptions, disruptions, or malfunctions in wireless communication. Therefore, it is desirable to address this shortcoming, as well as some other drawbacks associated with location reporting. Summary of the Invention
[0006] The embodiments described herein relate to using a reporting schedule to obtain location information from an Internet of Things (IoT) device. More specifically, according to this disclosure, a method for obtaining location information from an IoT device may include having a server determine a reporting schedule for obtaining location information from the IoT device, wherein the reporting schedule is at least partially based on the current location of the IoT device. The method may also include having the server cause the IoT device to obtain location information based on the reporting schedule, and receiving the location information obtained by the IoT device at the server.
[0007] Another example method for obtaining location information by an IoT device may include the IoT device receiving a reporting plan from a server for obtaining location information from the IoT device, wherein the reporting plan is at least partially based on the IoT device's current location. The method may also include the IoT device obtaining location information based on the reporting plan, and the IoT device sending the location information to the server.
[0008] The server according to this disclosure may include one or more memories and one or more processors communicatively coupled to the memories. The one or more processors may be configured to determine a reporting schedule for obtaining location information from an IoT device, wherein the reporting schedule is at least partially based on the current location of the IoT device, and are further configured to enable the IoT device to obtain location information based on the reporting schedule and to receive the location information obtained by the IoT device.
[0009] The apparatus according to this disclosure may include: components for determining a reporting plan for obtaining location information from an IoT device, wherein the reporting plan is at least partially based on the current location of the IoT device; components for enabling the IoT device to obtain the location information based on the reporting plan; and components for receiving the location information obtained by the IoT device.
[0010] This invention is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used alone to define the scope of the claimed subject matter. This subject matter should be understood with reference to the appropriate portions of this disclosure, any or all of the accompanying drawings, and each claim. The foregoing, as well as other features and examples, will be described in more detail in the following description, claims, and drawings. Attached Figure Description
[0011] The following detailed description relates to some example embodiments illustrated in the accompanying drawings. However, it must be understood that this description is equally relevant to various other variations of the embodiments described herein. Such embodiments may utilize objects and / or components other than those illustrated in the drawings. It must also be understood that the same reference numerals used in the various drawings indicate similar or identical objects.
[0012] Figure 1 An example system including an IoT device is shown according to this disclosure, which is configured to provide location information based on a location reporting scheme.
[0013] Figure 2 Examples are shown that can be included in Figure 1 Some example components in the IoT device shown.
[0014] Figure 3 A list of example factors that may be associated with a location reporting program according to this disclosure is shown.
[0015] Figure 4 A first example format for a location reporting program is shown according to this disclosure.
[0016] Figure 5 A second example format for a location reporting program is shown in accordance with this disclosure.
[0017] Figure 6 A first example scenario related to the movement speed of an IoT device along its path is illustrated.
[0018] Figure 7 Example scenarios related to the availability of location determination technologies and alternative location determination technologies along the travel path of IoT devices are illustrated.
[0019] Figure 8 Another example scenario is illustrated in relation to the availability of location determination technologies and alternative location determination technologies along the travel path of IoT devices.
[0020] Figure 9 A block diagram 900 according to this disclosure is shown, illustrating an example functional implementation of a location estimation report generation scheme.
[0021] Figure 10 A flowchart of a method for obtaining location information from an IoT device according to this disclosure is shown.
[0022] Figure 11 Examples are shown that can be included in Figure 1 Some example components in the server shown. Detailed Implementation
[0023] These examples will now be described with reference to the accompanying drawings, which form part of a number of exemplary examples. While specific examples of implementing one or more aspects of this disclosure are described below, other examples may be used and various modifications may be made without departing from the scope of this disclosure or the spirit of the appended claims.
[0024] Throughout this specification, the reference to "an example" or "an example" means that a particular feature, structure, or characteristic described in connection with the example is included in at least one example of the claimed subject matter. Therefore, the phrases "an example" and "an example" appearing throughout the specification do not necessarily refer to the same example. Furthermore, the particular features, structures, or characteristics described herein may be combined in one or more examples.
[0025] Depending on the specific example, the methodology described herein may be implemented through various components depending on the application. For example, such a methodology may be implemented in hardware, firmware, software, and / or combinations thereof. In a hardware implementation, for example, the processing unit may be implemented within one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, electronic devices, other device units designed to perform the functions described herein, and / or combinations thereof.
[0026] As used herein, the term “device” is not intended to be exclusive or limited to any particular type of device. More specifically, the phrases “Internet of Things” and “IoT device” as used herein generally refer to any device that is portable, or that can be attached to any portable object and supports wireless communication using any of a variety of communication formats. Communication typically involves providing location information of an IoT device to an entity, such as a server, which may be referred to herein as a “tracking process.” It must be understood that the term “location” as used herein is interchangeable with terms such as “location” and “coordinates.” Phrases such as “location information,” “location information,” and “context determination” are used interchangeably herein and are generally associated with actions such as obtaining location estimates and context information related to the IoT device’s route of travel. As described in more detail below, context determination can be performed by a processor based on various inputs, such as signals received from one or more GNSS satellite vehicles, information received from one or more map data sources, information received from one or more traffic information sources, information received from one or more crowdsourced information systems, and / or information received from one or more sensors.
[0027] The location reporting scheme generated and executed according to this disclosure addresses various shortcomings in existing practices of fixed location reporting schemes using wireless communication. Fixed schemes may fail to account for various factors that could cause tracking devices to experience interruptions or failures in providing location information. Some example factors may include lost wireless communication between the device and the location information providing source (e.g., satellites of a Global Navigation Satellite System), lost wireless communication between the device and the management entity (e.g., a server computer), and depletion of the device's battery due to heavy use. For example, if the device is in a location where location information (e.g., GNSS signals) is unavailable at all times (inside a building, in a tunnel, in severe weather, etc.), lost wireless communication between the device and the location information source may occur. For example, if the device is in a location where wireless coverage (e.g., cellular coverage) is unavailable at all times (inside a building, outside the coverage area of a base station, etc.), lost wireless communication between the device and the management entity may occur. For example, when the reporting frequency is set improperly (e.g., too high), when the device travels for a long time on its route (e.g., due to traffic congestion), when the device stops at a location for an extended period (e.g., staying in a warehouse for several days, but the device may continue to report the location redundantly), and / or when the reporting device travels a long distance and the battery is not replenished in time, the device's battery may be depleted due to prolonged or heavy use.
[0028] Such drawbacks that may be associated with existing practices can be addressed by using a reporting scheme for conveying location information according to this disclosure. Location information can be used for various purposes, including tracking objects. Creating and implementing such a reporting scheme offers several advantages. For example, the reporting scheme can be based on various factors that might lead to interruptions or malfunctions of the tracking equipment when using a fixed scheme in existing practices. Furthermore, the reporting scheme can be created, modified, and used dynamically (such as creating a customized scheme for each of multiple routes of travel for the tracking equipment). Further details relating to a location reporting scheme according to this disclosure are provided below.
[0029] Figure 1 An example system 100 including an IoT device 110 according to this disclosure is shown, the IoT device being configured to provide location information based on a location reporting program. In one example, the IoT device 110 may be attached to an object 105, which can be any type of object, such as, for example, a package being transported from one location to another, or an asset being moved from one location to another. In another example, the IoT device 110 may be included within a trackable object 105.
[0030] IoT device 110 is configured to receive wireless signals from entities such as, for example, GNSS satellite launch vehicle 115, map data source 130, traffic information source 135, crowdsourcing information system 140, and server 125. More specifically, IoT device 110 is configured to receive wireless signals from GNSS satellite launch vehicle 115, which can be used by IoT device 110 to determine its location. GNSS satellite launch vehicle 115 can be any of various types of satellite launch vehicles from various types of satellite systems. An example satellite launch vehicle is a Global Positioning System (GPS) satellite, which can provide GPS signals to IoT device 110, which can be used by IoT device 110 to determine its location in GPS coordinates. Other satellite launch vehicles can provide other types of signals that can be used by IoT device 110 to determine its location in other formats. These other satellite launch vehicles can belong to any of various other systems, such as, for example, GLONASS, Galileo, and BeiDou. Additional details relating to satellite launch vehicles and the satellite signal-based positioning process are provided below.
[0031] IoT device 110 is also configured to receive wireless signals from other sources, which can be used in some scenarios to determine the location of IoT device 110. These wireless signals can be received directly by IoT device 110 and / or via network 120. Network 120 can be any type of network, such as, for example, a cellular network, a Wi-Fi network, or a wide area network (e.g., the Internet). Additional details regarding these other sources and the location determination process based on signals provided by these sources are provided below.
[0032] In the example implementation, IoT device 110 is configured to access a map data source 130 (such as, for example, Google Maps). ® and MapQuest ® The system receives wireless signals for IoT device 110 to determine its geographical location. In an example scenario, IoT device 110 can use information received from map data source 130 to obtain its location information along its travel route. Then, while moving along the travel route, IoT device 110 can transmit the location information to server 125 during tracking.
[0033] According to this disclosure, server 125 can also be configured to receive information from map data source 130 and use that information for various purposes. In an example implementation, according to this disclosure, server 125 can use map information to assess the current or proposed route of IoT device 110 and to create, modify, or archive location report plans for IoT device 110. Additional details relating to server 125 are provided below.
[0034] IoT device 110 can also be configured to wirelessly receive information from traffic information source 135. IoT device 110 can use the received information to determine traffic conditions along its route. In one example implementation, IoT device 110 may utilize a location reporting plan that considers traffic conditions along one or more of its routes before encountering traffic. In another example implementation, IoT device 110 may utilize a location reporting plan that considers traffic conditions along one or more of its routes in real time and can dynamically modify the location reporting plan based on traffic conditions.
[0035] IoT device 110 can also be configured to wirelessly receive information from crowdsourcing information system 140. Information received from crowdsourcing information system 140 may include, for example, real-time traffic information, real-time weather information, real-time accident information, and other real-time information that may potentially affect the movement of IoT device 110 along its route. According to this disclosure, server 125 can use crowdsourcing information to evaluate the current or proposed route of IoT device 110 and to create, modify, or archive location reporting plans for IoT device 110. According to this disclosure, IoT device 110 can also use crowdsourcing information to modify its route and / or modify its location reporting plan.
[0036] In an example implementation, server 125 can configure IoT device 110 to receive a location report schedule from server 125 when IoT device 110 is on its travel route. Server 125 can perform this configuration before IoT device 110 is deployed on its travel route.
[0037] In an example implementation, server 125 may be provided as one or more computing devices having hardware, software, and firmware configured to communicate with IoT device 110 to provide various services associated with the location estimation scheme according to this disclosure. These services may include, for example, creating a location estimation scheme that can be implemented by IoT device 110 before or during its movement along one or more routes, and / or performing / supporting tracking operations of IoT device 110 along one or more routes based on the location estimation scheme.
[0038] Performing / supporting tracking operations for IoT device 110 may include, for example, determining the estimated location of IoT device 110 and / or providing data (e.g., “auxiliary data”) to IoT device 110 to facilitate location measurement and / or location determination of IoT device 110.
[0039] In another example implementation, server 125 can be provided in the form of a cloud computing platform for IoT. This platform can be provided by various cloud service providers, such as, for example, Amazon Web Services (AWS) and Azure (Microsoft).
[0040] Figure 2Examples of components that may be included in IoT device 110 are illustrated. These examples may include a battery 205, a processor 210, a memory 215, a GNSS receiver 220, hardware components 235, a ground location information system 240, and a wireless communication system 245. IoT devices are typically configured to include a limited number of components capable of performing one or more specialized operations. In an example embodiment according to this disclosure, IoT device 110 is explicitly configured to perform a limited set of operations, including transmitting location information based on a location reporting schedule. Therefore, various example components, particularly processor 210 and memory 215, are selected to have limited capabilities and perform a limited number of tasks, unlike, for example, a smartphone, which may contain a more powerful processor and larger memory configured to perform a large number of tasks, some of which may be complex. Memory 215 constitutes a non-transitory computer-readable medium storing instructions executable by processor 210 to perform various operations according to this disclosure.
[0041] Figure 2 The various example components shown can be communicatively coupled to each other via bus 230, which can be implemented in various ways, such as in the form of a simple data bus (e.g., an Ethernet bus or a computer bus (ISA, EISA, RS-232, etc.)).
[0042] Processor 210 may be, but is not limited to, a general-purpose processor, a special-purpose processor (such as a DSP chip, a graphics processing unit (GPU), an application-specific integrated circuit (ASIC), etc.) and / or other processors, processing structures, processing units or processing components.
[0043] GNSS receiver 220 receives positioning signals from one or more satellites (such as, for example, GNSS satellite carrier 115) via antenna 225. As IoT device 110 moves along its path, processor 210 can use the positioning signals to determine the location of IoT device 110 at any given time. The positioning signals received from GNSS satellite carrier 115 can be, for example, Global Positioning System (GPS) signals, Global Navigation Satellite System (GLONASS) signals, etc. ® The signals include Galileo, BeiDou, NAVIC (Indian Regional Navigation Satellite System), QZSS (Quasi-Zenith Satellite System) over Japan, IRNSS (Indian Regional Navigation Satellite System) over India, and BDS (BeiDou Navigation Satellite System) over China.
[0044] In some cases, the GNSS receiver 220 can be used with various augmentation systems, such as satellite-based augmentation systems (SBAS) that are associated with or otherwise enabled to be used with one or more global and / or regional navigation satellite systems, such as the Wide Area Augmentation System (WAAS), the European Geostationary Navigation Coverage Service (EGNOS), the Multifunctional Satellite Augmentation System (MSAS), and the Geographic Augmentation Navigation System (GAGAN).
[0045] As used herein, the term "GNSS receiver" may include hardware and / or firmware components configured to acquire GNSS measurements (measurements from GNSS satellites). Thus, in some embodiments, a GNSS receiver may include hardware (such as, for example, sensors) and firmware (such as, for example, a measurement engine executed by one or more processors, such as, for example, processor 210). GNSS receiver 220 may optionally also include a positioning engine that can be executed by one or more processors, such as, for example, processor 210.
[0046] The ground location information system 240 may include one or more wireless transmitters, receivers, and / or transceivers. Some example devices that may be included in the ground location information system 240 could be Bluetooth. ® Devices, IEEE 802.11 devices, IEEE 802.15.4 devices, Wi-Fi devices, WiMAX ™ Devices such as wide area network (WAN) devices, various cellular devices, and V2X communication devices enable the ground location information system 240 to communicate via a network and / or directly with other devices described herein. The ground location information system 240 may be permitted to transmit (send and receive) data and signaling with a network (e.g., via a WAN access point, cellular base station and / or other access node types, and / or other network components, computer systems, and / or any other electronic equipment described herein). Communication may be performed via a wireless communication antenna 255 configured to transmit and / or receive wireless signals.
[0047] In an example implementation, the ground location information system 240 may receive signals from a cellular communication network and / or a WiFi communication system. The processor 210 may execute firmware contained in memory 215 to determine the location of the IoT device 110 based on the received signals. In one case, the processor 210 may determine the location (e.g., latitude and longitude) of the IoT device 110 based on triangulation of cellular and / or WiFi signals. The triangulation process may be performed when GNSS receiver 220 detects that no GNSS signal is received (e.g., when the IoT device 110 is in a tunnel). For example, an HTML5 geolocation process may be used to detect latitude and longitude coordinates using GNSS signals (received via GNSS receiver 220 if GNSS signals are available), and if no GNSS signal is available, triangulation may be performed via cellular and / or WiFi signals.
[0048] The wireless communication system 245 can wirelessly communicate with the server 125 to perform actions such as, for example, receiving location reporting plans (new, updated, modified, revised location reporting plans, etc.), receiving queries for location estimates, receiving queries for the battery 205's power status, receiving route information (new, updated, modified, revised route information, etc.), transmitting location estimates, transmitting requests for location reporting plans, and / or responding to queries regarding the battery 205's power status. In an example embodiment, the wireless communication system 245 wirelessly communicates with the server 125 via antenna 250 and network 120. In an example embodiment, the wireless communication system 245 can be integrated with the ground location information system 240 to form a system that may be referred to as an integrated communication system. The integrated communication system may include hardware (receiver, transmitter, transceiver, antenna, etc.) configured to perform the functions of both the wireless communication system 245 and the ground location information system 240. In the example scenario, network 120 may be a cellular communication network, and the integrated communication system may be used to access the cellular communication network to obtain information that can be used to determine the location of IoT device 110 (e.g., via triangulation). The integrated communication system may also be used by IoT device 110 to communicate with server 125 via the cellular communication network.
[0049] Hardware component 235 may include various elements such as, for example, one or more sensors (e.g., GPS sensors), one or more digital signal processors (DSPs), and one or more application-specific integrated circuits (ASICs).
[0050] The battery 205 of the IoT device 110 is selected to provide power while the IoT device 110 moves along a travel route. The battery 205 may be a small battery (e.g., a coin cell battery) or a rechargeable battery that can only be recharged at certain times (before or after the IoT device 110 is placed along the travel route). According to this disclosure, battery usage is optimized based on the use of a location estimation scheme. For example, based on certain conditions such as those described below, the processor 210 may place the IoT device 110 into a power-off operation mode or a standby operation mode.
[0051] Figure 3 A list 300 of example factors that can be associated with a location reporting program according to this disclosure is shown. These example factors can be considered when creating a location reporting program for IoT device 110 and / or during the implementation of the location reporting program by IoT device 110. It must be understood that list 300 includes a non-exhaustive set of example factors that can be used in some specific embodiments. In some other specific embodiments, at least some of the factors shown in list 300 may be omitted, and / or other factors not shown in list 300 may be included in list 300.
[0052] The first example factor 305 relates to the current location of IoT device 110 on the route. In this example implementation, the current location of IoT device 110 is the starting point of the proposed route, and server 125 may be configured to generate a location report plan for IoT device 110 based on an assessment of the proposed route before IoT device 110 moves along the route. For example, the proposed route may include tunnels, warehouses, highways, unpaved rural roads, and / or elevated sections. For example, server 125 may obtain at least some of these details related to the proposed route from map data source 130. When IoT device 110 is located inside a tunnel (or warehouse), sending a location estimate to server 125 may be hindered or infeasible due to the structure of the tunnel (or warehouse) obstructing the transmission of wireless signals. Therefore, server 125 may be configured to consider this aspect when generating the location report plan, such as by providing guidance to processor 210 to place IoT device 110 into an inactive operating mode. When placed in an inactive operating mode, the wireless signal transmission of IoT device 110 can be interrupted in order to conserve battery power of battery 205.
[0053] When the current location of IoT device 110 is on a highway and wireless transmission is unimpeded, server 125 can consider the transmission of location estimates by IoT device 110 when formulating a location reporting schedule. In this scenario, the location reporting schedule may include a higher reporting frequency over a period corresponding to the movement of IoT device 110 on the highway. As IoT device 110 moves on the highway, location estimates may be periodically sent by IoT device 110 to server 125 at a repetitive frequency (e.g., every 5 minutes, every 15 minutes, or every hour).
[0054] Another example factor 310 relates to the rate of movement of the IoT device 110 along its route. The rate of movement can be affected by various factors. An example factor could be traffic conditions on a road that is part of the route on which the IoT device 110 is moving. Roads located within cities (such as a section of road in a city center, for example) may experience severe traffic congestion for various reasons, such as: a large number of vehicles on the road, one or more traffic accidents, applicable speed limits, construction work, and pedestrian traffic. The server 125 can be configured to consider such traffic conditions on other parts of the road and route based on traffic conditions at various times of day and / or week when generating a location reporting schedule. In this scenario, the location reporting schedule may include a lower reporting frequency over a period corresponding to the movement of the IoT device 110 along a section of road. A lower reporting frequency can be selected to conserve battery power of the battery 205.
[0055] Factor 315 relates to speed limits on one or more segments of the travel route of IoT device 110. The travel route may include, for example, a first segment of a highway with a first indicated speed limit, a second segment of an urban road with a second indicated speed limit, and a third segment of a rural road with a third indicated speed limit. Server 125 can be configured to consider such speed limits when generating a location reporting schedule. In this scenario, the location reporting schedule may include a first reporting frequency within a first time period corresponding to movement of IoT device 110 on the first segment, a second reporting frequency within a second time period corresponding to movement of IoT device 110 on the second segment, and a third reporting frequency within a third time period corresponding to movement of IoT device 110 on the third segment. Various reporting frequencies may be selected based on saving battery power of battery 205.
[0056] Factor 320 relates to environmental conditions in one or more segments of the travel route of IoT device 110. Environmental conditions may include, for example, weather conditions and infrastructure conditions. Regarding weather conditions, the travel route may include, for example, a first area experiencing a first weather condition (e.g., rain) at certain times of the year, a second area experiencing a second weather condition (e.g., strong winds) at certain times of the year, and so on. Weather conditions may affect wireless communication between IoT device 110 and server 125 (e.g., rain and severe weather may cause wireless communication interruptions). Regarding infrastructure, the first area of the travel route may be an open area allowing effective wireless communication, and the second area of the travel route may be a city center area with tall buildings that obstruct wireless communication. Server 125 may be configured to consider such environmental conditions when generating a location reporting plan. In this scenario, the location reporting plan may include a first reporting frequency within a first time period corresponding to the movement of IoT device 110 through an open area, and a second reporting frequency within a second time period corresponding to the movement of IoT device 110 through a city center area. Various reporting frequencies may be selected based on saving battery power of battery 205.
[0057] Factor 325 relates to the availability of location determination technology on one or more segments of the travel route of the IoT device 110. For example, the travel route may include a first area with good satellite signal reception, a second area with poor satellite signal reception, and a third area including tunnels where satellite signal reception is not possible. In this scenario, the location reporting schedule may include a first reporting frequency within a first time period corresponding to the movement of the IoT device 110 through the first area, a second reporting frequency within a second time period corresponding to the movement of the IoT device 110 through the second area, and a stop reporting status within a third time period corresponding to the movement of the IoT device 110 through the tunnel. Various reporting frequencies can be selected based on saving battery power of the battery 205.
[0058] Factor 330 relates to the availability of alternative positioning technologies on one or more segments of the travel route of the IoT device 110. For example, as indicated above, the travel route may include a third area that includes tunnels in which the IoT device 110 cannot receive GNSS signals. In this case, the reporting frequency may be based on the availability of alternative positioning technologies, such as, for example, based on signals received from a terrestrial network-based positioning system. The terrestrial system may be, for example, a cellular communication system.
[0059] Factor 335 relates to crowdsourced information associated with the travel route of IoT device 110. In an example implementation, the crowdsourced information may be obtained from crowdsourcing information system 140. Information received from crowdsourcing information system 140 may include, for example, real-time traffic information, real-time weather information, real-time accident information, and other real-time information that may potentially affect the movement of IoT device 110 along the travel route. According to this disclosure, server 125 may use the crowdsourced information to evaluate the current or proposed travel route of IoT device 110 and to create, modify, or archive location reporting plans for IoT device 110. According to this disclosure, IoT device 110 may also use the crowdsourced information to modify its travel route and / or modify its location reporting plan.
[0060] Factor 340 relates to the battery state of the battery 205 of the IoT device 110. The battery state can be provided to the server 125 at any time, such as, for example, before the IoT device 110 begins its journey or at any of the various times and / or locations along the journey. According to this disclosure, the server 125 can use the battery state of the battery 205 to assess the current or proposed journey of the IoT device 110 and to create, modify, or archive location reporting plans for the IoT device 110. According to this disclosure, the IoT device 110 can also use the battery state of the battery 205 to modify its journey and / or modify its location reporting plan.
[0061] Factor 345 is related to the distance traveled along the route of IoT device 110. According to this disclosure, server 125 can use the battery state of battery 205 to evaluate the current or proposed route of IoT device 110 based on the distance traveled along the route, and to create, modify, or archive location report plans for IoT device 110.
[0062] Factor 350 relates to the travel time of IoT device 110 on its travel route. According to this disclosure, server 125 can use the battery state of battery 205 to evaluate the travel time of IoT device 110 on the current or proposed travel route based on the travel time on the travel route, and to create, modify, or archive location report plans for IoT device 110.
[0063] Factor 355 relates to historical data. According to this disclosure, server 125 may use historical data obtained from previous travels of IoT device 110 and / or one or more other IoT devices to create, modify, or archive location reporting plans for the travel route. Historical data may include, for example, historical data associated with any of the various factors shown in Listing 300.
[0064] Factor 360 involves the characteristics of the route. These characteristics may include, for example, road type (rural road, highway, expressway, etc.), terrain (hills, mountains, plains, rugged, winding, straight, tunnels, etc.), geographical location of the route (county, state, district, etc.), and distance of one or more routes (length of rural roads, length of sloping roads, etc.).
[0065] Figure 4 A first example format for a location reporting schedule according to this disclosure is shown. The first example format is shown in the form of a list 400, which can be associated with a location estimation reporting frequency defined based on time. More specifically, list 400 indicates a location reporting schedule based on a set of time periods. In a first example embodiment, this set of time periods begins timing from the starting point of the travel route of IoT device 110 and continues until IoT device 110 completes its journey at the end point of the travel route. In a second example embodiment, this set of time periods can continue over a period corresponding to a portion of the travel route of IoT device 110. This portion of the travel route may correspond to, for example, one day of a travel route traversed by IoT device 110 over multiple days. In the example embodiment, list 400 may be generated by an entity such as, for example, server 125. The generation of list 400 may be performed by the processor of server 125 based on executing code and / or instructions stored in the memory of server 125. According to this disclosure, list 400 can be stored in the memory 215 of IoT device 110 in the form of a reporting plan and executed by the processor 210 of IoT device 110 for performing tracking operations.
[0066] Column 405 shows an example list of time periods corresponding to the time schedule, and column 410 shows a list of location estimation reporting frequencies corresponding to the location reporting schedule. In the illustrated examples, the various example time periods indicated in column 405 are different from each other and are based on UTC. For example, the first time period shown in row 415 lasts from 07:10:15 UT to 08:05:10 UT, the second time period shown in row 420 lasts from 08:05:11 UT to 09:07:15 UT (different from the first time period), and so on. The first location estimation reporting frequency corresponding to the first time period is defined as a 5-minute interval, and the second location estimation reporting frequency corresponding to the second time period is defined as a 15-minute interval.
[0067] The third time period shown in line 425 lasts from 09:07:16 UT to 11:03:07 UT, and the corresponding location estimation reporting frequency is defined as a 2-minute interval.
[0068] The fourth time period shown in line 430 lasts from 11:03:08 UT to 12:00:00 UT, and the corresponding location estimation reporting frequency is defined as “aperiodic”. As used herein, the term “aperiodic” indicates that the IoT device 110 is configured to provide location estimates intermittently while moving along the route during the fourth time period.
[0069] The fifth time period shown in line 435 lasts from 12:00:01 UT to 13:06:09 UT, and the corresponding location estimation reporting frequency is defined as "on demand". In this case, IoT device 110 is configured to provide location estimation in response to a query sent to IoT device 110 by server 125 during the fifth time period when IoT device 110 is moving on its route.
[0070] The sixth time period shown in line 440 lasts from 13:06:10 UT to 16:30:00 UT, and the corresponding location estimation reporting frequency is defined as "standby mode". When in standby mode, IoT device 110 is configured to stop sending location estimates to server 125 and conserve battery power. Conserving battery power may include configuring battery 205 to power a limited number of components in IoT device 110 (e.g., powering only the receiver to receive messages from server 125).
[0071] The seventh time period shown in line 445 lasts from 16:30:01 UT to 23:00:00 UT, and the corresponding location estimation reporting frequency is defined as an hourly interval.
[0072] The eighth time period shown in line 450 lasts from 23:00:01 UT to 23:49:05 UT, and the corresponding location estimation reporting frequency is defined as "power-off mode". When placed in power-off operation mode, IoT device 110 is configured to stop sending location estimates to server 125 and conserve battery power by shutting down all operations of IoT device 110. Additional time periods (not shown) may be included in list 400.
[0073] It must be understood that the number of time periods, duration of time periods, location estimation reporting frequency, and sequence of time periods indicated in Listing 400 are merely examples. In another specific implementation, time periods may be indicated in different formats, two or more time periods may continue over the same time period, each location estimation reporting frequency may be indicated in a different format, and / or two or more location estimation reporting frequencies may be the same.
[0074] The various time periods and / or location estimation reporting frequencies shown in List 400 can be determined by server 125 based on various factors, such as those shown in List 300 above. More specifically, for example, a first location estimation reporting frequency (5-minute interval) corresponding to the first time period shown in row 415 can be selected based on a route segment corresponding to a city road where traffic congestion is historically known during the first time period. A location estimation reporting frequency (non-periodic) corresponding to the fourth time period shown in row 430 can be selected based on a route segment including a tunnel in which the IoT device 110 cannot receive satellite signals. A location estimation reporting frequency (per hour) corresponding to the seventh time period shown in row 445 can be selected based on the route segment being a long and desolate road.
[0075] Figure 5 A second example format for a location reporting schedule according to this disclosure is shown. This example format is shown in the form of a list 500, which can be associated with a location estimation reporting frequency defined based on travel segments. More specifically, list 500 indicates a location reporting schedule based on a set of travel segments. In one example embodiment, the travel route of IoT device 110 may be divided into a set of travel segments based on various factors, such as those included in, for example, list 300 above. In the example embodiment, list 500 may be generated by an entity such as, for example, server 125. The generation of list 500 may be performed by the processor of server 125 based on executing code and / or instructions stored in the memory of server 125. According to this disclosure, list 500 may be stored in the memory 215 of IoT device 110 in the form of a location reporting schedule and executed by the processor 210 of IoT device 110 for performing tracking operations.
[0076] Column 505 shows an example list of travel segments corresponding to the travel route, and column 510 shows a list of location estimation reporting frequencies corresponding to the location reporting schedule. In an example embodiment, the various example travel segments indicated in column 505 are equidistant. In another example embodiment, two or more of the various example travel segments indicated in column 505 may differ in length relative to each other. In the illustrated example, a first location estimation reporting frequency (shown in row 515) corresponding to a first travel segment is defined as a 10-minute interval, and a second location estimation reporting frequency (shown in row 520) corresponding to a second travel segment is defined as a 2-minute interval.
[0077] The third travel segment shown in line 525 has a corresponding location estimation report frequency defined as a 20-minute interval.
[0078] The fourth travel segment shown in line 530 has a corresponding location estimation reporting frequency defined as “on demand”. As used herein, the phrase “on demand” indicates that IoT device 110 is configured to provide location estimation in response to a query sent to IoT device 110 by server 125 when IoT device 110 moves on the fourth travel segment of the travel route.
[0079] The fifth travel segment shown in line 535 has a corresponding location estimation reporting frequency defined as “aperiodic.” As used herein, the term “aperiodic” indicates that the IoT device 110 is configured to provide location estimates intermittently while moving on the fifth travel segment of the route.
[0080] The sixth travel segment shown in line 540 has a corresponding location estimation reporting frequency defined as an hourly interval.
[0081] The seventh travel segment shown in line 545 has a corresponding location estimation reporting frequency defined as a 5-minute interval.
[0082] In at least some specific implementations, list 500 may include the “standby operation mode” and “power-off operation mode” described in reference list 400 above.
[0083] The various travel segments and / or location estimation reporting frequencies shown in List 500 can be determined by server 125 based on various factors, such as those shown in List 300 above. More specifically, for example, a first location estimation reporting frequency (10-minute interval) corresponding to the first travel segment shown in line 515 can be selected based on a travel segment corresponding to an urban road where traffic congestion is historically known during the first travel segment. A location estimation reporting frequency (non-periodic) corresponding to the fifth travel segment shown in line 535 can be selected based on a travel segment including a tunnel in which the IoT device 110 cannot receive satellite signals. A location estimation reporting frequency (per hour) corresponding to the sixth travel segment shown in line 540 can be selected based on the travel segment being a long and desolate road. Another example factor that can be considered in determining the various travel segments and / or location estimation reporting frequencies is the battery state of battery 205. More specifically, if the remaining charge in battery 205 drops below a threshold charge level, the location estimation reporting frequency on one or more travel segments can be reduced. The threshold power level can be selected based on factors such as, for example, the power reserve capacity of battery 205, the duration of travel on the route, the duration of stay of IoT device 110 at an intermediate location on the route (e.g., in a warehouse or unloading area), and the distance from the intermediate location of IoT device 110 on the route to the destination of the route.
[0084] Figure 6An example scenario relating to the movement speed of IoT device 110 along its travel path is illustrated. References above include... Figure 3 Factor 310 in the list of example factors 300 described in the image describes some details related to movement rate. As mentioned above, roads located within cities (such as a section of road in the city center, for example) may experience severe traffic congestion due to a variety of reasons, such as: a large number of vehicles on the road, one or more traffic accidents, applicable speed limits, construction work, and pedestrian traffic. Server 125 can be configured to consider such traffic conditions on roads and other parts of the travel route based on traffic conditions at various times of day and / or week when generating a location reporting plan. In this scenario, the location reporting plan may include a lower reporting frequency for a period of time corresponding to the movement of IoT device 110 on a section of road 605. A lower reporting frequency can be selected to conserve battery power of battery 205.
[0085] In the example scenario, IoT device 110 is located in a vehicle, which is Figure 1 The object 105 shown is stationary or moving slowly due to traffic volume on this road 605. In one embodiment, IoT device 110 may execute the location reporting plan shown in list 400 above. List 400 may have been generated by server 125 and provided to IoT device 110 before the start of travel on the route. At least one of the various time periods shown in column 405 may be based on traffic information provided to server 125 by traffic information source 135. For example, IoT device 110 may be configured to execute the fourth time period (11:03:08 UT to 12:00:00 UT) shown in row 430 and / or the fifth time period (12:00:01 UT to 13:06:09 UT) shown in row 435, which correspond to lunchtime traffic in the downtown area on weekdays. For example, IoT device 110 may be configured to execute lists other than list 400 when moving on road 605 during weekends. This other list may be similar in format to list 400, but may have various other time periods (duration, number of time periods, etc.) and may correspond to various other travel times (different months, different seasons, etc.). In another specific implementation, server 125 can modify list 400 based on traffic information obtained by IoT device 110 and / or traffic information source 135 when IoT device 110 travels on this road 605 at a later time (the next day, the next week, etc.) to generate a modified location report plan or a new modified location report plan.
[0086] In another implementation, IoT device 110 may execute the location reporting plan shown in list 500 above. List 500 may have been generated by server 125 and provided to IoT device 110 before travel on the route begins. This road 605 may correspond to, for example, segment 5 shown in column 505 of list 500. In this case, IoT device 110 executes a non-periodic location estimation reporting plan corresponding to segment 5. In a specific implementation, server 125 may generate a modified location reporting plan or a new modified location reporting plan by modifying list 500 based on traffic information obtained by IoT device 110 and / or traffic information source 135 as IoT device 110 travels on this road 605. For example, list 500 may be modified by changing the travel distance corresponding to one or more segments, changing the position of one or more segments on the route, and / or changing the number of segments on the route.
[0087] Figure 7 Example scenarios related to the availability of location determination technology and alternative location determination technology along the travel path of IoT device 110 are illustrated. (See above for reference.) Figure 3 Factors 325 and 330 in List 300 describe some details related to the availability of positioning technologies and alternative positioning technologies. Factor 325 relates to the availability of positioning technologies on one or more segments of the travel route of IoT device 110. As described above, the travel route may include a first area with good satellite signal reception, a second area with poor satellite signal reception, and a third area including tunnels where satellite signal reception is not possible. The positioning reporting schedule may include a first reporting frequency for a first time period corresponding to the movement of IoT device 110 through the first area, a second reporting frequency for a second time period corresponding to the movement of IoT device 110 through the second area, and a stop reporting status for a third time period corresponding to the movement of IoT device 110 through the tunnel. Various reporting frequencies may be selected based on saving battery power of battery 205.
[0088] Figure 7 The example scenario shown corresponds to a third area including tunnel 705, in which IoT device 110 cannot receive satellite signals. In this scenario, the location estimation reporting frequency may be based on the availability of alternative location determination technologies, such as location information obtained, for example, through interaction with a terrestrial network-based positioning system 710.
[0089] Figure 8Another example scenario relating to the availability of location determination techniques and alternative location determination techniques along the travel route of IoT device 110 is illustrated. The vehicle is traveling on an open road, the sky is clear, and good signals are received from the GNSS satellite carrier 115. In this scenario, the location estimation reporting frequency based on satellite signal reception may be higher than the location estimation reporting frequency used by IoT device 110 when providing location estimation via the aforementioned terrestrial network-based positioning system 710.
[0090] Figure 9 A block diagram 900 according to this disclosure is shown, illustrating an example functional implementation of a location estimation report generation scheme. This implementation can be executed, for example, by a processor of server 125 based on the execution of code and / or instructions stored in the memory of server 125. More specifically, scenario determination 910 can be performed by a processor based on various inputs, such as, for example, signals received from GNSS satellite vehicle 115, information received from map data source 130, information received from traffic information source 135, information received from crowdsourcing information system 140, and / or information received from sensor 905. The operations associated with GNSS satellite vehicle 115, map data source 130, traffic information source 135, and crowdsourcing information system 140 have been described above.
[0091] The information received from sensor 905 can be based on various types of sensors provided in various ways. Some example sensors that may be provided in IoT device 110 and / or on object 105 may include one or more cameras, microphones, gyroscopes, accelerometers, microelectromechanical systems (MEMS), inertial sensors (IMU), magnetometers, altimeters, proximity sensors, optical sensors, and barometers.
[0092] In the example process, as part of scenario determination 910, time period determination 915 can be performed by server 125 based on information obtained from traffic information source 135. Traffic information source 135 may contain information obtained from various sources, including, for example, when traveling on one or more routes (such as those mentioned above). Figure 6 Information obtained from IoT device 110 while moving along a described route. Traffic information source 135 may also obtain information from sources such as agencies that monitor traffic on various roads (e.g., transportation departments). In another example process, time period determination 915 may be performed by server 125 based on information obtained from map data source 130, such as, for example, the road type (highway, tunnel, rural road, etc.) that is part of the route. Server 125 can use time period determination 915 to generate Figure 4As shown in column 405 of list 400 above. The reporting frequency 920 for each time period can be determined by server 125 based on time period determination 915, and is used for, for example, generating Figure 4 As shown in column 410 of list 400 above.
[0093] In the example process, for instance, as part of scenario determination 910, route determination 925 can be performed by server 125 based on information obtained from map data source 130. Server 125 can use route determination 925 to generate... Figure 5 As shown in column 505 of list 500 above. The reporting frequency 930 for each travel segment can be determined by server 125 based on travel segment determination 925, and used for, for example, generating Figure 5 As shown in column 510 of list 500 above.
[0094] Figure 10 A flowchart of a method for obtaining location information from an IoT device according to this disclosure is shown. [The flowchart describes the method for performing this process.] Figure 10 The functional components illustrated in one or more of the boxes shown may be performed by hardware and / or software components of a computer, such as, for example, server 125 as described herein. Figure 11 Example components that may be included in server 125 are illustrated herein and described in more detail below. The following description refers to the various example components described herein, but it must be understood that functionality may be performed by various other components that are functionally identical or similar.
[0095] At box 1005, functionality may include a reporting schedule determined by the server for obtaining location information from the IoT device, wherein the reporting schedule is at least partially based on the current location of the IoT device. In an example implementation, server 125 determines the reporting schedule for IoT device 110 based at least partially on the current location of the IoT device. This aspect is described above in reference list 500, which indicates reporting schedules based on a set of travel segments. For example, a location estimation reporting frequency at 10-minute intervals is based on the current location of IoT device 110 in travel segment 1, and an aperiodic location estimation reporting frequency is based on the current location of IoT device 110 in travel segment 5.
[0096] In another implementation, server 125 may determine a reporting schedule for IoT device 110 based at least in part on the current time during which IoT device 110 moves along its path. This aspect is described in reference list 500 above, which indicates a reporting schedule based on a set of time periods. For example, a location estimation reporting frequency at 15-minute intervals is based on a second time period (line 420), and an aperiodic location estimation reporting frequency is based on a fourth time period (line 430).
[0097] At box 1010, functionality may include enabling an IoT device to obtain location information based on a location reporting schedule by a server. In an example scenario, IoT device 110 may obtain location information in the form of one or more location estimates based on a location reporting schedule, for example, indicated in Listing 500 above.
[0098] At box 1015, functionality may include receiving location information obtained by the IoT device at a server. In an example scenario, server 125 may receive one or more location estimates from IoT device 110 based on a location reporting schedule, such as that indicated in Listing 500 above.
[0099] Figure 11 Examples of hardware and software components that may be included in server 125 are illustrated. These components can be used as described herein. For example, components can be configured to perform operations such as those indicated in flowchart 1000 above, generating... Figure 4 List 400 shown, and the generated Figure 5 The list shown is 500. It should be noted that... Figure 11 This is intended only to provide generalized examples of various components, any or all of which may be utilized as appropriate. In some instances, Figure 11 The illustrated components may be localized as a single physical device and / or distributed among various networked devices that may be located in different geographical locations. For example, in an exemplary embodiment, the wireless communication system 1140 described below may be part of a transceiver, and the processor 1105 (also referred to herein as a processing unit) may be packaged together with the memory 1110, the transceiver, and other components in a device that can perform various operations according to this disclosure.
[0100] Figure 11 The various example components shown can be hardware elements communicatively coupled to each other via bus 1120. Hardware elements may include one or more processors, such as, for example, processor 1105, which may include, but is not limited to, one or more general-purpose processors, one or more special-purpose processors (such as DSP chips, graphics processing units (GPUs), application-specific integrated circuits (ASICs), etc.) and / or other processors, processing architectures, processing units, or processing components. Figure 11As shown, depending on the desired functionality, some implementations may have a separate DSP 1115. Wireless communication-based location determination, wireless signal strength detection, and / or other operations can be provided in the processor 1105 and / or via the wireless communication system 1140 (discussed below). The components may also include one or more input devices 1130 and one or more output devices 1135, the input devices including, but not limited to, keyboards, touchscreens, touchpads, microphones, buttons, dial pads, switches, etc.; the output devices including, but not limited to, displays, light-emitting diodes (LEDs), speakers, etc. As will be understood, the types of input devices 1130 and output devices 1135 may depend on the types of components integrated with input devices 1130 and output devices 1135.
[0101] The components may also include a wireless communication system 1140, which may include, but is not limited to, a modem, a network card, an infrared communication device, a wireless communication device and / or a chipset (such as Bluetooth). ® Devices, BLE devices, IEEE 802.11 devices, IEEE 802.15.4 devices, Wi-Fi devices, WiMAX ™ Devices, wide area network (WAN) devices, and / or various cellular devices, etc., enable components to communicate via networks as described herein and / or directly with other devices as described herein. Wireless communication system 1140 permits the transmission (e.g., sending and receiving) of data and signaling with networks (e.g., via WAN access points, cellular base stations and / or other access node types, and / or other network components, computer systems, and / or any other electronic devices described herein). Communication may be performed via one or more wireless communication antennas 1150. Wireless communication antennas 1150 may include one or more discrete antennas, one or more antenna arrays, or any combination thereof.
[0102] Depending on the desired functionality, the wireless communication system 1140 may include separate transceivers, separate receivers and transmitters, or any combination of transceivers, transmitters and / or receivers, to communicate with base stations and other ground transceivers, such as wireless devices and access points. Components may communicate with various data networks, including a variety of network types. For example, a wireless wide area network (WWAN) may be a Code Division Multiple Access (CDMA) network, a Time Division Multiple Access (TDMA) network, a Frequency Division Multiple Access (FDMA) network, an Orthogonal Frequency Division Multiple Access (OFDMA) network, a Single Carrier Frequency Division Multiple Access (SC-FDMA) network, or a WiMAX network. ™ (IEEE 802.16), etc. CDMA networks can implement one or more Radio Access Technologies (RATs), such as CDMA2000. ®Broadband CDMA (WCDMA), etc. CDMA2000 ® Including IS-95, IS-2000, and / or IS-1256 standards. TDMA networks can implement Global System for Mobile Communications (GSM), Digital Advanced Mobile Telephone System (D-AMPS), or some other RAT. OFDMA networks can adopt Long Term Evolution (LTE), Advanced LTE, 5G NR, 6G, etc. (This information is from the 3rd Generation Partnership Project (3GPP)...) ™ The document describes 5G NR, LTE, Advanced LTE, GSM, and WCDMA. CDMA2000 ® It is described in documents from an organization called "3rd Generation Partnership Project 2" (3GPP2). 3GPP ™ The 3GPP2 documentation is publicly available. Wireless Local Area Networks (WLANs) can also be IEEE 802.11x networks, while Wireless Personal Area Networks (WPANs) can be Bluetooth. ® This applies to networks, IEEE 802.15x, or some other type of network. The techniques described herein can also be used in any combination of WWAN, WLAN, and / or WPAN.
[0103] In a specific implementation, a wired interface (not shown) may supplement or replace the wireless communication system 1140. The wired interface may be configured to allow the server 125 to communicate with one or more devices via a network, such as network 120 for performing various operations according to this disclosure. As used herein, the phrase "wired interface" includes communication media such as coaxial cables and transmission lines, and also includes optical fiber media (fiber optic cables).
[0104] The component may also include sensor 1125. Sensor 1125 may include, but is not limited to, one or more inertial sensors (IMUs) and / or other sensors (e.g., accelerometers, gyroscopes, cameras, magnetometers, altimeters, microphones, proximity sensors, light sensors, barometers, etc.), some of which may be used to supplement and / or facilitate the location determination of IoT device 110.
[0105] In an example implementation, the wireless communication system 1140 may include a GNSS receiver capable of receiving signals from one or more GNSS satellites. The GNSS receiver may use technologies associated with GNSS systems to extract the location of a device (such as, for example, the aforementioned IoT device 110) from GNSS systems such as GPS, GAL, GLONASS, the Quasi-Zenith Satellite System (QZSS) over Japan, the Indian Regional Navigation Satellite System (IRNSS) over India, and the BeiDou Navigation Satellite System (BDS) over China. Furthermore, the GNSS receiver may be used with various augmentation systems (e.g., satellite-based augmentation systems (SBAS)) that may be associated with or otherwise enabled to be used with one or more global and / or regional navigation satellite systems, such as Wide Area Augmentation System (WAAS), European Geostationary Navigation Coverage Service (EGNOS), Multifunctional Satellite Augmentation System (MSAS), and Geographic Augmentation Navigation System (GAGAN).
[0106] As used herein, the term "GNSS receiver" may include hardware and / or software components configured to acquire GNSS measurements (measurements from GNSS satellites). Thus, in some embodiments, a GNSS receiver may include (as software) a measurement engine executed by one or more processors, such as processor 1105, DSP 1115, and / or a processor within a wireless communication system 1140 (e.g., in a modem). The GNSS receiver may also optionally include a positioning engine, such as those described herein (e.g., PPE and / or SPE, which may be implemented using one or more of KF, weighted least squares (WLS), particle filters, etc.), which may use a PPP engine to determine a PPE solution and / or use PPP correction information to generate RTK correction information as described herein. The positioning engine may also be executed by one or more processors, such as processor 1105 and / or DSP 1115.
[0107] The component may also include memory 1110 and / or communicate with that memory. Memory 1110 may include machine-readable or computer-readable media, which may include, but is not limited to, local and / or network-accessible storage devices, disk drives, drive arrays, optical storage devices, solid-state storage devices (such as random access memory (RAM) and / or read-only memory (ROM)), which may be programmable, flash-updatable, etc. Such storage devices may be configured to implement any suitable data storage, including but not limited to various file systems, database structures, etc.
[0108] The memory 1110 of the component may also include software elements ( Figure 11 (Not shown in the document), including operating systems, device drivers, executable libraries, and / or other code (such as one or more applications), these software elements may include computer programs provided by various embodiments, and / or may be designed to implement methods provided by other embodiments, and / or configure systems provided by other embodiments, as described herein. By way of example only, one or more processes described with respect to the methods discussed above may be implemented as code and / or instructions in memory 1110 executable by processor 1105 and / or DSP 1115 within the component. In one aspect, such code and / or instructions may then be used to configure and / or adapt a general-purpose computer (or other device) to perform one or more operations of server 125 according to the described methods.
[0109] It will be apparent to those skilled in the art that basic variations can be made to suit specific requirements. For example, in some implementations, custom hardware may be used, and / or specific elements may be implemented in hardware, software (including portable software such as applets), or both. Furthermore, connections to other computing devices, such as network input / output devices, may be employed.
[0110] Referring to the accompanying drawings, components that may include memory may include non-transitory machine-readable media. As used herein, the terms "machine-readable media" and "computer-readable media" refer to any storage medium that participates in providing data that enables a machine to operate in a particular manner. In the embodiments provided above, various machine-readable media may be involved in providing instructions / code to a processor and / or other devices for execution. Additionally or alternatively, machine-readable media may be used to store and / or carry such instructions / code. In many specific embodiments, computer-readable media are physical and / or tangible storage media. Such media may take many forms, including but not limited to non-volatile and volatile media. Common forms of computer-readable media include, for example: magnetic and / or optical media, any other physical media with a hole pattern, RAM, programmable ROM (PROM), erasable PROM (EPROM), FLASH-EPROM, any other memory chip or memory cartridge, or any other medium from which a computer can read instructions and / or code.
[0111] The methods, systems, and apparatus discussed herein are examples. Various embodiments may omit, substitute, or add various processes or components as appropriate. For example, features described for some embodiments may be combined in various other embodiments. Different aspects and elements of embodiments may be combined in a similar manner. The various components in the accompanying drawings provided herein may be embodied in hardware and / or software. Furthermore, technology evolves, and therefore many elements are examples that do not limit the scope of this disclosure to those particular examples.
[0112] It has been proven convenient to sometimes refer to such signals as bits, information, values, elements, symbols, characters, variables, items, numbers, numerical symbols, etc., primarily for common use. However, it should be understood that all such terms or similar terms should be associated with appropriate physical quantities and are merely convenient labels. Unless otherwise specifically stated, it is as apparent from the above discussion that throughout this specification, discussions using terms such as “processing,” “calculating,” “determining,” “identifying,” “ascertaining,” “identifying,” “associating,” “measuring,” and “executing” refer to the actions or processes of a specific device such as a dedicated computer or similar dedicated electronic computing device. Therefore, in the context of this specification, a dedicated computer or similar dedicated electronic computing device is capable of manipulating or transforming signals, generally referred to as physical, electronic, electrical, or magnetic quantities in the memory, registers, or other information storage devices, transmitting devices, or display devices of the dedicated computer or similar dedicated electronic computing device.
[0113] As used herein, the terms “and” and “or” may include a variety of meanings, which are also contemplated, at least in part, depending on the context in which such terms are used. Generally, “or,” when used in relation to a list such as A, B, or C, is intended to mean A, B, and C (in the inclusive sense) and A, B, or C (in the exclusive sense). Furthermore, as used herein, the term “one or more” can be used to describe any feature, structure, or characteristic in the singular form, or to describe some combination of features, structures, or characteristics. However, it should be noted that this is merely an illustrative example, and the claimed subject matter is not limited to this example. Additionally, the term “at least one of…” when used in relation to a list such as A, B, or C can be interpreted as meaning any combination of A, B, and / or C, such as A, AB, AA, AAB, AABBCCC, etc.
[0114] Several implementations have been described, and various modifications, alternative constructions, and equivalents may be used without departing from the scope of this disclosure. For example, the above elements may be components of a larger system, where other rules may take precedence over the application of various implementations or otherwise modify the application of various implementations. Furthermore, multiple steps may be performed before, during, or after considering the above elements. Accordingly, the above description does not limit the scope of this disclosure.
[0115] Given this description, different implementations may include different combinations of features. Specific implementation examples are described in the following numbered clauses:
[0116] Clause 1 A method for obtaining location information from an IoT device, the method comprising: determining, by a server, a reporting plan for obtaining location information from the IoT device, wherein the reporting plan is at least partially based on the current location of the IoT device; causing the IoT device to obtain the location information based on the reporting plan by the server; and receiving, at the server, the location information obtained by the IoT device.
[0117] Clause 2, pursuant to the method described in Clause 1, wherein determining the reporting schedule is also based on the rate of movement of the IoT device along the route.
[0118] Clause 3, according to the method of any one of Clauses 1 to 2, wherein the determination of the reporting plan is also based on environmental conditions associated with at least one area along the route of travel.
[0119] Clause 4 pursuant to any one of Clauses 1 to 3, wherein determining the reporting plan is further based on the availability of location determination technology in at least one area along the route of travel.
[0120] Clause 5, the method according to any one of Clauses 1 to 4, wherein the positioning information includes one or more positioning estimates, the method further comprising: determining by the IoT device that the positioning estimates cannot be obtained using one or more Global Navigation Satellite System (GNSS) signals; and configuring the IoT device to use a terrestrial system to alternatively obtain the one or more positioning estimates.
[0121] Clause 6, the method according to any one of Clauses 1 to 4, wherein determining the location reporting plan based on the availability of the location determination technology in the at least one area on the route of travel includes: obtaining information associated with the availability of the location determination technology in the at least one area on the route of travel based on at least one of crowdsourced information or historical data.
[0122] Clause 7 pursuant to any one of Clauses 1 to 6, wherein the reporting plan includes the location estimation reporting frequency for each of the multiple segments of the route.
[0123] Clause 8 pursuant to any one of Clauses 1 to 7, wherein the reporting plan includes the location estimation reporting frequency for each of a plurality of time periods corresponding to the traversal route.
[0124] Clause 9, according to the method described in Clause 8, wherein receiving the location information obtained by the IoT device at the server includes: receiving a first set of location estimates based on a first location estimate reporting frequency within a first time period of the plurality of time periods, and a second set of location estimates based on a second reporting frequency within a second time period of the plurality of time periods.
[0125] Clause 10 pursuant to any one of Clauses 1 to 9, wherein the reporting program is further based on the state of the battery powering the IoT device.
[0126] Clause 11 The method according to any one of Clauses 1 to 10, wherein the reporting plan is also based on at least a portion of the distance traveled along the route.
[0127] Clause 12 pursuant to the method described in Clause 11, wherein the reporting plan is further based on a location estimate of a uniformly distributed number obtained on at least the portion of the route of travel.
[0128] Clause 13 The method according to any one of Clauses 1 to 10, wherein the reporting plan is also based on the time of travel over at least a portion of the route.
[0129] Clause 14 The method according to any one of Clauses 1 to 13, wherein the reporting plan is also based on at least one of crowdsourced information about the route or historical data associated with the route.
[0130] Clause 15 pursuant to the method described in Clause 14, wherein the historical data includes historical information associated with at least one of the IoT devices or another IoT device.
[0131] Clause 16 A method for obtaining location information from an IoT device, the method comprising: receiving, by the IoT device, a reporting plan for obtaining location information from a server, wherein the reporting plan is at least partially based on the current location of the IoT device; obtaining the location information by the IoT device based on the reporting plan; and sending the location information from the IoT device to the server.
[0132] Clause 17 pursuant to the method described in Clause 16, wherein the reporting program is further based on at least one of the IoT device’s rate of movement along the route or environmental conditions associated with at least one area along the route.
[0133] Clause 18 The method according to any one of Clauses 16 to 17, wherein the positioning information includes one or more positioning estimates, the method further comprising: determining by the IoT device that the positioning estimates cannot be obtained using one or more Global Navigation Satellite System (GNSS) signals; and configuring the IoT device to use a terrestrial system to alternatively obtain the one or more positioning estimates.
[0134] Clause 19 The method according to any one of Clauses 16 to 18, wherein the reporting plan includes at least one of the location estimation reporting frequency for each of a plurality of time periods corresponding to the traversed route or the location estimation reporting frequency for each of a plurality of travel segments of the route.
[0135] Clause 20, according to the method of Clause 19, further includes: the IoT device sending to the server a first set of location estimates based on a first location estimate reporting frequency within a first time period of the plurality of time periods, and a second set of location estimates based on a second reporting frequency within a second time period of the plurality of time periods.
[0136] Clause 21 The method according to any one of Clauses 16 to 20, wherein the reporting plan is also based on at least one of the following: travel time on at least a portion of the route, crowdsourced information about the route, or historical data associated with the route.
[0137] Clause 22 A server comprising: one or more memories; and one or more processors communicatively coupled to the one or more memories, the one or more processors being configured to: determine a reporting schedule for obtaining location information from an IoT device, wherein the reporting schedule is at least partially based on the current location of the IoT device; cause the IoT device to obtain the location information based on the reporting schedule; and receive the location information obtained by the IoT device.
[0138] Clause 23 pursuant to the server described in Clause 22, wherein the reporting program is also based on at least one of the IoT device’s rate of movement along the route or environmental conditions associated with at least one area along the route.
[0139] Clause 24 The server pursuant to any one of Clauses 22 to 23, wherein the one or more processors are further configured to configure the IoT device to determine that a positioning estimate cannot be obtained using one or more Global Navigation Satellite System (GNSS) signals; and to configure the IoT device to alternatively obtain the one or more positioning estimates using a terrestrial system.
[0140] Clause 25 A server pursuant to any one of Clauses 22 to 24, wherein the reporting schedule includes at least one of the location estimation reporting frequency for each of a plurality of time periods corresponding to the traversal route or the location estimation reporting frequency for each of a plurality of travel segments of the route.
[0141] Clause 26 A server pursuant to any one of Clauses 22 to 25, wherein the one or more processors are further configured to: configure the IoT device to send to the server a first set of location estimates based on a first location estimate reporting frequency within a first time period of the plurality of time periods, and a second set of location estimates based on a second reporting frequency within a second time period of the plurality of time periods.
[0142] Clause 27 The server pursuant to any one of Clauses 22 to 26, wherein the reporting program is further based on at least one of the following: travel time on at least a portion of the route, crowdsourced information about the route, or historical data associated with the route.
[0143] Clause 28 An apparatus comprising: components for determining a reporting plan for obtaining location information from an IoT device, wherein the reporting plan is at least partially based on the current location of the IoT device; components for enabling the IoT device to obtain the location information based on the reporting plan; and components for receiving the location information obtained by the IoT device.
[0144] Clause 29 The device described in Clause 28, wherein the reporting program is also based on at least one of the IoT device’s rate of movement along the route or environmental conditions associated with at least one area along the route.
[0145] Clause 30 The device pursuant to any one of Clauses 28 to 29, wherein the reporting schedule includes at least one of the location estimation reporting frequency for each of a plurality of time periods corresponding to the traversed route or the location estimation reporting frequency for each of a plurality of travel segments of the route.
Claims
1. A method for obtaining location information from an IoT device, the method comprising: The server determines a reporting plan for obtaining location information from the IoT device, wherein the reporting plan is based at least in part on the current location of the IoT device; The server enables the IoT device to obtain location information based on the reporting plan; as well as The location information obtained by the IoT device is received at the server.
2. The method of claim 1, wherein determining the reporting plan is further based on the movement rate of the IoT device along the route.
3. The method of claim 1, wherein determining the reporting plan is further based on environmental conditions associated with at least one area along the route of travel.
4. The method of claim 1, wherein determining the reporting plan is further based on the availability of location determination technology in at least one area along the route of travel.
5. The method of claim 4, wherein the positioning information includes one or more positioning estimates, and the method further includes: The IoT device determines that a positioning estimate cannot be obtained using one or more Global Navigation Satellite System (GNSS) signals; as well as The IoT device is configured to use a terrestrial system to alternatively obtain the one or more location estimates.
6. The method of claim 4, wherein determining the reporting plan based on the availability of the positioning technology in the at least one area along the route of travel further comprises: Information related to the availability of the location determination technology in at least one area along the travel route is obtained based on at least one of crowdsourced information or historical data.
7. The method of claim 1, wherein the reporting plan includes a location estimation reporting frequency for each of a plurality of travel segments of the route.
8. The method of claim 1, wherein the reporting plan includes a location estimation reporting frequency for each of a plurality of time periods corresponding to the traversal route.
9. The method of claim 8, wherein receiving the location information obtained by the IoT device at the server comprises: Receive a first set of location estimates based on a first location estimate reporting frequency within a first time period of the plurality of time periods, and a second set of location estimates based on a second reporting frequency within a second time period of the plurality of time periods.
10. The method of claim 1, wherein the reporting scheme is further based on the battery state of the battery powering the IoT device.
11. The method of claim 1, wherein the reporting plan is further based on at least a portion of the distance traveled along the route.
12. The method of claim 11, wherein the reporting plan is further based on a location estimate of a uniformly distributed number obtained on at least the portion of the route of travel.
13. The method of claim 1, wherein the reporting plan is further based on the travel time over at least a portion of the route.
14. The method of claim 1, wherein the reporting plan is further based on at least one of crowdsourced information about the route or historical data associated with the route.
15. The method of claim 14, wherein the historical data includes historical information associated with at least one of the IoT device or another IoT device.
16. A method for obtaining location information from an IoT device, the method comprising: The IoT device receives a reporting plan from the server for obtaining location information from the IoT device, wherein the reporting plan is based at least in part on the current location of the IoT device; The location information is obtained by the IoT device based on the reporting plan; as well as The IoT device sends location information to the server.
17. The method of claim 16, wherein the reporting plan is further based on at least one of the movement rate of the IoT device along the route or environmental conditions associated with at least one area on the route.
18. The method of claim 16, wherein the positioning information includes one or more positioning estimates, and the method further includes: The IoT device determines that a positioning estimate cannot be obtained using one or more Global Navigation Satellite System (GNSS) signals; as well as The IoT device is configured to use a terrestrial system to alternatively obtain the one or more location estimates.
19. The method of claim 16, wherein the reporting schedule includes at least one of a location estimation reporting frequency for each of a plurality of time periods corresponding to a traversed route or a location estimation reporting frequency for each of a plurality of travel segments of the route.
20. The method according to claim 19, further comprising: The IoT device sends a first set of location estimates based on a first location estimate reporting frequency within a first time period of the plurality of time periods, and a second set of location estimates based on a second reporting frequency within a second time period of the plurality of time periods to the server.
21. The method of claim 16, wherein the reporting plan is further based on at least one of the following: travel time on at least a portion of the route, crowdsourced information about the route, or historical data associated with the route.
22. A server, the server comprising: One or more memory units; and One or more processors, the one or more processors being communicatively coupled to the one or more memories, the one or more processors being configured to: Determine a reporting plan for obtaining location information from IoT devices, wherein the reporting plan is based at least in part on the current location of the IoT devices; The IoT device obtains location information based on the reporting plan; as well as Receive the location information obtained by the IoT device.
23. The server of claim 22, wherein the reporting program is further based on at least one of the movement rate of the IoT device along the route or environmental conditions associated with at least one area on the route.
24. The server of claim 22, wherein the one or more processors are further configured to: The IoT device is configured to determine that a positioning estimate cannot be obtained using one or more Global Navigation Satellite System (GNSS) signals; and The IoT device is configured to optionally use a ground system to obtain the one or more positioning estimates.
25. The server of claim 22, wherein the reporting schedule includes at least one of a location estimation reporting frequency for each of a plurality of time periods corresponding to a traversed route or a location estimation reporting frequency for each of a plurality of travel segments of the route.
26. The server of claim 25, wherein the one or more processors are further configured to: The IoT device is configured to send to the server a first set of location estimates based on a first location estimate reporting frequency within a first time period of the plurality of time periods, and a second set of location estimates based on a second reporting frequency within a second time period of the plurality of time periods.
27. The server of claim 22, wherein the reporting plan is further based on at least one of travel time on at least a portion of the route, crowdsourced information about the route, or historical data associated with the route.
28. An apparatus, the apparatus comprising: Components for determining a reporting plan for obtaining location information from an IoT device, wherein the reporting plan is at least partially based on the current location of the IoT device; Components for enabling the IoT device to obtain location information based on the reporting plan; and A component for receiving the location information obtained by the IoT device.
29. The device of claim 28, wherein the reporting program is further based on at least one of the IoT device’s rate of movement along the route or environmental conditions associated with at least one area along the route.
30. The device of claim 28, wherein the reporting schedule includes at least one of a location estimation reporting frequency for each of a plurality of time periods corresponding to a traversed route or a location estimation reporting frequency for each of a plurality of travel segments of the route.