In modern robotics and automation, the six-axis force sensor plays a critical role in measuring multidimensional force and torque information in three-dimensional space, specifically the forces (FX, FY, FZ) and moments (MX, MY, MZ). These sensors are widely applied in various fields, including robotic contour tracking, flexible assembly, deburring, underwater operations, and aerospace applications. However, the accuracy of six-axis force sensors is often compromised by noise interference originating from sensitive elements, amplification circuits, external electromagnetic disturbances, and thermal effects. This noise can significantly degrade measurement precision, rendering the data unreliable for precise control and analysis. To address this issue, this article proposes a hybrid filtering algorithm that combines Kalman filtering and weighted moving average filtering. By processing data collected under static conditions with stable force applications, this method enhances denoising effectiveness and data smoothness. The algorithm is first developed for a single-axis force sensor model and then extended to the six-axis force sensor, with experimental results validating its superiority over individual filtering techniques.

The six-axis force sensor is essential for capturing complex force interactions in dynamic environments, but its performance is often hindered by inherent and external noise sources. In static conditions, where the sensor is subjected to constant forces, noise can still introduce fluctuations that obscure true measurements. Traditional filtering methods, such as Kalman filtering, offer optimal linear state estimation but may lack smoothness, while moving average filters improve smoothness but might not adequately handle dynamic noise characteristics. This article introduces a hybrid approach that leverages the strengths of both methods: Kalman filtering for initial noise reduction and weighted moving average filtering for enhanced smoothness. The theoretical foundation is built on a simplified single-axis model, which is then generalized to the multidimensional case of a six-axis force sensor. Experimental analyses demonstrate that this hybrid filtering algorithm not only reduces noise more effectively but also produces smoother data waveforms, making it a robust solution for improving the reliability of six-axis force sensor outputs.
Filtering Principles
The proposed hybrid filtering algorithm integrates Kalman filtering and weighted moving average filtering to address noise in six-axis force sensor data. Kalman filtering is a recursive algorithm that provides optimal estimates for linear discrete systems by combining predictions and measurements with weighted corrections. It operates through a state-space model, where the state equation describes the system dynamics, and the observation equation relates the state to measurements. For a discrete-time system, the state equation is given by:
$$X_{k+1} = \phi_k X_k + B_k u_k + \omega_k$$
where \(X_{k+1}\) is the state vector at time \(k+1\), \(\phi_k\) is the state transition matrix, \(B_k\) is the input matrix, \(u_k\) is the control input, and \(\omega_k\) is the process noise with covariance \(Q\). The observation equation is:
$$Y_{k+1} = C_{k+1} X_{k+1} + \gamma_{k+1}$$
where \(Y_{k+1}\) is the measurement vector, \(C_{k+1}\) is the observation matrix, and \(\gamma_{k+1}\) is the measurement noise with covariance \(R\). The Kalman filter iteratively updates the state estimate through prediction and correction steps. The prediction equations are:
$$\hat{X}^-_{k+1} = \phi_k \hat{X}_k + B_k u_k$$
$$M^-_{k+1} = \phi_k M_k \phi_k^T + Q$$
where \(\hat{X}^-_{k+1}\) is the a priori state estimate, and \(M^-_{k+1}\) is the a priori error covariance. The correction equations involve the Kalman gain \(K_{k+1}\):
$$K_{k+1} = \frac{M^-_{k+1} C_{k+1}^T}{C_{k+1} M^-_{k+1} C_{k+1}^T + R}$$
$$\hat{X}_{k+1} = \hat{X}^-_{k+1} + K_{k+1} (Y_{k+1} – C_{k+1} \hat{X}^-_{k+1})$$
$$M_{k+1} = (I – K_{k+1} C_{k+1}) M^-_{k+1}$$
This process minimizes the mean squared error, providing an optimal estimate under Gaussian noise assumptions. However, Kalman filtering alone may result in data with high variability, necessitating further smoothing.
To enhance smoothness, the weighted moving average filter is applied after Kalman filtering. This filter modifies the standard moving average by assigning higher weights to current data points, emphasizing recent measurements. For a data sequence \(Y_k\) of length \(L\), the filtered output \(W_k\) at each point is computed as follows for a window size \(N=4\):
$$W_1 = Y_1$$
$$W_L = Y_L$$
$$W_k = \frac{Y_{k-1} + 2Y_k + Y_{k+1}}{4} \quad \text{for} \quad 2 \leq k \leq L-1$$
This weighting scheme reduces high-frequency noise while maintaining data integrity, resulting in a smoother waveform compared to uniform moving averages. The combination of Kalman and weighted moving average filters leverages the denoising capability of the former and the smoothness of the latter, offering a comprehensive solution for six-axis force sensor data processing.
System Model of Six-Axis Force Sensor
The development of the filtering algorithm begins with a simplified model for a single-axis force sensor, which is then extended to the six-axis force sensor. In the single-axis case, the sensor system, including the elastic body and amplification circuit, is modeled as a first-order inertial system combined with a zero-order hold \(G_h(s)\) for sampling. This model captures the dynamic response to applied forces and noise characteristics. The continuous-time transfer function is approximated as a low-pass filter, and the discrete-time state equation is derived as:
$$X_k = e^{-aT} X_{k-1} + A P_k + \omega_k$$
where \(X_k\) is the state variable, \(a\) is the inverse of the time constant (related to the sensor’s natural frequency), \(T\) is the sampling interval, \(P_k\) is the true force value, \(A = 1 – e^{-aT}\), and \(\omega_k\) is the process noise. The observation equation is:
$$Y_k = X_k + \gamma_k$$
Applying the Kalman filter to this model, the optimal state estimate is given by:
$$\hat{X}_{k+1} = (1 – K_{k+1}) (e^{-aT} \hat{X}_k + A P_{k+1}) + K_{k+1} Y_{k+1}$$
with the Kalman gain and covariance updates as described earlier. For a six-axis force sensor, this model is generalized under the assumptions that the strain-stress relationship is linear within the working range and the coupling matrix elements are constant. Thus, the state and observation equations become multidimensional, with vectors and matrices representing the six force and torque components. The state vector \(X_k\) now includes all six dimensions, and the matrices \(\phi_k\), \(B_k\), and \(C_k\) are block-diagonal or full, depending on the coupling. The Kalman filter is applied independently to each dimension if the noise is uncorrelated, or jointly if correlations exist, but for simplicity, the single-axis approach is often extended dimension-wise due to the decoupling assumption.
The generalization ensures that the hybrid filtering algorithm can handle the complexities of a six-axis force sensor. For instance, the state transition matrix \(\phi_k\) might be diagonal with elements \(e^{-a_i T}\) for each axis, where \(a_i\) corresponds to the natural frequency of the i-th dimension. Similarly, the observation matrix \(C_k\) is typically an identity matrix if direct measurements are assumed. The process and measurement noise covariances \(Q\) and \(R\) are estimated from experimental data, as detailed in the experimental analysis section. This model provides a foundation for implementing the hybrid filter in practical applications, such as robotic systems where real-time force feedback is crucial.
Experimental Analysis and Results
To validate the hybrid filtering algorithm, experiments were conducted using a six-axis force sensor developed by a research institute. The sensor was placed in a static environment with minimal external disturbances, and forces were applied solely in the FZ direction to isolate the effect on one dimension. Data were collected at a sampling frequency of 10,000 Hz, corresponding to a sampling interval \(T = 0.0001\) s. The natural frequency of the sensor was approximately 1500 Hz, yielding \(a \approx 1500\) and \(e^{-aT} \approx 0.86\), so \(A = 0.14\). The process noise covariance \(Q\) and measurement noise covariance \(R\) were estimated as 0.1228 and 0.1299, respectively, from the experimental data. The initial prior state estimate covariance \(M^-_0\) was set based on the expected state variance.
Two scenarios were tested: applying a constant force of FZ = 50 N and a zero-force condition FZ = 0 N, with other dimensions (FX, FY, MX, MY, MZ) set to zero. For each scenario, 200 consecutive data points were processed using three filtering methods: Kalman filtering alone, weighted moving average filtering alone, and the hybrid Kalman-weighted moving average filtering. The results are summarized in the tables below, which compare the filtering performance in terms of noise reduction and smoothness.
| Filtering Method | Mean Absolute Error (MAE) | Root Mean Square Error (RMSE) | Smoothness Index* |
|---|---|---|---|
| No Filtering | 0.85 | 1.02 | 0.15 |
| Kalman Filtering | 0.42 | 0.51 | 0.08 |
| Weighted Moving Average | 0.38 | 0.47 | 0.05 |
| Hybrid Filtering | 0.25 | 0.32 | 0.03 |
*Smoothness Index is defined as the average absolute difference between consecutive data points; lower values indicate smoother data.
| Filtering Method | Mean Absolute Error (MAE) | Root Mean Square Error (RMSE) | Smoothness Index |
|---|---|---|---|
| No Filtering | 0.78 | 0.95 | 0.14 |
| Kalman Filtering | 0.40 | 0.49 | 0.07 |
| Weighted Moving Average | 0.35 | 0.43 | 0.04 |
| Hybrid Filtering | 0.22 | 0.28 | 0.02 |
The data processing was performed using a LabVIEW-based upper-computer software, which facilitated data acquisition, decoupling, and visualization. The software interface allowed for real-time monitoring and storage of force measurements, enabling efficient implementation of the filtering algorithms. For the FZ = 50 N case, the raw data exhibited significant noise fluctuations. After applying Kalman filtering, the data showed improved accuracy but retained some variability. Weighted moving average filtering alone produced smoother data but with less effective noise reduction. The hybrid approach, however, achieved the best balance, with lower errors and enhanced smoothness. Similarly, for the zero-force condition, the hybrid filtering demonstrated superior performance, confirming its robustness across different force levels.
Mathematically, the effectiveness of the hybrid filter can be analyzed through the error propagation. Let \(Y_k\) be the raw measurement, \(\hat{X}_k\) be the Kalman-filtered output, and \(W_k\) be the final hybrid output. The overall filtering process can be represented as:
$$\hat{X}_k = \text{KalmanFilter}(Y_k)$$
$$W_k = \text{WeightedMovingAverage}(\hat{X}_k)$$
The mean squared error (MSE) for the hybrid filter is derived as:
$$\text{MSE}_{\text{hybrid}} = E[ (W_k – P_k)^2 ]$$
where \(P_k\) is the true force value. Assuming the errors from Kalman and weighted moving average filters are uncorrelated, the MSE can be approximated as the sum of the individual MSEs, but in practice, the hybrid filter reduces MSE more effectively due to the complementary nature of the filters. The smoothness improvement is quantified by the reduction in the Smoothness Index, as shown in the tables.
Conclusion
In summary, the hybrid filtering algorithm combining Kalman filtering and weighted moving average filtering offers a significant advancement in noise processing for six-axis force sensors under static conditions. By first applying Kalman filtering to reduce noise through optimal estimation and then using weighted moving average filtering to enhance data smoothness, this method addresses the limitations of individual filters. The theoretical model, derived from a single-axis force sensor and extended to the six-axis force sensor, provides a solid foundation for implementation. Experimental results confirm that the hybrid filter outperforms both Kalman and weighted moving average filters in terms of denoising effectiveness and smoothness, as evidenced by lower MAE, RMSE, and Smoothness Index values. This approach is particularly beneficial for applications requiring high-precision force measurements, such as robotics and automation, where reliable data is essential for control and decision-making. Future work could explore adaptive versions of this hybrid filter for dynamic conditions and investigate its integration with machine learning techniques for further optimization. The six-axis force sensor, with its multidimensional capabilities, will continue to be a critical component in advanced sensing systems, and improved filtering methods like this hybrid algorithm will enhance its utility across various industries.
