WO2023020259A1 - Geofence control method and apparatus, storage medium, and electronic device - Google Patents

Geofence control method and apparatus, storage medium, and electronic device Download PDF

Info

Publication number
WO2023020259A1
WO2023020259A1 PCT/CN2022/109000 CN2022109000W WO2023020259A1 WO 2023020259 A1 WO2023020259 A1 WO 2023020259A1 CN 2022109000 W CN2022109000 W CN 2022109000W WO 2023020259 A1 WO2023020259 A1 WO 2023020259A1
Authority
WO
WIPO (PCT)
Prior art keywords
fence
task
data
geo
low
Prior art date
Application number
PCT/CN2022/109000
Other languages
French (fr)
Chinese (zh)
Inventor
谭志鹏
Original Assignee
上海瑾盛通信科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 上海瑾盛通信科技有限公司 filed Critical 上海瑾盛通信科技有限公司
Publication of WO2023020259A1 publication Critical patent/WO2023020259A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • FIG. 8 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
  • a geo-fence control method is proposed, which can be realized by relying on a computer program and can run on a geo-fence control device based on the von Neumann system.
  • the computer program can be integrated in the application, or run as an independent utility application.
  • the geofence control device may be a terminal device, including but not limited to: personal computer, tablet computer, handheld device, vehicle device, wearable device, computing device or other processing device connected to a wireless modem.
  • S101 Determine a target business operation for the geo-fence.
  • the application processor is usually used as the main processor, that is to say, complex data related to geo-fence business operation scenarios All or most of the processing is handled by the application processor. Even if it involves a low-power controller (which can be SensorHub) to obtain relevant underlying sensor data in the geofencing business, the low-power controller only realizes the sensing data The preliminary processing of the algorithm, while the final complex algorithm data processing such as algorithm application is performed on the application processor side.
  • a low-power controller which can be SensorHub
  • the business processing tasks corresponding to the business operation response process include at least a geo-fence registration task, a geo-fence detection task, a geo-fence update task, a geo-fence trigger task, a geo-fence management task, a geo-fence One of the detection tasks.
  • the low-power controller queries the cloud network side for the relevant network geo-fence data of the area in the included independent operating system, that is, the network geo-fence data, such as directly to the network side to obtain geofence data, or electronic devices can trigger the application processor to obtain geofence data from the network side through a low-power controller, etc.
  • the geofence data can be based on the longitude and latitude fence data of the global positioning system satellite network; it can be based on The fence data corresponding to the virtual border created by the radio frequency identifier this time, such as WiFi geofence data.
  • the geofence update task may at least include the following aspects:
  • the geofence can correspond to a data expiration period.
  • the low-power controller regularly queries the corresponding network geofence data from the network side through the independent operating system according to the data expiration period specified by the service applicant, and triggers the process regularly. Including but not limited to: obtaining the network geo-fence data directly from the network side, or the electronic device can trigger the application processor to obtain the network geo-fence data from the network side through the low-power controller.
  • the independent system of the low-power controller directly responds to the start command, and starts to locate and detect whether the conditions represented by the fence are met, such as whether the time and location of the geo-fence start are met.
  • the geofence detection task may at least include the following aspects:
  • the independent system of the low-power controller performs matching to determine the geographic location corresponding to the network base station signal according to the queried network base station signal and the registered network positioning database (collective data representing the corresponding relationship between a large number of base station signal identifiers and actual base station locations);
  • Network base station signals are often composed of LAI (Location Area Identification)+CID (Cell Identity), and LAI is composed of (MCC+MNC+LAC).
  • LAI Location Area Identification
  • CID Cell Identity
  • MCC+MNC+LAC Mobile Country Code
  • MNC full name Mobile Network Code, mobile network number, two digits.
  • the low-power controller queries the wifi data that needs to be compared to determine the location corresponding to the WiFi signal identification, and then judges whether the location falls within the location range of the geofence;
  • the low-power controller triggers a fence reporting process, which may be to trigger the application processor to perform a fence reminder.
  • geo-fence tasks are just examples and explanations, and do not limit the specific processes involving geo-fence tasks, and the specific processes of related geo-fence tasks can be set based on actual application conditions.
  • the low-power controller in a low-power environment is used as the main processor, and all or most of the geo-fence detection processing is performed in a low-power environment.
  • the low-power controller is the main one. If it is not necessary, it does not call or trigger the application processor to work, so as to save the power consumption of the fence detection related to the geo-fence.
  • the low-power controller is a low-power device.
  • the power consumption of the low-power controller in the working state is much lower than that of the application processor of the electronic device.
  • the low-power controller can at least include an intelligent sensor hub, Some digital signal processors, etc.; low-power controllers are used to deploy algorithm data corresponding to geo-fence services.
  • low-power controllers are used to implement independent processing of "geo-fence" services without relying on application processors. , that is to say, the low-power controller is used as the main processor, and the low-power controller responds to geofence-related operations first, and the low-power controller provides a low-power environment.
  • the power consumed by the sensors corresponding to the sensor hub is constantly decreasing, which makes it possible for electronic devices to detect more so-called environmental status information in real time, that is, no matter whether the electronic device is Whether working or standby, the energy cost consumed by sensors that continuously read environmental data such as acceleration, direction, coordinates, temperature, air pressure, and magnetic field is close to zero.
  • the algorithm data related to the business process of geofencing can be deployed on SensorHub.
  • the electronic device can control the low-power controller to perform geo-fence positioning based on the geo-fence data in a low-power positioning mode. Please refer to the following explanations for the specific steps and execution process.
  • S203 Obtain network location data and a mode trigger condition of the low-power positioning mode
  • the low-power controllers of electronic devices When it comes to geo-fence detection, the low-power controllers of electronic devices usually need to frequently detect the location of electronic devices during travel or movement. Long-term positioning technologies based on high power consumption, such as satellite navigation and positioning technology, will improve geo-fence Controlled power consumption. In this application, in order to control the power consumption related to geo-fences and save the power of electronic devices, the algorithm processing involved in the entire geo-fence detection is moved down to the low-power controller.
  • location positioning to obtain the network location based on the network signal of the electronic device, that is, to obtain the network location data, and the network location data is based on the signal identification of the site (such as a base station) to achieve positioning,
  • the network base station signal is often composed of LAI (Location Area Identification) + CID (Cell Identity), and the LAI is composed of (MCC + MNC + LAC )composition.
  • LAI Location Area Code
  • CID Cell Identity
  • MCC Mobile Country Code
  • MNC Mobile Network Code
  • mobile network number two digits.
  • the full name of LAC is Location Area Code, which is a 2-byte hexadecimal BCD code (excluding 0000 and FFFE).
  • the Cell Identity cell identification code is also a 2-byte long hexadecimal BCD code.
  • the "aggregate data of the corresponding relationship between a large number of base station signal identifiers and actual base station locations" is obtained from the network side in advance, it can also be understood as a network positioning database, and then the network base station signals are matched with the base station signal identifiers in the network positioning database to determine the The matching target base station signal identification, and then the actual location corresponding to the target base station signal can be used as a kind of network location data, usually the rough geographic location corresponding to the network base station signal determined (usually the position accuracy obtained by means of base station positioning is not high, often It is a rough location, and the follow-up involves precise location detection of geofences, which need to enable related positioning technologies);
  • the low-power positioning mode can be understood as a high-precision and low-power positioning method based on the corresponding positioning technology through modular technology, and the location accuracy of the location data obtained by using the low-power location mode is higher than that of the network location data.
  • the low-power positioning mode is a high-precision position obtained by a first positioning method such as a satellite navigation system (GNSS) as a reference
  • a first positioning method such as a satellite navigation system (GNSS) as a reference
  • the second positioning method is used to target the high-precision position as a reference
  • Position reckoning or dead reckoning of at least one second position data during the movement of the electronic device such as the second positioning method may be a position acquisition technology using a neural network or dead reckoning, so that a high-precision position can be obtained, and Since the position estimation process is only based on the sensory data sensed by the sensor, it can greatly save power consumption of the device while meeting the position accuracy acquisition requirements.
  • the low-power positioning mode is different from the related technologies that only obtain high-precision positions based on satellite positioning and wifi positioning such as satellite navigation systems.
  • the first positioning method such as GNSS positioning does not need to be activated in real time. Only based on the first positioning method such as GNSS positioning to obtain the reference position as the reference base station, and then perform position estimation through the second positioning method such as "pedestrian dead reckoning fusion based on neural network".
  • the second positioning method such as "pedestrian dead reckoning fusion based on neural network”.
  • the first positioning method The corresponding positioning module can enter sleep mode. Therefore, the power consumption of high-precision positioning is saved.
  • the mode trigger condition is the activation condition for the low-power positioning mode;
  • the mode trigger condition can be the network positioning duration estimated based on the geofence object, such as the estimated time for the electronic device to reach the adjacent geofence range at the initial stage, and the time As the network positioning duration, the condition can be: the current positioning duration satisfies the network positioning duration.
  • the mode trigger condition can be set based on the distance between the geofence objects , for example, after the network positioning data is obtained, the condition can be: calculate the distance between the position indicated by the network positioning data and the coverage area of the geofence, and the distance needs to meet the interval distance before enabling the low-power positioning mode; the mode trigger condition can be based on geography At least one adjacent geographic location set by the fence object, the condition may be: the location indicated by the network positioning data matches the aforementioned adjacent geographic location, if the distance between the two is smaller than the distance threshold, the two are considered to match, and so on.
  • FIG. 4 is a schematic diagram of another fence detection scene involved in the present application.
  • FIG. 4 reflects the way of fence detection at each stage in FIG. 3, and the electronic device in FIG. 4 is the device shown in 302 , starting from the starting site "Nine Trees", the electronic device 302 continues to use the network positioning method for positioning, and when it reaches the "Guanzhuang" site as shown in Figure 3, the electronic device 302 turns on the low-power positioning mode and continues to perform geo-fencing Detection, detecting whether the electronic device 302 has entered the range corresponding to the geographic fence of the destination site, when the electronic device enters the geographic range of the destination site, the geo-fence trigger service is executed, as shown in Figure 4, a reminder can be made, the electronic The device 302 outputs prompt information as shown at 310 in FIG. 4 .
  • the time when the electronic device arrives near the geographic fence is estimated at the initial stage, and this time is used as the network positioning duration. If the time of the location data is equal to or greater than the network positioning duration, it is considered that the network location data matches the mode trigger condition.
  • the mode triggering condition may be: calculate the distance between the position indicated by the network positioning data and the coverage area of the geofence, and the distance needs to meet the separation distance; When the distance of the range is equal to or less than the separation distance, it is determined that the network location data matches the mode trigger condition.
  • the first positioning method may be a satellite positioning method, a wireless fidelity (Wireless Fidelity, Wi-Fi) based positioning, an ultra wide band (Ultra WideBand, UWB) positioning and other LBS-based high-precision positioning technology.
  • a wireless fidelity Wireless Fidelity, Wi-Fi
  • UWB ultra wide band
  • the low power consumption positioning mode can be at least divided into a first positioning phase and a second positioning phase
  • the first location data is high-precision location data obtained by the electronic device controlling the low-power controller using the first positioning method. It can be understood that the location accuracy of the first location data is greater than that of the network location data in some embodiments. Accuracy, such as the use of satellite positioning technology, Wi-Fi positioning technology, etc.
  • the first positioning method is turned on only to obtain at least one or a small amount of high-precision first position data as a reference point.
  • the positioning module corresponding to the first positioning method can be controlled to enter a sleep state or an off state.
  • the subsequent second positioning stage based on the pedestrian navigation calculation and fusion method using neural network: using the first position data as a reference, determine at least one subsequent second position data for the electronic device during the position change process of the electronic device.
  • the electronic device controls the low-power controller to obtain at least one second position data for the electronic device based on the first position data in a pedestrian navigation calculation and fusion method using a neural network.
  • the second location data is obtained by the electronic device controlling the low-power controller with reference to the first location data and the sensory data obtained by the low-power controller using neural network to obtain pedestrian navigation reckoning fusion. It is a position determination technology based on the first position data for position tracking calculation.
  • the electronic device controls the low-power controller to call the sensor to collect sensing data.
  • the mobile acceleration data based on the first position data can be obtained. It can be understood that after the first position data is determined by the first positioning method, the Sleep the positioning module corresponding to the first positioning mode, and then acquire the subsequent mobile acceleration data of each sampling period during the movement of the electronic device, the acceleration data is the acceleration in at least one specified direction of the electronic device, such as by accelerometer, gyroscope Acceleration in specified directions such as front, rear, left, right, up, and down of electronic equipment can be obtained by sensor devices such as instrumentation and magnetometers.
  • the electronic device controls the low-power controller to input the moving acceleration data into the neural network-based navigation calculation model, and output the moving speed data; then determine the position and displacement data based on the moving speed data.
  • the electronic device controls the low-power controller to input the moving acceleration data into the neural network-based navigation calculation model, and output the moving speed data; then determine the position and displacement data based on the moving speed data.
  • based on The moving speed data and the sampling interval time can be integrated to obtain the position displacement data.
  • the electronic device controls the low-power controller to perform data accumulation processing based on the first position data and the position displacement data, so as to determine the second position data for the electronic device;
  • the continuous position determination during the moving process of the electronic device can be realized based on the aforementioned method, the electronic device actually uses the second position data as the next first position data, and then performs the acquisition based on the first position data. The steps to move the acceleration data are sufficient. In this way, the loop is executed,
  • the displacement data si can be determined based on the mobile acceleration data ai, and then cumulative processing is performed based on the first position data and displacement data si (that is, in the first Accumulated displacement si on the coordinate point corresponding to the position data, obtain the coordinate point corresponding to the second position data), and obtain the second position data corresponding to the sampling interval time ti.
  • the electronic device can be executed cyclically based on the aforementioned method, thereby determining each Sampling the corresponding second position data within the interval ti realizes the continuous positioning of the electronic device during the second positioning phase.
  • the following is an interpretation of the neural network-based navigation reckoning model involved in this application. Based on the above interpretation, it can be understood that the pedestrian dead reckoning involved in this application is different from the single prediction calculation using a fixed formula in the related art.
  • the involved pedestrian navigation calculation fusion method using neural network can greatly improve the position positioning accuracy of the PDR algorithm and reduce positioning errors.
  • the navigation reckoning model may be obtained after model training after constructing an initial model based on a neural network
  • the navigation reckoning model can be pre-trained, and a large amount of sample data including acceleration parameters in the actual mobile scene of the electronic device is obtained in advance, and the above sample data is input into the navigation reckoning model for training, and the moving speed is output.
  • the navigation reckoning model It is trained from multiple sample data corresponding to known labeled sample velocities.
  • an initial navigation reckoning model is created for the acceleration in a specified direction (for example, for accelerations in specified directions such as front, rear, left, right, up, and down) of the electronic device.
  • Described navigation calculation model can be to use a large amount of sample data to train initial navigation calculation model, can be based on LR (Logistic Regression, logistic regression model), SVM (Support Vector Machine, support vector machine) as navigation calculation model, One of decision tree, naive Bayesian classifier, CNN (Convolutional Neural Network, convolutional neural network), RNN (Recurrent Neural Networks, recurrent neural network), deep neural network (Deep Neural Network, DNN) model, etc. or Various implementations, the initial navigation reckoning model is trained based on sample data that has been labeled (marked moving speed), and a trained navigation reckoning model can be obtained.
  • LR Logistic Regression, logistic regression model
  • SVM Small Vector Machine, support vector machine
  • One of decision tree naive Bayesian classifier
  • CNN Convolutional Neural Network, convolutional neural network
  • RNN Recurrent Neural Networks, recurrent neural network
  • DNN deep neural network
  • the initial navigation reckoning model is trained based on
  • the DNN-ResNet model that introduces the error backpropagation algorithm is used to create the initial navigation calculation model.
  • the feature information is input into the neural network model in the form of feature vectors, and the Training, training to complete the production navigation reckoning model;
  • the training process of the neural network model usually consists of two parts: forward propagation and back propagation.
  • the feature information corresponding to the terminal input sample data passes through the hidden
  • the transfer function also known as activation function, conversion function
  • layer neurons also called nodes
  • the output layer where the state of neurons in each layer affects the state of neurons in the next layer, and the actual output value is calculated in the output layer - the first voice mark
  • the pedestrian navigation calculation and fusion method using the neural network is used to locate the second position data in the moving process, because the second position data is essentially a kind of position calculation In this way, there will be a process of error accumulation between the coordinates of the second position data and the real coordinates of the accumulated dead reckoning over time.
  • the first positioning method can be introduced again for error repair, that is, the first positioning method can be used. The positioning method performs position correction processing on the second position data.
  • the second positioning method is used to push the second position data of the electronic device during the movement
  • the first positioning method such as satellite positioning method
  • the first positioning method can be started at intervals based on a certain interval period to obtain The third position data
  • the position correction process may be to perform position weighting processing on the "third position data” and "the second position data calculated by the neural network-based navigation push model", by assigning different weight values respectively, and then obtain a Based on the corrected second position data, the navigation calculation of pedestrians is continued to determine the next second position data.
  • a position correction period (such as 10s) can be set, and the position correction period is used for the electronic device to determine at least one second position data for the electronic device based on the first position data in the second positioning mode.
  • the first positioning method is simultaneously started to obtain the third position data of the electronic device, and the position correction process is performed on the second position data based on the third position data.
  • the determination of the position correction period may be based on an empirical value obtained through mathematical analysis of collected mobile data in an actual application environment.
  • a reference travel distance can be set, and the reference travel distance is used for the electronic device in the process of "using the pedestrian navigation reckoning and fusion method of neural network to locate the second position data in the moving process", Every time the trip reaches the position reference travel distance (for example, 100m), the first positioning method is started to acquire the third position data of the electronic device at the same time, and the position correction processing is performed on the second position data based on the third position data.
  • the position reference travel distance for example, 100m
  • the second positioning method and the first positioning method based on the position estimation based on the navigation reckoning model are realized.
  • the positioning process of the first positioning method is started at the right time when the second position in the process of travel is determined.
  • the power consumption of the first positioning method is further reduced, and the geographic fence can be improved.
  • the first positioning method is used when the signal is poor, and the second positioning method can be used to obtain a position with high positioning accuracy, such as improving the positioning accuracy in indoor positioning scenarios.
  • the device location data includes at least one of the network location data, the first location data, the second location data, and the third location data in the embodiments of the present application, and at least includes the second location data in practical applications,
  • S302 Control the low power consumption controller to respond to the target service operation, and only execute the target processing task for the geofence through the low power consumption controller;
  • the processor based on the low-power controller
  • the state performs load distribution, and distributes all the data processing tasks originally performed by the low-power processor to the application processor for completion, or calls the application processor and the low-power controller to jointly complete part of the processing tasks, and realizes dynamic load balancing.
  • the power consumption of the geofence service control is reduced under the condition of ensuring the processing efficiency of the geofence and the state of the low-power controller.
  • the target business operation is triggered on the application of the application processor, it is determined that it is a business operation related to geofencing, and the application processor transfers the business operation to the low-power controller.
  • the device does not respond to the target service operation and can only make a preliminary judgment of the operation type.
  • the low-power controller responds to the above-mentioned target service operations, and realizes that the low-power controller is the main processor for processing.
  • the low-power controller triggers the application processor to obtain relevant interaction data from the network by responding to the target business operation.
  • the application processor is used as a coprocessor of the low-power controller in the geo-fence scenario to assist in processing geo-fence-related services.
  • the electronic device can obtain the task status parameters corresponding to the low-power controller in advance;
  • the task state parameter may be the total thread overhead of all threads of the low-power controller, or may be the amount of surplus resources for the low-power controller.
  • the amount of surplus resources may be understood as the amount of resources left by the low power consumption controller to meet the resource requirements of the currently running processing tasks.
  • the resource is mainly the computing resource of the processing unit contained in the low-power controller, and the definition of the resource may be the memory size, the number of I/O ports, the computing unit associated with the I/O port, the control unit, and so on.
  • a process for monitoring the current surplus resources and/or total thread overhead of the low-power controller can be created in advance, and the computing resources of the resource pool can be allocated to the process for real-time or periodic processing of low-power
  • the current surplus resources and/or total thread overhead of the power consumption controller are monitored, and the surplus resources and/or total thread overhead of the low-power consumption controller can be obtained through this process.
  • the first processing task is the step information corresponding to the execution of at least one step in the task processing flow corresponding to the target processing task, which can be understood as a subtask of the target processing task, and the first processing task is mainly executed by the low power consumption controller.
  • the second processing task is the step information corresponding to the execution of at least one step in the task processing flow corresponding to the target processing task, which can be understood as a subtask of the target processing task, and the second processing task is mainly performed by the low-power controller; in some Implementation manner: the second processing task may have a cross task with the first processing task, and it can be understood that the cross task is jointly executed by the low power consumption controller and the application processor.
  • the low power consumption controller divides the target processing task corresponding to the target business operation into a first processing task and a second processing task based on the task state parameter.
  • the target processing task corresponding to the target business operation can be obtained The historical resource expenditure amount of the task; then, based on the historical resource expenditure amount and the surplus resource amount, divide the target processing task into a first processing task and a second processing task.
  • the amount of historical resource overhead can be understood as the amount of resource overhead corresponding to the historical execution of the target processing task.
  • the overhead score A can be evaluated based on the amount of historical resource overhead, and the surplus score B can be estimated based on the amount of surplus resources. Then, when the overhead fraction A is greater than the surplus fraction B, divide the target processing task into the first A processing task and a second processing task, the determination of the second processing task is determined based on the execution steps that the application processor can process. It is sufficient that the low power consumption controller can successfully respond to the first processing task based on the amount of surplus resources.
  • the second processing task divided from the target processing task may be a parallel processing task, that is, a processing task jointly executed by the low power consumption controller and the application processor.
  • the low power consumption controller executes the first processing task, and the application processor executes the second processing task.
  • the electronic device can monitor the task execution state of the low-power controller, and when the task execution state is a task load state, the execution steps corresponding to the current execution target processing task performing task load offloading, and offloading the third processing task from the target processing task; thereby realizing the step of determining a third processing task from the target processing tasks corresponding to the low power consumption controller based on the task execution state; Then, the application processor executes the third processing task, so as to share the processing pressure of the low power consumption controller.
  • the electronic device can determine the target business operation for the geo-fence (business operations for geo-fence registration, geo-fence detection, geo-fence update, etc.) by controlling the low-power controller to respond to the target For business operation, the low power consumption controller acts as the main processor of the operation response to perform fence business processing on the geo-fence.
  • the low-power controller in the low-power environment as the main processor, the geo-fence detection and processing work is executed in the low-power environment, and the geo-fence business processing is realized with the low-power controller as the main processor, so as to save and The power consumption of geofence services related to geofences, and at the same time optimize the business response process based on application processor-based operation response in related technologies.
  • the application processor can be used only as an auxiliary processor, and the application processor can be used as a coprocessor of the low-power controller in the geo-fence scenario to assist in processing geo-fence related services, further Improve the intelligence of geo-fence management; and based on the current processor state of the low-power controller, on the premise that data processing is prioritized on the low-power processor, the processor based on the low-power controller
  • the state performs load distribution, and distributes all the data processing tasks originally performed by the low-power processor to the application processor for completion, or calls the application processor and the low-power controller to jointly complete part of the processing tasks to achieve dynamic load balancing.
  • the geo-fence control device provided by the embodiment of the present application will be described in detail below with reference to FIG. 6 . It should be noted that the geo-fence control device shown in FIG. 6 is used to execute the method of the embodiments shown in FIGS. 1 to 5 of the present application. For technical details not disclosed, please refer to the embodiments shown in FIGS. 1 to 5 of this application.
  • FIG. 6 shows a schematic structural diagram of a geofence control device according to an embodiment of the present application.
  • the geo-fence control device 1 can be implemented as all or a part of electronic equipment through software, hardware or a combination of the two.
  • the geofence control device 1 includes a business determination module 11 and a business processing module 12, specifically for:
  • a business determination module 11 configured to determine a target business operation for the geo-fence
  • the business processing module 12 is configured to control the low power consumption controller to perform fence business processing on the geo-fence in response to the target business operation, and the power consumption of the low power consumption controller is less than that of the application processor power consumption.
  • the service determination unit 111 is configured to obtain a fence service request on the application processor, and determine a target service operation for the geo-fence based on the fence service request.
  • the business processing module 12 includes:
  • the service control unit 121 is configured to, in response to the target service operation, control the low power consumption controller to execute the target processing task for the geo-fence;
  • the target processing task includes at least one of a geo-fence registration task, a geo-fence detection task, a geo-fence update task, a geo-fence trigger task, a geo-fence management task, and a geo-fence detection task.
  • the service control unit 121 includes:
  • a fence detection subunit configured to control the low power controller to acquire geofence data of the geofence detection task from the application processor, and control the low power controller to perform geofence based on the geofence data position.
  • the fence detection unit includes:
  • the fence positioning subunit is configured to acquire device location data of the electronic device in a low-power location location mode, and detect whether the electronic device enters a range corresponding to the geo-fence based on the device location data.
  • the fence detection unit also includes:
  • the first data acquisition subunit is used to acquire network location data and a mode trigger condition of the low power consumption positioning mode
  • the second data acquisition subunit is configured to execute the step of acquiring the device location data of the electronic device in the low power consumption positioning mode if the network location data matches the mode trigger condition, and the low power
  • the location accuracy corresponding to the consumption positioning mode is higher than the location accuracy corresponding to the network location data.
  • the fence positioning subunit includes:
  • a first location acquisition subunit configured to acquire first location data of the electronic device by using a first positioning method
  • the second location acquisition subunit is configured to determine at least one second location data for the electronic device based on the first location data in a second positioning manner, where the positioning power consumption corresponding to the second positioning manner is smaller than that of the first positioning The positioning power consumption corresponding to the mode.
  • the second location obtains a subunit, specifically for:
  • the second position data is used as the next first position data, and the step of acquiring movement acceleration data based on the first position data is performed.
  • the second location obtains a subunit, specifically for:
  • the device 1 is specifically used for:
  • the application processor is used as the coprocessor of the low power consumption controller, and the low power consumption controller and the application processor are controlled to jointly execute the target processing task corresponding to the target service operation.
  • the dividing the target processing task corresponding to the target business operation into a first processing task and a second processing task based on the task status parameter includes:
  • the target processing task is divided into a first processing task and a second processing task.
  • the device 1 is specifically used for:
  • the third processing task is executed by the application processor.
  • the geo-fence control device provided by the above-mentioned embodiments executes the geo-fence control method
  • the division of the above-mentioned functional modules is used as an example for illustration.
  • the above-mentioned functions can be assigned to different functions according to needs Module completion means that the internal structure of the device is divided into different functional modules to complete all or part of the functions described above.
  • the geo-fence control device provided by the above-mentioned embodiments belongs to the same idea as the geo-fence control method embodiment, and its implementation process is detailed in the method embodiment, and will not be repeated here.
  • the embodiment of the present application also provides a computer storage medium, the computer storage medium can store a plurality of instructions, and the instructions are suitable for being loaded and executed by a processor as described in the above-mentioned embodiments shown in FIGS. 1 to 5 .
  • the specific execution process can refer to the specific description of the embodiments shown in FIGS. 1 to 5 , and details are not repeated here.
  • FIG. 8 shows a structural block diagram of an electronic device provided by an exemplary embodiment of the present application.
  • the electronic device in this application may include one or more of the following components: a processor 110 , a memory 120 , an input device 130 , an output device 140 and a bus 150 .
  • the processor 110 , the memory 120 , the input device 130 and the output device 140 may be connected through a bus 150 .
  • Processor 110 may include one or more processing cores.
  • the processor 110 uses various interfaces and lines to connect various parts of the entire electronic device, and executes electronic operations by running or executing instructions, programs, code sets or instruction sets stored in the memory 120, and calling data stored in the memory 120.
  • Various functions and processing data of the device 100 may use at least one of digital signal processing (digital signal processing, DSP), field-programmable gate array (field-programmable gate array, FPGA), programmable logic array (programmable logic array, PLA) implemented in the form of hardware.
  • DSP digital signal processing
  • FPGA field-programmable gate array
  • programmable logic array programmable logic array
  • PLA programmable logic array
  • the processor 110 may integrate one or a combination of a central processing unit (central processing unit, CPU), an image processor (graphics processing unit, GPU), a modem, and the like.
  • the memory 120 may include a random access memory (random Access Memory, RAM), and may also include a read-only memory (read-only memory, ROM).
  • RAM random Access Memory
  • ROM read-only memory
  • the memory 120 includes a non-transitory computer-readable storage medium.
  • the memory 120 may be used to store instructions, programs, codes, sets of codes, or sets of instructions.
  • the memory 120 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system and instructions for implementing at least one function (such as a touch function, a sound playback function, an image playback function, etc.) , instructions for implementing the following various method embodiments, etc.
  • the operating system can be an Android system, including a system based on the deep development of the Android system, an IOS system developed by Apple, including a system based on the deep development of the IOS system or other systems.
  • the storage data area can also store data created by the electronic device during use, such as phonebook, audio and video data, chat record data, and the like.
  • the memory 120 can be divided into an operating system space and a user space.
  • the operating system runs in the operating system space, and native and third-party applications run in the user space.
  • the operating system allocates corresponding system resources for different third-party application programs.
  • different application scenarios in the same third-party application have different requirements for system resources. For example, in the local resource loading scenario, the third-party application has higher requirements for disk reading speed; in the animation rendering scenario, the second Three-party applications have higher requirements on GPU performance.
  • the operating system and third-party applications are independent of each other, and the operating system often cannot perceive the current application scenarios of the third-party applications in a timely manner, resulting in the inability of the operating system to perform targeted system resource adaptation according to the specific application scenarios of the third-party applications.
  • the memory 120 can store a Linux kernel layer 320, a system runtime library layer 340, an application framework layer 360 and an application layer 380, Among them, the Linux kernel layer 320 , the system runtime layer 340 and the application framework layer 360 belong to the operating system space, and the application layer 380 belongs to the user space.
  • the Linux kernel layer 320 provides underlying drivers for various hardware of electronic devices, such as display drivers, audio drivers, camera drivers, Bluetooth drivers, Wi-Fi drivers, power management, and so on.
  • the system runtime layer 340 provides main feature support for the Android system through some C/C++ libraries.
  • frameworks related to most applications include but are not limited to: the basic framework in the core service layer 440 and the UIKit framework in the touchable layer 480 .
  • the basic framework provides many basic object classes and data types, and provides the most basic system services for all applications, regardless of UI.
  • the class provided by the UIKit framework is a basic UI class library for creating a touch-based user interface. iOS applications can provide UI based on the UIKit framework, so it provides the infrastructure of the application for building user interfaces, drawing , Handle and user interaction events, respond to gestures, and more.
  • the method and principle of implementing the data communication between the third-party application program and the operating system in the IOS system can refer to the Android system, and this application will not repeat them here.
  • each step may be the electronic device introduced above.
  • each step is executed by an operating system of the electronic device.
  • the operating system may be an Android system, an IOS system, or other operating systems, which is not limited in this embodiment of the present application.
  • the electronic device may be a smart phone, a tablet computer, a game device, an AR (Augmented Reality, augmented reality) device, a car, a data storage device, an audio playback device, a video playback device, a notebook, a desktop computing device, a wearable device such as an electronic Watches, electronic glasses, electronic helmets, electronic bracelets, electronic necklaces, electronic clothing and other equipment.
  • the processor 110 can be used to call the geofence control program stored in the memory 120, and specifically perform the following operations:
  • a fence service request on the application processor is acquired, and a target service operation for the geofence is determined based on the fence service request.
  • processor 1001 when the processor 1001 performs the controlling the low power consumption controller to respond to the target service operation to perform fence service processing on the geo-fence, specifically perform the following operations:
  • the target processing task includes at least one of a geofence registration task, a geofence detection task, a geofence update task, a geofence trigger task, a geofence management task, and a geofence detection task.
  • the processor 1001 executes the target processing task as a geofence detection task, and the controlling low power consumption controller performs the target processing task on the geofence, the following operations are specifically performed:
  • the device location data of the electronic device is acquired by adopting a low power consumption positioning mode, and based on the device location data, it is detected whether the electronic device enters a range corresponding to the geo-fence.
  • the following operations are further performed:
  • the processor 1001 specifically performs the following operations when executing the acquisition of device location data using the low power consumption positioning mode:
  • the processor 1001 executes the acquisition of at least one second location data for the electronic device based on the first location data in a way of pedestrian navigation reckoning and fusion, specifically perform the following operations:
  • the second position data is used as the next first position data, and the step of acquiring movement acceleration data based on the first position data is performed.
  • the processor 1001 also performs the following operations:
  • processor 1001 when the processor 1001 performs the position correction process on the second position data by using the first positioning method, specifically perform the following operations:
  • the processor 1001 specifically performs the following operations when executing the target processing task corresponding to the control low power consumption controller to perform the target service operation:
  • the application processor is used as the coprocessor of the low power consumption controller, and the low power consumption controller and the application processor are controlled to jointly execute the target processing task corresponding to the target service operation.
  • the processor 1001 when the processor 1001 executes the target processing task corresponding to the target service operation of controlling the low power consumption controller and the application processor, it specifically performs the following operations:
  • the target processing task corresponding to the target business operation into a first processing task and a second processing task based on the task state parameter, the task amount of the first processing task being greater than the task amount of the second processing task;
  • the third processing task is executed by the application processor.
  • the processes in the methods of the above embodiments can be implemented through computer programs to instruct related hardware, and the programs can be stored in a computer-readable storage medium. During execution, it may include the processes of the embodiments of the above-mentioned methods.
  • the storage medium may be a magnetic disk, an optical disk, a read-only memory or a random access memory, and the like.

