A smart watch low-power consumption control method and system based on a smart chip
Patent Information
- Application Number
- CN202611088441.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-22
- Publication Date
- 2026-08-18
AI Technical Summary
[0005]本发明提供了一种基于智能芯片的智能手表低功耗控制方法及系统,以解决节电时机滞后的问题
(1)本发明首先获取智能手表传感器采集的用户的加速度和角速度,并进行去噪与格式归一化等预处理操作,得到高质量的运动数据,随后对处理后的运动数据执行时频域联合分析,提取出能够反映手部细微震颤与周期性摆动的微动特征集合。通过先对原始数据进行清洗标准化,消除了环境噪声和设备漂移带来的干扰,再挖掘信号在时间与频率维度上的深层关联特性,使得系统能够敏锐地捕捉到传统幅度阈值无法识别的微小动作模式,极大丰富了表征用户意图的特征维度,为后续精准判断节电时机提供了可靠的数据基础。
Smart Images

Figure CN122594827A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of low-power control for smartwatches, and more particularly to a low-power control method and system for smartwatches based on a smart chip. Background Technology
[0002] Currently, as wearable devices used frequently in daily life, battery life is one of the core indicators affecting user experience for smartwatches.
[0003] In one existing technology, the low-power control method of this type of smartwatch first collects multi-axis acceleration and multi-axis angular velocity data through a built-in inertial measurement unit. The microcontroller chip performs simple filtering and timestamp alignment on the raw sensor data and then matches it with preset multiple motion state templates to determine the user's current scene. Only when a clear high-power scene label such as continuous motion or high-definition audio-visual playback is matched will a power-saving command be issued to adjust hardware operating parameters and background application permissions. However, this solution can only determine the scene based on large motion features that have already occurred. It cannot capture the subtle motion features that accompany scene switching, such as the user getting up after sitting for a long time or raising their wrist after working at a desk. Therefore, it cannot predict the scene changes that the user is about to experience. It can only trigger the power-saving operation after the scene has completely changed. As a result, the device still maintains a high-power operation during the scene transition gap, missing the best power-saving opportunity and having a significant delay in power-saving triggering.
[0004] In summary, existing technologies suffer from a delay in the timing of energy saving. Summary of the Invention
[0005] This invention provides a low-power control method and system for smartwatches based on smart chips to solve the problem of delayed power-saving timing.
[0006] In a first aspect, to address the aforementioned technical problems, this invention provides a low-power control method for smartwatches based on smart chips, comprising: The smartwatch obtains the user's acceleration and angular velocity through its built-in smart chip, and performs preprocessing to obtain motion data; Feature extraction is performed on the motion data to obtain a set of micro-motion features used to characterize user motion information; Intent analysis is performed on the micro-motion feature set to obtain the intent probability vector corresponding to each motion state, and the intent probability vector is aggregated to obtain the user's intent result. The intent result is subjected to state decoding processing to obtain the predicted probability value of the user switching scenes; If the predicted probability value is greater than the preset probability threshold, the user's network environment data and geographical location data are obtained, the scene switching type is determined, and an early warning signal is generated based on the scene switching type. Calculate the estimated power consumption based on the warning signal, and determine the timing for power saving based on the estimated power consumption.
[0007] Secondly, the present invention provides a low-power control system for a smartwatch based on a smart chip, comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the method described above.
[0008] Compared with the prior art, the present invention has the following beneficial effects: (1) This invention first acquires the user's acceleration and angular velocity collected by the smartwatch sensor, and performs preprocessing operations such as noise reduction and format normalization to obtain high-quality motion data. Then, it performs time-frequency domain joint analysis on the processed motion data to extract a set of micro-motion features that can reflect subtle hand tremors and periodic swings. By first cleaning and standardizing the raw data, interference caused by environmental noise and device drift is eliminated. Then, the deep correlation characteristics of the signal in the time and frequency dimensions are explored, enabling the system to keenly capture subtle motion patterns that cannot be identified by traditional amplitude thresholds. This greatly enriches the feature dimensions representing the user's intentions and provides a reliable data foundation for subsequent accurate judgment of power-saving timing.
[0009] (2) This invention inputs the extracted micro-motion feature set into a classification model for contribution evaluation, and obtains the final intent result through a majority voting mechanism. This process can effectively filter out those random and unrepresentative interference features, focus on core features for discrimination, thereby eliminating the misleading influence of atypical actions, greatly improving the accuracy of intent recognition and the robustness of classification decisions, ensuring the uniqueness and certainty of action judgment, and making the subsequent determination of power-saving timing more accurate.
[0010] (3) This invention performs continuous state transition probability analysis on the instantly acquired intent results, determines the scene switching type by fusing historical scene features with current scene features, generates an early warning signal based on the scene switching type, and infers future power consumption trend predictions accordingly, thereby locking in power-saving opportunities. This method avoids the defect of misjudging the state based on a single sudden change in action, enabling the system to understand the context of the current action more comprehensively and three-dimensionally, and can complete strategy deployment before the power consumption drops substantially, ensuring the timeliness and rationality of intervention node selection, and realizing proactive control over the operating status of equipment. Attached Figure Description
[0011] Figure 1 This is a schematic flowchart of a low-power control method for a smartwatch based on a smart chip, provided by an embodiment of the present invention. Figure 2This is a schematic diagram illustrating the filtering and alignment operation of acceleration and angular velocity provided in an embodiment of the present invention. Detailed Implementation
[0012] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0013] Reference Figure 1 The first embodiment of the present invention provides a low-power control method for smartwatches based on smart chips, comprising the following steps: The S11 uses the smart chip built into the smartwatch to obtain the user's acceleration and angular velocity, and performs preprocessing to obtain motion data; S12, extract features from the motion data to obtain a set of micro-motion features used to characterize user motion information; S13, perform intent analysis on the micro-motion feature set to obtain the intent probability vector corresponding to each motion state, and perform aggregation processing based on the intent probability vector to obtain the user's intent result; S14, Perform state decoding processing on the intent result to obtain the predicted probability value of the user switching scenes; S15, if the predicted probability value is greater than the preset probability threshold, obtain the user's network environment data and geographical location data, determine the scene switching type, and generate an early warning signal according to the scene switching type; S16, calculate the power consumption estimate based on the warning signal, and determine the timing of power saving based on the power consumption estimate.
[0014] In step S11, the user's acceleration and angular velocity are acquired through the smartwatch's built-in smart chip and preprocessed to obtain motion data, including: The smartwatch acquires the user's acceleration and angular velocity through its built-in smart chip, and then filters the data to obtain synchronized sensor data. Obtain the geographic coordinates data of smartwatch users; Calculate the coordinate transformation parameters between the body coordinate system where the synchronous sensing data is located and the geodetic coordinate system where the geographic coordinate data is located to obtain the coordinate deviation; If the coordinate deviation is greater than a preset deviation threshold, the synchronous sensing data is subjected to coordinate transformation to obtain global sensing data; if the coordinate deviation is not greater than the preset deviation threshold, the synchronous sensing data is used as global sensing data. The global sensing data is segmented to obtain motion data.
[0015] It should be noted that when acquiring the user's acceleration and angular velocity data through the smartwatch's built-in smart chip and filtering it to obtain synchronized sensing data, the system first obtains continuous acceleration and angular velocity data from the smartwatch's built-in inertial measurement unit to generate a raw sensing data stream. The sampling frequency of the acceleration signal is set to 100 Hz, and the sampling frequency of the angular velocity signal is set to 50 Hz. For the raw sensing data stream with inconsistent sampling frequencies and containing high-frequency noise, high-frequency environmental noise above 20 Hz is filtered out, and a smoothed signal is output. Subsequently, linear interpolation is used to upsample the 50 Hz angular velocity data, increasing the sampling frequency to 100 Hz. The upsampled acceleration and angular velocity data are then timestamped. Nearest neighbor timestamping ensures that each angular velocity sampling point has corresponding acceleration data, outputting synchronized sensing data with strictly aligned timestamps. After this alignment process, the timestamp deviation between the acceleration and angular velocity data is controlled within ±1 millisecond, effectively eliminating time misalignment caused by hardware sampling differences.
[0016] Next, the system acquires the user's geographic coordinates data, collected by the smartwatch's built-in satellite positioning module. This data includes the user's current latitude and longitude, as well as the corresponding geodetic coordinate system reference parameters. Simultaneously, the system obtains the body coordinate system containing the synchronized sensor data. This coordinate system is established with the smartwatch's inertial measurement unit as its origin, and its axes are defined by the sensitive axes of the watch's internal accelerometer and gyroscope. Subsequently, the system calculates the spatial angle between the projection of the gravitational acceleration vector in the body coordinate system and the standard gravitational acceleration vector in the geodetic coordinate system, obtaining the rotational offset of the body coordinate system relative to the geodetic coordinate system. This rotational offset is used as a quantitative indicator of coordinate deviation. Specifically, the system first uses acceleration data to calculate the tilt angle between each axis of the body coordinate system and the horizontal plane of the geodetic coordinate system. Then, it integrates angular velocity data to obtain the rotation angle around the vertical axis. Combining these tilt angles and rotation angles yields a three-dimensional rotation parameter, which is the coordinate transformation parameter from the body coordinate system to the geodetic coordinate system. This parameter directly reflects the degree of deviation between the two coordinate systems.
[0017] It should be noted that if the coordinate deviation is greater than the preset deviation threshold, the system initiates a coordinate transformation process to process the synchronous sensing data to obtain global sensing data. Specifically, the acceleration data is first substituted into trigonometric functions to calculate the pitch and roll angles, and the angular velocity data is integrated over time to calculate the yaw angle. The three angular components are combined into Euler angles, which are then converted into quaternions using the standard Euler angle to quaternion conversion formula. The quaternions are then converted into a 3x3 rotation matrix. Finally, the synchronous sensing data in the device coordinate system is multiplied by the rotation matrix to output the global sensing data in the geographic coordinate system. This conversion process can eliminate data errors caused by the randomness of the wearing posture. If the coordinate deviation is not greater than the preset deviation threshold, the system determines that the current device posture has basically conformed to the geodetic coordinate system standard. No coordinate transformation is required, and the synchronous sensing data is directly output as global sensing data to avoid unnecessary computational overhead. For example, when a user is running while wearing a watch normally, the angle between the device coordinate system and the geodetic coordinate system is only 2 degrees. At this time, the system directly uses the synchronous sensing data as global sensing data to ensure the efficiency of data processing.
[0018] The process of setting the deviation threshold involves first collecting data on the actual angle between the device coordinate system and the geographic coordinate system for different users in daily wearing scenarios (such as wrists hanging naturally, slight twisting, and arms bent). Statistical analysis revealed that the angle for most users typically fluctuates between 0 and 3 degrees under normal wearing conditions, while angles exceeding 5 degrees often correspond to significant wearing misalignment or large arm twisting. Based on this, considering the static noise and temperature drift error inherent in the inertial measurement unit itself, setting the threshold to 5 degrees ensures that coordinate transformation is not frequently triggered due to minor fluctuations in the sensor itself within the normal wearing range, while also enabling timely correction when the user's posture deviates substantially, thus achieving a balance between computational efficiency and data accuracy.
[0019] Then, when segmenting the global sensing data to obtain motion data, the system first uses a fixed-length sliding window to segment the continuous global sensing data. The window time dimension size is set to 2.5 seconds, and the window sliding step size is 1.25 seconds, i.e., the overlap rate is 50%. Data is extracted along the time axis to output initial motion data containing the time dimension. Subsequently, the time domain signal is converted into a frequency domain feature sequence for the initial motion data. Based on the energy distribution characteristics of the frequency domain feature sequence, the high and low frequency cutoff frequencies are dynamically determined. Considering that the step frequency of normal adults running is usually concentrated between 1 and 3 Hz, the low frequency cutoff frequency is set to 1 Hz and the high frequency cutoff frequency is set to 5 Hz. A finite-length unit impulse response bandpass filter is used for filtering to retain the main motion frequency components of 1 to 5 Hz and output the preliminary filtered sequence.
[0020] Finally, the presence of edge artifacts is determined by calculating the gradient change rate of the data at the first and last 20 sampling points of the preliminary filtered sequence. The gradient change rate is defined as the absolute value of the numerical difference between two adjacent sampling points. For the first 20 sampling points, the absolute values of the differences between the 1st and 2nd points, the 2nd and 3rd points, ..., the 19th and 20th points are calculated sequentially, and the arithmetic mean of these 19 differences is taken as the endpoint gradient change rate. Adjacent internal data refers to the 20 internal sampling points immediately following these 20 endpoint sampling points, i.e., the... For sampling points 21 to 40, the absolute value of the difference between adjacent points in these 20 internal sampling points is calculated and the average value is taken as the average gradient of adjacent internal data. If the gradient change rate at the endpoint exceeds 3 times the average gradient of adjacent internal data, edge artifacts are determined to exist. For sequences with artifacts, the Hanning window function is used for signal attenuation compensation. The gradient curves at both ends of the window function are multiplied point by point with the first and last data of the preliminary filtered sequence to make the endpoint data smoothly transition to zero. The smoothed data is output as the final motion data.
[0021] Reference Figure 2 The figure illustrates the technical effect of this invention in preprocessing raw sensor signals in the context of motion sensing and scene prediction in smartwatches. Figure 2 By intuitively comparing waveforms with scenes, the invention fully demonstrates the waveform differences in different motion scenarios (stationary, walking, running) from original signal denoising to multi-source signal alignment. This not only provides high-quality basic data for subsequent extraction of micro-motion feature sets, but also powerfully proves that the invention can keenly capture changes in user status, providing a solid data and logical foundation for accurately predicting scene switching and locking in power-saving opportunities in advance.
[0022] In step S12, feature extraction is performed on the motion data to obtain a set of micro-motion features used to characterize user motion information, including: Extract time-domain and frequency-domain feature vectors from the motion data; The time-domain feature vector and the frequency-domain feature vector are concatenated to reduce the dimensionality, resulting in a fused feature vector. The fused feature vector is normalized to obtain a set of micro-motion features.
[0023] It should be noted that when extracting time-domain feature vectors and frequency-domain feature vectors from the motion data, the system first uses a sliding window to perform frame segmentation on the continuous motion data. The length of the sliding window is set to 256 sampling points, and the step size of the window sliding is 128 sampling points to ensure that there is a 50% overlap between adjacent data frames, and outputs multiple subframes of segmented motion data. For each acquired motion data subframe, statistical measures such as mean, zero-crossing rate, and kurtosis are extracted in the time domain, outputting a 15-dimensional time-domain feature vector. The mean reflects the overall offset level of the motion data, the zero-crossing rate measures the frequency of the signal crossing the zero axis, and the kurtosis describes the sharpness of the data distribution. In addition, the vector includes the maximum value, minimum value, standard deviation, root mean square, skewness, interquartile range, energy, entropy, autocorrelation coefficient, difference mean, difference standard deviation, signal complexity, and waveform factor, totaling 15 time-domain statistical indicators. For example, for a motion data subframe containing 256 acceleration sampling points, the calculated 15-dimensional time-domain feature vector is [0.32, 0.18, 2.14, 9.87, -8.23, 4.56, 1.02, 0.76, 3.41, 1.88, 0.54, 0.29, 0.63, 0.71, 0.44]. Simultaneously, the spectral centroid and frequency band energy distribution features are extracted at the frequency domain level, outputting an 11-dimensional frequency domain feature vector. The spectral centroid represents the centroid position of the spectrum, and the frequency band energy distribution divides the frequency range of 0 to 50 Hz into 10 frequency bands and calculates the total energy in each band. For example, the obtained 11-dimensional frequency domain feature vector is [18.75, 12.34, 8.91, 5.67, 3.22, 1.98, 1.05, 0.62, 0.31, 0.15, 0.08]. The first dimension, 18.75, is the spectral centroid, indicating that the spectral centroid is located near 18.75 Hz. The other 10 dimensions correspond to the energy values of each frequency band from 0 to 5 Hz, 5 to 10 Hz, ..., 45 to 50 Hz, respectively.
[0024] The number of time-domain statistical indicators is not strictly limited to 15. The optimal subset selected by recursively eliminating features and sorting mutual information from the initial 20 or so candidate time-domain statistics can achieve a balance between feature dimensions and classification performance. In actual implementation, the number of indicators can be added or removed according to the sensor model, application scenario and power consumption budget. For example, if only for running scenarios, it can be simplified to 8 to 10 core indicators. If gyroscope data is introduced, it can be expanded to 18 to 20. However, at least the mean, standard deviation, energy and zero crossing rate, which are the most sensitive to micro-motions, should be retained to ensure the effectiveness of recognition.
[0025] It should be noted that when concatenating the time-domain feature vector and the frequency-domain feature vector to obtain the fused feature vector, the system follows the order of first the time domain and then the frequency domain, concatenating the time-domain feature vector end-to-end to form an initial joint feature vector. Subsequently, the principal components are extracted. By calculating the eigenvalues and eigenvectors of the covariance matrix, the top 8 principal components with a cumulative contribution rate of over 90% are retained, and the dimensionality-reduced 8-dimensional fused feature vector is output.
[0026] Finally, when the fused feature vector is normalized to obtain the micro-motion feature set, for example, the system linearly maps each feature value in the 8-dimensional fused feature vector to a numerical range of 0 to 1. The system first traverses all sample data in the 8-dimensional fused feature vector to find the maximum and minimum values of each feature in the entire dataset. Then, for each feature value in each feature, the length of the interval formed by the minimum and maximum values is used as the denominator, and the difference between the feature value and the minimum value is used as the numerator. The original feature value is scaled to a closed interval of 0 to 1 through division. If the maximum and minimum values of a certain feature are equal, i.e., the interval length is zero, then all feature values of that dimension are uniformly assigned the value of 0.5 to avoid division by zero error. Finally, the micro-motion feature set is output.
[0027] In step S13, intent analysis is performed on the micro-motion feature set to obtain the intent probability vector corresponding to each motion state. The intent probability vectors are then aggregated to obtain the user's intent result, including: Path analysis is performed on the micro-motion feature set under each motion state to obtain the intention probability vector corresponding to each motion state. Calculate prediction confidence based on the intent probability vector; If the prediction confidence is greater than or equal to the preset confidence, the intention probability vector is weighted according to the pre-stored feature contribution set to generate a weighted intention probability vector; if the prediction confidence is less than the preset confidence, the intention probability vector is directly used as the weighted intention probability vector. The weighted intent probability vector is globally aggregated to obtain the intent result of the current user.
[0028] It should be noted that when performing path analysis on the micro-motion feature set under various motion states to obtain the intention probability vector corresponding to each motion state, the system inputs the micro-motion feature set containing the acceleration change rate and angular velocity variance into a pre-constructed random forest algorithm model. This model consists of 100 decision trees. During the node splitting process of the decision tree, the micro-motion feature set is passed down along specific decision conditions and finally reaches the leaf node to output the corresponding classification path. For the classification path generated above, the Gini impurity index on each split node is extracted. By calculating the reduction of Gini impurity before and after node splitting, the probability tendency of different motion state categories is evaluated, and the intention probability vector containing states such as sprint acceleration, constant speed maintenance, and fatigue deceleration is output.
[0029] The random forest algorithm model is set up as follows: First, the system collects a large amount of historical motion data from users under different motion states as a training sample set, including micro-motion feature sets under various states such as sprint acceleration, constant speed maintenance, and fatigue deceleration. Each sample data is labeled with its corresponding real motion state category. Then, a subset of samples of the same size as the original sample set is randomly drawn from the original training sample set with replacement, repeated 100 times to generate 100 different subsets. A decision tree is trained separately for each subset. During the node splitting process of each decision tree, the system randomly selects from all the feature sets... A subset of features is selected as candidate splitting features. The number of features participating in the evaluation at each split is set to the square root of the total number of features. Each feature in the candidate feature set is traversed and the reduction of Gini impurity before and after splitting at that node is calculated. The feature with the largest reduction of Gini impurity and its corresponding splitting threshold are selected as the optimal splitting condition for the current node. The sample data of the current node is divided into left and right child nodes according to the condition. The above node splitting process is recursively repeated until the number of samples in the child nodes reaches the preset maximum depth limit. Finally, a random forest algorithm model consisting of 100 independently trained decision trees is output.
[0030] Next, when calculating the prediction confidence based on the intent probability vector, the system first obtains the prediction results of all decision trees in the random forest algorithm for the current input sample, that is, the category label output by each decision tree. It then statistically analyzes the distribution of the category labels output by all decision trees, calculates the proportion of each category label's occurrences out of the total number of 100 decision trees, selects the category with the highest occurrence proportion as the majority category, and uses this highest proportion as the prediction confidence for the current sample. For example, if 82 out of 100 decision trees output the "Sprint Acceleration" category, then the vote proportion for that category is 82%, and the prediction confidence is 82%. If the prediction confidence is greater than or equal to a preset confidence, the system then applies the pre-stored feature contribution set to the intent probability vector. When generating a weighted intent probability vector through weighted calculation, the system first reads a pre-calculated set of feature contributions from local storage. This set records the global importance score of each micro-motion feature (such as the rate of change of acceleration, angular velocity variance, etc.) after the random forest model is trained. This score is obtained by calculating the sum of the reductions in Gini impurity of each feature when it splits across all decision tree nodes. Then, for each category in the intent probability vector, the feature contribution corresponding to that category is multiplied by the original probability value of that category as a weight to obtain the weighted probability value for that category. This process is repeated for all categories to generate the weighted intent probability vector. In this vector, the probability of the category corresponding to a high-contribution feature is amplified, while the probability of the category corresponding to a low-contribution feature is suppressed. If the prediction confidence is less than the preset confidence, the system determines that the current classification result has a large discrepancy. In this case, no weighted calculation is performed; the original intent probability vector is directly output as the weighted intent probability vector to avoid introducing additional errors due to unreliable weighting.
[0031] The process of setting the preset confidence level is as follows: After the system completes the training of the random forest model, a portion of untrained labeled samples are reserved as a validation set. The micro-motion feature set in the validation set is input into the trained model to obtain the corresponding prediction confidence level and classification results. Then, different confidence level candidate values are iterated, starting from 60% and increasing in increments of 5% to 90%. For each candidate threshold, the accuracy and recall of the model on the validation set are calculated, and the curves of accuracy and recall changing with the threshold are plotted. The threshold corresponding to the balance between accuracy and recall and the maximum value of their product is selected as the final preset confidence level. After multiple cross-validation experiments, it was confirmed that when the threshold is set to 75%, the model has the lowest false alarm rate and the highest correct recognition rate for classifying motion states. Therefore, this value is fixed as the preset confidence level.
[0032] Finally, the weighted intent probability vector is globally aggregated to obtain the current user's intent result. The system inputs weighted intent probability vector data from five consecutive time steps and performs a fusion calculation on the probability distribution over the time series. First, the weighted intent probability vectors from the five consecutive time steps are arranged in chronological order. For each behavioral intent category, the probability value of that category is extracted from these five time steps. These five probability values are summed, and the sum is divided by the number of time steps (5) to obtain the average probability value for that category. This process is repeated for all behavioral intent categories, ultimately generating an aggregated average probability vector. Each element in this vector represents the overall probability tendency of the corresponding category over the past five time steps. Finally, the category with the highest probability value is selected from this average probability vector as the current user's behavioral intent result, for example, explicitly determining that the current runner is in a sprint acceleration state.
[0033] The selection of 5 time steps as the window length for global aggregation processing is based on a balance between the continuity of user motion behavior and the real-time response of the system. If the window is too short, such as using only 1 to 2 time steps, the random fluctuations in a single classification result are easily amplified, leading to frequent jumps in intent determination and affecting the stability of power-saving operations. If the window is too long, such as using more than 10 time steps, the system's response delay to changes in user behavior increases significantly, making it impossible to trigger power-saving operations in time before scene switching occurs. Statistical analysis of historical motion data shows that when the window length is set to 5 time steps, it can effectively filter out single-frame noise while maintaining rapid tracking of changes in user behavior, achieving an optimal balance between the accuracy of intent classification results and response speed.
[0034] It should be noted that the probability distribution on a time series is a data structure formed by arranging the weighted intent probability vectors output by the system over multiple consecutive time steps in chronological order. Specifically, the system generates a weighted intent probability vector at each time step, where each element represents the probability value of the user being in different behavioral intent categories at the current time step. Arranging the weighted intent probability vectors from five consecutive time steps in chronological order constitutes a probability distribution on a time series. This distribution reflects the evolution trend of user behavioral intent over time, providing a data foundation for subsequent moving average aggregation processing.
[0035] In step S14, the intent result is subjected to state decoding processing to obtain the predicted probability value of the user switching scenes, including: The intention results obtained from continuous detection are used as the observation sequence; The observed sequence is state decoded to obtain the predicted probability value of the user's upcoming scene switch.
[0036] It should be noted that when using the continuously detected intent results as an observation sequence, the system first stores the current user behavior intent results, such as sprint acceleration, constant speed maintenance, or fatigue deceleration, as an observation value in a cache queue. The length of the cache queue is set to 10 time steps, and a first-in-first-out update strategy is adopted. Whenever a new intent result is generated, the system appends the result to the tail of the queue and removes the oldest observation value from the head of the queue to ensure that the queue always stores the continuous intent results of the most recent 10 time steps. Arranging these 10 observation values in chronological order constitutes an observation sequence of length 10, such as [sprint acceleration, sprint acceleration, constant speed maintenance, constant speed maintenance, constant speed maintenance, fatigue deceleration, fatigue deceleration, sprint acceleration, sprint acceleration, sprint acceleration].
[0037] Then, when the system decodes the observation sequence to obtain the predicted probability value of the user's upcoming scene change, it inputs the aforementioned observation sequence of length 10 into a pre-constructed and trained Hidden Markov Model. This model contains four hidden states: sprint acceleration, constant speed maintenance, and fatigue deceleration, as well as the transition probability matrix and observation probability matrix between states. The Viterbi algorithm is used to decode the observation sequence. The Viterbi algorithm uses dynamic programming to recursively calculate the maximum probability path of each hidden state at each time step from front to back, and records the path backtracking pointer. After traversing the entire observation sequence, it starts from the last time step and reverses along the backtracking pointer. Tracing back, we obtain the implicit state transition path most likely to generate the current observation sequence, such as [sprint acceleration, sprint acceleration, constant speed maintenance, constant speed maintenance, constant speed maintenance, fatigue deceleration, fatigue deceleration, constant speed maintenance, constant speed maintenance, constant speed maintenance]. Then, based on the implicit state probability distribution of the last time step in this path, we extract the probability value of entering the constant speed maintenance state at the next moment as the predicted probability value of the user's upcoming scene switch. For example, if the probability of the last time step being in the constant speed maintenance state is 0.68, the probability of being in the sprint acceleration state is 0.20, and the probability of being in the fatigue deceleration state is 0.12, then the output predicted probability value is 68%.
[0038] In step S15, when a user switches scenes, their physiological motion state usually undergoes accompanying changes. For example, when a user gets up from a static indoor state and walks outdoors, the acceleration signal changes from low frequency and low amplitude to high frequency and high amplitude, while the angular velocity signal shows obvious attitude adjustment fluctuations. Therefore, the inferred motion state probability value can serve as a precursor signal for scene switching. When the predicted probability value is greater than a preset probability threshold, it indicates that the user's motion activity has changed significantly, and there is a high probability of migrating from the current scene to another scene. At this time, further external environmental data such as network environment and geographical location are obtained for verification and type confirmation. If the predicted probability value is not greater than the preset probability threshold, it is determined that the user's motion state is stable. At this time, the current state is maintained, no power saving is required, and the loop detection continues.
[0039] The preset probability threshold is determined by historical data. During the daily use of the smartwatch, the system continuously records the predicted probability values output in step S14 to form a historical probability value sequence. The average and standard deviation of the historical probability value sequence are calculated, and the preset probability threshold is set as the sum of the average and standard deviation.
[0040] In one implementation, the user's network environment data and geographic location data are obtained, and the scene switching type is determined, including: Obtain the user's network environment data and geographic location data to obtain the current scene characteristics; The current scene features are compared with preset historical scene features to obtain feature difference values; If the feature difference value is greater than a preset difference threshold, the scene switching type is determined based on the network environment data and the geographical location data.
[0041] It should be noted that when obtaining the user's network environment data and geographic location data to obtain the current scene features, the system collects the name of the currently connected wireless LAN, the Internet Protocol address range, and the device's physical address as network environment data, and at the same time collects the latitude and longitude coordinates obtained by satellite positioning as geographic location data. The system performs feature dimensionality reduction and encoding on the above multi-dimensional environment and location information, and outputs a current scene feature containing multiple integer dimensions.
[0042] Next, the current scene features are compared with preset historical scene features. When obtaining the feature difference value, the system extracts the historical scene feature vectors that the target object frequently used in the past 3 months. The similarity is evaluated by calculating the angle between the current scene feature vector and the historical scene feature vector in space. The similarity is then mapped inversely to an integer between 0 and 100 as the feature difference value. Specifically, the system first calculates the ratio of the dot product of the two feature vectors to the product of their respective magnitudes, obtaining a cosine similarity value between -1 and 1. Then, a linear inverse ratio transformation is used to map the cosine similarity value to the target object. The system maps to an integer range of 0 to 100. When the cosine similarity is 1, it maps to 0, representing complete identity; when the cosine similarity is -1, it maps to 100, representing complete opposites; and when the cosine similarity is 0, it maps to 50, representing complete irrelevance. For cosine similarity values falling within the middle range, the system performs piecewise linear interpolation calculations based on the three anchor points mentioned above. If the cosine similarity is between 0 and 1, a linear mapping decreasing from 50 to 0 is used; if the cosine similarity is between -1 and 0, a linear mapping increasing from 50 to 100 is used. Finally, the calculation result is rounded to the nearest integer and output as the feature difference value.
[0043] If the feature difference value is greater than the preset difference threshold, when determining the scene switching type based on the network environment data and the geographical location data, the preset difference threshold is set to 75. When the feature difference value is greater than 75, it is determined that the target object is in an abnormal environment migration. The scene switching type is determined by combining the specific input data. The system is based on the already acquired network environment data (such as the name of the currently connected wireless LAN, Internet Protocol address range, and device physical address) and geographical location data (such as satellite positioning latitude and longitude coordinates), which themselves carry scene identification information. For example, home networks usually correspond to fixed wireless LAN names and private network address ranges, company networks correspond to specific enterprise gateway addresses, and public proxy networks are characterized by unfamiliar Internet Protocol addresses and abnormal gateway affiliations. By comparing the currently collected network environment data and geographical location data with the historically stored common environment feature database item by item, the system can identify the difference between the current environment and the historical habitual environment, thereby resolving the specific scene switching type.
[0044] For example, the user's network environment data and geographic location data are obtained to obtain current scene characteristics, such as the currently connected Wi-Fi name being Guest_WiFi, the Internet Protocol address range being 203.xxx, and the satellite positioning coordinates being longitude 116.40 and latitude 39.90. These current scene characteristics are compared with preset historical scene characteristics, and a feature difference value of 82 is obtained. If the feature difference value is greater than a preset difference threshold of 75, the scene switching type is determined to be a sudden change from a home network to a remote public proxy network based on the network environment data and the geographic location data.
[0045] The preset difference threshold of 75 is determined based on statistical analysis of a large amount of historical behavioral data. The system first collects feature difference data of the target object under normal operating conditions and feature difference data when abnormal environment migration events have occurred in the past three months, forming two sample sets. The mean and standard deviation of the two sample sets are calculated respectively to determine the upper limit distribution range of feature difference values under normal operating conditions and the lower limit distribution range of feature difference values under abnormal migration events. The critical point that can make the classification accuracy of the two types of samples reach the highest is selected as the threshold. After cross-validation of multiple sets of samples, when the threshold is set to 75, the false alarm rate of the system for normal environment and the false negative rate for abnormal migration reach the lowest level at the same time. Therefore, this value is fixed as the preset difference threshold.
[0046] In one implementation, the warning signal is a data frame consisting of a trigger timestamp, a scene switching type encoding, a feature difference value, a current network environment summary, and a current geographic location summary.
[0047] It should be noted that when generating an early warning signal based on the impending scenario switch, the system first constructs a structured early warning data frame. This data frame contains the following fields: the trigger timestamp is taken from the current system time; the scenario switch type code is obtained by looking up a table based on the determined scenario switch type (e.g., code 01 for migration from home network to remote agent, code 02 for migration from resident city to unfamiliar city, and code 03 for migration from stable Wi-Fi to weak signal cellular network); the feature difference value is taken from the calculation result 82 of step S107; the current network environment summary is taken from the network environment data obtained in the previous steps (e.g., SSID: Guest_WiFi, IP: 203.xxx); and the current geographic location summary is taken from the geographic location data (e.g., longitude 116.40, latitude 39.90). After encapsulating the above fields according to a predetermined format, a warning signal is obtained. This signal is sent to the power-saving decision module in the form of a message queue. For example, a specific warning signal generated is {timestamp 1725000000, type code 01, difference value 82, network digest "SSID:Guest_WiFi, IP:203.xxx", location digest "longitude 116.40, latitude 39.90", high risk level}. After receiving the signal, the power-saving decision module extracts the timestamp and scene switching type to enter the subsequent power consumption prediction process.
[0048] In step S16, the estimated power consumption is calculated based on the warning signal, and the timing of power saving is determined based on the estimated power consumption, including: Extract the trigger timestamp and scene switching type code of the warning signal; Based on the scene switching type code, obtain the historical power-saving trigger delay and calculate the estimated power consumption for scene transition; If the estimated power consumption is greater than the preset power consumption threshold, the historical power-saving trigger delay is corrected to obtain the target trigger delay; Based on the timestamp information and the target trigger delay, the target power-saving timing for performing the power-saving operation is determined.
[0049] It should be noted that the system receives the warning signal transmitted by the front-end node, parses the data frame structure of the signal, extracts the trigger timestamp and scene switching type code accurate to the millisecond level, and identifies the scene switching type based on the scene switching type code, such as the migration from a stable indoor wireless LAN to a weak outdoor cellular network.
[0050] Next, based on the scenario switching type, when obtaining the historical power-saving trigger delay and calculating the estimated power consumption for scenario transition, the system, for this type of scenario switching involving network environment migration, retrieves the device's underlying historical operation logs and extracts the average time span required from network disconnection to re-establishing a stable connection during similar switching events in the past 30 days as the historical power-saving trigger delay. Then, this historical power-saving trigger delay, the current device's screen brightness level, and the number of high-power-consuming background applications are used as input features, converted into unified power consumption contributions, and accumulated: First, the historical power-saving trigger delay is multiplied by the device's average base power consumption per unit time in a weak signal environment (this base power consumption is obtained through historical log statistics) to obtain the base power consumption corresponding to the delay duration; second, the current screen brightness level is multiplied by the additional power consumption coefficient per unit time corresponding to that brightness level to obtain the additional power consumption of screen brightness; finally, the number of high-power-consuming background applications is multiplied by the average power consumption of a single high-power-consuming application to obtain the power consumption of background applications; after accumulating the above three power consumptions, a quantified estimated power consumption for scenario transition is output. Among them, all coefficients and power consumption parameters are derived from statistical analysis of actual power consumption data in historical operation logs. The additional power consumption coefficient corresponding to screen brightness is the highest, followed by the basic power consumption corresponding to latency, and the average power consumption of a single background application is relatively small.
[0051] It should be noted that the power consumption during scene transition is mainly determined by three factors: the longer the transition lasts, the more power is consumed cumulatively; the higher the screen brightness, the faster the power is consumed per unit time; and the more power-consuming applications are in the background, the greater the total system load. The total power consumption of this scene transition can be approximately estimated by linearly adding these three factors together.
[0052] If the estimated power consumption is greater than the preset power consumption threshold, when correcting the historical power-saving trigger delay to obtain the target trigger delay, the system compares the estimated power consumption with the preset power consumption threshold. When the estimated power consumption is greater than the preset threshold, it is determined that there is a high risk of power consumption during this scenario transition. At this time, the system obtains the current remaining power value of the device and uses the remaining power value as the independent variable of the smoothing coefficient to dynamically attenuate and correct the historical power-saving trigger delay. The system first divides the current remaining power value by the device's full charge capacity to obtain the remaining power percentage, which ranges from 0 to 1. Then, this percentage is used as the value of the smoothing coefficient alpha. The remaining battery percentage is equal to the target trigger delay, which is equal to the historical power-saving trigger delay multiplied by [the specified value]. The formula is used for calculation. For example, if the historical power-saving trigger delay is 120 seconds and the remaining battery percentage is 0.3%, then the target trigger delay is 120 multiplied by 0.3, which equals 36 seconds. The lower the remaining battery percentage, the longer the delay. The smaller the value, the greater the compression of the historical power-saving trigger delay, thus achieving the effect of triggering the power-saving operation earlier when the remaining power is low; the lower the remaining power, the greater the attenuation, and the target trigger delay is output after algorithm correction. If the estimated power consumption is less than or equal to the preset power consumption threshold, it is determined that the risk of excessive power consumption in this scenario is low, and there is no need to correct the historical power-saving trigger delay; the historical power-saving trigger delay is directly output as the target trigger delay.
[0053] The formula linearly compresses the historical average delay time according to the proportion of the current remaining battery power. The percentage of remaining battery power represents the device's current energy sufficiency. When the battery power is sufficient, the percentage is close to 1, allowing for a suitable delay in power-saving operations to prioritize user experience. When the battery power is low, the percentage is close to 0, requiring a significant reduction in delay to enter power-saving mode as soon as possible, thus preventing the battery from running out. The reason for adopting a strict linear proportional relationship is that statistical analysis of the actual usage behavior of a large number of users under different remaining battery power levels reveals an approximately linear relationship between users' psychological expectations for power-saving timing and the remaining battery power—for every certain percentage decrease in battery power, the user's expected power-saving response speed increases by a corresponding multiple. This linear model can fit statistical data well and has the advantages of simple calculation and easy real-time implementation in embedded systems, thus it has been adopted in engineering practice. While using nonlinear functions (such as exponential or logarithmic decay) can theoretically more precisely characterize response requirements in certain extreme scenarios, it increases computational complexity and introduces additional parameter tuning costs. Furthermore, there is a lack of sufficient statistical evidence to show that nonlinear models have a significant advantage over linear models in practical applications. Therefore, this solution uses a linear proportional relationship as the basis for correction.
[0054] The preset power consumption threshold is set based on statistical analysis of the device's historical operation logs. The system collects the actual power consumption data of all similar scenario switching events in the past 30 days, calculates the average of these power consumptions, and rounds the average up to the nearest integer as the preset power consumption threshold. For example, if the calculated average power consumption is 28 mA, then the preset power consumption threshold is set to 30 mA, thereby distinguishing between normal power consumption and high-risk power consumption scenarios.
[0055] Then, when determining the target power-saving timing for performing power-saving operations based on the timestamp information and the target trigger delay, the system adds the initially extracted timestamp and the calculated target trigger delay to a scalar on the time axis, and finally determines the target power-saving timing for performing power-saving operations as the nth second after the warning signal occurs. When this timing is reached, an instruction to shut down unnecessary background processes is issued.
[0056] It should be noted that the method further includes: When the power-saving opportunity arrives, the hardware control module is triggered to generate a hardware frequency reduction signal and an activity limit instruction; The screen refresh rate of the smartwatch is reduced according to the hardware down-frequency signal, and the rendering frame rate threshold is output. Based on the activity limit instruction and the rendering frame rate threshold, extract at least one background application and move it into the process suspension queue. The background activity of background applications in the process suspension queue is synchronously limited according to the process suspension queue.
[0057] It should be noted that when the power-saving timing is reached, the hardware control module is triggered to generate a hardware frequency reduction signal and an activity limit instruction. The system's internal timer detects that the current time is aligned with the set target power-saving timing. The underlying scheduler sends a trigger pulse to the hardware control module. After receiving the pulse, the hardware control module generates the hardware frequency reduction signal and the activity limit instruction in parallel. The hardware frequency reduction signal directly acts on the smartwatch's display driver chip, and the activity limit instruction is passed to the process scheduling module of the operating system kernel layer.
[0058] Next, when the screen refresh rate of the smartwatch is reduced according to the hardware down-frequency signal and the rendering frame rate threshold is output, the display driver chip analyzes the hardware down-frequency signal and dynamically reduces the global refresh rate of the smartwatch screen from the default 60 Hz to 15 Hz. At the same time, the graphics processing unit calculates and outputs a matching rendering frame rate threshold based on the current reduced refresh rate. This threshold is set to 15 frames per second as a reference value for subsequent software layer control.
[0059] Then, according to the activity limit instruction and the rendering frame rate threshold, when at least one background application is extracted and moved into the process suspension queue, the operating system responds to the activity limit instruction and starts the background process screening mechanism. The real-time rendering request frequency of all currently running background application processes is used as the input feature. If the real-time rendering request frequency of a certain background application reaches 30 frames, which is significantly higher than the rendering frame rate threshold of 15 frames, and the application is not in the system-level keep-alive whitelist, it is then determined to be a high-energy-consuming out-of-bounds process. Subsequently, such extracted background applications are uniformly moved into the pre-allocated process suspension queue.
[0060] The system-level keep-alive whitelist includes two sources: first, a list of core applications that cannot be suspended and is pre-installed in the smartwatch at the factory, covering core service applications that ensure the watch's basic functions and user safety, such as real-time heart rate monitoring, activity tracking, message push, and emergency contact; second, custom keep-alive applications that users can manually add in the watch settings interface, such as outdoor hiking navigation and Bluetooth music playback that require continuous background operation. During screening, applications are prioritized for checking whether they are on the whitelist. Applications on the whitelist are not included in the high-power-consuming out-of-bounds process judgment range even if their rendering request frequency exceeds the limit.
[0061] Finally, when the background activity of at least one background application is limited according to the process suspension queue, the kernel layer synchronously executes the background activity limit for applications in the process suspension queue. By modifying the scheduling priority parameter in the process control block, the CPU time slice allocation weight of these applications is reduced to 10% of the original weight. At the same time, unnecessary wake-up lock requests and background network synchronization tasks initiated by these applications are intercepted to ensure that the suspended applications maintain a very low resource consumption state under low refresh rate conditions.
[0062] The second embodiment of the present invention provides a low-power control system for a smartwatch based on a smart chip, comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the method described above.
[0063] It should be noted that the smart chip-based low-power control system for smartwatches provided in this embodiment of the invention is used to execute all the process steps of the smart chip-based low-power control method for smartwatches in the above embodiment. The working principles and beneficial effects of the two are one-to-one, so they will not be described again.
[0064] It should be noted that the device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Furthermore, in the accompanying drawings of the device embodiments provided by this invention, the connection relationships between modules indicate that they have communication connections, which can be specifically implemented as one or more communication buses or signal lines. Those skilled in the art can understand and implement this without any creative effort.
[0065] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above descriptions are merely specific embodiments of the present invention and are not intended to limit the scope of protection of the present invention. In particular, it should be noted that any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention for those skilled in the art.
Claims
1. A low-power control method for smartwatches based on smart chips, characterized in that, include: The smartwatch obtains the user's acceleration and angular velocity through its built-in smart chip, and performs preprocessing to obtain motion data; Feature extraction is performed on the motion data to obtain a set of micro-motion features used to characterize user motion information; Intent analysis is performed on the micro-motion feature set to obtain the intent probability vector corresponding to each motion state, and the intent probability vector is aggregated to obtain the user's intent result. The intent result is subjected to state decoding processing to obtain the predicted probability value of the user switching scenes; If the predicted probability value is greater than the preset probability threshold, the user's network environment data and geographical location data are obtained, the scene switching type is determined, and an early warning signal is generated based on the scene switching type. Calculate the estimated power consumption based on the warning signal, and determine the timing for power saving based on the estimated power consumption.
2. The low-power control method for smartwatches based on smart chips according to claim 1, characterized in that, The process involves acquiring the user's acceleration and angular velocity through the smartwatch's built-in smart chip, preprocessing them, and obtaining motion data, including: The smartwatch acquires the user's acceleration and angular velocity through its built-in smart chip, and then filters the data to obtain synchronized sensor data. Obtain the geographic coordinates data of smartwatch users; Calculate the coordinate transformation parameters between the body coordinate system where the synchronous sensing data is located and the geodetic coordinate system where the geographic coordinate data is located to obtain the coordinate deviation; If the coordinate deviation is greater than a preset deviation threshold, the synchronous sensing data is subjected to coordinate transformation to obtain global sensing data; if the coordinate deviation is not greater than the preset deviation threshold, the synchronous sensing data is used as global sensing data. The global sensing data is segmented to obtain motion data.
3. The low-power control method for smartwatches based on smart chips according to claim 1, characterized in that, The step of extracting features from the motion data to obtain a set of micro-motion features characterizing user motion information includes: Extract time-domain and frequency-domain feature vectors from the motion data; The time-domain feature vector and the frequency-domain feature vector are concatenated to reduce the dimensionality, resulting in a fused feature vector. The fused feature vector is normalized to obtain a set of micro-motion features.
4. The low-power control method for smartwatches based on smart chips according to claim 1, characterized in that, The intention analysis of the micro-motion feature set is performed to obtain the intention probability vector corresponding to each motion state, and the intention probability vector is aggregated to obtain the user's intention result, including: Path analysis is performed on the micro-motion feature set under each motion state to obtain the intention probability vector corresponding to each motion state. Calculate prediction confidence based on the intent probability vector; If the prediction confidence is greater than or equal to the preset confidence, the intention probability vector is weighted according to the pre-stored feature contribution set to generate a weighted intention probability vector; if the prediction confidence is less than the preset confidence, the intention probability vector is directly used as the weighted intention probability vector. The weighted intent probability vector is globally aggregated to obtain the intent result of the current user.
5. The low-power control method for smartwatches based on smart chips according to claim 1, characterized in that, The step of performing state decoding on the intent result to obtain the predicted probability value of the user switching scenarios includes: The intention results obtained from continuous detection are used as the observation sequence; The observed sequence is state decoded to obtain the predicted probability value of the user's upcoming scene switch.
6. The low-power control method for smartwatches based on smart chips according to claim 1, characterized in that, The process of acquiring the user's network environment data and geographic location data, and determining the scene switching type, includes: Obtain the user's network environment data and geographic location data to obtain the current scene characteristics; The current scene features are compared with preset historical scene features to obtain feature difference values; If the feature difference value is greater than a preset difference threshold, the scene switching type is determined based on the network environment data and the geographical location data.
7. The low-power control method for smartwatches based on smart chips according to claim 1, characterized in that, The warning signal is a data frame consisting of a trigger timestamp, scene switching type code, feature difference value, current network environment summary, and current geographical location summary.
8. The low-power control method for smartwatches based on smart chips according to claim 1, characterized in that, The step of calculating the estimated power consumption based on the early warning signal and determining the timing of power saving based on the estimated power consumption includes: Extract the trigger timestamp and scene switching type code of the warning signal; Based on the scene switching type code, obtain the historical power-saving trigger delay and calculate the estimated power consumption for scene transition; If the estimated power consumption is greater than the preset power consumption threshold, the historical power-saving trigger delay is corrected to obtain the target trigger delay; Based on the timestamp information and the target trigger delay, the target power-saving timing for performing the power-saving operation is determined.
9. The low-power control method for smartwatches based on smart chips according to claim 1, characterized in that, The method further includes: When the power-saving opportunity arrives, the hardware control module is triggered to generate a hardware frequency reduction signal and an activity limit instruction; The screen refresh rate of the smartwatch is reduced according to the hardware down-frequency signal, and the rendering frame rate threshold is output. Based on the activity limit instruction and the rendering frame rate threshold, extract at least one background application and move it into the process suspension queue. The background activity of background applications in the process suspension queue is synchronously limited according to the process suspension queue.
10. A low-power control system for a smartwatch based on a smart chip, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the method according to any one of claims 1 to 9.