Adaptive calibration method and device for capacitive pressure sensor based on state determination

By determining the calibration window using a state discrimination function and cross-correlation coefficient, and dynamically adjusting the learning rate for adaptive calibration, the baseline drift problem of capacitive pressure sensors in wearable devices is solved, achieving efficient and low-cost calibration results, suitable for wearable health monitoring and biomechanical analysis.

CN122237827APending Publication Date: 2026-06-19QUANZHOU INST OF EQUIP MFG +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610504685.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-04-16
Publication Date
2026-06-19

AI Technical Summary

Technical Problem

Capacitive pressure sensors are subject to baseline drift due to environmental temperature, humidity and mechanical stress in wearable health monitoring and biomechanical analysis. Existing compensation solutions are costly, complex or have poor user experience, and have failed to effectively solve the real-time drift problem.

Method used

By acquiring data from a capacitive pressure sensor array and an inertial measurement unit, and using a state discrimination function and cross-correlation coefficient to determine the calibration window, the learning rate is dynamically adjusted for adaptive calibration, achieving fully automatic and highly robust online calibration.

Benefits of technology

It significantly reduces costs, achieves stable and accurate compensation stress values, provides a reliable foundation for subsequent analysis, and is suitable for resource-constrained embedded processors and large-scale consumer wearable products.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122237827A_ABST
    Figure CN122237827A_ABST
Patent Text Reader

Abstract

This invention discloses an adaptive calibration method and apparatus for capacitive pressure sensors based on state determination, relating to the field of data processing. The method includes: calculating a state discrimination function value and a cross-correlation coefficient based on the original pressure vector within the sliding window corresponding to the k-th time step, the vertical acceleration component in the world coordinate system, and the angular velocity vector in the body coordinate system; determining whether the sliding window corresponding to the k-th time step is the current valid calibration window; if so, determining the drift estimate of each capacitive pressure sensor and the learning rate of the current valid calibration window based on the original pressure data collected within the current valid calibration window; updating the reference value of each capacitive pressure sensor in the previous valid calibration window to obtain the reference vector of the current valid calibration window, which is used to compensate for subsequent original pressure vectors to obtain the corresponding compensated pressure vector. This invention solves the problem of zero drift in pressure data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data processing, and more specifically to an adaptive calibration method and apparatus for a capacitive pressure sensor based on state determination. Background Technology

[0002] In fields such as wearable health monitoring and biomechanical analysis, capacitive pressure sensors are widely used due to their high sensitivity and low power consumption. However, their output signals are highly susceptible to material creep caused by ambient temperature, humidity, and long-term mechanical stress, leading to a slow drift of the baseline (zero point). This "zero drift" is a core pain point affecting the long-term measurement accuracy and reliability of the device.

[0003] The existing compensation schemes mainly include:

[0004] 1. Hardware compensation solution: Adding a dedicated temperature and humidity sensor for joint calibration increases system cost and complexity.

[0005] 2. Software filtering solutions: High-pass filtering or simple thresholding methods are used, but they are difficult to distinguish between the real zero-force state and the minute pressure signal, and are prone to failure in dynamic usage scenarios.

[0006] 3. Regular manual calibration: This method relies on user operation, resulting in a poor user experience and failing to resolve real-time drift issues during use.

[0007] Essentially, existing technologies fail to fully leverage the data correlation between multiple sensors in wearable devices, nor do they intelligently identify physical states that can be used for calibration from dynamic data streams through efficient electro-digital data processing methods. Summary of the Invention

[0008] The purpose of this application is to propose an adaptive calibration method and device for capacitive pressure sensors based on state determination, addressing the aforementioned technical problems.

[0009] In a first aspect, the present invention provides an adaptive calibration method for a capacitive pressure sensor based on state determination, comprising the following steps:

[0010] The original pressure vector output by the capacitive pressure sensor array and the inertial vector output by the inertial measurement unit are acquired at the k-th time step, which are installed on the same structure. The inertial vector includes the acceleration vector and angular velocity vector in the body coordinate system.

[0011] Obtain the unit attitude quaternion at time step (k-1). Perform attitude calculation based on the inertia vector at time step (k) and the unit attitude quaternion at time step (k-1) to obtain the vertical acceleration component in the world coordinate system at time step (k). Calculate the corresponding state discrimination function value based on the original pressure vector, the vertical acceleration component in the world coordinate system, and the angular velocity vector in the body coordinate system within the sliding window corresponding to time step (k). Calculate the corresponding cross-correlation coefficient based on the original pressure vector and the vertical acceleration component in the world coordinate system within the sliding window corresponding to time step (k). Determine whether the sliding window corresponding to time step (k) is the current valid calibration window based on the state discrimination function value and the cross-correlation coefficient within the sliding window corresponding to time step (k).

[0012] In response to determining the sliding window corresponding to the k-th time step as the current effective calibration window, the drift estimate of each capacitive pressure sensor is determined based on the raw pressure data collected within the current effective calibration window. The learning rate of the current effective calibration window is calculated based on the raw pressure vector within the current effective calibration window. The reference value of each capacitive pressure sensor in the previous effective calibration window is updated based on the learning rate of the current effective calibration window and the drift estimate of each capacitive pressure sensor, thus obtaining the reference value of each capacitive pressure sensor in the current effective calibration window. The reference vector of the current effective calibration window is then used to compensate the raw pressure vector at the k-th time step, resulting in the compensated pressure vector at the k-th time step.

[0013] As a preferred option, the formula for calculating the state discrimination function value is as follows:

[0014] ;

[0015] in, Let represent the angular velocity vector at the k-th time step in the body coordinate system. This represents the state discrimination function value at the k-th time step. It is the acceleration due to gravity. This represents a function for calculating variance. , , These are the first weighting coefficient, the second weighting coefficient, and the third weighting coefficient, respectively. Represents the L2 norm. This represents the original pressure vector of the sliding window corresponding to the k-th time step, constructed from the original pressure data collected from the kL-th time step to the k-th time step, where L represents the length of the sliding window; This represents the vertical acceleration component at the k-th time step in the world coordinate system.

[0016] The expression for the cross-correlation coefficient is as follows:

[0017] ;

[0018] in, This represents the cross-correlation coefficient between the original pressure vector and the vertical acceleration component within the sliding window corresponding to the k-th time step. Let represent the sum of the raw pressure data collected by all capacitive pressure sensors in the capacitive pressure sensor array at the j-th time step, expressed as: , This represents the raw pressure data collected by the i-th capacitive pressure sensor at the j-th time step; This represents the vertical acceleration component in the world coordinate system at the j-th time step; and These represent the average value of the sum of the original pressure data within the sliding window corresponding to the k-th time step, and the average value of the vertical acceleration component in the world coordinate system, respectively.

[0019] Preferably, the determination of whether the sliding window corresponding to the k-th time step is a currently valid calibration window is based on the state discrimination function value and cross-correlation coefficient within the sliding window corresponding to the k-th time step, specifically including:

[0020] In response to the determination that the state discrimination function value within the sliding window corresponding to the k-th time step is less than the state threshold, and the cross-correlation coefficient within the sliding window corresponding to the k-th time step is less than the cross-correlation threshold, the sliding window corresponding to the k-th time step is determined to be the current valid calibration window.

[0021] In response to determining that the state discrimination function value within the sliding window corresponding to the k-th time step is greater than or equal to the state threshold, and the cross-correlation coefficient within the sliding window corresponding to the k-th time step is greater than or equal to the cross-correlation threshold, it is determined that the sliding window corresponding to the k-th time step is not the currently valid calibration window.

[0022] Preferably, attitude calculation is performed based on the inertia vector at the k-th time step and the unit attitude quaternion at the (k-1)-th time step to obtain the vertical acceleration components in the world coordinate system at the k-th time step, specifically including:

[0023] The unit attitude quaternion at time step (k-1) is discretely integrated with the angular velocity vector at time step (k) in the body coordinate system to obtain the unit attitude quaternion at time step (k), as shown in the following equation:

[0024] ;

[0025] in, Indicates the sampling period. This represents the unit pose quaternion at the (k-1)th time step. This represents the unit pose quaternion at the k-th time step. Let represent the angular velocity vector at the k-th time step in the body coordinate system. These represent the angular velocities along the x-axis, y-axis, and z-axis in the body coordinate system, respectively. This represents the quaternion multiplication operator;

[0026] The matrix expansion of the unit pose quaternion at the k-th time step is as follows:

[0027] ;

[0028] in, Each of the four elements in the unit attitude quaternion represents a single element.

[0029] Based on the equivalent mathematical relationship between unit attitude quaternions and rotation matrices, the rotation matrix from the body coordinate system to the world coordinate system is... It can be represented by the element-wise expansion of the unit attitude quaternion as follows:

[0030] ;

[0031] By using a rotation matrix, the acceleration vector at the k-th time step in the body coordinate system is mapped to the acceleration vector at the k-th time step in the world coordinate system, as shown in the following equation:

[0032] ;

[0033] in, Let represent the angular velocity vector at the k-th time step in the body coordinate system. These represent the accelerations along the x-axis, y-axis, and z-axis in the body coordinate system, respectively. This represents the angular velocity vector at the k-th time step in the world coordinate system.

[0034] Extracting the rotation matrix The third row elements are combined to form a vector, and then multiplied by the acceleration vector at the k-th time step in the body coordinate system to obtain the vertical acceleration component at the k-th time step in the world coordinate system, as shown in the following formula:

[0035] ;

[0036] in, This represents the vertical acceleration component at the k-th time step in the world coordinate system.

[0037] Preferably, the drift estimate for each capacitive pressure sensor is a statistical value of the raw pressure data of each capacitive pressure sensor acquired within the current effective calibration window, including the median.

[0038] The formula for calculating the reference value of each capacitive pressure sensor in the current effective calibration window is as follows:

[0039] ;

[0040] in, This represents the reference value of the i-th capacitive pressure sensor at the (k-1)-th time step. This represents the reference value of the i-th capacitive pressure sensor at the k-th time step. This represents the drift estimate of the i-th capacitive pressure sensor. The learning rate of the current effective calibration window is expressed as:

[0041] ;

[0042] Indicates the basic learning rate. This represents the penalty coefficient.

[0043] As a preferred embodiment, the expression for the compensation pressure vector at the k-th time step is as follows:

[0044] ;

[0045] in, The reference vector for the current valid calibration window is expressed as: T denotes the transpose of the matrix. This represents the original pressure vector at the k-th time step. This represents the compensation pressure vector at the k-th time step.

[0046] In a second aspect, the present invention provides an adaptive calibration device for a capacitive pressure sensor based on state determination, comprising:

[0047] The data acquisition module is configured to acquire the raw pressure vector output by the capacitive pressure sensor array installed on the same structure at the k-th time step and the inertial vector output by the inertial measurement unit. The inertial vector includes the acceleration vector and angular velocity vector in the body coordinate system.

[0048] The current valid calibration window determination module is configured to obtain the unit attitude quaternion at time step (k-1), perform attitude calculation based on the inertia vector at time step (k) and the unit attitude quaternion at time step (k-1), and obtain the vertical acceleration component in the world coordinate system at time step (k). Based on the original pressure vector, the vertical acceleration component in the world coordinate system, and the angular velocity vector in the body coordinate system within the sliding window corresponding to time step (k), the corresponding state discrimination function value is calculated. Based on the original pressure vector and the vertical acceleration component in the world coordinate system within the sliding window corresponding to time step (k), the corresponding cross-correlation coefficient is calculated. Based on the state discrimination function value and the cross-correlation coefficient within the sliding window corresponding to time step (k), it is determined whether the sliding window corresponding to time step (k) is the current valid calibration window.

[0049] The compensation module is configured to, in response to determining that the sliding window corresponding to the k-th time step is the current effective calibration window, determine the drift estimate of each capacitive pressure sensor based on the raw pressure data collected within the current effective calibration window; calculate the learning rate of the current effective calibration window based on the raw pressure vector within the current effective calibration window; update the reference value of each capacitive pressure sensor in the previous effective calibration window based on the learning rate of the current effective calibration window and the drift estimate of each capacitive pressure sensor, thereby obtaining the reference value of each capacitive pressure sensor in the current effective calibration window, and constructing the reference vector of the current effective calibration window; and use the reference vector of the current effective calibration window to compensate the raw pressure vector at the k-th time step, thereby obtaining the compensated pressure vector at the k-th time step.

[0050] Thirdly, the present invention provides an electronic device including one or more processors; and a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the method as described in any implementation of the first aspect.

[0051] Fourthly, the present invention provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method as described in any of the implementations of the first aspect.

[0052] Fifthly, the present invention provides a computer program product, including a computer program that, when executed by a processor, implements the method as described in any of the implementations in the first aspect.

[0053] Compared with the prior art, the present invention has the following beneficial effects:

[0054] (1) The adaptive calibration method for capacitive pressure sensors based on state determination proposed in this invention adopts an electronic digital data processing method executed by a processor. It does not rely on any special hardware and utilizes the existing sensor (IMU) of the device to achieve high-value calibration function, which significantly reduces costs.

[0055] (2) The adaptive calibration method for capacitive pressure sensors based on state determination proposed in this invention intelligently determines the calibration timing by using the state discrimination function value and cross-correlation coefficient within the sliding window, determines whether to update the reference vector of the previous effective calibration window, and dynamically adjusts the learning speed through an adaptive learning rate, thereby achieving fully automatic and highly robust online calibration.

[0056] (3) The stable and accurate compensation pressure value output by the state-determination-based adaptive calibration method for capacitive pressure sensors proposed in this invention is a reliable basis for all subsequent advanced digital signal processing and analysis (such as gait analysis and balance evaluation); it can run efficiently on resource-constrained embedded processors (MCUs) or digital signal processors (DSPs) and is suitable for large-scale consumer wearable products. Attached Figure Description

[0057] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0058] Figure 1 This is a schematic flowchart illustrating the adaptive calibration method for a capacitive pressure sensor based on state determination, as described in an embodiment of this application.

[0059] Figure 2 This is a schematic diagram of an adaptive calibration device for a capacitive pressure sensor based on state determination, as an embodiment of this application.

[0060] Figure 3 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation

[0061] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this invention, and not all of them. Based on the embodiments of this invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this invention.

[0062] Figure 1An embodiment of this application illustrates an adaptive calibration method for a capacitive pressure sensor based on state determination, comprising the following steps:

[0063] S1, acquire the original pressure vector output by the capacitive pressure sensor array and the inertial vector output by the inertial measurement unit at the k-th time step, which are installed on the same structure. The inertial vector includes the acceleration vector and angular velocity vector in the body coordinate system.

[0064] Specifically, in the embodiments of this application, the capacitive pressure sensor array and the inertial measurement unit are mounted on the same structure. One embodiment of this application uses a smart insole embedding a capacitive pressure sensor array and a 9-axis inertial measurement unit (IMU) as an example, with the main control chip being an ARM Cortex-M4 series microprocessor. On this inertial measurement unit, the raw pressure vector output by the capacitive pressure sensor array at the k-th time step is synchronously acquired via an analog-to-digital converter (ADC). and the inertial vector output by the inertial measurement unit (IMU) Where k is the k-th time step, Let be the acceleration vector at the k-th time step in the body coordinate system. Let be the angular velocity vector at the k-th time step in the body coordinate system.

[0065] S2, obtain the unit attitude quaternion at the (k-1)th time step, perform attitude calculation based on the inertia vector at the kth time step and the unit attitude quaternion at the (k-1)th time step, and obtain the vertical acceleration component in the world coordinate system at the kth time step; calculate the corresponding state discrimination function value based on the original pressure vector in the sliding window corresponding to the kth time step, the vertical acceleration component in the world coordinate system, and the angular velocity vector in the body coordinate system; calculate the corresponding cross-correlation coefficient based on the original pressure vector in the sliding window corresponding to the kth time step and the vertical acceleration component in the world coordinate system; determine whether the sliding window corresponding to the kth time step is the current valid calibration window based on the state discrimination function value and the cross-correlation coefficient in the sliding window corresponding to the kth time step.

[0066] In a specific embodiment, attitude calculation is performed based on the inertia vector at the k-th time step and the unit attitude quaternion at the (k-1)-th time step to obtain the vertical acceleration component in the world coordinate system at the k-th time step, specifically including:

[0067] The unit attitude quaternion at time step (k-1) is discretely integrated with the angular velocity vector at time step (k) in the body coordinate system to obtain the unit attitude quaternion at time step (k), as shown in the following equation:

[0068] ;

[0069] in, Indicates the sampling period. This represents the unit pose quaternion at the (k-1)th time step. This represents the unit pose quaternion at the k-th time step. Let represent the angular velocity vector at the k-th time step in the body coordinate system. These represent the angular velocities along the x-axis, y-axis, and z-axis in the body coordinate system, respectively. This represents the quaternion multiplication operator;

[0070] The matrix expansion of the unit pose quaternion at the k-th time step is as follows:

[0071] ;

[0072] in, Each of the four elements in the unit attitude quaternion represents a single element.

[0073] Based on the equivalent mathematical relationship between unit attitude quaternions and rotation matrices, the rotation matrix from the body coordinate system to the world coordinate system is... It can be represented by the element-wise expansion of the unit attitude quaternion as follows:

[0074] ;

[0075] By using a rotation matrix, the acceleration vector at the k-th time step in the body coordinate system is mapped to the acceleration vector at the k-th time step in the world coordinate system, as shown in the following equation:

[0076] ;

[0077] in, Let represent the angular velocity vector at the k-th time step in the body coordinate system. These represent the accelerations along the x-axis, y-axis, and z-axis in the body coordinate system, respectively. This represents the angular velocity vector at the k-th time step in the world coordinate system.

[0078] Extracting the rotation matrix The third row elements are combined to form a vector, and then multiplied by the acceleration vector at the k-th time step in the body coordinate system to obtain the vertical acceleration component at the k-th time step in the world coordinate system, as shown in the following formula:

[0079] ;

[0080] in, This represents the vertical acceleration component at the k-th time step in the world coordinate system.

[0081] Specifically, an embodiment of this application is a four-dimensional vector. , used to represent the rotation state of the body coordinate system relative to the world coordinate system (navigation coordinate system) at the current moment. , , obtained at the unit attitude quaternion of the (k-1)th time step. Then, discrete-time integration can be performed on the angular velocity vector at the k-th time step in the body coordinate system to calculate the unit attitude quaternion at the k-th time step. . The result of the previous attitude calculation serves as the initial reference for this recursive calculation. When k=1, the formula... That is , This represents the initial unit attitude quaternion at startup or algorithm reset, defining the initial rotation state of the body coordinate system relative to the world coordinate system (navigation coordinate system) at the initial moment. Its specific value depends on the system's initial alignment strategy: if the default device's body coordinate system is perfectly aligned with the world coordinate system at the initial moment, it is usually assigned a unit quaternion with no rotation, i.e. However, in practical inertial navigation and sensor applications, the initial pitch and roll angles are typically calculated using the gravity vector measured by the accelerometer during the initialization phase when the device is stationary. This is combined with the magnetometer readings or a default yaw angle setting. Then, the specific values ​​reflecting the device's true initial physical spatial attitude are calculated using the Euler angle to unit attitude quaternion formula. .

[0082] Unit pose quaternion based on the k-th time step The acceleration vector at the k-th time step in the body coordinate system Rotate to the world coordinate system (navigation coordinate system) to obtain the acceleration vector at the k-th time step in the world coordinate system. .

[0083] To obtain the unit quaternion at the current moment. and the acceleration vector measured in the body coordinate system Then, it needs to be transformed to the world coordinate system to extract the vertical acceleration after removing the influence of structural attitude. The formula after electrical digital data processing can be obtained by simplification, so the processor can directly and quickly obtain the vertical acceleration components in the world coordinate system through a finite number of multiplication and addition operations, which greatly reduces the computational complexity and meets the real-time requirements of the wearable device's main control chip.

[0084] In a specific embodiment, the formula for calculating the state discrimination function value is as follows:

[0085] ;

[0086] in, Let represent the angular velocity vector at the k-th time step in the body coordinate system. This represents the state discrimination function value at the k-th time step. It is the acceleration due to gravity. This represents a function for calculating variance. , , These are the first weighting coefficient, the second weighting coefficient, and the third weighting coefficient, respectively. Represents the L2 norm. This represents the original pressure vector of the sliding window corresponding to the k-th time step, constructed from the original pressure data collected from the kL-th time step to the k-th time step, where L represents the length of the sliding window; This represents the vertical acceleration component at the k-th time step in the world coordinate system.

[0087] The expression for the cross-correlation coefficient is as follows:

[0088] ;

[0089] in, This represents the cross-correlation coefficient between the original pressure vector and the vertical acceleration component within the sliding window corresponding to the k-th time step. Let represent the sum of the raw pressure data collected by all capacitive pressure sensors in the capacitive pressure sensor array at the j-th time step, expressed as: , This represents the raw pressure data collected by the i-th capacitive pressure sensor at the j-th time step; This represents the vertical acceleration component in the world coordinate system at the j-th time step; and These represent the average value of the sum of the original pressure data within the sliding window corresponding to the k-th time step, and the average value of the vertical acceleration component in the world coordinate system, respectively.

[0090] Specifically, embodiments of this application construct a state discrimination function value at the k-th time step. This is used to quantify the probability that the sensor is in a "theoretically zero-load" state at the k-th time step. State discrimination function value. The calculation formula consists of three terms: the first corresponds to vertical motion detection, the second to rotational motion detection, and the third to pressure signal fluctuation detection. The state discrimination function value is a "non-zero load penalty function value." The smaller its value, the greater the probability that the sensor is currently "stationary and unloaded," making it more suitable for zero-point calibration. State discrimination function value The first, second, and third weighting coefficients in the calculation formula are weighting coefficients calibrated through experiments.

[0091] At the same time, the sum of the original pressure data is calculated. and Cross-correlation coefficient within the corresponding sliding window at the k-th time step . This measures the linear correlation between time-synchronized raw pressure and acceleration data within a local time window. Its value range is strictly within [a specified range]. Between. The closer the values ​​are. The closer the values ​​are, the more unrelated they are (usually meaning they are in a state of pure random noise); the closer the values ​​are... or This indicates that the two exhibit a high degree of synchronous increase or inverse change. In the application scenario of smart insoles, when the foot touches the ground and applies force, the upward support force (manifested as a surge in pressure) and the upward acceleration (manifested as a surge in vertical acceleration) are highly physically coupled. The absolute value will be very large. However, when the insole is completely stationary and suspended, the minute fluctuations in the sensor readings are merely electrical noise and environmental noise; at this point, there is no physical coupling between pressure noise and acceleration noise. It will approach This is precisely the core physical basis for using it as a "zero-load" criterion. The sliding window corresponding to the k-th time step takes the k-th time step as the time endpoint and moves backward. Each time step This indicates the number of historical data points used to calculate correlation. The sliding window contains a total of [number of data points]. One sampling point. The value of determines the sensitivity of the algorithm: The larger the value, the stronger the noise resistance, but the response to state changes will be delayed. The smaller the value, the faster the response, but the more susceptible it is to transient noise. The sum of the raw pressure data. It represents the scalar sum of the raw pressure data collected by all independent capacitive pressure sensors at the k-th time step, reflecting the overall vertical load on the insole at that instant. It is the arithmetic mean of the sum of all raw pressure data within the sliding window, representing the DC baseline component of the pressure within the sliding window. The formula calculates... Essentially, this involves de-averaging the raw pressure data (removing the DC component) and retaining only the AC fluctuations. Similarly, It is the arithmetic mean of the vertical acceleration components within the sliding window. The formula calculates... This is also to eliminate the DC bias caused by static gravity or fixed attitude, and only extract dynamic acceleration features.

[0092] In one embodiment of this application, the initialization parameters are set as follows: the weight coefficients are set as follows: , , .

[0093] In a specific embodiment, determining whether the sliding window corresponding to the k-th time step is a currently valid calibration window is based on the state discrimination function value and cross-correlation coefficient within the sliding window corresponding to the k-th time step, specifically including:

[0094] In response to the determination that the state discrimination function value within the sliding window corresponding to the k-th time step is less than the state threshold, and the cross-correlation coefficient within the sliding window corresponding to the k-th time step is less than the cross-correlation threshold, the sliding window corresponding to the k-th time step is determined to be the current valid calibration window.

[0095] In response to determining that the state discrimination function value within the sliding window corresponding to the k-th time step is greater than or equal to the state threshold, and the cross-correlation coefficient within the sliding window corresponding to the k-th time step is greater than or equal to the cross-correlation threshold, it is determined that the sliding window corresponding to the k-th time step is not the currently valid calibration window.

[0096] Specifically, when both conditions are met and If the k-th time step is not satisfied, the sliding window corresponding to the k-th time step is determined to be the current valid calibration window. In subsequent steps, the reference vector of the previous valid calibration window is updated using the raw pressure data collected in the current valid calibration window to obtain the reference vector of the current valid calibration window. If the condition is not met, the reference vector of the previous valid calibration window is used to compensate the raw pressure vector of the k-th time step to obtain the compensated pressure vector of the k-th time step.

[0097] In one embodiment of this application, a state threshold is set. Cross-correlation threshold .

[0098] S3, in response to determining the sliding window corresponding to the k-th time step as the current effective calibration window, the drift estimate of each capacitive pressure sensor is determined based on the raw pressure data collected within the current effective calibration window; the learning rate of the current effective calibration window is calculated based on the raw pressure vector within the current effective calibration window; the reference value of each capacitive pressure sensor in the previous effective calibration window is updated based on the learning rate of the current effective calibration window and the drift estimate of each capacitive pressure sensor, thus obtaining the reference value of each capacitive pressure sensor in the current effective calibration window, and a reference vector for the current effective calibration window is constructed; the original pressure vector at the k-th time step is compensated using the reference vector of the current effective calibration window, thus obtaining the compensated pressure vector at the k-th time step.

[0099] In a specific embodiment, the drift estimate of each capacitive pressure sensor is a statistical value of the raw pressure data of each capacitive pressure sensor acquired within the current effective calibration window, including the median.

[0100] The formula for calculating the reference value of each capacitive pressure sensor in the current effective calibration window is as follows:

[0101] ;

[0102] in, This represents the reference value of the i-th capacitive pressure sensor at the (k-1)-th time step. This represents the reference value of the i-th capacitive pressure sensor at the k-th time step. This represents the drift estimate of the i-th capacitive pressure sensor. The learning rate of the current effective calibration window is expressed as:

[0103] ;

[0104] Indicates the basic learning rate. This represents the penalty coefficient.

[0105] Specifically, within the current effective calibration window, the raw pressure data collected by each capacitive pressure sensor are statistically analyzed, and the median value is taken. As the drift estimate for this observation, the baseline value is updated using an exponentially weighted moving average (EWMA) digital filter with an adaptive learning rate. When the "current valid calibration window" is successfully determined for the first time, the formula in... It calls the initial baseline value. In one example, the initial reference vector Therefore, at this time Learning rate The learning rate is dynamically adjusted based on signal quality. The smaller the signal variance (lower noise), the larger the learning rate and the faster the update; conversely, the update is more conservative.

[0106] In a specific embodiment, the expression for the compensation pressure vector at the k-th time step is as follows:

[0107] ;

[0108] in, The reference vector for the current valid calibration window is expressed as: T denotes the transpose of the matrix. This represents the original pressure vector at the k-th time step. This represents the compensation pressure vector at the k-th time step.

[0109] Specifically, in one embodiment of this application, a base learning rate is set: Learning rate adjustment factor Initial value of the reference vector After calculating the drift estimate of each capacitive pressure sensor within the current effective calibration window and constructing a reference vector for that window, real-time compensation is performed on each subsequent frame of data using this reference vector to obtain the compensated pressure vector. Based on this compensated pressure vector... Furthermore, advanced biomechanical features such as center of gravity trajectory (CoP), gait spatiotemporal parameters, and dynamic response slope can be extracted through digital computation.

[0110] (1) The formula for calculating the center of gravity trajectory (CoP) is as follows:

[0111] ;

[0112] ;

[0113] in, Indicates the first The position coordinates of a capacitive pressure sensor. Indicates the first The compensated pressure value of a capacitive pressure sensor at the k-th time step. To avoid division by zero error, a minimum value can be added to the denominator. and set as ;

[0114] (2) The calculation process of the dynamic response slope (used to evaluate impact force) is as follows:

[0115] Within a time window following the detection of a heel strike event, the slope of pressure rise in a specific area is calculated using the following formula. :

[0116] ;

[0117] A steep slope indicates that the pressure rises rapidly from zero to a very high level in a very short time; a shallow slope indicates that the pressure rises slowly. After obtaining the compensation pressure vector, the slope... The calculation formula is:

[0118] ;

[0119] in, This indicates the moment the heel strikes the ground, which is the starting point of the gait cycle. This indicates the preset examination window length. This indicates the compensation pressure value within the specified area. This represents the pressure increment within the time window. `max{...}` represents the maximum value of the compensation pressure during the time interval ΔT after ground contact. It represents the compensatory pressure value at the moment the heel touches the ground.

[0120] (3) Gait phase detection:

[0121] By using the temporal characteristics of pressure data and IMU data to detect gait events, spatiotemporal parameters such as gait cycle and standing phase time are calculated.

[0122] Further reference Figure 2 As an implementation of the methods shown in the above figures, this application provides an embodiment of an adaptive calibration device for a capacitive pressure sensor based on state determination. This device embodiment is similar to... Figure 1 Corresponding to the method embodiments shown, this device can be specifically applied to various electronic devices.

[0123] This application provides an adaptive calibration device for a capacitive pressure sensor based on state determination, comprising:

[0124] Data acquisition module 1 is configured to acquire the raw pressure vector output by the capacitive pressure sensor array installed on the same structure at the k-th time step and the inertial vector output by the inertial measurement unit. The inertial vector includes the acceleration vector and angular velocity vector in the body coordinate system.

[0125] The current valid calibration window determination module 2 is configured to obtain the unit attitude quaternion at the (k-1)th time step, perform attitude calculation based on the inertia vector at the kth time step and the unit attitude quaternion at the (k-1)th time step, and obtain the vertical acceleration component in the world coordinate system at the kth time step; calculate the corresponding state discrimination function value based on the original pressure vector in the sliding window corresponding to the kth time step, the vertical acceleration component in the world coordinate system, and the angular velocity vector in the body coordinate system; calculate the corresponding cross-correlation coefficient based on the original pressure vector in the sliding window corresponding to the kth time step and the vertical acceleration component in the world coordinate system; and determine whether the sliding window corresponding to the kth time step is the current valid calibration window based on the state discrimination function value and the cross-correlation coefficient in the sliding window corresponding to the kth time step.

[0126] The compensation module 3 is configured to, in response to determining that the sliding window corresponding to the k-th time step is the current effective calibration window, determine the drift estimate of each capacitive pressure sensor based on the raw pressure data collected within the current effective calibration window; calculate the learning rate of the current effective calibration window based on the raw pressure vector within the current effective calibration window; update the reference value of each capacitive pressure sensor in the previous effective calibration window based on the learning rate of the current effective calibration window and the drift estimate of each capacitive pressure sensor, thereby obtaining the reference value of each capacitive pressure sensor in the current effective calibration window; construct the reference vector of the current effective calibration window; and use the reference vector of the current effective calibration window to compensate the raw pressure vector at the k-th time step, thereby obtaining the compensated pressure vector at the k-th time step.

[0127] Figure 3 This is a schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present invention. For example... Figure 3 As shown, the electronic device in this embodiment includes a processor 301 and a memory 302; wherein the memory 302 is used to store computer execution instructions; and the processor 301 is used to execute the computer execution instructions stored in the memory to implement the various steps performed by the electronic device in the above embodiment. For details, please refer to the relevant descriptions in the foregoing method embodiments.

[0128] Alternatively, the memory 302 can be either standalone or integrated with the processor 301.

[0129] When the memory 302 is set up independently, the electronic device also includes a bus 303 for connecting the memory 302 and the processor 301.

[0130] This invention also provides a computer storage medium storing computer execution instructions, which, when executed by processor 301, implement the above method.

[0131] This invention also provides a computer program product, including a computer program that, when executed by a processor 301, implements the above-described method.

[0132] In the embodiments provided by this invention, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple modules may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or modules, and may be electrical, mechanical, or other forms.

[0133] The modules described as separate components may or may not be physically separate. The components shown as modules 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 implement the solution of this embodiment according to actual needs.

[0134] Furthermore, the functional modules in the various embodiments of this invention can be integrated into one processing unit, or each module can exist physically separately, or two or more modules can be integrated into one unit. The unit formed by the above modules can be implemented in hardware or in the form of hardware plus software functional units.

[0135] The integrated modules implemented as software functional modules described above can be stored in a computer-readable storage medium. These software functional modules, stored in a storage medium, include several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor 301 to execute some steps of the methods of the various embodiments of this application.

[0136] It should be understood that the processor 301 described above can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor, or the processor 301 can be any conventional processor 301. The steps of the method disclosed in this invention can be directly manifested as the hardware processor 301 executing the steps, or as a combination of hardware and software modules within the processor 301 executing the steps.

[0137] The memory 302 may include high-speed RAM memory, and may also include non-volatile memory (NVM), such as at least one disk storage device, and may also be a USB flash drive, portable hard drive, read-only memory, disk or optical disc, etc.

[0138] Bus 303 can be an Industry Standard Architecture (ISA), a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Bus 303 can be divided into address bus, data bus, control bus, etc. For ease of illustration, the bus 303 in the accompanying drawings of this application is not limited to only one bus 303 or one type of bus 303.

[0139] The aforementioned storage medium can be implemented from any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The storage medium can be any available medium accessible to general-purpose or special-purpose computers.

[0140] An exemplary storage medium is coupled to a processor 301, enabling the processor 301 to read information from and write information to the storage medium. Alternatively, the storage medium can be an integral part of the processor 301. The processor 301 and the storage medium can reside in an application-specific integrated circuit (ASIC). Alternatively, the processor 301 and the storage medium can exist as discrete components in an electronic device or a host device.

[0141] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.

[0142] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. An adaptive calibration method for a capacitive pressure sensor based on state determination, characterized in that, Includes the following steps: The original pressure vector output by the capacitive pressure sensor array and the inertial vector output by the inertial measurement unit are acquired at the k-th time step, which are installed on the same structure. The inertial vector includes the acceleration vector and angular velocity vector in the body coordinate system. Obtain the unit attitude quaternion at time step (k-1). Perform attitude calculation based on the inertia vector at time step (k) and the unit attitude quaternion at time step (k-1) to obtain the vertical acceleration component in the world coordinate system at time step (k). Calculate the corresponding state discrimination function value based on the original pressure vector, the vertical acceleration component in the world coordinate system, and the angular velocity vector in the body coordinate system within the sliding window corresponding to time step (k). Calculate the corresponding cross-correlation coefficient based on the original pressure vector and the vertical acceleration component in the world coordinate system within the sliding window corresponding to time step (k). Determine whether the sliding window corresponding to time step (k) is the current valid calibration window based on the state discrimination function value and the cross-correlation coefficient within the sliding window corresponding to time step (k). In response to determining the sliding window corresponding to the k-th time step as the current effective calibration window, the drift estimate of each capacitive pressure sensor is determined based on the raw pressure data collected within the current effective calibration window. The learning rate of the current effective calibration window is calculated based on the raw pressure vector within the current effective calibration window. The reference value of each capacitive pressure sensor in the previous effective calibration window is updated based on the learning rate of the current effective calibration window and the drift estimate of each capacitive pressure sensor to obtain the reference value of each capacitive pressure sensor in the current effective calibration window. The reference vector of the current effective calibration window is then constructed. The original pressure vector at the k-th time step is compensated using the reference vector of the current effective calibration window to obtain the compensated pressure vector at the k-th time step.

2. The adaptive calibration method for a capacitive pressure sensor based on state determination according to claim 1, characterized in that, The formula for calculating the state discrimination function value is as follows: ; in, Let represent the angular velocity vector at the k-th time step in the body coordinate system. This represents the state discrimination function value at the k-th time step. It is the acceleration due to gravity. This represents a function for calculating variance. , , These are the first weighting coefficient, the second weighting coefficient, and the third weighting coefficient, respectively. Represents the L2 norm. This represents the original pressure vector of the sliding window corresponding to the k-th time step, constructed from the original pressure data collected from the kL-th time step to the k-th time step, where L represents the length of the sliding window; This represents the vertical acceleration component at the k-th time step in the world coordinate system. The expression for the cross-correlation coefficient is as follows: ; in, This represents the cross-correlation coefficient between the original pressure vector and the vertical acceleration component within the sliding window corresponding to the k-th time step. The sum of the raw pressure data collected by all capacitive pressure sensors in the capacitive pressure sensor array at the j-th time step is expressed as: , This represents the raw pressure data collected by the i-th capacitive pressure sensor at the j-th time step; This represents the vertical acceleration component in the world coordinate system at the j-th time step; and These represent the average value of the sum of the original pressure data within the sliding window corresponding to the k-th time step, and the average value of the vertical acceleration component in the world coordinate system, respectively.

3. The adaptive calibration method for a capacitive pressure sensor based on state determination according to claim 1, characterized in that, The determination of whether the sliding window corresponding to the k-th time step is a valid calibration window is based on the state discrimination function value and cross-correlation coefficient within the sliding window corresponding to the k-th time step. Specifically, this includes: In response to the determination that the state discrimination function value within the sliding window corresponding to the k-th time step is less than the state threshold, and the cross-correlation coefficient within the sliding window corresponding to the k-th time step is less than the cross-correlation threshold, the sliding window corresponding to the k-th time step is determined to be the current valid calibration window. In response to determining that the state discrimination function value within the sliding window corresponding to the k-th time step is greater than or equal to the state threshold, and the cross-correlation coefficient within the sliding window corresponding to the k-th time step is greater than or equal to the cross-correlation threshold, it is determined that the sliding window corresponding to the k-th time step is not the currently valid calibration window.

4. The adaptive calibration method for a capacitive pressure sensor based on state determination according to claim 1, characterized in that, Attitude calculation is performed based on the inertia vector at the k-th time step and the unit attitude quaternion at the (k-1)-th time step, yielding the vertical acceleration components in the world coordinate system at the k-th time step, specifically including: The unit attitude quaternion at time step (k-1) is discretely integrated with the angular velocity vector at time step (k) in the body coordinate system to obtain the unit attitude quaternion at time step (k), as shown in the following equation: ; in, Indicates the sampling period. This represents the unit pose quaternion at the (k-1)th time step. This represents the unit pose quaternion at the k-th time step. Let represent the angular velocity vector at the k-th time step in the body coordinate system. These represent the angular velocities along the x-axis, y-axis, and z-axis in the body coordinate system, respectively. This represents the quaternion multiplication operator; The matrix expansion of the unit attitude quaternion at the k-th time step is as follows: ; in, Each of the four elements in the unit attitude quaternion represents a single element. Based on the equivalent mathematical relationship between unit attitude quaternions and rotation matrices, the rotation matrix from the body coordinate system to the world coordinate system is... It can be represented by the element-wise expansion of the unit attitude quaternion as follows: ; The acceleration vector at the k-th time step in the body coordinate system is mapped using the rotation matrix to obtain the acceleration vector at the k-th time step in the world coordinate system, as shown in the following equation: ; in, Let represent the angular velocity vector at the k-th time step in the body coordinate system. These represent the accelerations along the x-axis, y-axis, and z-axis in the body coordinate system, respectively. This represents the angular velocity vector at the k-th time step in the world coordinate system. Extracting the rotation matrix The third row elements are combined to form a vector, and then multiplied by the acceleration vector at the k-th time step in the body coordinate system to obtain the vertical acceleration component at the k-th time step in the world coordinate system, as shown in the following formula: ; in, This represents the vertical acceleration component at the k-th time step in the world coordinate system.

5. The adaptive calibration method for a capacitive pressure sensor based on state determination according to claim 2, characterized in that, The drift estimate for each capacitive pressure sensor is a statistical value of the raw pressure data of each capacitive pressure sensor collected within the current effective calibration window, the statistical value including the median; The formula for calculating the reference value of each capacitive pressure sensor in the current effective calibration window is as follows: ; in, This represents the reference value of the i-th capacitive pressure sensor at the (k-1)-th time step. This represents the reference value of the i-th capacitive pressure sensor at the k-th time step. This represents the drift estimate of the i-th capacitive pressure sensor. The learning rate of the current effective calibration window is expressed as: ; Indicates the basic learning rate. This represents the penalty coefficient.

6. The adaptive calibration method for a capacitive pressure sensor based on state determination according to claim 5, characterized in that, The expression for the compensation pressure vector at the k-th time step is as follows: ; in, The reference vector for the current valid calibration window is expressed as: T denotes the transpose of the matrix. This represents the original pressure vector at the k-th time step. This represents the compensation pressure vector at the k-th time step.

7. An adaptive calibration device for a capacitive pressure sensor based on state determination, characterized in that, include: The data acquisition module is configured to acquire the raw pressure vector output by the capacitive pressure sensor array installed on the same structure at the k-th time step and the inertial vector output by the inertial measurement unit. The inertial vector includes the acceleration vector and angular velocity vector in the body coordinate system. The current valid calibration window determination module is configured to obtain the unit attitude quaternion at time step (k-1), perform attitude calculation based on the inertia vector at time step (k) and the unit attitude quaternion at time step (k-1), and obtain the vertical acceleration component in the world coordinate system at time step (k). Based on the original pressure vector, the vertical acceleration component in the world coordinate system, and the angular velocity vector in the body coordinate system within the sliding window corresponding to time step (k), the corresponding state discrimination function value is calculated. Based on the original pressure vector and the vertical acceleration component in the world coordinate system within the sliding window corresponding to time step (k), the corresponding cross-correlation coefficient is calculated. Based on the state discrimination function value and the cross-correlation coefficient within the sliding window corresponding to time step (k), it is determined whether the sliding window corresponding to time step (k) is the current valid calibration window. The compensation module is configured to, in response to determining that the sliding window corresponding to the k-th time step is the current effective calibration window, determine the drift estimate of each capacitive pressure sensor based on the raw pressure data collected within the current effective calibration window; calculate the learning rate of the current effective calibration window based on the raw pressure vector within the current effective calibration window; update the reference value of each capacitive pressure sensor in the previous effective calibration window based on the learning rate of the current effective calibration window and the drift estimate of each capacitive pressure sensor, thereby obtaining the reference value of each capacitive pressure sensor in the current effective calibration window; construct the reference vector of the current effective calibration window; and use the reference vector of the current effective calibration window to compensate the raw pressure vector at the k-th time step, thereby obtaining the compensated pressure vector at the k-th time step.

8. An electronic device, comprising: One or more processors; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the method as described in any one of claims 1-6.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the method as described in any one of claims 1-6.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1-6.