Abstract

Provided are a geofence control method and apparatus, a storage medium, and an electronic device. The method comprises: determining a target service operation for a geofence (S101), and controlling a low-power-consumption controller to respond to the target service operation, and performing fence service processing on the geofence (S102). By using embodiments of the present application, the power consumption of a geofence service can be reduced.

Description

地理围栏控制方法、装置、存储介质及电子设备Geo-fence control method, device, storage medium and electronic equipment
本申请要求了2021年08月20日提交的、申请号为2021109618813、发明名称为“地理围栏控制方法、装置、存储介质及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of the Chinese patent application filed on August 20, 2021, with application number 2021109618813, and the title of the invention is "geo-fence control method, device, storage medium and electronic equipment", the entire content of which is incorporated by reference In this application.
技术领域technical field
本申请涉及计算机技术领域,尤其涉及一种地理围栏控制方法、装置、存储介质及电子设备。The present application relates to the field of computer technology, and in particular to a geofence control method, device, storage medium and electronic equipment.
背景技术Background technique
随着通信技术的快速发展,一些电子设备具有用于提供基于位置的服务的功能。例如,在电子设备进入或者退出地理围栏时,该电子设备可执行相关地理围栏服务。例如,当用户选择地铁、公共汽车等公共交通工具出行时,可开启基于地理围栏的到站服务,当电子设备的用户到站时可触发地理围栏服务进行到站提醒。With the rapid development of communication technologies, some electronic devices have functions for providing location-based services. For example, when an electronic device enters or exits a geo-fence, the electronic device may execute related geo-fence services. For example, when a user chooses public transportation such as subways and buses to travel, the geofence-based arrival service can be turned on, and when the user of the electronic device arrives at the station, the geofence service can be triggered for arrival reminders.
发明内容Contents of the invention
本申请实施例提供了一种地理围栏控制方法、装置、存储介质及电子设备,所述技术方案如下:The embodiment of the present application provides a geofence control method, device, storage medium and electronic equipment, and the technical solution is as follows:
第一方面,本申请实施例提供了一种地理围栏控制方法,所述方法包括:In the first aspect, the embodiment of the present application provides a geofence control method, the method comprising:
确定针对地理围栏的目标业务操作;Identify targeted business operations for geofencing;
控制所述低功耗控制器响应于所述目标业务操作,对所述地理围栏进行围栏业务处理,所述低功耗控制器的功耗小于应用处理器的功耗。controlling the low power consumption controller to perform fence service processing on the geo-fence in response to the target service operation, and the power consumption of the low power consumption controller is less than that of the application processor.
第二方面,本申请实施例提供了一种地理围栏控制装置,所述装置包括:In the second aspect, the embodiment of the present application provides a geofence control device, the device comprising:
业务确定模块,用于确定针对地理围栏的目标业务操作;A business determination module for determining target business operations for geofences;
业务处理模块,用于控制所述低功耗控制器响应于所述目标业务操作,对所述地理围栏进行围栏业务处理。A service processing module, configured to control the low power consumption controller to perform fence service processing on the geo-fence in response to the target service operation.
第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。In a third aspect, an embodiment of the present application provides a computer storage medium, where a plurality of instructions are stored in the computer storage medium, and the instructions are adapted to be loaded by a processor and execute the above method steps.
第四方面,本申请实施例提供一种电子设备,可包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述的方法步骤。In a fourth aspect, an embodiment of the present application provides an electronic device, which may include: a processor and a memory; wherein, the memory stores a computer program, and the computer program is adapted to be loaded by the processor and execute the above-mentioned method steps .
本申请一些实施例提供的技术方案带来的有益效果至少包括:The beneficial effects brought by the technical solutions provided by some embodiments of the present application at least include:
在本申请一个或多个实施例中,电子设备可以确定针对地理围栏的目标业务操作(针对地理围栏注册、地理围栏检测、地理围栏更新等的业务操作)通过控制所述低功耗控制器响应于所述目标业务操作,由低功耗控制器作为操作响应的主处理器来对所述地理围栏进行围栏业务处理。通过以低功耗环境下的低功耗控制器为主处理器,将地理围栏检测处理工作在低功耗环境下执行,实现以低功耗控制器为主进行地理围栏业务处理,来节省与地理围栏相关的地理围栏业务功耗,同时优化了相关技术中基于应用处理器为主进行操作响应的业务响应流程。In one or more embodiments of the present application, the electronic device can determine the target business operation for the geo-fence (business operations for geo-fence registration, geo-fence detection, geo-fence update, etc.) by controlling the low-power controller to respond For the target service operation, the low power consumption controller acts as the main processor that responds to the operation to perform fence service processing on the geo-fence. By using the low-power controller in the low-power environment as the main processor, the geo-fence detection and processing work is executed in the low-power environment, and the geo-fence business processing is realized with the low-power controller as the main processor, so as to save and The power consumption of geofence services related to geofences, and at the same time optimize the business response process based on application processor-based operation response in related technologies.
附图说明Description of drawings
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings that need to be used in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description are only These are some embodiments of the present application. Those skilled in the art can also obtain other drawings based on these drawings without creative work.
图1是本申请实施例提供的一种地理围栏控制方法的流程示意图;Fig. 1 is a schematic flow chart of a geo-fence control method provided by an embodiment of the present application;
图2是本申请实施例提供的另一种地理围栏控制方法的流程示意图;Fig. 2 is a schematic flow chart of another geo-fence control method provided by the embodiment of the present application;
图3是本申请涉及的一种围栏检测的场景示意图;FIG. 3 is a schematic diagram of a fence detection scene involved in the present application;
图4是本申请涉及的另一种围栏检测的场景示意图;FIG. 4 is a schematic diagram of another fence detection scene involved in the present application;
图5是本申请实施例提供的另一种地理围栏控制方法的流程示意图;Fig. 5 is a schematic flow chart of another geo-fence control method provided by the embodiment of the present application;
图6是本申请实施例提供的一种地理围栏控制装置的结构示意图;FIG. 6 is a schematic structural diagram of a geofence control device provided in an embodiment of the present application;
图7是本申请实施例提供的一种业务处理模块的结构示意图;FIG. 7 is a schematic structural diagram of a service processing module provided by an embodiment of the present application;
图8是本申请实施例提供的一种电子设备的结构示意图;FIG. 8 is a schematic structural diagram of an electronic device provided by an embodiment of the present application;
图9是本申请实施例提供的操作系统和用户空间的结构示意图;FIG. 9 is a schematic structural diagram of an operating system and user space provided by an embodiment of the present application;
图10是图8中安卓操作系统的架构图;Fig. 10 is an architecture diagram of the Android operating system in Fig. 8;
图11是图8中IOS操作系统的架构图。FIG. 11 is a structural diagram of the IOS operating system in FIG. 8 .
具体实施方式Detailed ways
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。The following will clearly and completely describe the technical solutions in the embodiments of the application with reference to the drawings in the embodiments of the application. Apparently, the described embodiments are only some of the embodiments of the application, not all of them. Based on the embodiments in this application, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the scope of protection of this application.
在本申请的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本申请的描述中,需要说明的是,除非另有明确的规定和限定,“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。In the description of the present application, it should be understood that the terms "first", "second" and so on are used for descriptive purposes only, and should not be understood as indicating or implying relative importance. In the description of the present application, it should be noted that, unless otherwise specified and limited, "including" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device comprising a series of steps or units is not limited to the listed steps or units, but optionally also includes unlisted steps or units, or optionally further includes For other steps or units inherent in these processes, methods, products or devices. Those of ordinary skill in the art can understand the specific meanings of the above terms in this application in specific situations. In addition, in the description of the present application, unless otherwise specified, "plurality" means two or more. "And/or" describes the association relationship of associated objects, indicating that there may be three types of relationships, for example, A and/or B may indicate: A exists alone, A and B exist simultaneously, and B exists independently. The character "/" generally indicates that the contextual objects are an "or" relationship.
下面结合具体的实施例对本申请进行详细说明。The present application will be described in detail below in conjunction with specific embodiments.
在一个实施例中,如图1所示,特提出了一种地理围栏控制方法,该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的地理围栏控制装置上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。所述地理围栏控制装置可以为终端设备,包括但不限于:个人电脑、平板电脑、手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它处理设备等。在不同的网络中终端设备可以叫做不同的名称,例如:用户设备、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置、蜂窝电话、无绳电话、5G网络或未来演进网络中的终端设备等。In one embodiment, as shown in FIG. 1 , a geo-fence control method is proposed, which can be realized by relying on a computer program and can run on a geo-fence control device based on the von Neumann system. The computer program can be integrated in the application, or run as an independent utility application. The geofence control device may be a terminal device, including but not limited to: personal computer, tablet computer, handheld device, vehicle device, wearable device, computing device or other processing device connected to a wireless modem. Terminal equipment can be called by different names in different networks, for example: user equipment, access terminal, subscriber unit, subscriber station, mobile station, mobile station, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication Devices, user agents or user devices, cellular phones, cordless phones, terminal equipment in 5G networks or future evolution networks, etc.
具体的,该地理围栏控制方法包括:Specifically, the geofence control method includes:
S101:确定针对地理围栏的目标业务操作。S101: Determine a target business operation for the geo-fence.
地理围栏(Geo-fencing)是基于位置的服务(Location Based Services,LBS)的一种应用,可理解为用一个虚拟的栅栏围出一个虚拟地理边界。当移动中的电子设备进入、离开某个地理围栏对应的地理区域,或在该地理区域内活动时,电子设备可自动接收服务消息。在本申请中当用户携带电子设备乘坐交通工具进入地理对象所对应的地理围栏范围之内时,此时触发电子设备地理围栏服务,如通知服务,比如推送地理围栏内的商户信息。Geo-fencing is an application of Location Based Services (LBS), which can be understood as using a virtual fence to enclose a virtual geographic boundary. When a moving electronic device enters or leaves a geographic area corresponding to a certain geographic fence, or moves within the geographic area, the electronic device can automatically receive service messages. In this application, when the user enters the geofence range corresponding to the geographic object with an electronic device on a vehicle, the geofence service of the electronic device is triggered at this time, such as a notification service, such as pushing merchant information within the geofence.
所述目标业务操作可理解为针对地理围栏(服务)的围栏业务的操作,所述目标业务操作不限于由用户所触发的针对相应围栏业务的人机交互操作,也可以是由电子设备上的订阅或关联地理围栏服务的应用基于应用开发逻辑自动触发的目标业务操作,如针对地理围栏的数据更新操作。The target business operation can be understood as the operation of the fence business for the geo-fence (service). The target business operation is not limited to the human-computer interaction operation triggered by the user for the corresponding fence business, and can also be performed by the user on the electronic device. Applications that subscribe to or associate with geofence services automatically trigger target business operations based on application development logic, such as data update operations for geofences.
进一步的,目标业务操作针对地理围栏的围栏业务包括但不限于地理围栏注册业务、地理围栏检测业务、地理围栏更新业务、地理围栏触发业务、地理围栏管理业务、地理围栏检测业务等等,具体基于实际应用环境确定。Further, the fence business of the target business operation for the geo-fence includes but is not limited to the geo-fence registration business, the geo-fence detection business, the geo-fence update business, the geo-fence trigger business, the geo-fence management business, the geo-fence detection business, etc., based on The actual application environment is determined.
在本申请中,针对地理围栏的目标业务操作通常是在电子设备所包含的应用处理器中所触发的,电子设备通过应用处理器可获取由电子设备的用户和/或所搭载的应用主动触发的针对地理围栏的目标业务操作。In this application, the target business operation for the geofence is usually triggered in the application processor included in the electronic device, and the electronic device can obtain the active triggering by the user of the electronic device and/or the application carried by the electronic device through the application processor. Targeted business operations for geofences.
例如,电子设备在应用处理器上运行操作系统(如安卓系统、ios系统等),应用处理器的操作系统上安装与地理围栏服务或业务相耦合的应用软件,通过该应用软件的界面用户可输入诸如地理围栏注册、地理围栏更新、地理围栏开启等目标业务操作;For example, the electronic device runs an operating system (such as Android system, ios system, etc.) Enter target business operations such as geofence registration, geofence update, geofence activation, etc.;
又例如“与地理围栏服务或业务相耦合的应用软件”作为服务申请者可在(应用)订阅地理围栏服务,应用软件基于地理围栏服务的服务请求(如围栏注册服务请求、围栏更新服务请求),可基于内部应用开发逻辑自动触发诸如地理围栏注册、地理围栏更新、地理围栏开启等目标业务操作,在一些实施 方式中会涉及到基于目标业务操作向网络侧(如云端服务器)获取相应的业务数据。Another example is "application software coupled with geofence service or business", as a service applicant, you can subscribe to geofence service in (application), and the application software is based on the service request of geofence service (such as fence registration service request, fence update service request) , can automatically trigger target business operations such as geofence registration, geofence update, and geofence opening based on internal application development logic. In some implementations, it will involve obtaining corresponding services from the network side (such as cloud server) data.
在一种具体的实施场景中,电子设备获取应用处理器上至少一个应用的围栏服务请求,然后通过对围栏服务请求进行解析,来基于所述围栏服务请求确定针对地理围栏的目标业务操作,如基于地理围栏更新请求确定针对地理围栏的地理围栏更新操作、基于地理围栏注册请求确定针对地理围栏的地理围栏注册操作、基于地理围栏开启请求确定针对地理围栏的地理围栏开启操作、基于地理围栏检测请求确定针对地理围栏的地理围栏检测操作等等。In a specific implementation scenario, the electronic device obtains the fence service request of at least one application on the application processor, and then analyzes the fence service request to determine the target business operation for the geofence based on the fence service request, such as Determine geofence update operations for geofences based on geofence update requests, determine geofence registration operations for geofences based on geofence registration requests, determine geofence enable operations for geofences based on geofence open requests, geofence detection requests Identify geofence detection actions for geofences, and more.
其中,所述应用处理器(Application Processor,AP):电子设备上的应用处理器,应用处理器上面运行操作系统(如安卓系统、ios系统等)、各种应用软件和用户界面。Wherein, the application processor (Application Processor, AP): an application processor on an electronic device, on which an operating system (such as an Android system, an ios system, etc.), various application software, and a user interface run.
在相关技术中,在涉及到对地理围栏的业务操作场景中,如地理围栏更新、地理围栏检测等,通常以应用处理器为主处理器,也就是说地理围栏的业务操作场景相关的复杂数据处理过程全部或大部分由应用处理器进行处理,即使涉及到低功耗控制器(可以是SensorHub)获取地理围栏业务中相关的底层传感器数据,低功耗控制器上也仅仅实现对传感数据的初步处理,而在应用处理器侧进行算法应用等最终复杂的算法数据处理。本申请所不同的是,由于应用处理器通常功耗是远高于低功耗控制器的,为降低地理围栏的功耗,本申请涉及的所述地理围栏控制方法以低功耗控制器(可以是SensorHub)为主处理器,将与地理围栏控制方法涉及的目标业务操作主要在低功耗控制器进行响应,从而改变相关技术中的操作响应逻辑,诸如前述业务操作场景相关的复杂数据处理过程全部或大部分,复杂数据处理过程可以立即为涉及到业务操作的算法数据处理过程,如位置定位算法、围栏匹配算法等等。In related technologies, in the business operation scenarios involving geo-fences, such as geo-fence update, geo-fence detection, etc., the application processor is usually used as the main processor, that is to say, complex data related to geo-fence business operation scenarios All or most of the processing is handled by the application processor. Even if it involves a low-power controller (which can be SensorHub) to obtain relevant underlying sensor data in the geofencing business, the low-power controller only realizes the sensing data The preliminary processing of the algorithm, while the final complex algorithm data processing such as algorithm application is performed on the application processor side. The difference in this application is that since the power consumption of the application processor is usually much higher than that of the low-power controller, in order to reduce the power consumption of the geo-fence, the geo-fence control method involved in this application uses a low-power controller ( It can be SensorHub) as the main processor, and responds to the target business operations involved in the geo-fence control method mainly in the low-power controller, thereby changing the operation response logic in related technologies, such as complex data processing related to the aforementioned business operation scenarios All or most of the process, the complex data processing process can immediately be the algorithm data processing process related to business operations, such as location positioning algorithm, fence matching algorithm and so on.
S102:控制所述低功耗控制器响应于所述目标业务操作,对所述地理围栏进行围栏业务处理。S102: Control the low power consumption controller to perform fence service processing on the geo-fence in response to the target service operation.
其中,电子设备所包含的低功耗控制器的功耗通常要小于所述应用处理器的功耗。Wherein, the power consumption of the low power consumption controller included in the electronic device is usually lower than the power consumption of the application processor.
具体的,电子设备基于应用处理器确定目标业务操作之后,后续操作响应过程进行操作响应控制,通过操作响应将响应操作的过程下移至低功耗环境的低功耗控制器中进行响应,也就是说整个目标业务操作的响应过程以低功耗控制器为主处理器进行响应处理,进一步的,不同的目标业务操作对应相关的业务操作响应流程;基于目标业务操作对应相关的业务操作响应流程执行相关处理任务即可完成响应,具体实施中,电子设备响应于所述目标业务操作,控制低功耗控制器执行所述目标业务操作对应的目标处理任务,目标处理任务时与目标业务操作的业务操作响应流程对应的业务处理任务,在一些实施例中,所述目标处理任务至少包括地理围栏注册任务、地理围栏检测任务、地理围栏更新任务、地理围栏触发任务、地理围栏管理任务、地理围栏检测任务中的一种。Specifically, after the electronic device determines the target service operation based on the application processor, the subsequent operation response process performs operation response control, and the process of responding to the operation is moved down to the low-power consumption controller in the low-power consumption environment for response through the operation response. That is to say, the response process of the entire target business operation uses the low-power controller as the main processor for response processing. Further, different target business operations correspond to the relevant business operation response process; based on the target business operation corresponding to the relevant business operation response process The response can be completed by executing the relevant processing task. In specific implementation, the electronic device controls the low power consumption controller to execute the target processing task corresponding to the target service operation in response to the target service operation. The target processing task is related to the target service operation. The business processing tasks corresponding to the business operation response process. In some embodiments, the target processing tasks include at least a geo-fence registration task, a geo-fence detection task, a geo-fence update task, a geo-fence trigger task, a geo-fence management task, a geo-fence One of the detection tasks.
示意性的,以地理围栏注册任务为例,可以至少包括以下方面:Schematically, taking the geofence registration task as an example, it may at least include the following aspects:
1.电子设备可以通过低功耗控制器来获取服务申请者(如用户、应用程序)提供的经纬度数据,可以是经纬度坐标以及半径、可以是多个经纬度坐标构成的封闭围栏数据,1. Electronic devices can obtain latitude and longitude data provided by service applicants (such as users and applications) through low-power controllers. It can be latitude and longitude coordinates and radius, and can be closed fence data composed of multiple latitude and longitude coordinates.
2.控制低功耗控制器在所包含的独立操作系统中(非应用处理器上的诸如安卓等操作系统):记录经纬度数据;2. Control the low-power controller in the included independent operating system (operating systems such as Android on non-application processors): record latitude and longitude data;
3.低功耗控制器在所包含的独立操作系统中检查该经纬度数据是否已经有相关的网络缓存数据(可节省网络查询带来的流量费用),网络缓存数据可以理解为该经纬度数据对应的信号标识(电子设备是基于信号标识与地理位置的对应关系确定位置的)。信号标识可以是基于基站的网络信号标识(可理解为基站标识)、可以是本次射频标识符的信号标识,如WiFi信号标识等。3. The low-power controller checks whether the latitude and longitude data has related network cache data in the included independent operating system (which can save the traffic cost caused by network query), and the network cache data can be understood as the corresponding data of the latitude and longitude data. Signal identification (the position of the electronic device is determined based on the correspondence between the signal identification and the geographic location). The signal identifier may be a network signal identifier based on a base station (which may be understood as a base station identifier), or may be a signal identifier of a current radio frequency identifier, such as a WiFi signal identifier.
4.若不存在上述网络缓存数据的情况下,低功耗控制器在所包含的独立操作系统向云端网络侧查询该区域相关的网络地理围栏数据,也即网络地理围栏数据,如直接向网络侧来获取地理围栏数据、或电子设备可以通过低功耗控制器触发应用处理器向网络侧获取地理围栏数据等等,地理围栏数据可以是基于全球定位系统卫星网络的经纬度围栏数据;可以是基于本次射频标识符在位置周围创建的虚拟边界所对应的围栏数据,如WiFi地理围栏数据。4. If the above-mentioned network cache data does not exist, the low-power controller queries the cloud network side for the relevant network geo-fence data of the area in the included independent operating system, that is, the network geo-fence data, such as directly to the network side to obtain geofence data, or electronic devices can trigger the application processor to obtain geofence data from the network side through a low-power controller, etc. The geofence data can be based on the longitude and latitude fence data of the global positioning system satellite network; it can be based on The fence data corresponding to the virtual border created by the radio frequency identifier this time, such as WiFi geofence data.
5.低功耗控制器在所包含的独立操作系统创建基于前述网络地理围栏数据的本次地理围栏对象,并将地理围栏对象反馈给服务申请者。5. The low-power controller creates the current geo-fence object based on the aforementioned network geo-fence data in the included independent operating system, and feeds the geo-fence object back to the service applicant.
基于上述释义,电子设备在执行地理围栏注册任务时,不采用相关技术中以应用处理器为主处理器 的技术构思,而是以低功耗环境下的低功耗控制器为主处理器,将全部或大部分围栏注册数据处理工作在低功耗环境下执行,以低功耗控制器为主,如非必要不调用或触发应用处理器工作,以节省与地理围栏相关的围栏注册功耗。Based on the above interpretation, when an electronic device performs a geofence registration task, it does not adopt the technical concept of using the application processor as the main processor in the related technology, but uses a low-power controller in a low-power environment as the main processor. Execute all or most of the fence registration data processing work in a low-power environment, focusing on low-power controllers. If it is not necessary, do not call or trigger the application processor to save power consumption related to geo-fence fence registration .
示意性的,以地理围栏更新任务为例,可以至少包括以下方面:Schematically, taking the geofence update task as an example, it may at least include the following aspects:
1.地理围栏在实际应用中,可对应一个数据失效期,低功耗控制器通过独立操作系统根据服务申请者指定的数据失效期,定时向网络侧查询相应的网络地理围栏数据,定时触发过程包括但不限于:直接向网络侧来获取网络地理围栏数据、或电子设备可以通过低功耗控制器触发应用处理器向网络侧获取网络地理围栏数据等等。1. In practical applications, the geofence can correspond to a data expiration period. The low-power controller regularly queries the corresponding network geofence data from the network side through the independent operating system according to the data expiration period specified by the service applicant, and triggers the process regularly. Including but not limited to: obtaining the network geo-fence data directly from the network side, or the electronic device can trigger the application processor to obtain the network geo-fence data from the network side through the low-power controller.
2.查询到新的网络地理围栏数据后,即在地理围栏对应的存储位置对原事数据进行网络地理围栏数据的更新。2. After querying the new network geofence data, update the network geofence data on the original data at the storage location corresponding to the geofence.
基于上述释义,电子设备在执行地理围栏更新任务时,以低功耗环境下的低功耗控制器为主处理器,将全部或大部分地理围栏更新处理工作在低功耗环境下执行,以低功耗控制器为主,如非必要不调用或触发应用处理器工作,以节省与地理围栏相关的围栏更新功耗。Based on the above interpretation, when an electronic device performs a geofence update task, the low-power controller in a low-power environment is used as the main processor, and all or most of the geo-fence update processing is performed in a low-power environment. The low-power controller is the main one, and if it is not necessary, it does not call or trigger the application processor to work, so as to save the power consumption of the fence update related to the geo-fence.
示意性的,以地理围栏管理任务为例,可以至少包括以下方面:Schematically, taking the geofence management task as an example, it may at least include the following aspects:
1.低功耗控制器获取服务申请者(可以是应用处理器上的应用)针对某一地理围栏对象的对象标识,通常可以是服务申请者请求对地理位置做出相应操作(修改、删除、启动、停止等等)1. The low-power controller obtains the object identifier of a service applicant (which can be an application on the application processor) for a certain geo-fence object, usually it can be that the service applicant requests to perform corresponding operations on the geographic location (modify, delete, start, stop, etc.)
2.低功耗控制器的独立系统根据服务申请者的操作命令,对基于对象标识确定的相应的地理围栏做出对应操作:2. The independent system of the low-power controller performs corresponding operations on the corresponding geographical fence determined based on the object identifier according to the operation command of the service applicant:
如:修改一个已经启动的地理围栏,低功耗控制器的独立系统直接响应修改命令对以及启动的地理围栏的数据进行修改,如修改地理围栏的范围,修改完成后可直接生效实现已启动的地理围栏热修改。For example: to modify a geo-fence that has been activated, the independent system of the low-power controller directly responds to the modification command to modify the data of the geo-fence that has been activated, such as modifying the range of the geo-fence, after the modification is completed, it can directly take effect to realize the activated geo-fence Geofence hot modification.
如:删除一个已经启动的地理围栏,低功耗控制器的独立系统直接响应删除命令对地理围栏进行停止并释放相关地理围栏数据。For example: to delete an activated geofence, the independent system of the low power controller directly responds to the deletion command to stop the geofence and release the relevant geofence data.
如:启动一个地理围栏,低功耗控制器的独立系统直接响启动指令,开始定位检测围栏代表的条件是否满足,如是否满足地理围栏启动的时间、位置等条件。For example: start a geo-fence, the independent system of the low-power controller directly responds to the start command, and starts to locate and detect whether the conditions represented by the fence are met, such as whether the time and location of the geo-fence start are met.
基于上述释义,电子设备在执行地理围栏管理任务时,以低功耗环境下的低功耗控制器为主处理器,将全部或大部分地理围栏管理处理工作在低功耗环境下执行,以低功耗控制器为主,如非必要不调用或触发应用处理器工作,以节省与地理围栏相关的围栏管理功耗。Based on the above definition, when an electronic device performs a geo-fence management task, the low-power controller in a low-power environment is used as the main processor, and all or most of the geo-fence management processing is performed in a low-power environment. The low-power controller is the main one, and if it is not necessary, it does not call or trigger the application processor to work, so as to save the power consumption of the fence management related to the geo-fence.
示意性的,以地理围栏检测任务为例,可以至少包括以下方面:Schematically, taking the geofence detection task as an example, it may at least include the following aspects:
1.低功耗控制器的独立系统根据地理围栏指定的检测频率查询当前的网络基站信号1. The independent system of the low-power controller queries the current network base station signal according to the detection frequency specified by the geo-fence
2.低功耗控制器的独立系统根据查询到的网络基站信号和注册的网络定位数据库(表征大量基站信号标识与实际基站位置对应关系的集合数据)进行匹配确定网络基站信号对应的地理位置;网络基站信号常由LAI(Location Area Identification)+CID(Cell Identity)组成的,LAI由(MCC+MNC+LAC)组成。其中MCC全名Mobile Country Code,移动国家码,三位数,如中国为460。MNC全名Mobile Network Code,移动网络号,两位数。LAC全名Location Area Code,是一个2个字节长的十六进制BCD码(不包括0000和FFFE)。Cell Identity小区码,同样是2个字节长的十六进制BCD码。确定网络基站信号对应的粗略地理位置(通常采用基站定位手段获取的位置精确度不高,常是一个粗略的位置,后续涉及到地理围栏精准地理位置检测需要开启相关定位技术);2. The independent system of the low-power controller performs matching to determine the geographic location corresponding to the network base station signal according to the queried network base station signal and the registered network positioning database (collective data representing the corresponding relationship between a large number of base station signal identifiers and actual base station locations); Network base station signals are often composed of LAI (Location Area Identification)+CID (Cell Identity), and LAI is composed of (MCC+MNC+LAC). Among them, the full name of MCC is Mobile Country Code, a three-digit mobile country code, such as 460 in China. MNC full name Mobile Network Code, mobile network number, two digits. The full name of LAC is Location Area Code, which is a 2-byte hexadecimal BCD code (excluding 0000 and FFFE). Cell Identity is also a 2-byte hexadecimal BCD code. Determine the rough geographic location corresponding to the network base station signal (usually the location obtained by the base station positioning method is not accurate, it is often a rough location, and the subsequent detection of the precise geographic location of the geo-fence needs to enable the relevant positioning technology);
3.低功耗控制器的独立系统匹配到合适的网络基站信号对应的位置后来触发后续地理围栏涉及的精准定位技术(如卫星定位、wifi定位),具体根据地理围栏类型的不同,发起相应操作,场景地理围栏类型可以是经纬度围栏、wifi围栏;3. The independent system of the low-power controller matches the position corresponding to the appropriate network base station signal, and then triggers the precise positioning technology (such as satellite positioning and wifi positioning) involved in the subsequent geo-fence, and initiates the corresponding operation according to the type of geo-fence , the scene geofence type can be longitude and latitude fence, wifi fence;
(1)对于经纬度类型围栏,低功耗控制器控制定位模块启动定时的卫星定位来获取精准的位置,然后判断位置是否落入到地理围栏的位置范围内(1) For longitude and latitude type fences, the low-power controller controls the positioning module to start timing satellite positioning to obtain accurate positions, and then judges whether the position falls within the position range of the geo-fence
(2)对于wifi类型围栏,低功耗控制器查询需要对比的wifi数据确定WiFi信号标识对应的位置,然后判断位置是否落入到地理围栏的位置范围内;(2) For the wifi type fence, the low-power controller queries the wifi data that needs to be compared to determine the location corresponding to the WiFi signal identification, and then judges whether the location falls within the location range of the geofence;
4.,若位置落入到地理围栏的位置范围内,则低功耗控制器触发围栏上报流程,可以是触发应用处理器进行围栏提醒。4. If the location falls within the location range of the geo-fence, the low-power controller triggers a fence reporting process, which may be to trigger the application processor to perform a fence reminder.
需要说明的是,上述各地理围栏任务仅仅是为了举例释义,不对涉及地理围栏任务的具体流程进行限定,可基于实际应用情况对相干地理围栏任务的具体流程进行设置。It should be noted that the above-mentioned geo-fence tasks are just examples and explanations, and do not limit the specific processes involving geo-fence tasks, and the specific processes of related geo-fence tasks can be set based on actual application conditions.
基于上述释义,电子设备在执行地理围栏检测任务时,以低功耗环境下的低功耗控制器为主处理器,将全部或大部分地理围栏检测处理工作在低功耗环境下执行,以低功耗控制器为主,如非必要不调用或触发应用处理器工作,以节省与地理围栏相关的围栏检测功耗。Based on the above definition, when an electronic device performs a geofence detection task, the low-power controller in a low-power environment is used as the main processor, and all or most of the geo-fence detection processing is performed in a low-power environment. The low-power controller is the main one. If it is not necessary, it does not call or trigger the application processor to work, so as to save the power consumption of the fence detection related to the geo-fence.
在本申请实施例中,电子设备可以确定针对地理围栏的目标业务操作(针对地理围栏注册、地理围栏检测、地理围栏更新等的业务操作)通过控制所述低功耗控制器响应于所述目标业务操作,由低功耗控制器作为操作响应的主处理器来对所述地理围栏进行围栏业务处理。通过以低功耗环境下的低功耗控制器为主处理器,将地理围栏检测处理工作在低功耗环境下执行,实现以低功耗控制器为主进行地理围栏业务处理,来节省与地理围栏相关的地理围栏业务功耗,同时优化了相关技术中基于应用处理器为主进行操作响应的业务响应流程。In the embodiment of the present application, the electronic device can determine the target business operation for the geo-fence (business operations for geo-fence registration, geo-fence detection, geo-fence update, etc.) by controlling the low-power controller to respond to the target For business operation, the low power consumption controller acts as the main processor of the operation response to perform fence business processing on the geo-fence. By using the low-power controller in the low-power environment as the main processor, the geo-fence detection and processing work is executed in the low-power environment, and the geo-fence business processing is realized with the low-power controller as the main processor, so as to save and The power consumption of geofence services related to geofences, and at the same time optimize the business response process based on application processor-based operation response in related technologies.
请参见图2,图2是本申请提出的一种地理围栏控制方法的另一种实施例的流程示意图。具体的:Please refer to FIG. 2 . FIG. 2 is a schematic flowchart of another embodiment of a geofence control method proposed by the present application. specific:
S201:获取应用处理器上的围栏服务请求,基于所述围栏服务请求确定针对地理围栏的目标业务操作。S201: Obtain a fence service request on an application processor, and determine a target service operation for a geofence based on the fence service request.
根据一些实施例中,所述应用处理器(Application Processor,AP)是指电子设备上的应用处理器;应用处理器上面运行操作系统(如安卓系统、ios系统等)、各种应用软件和用户界面,应用处理器上的围栏服务请求可理解为从应用处理器上运行的应用服务来获取,应用服务可理解为应用处理器上的应用软件所对应的服务;如地图类应用对应的出现服务、购物类应用对应的推送服务、外卖类应用对应的外卖服务等等,这些应用可订阅或关联应用处理器上的地理围栏服务。According to some embodiments, the application processor (Application Processor, AP) refers to the application processor on the electronic device; the application processor runs the operating system (such as Android system, ios system, etc.), various application software and user interface, the fence service request on the application processor can be understood as being obtained from the application service running on the application processor, and the application service can be understood as the service corresponding to the application software on the application processor; for example, the appearance service corresponding to the map application , the push service corresponding to the shopping application, the food delivery service corresponding to the food delivery application, etc., these applications can subscribe to or associate with the geofence service on the application processor.
围栏服务请求时针对地理围栏上的围栏业务所触发的服务请求,围栏业务包括但不限于地理围栏注册业务、地理围栏检测业务、地理围栏更新业务、地理围栏触发业务、地理围栏管理业务、地理围栏检测业务等等,具体基于实际应用环境确定。When a fence service is requested, it is a service request triggered by a fence service on a geofence. The fence service includes but is not limited to a geofence registration service, a geofence detection service, a geofence update service, a geofence trigger service, a geofence management service, and a geofence Detection services, etc., are determined based on the actual application environment.
在本申请中,针对地理围栏的围栏服务请求通常是在电子设备所包含的应用处理器中所触发的,电子设备通过应用处理器可获取由电子设备的用户操作所搭载的应用主动触发的针对地理围栏的围栏服务请求。In this application, the fence service request for the geo-fence is usually triggered in the application processor included in the electronic device, through which the electronic device can obtain the geo-fence request actively triggered by the application carried by the user operation of the electronic device. Fence service requests for geofences.
根据一些实施例中,电子设备获取应用处理器上至少一个应用的围栏服务请求,然后通过对围栏服务请求进行解析,来基于所述围栏服务请求确定针对地理围栏的目标业务操作,如基于地理围栏更新请求确定针对地理围栏的地理围栏更新操作、基于地理围栏注册请求确定针对地理围栏的地理围栏注册操作、基于地理围栏开启请求确定针对地理围栏的地理围栏开启操作、基于地理围栏检测请求确定针对地理围栏的地理围栏检测操作等等。According to some embodiments, the electronic device acquires the fence service request of at least one application on the application processor, and then analyzes the fence service request to determine the target business operation for the geo-fence based on the fence service request, such as based on the geo-fence The update request determines the geofence update operation for geofences, the geofence registration operation determines the geofence registration operation for geofences, the geofence open operation determines the geofence open operation for geofences based on the geofence open request, and the geofence detection operation determines the geofence Geofence detection operations for fences and more.
S202:响应于所述目标业务操作,控制低功耗控制器从所述应用处理器上获取地理围栏数据;S202: In response to the target service operation, control the low power consumption controller to acquire geofence data from the application processor;
低功耗控制器是一种低功耗的器件,低功耗控制器其在工作状态下的功耗远低于电子设备的应用处理器,低功耗控制器至少可以包括智能传感集线器、一些数字信号处理器等;低功耗控制器上进行地理围栏业务对应的算法数据部署,实际应用中基于低功耗控制器来实现不依赖应用处理器自主对“地理围栏”的业务的执行处理,也就是说以低功耗控制器为主处理器,优先通过低功耗控制器响应地理围栏相关的操作,低功耗控制器提供一种低功耗的环境。The low-power controller is a low-power device. The power consumption of the low-power controller in the working state is much lower than that of the application processor of the electronic device. The low-power controller can at least include an intelligent sensor hub, Some digital signal processors, etc.; low-power controllers are used to deploy algorithm data corresponding to geo-fence services. In practical applications, low-power controllers are used to implement independent processing of "geo-fence" services without relying on application processors. , that is to say, the low-power controller is used as the main processor, and the low-power controller responds to geofence-related operations first, and the low-power controller provides a low-power environment.
在一些实施方式中,低功耗控制器可以是智能传感集线器(SensorHub),可以是专用数字信号处理器,如专用音频数字信号处理器(ADSP)等,在一些场景下低功耗控制器也称之为传感器中枢、传感器控制中心等等。低功耗控制器与电子设备的多个传感器(Sensor)相关联,比如距离传感器、光线传感器、陀螺仪等等。随着传感器技术的迭代更新,传感集线器所对应的传感器消耗的功率都在不断下降,这使得电子设备具备了实时检测更多所谓的环境状态信息的可能性,也就是说,不管电子设备是在工 作还是在待机,连续读取诸如加速度、方向、坐标、温度、气压、磁场等环境数据的传感器所消耗的能量成本接近为0。在本申请中,用于与地理围栏的业务流程相关算法数据均可部署在SensorHub上。In some implementations, the low-power controller can be a smart sensor hub (SensorHub), or a dedicated digital signal processor, such as a dedicated audio digital signal processor (ADSP). In some scenarios, the low-power controller Also known as sensor hub, sensor control center and so on. The low-power controller is associated with multiple sensors (Sensors) of electronic devices, such as distance sensors, light sensors, gyroscopes, and so on. With the iterative update of sensor technology, the power consumed by the sensors corresponding to the sensor hub is constantly decreasing, which makes it possible for electronic devices to detect more so-called environmental status information in real time, that is, no matter whether the electronic device is Whether working or standby, the energy cost consumed by sensors that continuously read environmental data such as acceleration, direction, coordinates, temperature, air pressure, and magnetic field is close to zero. In this application, the algorithm data related to the business process of geofencing can be deployed on SensorHub.
电子设备基于应用处理器确定目标业务操作之后,后续操作响应过程进行操作响应控制,通过操作响应将响应操作的过程下移至低功耗环境的低功耗控制器中进行响应,也就是说整个目标业务操作的响应过程以低功耗控制器为主处理器进行响应处理,尽量或避免应用处理器为参与地理围栏业务,在涉及到地理围栏业务场景时,通常需要基于网络侧来获取用于后续地理围栏检测任务的地理围栏数据,所述地理围栏数据可理解为构建地理围栏所需的数据,也可理解为网络地理围栏数据,地理围栏数据可以是基于全球定位系统卫星网络的经纬度围栏数据;可以是基于本次射频标识符在位置周围创建的虚拟边界所对应的围栏数据,如WiFi地理围栏数据。After the electronic device determines the target business operation based on the application processor, the subsequent operation response process performs operation response control, and the process of responding to the operation is moved down to the low-power consumption controller in the low-power environment for response through the operation response, that is to say, the entire The response process of the target business operation uses the low-power controller as the main processor to perform response processing, and try to avoid or avoid the application processor from participating in the geo-fence business. When it comes to geo-fence business scenarios, it is usually necessary to obtain information for The geofence data of the follow-up geofence detection task, the geofence data can be understood as the data required to construct the geofence, and can also be understood as the network geofence data, the geofence data can be the longitude and latitude fence data based on the global positioning system satellite network ; It can be the fence data corresponding to the virtual boundary created around the location based on the radio frequency identifier this time, such as WiFi geofence data.
在本申请实施例中与相关技术中不同的是,确定目标业务操作后,电子设备不采用以应用处理器向进行响应而是基于目标业务操作流转至低功耗控制器中,实际实施中,若目标业务操作在应用处理器的应用上触发则确定是地理围栏相关的业务操作后,应用处理器将该业务操作流转至低功耗控制器,在应用处理器上不对目标业务操作响应而仅可做初步的操作类型判断,低功耗控制器对上述目标业务操作进行响应,实现以低功耗控制器为主处理器进行处理,在涉及到需要从网络侧进行数据交互场景时,低功耗控制器通过响应目标业务操作,触发应用处理器去从网络获取相关交互数据,也就是说整个涉及应用处理器的过程,应用处理器仅作为辅助处理器,通过将应用处理器作为在地理围栏场景下低功耗控制器的协处理器协助处理地理围栏的相关业务。In the embodiment of the present application, the difference from the related technology is that after the target business operation is determined, the electronic device does not use the application processor to respond but transfers to the low-power controller based on the target business operation. In actual implementation, If the target business operation is triggered on the application of the application processor, it is determined that it is a business operation related to geofencing, and the application processor transfers the business operation to the low-power controller. The application processor does not respond to the target business operation but only Preliminary operation type judgment can be made. The low-power controller responds to the above-mentioned target business operations, and the low-power controller is used as the main processor for processing. When it comes to data interaction scenarios from the network side, the low-power The consumption controller triggers the application processor to obtain relevant interaction data from the network by responding to the target business operation, that is to say, in the whole process involving the application processor, the application processor is only used as an auxiliary The coprocessor of the low-power controller in the scenario assists in processing geofence-related services.
进一步,在本实施例中以下将对如何基于获取的地理围栏数据实现地理围栏检测进行释义,通常电子设备可控制低功耗控制器基于地理围栏数据采用低功耗定位模式进行地理围栏定位。具体步骤执行过程参见下述释义。Further, in this embodiment, how to implement geo-fence detection based on the acquired geo-fence data will be explained below. Generally, the electronic device can control the low-power controller to perform geo-fence positioning based on the geo-fence data in a low-power positioning mode. Please refer to the following explanations for the specific steps and execution process.
S203:获取网络位置数据,以及低功耗定位模式的模式触发条件;S203: Obtain network location data and a mode trigger condition of the low-power positioning mode;
在涉及到地理围栏检测过程中,电子设备的低功耗控制器通常需要频繁检测行进或运动过程中电子设备所处位置,长时间基于高功耗的定位技术如卫星导航定位技术会提升地理围栏控制的功耗,在本申请中为了控制地理围栏相关的功耗,节省电子设备的电量,将整个地理围栏检测所涉及的算法处理下移至低功耗控制器上,在涉及到位置定位时,向基于电子设备网络信号进行网络位置获取,也即获取网络位置数据,网络位置数据基于站点(如基站)的信号标识实现定位,When it comes to geo-fence detection, the low-power controllers of electronic devices usually need to frequently detect the location of electronic devices during travel or movement. Long-term positioning technologies based on high power consumption, such as satellite navigation and positioning technology, will improve geo-fence Controlled power consumption. In this application, in order to control the power consumption related to geo-fences and save the power of electronic devices, the algorithm processing involved in the entire geo-fence detection is moved down to the low-power controller. When it comes to location positioning , to obtain the network location based on the network signal of the electronic device, that is, to obtain the network location data, and the network location data is based on the signal identification of the site (such as a base station) to achieve positioning,
具体实施中,依靠电子设备通过低功耗控制器调用调制解调器modem获取附近网络基站信号,网络基站信号常由LAI(Location Area Identification)+CID(Cell Identity)组成的,LAI由(MCC+MNC+LAC)组成。其中MCC全名Mobile Country Code,移动国家码,三位数,如中国为460。MNC全名Mobile Network Code,移动网络号,两位数。LAC全名Location Area Code,是一个2个字节长的十六进制BCD码(不包括0000和FFFE)。Cell Identity小区识别码,同样是2个字节长的十六进制BCD码。由于预先从网络侧获取到“大量基站信号标识与实际基站位置对应关系的集合数据”也可理解为网络定位数据库,然后将该网络基站信号与网络定位数据库中的基站信号标识进行匹配,确定出相匹配的目标基站信号标识,然后目标基站信号对应的实际位置可作为一种网络位置数据,通常确定的网络基站信号对应的粗略地理位置(通常采用基站定位手段获取的位置精确度不高,常是一个粗略的位置,后续涉及到地理围栏精准地理位置检测需要开启相关定位技术);In the specific implementation, relying on the electronic device to call the modem through the low-power controller to obtain the signal of the nearby network base station, the network base station signal is often composed of LAI (Location Area Identification) + CID (Cell Identity), and the LAI is composed of (MCC + MNC + LAC )composition. Among them, the full name of MCC is Mobile Country Code, a three-digit mobile country code, such as 460 in China. MNC full name Mobile Network Code, mobile network number, two digits. The full name of LAC is Location Area Code, which is a 2-byte hexadecimal BCD code (excluding 0000 and FFFE). The Cell Identity cell identification code is also a 2-byte long hexadecimal BCD code. Since the "aggregate data of the corresponding relationship between a large number of base station signal identifiers and actual base station locations" is obtained from the network side in advance, it can also be understood as a network positioning database, and then the network base station signals are matched with the base station signal identifiers in the network positioning database to determine the The matching target base station signal identification, and then the actual location corresponding to the target base station signal can be used as a kind of network location data, usually the rough geographic location corresponding to the network base station signal determined (usually the position accuracy obtained by means of base station positioning is not high, often It is a rough location, and the follow-up involves precise location detection of geofences, which need to enable related positioning technologies);
所述低功耗定位模式可以理解为通过模块化技术基于相应定位技术实现高精度低功耗的定位方式,采用低功耗定位模式获取的位置数据的位置精度高于网络位置数据的位置精度。The low-power positioning mode can be understood as a high-precision and low-power positioning method based on the corresponding positioning technology through modular technology, and the location accuracy of the location data obtained by using the low-power location mode is higher than that of the network location data.
在一些实施方式中,低功耗定位模式是一种采用诸如卫星导航系统(GNSS)等第一定位方式获取的高精度位置为参考,后续采用第二定位方式以高精度位置为参考基准进行针对电子设备在移动过程中至少一个第二位置数据的位置推算或航位推算,诸如第二定位方式可以是采用神经网络的位置或航位推算的位置获取技术,从而可获取到高精度位置,且由于位置推算过程中仅基于传感器感测到的传感数据进行推算因此可在满足位置精度获取要求的同时大幅节省设备功耗。In some implementations, the low-power positioning mode is a high-precision position obtained by a first positioning method such as a satellite navigation system (GNSS) as a reference, and the second positioning method is used to target the high-precision position as a reference Position reckoning or dead reckoning of at least one second position data during the movement of the electronic device, such as the second positioning method may be a position acquisition technology using a neural network or dead reckoning, so that a high-precision position can be obtained, and Since the position estimation process is only based on the sensory data sensed by the sensor, it can greatly save power consumption of the device while meeting the position accuracy acquisition requirements.
低功耗定位模式,与相关技术中仅基于诸如卫星导航系统的卫星定位、wifi定位等以获取高精度位 置不同的是,低功耗定位模式下不用实时开启诸如GNSS定位等第一定位方式,仅依据诸如GNSS定位等第一定位方式来获取作为参考基站的参考位置后续通过诸如“基于神经网络的步行者航位推算融合”的第二定位方式进行位置推算,位置推算过程中第一定位方式对应的定位模块可进入休眠模式。从而节省高精度定位的功耗消耗。另一方面,考虑到实际应用情况,将高精度的地理围栏检测等地理围栏业务部署在低功耗芯片上,受限于低功耗控制器的处理能力要弱于应用处理器,而高精度的围栏定位等地理围栏业务通常功耗很高计算量较大,为了保护低功耗控制器以及降低低功耗控制器的功耗,要避免长时间进行高功耗的第一定位方式。The low-power positioning mode is different from the related technologies that only obtain high-precision positions based on satellite positioning and wifi positioning such as satellite navigation systems. In the low-power positioning mode, the first positioning method such as GNSS positioning does not need to be activated in real time. Only based on the first positioning method such as GNSS positioning to obtain the reference position as the reference base station, and then perform position estimation through the second positioning method such as "pedestrian dead reckoning fusion based on neural network". During the position estimation process, the first positioning method The corresponding positioning module can enter sleep mode. Therefore, the power consumption of high-precision positioning is saved. On the other hand, considering the actual application situation, deploying high-precision geo-fence detection and other geo-fence services on low-power chips is limited by the fact that the processing capability of low-power controllers is weaker than that of application processors, while high-precision Geo-fencing services such as fence positioning usually consume a lot of power and require a lot of calculations. In order to protect and reduce the power consumption of low-power controllers, it is necessary to avoid the first positioning method with high power consumption for a long time.
模式触发条件是针对低功耗定位模式的启动条件;模式触发条件可以是基于地理围栏对象预估的网络定位时长,如在起始阶段预估电子设备到达临近地理围栏范围的时间,将该时间作为网络定位时长,条件可以是:当前定位时长满足网络定位时长,可以理解的是在临近地理围栏范围时才开启高精度的低功耗定位模式;模式触发条件可以是基于地理围栏对象设置间隔距离,如在获取到网络定位数据之后,条件可以是:计算网络定位数据指示的位置距离地理围栏覆盖范围的距离,距离需要满足间隔距离,才开启低功耗定位模式;模式触发条件可以是基于地理围栏对象设置的至少一个临近地理位置,条件可以是:网络定位数据指示的位置与前述临近地理位置匹配,如两者距离小于距离阈值认为两者匹配,等等。The mode trigger condition is the activation condition for the low-power positioning mode; the mode trigger condition can be the network positioning duration estimated based on the geofence object, such as the estimated time for the electronic device to reach the adjacent geofence range at the initial stage, and the time As the network positioning duration, the condition can be: the current positioning duration satisfies the network positioning duration. It is understandable that the high-precision low-power positioning mode is only turned on when it is close to the geofence range; the mode trigger condition can be set based on the distance between the geofence objects , for example, after the network positioning data is obtained, the condition can be: calculate the distance between the position indicated by the network positioning data and the coverage area of the geofence, and the distance needs to meet the interval distance before enabling the low-power positioning mode; the mode trigger condition can be based on geography At least one adjacent geographic location set by the fence object, the condition may be: the location indicated by the network positioning data matches the aforementioned adjacent geographic location, if the distance between the two is smaller than the distance threshold, the two are considered to match, and so on.
如图3所示,图3是本申请涉及的一种围栏检测的场景示意图,电子设备获取行程路线对应的目标站点为图3中的“高碑店站点”,电子设备的用户在乘坐如图所示的轨道交通工具从起始站点“九棵树”,在行进过程中,电子设备从行程起始站点“九棵树”到“高碑店站点”,电子设备在乘坐交通工具行进过程中前期均采用网络定位方式(如采用基站定位的方式)获取网络定位数据,在行进过程中每持续获取到网络定位数据判断网络位置数据与所述模式触发条件是否相匹配,所述模式触发条件为基于与目的站点的距离为三个站点的距离,也即需要到达如图3所示的“管庄”站点时才可以开启低功耗定位模式。As shown in Figure 3, Figure 3 is a schematic diagram of a fence detection scene involved in this application. The target site corresponding to the travel route obtained by the electronic device is the "Gaobeidian site" in Figure 3, and the user of the electronic device is riding as shown in the figure. The rail vehicle shown is from the starting station "Jiukeshu", and the electronic equipment is traveling from the starting station "Jiukeshu" to the "Gaobeidian station", and the electronic equipment is traveling on the transportation vehicle In the early stage, the network positioning method (such as the base station positioning method) is used to obtain the network positioning data, and every time the network positioning data is continuously obtained during the travel process, it is judged whether the network position data matches the trigger condition of the mode. The trigger condition of the mode is Based on the distance to the destination site being three sites, that is, the low power consumption positioning mode can be turned on only when the “Guanzhuang” site as shown in FIG. 3 needs to be reached.
进一步的,如图4所示,图4是本申请涉及的另一种围栏检测的场景示意图,图4反应图3中各阶段进行围栏检测的方式,图4中电子设备为302所示的设备,在起始站点“九棵树”起,电子设备302持续采用网络定位的方式进行定位,当达到如图3所示的“管庄”站点,电子设备302开启低功耗定位模式持续进行地理围栏检测,检测所述电子设备302是否进入到目的站点的地理围栏对应的范围内,当电子设备进入到目的站点的地理范围内,执行地理围栏触发业务,如图4所示,可以进行提醒,电子设备302输出如图4中310所示的提示信息。Further, as shown in FIG. 4, FIG. 4 is a schematic diagram of another fence detection scene involved in the present application. FIG. 4 reflects the way of fence detection at each stage in FIG. 3, and the electronic device in FIG. 4 is the device shown in 302 , starting from the starting site "Nine Trees", the electronic device 302 continues to use the network positioning method for positioning, and when it reaches the "Guanzhuang" site as shown in Figure 3, the electronic device 302 turns on the low-power positioning mode and continues to perform geo-fencing Detection, detecting whether the electronic device 302 has entered the range corresponding to the geographic fence of the destination site, when the electronic device enters the geographic range of the destination site, the geo-fence trigger service is executed, as shown in Figure 4, a reminder can be made, the electronic The device 302 outputs prompt information as shown at 310 in FIG. 4 .
S204:若所述网络位置数据与所述模式触发条件相匹配,则控制所述低功耗控制器基于所述地理围栏数据采用低功耗定位模式获取设备位置数据。S204: If the network location data matches the mode trigger condition, control the low power consumption controller to acquire device location data in a low power consumption positioning mode based on the geofence data.
在一种可行的实施方式中,在起始阶段预估电子设备到达临近地理围栏范围的时间,将该时间作为网络定位时长,模式触发条件可以是:当前定位时长满足网络定位时长,确定获取网络位置数据的时间等于或大于网络定位时长,则认为所述网络位置数据与所述模式触发条件相匹配。In a feasible implementation, the time when the electronic device arrives near the geographic fence is estimated at the initial stage, and this time is used as the network positioning duration. If the time of the location data is equal to or greater than the network positioning duration, it is considered that the network location data matches the mode trigger condition.
在一种可行的实施方式中,模式触发条件可以是:计算网络定位数据指示的位置距离地理围栏覆盖范围的距离,距离需要满足间隔距离;也就是说在网络定位数据指示的位置距离地理围栏覆盖范围的距离等于小于间隔距离时,确定所述网络位置数据与所述模式触发条件相匹配。In a feasible implementation, the mode triggering condition may be: calculate the distance between the position indicated by the network positioning data and the coverage area of the geofence, and the distance needs to meet the separation distance; When the distance of the range is equal to or less than the separation distance, it is determined that the network location data matches the mode trigger condition.
在一种可行的实施方式中,模式触发条件可以是基于地理围栏对象设置的至少一个临近地理位置,条件可以是:网络定位数据指示的位置与前述临近地理位置匹配;也就是说网络定位数据指示的位置为临近地理位置时,确定所述网络位置数据与所述模式触发条件相匹配。In a feasible implementation manner, the mode trigger condition may be at least one nearby geographic location set based on the geofence object, and the condition may be: the location indicated by the network positioning data matches the aforementioned nearby geographic location; that is to say, the location indicated by the network positioning data When the location of is close to the geographic location, it is determined that the network location data matches the pattern trigger condition.
需要说明的是,上述模式触发条件可基于实际应用情况进行设置,在本申请中不作具体限定。It should be noted that the foregoing mode trigger conditions may be set based on actual application conditions, and are not specifically limited in this application.
以下对涉及的低功耗定位模式进行释义。The following explains the low power consumption positioning mode involved.
根据一些实施例中,低功耗定位模式是一种基于诸如卫星导航系统(GNSS)等第一定位方式进行高精度位置获取为参考与基于神经网络的步行者航位推算融合的定位模式,与相关技术中仅基于诸如卫星导航系统的卫星定位以获取高精度位置不同的是,低功耗定位模式下不用实时开启诸如GNSS定位等第一定位方式,仅依据诸如GNSS定位等第一定位方式为起始位置后续通过“基于神经网络的步行者航位推算融合”进行位置推算,位置推算过程中第一定位方式对应的定位模块可进入休眠模式。从而节省 高精度定位的功耗消耗。另一方面,将高精度的围栏定位部署在低功耗芯片上,受限于低功耗控制器的处理能力要弱于应用处理器,而高精度的围栏定位通常功耗很高计算量较大,为了保护低功耗控制器以及降低低功耗控制器的功耗,要避免长时间进行高功耗的第一定位方式。According to some embodiments, the low-power positioning mode is a positioning mode based on a first positioning method such as a satellite navigation system (GNSS) for high-precision position acquisition as a reference and neural network-based pedestrian dead reckoning fusion positioning mode, and In the related art, only based on satellite positioning such as satellite navigation system to obtain high-precision position, the low power consumption positioning mode does not need to start the first positioning method such as GNSS positioning in real time, but only based on the first positioning method such as GNSS positioning. The starting position is subsequently calculated through "neural network-based pedestrian dead reckoning fusion". During the position calculation process, the positioning module corresponding to the first positioning method can enter the sleep mode. Thereby saving the power consumption of high precision positioning. On the other hand, deploying high-precision fence positioning on low-power chips is limited by the fact that the processing power of low-power controllers is weaker than that of application processors, and high-precision fence positioning usually consumes a lot of power and requires less calculation. Large, in order to protect the low-power controller and reduce the power consumption of the low-power controller, it is necessary to avoid the first positioning method of high power consumption for a long time.
在本申请中第一定位方式可以是卫星定位方式、基于无线保真(Wireless Fidelity,Wi-Fi)的定位、超宽带(Ultra WideBand,UWB)定位等基于LBS的高精度的定位技术。In this application, the first positioning method may be a satellite positioning method, a wireless fidelity (Wireless Fidelity, Wi-Fi) based positioning, an ultra wide band (Ultra WideBand, UWB) positioning and other LBS-based high-precision positioning technology.
在本申请中,低功耗定位模式可至少分为第一定位阶段和第二定位阶段;In this application, the low power consumption positioning mode can be at least divided into a first positioning phase and a second positioning phase;
1、(在第一定位阶段)电子设备控制低功耗控制器采用第一定位方式获取所述电子设备的第一位置数据;1. (In the first positioning stage) the electronic device controls the low-power controller to obtain the first location data of the electronic device in a first positioning manner;
所述第一位置数据由电子设备控制低功耗控制器采用第一定位方式获取到的高精度的位置数据,可以理解的是第一位置数据的位置精度大于一些实施例中网络位置数据的位置精度,如采用卫星定位技术、Wi-Fi定位技术等。The first location data is high-precision location data obtained by the electronic device controlling the low-power controller using the first positioning method. It can be understood that the location accuracy of the first location data is greater than that of the network location data in some embodiments. Accuracy, such as the use of satellite positioning technology, Wi-Fi positioning technology, etc.
在本申请中,第一定位方式开启仅仅是为了获取至少一个或少量的高精度的第一位置数据作为参考点,获取到之后可控制第一定位方式对应的定位模块进入休眠状态或关闭状态,以节省地理围栏检测的功耗。在后续的第二定位阶段基于采用神经网络的步行者导航推算融合方式:以第一位置数据作为参考,在电子设备的位置变化过程中确定针对电子设备后续的至少一个第二位置数据。In this application, the first positioning method is turned on only to obtain at least one or a small amount of high-precision first position data as a reference point. After the acquisition, the positioning module corresponding to the first positioning method can be controlled to enter a sleep state or an off state. To save power consumption for geofence detection. In the subsequent second positioning stage, based on the pedestrian navigation calculation and fusion method using neural network: using the first position data as a reference, determine at least one subsequent second position data for the electronic device during the position change process of the electronic device.
2、(在第二定位阶段)电子设备控制低功耗控制器采用神经网络的步行者导航推算融合方式基于第一位置数据获取针对所述电子设备的至少一个第二位置数据。2. (In the second positioning stage) the electronic device controls the low-power controller to obtain at least one second position data for the electronic device based on the first position data in a pedestrian navigation calculation and fusion method using a neural network.
所述第二位置数据由电子设备控制低功耗控制器是以第一位置数据为参考结合低功耗控制器获取的传感数据采用神经网络的步行者导航推算融合方式得到的。是一种基于第一位置数据进行位置踪迹推算的位置确定技术。The second location data is obtained by the electronic device controlling the low-power controller with reference to the first location data and the sensory data obtained by the low-power controller using neural network to obtain pedestrian navigation reckoning fusion. It is a position determination technology based on the first position data for position tracking calculation.
具体的,电子设备控制低功耗控制器调用传感器采集传感数据,具体实施中可获取基于第一位置数据的移动加速度数据,可以理解为,采用第一定位方式确定第一位置数据之后,就休眠第一定位方式对应的定位模块,然后获取后续在电子设备移动过程中每一采样周期的移动加速度数据,所述加速度数据是针对电子设备的至少一个指定方向上加速度,如由加速度计、陀螺仪、磁力计等传感器件得到针对电子设备的前、后、左、右、上、下等指定方向上的加速度。Specifically, the electronic device controls the low-power controller to call the sensor to collect sensing data. In the specific implementation, the mobile acceleration data based on the first position data can be obtained. It can be understood that after the first position data is determined by the first positioning method, the Sleep the positioning module corresponding to the first positioning mode, and then acquire the subsequent mobile acceleration data of each sampling period during the movement of the electronic device, the acceleration data is the acceleration in at least one specified direction of the electronic device, such as by accelerometer, gyroscope Acceleration in specified directions such as front, rear, left, right, up, and down of electronic equipment can be obtained by sensor devices such as instrumentation and magnetometers.
进一步的,电子设备控制低功耗控制器将所述移动加速度数据输入至基于神经网络的导航推算模型中,输出移动速度数据;然后基于所述移动速度数据确定位置位移数据,具体实施中,基于移动速度数据和采样间隔时间进行积分运算即可,从而得到位置位移数据。Further, the electronic device controls the low-power controller to input the moving acceleration data into the neural network-based navigation calculation model, and output the moving speed data; then determine the position and displacement data based on the moving speed data. In specific implementation, based on The moving speed data and the sampling interval time can be integrated to obtain the position displacement data.
电子设备控制低功耗控制器基于所述第一位置数据和所述位置位移数据,进行数据累计处理,从而可以确定针对所述电子设备的第二位置数据;The electronic device controls the low-power controller to perform data accumulation processing based on the first position data and the position displacement data, so as to determine the second position data for the electronic device;
进一步,可基于前述方式实现在电子设备移动过程中的连续位置确定,电子设备实际上将所述第二位置数据作为下一所述第一位置数据,然后执行所述获取基于第一位置数据的移动加速度数据的步骤即可。如此循环执行,Further, the continuous position determination during the moving process of the electronic device can be realized based on the aforementioned method, the electronic device actually uses the second position data as the next first position data, and then performs the acquisition based on the first position data. The steps to move the acceleration data are sufficient. In this way, the loop is executed,
也就说在,在每一采样间隔时间ti内((i为正整数),可基于移动加速度数据ai确定位移数据si,然后基于第一位置数据与位移数据si进行累计处理(即在第一位置数据对应的坐标点上累计位移si,得到第二位置数据对应的坐标点),得到采样间隔时间ti对应的第二位置数据。进一步的,电子设备可基于前述方式循环执行,从而确定每一采样间隔时间ti内对应的第二位置数据,实现在第二定位阶段的针对电子设备在移动过程中的连续定位。That is to say, within each sampling interval time ti ((i is a positive integer), the displacement data si can be determined based on the mobile acceleration data ai, and then cumulative processing is performed based on the first position data and displacement data si (that is, in the first Accumulated displacement si on the coordinate point corresponding to the position data, obtain the coordinate point corresponding to the second position data), and obtain the second position data corresponding to the sampling interval time ti. Further, the electronic device can be executed cyclically based on the aforementioned method, thereby determining each Sampling the corresponding second position data within the interval ti realizes the continuous positioning of the electronic device during the second positioning phase.
以下对本申请涉及的基于神经网络的导航推算模型进行释义,基于上述释义可以理解的是,本申请所涉及的步行者航位推算与相关技术中采用固定的公式进行单一预测计算不一样,本申请涉及的采用神经网络的步行者导航推算融合方式可大幅提升PDR算法的位置定位精度,减少定位误差。The following is an interpretation of the neural network-based navigation reckoning model involved in this application. Based on the above interpretation, it can be understood that the pedestrian dead reckoning involved in this application is different from the single prediction calculation using a fixed formula in the related art. The involved pedestrian navigation calculation fusion method using neural network can greatly improve the position positioning accuracy of the PDR algorithm and reduce positioning errors.
具体实施中,所述导航推算模型可以是基于神经网络构建初始模型之后经模型训练之后得到的;In specific implementation, the navigation reckoning model may be obtained after model training after constructing an initial model based on a neural network;
具体实施中,可以预先训练导航推算模型,预先获取电子设备实际移动场景下的大量包含加速度参数的样本数据,将上述样本数据输入至导航推算模型中进行训练,输出移动速度,所述导航推算模型由 多个已知标注样本速度对应的样本数据训练得到。In a specific implementation, the navigation reckoning model can be pre-trained, and a large amount of sample data including acceleration parameters in the actual mobile scene of the electronic device is obtained in advance, and the above sample data is input into the navigation reckoning model for training, and the moving speed is output. The navigation reckoning model It is trained from multiple sample data corresponding to known labeled sample velocities.
具体的,通过预先从实际应用环境中获取大量各种移动场景类型(如奔跑、步行、乘车等)下的样本数据,提取特征信息,并对所述样本数据进行标注,所述特征信息包含指定方向(如针对电子设备的前、后、左、右、上、下等指定方向上的加速度)上的加速度,创建初始的导航推算模型。所述导航推算模型可以是使用大量的样本数据对初始的导航推算模型进行训练的,如导航推算模型可以是基于LR(Logistic Regression,逻辑回归模型)、SVM(Support Vector Machine,支持向量机)、决策树、朴素贝叶斯分类器、CNN(Convolutional Neural Network,卷积神经网络)、RNN(Recurrent Neural Networks,递归神经网络)、深度神经网络(Deep Neural Network,DNN)模型等中的一种或多种实现,基于已经标注标签(标注好的移动速度)的样本数据对初始的导航推算模型进行训练,可以得到训练好的导航推算模型。Specifically, by obtaining a large amount of sample data in various types of mobile scenarios (such as running, walking, riding, etc.) from the actual application environment in advance, feature information is extracted, and the sample data is marked, and the feature information includes An initial navigation reckoning model is created for the acceleration in a specified direction (for example, for accelerations in specified directions such as front, rear, left, right, up, and down) of the electronic device. Described navigation calculation model can be to use a large amount of sample data to train initial navigation calculation model, can be based on LR (Logistic Regression, logistic regression model), SVM (Support Vector Machine, support vector machine) as navigation calculation model, One of decision tree, naive Bayesian classifier, CNN (Convolutional Neural Network, convolutional neural network), RNN (Recurrent Neural Networks, recurrent neural network), deep neural network (Deep Neural Network, DNN) model, etc. or Various implementations, the initial navigation reckoning model is trained based on sample data that has been labeled (marked moving speed), and a trained navigation reckoning model can be obtained.
示意性的,本实施例中采用引入误差反向传播算法的DNN-ResNet模型创建初始的导航推算模型,提取特征信息之后,将特征信息以特征向量的形式输入到所述神经网络模型中,进行训练,训练完成生产导航推算模型;Schematically, in this embodiment, the DNN-ResNet model that introduces the error backpropagation algorithm is used to create the initial navigation calculation model. After extracting the feature information, the feature information is input into the neural network model in the form of feature vectors, and the Training, training to complete the production navigation reckoning model;
在一些实施方式中神经网络模型的训练过程通常可由正向传播和反向传播两部分组成,在正向传播过程中,终端输入样本数据对应的特征信息从所述神经网络模型的输入层经过隐层神经元(也称节点)的传递函数(又称激活函数、转换函数)运算后,传向输出层,其中每一层神经元状态影响下一层神经元状态,在输出层计算实际输出值-第一语音标识,计算所述实际输出值与期望输出值的期望误差,基于所述期望误差调整所述神经网络模型的参数,所述参数包含每一层的权重值和阈值,训练完成后,生成导航推算模型。In some implementations, the training process of the neural network model usually consists of two parts: forward propagation and back propagation. During the forward propagation process, the feature information corresponding to the terminal input sample data passes through the hidden After the transfer function (also known as activation function, conversion function) of layer neurons (also called nodes) is calculated, it is transmitted to the output layer, where the state of neurons in each layer affects the state of neurons in the next layer, and the actual output value is calculated in the output layer - the first voice mark, calculate the expected error between the actual output value and the expected output value, adjust the parameters of the neural network model based on the expected error, the parameters include the weight value and threshold of each layer, after the training is completed , generating a navigation reckoning model.
在一种可行的实施方式中,在上述(第二定位阶段中)采用神经网络的步行者导航推算融合方式定位移动过程中的第二位置数据,由于第二位置数据实质上是一种位置推算方式,随着时间的累计航位推算的第二位置数据的坐标与真实坐标会存在误差积累的过程,在本申请中,可再引入第一定位方式进行误差修复,也即采用所述第一定位方式对所述第二位置数据进行位置修正处理。In a feasible implementation manner, in the above-mentioned (in the second positioning stage), the pedestrian navigation calculation and fusion method using the neural network is used to locate the second position data in the moving process, because the second position data is essentially a kind of position calculation In this way, there will be a process of error accumulation between the coordinates of the second position data and the real coordinates of the accumulated dead reckoning over time. In this application, the first positioning method can be introduced again for error repair, that is, the first positioning method can be used. The positioning method performs position correction processing on the second position data.
具体实施中,在上述(第二定位阶段中)采用第二定位方式推送移动过程中电子设备的第二位置数据,可基于一定的间隔周期来间隔开启第一定位方式(如卫星定位方式)获取第三位置数据,然后基于第三位置数据对第二定位方式中基于神经网络的导航推送模型推算出的第二位置数据进行位置修正处理,对产生的位置推算偏差进行纠正。所述位置修正处理可以是对“第三位置数据”和“基于神经网络的导航推送模型推算出的第二位置数据”进行位置加权处理,通过分别赋予不同的权重值,然后加权处理后得到一个经过修正之后的第二位置数据并基于此时的第二位置数据继续进行步行者导航推算确定下一第二位置数据。In the specific implementation, in the above (in the second positioning stage), the second positioning method is used to push the second position data of the electronic device during the movement, and the first positioning method (such as satellite positioning method) can be started at intervals based on a certain interval period to obtain The third position data, and then perform position correction processing on the second position data calculated by the neural network-based navigation push model in the second positioning method based on the third position data, and correct the generated position estimation deviation. The position correction process may be to perform position weighting processing on the "third position data" and "the second position data calculated by the neural network-based navigation push model", by assigning different weight values respectively, and then obtain a Based on the corrected second position data, the navigation calculation of pedestrians is continued to determine the next second position data.
具体实施中,可在“采用第二定位方式基于第一位置数据确定针对电子设备的至少一个第二位置数据”的过程中,设置采用第一定位方式进行位置修正的触发条件。In a specific implementation, in the process of "determining at least one second location data for the electronic device based on the first location data using the second positioning method", a trigger condition for position correction using the first positioning method may be set.
在一种可行的实施方式中,可设置位置修正周期(如10s),所述位置修正周期用于电子设备在“第二定位方式基于第一位置数据确定针对电子设备的至少一个第二位置数据”的过程中,每到达位置修正周期的时间点,同时启动第一定位方式获取所述电子设备的第三位置数据,基于所述第三位置数据对所述第二位置数据进行位置修正处理。其中,位置修正周期的确定可基于实际应用环境中采集移动数据进行数理分析得到的一个经验值。In a feasible implementation manner, a position correction period (such as 10s) can be set, and the position correction period is used for the electronic device to determine at least one second position data for the electronic device based on the first position data in the second positioning mode. In the process of ", each time the time point of the position correction cycle is reached, the first positioning method is simultaneously started to obtain the third position data of the electronic device, and the position correction process is performed on the second position data based on the third position data. Wherein, the determination of the position correction period may be based on an empirical value obtained through mathematical analysis of collected mobile data in an actual application environment.
在一种可行的实施方式中,可设置基准行程距离,所述基准行程距离用于电子设备在“采用神经网络的步行者导航推算融合方式定位移动过程中的第二位置数据”的过程中,行程每到达位置基准行程距离(如100m),同时启动第一定位方式获取所述电子设备的第三位置数据,基于所述第三位置数据对所述第二位置数据进行位置修正处理。In a feasible implementation manner, a reference travel distance can be set, and the reference travel distance is used for the electronic device in the process of "using the pedestrian navigation reckoning and fusion method of neural network to locate the second position data in the moving process", Every time the trip reaches the position reference travel distance (for example, 100m), the first positioning method is started to acquire the third position data of the electronic device at the same time, and the position correction processing is performed on the second position data based on the third position data.
在本申请中,实现了基于诸如导航推算模型进行位置推算的第二定位方式和第一定位方式通过设置合理的调度策略,在确定行进过程中的第二位置适时开启第一定位方式定位过程,兼顾全时段的定位精度和定位功耗;以及,通过引入神经网络的第二定位方式和位置修正机制的地理围栏检测策略,进一步 的降低了采用第一定位方式的功耗,以及可提升地理围栏检测业务中由于所处环境影响采用第一定位方式信号较差时采用第二定位方式可获取到定位精度高的位置,如提升在室内定位场景下的定位精度等等。In this application, the second positioning method and the first positioning method based on the position estimation based on the navigation reckoning model are realized. By setting a reasonable scheduling strategy, the positioning process of the first positioning method is started at the right time when the second position in the process of travel is determined. Taking into account the positioning accuracy and positioning power consumption of the whole period; and, by introducing the second positioning method of the neural network and the geographic fence detection strategy of the position correction mechanism, the power consumption of the first positioning method is further reduced, and the geographic fence can be improved. In the detection business, due to the influence of the environment, the first positioning method is used when the signal is poor, and the second positioning method can be used to obtain a position with high positioning accuracy, such as improving the positioning accuracy in indoor positioning scenarios.
S205:基于设备位置数据检测所述电子设备是否进入到所述地理围栏对应的范围内。S205: Detect whether the electronic device enters a range corresponding to the geo-fence based on the device location data.
所述设备位置数据包括本申请实施例中的网络位置数据、第一位置数据、第二位置数据、第三位置数据中的至少一种,实际应用中至少包括第二位置数据,The device location data includes at least one of the network location data, the first location data, the second location data, and the third location data in the embodiments of the present application, and at least includes the second location data in practical applications,
在本申请中,电子设备控制低功耗控制器来检测所述电子设备是否进入到所述地理围栏对应的范围内,若检测到所述电子设备进入到地理围栏范围内,则此时控制低功耗控制器执行地理围栏触发业务。In this application, the electronic device controls the low-power controller to detect whether the electronic device enters the range corresponding to the geo-fence. The power consumption controller executes the geo-fence triggering service.
在本申请实施例中,电子设备可以确定针对地理围栏的目标业务操作(针对地理围栏注册、地理围栏检测、地理围栏更新等的业务操作)通过控制所述低功耗控制器响应于所述目标业务操作,由低功耗控制器作为操作响应的主处理器来对所述地理围栏进行围栏业务处理。通过以低功耗环境下的低功耗控制器为主处理器,将地理围栏检测处理工作在低功耗环境下执行,实现以低功耗控制器为主进行地理围栏业务处理,来节省与地理围栏相关的地理围栏业务功耗,同时优化了相关技术中基于应用处理器为主进行操作响应的业务响应流程。In the embodiment of the present application, the electronic device can determine the target business operation for the geo-fence (business operations for geo-fence registration, geo-fence detection, geo-fence update, etc.) by controlling the low-power controller to respond to the target For business operation, the low power consumption controller acts as the main processor of the operation response to perform fence business processing on the geo-fence. By using the low-power controller in the low-power environment as the main processor, the geo-fence detection and processing work is executed in the low-power environment, and the geo-fence business processing is realized with the low-power controller as the main processor, so as to save and The power consumption of geofence services related to geofences, and at the same time optimize the business response process based on application processor-based operation response in related technologies.
请参见图5,图5是本申请提出的一种地理围栏控制方法的另一种实施例的流程示意图。具体的:Please refer to FIG. 5 . FIG. 5 is a schematic flowchart of another embodiment of a geofence control method proposed by the present application. specific:
S301:确定针对地理围栏的目标业务操作;S301: Determine a target business operation for the geo-fence;
具体可参见本申请的其他实施例,此处不再赘述,For details, please refer to other embodiments of the present application, which will not be repeated here.
S302:控制所述低功耗控制器响应于所述目标业务操作,仅通过低功耗控制器执行对所述地理围栏的目标处理任务;S302: Control the low power consumption controller to respond to the target service operation, and only execute the target processing task for the geofence through the low power consumption controller;
具体的,电子设备控制所述低功耗控制器响应于所述目标业务操作,具体执行过程中基于目标业务操作,仅由低功耗控制器执行对所述地理围栏的目标处理任务;进一步的,若目标处理任务涉及到相应的应用处理器上所搭载的应用相关的必要人机交互过程(如输出信息、显示画面等)和/或与网络侧的数据必要交互过程,由低功耗控制器控制应用处理器进行执行,如发送相关操作指令指示应用处理器完成,Specifically, the electronic device controls the low-power controller to respond to the target service operation, and only the low-power controller executes the target processing task for the geo-fence based on the target service operation during the specific execution process; further , if the target processing task involves the necessary human-computer interaction process (such as output information, display screen, etc.) related to the application carried on the corresponding application processor and/or the necessary interaction process with the data on the network side, it is controlled by low power consumption The processor controls the application processor to execute, such as sending relevant operation instructions to instruct the application processor to complete,
S303:控制所述低功耗控制器响应于所述目标业务操作,将应用处理器作为所述低功耗控制器的协处理器,控制低功耗控制器和应用处理器共同执行所述目标业务操作对应的目标处理任务。S303: Control the low-power controller to respond to the target service operation, use the application processor as a coprocessor of the low-power controller, and control the low-power controller and the application processor to jointly execute the target The target processing task corresponding to the business operation.
根据一些实施方式中,确定目标业务操作后,电子设备不采用以应用处理器向进行响应而是基于目标业务操作流转至低功耗控制器中,整个涉及应用处理器的过程,应用处理器仅作为辅助处理器,低功耗处理器作为主处理器,通过将应用处理器作为在地理围栏场景下低功耗控制器的协处理器协助处理地理围栏的相关业务。进一步的,在实际应用场景中,还可基于低功耗控制器的当前处理器状态,在基于数据处理优先部署在低功耗处理器上完成的前提下,基于低功耗控制器的处理器状态进行负载分流,将原由低功耗处理器全部进行数据处理的任务分流部分至应用处理器上完成,或调用应用处理器与低功耗控制器共同完成部分处理任务,实现动态的负载均衡,同时也在保证地理围栏处理效率以及低功耗控制器的状态的情况下,降低了地理围栏业务控制的功耗。According to some implementations, after the target service operation is determined, the electronic device does not use the application processor to respond, but transfers it to the low-power controller based on the target service operation. In the entire process involving the application processor, the application processor only As an auxiliary processor, the low-power processor acts as the main processor, and assists in processing geo-fence-related services by using the application processor as a co-processor of the low-power controller in the geo-fence scenario. Furthermore, in actual application scenarios, based on the current processor state of the low-power controller, the processor based on the low-power controller The state performs load distribution, and distributes all the data processing tasks originally performed by the low-power processor to the application processor for completion, or calls the application processor and the low-power controller to jointly complete part of the processing tasks, and realizes dynamic load balancing. At the same time, the power consumption of the geofence service control is reduced under the condition of ensuring the processing efficiency of the geofence and the state of the low-power controller.
在一种具体的实施场景中,若目标业务操作在应用处理器的应用上触发则确定是地理围栏相关的业务操作后,应用处理器将该业务操作流转至低功耗控制器,在应用处理器上不对目标业务操作响应仅可做初步的操作类型判断,低功耗控制器对上述目标业务操作进行响应,实现以低功耗控制器为主处理器进行处理,在涉及到需要从网络侧进行数据交互场景时,低功耗控制器通过响应目标业务操作,触发应用处理器去从网络获取相关交互数据,也就是说整个涉及应用处理器的过程,应用处理器仅作为辅助处理器,通过将应用处理器作为在地理围栏场景下低功耗控制器的协处理器协助处理地理围栏的相关业务。In a specific implementation scenario, if the target business operation is triggered on the application of the application processor, it is determined that it is a business operation related to geofencing, and the application processor transfers the business operation to the low-power controller. The device does not respond to the target service operation and can only make a preliminary judgment of the operation type. The low-power controller responds to the above-mentioned target service operations, and realizes that the low-power controller is the main processor for processing. When performing data interaction scenarios, the low-power controller triggers the application processor to obtain relevant interaction data from the network by responding to the target business operation. The application processor is used as a coprocessor of the low-power controller in the geo-fence scenario to assist in processing geo-fence-related services.
在一种具体的实施场景中,电子设备通过低功耗控制器和应用处理器执行所述目标业务操作对应的目标处理任务,具体实施过程中:In a specific implementation scenario, the electronic device executes the target processing task corresponding to the target service operation through the low-power controller and the application processor. During the specific implementation process:
1、电子设备可预先获取低功耗控制器对应的任务状态参数;1. The electronic device can obtain the task status parameters corresponding to the low-power controller in advance;
所述任务状态参数可以是低功耗控制器的所有线程的线程总开销量、可以是针对低功耗控制器的富余资源量。The task state parameter may be the total thread overhead of all threads of the low-power controller, or may be the amount of surplus resources for the low-power controller.
所述线程总开销量可以理解为低功耗控制器在执行过程中会产生诸如空间(内存耗用)和时间(运行时的执行性能)上的开销。所述时间(运行时的执行性能)上的开销可以是功耗开销、性能开销、上下文切换开销、处理器资源开销(如I/O口的数量)等等。The total thread overhead can be understood as overhead such as space (memory consumption) and time (execution performance during runtime) generated by the low-power controller during execution. The time overhead (execution performance during runtime) may be power consumption overhead, performance overhead, context switching overhead, processor resource overhead (such as the number of I/O ports), and the like.
所述富余资源量可以理解为低功耗控制器在满足当前正在运行的处理任务的资源需求而剩余的资源量。所述资源主要是低功耗控制器包含的处理单元的计算资源,资源的定义可以是内存大小、I/O口的数量、通过I/O口关联的计算单元、控制单元等等。The amount of surplus resources may be understood as the amount of resources left by the low power consumption controller to meet the resource requirements of the currently running processing tasks. The resource is mainly the computing resource of the processing unit contained in the low-power controller, and the definition of the resource may be the memory size, the number of I/O ports, the computing unit associated with the I/O port, the control unit, and so on.
具体实施中可以通过预先创建用于监控低功耗控制器当前的富余资源量和/或线程总开销量的进程,并为该进程分配资源池的计算资源,用于实时或周期性对低功耗控制器当前的富余资源量和/或线程总开销量进行监测,通过该进程即可获取到低功耗控制器的富余资源量和/或线程总开销量。In the specific implementation, a process for monitoring the current surplus resources and/or total thread overhead of the low-power controller can be created in advance, and the computing resources of the resource pool can be allocated to the process for real-time or periodic processing of low-power The current surplus resources and/or total thread overhead of the power consumption controller are monitored, and the surplus resources and/or total thread overhead of the low-power consumption controller can be obtained through this process.
2、基于所述任务状态参数将所述目标业务操作对应的目标处理任务划分为第一处理任务和第二处理任务,所述第一处理任务的任务量大于所述第二处理任务的任务量。2. Divide the target processing task corresponding to the target business operation into a first processing task and a second processing task based on the task state parameter, and the task amount of the first processing task is greater than the task amount of the second processing task .
所述目标处理任务是目标业务操作对应的处理任务,所述目标处理任务至少包括地理围栏注册任务、地理围栏检测任务、地理围栏更新任务、地理围栏触发任务、地理围栏管理任务、地理围栏检测任务中的一种。The target processing task is a processing task corresponding to the target business operation, and the target processing task includes at least a geo-fence registration task, a geo-fence detection task, a geo-fence update task, a geo-fence trigger task, a geo-fence management task, and a geo-fence detection task One of.
所述第一处理任务是目标处理任务对应的任务处理流程中至少一个步骤执行对应的步骤信息,可理解为目标处理任务的子任务,第一处理任务主要由低功耗控制器执行。The first processing task is the step information corresponding to the execution of at least one step in the task processing flow corresponding to the target processing task, which can be understood as a subtask of the target processing task, and the first processing task is mainly executed by the low power consumption controller.
所述第二处理任务是目标处理任务对应的任务处理流程中至少一个步骤执行对应的步骤信息,可理解为目标处理任务的子任务,第二处理任务主要由低功耗控制器执行;在一些实施方式:第二处理任务可以与第一处理任务存在交叉任务,可以理解的是交叉任务由低功耗控制器和应用处理器共同执行。The second processing task is the step information corresponding to the execution of at least one step in the task processing flow corresponding to the target processing task, which can be understood as a subtask of the target processing task, and the second processing task is mainly performed by the low-power controller; in some Implementation manner: the second processing task may have a cross task with the first processing task, and it can be understood that the cross task is jointly executed by the low power consumption controller and the application processor.
以所述任务状态参数为富余资源量为例:Take the task state parameter as the amount of surplus resources as an example:
低功耗控制器基于所述任务状态参数,将所述目标业务操作对应的目标处理任务划分为第一处理任务和第二处理任务,具体实施中:可以获取所述目标业务操作对应的目标处理任务的历史资源开销量;然后基于所述历史资源开销量和所述富余资源量,将所述目标处理任务划分为第一处理任务和第二处理任务。The low power consumption controller divides the target processing task corresponding to the target business operation into a first processing task and a second processing task based on the task state parameter. During specific implementation: the target processing task corresponding to the target business operation can be obtained The historical resource expenditure amount of the task; then, based on the historical resource expenditure amount and the surplus resource amount, divide the target processing task into a first processing task and a second processing task.
所述历史资源开销量可以理解为历史执行目标处理任务时所对应的资源开销量。The amount of historical resource overhead can be understood as the amount of resource overhead corresponding to the historical execution of the target processing task.
在一种可行的实施方式中,可以基于历史资源开销量评估开销分数A,基于富余资源量评估富余分数B,则在开销分数A大于富余分数B时,执行将所述目标处理任务划分为第一处理任务和第二处理任务,第二处理任务的确定是基于应用处理器可以处理的执行步骤中来确定。以使得低功耗控制器可以基于富余资源量成功响应第一处理任务即可。In a feasible implementation manner, the overhead score A can be evaluated based on the amount of historical resource overhead, and the surplus score B can be estimated based on the amount of surplus resources. Then, when the overhead fraction A is greater than the surplus fraction B, divide the target processing task into the first A processing task and a second processing task, the determination of the second processing task is determined based on the execution steps that the application processor can process. It is sufficient that the low power consumption controller can successfully respond to the first processing task based on the amount of surplus resources.
进一步的,将所述目标处理任务划分出的第二处理任务可以是并行处理任务,也即低功耗控制器与应用处理器共同执行的处理任务。Further, the second processing task divided from the target processing task may be a parallel processing task, that is, a processing task jointly executed by the low power consumption controller and the application processor.
3、通过所述低功耗控制器执行所述第一处理任务,通过所述应用处理器执行所述第二处理任务。3. The low power consumption controller executes the first processing task, and the application processor executes the second processing task.
在一种可行的实施方式中,电子设备可以监测所述低功耗控制器的任务执行状态,在所述任务执行状态为任务负载状态的情况下,从当前执行目标处理任务对应的执行步骤中进行任务负载分流,从目标处理任务中负载分流出第三处理任务;从而实现基于所述任务执行状态从所述低功耗控制器对应的所述目标处理任务中确定第三处理任务的步骤;然后通过所述应用处理器执行所述第三处理任务,从而分担低功耗控制器的处理压力。In a feasible implementation manner, the electronic device can monitor the task execution state of the low-power controller, and when the task execution state is a task load state, the execution steps corresponding to the current execution target processing task performing task load offloading, and offloading the third processing task from the target processing task; thereby realizing the step of determining a third processing task from the target processing tasks corresponding to the low power consumption controller based on the task execution state; Then, the application processor executes the third processing task, so as to share the processing pressure of the low power consumption controller.
在本申请实施例中,电子设备可以确定针对地理围栏的目标业务操作(针对地理围栏注册、地理围栏检测、地理围栏更新等的业务操作)通过控制所述低功耗控制器响应于所述目标业务操作,由低功耗控制器作为操作响应的主处理器来对所述地理围栏进行围栏业务处理。通过以低功耗环境下的低功耗控制器为主处理器,将地理围栏检测处理工作在低功耗环境下执行,实现以低功耗控制器为主进行地理围栏业务处理,来节省与地理围栏相关的地理围栏业务功耗,同时优化了相关技术中基于应用处理器为主进行操作响应的业务响应流程。以及,整个涉及应用处理器的过程,可将应用处理器仅作为辅助处理器,通过将应用处理器作为在地理围栏场景下低功耗控制器的协处理器协助处理地理围栏的相关业务,进一 步提升地理围栏管理的智能性;以及还可基于低功耗控制器的当前处理器状态,在基于数据处理优先部署在低功耗处理器上完成的前提下,基于低功耗控制器的处理器状态进行负载分流,将原由低功耗处理器全部进行数据处理的任务分流部分至应用处理器上完成,或调用应用处理器与低功耗控制器共同完成部分处理任务,实现动态的负载均衡。In the embodiment of the present application, the electronic device can determine the target business operation for the geo-fence (business operations for geo-fence registration, geo-fence detection, geo-fence update, etc.) by controlling the low-power controller to respond to the target For business operation, the low power consumption controller acts as the main processor of the operation response to perform fence business processing on the geo-fence. By using the low-power controller in the low-power environment as the main processor, the geo-fence detection and processing work is executed in the low-power environment, and the geo-fence business processing is realized with the low-power controller as the main processor, so as to save and The power consumption of geofence services related to geofences, and at the same time optimize the business response process based on application processor-based operation response in related technologies. And, throughout the process involving the application processor, the application processor can be used only as an auxiliary processor, and the application processor can be used as a coprocessor of the low-power controller in the geo-fence scenario to assist in processing geo-fence related services, further Improve the intelligence of geo-fence management; and based on the current processor state of the low-power controller, on the premise that data processing is prioritized on the low-power processor, the processor based on the low-power controller The state performs load distribution, and distributes all the data processing tasks originally performed by the low-power processor to the application processor for completion, or calls the application processor and the low-power controller to jointly complete part of the processing tasks to achieve dynamic load balancing.
下面将结合图6,对本申请实施例提供的地理围栏控制装置进行详细介绍。需要说明的是,图6所示的地理围栏控制装置,用于执行本申请图1~图5所示实施例的方法,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请图1~图5所示的实施例。The geo-fence control device provided by the embodiment of the present application will be described in detail below with reference to FIG. 6 . It should be noted that the geo-fence control device shown in FIG. 6 is used to execute the method of the embodiments shown in FIGS. 1 to 5 of the present application. For technical details not disclosed, please refer to the embodiments shown in FIGS. 1 to 5 of this application.
请参见图6,其示出本申请实施例的地理围栏控制装置的结构示意图。该地理围栏控制装置1可以通过软件、硬件或者两者的结合实现成为电子设备的全部或一部分。根据一些实施例,该地理围栏控制装置1包括业务确定模块11、业务处理模块12,具体用于:Please refer to FIG. 6 , which shows a schematic structural diagram of a geofence control device according to an embodiment of the present application. The geo-fence control device 1 can be implemented as all or a part of electronic equipment through software, hardware or a combination of the two. According to some embodiments, the geofence control device 1 includes a business determination module 11 and a business processing module 12, specifically for:
业务确定模块11,用于确定针对地理围栏的目标业务操作;A business determination module 11, configured to determine a target business operation for the geo-fence;
业务处理模块12,用于控制所述低功耗控制器响应于所述目标业务操作,对所述地理围栏进行围栏业务处理,所述低功耗控制器的功耗小于所述应用处理器的功耗。The business processing module 12 is configured to control the low power consumption controller to perform fence business processing on the geo-fence in response to the target business operation, and the power consumption of the low power consumption controller is less than that of the application processor power consumption.
可选的,如图7所示,所述业务确定模块11,包括:Optionally, as shown in FIG. 7, the service determination module 11 includes:
业务确定单元111,用于获取应用处理器上的围栏服务请求,基于所述围栏服务请求确定针对地理围栏的目标业务操作。The service determination unit 111 is configured to obtain a fence service request on the application processor, and determine a target service operation for the geo-fence based on the fence service request.
可选的,如图7所示,所述业务处理模块12,包括:Optionally, as shown in Figure 7, the business processing module 12 includes:
业务控制单元121,用于响应于所述目标业务操作,控制低功耗控制器执行对所述地理围栏的目标处理任务;The service control unit 121 is configured to, in response to the target service operation, control the low power consumption controller to execute the target processing task for the geo-fence;
所述目标处理任务至少包括地理围栏注册任务、地理围栏检测任务、地理围栏更新任务、地理围栏触发任务、地理围栏管理任务、地理围栏检测任务中的一种。The target processing task includes at least one of a geo-fence registration task, a geo-fence detection task, a geo-fence update task, a geo-fence trigger task, a geo-fence management task, and a geo-fence detection task.
可选的,业务控制单元121,包括:Optionally, the service control unit 121 includes:
围栏检测子单元,用于控制低功耗控制器从所述应用处理器上获取所述地理围栏检测任务的地理围栏数据,并控制所述低功耗控制器基于所述地理围栏数据进行地理围栏定位。A fence detection subunit, configured to control the low power controller to acquire geofence data of the geofence detection task from the application processor, and control the low power controller to perform geofence based on the geofence data position.
可选的,所述围栏检测单元,包括:Optionally, the fence detection unit includes:
围栏定位子单元,用于采用低功耗定位模式获取所述电子设备的设备位置数据,基于所述设备位置数据检测所述电子设备是否进入到所述地理围栏对应的范围内。The fence positioning subunit is configured to acquire device location data of the electronic device in a low-power location location mode, and detect whether the electronic device enters a range corresponding to the geo-fence based on the device location data.
可选的,所述围栏检测单元,还包括:Optionally, the fence detection unit also includes:
第一数据获取子单元,用于获取网络位置数据,以及低功耗定位模式的模式触发条件;The first data acquisition subunit is used to acquire network location data and a mode trigger condition of the low power consumption positioning mode;
第二数据获取子单元,用于若所述网络位置数据与所述模式触发条件相匹配,则执行所述采用低功耗定位模式获取所述电子设备的设备位置数据的步骤,所述低功耗定位模式对应的位置精度高于所述网络位置数据对应的位置精度。The second data acquisition subunit is configured to execute the step of acquiring the device location data of the electronic device in the low power consumption positioning mode if the network location data matches the mode trigger condition, and the low power The location accuracy corresponding to the consumption positioning mode is higher than the location accuracy corresponding to the network location data.
可选的,所述围栏定位子单元,包括:Optionally, the fence positioning subunit includes:
第一位置获取子单元,用于采用第一定位方式获取所述电子设备的第一位置数据;A first location acquisition subunit, configured to acquire first location data of the electronic device by using a first positioning method;
第二位置获取子单元,用于采用第二定位方式基于第一位置数据确定针对所述电子设备的至少一个第二位置数据,所述第二定位方式对应的定位功耗小于所述第一定位方式对应的定位功耗。The second location acquisition subunit is configured to determine at least one second location data for the electronic device based on the first location data in a second positioning manner, where the positioning power consumption corresponding to the second positioning manner is smaller than that of the first positioning The positioning power consumption corresponding to the mode.
可选的,所述第二位置获取子单元,具体用于:Optionally, the second location obtains a subunit, specifically for:
获取基于第一位置数据的移动加速度数据,将所述移动加速度数据输入基于神经网络的导航推算模型中,输出移动速度数据,基于所述移动速度数据确定位置位移数据;Obtaining movement acceleration data based on the first position data, inputting the movement acceleration data into a neural network-based navigation calculation model, outputting movement velocity data, and determining position displacement data based on the movement velocity data;
基于所述第一位置数据和所述位置位移数据,确定针对所述电子设备的第二位置数据;determining second location data for the electronic device based on the first location data and the location displacement data;
将所述第二位置数据作为下一所述第一位置数据,执行所述获取基于第一位置数据的移动加速度数据的步骤。The second position data is used as the next first position data, and the step of acquiring movement acceleration data based on the first position data is performed.
可选的,所述第二位置获取子单元,具体用于:Optionally, the second location obtains a subunit, specifically for:
采用所述第一定位方式对所述第二位置数据进行位置修正处理。Performing position correction processing on the second position data by using the first positioning manner.
可选的,所述第二位置获取子单元,具体用于:Optionally, the second location obtains a subunit, specifically for:
基于位置修正周期和/或基准行程距离,同时启动第一定位方式获取所述电子设备的第三位置数据,基于所述第三位置数据对所述第二位置数据进行位置修正处理。Based on the position correction period and/or the reference travel distance, simultaneously start the first positioning method to obtain the third position data of the electronic device, and perform position correction processing on the second position data based on the third position data.
可选的,所述装置1,具体用于:Optionally, the device 1 is specifically used for:
控制低功耗控制器执行所述目标业务操作对应的目标处理任务;和/或,controlling the low power consumption controller to execute the target processing task corresponding to the target service operation; and/or,
将应用处理器作为所述低功耗控制器的协处理器,控制低功耗控制器和应用处理器共同执行所述目标业务操作对应的目标处理任务,。The application processor is used as the coprocessor of the low power consumption controller, and the low power consumption controller and the application processor are controlled to jointly execute the target processing task corresponding to the target service operation.
可选的,所述装置1,具体用于:Optionally, the device 1 is specifically used for:
获取低功耗控制器对应的任务状态参数;Obtain the task status parameters corresponding to the low-power controller;
基于所述任务状态参数将所述目标业务操作对应的目标处理任务划分为第一处理任务和第二处理任务,所述第一处理任务的任务量大于所述第二处理任务的任务量;dividing the target processing task corresponding to the target business operation into a first processing task and a second processing task based on the task state parameter, the task amount of the first processing task being greater than the task amount of the second processing task;
控制所述低功耗控制器执行所述第一处理任务,控制所述应用处理器执行所述第二处理任务。controlling the low power consumption controller to execute the first processing task, and controlling the application processor to execute the second processing task.
可选的,所述装置1,具体用于:Optionally, the device 1 is specifically used for:
所述任务状态参数为富余资源量;The task status parameter is the amount of surplus resources;
所述基于所述任务状态参数,将所述目标业务操作对应的目标处理任务划分为第一处理任务和第二处理任务,包括:The dividing the target processing task corresponding to the target business operation into a first processing task and a second processing task based on the task status parameter includes:
获取所述目标业务操作对应的目标处理任务的历史资源开销量;Acquiring the historical resource overhead of the target processing task corresponding to the target business operation;
基于所述历史资源开销量和所述富余资源量,将所述目标处理任务划分为第一处理任务和第二处理任务。Based on the amount of historical resource overhead and the amount of surplus resources, the target processing task is divided into a first processing task and a second processing task.
可选的,所述装置1,具体用于:Optionally, the device 1 is specifically used for:
监测所述低功耗控制器的任务执行状态,基于所述任务执行状态从所述低功耗控制器对应的所述目标处理任务中确定第三处理任务;monitoring the task execution state of the low-power controller, and determining a third processing task from the target processing tasks corresponding to the low-power controller based on the task execution state;
通过所述应用处理器执行所述第三处理任务。The third processing task is executed by the application processor.
需要说明的是,上述实施例提供的地理围栏控制装置在执行地理围栏控制方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的地理围栏控制装置与地理围栏控制方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。It should be noted that when the geo-fence control device provided by the above-mentioned embodiments executes the geo-fence control method, the division of the above-mentioned functional modules is used as an example for illustration. In practical applications, the above-mentioned functions can be assigned to different functions according to needs Module completion means that the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the geo-fence control device provided by the above-mentioned embodiments belongs to the same idea as the geo-fence control method embodiment, and its implementation process is detailed in the method embodiment, and will not be repeated here.
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。The serial numbers of the above embodiments of the present application are for description only, and do not represent the advantages and disadvantages of the embodiments.
本申请实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述图1~图5所示实施例的所述地理围栏控制方法,具体执行过程可以参见图1~图5所示实施例的具体说明,在此不进行赘述。The embodiment of the present application also provides a computer storage medium, the computer storage medium can store a plurality of instructions, and the instructions are suitable for being loaded and executed by a processor as described in the above-mentioned embodiments shown in FIGS. 1 to 5 . For the geo-fence control method, the specific execution process can refer to the specific description of the embodiments shown in FIGS. 1 to 5 , and details are not repeated here.
本申请还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行如上述图1~图5所示实施例的所述地理围栏控制方法,具体执行过程可以参见图1~图5所示实施例的具体说明,在此不进行赘述。The present application also provides a computer program product, the computer program product stores at least one instruction, and the at least one instruction is loaded by the processor and executes the geofence in the embodiment shown in the above-mentioned Fig. 1 to Fig. 5 For the control method and the specific execution process, refer to the specific description of the embodiments shown in FIG. 1 to FIG. 5 , and details are not repeated here.
请参考图8,其示出了本申请一个示例性实施例提供的电子设备的结构方框图。本申请中的电子设备可以包括一个或多个如下部件:处理器110、存储器120、输入装置130、输出装置140和总线150。处理器110、存储器120、输入装置130和输出装置140之间可以通过总线150连接。Please refer to FIG. 8 , which shows a structural block diagram of an electronic device provided by an exemplary embodiment of the present application. The electronic device in this application may include one or more of the following components: a processor 110 , a memory 120 , an input device 130 , an output device 140 and a bus 150 . The processor 110 , the memory 120 , the input device 130 and the output device 140 may be connected through a bus 150 .
处理器110可以包括一个或者多个处理核心。处理器110利用各种接口和线路连接整个电子设备内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存 储器120内的数据,执行电子设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(digital signal processing,DSP)、现场可编程门阵列(field-programmable gate array,FPGA)、可编程逻辑阵列(programmable logic Array,PLA)中的至少一种硬件形式来实现。处理器110可集成中央处理器(central processing unit,CPU)、图像处理器(graphics processing unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。 Processor 110 may include one or more processing cores. The processor 110 uses various interfaces and lines to connect various parts of the entire electronic device, and executes electronic operations by running or executing instructions, programs, code sets or instruction sets stored in the memory 120, and calling data stored in the memory 120. Various functions and processing data of the device 100. Optionally, the processor 110 may use at least one of digital signal processing (digital signal processing, DSP), field-programmable gate array (field-programmable gate array, FPGA), programmable logic array (programmable logic array, PLA) implemented in the form of hardware. The processor 110 may integrate one or a combination of a central processing unit (central processing unit, CPU), an image processor (graphics processing unit, GPU), a modem, and the like. Among them, the CPU mainly handles the operating system, user interface and application programs, etc.; the GPU is used to render and draw the displayed content; the modem is used to handle wireless communication. It can be understood that, the above-mentioned modem may not be integrated into the processor 110, but may be realized by a communication chip alone.
存储器120可以包括随机存储器(random Access Memory,RAM),也可以包括只读存储器(read-only memory,ROM)。可选地,该存储器120包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等,该操作系统可以是安卓(Android)系统,包括基于Android系统深度开发的系统、苹果公司开发的IOS系统,包括基于IOS系统深度开发的系统或其它系统。存储数据区还可以存储电子设备在使用中所创建的数据比如电话本、音视频数据、聊天记录数据,等。The memory 120 may include a random access memory (random Access Memory, RAM), and may also include a read-only memory (read-only memory, ROM). Optionally, the memory 120 includes a non-transitory computer-readable storage medium. The memory 120 may be used to store instructions, programs, codes, sets of codes, or sets of instructions. The memory 120 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system and instructions for implementing at least one function (such as a touch function, a sound playback function, an image playback function, etc.) , instructions for implementing the following various method embodiments, etc., the operating system can be an Android system, including a system based on the deep development of the Android system, an IOS system developed by Apple, including a system based on the deep development of the IOS system or other systems. The storage data area can also store data created by the electronic device during use, such as phonebook, audio and video data, chat record data, and the like.
参见图9所示,存储器120可分为操作系统空间和用户空间,操作系统即运行于操作系统空间,原生及第三方应用程序即运行于用户空间。为了保证不同第三方应用程序均能够达到较好的运行效果,操作系统针对不同第三方应用程序为其分配相应的系统资源。然而,同一第三方应用程序中不同应用场景对系统资源的需求也存在差异,比如,在本地资源加载场景下,第三方应用程序对磁盘读取速度的要求较高;在动画渲染场景下,第三方应用程序则对GPU性能的要求较高。而操作系统与第三方应用程序之间相互独立,操作系统往往不能及时感知第三方应用程序当前的应用场景,导致操作系统无法根据第三方应用程序的具体应用场景进行针对性的系统资源适配。As shown in FIG. 9 , the memory 120 can be divided into an operating system space and a user space. The operating system runs in the operating system space, and native and third-party applications run in the user space. In order to ensure that different third-party application programs can achieve better running effects, the operating system allocates corresponding system resources for different third-party application programs. However, different application scenarios in the same third-party application have different requirements for system resources. For example, in the local resource loading scenario, the third-party application has higher requirements for disk reading speed; in the animation rendering scenario, the second Three-party applications have higher requirements on GPU performance. However, the operating system and third-party applications are independent of each other, and the operating system often cannot perceive the current application scenarios of the third-party applications in a timely manner, resulting in the inability of the operating system to perform targeted system resource adaptation according to the specific application scenarios of the third-party applications.
为了使操作系统能够区分第三方应用程序的具体应用场景,需要打通第三方应用程序与操作系统之间的数据通信,使得操作系统能够随时获取第三方应用程序当前的场景信息,进而基于当前场景进行针对性的系统资源适配。In order for the operating system to distinguish the specific application scenarios of third-party applications, it is necessary to open up the data communication between the third-party applications and the operating system, so that the operating system can obtain the current scene information of the third-party applications at any time, and then based on the current scene. Targeted system resource adaptation.
以操作系统为Android系统为例,存储器120中存储的程序和数据如图10所示,存储器120中可存储有Linux内核层320、系统运行时库层340、应用框架层360和应用层380,其中,Linux内核层320、系统运行库层340和应用框架层360属于操作系统空间,应用层380属于用户空间。Linux内核层320为电子设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、摄像头驱动、蓝牙驱动、Wi-Fi驱动、电源管理等。系统运行库层340通过一些C/C++库来为Android系统提供了主要的特性支持。如SQLite库提供了数据库的支持,OpenGL/ES库提供了3D绘图的支持,Webkit库提供了浏览器内核的支持等。在系统运行时库层340中还提供有安卓运行时库(Android runtime),它主要提供了一些核心库,能够允许开发者使用Java语言来编写Android应用。应用框架层360提供了构建应用程序时可能用到的各种API,开发者也可以通过使用这些API来构建自己的应用程序,比如活动管理、窗口管理、视图管理、通知管理、内容提供者、包管理、通话管理、资源管理、定位管理。应用层380中运行有至少一个应用程序,这些应用程序可以是操作系统自带的原生应用程序,比如联系人程序、短信程序、时钟程序、相机应用等;也可以是第三方开发者所开发的第三方应用程序,比如游戏类应用程序、即时通信程序、相片美化程序等。Taking the operating system as an Android system as an example, the programs and data stored in the memory 120 are shown in Figure 10, the memory 120 can store a Linux kernel layer 320, a system runtime library layer 340, an application framework layer 360 and an application layer 380, Among them, the Linux kernel layer 320 , the system runtime layer 340 and the application framework layer 360 belong to the operating system space, and the application layer 380 belongs to the user space. The Linux kernel layer 320 provides underlying drivers for various hardware of electronic devices, such as display drivers, audio drivers, camera drivers, Bluetooth drivers, Wi-Fi drivers, power management, and so on. The system runtime layer 340 provides main feature support for the Android system through some C/C++ libraries. For example, the SQLite library provides database support, the OpenGL/ES library provides 3D drawing support, and the Webkit library provides browser kernel support. An Android runtime (Android runtime) is also provided in the system runtime library layer 340, which mainly provides some core libraries and can allow developers to use the Java language to write Android applications. The application framework layer 360 provides various APIs that may be used when building applications. Developers can also use these APIs to build their own applications, such as activity management, window management, view management, notification management, content providers, Package management, call management, resource management, location management. There is at least one application program running in the application layer 380, and these application programs can be native application programs that come with the operating system, such as a contact program, a text message program, a clock program, a camera application, etc.; they can also be developed by a third-party developer Third-party applications, such as game applications, instant messaging programs, photo beautification programs, etc.
以操作系统为IOS系统为例,存储器120中存储的程序和数据如图11所示,IOS系统包括:核心操作系统层420(Core OS layer)、核心服务层440(Core Services layer)、媒体层460(Media layer)、可触摸层480(Cocoa Touch Layer)。核心操作系统层420包括了操作系统内核、驱动程序以及底层程序框架,这些底层程序框架提供更接近硬件的功能,以供位于核心服务层440的程序框架所使用。核心服务层440提供给应用程序所需要的系统服务和/或程序框架,比如基础(Foundation)框架、账户框架、广告框架、数据存储框架、网络连接框架、地理位置框架、运动框架等等。媒体层460为应用程序提供有 关视听方面的接口,如图形图像相关的接口、音频技术相关的接口、视频技术相关的接口、音视频传输技术的无线播放(AirPlay)接口等。可触摸层480为应用程序开发提供了各种常用的界面相关的框架,可触摸层480负责用户在电子设备上的触摸交互操作。比如本地通知服务、远程推送服务、广告框架、游戏工具框架、消息用户界面接口(User Interface,UI)框架、用户界面UIKit框架、地图框架等等。Taking the operating system as the IOS system as an example, the programs and data stored in the memory 120 are shown in Figure 11. The IOS system includes: a core operating system layer 420 (Core OS layer), a core service layer 440 (Core Services layer), a media layer 460 (Media layer), touchable layer 480 (Cocoa Touch Layer). The core operating system layer 420 includes an operating system kernel, drivers, and underlying program frameworks. These underlying program frameworks provide functions closer to hardware for use by the program frameworks located in the core service layer 440 . The core service layer 440 provides system services and/or program frameworks required by applications, such as foundation framework, account framework, advertisement framework, data storage framework, network connection framework, geographic location framework, exercise framework and so on. The media layer 460 provides audio-visual interfaces for applications, such as interfaces related to graphics and images, interfaces related to audio technology, interfaces related to video technology, and wireless playback (AirPlay) interfaces of audio and video transmission technologies. The touchable layer 480 provides various commonly used interface-related frameworks for application development, and the touchable layer 480 is responsible for the user's touch interaction on the electronic device. Such as local notification service, remote push service, advertising framework, game tool framework, message user interface interface (User Interface, UI) framework, user interface UIKit framework, map framework and so on.
在图11所示出的框架中,与大部分应用程序有关的框架包括但不限于:核心服务层440中的基础框架和可触摸层480中的UIKit框架。基础框架提供许多基本的对象类和数据类型,为所有应用程序提供最基本的系统服务,和UI无关。而UIKit框架提供的类是基础的UI类库,用于创建基于触摸的用户界面,iOS应用程序可以基于UIKit框架来提供UI,所以它提供了应用程序的基础架构,用于构建用户界面,绘图、处理和用户交互事件,响应手势等等。Among the frameworks shown in FIG. 11 , frameworks related to most applications include but are not limited to: the basic framework in the core service layer 440 and the UIKit framework in the touchable layer 480 . The basic framework provides many basic object classes and data types, and provides the most basic system services for all applications, regardless of UI. The class provided by the UIKit framework is a basic UI class library for creating a touch-based user interface. iOS applications can provide UI based on the UIKit framework, so it provides the infrastructure of the application for building user interfaces, drawing , Handle and user interaction events, respond to gestures, and more.
其中,在IOS系统中实现第三方应用程序与操作系统数据通信的方式以及原理可参考Android系统,本申请在此不再赘述。Wherein, the method and principle of implementing the data communication between the third-party application program and the operating system in the IOS system can refer to the Android system, and this application will not repeat them here.
其中,输入装置130用于接收输入的指令或数据,输入装置130包括但不限于键盘、鼠标、摄像头、麦克风或触控设备。输出装置140用于输出指令或数据,输出装置140包括但不限于显示设备和扬声器等。在一个示例中,输入装置130和输出装置140可以合设,输入装置130和输出装置140为触摸显示屏,该触摸显示屏用于接收用户使用手指、触摸笔等任何适合的物体在其上或附近的触摸操作,以及显示各个应用程序的用户界面。触摸显示屏通常设置在电子设备的前面板。触摸显示屏可被设计成为全面屏、曲面屏或异型屏。触摸显示屏还可被设计成为全面屏与曲面屏的结合,异型屏与曲面屏的结合,本申请实施例对此不加以限定。Wherein, the input device 130 is used for receiving input instructions or data, and the input device 130 includes but not limited to a keyboard, a mouse, a camera, a microphone or a touch device. The output device 140 is used to output instructions or data, and the output device 140 includes but not limited to a display device and a speaker. In one example, the input device 130 and the output device 140 can be set together, and the input device 130 and the output device 140 are touch screens, and the touch screen is used to receive any suitable object such as a finger, a touch pen, etc. Nearby touch operation, and display the user interface of each application. The touch display screen is usually arranged on the front panel of the electronic equipment. Touch screens can be designed as full screens, curved screens or special-shaped screens. The touch display screen can also be designed as a combination of a full screen and a curved screen, or a combination of a special-shaped screen and a curved screen, which is not limited in this embodiment of the present application.
除此之外,本领域技术人员可以理解,上述附图所示出的电子设备的结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,电子设备中还包括射频电路、输入单元、传感器、音频电路、无线保真(wireless fidelity,WiFi)模块、电源、蓝牙模块等部件,在此不再赘述。In addition, those skilled in the art can understand that the structure of the electronic device shown in the above drawings does not constitute a limitation on the electronic device, and the electronic device may include more or less components than those shown in the illustration, or combine certain components, or a different arrangement of components. For example, the electronic device also includes radio frequency circuit, input unit, sensor, audio circuit, wireless fidelity (wireless fidelity, WiFi) module, power supply, bluetooth module and other components, which will not be repeated here.
在本申请实施例中,各步骤的执行主体可以是上文介绍的电子设备。可选地,各步骤的执行主体为电子设备的操作系统。操作系统可以是安卓系统,也可以是IOS系统,或者其它操作系统,本申请实施例对此不作限定。In the embodiment of the present application, the execution subject of each step may be the electronic device introduced above. Optionally, each step is executed by an operating system of the electronic device. The operating system may be an Android system, an IOS system, or other operating systems, which is not limited in this embodiment of the present application.
本申请实施例的电子设备,其上还可以安装有显示设备,显示设备可以是各种能实现显示功能的设备,例如:阴极射线管显示器(cathode ray tubedisplay,简称CR)、发光二极管显示器(light-emitting diode display,简称LED)、电子墨水屏、液晶显示屏(liquid crystal display,简称LCD)、等离子显示面板(plasma display panel,简称PDP)等。用户可以利用电子设备101上的显示设备,来查看显示的文字、图像、视频等信息。所述电子设备可以是智能手机、平板电脑、游戏设备、AR(Augmented Reality,增强现实)设备、汽车、数据存储装置、音频播放装置、视频播放装置、笔记本、桌面计算设备、可穿戴设备诸如电子手表、电子眼镜、电子头盔、电子手链、电子项链、电子衣物等设备。The electronic device of the embodiment of the present application can also be equipped with a display device, and the display device can be various devices capable of realizing display functions, such as: a cathode ray tube display (cathode ray tube display, CR for short), a light emitting diode display (light -emitting diode display, referred to as LED), electronic ink screen, liquid crystal display (liquid crystal display, referred to as LCD), plasma display panel (plasma display panel, referred to as PDP), etc. The user can use the display device on the electronic device 101 to view displayed text, images, videos and other information. The electronic device may be a smart phone, a tablet computer, a game device, an AR (Augmented Reality, augmented reality) device, a car, a data storage device, an audio playback device, a video playback device, a notebook, a desktop computing device, a wearable device such as an electronic Watches, electronic glasses, electronic helmets, electronic bracelets, electronic necklaces, electronic clothing and other equipment.
在图8所示的电子设备中,其中电子设备可以是一种终端,处理器110可以用于调用存储器120中存储的地理围栏控制程序,并具体执行以下操作:In the electronic device shown in FIG. 8 , where the electronic device can be a terminal, the processor 110 can be used to call the geofence control program stored in the memory 120, and specifically perform the following operations:
确定针对地理围栏的目标业务操作;Identify targeted business operations for geofencing;
控制所述低功耗控制器响应于所述目标业务操作,对所述地理围栏进行围栏业务处理,所述低功耗控制器的功耗小于所述应用处理器的功耗。controlling the low power consumption controller to perform fence service processing on the geo-fence in response to the target service operation, and the power consumption of the low power consumption controller is less than the power consumption of the application processor.
在一个实施例中,所述处理器1001在执行所述确定针对地理围栏的目标业务操作时,具体执行以下操作:In one embodiment, the processor 1001 specifically performs the following operations when performing the determining target service operation for the geofence:
获取应用处理器上的围栏服务请求,基于所述围栏服务请求确定针对地理围栏的目标业务操作。A fence service request on the application processor is acquired, and a target service operation for the geofence is determined based on the fence service request.
在一个实施例中,所述处理器1001在执行所述控制所述低功耗控制器响应于所述目标业务操作,对所述地理围栏进行围栏业务处理时,具体执行以下操作:In one embodiment, when the processor 1001 performs the controlling the low power consumption controller to respond to the target service operation to perform fence service processing on the geo-fence, specifically perform the following operations:
响应于所述目标业务操作,控制低功耗控制器执行对所述地理围栏的目标处理任务;In response to the target service operation, controlling a low power consumption controller to perform a target processing task for the geo-fence;
所述目标处理任务至少包括地理围栏注册任务、地理围栏检测任务、地理围栏更新任务、地理围栏 触发任务、地理围栏管理任务、地理围栏检测任务中的一种。The target processing task includes at least one of a geofence registration task, a geofence detection task, a geofence update task, a geofence trigger task, a geofence management task, and a geofence detection task.
在一个实施例中,所述处理器1001在执行所述目标处理任务为地理围栏检测任务,所述控制低功耗控制器执行对所述地理围栏的目标处理任务时,具体执行以下操作:In one embodiment, when the processor 1001 executes the target processing task as a geofence detection task, and the controlling low power consumption controller performs the target processing task on the geofence, the following operations are specifically performed:
控制低功耗控制器从所述应用处理器上获取所述地理围栏检测任务的地理围栏数据,并控制所述低功耗控制器基于所述地理围栏数据进行地理围栏定位。在一个实施例中,所述处理器1001在执行所述基于所述地理围栏数据进行地理围栏定位时,具体执行以下操作:Controlling the low power consumption controller to acquire geofence data of the geofence detection task from the application processor, and controlling the low power consumption controller to perform geofence positioning based on the geofence data. In one embodiment, the processor 1001 specifically performs the following operations when performing the geofence positioning based on the geofence data:
采用低功耗定位模式获取所述电子设备的设备位置数据,基于所述设备位置数据检测所述电子设备是否进入到所述地理围栏对应的范围内。The device location data of the electronic device is acquired by adopting a low power consumption positioning mode, and based on the device location data, it is detected whether the electronic device enters a range corresponding to the geo-fence.
在一个实施例中,所述处理器1001在执行所述采用低功耗定位模式获取设备所述电子设备的位置数据之前,还执行以下操作:In one embodiment, before the processor 1001 executes the acquisition of the location data of the electronic device in the low power consumption positioning mode, the following operations are further performed:
获取网络位置数据,以及低功耗定位模式的模式触发条件;Obtain network location data and mode trigger conditions for low-power positioning mode;
若所述网络位置数据与所述模式触发条件相匹配,则执行所述采用低功耗定位模式获取所述电子设备的设备位置数据的步骤,所述低功耗定位模式对应的位置精度高于所述网络位置数据对应的位置精度。If the network location data matches the mode trigger condition, execute the step of acquiring the device location data of the electronic device in a low-power location mode, where the location accuracy corresponding to the low-power location mode is higher than The location accuracy corresponding to the network location data.
在一个实施例中,所述处理器1001在执行所述采用低功耗定位模式获取设备位置数据时,具体执行以下操作:In one embodiment, the processor 1001 specifically performs the following operations when executing the acquisition of device location data using the low power consumption positioning mode:
采用第一定位方式获取所述电子设备的第一位置数据;Obtaining first location data of the electronic device by using a first positioning method;
采用第二定位方式基于第一位置数据确定针对所述电子设备的至少一个第二位置数据,所述第二定位方式对应的定位功耗小于所述第一定位方式对应的定位功耗。Determining at least one second location data for the electronic device based on the first location data in a second positioning manner, where the positioning power consumption corresponding to the second positioning manner is smaller than the positioning power consumption corresponding to the first positioning manner.
在一个实施例中,所述处理器1001在执行所述采用步行者导航推算融合方式基于第一位置数据获取针对所述电子设备的至少一个第二位置数据时,具体执行以下操作:In one embodiment, when the processor 1001 executes the acquisition of at least one second location data for the electronic device based on the first location data in a way of pedestrian navigation reckoning and fusion, specifically perform the following operations:
获取基于第一位置数据的移动加速度数据,将所述移动加速度数据输入基于神经网络的导航推算模型中,输出移动速度数据,基于所述移动速度数据确定位置位移数据;Obtaining movement acceleration data based on the first position data, inputting the movement acceleration data into a neural network-based navigation calculation model, outputting movement velocity data, and determining position displacement data based on the movement velocity data;
基于所述第一位置数据和所述位置位移数据,确定针对所述电子设备的第二位置数据;determining second location data for the electronic device based on the first location data and the location displacement data;
将所述第二位置数据作为下一所述第一位置数据,执行所述获取基于第一位置数据的移动加速度数据的步骤。The second position data is used as the next first position data, and the step of acquiring movement acceleration data based on the first position data is performed.
在一个实施例中,所述处理器1001还执行以下操作:In one embodiment, the processor 1001 also performs the following operations:
采用所述第一定位方式对所述第二位置数据进行位置修正处理。Performing position correction processing on the second position data by using the first positioning method.
在一个实施例中,所述处理器1001在执行所述采用所述第一定位方式对所述第二位置数据进行位置修正处理时,具体执行以下操作:In one embodiment, when the processor 1001 performs the position correction process on the second position data by using the first positioning method, specifically perform the following operations:
基于位置修正周期和/或基准行程距离,同时启动第一定位方式获取所述电子设备的第三位置数据,基于所述第三位置数据对所述第二位置数据进行位置修正处理。Based on the position correction period and/or the reference travel distance, simultaneously start the first positioning method to obtain the third position data of the electronic device, and perform position correction processing on the second position data based on the third position data.
在一个实施例中,所述处理器1001在执行所述控制低功耗控制器执行所述目标业务操作对应的目标处理任务时,具体执行以下操作:In one embodiment, the processor 1001 specifically performs the following operations when executing the target processing task corresponding to the control low power consumption controller to perform the target service operation:
控制低功耗控制器执行所述目标业务操作对应的目标处理任务;和/或,controlling the low power consumption controller to execute the target processing task corresponding to the target service operation; and/or,
将应用处理器作为所述低功耗控制器的协处理器,控制低功耗控制器和应用处理器共同执行所述目标业务操作对应的目标处理任务,。The application processor is used as the coprocessor of the low power consumption controller, and the low power consumption controller and the application processor are controlled to jointly execute the target processing task corresponding to the target service operation.
在一个实施例中,所述处理器1001在执行所述控制低功耗控制器和应用处理器共同执行所述目标业务操作对应的目标处理任务时,具体执行以下操作:In one embodiment, when the processor 1001 executes the target processing task corresponding to the target service operation of controlling the low power consumption controller and the application processor, it specifically performs the following operations:
获取低功耗控制器对应的任务状态参数;Obtain the task status parameters corresponding to the low-power controller;
基于所述任务状态参数将所述目标业务操作对应的目标处理任务划分为第一处理任务和第二处理任务,所述第一处理任务的任务量大于所述第二处理任务的任务量;dividing the target processing task corresponding to the target business operation into a first processing task and a second processing task based on the task state parameter, the task amount of the first processing task being greater than the task amount of the second processing task;
控制所述低功耗控制器执行所述第一处理任务,控制所述应用处理器执行所述第二处理任务。controlling the low power consumption controller to execute the first processing task, and controlling the application processor to execute the second processing task.
在一个实施例中,所述处理器1001在执行所述任务状态参数为富余资源量,所述基于所述任务状态参数,将所述目标业务操作对应的目标处理任务划分为第一处理任务和第二处理任务时,具体执行以 下操作:In one embodiment, the processor 1001 divides the target processing task corresponding to the target service operation into the first processing task and When processing the second task, specifically perform the following operations:
获取所述目标业务操作对应的目标处理任务的历史资源开销量;Acquiring the historical resource overhead of the target processing task corresponding to the target business operation;
基于所述历史资源开销量和所述富余资源量,将所述目标处理任务划分为第一处理任务和第二处理任务。Based on the amount of historical resource overhead and the amount of surplus resources, the target processing task is divided into a first processing task and a second processing task.
在一个实施例中,所述处理器1001还执行以下操作:In one embodiment, the processor 1001 also performs the following operations:
监测所述低功耗控制器的任务执行状态,基于所述任务执行状态从所述低功耗控制器对应的所述目标处理任务中确定第三处理任务;monitoring the task execution state of the low-power controller, and determining a third processing task from the target processing tasks corresponding to the low-power controller based on the task execution state;
通过所述应用处理器执行所述第三处理任务。The third processing task is executed by the application processor.
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be implemented through computer programs to instruct related hardware, and the programs can be stored in a computer-readable storage medium. During execution, it may include the processes of the embodiments of the above-mentioned methods. Wherein, the storage medium may be a magnetic disk, an optical disk, a read-only memory or a random access memory, and the like.
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。The above disclosures are only preferred embodiments of the present application, which certainly cannot limit the scope of the present application. Therefore, equivalent changes made according to the claims of the present application still fall within the scope of the present application.

Claims (20)

  1. 一种地理围栏控制方法,应用于电子设备,其中,所述电子设备包括低功耗控制器和应用处理器,所述方法包括:A geofence control method applied to an electronic device, wherein the electronic device includes a low power consumption controller and an application processor, and the method includes:
    确定针对地理围栏的目标业务操作;Identify targeted business operations for geofencing;
    控制所述低功耗控制器响应于所述目标业务操作,对所述地理围栏进行围栏业务处理,所述低功耗控制器的功耗小于所述应用处理器的功耗。controlling the low power consumption controller to perform fence service processing on the geo-fence in response to the target service operation, and the power consumption of the low power consumption controller is less than the power consumption of the application processor.
  2. 根据权利要求1所述的方法,其中,所述确定针对地理围栏的目标业务操作,包括:The method according to claim 1, wherein said determining a target business operation for a geofence comprises:
    获取应用处理器上的围栏服务请求,基于所述围栏服务请求确定针对地理围栏的目标业务操作。A fence service request on the application processor is acquired, and a target service operation for the geofence is determined based on the fence service request.
  3. 根据权利要求1所述的方法,其中,所述控制所述低功耗控制器响应于所述目标业务操作,对所述地理围栏进行围栏业务处理,包括:The method according to claim 1, wherein the controlling the low power consumption controller to perform fence service processing on the geo-fence in response to the target service operation comprises:
    响应于所述目标业务操作,控制低功耗控制器执行对所述地理围栏的目标处理任务;In response to the target service operation, controlling a low power consumption controller to perform a target processing task for the geo-fence;
    所述目标处理任务至少包括地理围栏注册任务、地理围栏检测任务、地理围栏更新任务、地理围栏触发任务、地理围栏管理任务、地理围栏检测任务中的一种。The target processing task includes at least one of a geo-fence registration task, a geo-fence detection task, a geo-fence update task, a geo-fence trigger task, a geo-fence management task, and a geo-fence detection task.
  4. 根据权利要求3所述的方法,其中,所述目标处理任务为地理围栏检测任务,The method according to claim 3, wherein the target processing task is a geofence detection task,
    所述控制低功耗控制器执行对所述地理围栏的目标处理任务,包括:Said controlling the low power consumption controller to execute the target processing task for said geo-fence, including:
    控制低功耗控制器从所述应用处理器上获取所述地理围栏检测任务的地理围栏数据,并控制所述低功耗控制器基于所述地理围栏数据进行地理围栏定位。Controlling the low power consumption controller to acquire geofence data of the geofence detection task from the application processor, and controlling the low power consumption controller to perform geofence positioning based on the geofence data.
  5. 根据权利要求4所述的方法,其中,所述基于所述地理围栏数据进行地理围栏定位,包括:The method according to claim 4, wherein said geofence positioning based on said geofence data comprises:
    采用低功耗定位模式获取所述电子设备的设备位置数据,基于所述设备位置数据检测所述电子设备是否进入到所述地理围栏对应的范围内。The device location data of the electronic device is acquired by adopting a low power consumption positioning mode, and based on the device location data, it is detected whether the electronic device enters a range corresponding to the geo-fence.
  6. 根据权利要求5所述的方法,其中,所述采用低功耗定位模式获取所述电子设备的设备位置数据之前,还包括:The method according to claim 5, wherein, before acquiring the device location data of the electronic device in the low power consumption positioning mode, further comprising:
    获取网络位置数据,以及低功耗定位模式的模式触发条件;Obtain network location data and mode trigger conditions for low-power positioning mode;
    若所述网络位置数据与所述模式触发条件相匹配,则执行所述采用低功耗定位模式获取所述电子设备的设备位置数据的步骤,所述低功耗定位模式对应的位置精度高于所述网络位置数据对应的位置精度。If the network location data matches the mode trigger condition, execute the step of acquiring the device location data of the electronic device in a low-power location mode, where the location accuracy corresponding to the low-power location mode is higher than The location accuracy corresponding to the network location data.
  7. 根据权利要求5所述的方法,其中,所述采用低功耗定位模式获取设备位置数据,包括:The method according to claim 5, wherein said acquiring device location data using a low power consumption positioning mode comprises:
    采用第一定位方式获取所述电子设备的第一位置数据;Obtaining first location data of the electronic device by using a first positioning method;
    采用第二定位方式基于第一位置数据确定针对所述电子设备的至少一个第二位置数据,所述第二定位方式对应的定位功耗小于所述第一定位方式对应的定位功耗。Determining at least one second location data for the electronic device based on the first location data in a second positioning manner, where the positioning power consumption corresponding to the second positioning manner is smaller than the positioning power consumption corresponding to the first positioning manner.
  8. 根据权利要求7所述的方法,其中,所述采用步行者导航推算融合方式基于第一位置数据获取针对所述电子设备的至少一个第二位置数据,包括:The method according to claim 7, wherein said acquiring at least one second position data for the electronic device based on the first position data by means of pedestrian navigation reckoning fusion comprises:
    获取基于第一位置数据的移动加速度数据,将所述移动加速度数据输入基于神经网络的导航推算模型中,输出移动速度数据,基于所述移动速度数据确定位置位移数据;Obtaining movement acceleration data based on the first position data, inputting the movement acceleration data into a neural network-based navigation calculation model, outputting movement velocity data, and determining position displacement data based on the movement velocity data;
    基于所述第一位置数据和所述位置位移数据,确定针对所述电子设备的第二位置数据;determining second location data for the electronic device based on the first location data and the location displacement data;
    将所述第二位置数据作为下一所述第一位置数据,执行所述获取基于第一位置数据的移动加速度数据的步骤。The second position data is used as the next first position data, and the step of acquiring movement acceleration data based on the first position data is performed.
  9. 根据权利要求8所述的方法,其中,所述方法还包括:The method according to claim 8, wherein the method further comprises:
    采用所述第一定位方式对所述第二位置数据进行位置修正处理。Performing position correction processing on the second position data by using the first positioning method.
  10. 根据权利要求8所述的方法,其中,所述采用所述第一定位方式对所述第二位置数据进行位置修正处理,包括:The method according to claim 8, wherein the performing position correction processing on the second position data by using the first positioning method comprises:
    基于位置修正周期和/或基准行程距离,同时启动第一定位方式获取所述电子设备的第三位置数据,基于所述第三位置数据对所述第二位置数据进行位置修正处理。Based on the position correction period and/or the reference travel distance, simultaneously start the first positioning method to obtain the third position data of the electronic device, and perform position correction processing on the second position data based on the third position data.
  11. 根据权利要求3所述的方法,其中,所述控制低功耗控制器执行所述目标业务操作对应的目标处理任务,包括:The method according to claim 3, wherein the controlling the low power consumption controller to execute the target processing task corresponding to the target service operation comprises:
    控制低功耗控制器执行所述目标业务操作对应的目标处理任务;和/或,controlling the low power consumption controller to execute the target processing task corresponding to the target service operation; and/or,
    将应用处理器作为所述低功耗控制器的协处理器,控制低功耗控制器和应用处理器共同执行所述目标业务操作对应的目标处理任务。The application processor is used as the coprocessor of the low power consumption controller, and the low power consumption controller and the application processor are controlled to jointly execute the target processing task corresponding to the target service operation.
  12. 根据权利要求11所述的方法,其中,所述控制低功耗控制器和应用处理器共同执行所述目标业务操作对应的目标处理任务,包括:The method according to claim 11, wherein the controlling the low power consumption controller and the application processor to jointly execute the target processing task corresponding to the target service operation comprises:
    获取低功耗控制器对应的任务状态参数;Obtain the task status parameters corresponding to the low-power controller;
    基于所述任务状态参数将所述目标业务操作对应的目标处理任务划分为第一处理任务和第二处理任务,所述第一处理任务的任务量大于所述第二处理任务的任务量;dividing the target processing task corresponding to the target business operation into a first processing task and a second processing task based on the task state parameter, the task amount of the first processing task being greater than the task amount of the second processing task;
    控制所述低功耗控制器执行所述第一处理任务,控制所述应用处理器执行所述第二处理任务。controlling the low power consumption controller to execute the first processing task, and controlling the application processor to execute the second processing task.
  13. 根据权利要求12所述的方法,其中,所述任务状态参数为富余资源量;The method according to claim 12, wherein the task state parameter is the amount of surplus resources;
    所述基于所述任务状态参数,将所述目标业务操作对应的目标处理任务划分为第一处理任务和第二处理任务,包括:The dividing the target processing task corresponding to the target business operation into a first processing task and a second processing task based on the task status parameter includes:
    获取所述目标业务操作对应的目标处理任务的历史资源开销量;Acquiring the historical resource overhead of the target processing task corresponding to the target business operation;
    基于所述历史资源开销量和所述富余资源量,将所述目标处理任务划分为第一处理任务和第二处理任务。Based on the amount of historical resource overhead and the amount of surplus resources, the target processing task is divided into a first processing task and a second processing task.
  14. 根据权利要求11所述的方法,其中,所述方法还包括:The method according to claim 11, wherein the method further comprises:
    监测所述低功耗控制器的任务执行状态,基于所述任务执行状态从所述低功耗控制器对应的所述目标处理任务中确定第三处理任务;monitoring the task execution state of the low-power controller, and determining a third processing task from the target processing tasks corresponding to the low-power controller based on the task execution state;
    通过所述应用处理器执行所述第三处理任务。The third processing task is executed by the application processor.
  15. 一种地理围栏控制装置,其中,所述装置包括:A geofence control device, wherein the device comprises:
    业务确定模块,用于确定针对地理围栏的目标业务操作;A business determination module for determining target business operations for geofences;
    业务处理模块,用于控制低功耗控制器响应于所述目标业务操作,对所述地理围栏进行围栏业务处理,所述低功耗控制器的功耗小于应用处理器的功耗。The service processing module is configured to control the low-power controller to perform fence service processing on the geo-fence in response to the target service operation, and the power consumption of the low-power controller is less than that of the application processor.
  16. 根据权利要求15所述的装置,其中,所述业务确定模块,包括:The device according to claim 15, wherein the service determination module includes:
    业务确定单元,用于获取应用处理器上的围栏服务请求,基于所述围栏服务请求确定针对地理围栏的目标业务操作。The service determination unit is configured to acquire a fence service request on the application processor, and determine a target service operation for the geo-fence based on the fence service request.
  17. 根据权利要求15所述的装置,其中,所述业务处理模块,包括:The device according to claim 15, wherein the service processing module includes:
    业务控制单元,用于响应于所述目标业务操作,控制低功耗控制器执行对所述地理围栏的目标处理任务;a service control unit, configured to, in response to the target service operation, control the low power consumption controller to execute the target processing task for the geo-fence;
    所述目标处理任务至少包括地理围栏注册任务、地理围栏检测任务、地理围栏更新任务、地理围栏触发任务、地理围栏管理任务、地理围栏检测任务中的一种。The target processing task includes at least one of a geo-fence registration task, a geo-fence detection task, a geo-fence update task, a geo-fence trigger task, a geo-fence management task, and a geo-fence detection task.
  18. 根据权利要求17所述的装置,其中,所述业务控制单元,包括:The device according to claim 17, wherein the service control unit comprises:
    围栏检测子单元,用于控制低功耗控制器从所述应用处理器上获取所述地理围栏检测任务的地理围栏数据,并控制所述低功耗控制器基于所述地理围栏数据进行地理围栏定位。A fence detection subunit, configured to control the low power controller to acquire geofence data of the geofence detection task from the application processor, and control the low power controller to perform geofence based on the geofence data position.
  19. 一种计算机存储介质,其中,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1~14任意一项的方法步骤。A computer storage medium, wherein the computer storage medium stores a plurality of instructions, and the instructions are suitable for being loaded by a processor and executing the method steps according to any one of claims 1-14.
  20. 一种电子设备,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1~14任意一项的方法步骤。An electronic device, comprising: a processor and a memory; wherein, the memory stores a computer program, and the computer program is adapted to be loaded by the processor and execute the method steps according to any one of claims 1-14.
PCT/CN2022/109000 2021-08-20 2022-07-29 Geofence control method and apparatus, storage medium, and electronic device WO2023020259A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110961881.3 2021-08-20
CN202110961881.3A CN113779166B (en) 2021-08-20 2021-08-20 Geofence control method and device, storage medium and electronic equipment

Publications (1)

Publication Number Publication Date
WO2023020259A1 true WO2023020259A1 (en) 2023-02-23

Family

ID=78838388

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/109000 WO2023020259A1 (en) 2021-08-20 2022-07-29 Geofence control method and apparatus, storage medium, and electronic device

Country Status (2)

Country Link
CN (1) CN113779166B (en)
WO (1) WO2023020259A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116504023A (en) * 2023-06-25 2023-07-28 新亿成科技(江苏)有限公司 Forklift position monitoring method, device and system based on virtual electronic fence

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113779166B (en) * 2021-08-20 2024-02-13 上海瑾盛通信科技有限公司 Geofence control method and device, storage medium and electronic equipment
CN114374929A (en) * 2021-12-15 2022-04-19 深圳优美创新科技有限公司 Wearable device positioning method and device, electronic device and storage medium
CN116033341B (en) * 2022-05-30 2023-10-20 荣耀终端有限公司 Method and device for triggering fence event
CN116033342B (en) * 2022-05-30 2023-11-24 荣耀终端有限公司 Geofence processing method, equipment and storage medium
CN116233749B (en) * 2023-05-10 2023-09-12 荣耀终端有限公司 Message pushing method, mobile terminal and computer readable storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9323314B1 (en) * 2014-05-07 2016-04-26 Marvell International Ltd. System and method for reducing energy usage in a mobile communications device
CN105674977A (en) * 2016-01-06 2016-06-15 华为技术有限公司 Navigation device and navigation method
CN108318902A (en) * 2017-11-22 2018-07-24 和芯星通(上海)科技有限公司 Adaptive geo-fence detection method and device, electronic equipment and management method
CN111328020A (en) * 2018-12-17 2020-06-23 华为技术有限公司 Service processing method and device based on indoor positioning system
CN113779166A (en) * 2021-08-20 2021-12-10 上海瑾盛通信科技有限公司 Geo-fence control method and device, storage medium and electronic equipment

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010277233A (en) * 2009-05-27 2010-12-09 Seiko Epson Corp Mobile terminal, and method for updating position data, and position data update program of the mobile terminal
US20150237470A1 (en) * 2014-02-14 2015-08-20 Apple Inc. Personal Geofence
US20160057572A1 (en) * 2014-08-20 2016-02-25 Microsoft Corporation Geo-fencing notifications subscriptions
KR101953500B1 (en) * 2014-12-17 2019-02-28 후아웨이 테크놀러지 컴퍼니 리미티드 Geo-fencing implementation method and mobile device
CN106767798B (en) * 2016-11-23 2020-04-10 北京韦加无人机科技股份有限公司 Real-time estimation method and system for position and speed for unmanned aerial vehicle navigation
CN109903330B (en) * 2018-09-30 2021-06-01 华为技术有限公司 Method and device for processing data
CN109579853B (en) * 2019-01-24 2021-02-26 燕山大学 Inertial navigation indoor positioning method based on BP neural network
CN110095116A (en) * 2019-04-29 2019-08-06 桂林电子科技大学 A kind of localization method of vision positioning and inertial navigation combination based on LIFT

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9323314B1 (en) * 2014-05-07 2016-04-26 Marvell International Ltd. System and method for reducing energy usage in a mobile communications device
CN105674977A (en) * 2016-01-06 2016-06-15 华为技术有限公司 Navigation device and navigation method
CN108318902A (en) * 2017-11-22 2018-07-24 和芯星通(上海)科技有限公司 Adaptive geo-fence detection method and device, electronic equipment and management method
CN111328020A (en) * 2018-12-17 2020-06-23 华为技术有限公司 Service processing method and device based on indoor positioning system
CN113779166A (en) * 2021-08-20 2021-12-10 上海瑾盛通信科技有限公司 Geo-fence control method and device, storage medium and electronic equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116504023A (en) * 2023-06-25 2023-07-28 新亿成科技(江苏)有限公司 Forklift position monitoring method, device and system based on virtual electronic fence
CN116504023B (en) * 2023-06-25 2023-08-22 新亿成科技(江苏)有限公司 Forklift position monitoring method, device and system based on virtual electronic fence

Also Published As

Publication number Publication date
CN113779166A (en) 2021-12-10
CN113779166B (en) 2024-02-13

Similar Documents

Publication Publication Date Title
WO2023020259A1 (en) Geofence control method and apparatus, storage medium, and electronic device
US11757675B2 (en) Facilitating portable, reusable, and sharable internet of things (IoT)-based services and resources
AU2015301178B2 (en) Determining and providing predetermined location data points to service providers
US20140026065A1 (en) Transportation service communication method, apparatus and system
US10467579B1 (en) Systems, method, and computer-readable media for estimating timing for delivery orders
US20150148061A1 (en) Geofences from context and crowd-sourcing
CN108595275B (en) Prompt message pushing method and terminal
CN109992315B (en) Touch screen control method and device, terminal and storage medium
CN112788583B (en) Equipment searching method and device, storage medium and electronic equipment
WO2020259529A1 (en) Indoor location method and electronic device
US10684836B1 (en) Systems and methods for distributing application templates to wearable client devices
US7894987B1 (en) Hot zones trigger method for location-based applications and services
CN110730271B (en) Schedule reminding method and device, storage medium and terminal
CN103026780A (en) Methods and apparatuses for controlling invocation of a sensor
US11516167B2 (en) Storing data based on device location
Golkarifard et al. Dandelion: A unified code offloading system for wearable computing
CN113780978B (en) Arrival reminding method and device, storage medium and electronic equipment
CN112863219B (en) Position updating method and device, storage medium and electronic equipment
EP2972657B1 (en) Application-controlled granularity for power-efficient classification
KR20230162041A (en) Location determination using multi-source geolocation data
CN111918386B (en) Positioning method, positioning device, storage medium and electronic equipment
WO2022083355A1 (en) Point of interest-based information recommendation method and apparatus, device, and storage medium
AU2017435621A1 (en) Voice information processing method and device, and terminal
US20220312148A1 (en) System and Method to Register Improved Accuracy Geofences
CN113259652A (en) Method and system for providing augmented reality display

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22857571

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE