1. Introduction
The advancement of industrial automation has established robots as vital components across critical domains, including industrial manufacturing [Reference Dhanda, Rogers, Hall, Dekoninck and Dhokia1], service applications [Reference Wang, Fan, Sheng, Zhang and Liu2, Reference Dai, Zoppi and Kong3], and healthcare [Reference Wah4]. During task execution, robots inevitably interact with humans and their unstructured environments. This interaction is particularly consequential in industrial settings, where robots are frequently deployed for handling heavy components due to their substantial load-bearing capacity. Consequently, unexpected collisions or a loss of control can lead to severe safety incidents or equipment damage [Reference Lee, Shin and Lim5]. Therefore, achieving highly sensitive and reliable collision detection is paramount for enhancing safety in human–robot collaboration and remains a significant research direction in robot control.
Current research on robotic collision safety primarily falls into two categories. The first involves active control methods based on interactive compliance adjustment, such as Variable Impedance Control (VIC) [Reference Spyrakos-Papastavridis, Childs and Dai6]. This technique improves environmental adaptability by dynamically adjusting the robot’s stiffness and damping in real time during compliant interactions. For instance, Dai et al. [Reference Spyrakos-Papastavridis and Dai7] proposed a minimal-model VIC scheme employing a passivity preservation mechanism to ensure stable performance in flexible-joint robots. However, the response of active compliant control to sudden collisions relies on environmental modeling, which may exhibit lag under complex conditions and cannot substitute for a dedicated, rapid collision detection mechanism. The second category encompasses collision detection methods based on internal robot body information, which identify collisions by detecting abrupt changes in signals such as joint torque, velocity, current, or energy [Reference Haddadin, De Luca and Albu-Schäffer8]. These methods can be further divided into those relying on external sensors (e.g., vision [Reference Flacco, Kroeger, De Luca and Khatib9], force/torque [Reference Li, Han, Wu and Xiong10], or tactile sensors [Reference Zhou, Zhao, Lu, Wang and He11]) and those operating without external sensors [Reference Gordi and Jovanovi12–Reference Lou, Wei and Song16]. While external sensors directly monitor the interaction state, finding suitable mounting locations within compact joint spaces or under demanding operational conditions is challenging, often limiting their effectiveness to specific scenarios [Reference Bao, Wang, Zheng, Housden, Hajnal and Rhode17]. In contrast, sensorless collision detection methods require no modification to the robot’s mechanical structure, offering a low-cost and highly reliable solution for safe human–robot collaboration [Reference Han, Xu, Li and Kang18].
Among sensorless approaches, one direct method is to monitor abrupt changes in joint motor current [Reference Je, Baek and Lee19]. This method, however, is susceptible to interference from factors like joint reversal, leading to a high false alarm rate. Another mainstream approach is the Generalized Momentum Observer (GMO), which estimates external torques by calculating the residual between actual and estimated generalized momentum [Reference De Luca and Mattone20]. Although the GMO has a simple structure and is easy to deploy, its performance heavily depends on the accuracy of the dynamic model. Specifically, during low-speed reversals, friction nonlinearities can cause residual spikes, leading to significant observer output even without a collision and thus compromising accuracy. A fixed high gain may amplify measurement noise, while a fixed low gain can exacerbate phase lag, hindering real-time force detection. To mitigate these trade-offs, Wahrburg et al. [Reference Wahrburg, Morara, Cesari and Matthias21] proposed an interacting Kalman filter that integrates momentum to estimate both momentum and external collision torques, though with increased computational complexity and continued reliance on model accuracy. Zhou et al. [Reference Zhou, Li, Feng, Li and Zhu22] proposed a finite-time nonlinear extended state momentum observer (FTNESMO) that achieves finite-time convergence of observation errors. While bandpass filters and time-varying thresholds were incorporated to address noise and model uncertainty, torque spikes during low-speed reversals may persist. This body of research indicates that GMOs, owing to their versatility and relatively low cost, are a focal point in academia. Nevertheless, their performance is still constrained by dependencies on accurate dynamic modeling, sensitivity to friction, and computational demands.
Learning-based estimation, model-error compensation, and adaptive thresholds have been widely investigated to improve sensorless robot collision detection [Reference Zhang, Li, Shi, Wang, Zhang, Zhang and Wu23–Reference Huang, Gao, Liu, Chen and Zhang28]. Zhang et al. [Reference Zhang, Li, Shi, Wang, Zhang, Zhang and Wu23] developed a BPNN-based external joint-torque estimator, while Park et al. [Reference Park, Kim, Park and Park24] proposed learning-based collision detection methods using support vector machines and convolutional neural networks; both approaches rely on offline training data. Birjandi et al. [Reference Birjandi and Haddadin25] attributed modeling errors mainly to inertia parameter deviations and used a Luenberger-style observer for compensation, but this approach neglects the nonlinear variation of friction coefficients, reducing robustness at low speeds. Li et al. [Reference Li, Li, Zhu, Xu and Mu26] proposed a Nonlinear Extended State Momentum Observer (NESMO) using fractional power functions and variable damping to suppress initial peaks, combined with an offline-adapted time-varying threshold. A limitation of this approach is the simplification of Coriolis/centrifugal terms into lumped disturbances, which under high-speed or highly nonlinear friction conditions can increase detection delays and false-alarm rates. Pangestu et al. [Reference Pangestu, Yu and Lin27] combined momentum-observer-based contact-force estimation with a time-varying threshold for force-feedback motion planning of a climbing robot. Huang et al. [Reference Huang, Gao, Liu, Chen and Zhang28] dynamically suppressed friction uncertainties via a velocity-partitioned constraint compensation strategy, which, however, requires collision-free data for calibration and may have limited adaptability under substantially different friction conditions. In summary, existing collision detection methods exhibit three primary limitations: (1) GMOs struggle to balance noise suppression with fast response; (2) modeling errors in low-speed joint friction lead to false positives and negatives; and (3) collision thresholds cannot dynamically adapt to evolving operational conditions and friction characteristics.
To address these issues, this paper systematically enhances robotic collision detection accuracy by designing the proposed SNGMO integrated with a dynamic threshold mechanism. First, to improve fundamental model accuracy, key enhancements are made to the traditional Stribeck model by introducing a wear state variable and an operational load factor. This dynamic friction model is designed to represent variations in joint friction parameters associated with operating load and equivalent wear state, thereby reducing friction-related modeling errors. Building upon this friction model, the SNGMO employs a joint-velocity-dependent gain-scheduling mechanism. At higher speeds, the observer natural frequency and gain increase to improve bandwidth and disturbance tracking. At low speeds and during direction reversals, the gain and bandwidth decrease while damping increases, suppressing friction- and noise-induced residual fluctuations. This mechanism balances rapid disturbance tracking with low-speed residual suppression. Finally, a time-varying nonlinear threshold model incorporating multi-source error compensation is constructed. This model accounts for both unmodeled dynamic errors reflected in observer residuals and residual errors from the identified friction model. The threshold is adjusted online according to the motion state to improve collision sensitivity while limiting residual-induced false alarms.
The main contributions of this article are:
-
1. The development of a dynamic Stribeck friction model incorporating load-dependent and equivalent-wear-related parameter variations. The model represents friction-parameter variations under different operating conditions.
-
2. The development of the proposed SNGMO. This observer dynamically adapts its parameters to the operational speed, maintaining high bandwidth for fast response to collisions at high speeds while automatically reducing bandwidth and optimizing damping at low speeds to effectively suppress noise and commutation spikes.
-
3. The establishment of a time-varying threshold model that accounts for multi-source errors. Unmodeled errors within the observation residuals are decomposed into dynamic modeling errors and residual friction errors. Through online estimation of their bounds and motion-dependent threshold adjustment, the method is designed to improve collision sensitivity while limiting false alarms.
The remainder of this article is organized as follows. Following the Introduction and literature review in Section 1, Section 2 presents the design of a GMO based on robot dynamics. Section 3 develops a dynamic joint friction model that accounts for transmission wear and operational conditions. Section 4 introduces the SNGMO, detailing its adaptive mechanism and second-order filter structure. Section 5 constructs a time-varying threshold model to handle residual model errors and enhance detection robustness. Section 6 evaluates the noise-suppression and disturbance-tracking performance of the SNGMO through MATLAB/Simulink simulations. Section 7 provides experimental validation on a UR5e robotic platform, including collision-detection tests with measured detection delays. Finally, conclusions are drawn and future research directions are outlined.
2. Generalized momentum observer design based on robot dynamics
When a robot interacts with its environment, external forces are exerted on its structure. For an n-joint serial manipulator, the dynamics in joint space can be derived using the Lagrangian formulation [Reference Li, Li, Zhu, Xu and Mu26]:
where
$\boldsymbol{q} , \dot{\boldsymbol{q}}$
, and
$\ddot{\boldsymbol{q}}\in \mathbb{R}^{{n} {\times} 1}$
denote the joint position, velocity, and acceleration vectors, respectively;
$\boldsymbol{M}(\boldsymbol{q})\in {\mathbb{R}}^{n \times n}$
is the symmetric positive-definite inertia matrix;
$\boldsymbol{C}(\boldsymbol{q}\mathbf{,}\,\dot{\boldsymbol{q}})\in {\mathbb{R}}^{{n} {\times} {n}}$
represents Coriolis and centrifugal forces;
$\boldsymbol{G}(\boldsymbol{q})\in {\mathbb{R}}^{{n} {\times} 1}$
is the gravitational torque;
$\boldsymbol{\tau }_{\mathrm{f}}\in {\mathbb{R}}^{{n} {\times} 1}$
accounts for joint friction; and
$\boldsymbol{\tau }_{\mathrm{m}}\in {\mathbb{R}}^{{n} {\times} 1}$
is the motor driving torque. This torque is related to the motor current i
m by
$\boldsymbol{\tau }_{\mathrm{m}}=n_{\mathrm{tran}}T_{\mathrm{c}}i_{\mathrm{m}}$
, with n
tran being the gear reduction ratio and T
c the current-to-torque coefficient. The term
$\boldsymbol{\tau }_{\mathrm{ext}}\in {\mathbb{R}}^{{n} {\times} 1}$
denotes the external joint torque due to contact, which is related to the Cartesian contact wrench
$\boldsymbol{f}_{\mathrm{ext}}\in {\mathbb{R}}^{{n} {\times} 1}$
through the transpose of the Jacobian matrix [Reference Spyrakos-Papastavridis and Dai7]:
Collision detection requires the real-time estimation of τ ext. From (2.1), an algebraic estimate can be obtained as:
In the expression above,
$\hat{\boldsymbol{M}}(\boldsymbol{q}) , \hat{\boldsymbol{C}}(\boldsymbol{q}\mathrm{,}\,\dot{\boldsymbol{q}}) , \hat{\boldsymbol{G}}(\boldsymbol{q}) , \hat{\boldsymbol{\tau }}_{\mathrm{f}}$
and
$\hat{\boldsymbol{\tau }}_{\mathrm{m}}$
denote the estimated values of the corresponding dynamic parameters in Eq. (1). Once these model parameters are obtained—whether through prior identification, computational modeling, or processed real-time sensor data—the equivalent joint torque due to a collision force can be computed in real time using Eq. (3). In practice, while the joint position
q
can typically be measured with high precision, the joint velocity
$\dot{\boldsymbol{q}}$
and acceleration
$\ddot{\boldsymbol{q}}$
must be derived through numerical differentiation of the position signal. This process, especially for obtaining
$\ddot{\boldsymbol{q}}$
, is highly susceptible to quantization noise and amplifies sensor errors, leading to significant inaccuracies in the direct calculation of
$\hat{\boldsymbol{\tau }}_{\mathrm{ext}}$
. To circumvent the need for estimating acceleration altogether, the generalized momentum
$\boldsymbol{P}\in {\mathbb{R}}^{{n} {\times} 1}$
of the robot is introduced. It is defined as:
Utilizing the antisymmetric property of the matrix
$\dot{\boldsymbol{M}}(\boldsymbol{q})-2\boldsymbol{C}(\boldsymbol{q}\mathrm{,}\,\dot{\boldsymbol{q}})$
inherent in robot dynamics, the following relationship can be derived:
Substituting the dynamic Eq. (1) into the expression for
$\dot{\boldsymbol{P}}$
from (5) and applying the property in (6) simplifies the time derivative of the generalized momentum:
For conciseness, we define the composite term
From (7) and (8), the estimated derivative of the generalized momentum can be expressed as
where
$\boldsymbol{r}_{\mathrm{GMO}}\in {\mathbb{R}}^{{n} {\times} 1}$
is defined as the output of the GMO, governed by the following equations [Reference Spyrakos-Papastavridis and Dai7]:
Here,
$\boldsymbol{K}_{\mathrm{O}}\in {\mathbb{R}}^{{n} {\times} {n}}$
is a diagonal gain matrix for the observer, and
$\hat{\boldsymbol{\beta }}=\hat{\boldsymbol{G}}(\boldsymbol{q})-\hat{\boldsymbol{C}}^{T}(\boldsymbol{q}\mathrm{,}\,\dot{\boldsymbol{q}})\dot{\boldsymbol{q}}$
. Under ideal conditions where the model is exact (
$\hat{\boldsymbol{M}}=\boldsymbol{M} , \hat{\boldsymbol{\beta }}=\boldsymbol{\beta }$
), the dynamic relationship
$\dot{\boldsymbol{r}}_{\mathrm{GMO}}=\boldsymbol{K}_{\mathrm{O}}(\boldsymbol{\tau }_{\mathrm{ext}}-\boldsymbol{r}_{\mathrm{GMO}})$
between the observer output
$\boldsymbol{r}_{\mathrm{GMO}}$
and the external joint torque
τ
ext is established. As
$\boldsymbol{K}_{\mathrm{O}}\rightarrow \infty , \boldsymbol{r}_{\mathrm{GMO}}\rightarrow \boldsymbol{\tau }_{\mathrm{ext}}$
, allowing the output to rapidly track the actual external torque. In practice, however, a lower gain
K
O is typically selected to mitigate noise from joint angle, velocity, and current measurements. This reduction in gain inevitably introduces a detection delay [Reference Haddadin, De Luca and Albu-Schäffer8], which can compromise the performance of collision detection.
In the absence of a collision (
τ
ext = 0), appropriate tuning of
K
O can drive
$\boldsymbol{r}_{\mathrm{GMO}}$
approximately to zero. For collision detection using this observer, a suitable threshold is selected; a collision is declared when
$\boldsymbol{r}_{\mathrm{GMO}}$
exceeds the threshold. The estimated external joint torque is then compared against a customized upper bound
$\boldsymbol{U}\in {\mathbb{R}}^{{n} {\times} 1}$
and lower bound
$\boldsymbol{L}\in {\mathbb{R}}^{{n} {\times} 1}$
, and the collision decision function is formally defined as:
\begin{align} \boldsymbol{cd}\left(\boldsymbol{r}_{\mathrm{GMO}}(t)\right) = \begin{cases} 1 & \text{if } \boldsymbol{r}_{\mathrm{GMO}}(t) \gt \boldsymbol{U} \text{ or } \boldsymbol{r}_{\mathrm{GMO}}(t) \lt \boldsymbol{L} \\[3pt] 0 &\qquad \quad \text{if } \boldsymbol{L} \lt \boldsymbol{r}_{\mathrm{GMO}}(t) \lt \boldsymbol{U} \end{cases} \end{align}
where a binary output of 1 indicates a collision event.
3. Joint friction analysis accounting for transmission wear and operational conditions
The accuracy of model-based robotic collision detection hinges critically on the fidelity of the underlying dynamic model. Unmodeled joint friction stands out as a primary contributor to model inaccuracy. Friction in robotic joints is not only speed-dependent but is also significantly influenced by coupled effects arising from operational load variations and progressive wear within the transmission system over prolonged service. Consequently, traditional static friction models often fail to capture the true, time-varying friction characteristics exhibited by robots operating under complex real-world conditions. To address this limitation, this section introduces a dynamic friction modeling framework for general n-joint collaborative robots that explicitly integrates the effects of transmission wear and operational conditions. This focus is particularly relevant for collaborative robots, whose joint modules frequently employ integrated, compact designs incorporating components such as harmonic drives, whose friction properties evolve during their operational lifecycle.
Friction constitutes a complex nonlinear phenomenon occurring between contacting surfaces in relative motion. Established models include the Coulomb-plus-viscous model, the Stribeck model [Reference Xiang, Yan and Wu29], and the LuGre model [Reference Liu, Tsai and Cheng30]. While the LuGre model provides a comprehensive, continuous representation, its structural complexity, high parameter count, and challenging identification process [Reference Kermani, Patel and Moallem31] can hinder practical application. The Stribeck model, a classic static representation, extends the Coulomb-plus-viscous formulation with an exponential term to capture low-velocity Stribeck effects, offering a simpler structure and broader applicability [Reference Tadese, Yumbla, Yi, Lee, Park and Moon32]. However, its parameters are typically constant and thus incapable of reflecting the time-varying evolution of friction throughout a robot’s service life. Li et al. [Reference Li, Wei, Liu, He, Liu, Zhang and Li33] developed a comprehensive friction model for collaborative robots considering joint velocity, temperature, and load torque, but long-term wear-induced friction evolution was not explicitly addressed.
To represent the coupled influence of load variation and transmission wear on joint friction, this work extends the classical Stribeck model into a multidimensional dynamic framework. The proposed model incorporates load-dependent terms and time-varying wear parameters to represent friction variations associated with operating load and equivalent wear state.
\begin{align} \boldsymbol{\tau }_{\mathrm{f}}=\begin{cases} \left(\boldsymbol{\tau }_{\mathrm{c}}+\left(\boldsymbol{\tau }_{\mathrm{s}}-\boldsymbol{\tau }_{\mathrm{c}}\right)\boldsymbol{e}^{-{\left| \frac{\dot{\boldsymbol{q}}}{\dot{\boldsymbol{q}}_{\mathrm{s}}}\right| ^{\delta }}}\right)sgn\left(\dot{\boldsymbol{q}}\right)+\sigma \dot{\boldsymbol{q}}, \quad \dot{\boldsymbol{q}}\neq \mathrm{0}\\[3pt] \boldsymbol{\tau }_{\mathrm{n}}, \qquad \qquad \quad \quad \quad \quad \ \dot{\boldsymbol{q}}=\mathrm{0 and}\left| \boldsymbol{\tau }_{\mathrm{n}}\right| \leq \boldsymbol{\tau }_{\mathrm{s}}\\[3pt] \boldsymbol{\tau }_{\mathrm{s}}\mathrm{sgn}\left(\boldsymbol{\tau }_{\mathrm{n}}\right), \ \quad \quad \quad \quad \quad \dot{\boldsymbol{q}}=\mathrm{0 and}\left| \boldsymbol{\tau }_{\mathrm{n}}\right| \gt \boldsymbol{\tau }_{\mathrm{s}} \end{cases} \end{align}
where
τ
n represents the friction torque component normal to the direction of motion. The parameter
$\dot{\boldsymbol{q}}_{\mathrm{s}}$
denotes the Stribeck characteristic velocity,
$\delta$
is the shape factor governing the transition curve, and σ is the viscous friction coefficient. The time-varying parameters
$\boldsymbol{\tau }_{\mathrm{c}}$
and
$\boldsymbol{\tau }_{\mathrm{s}}\in {\mathbb{R}}^{{n} {\times} 1}$
, which couple wear with operational conditions, correspond to the Coulomb friction torque and static friction torque, respectively. They are modeled as:
\begin{align} \begin{cases} \boldsymbol{\tau }_{\mathrm{c,}i}=\tau _{\mathrm{c0,}i}(1+\alpha _{\mathrm{c,}i}w_{i}(t))(1+\kappa _{\mathrm{c,}i}\eta _{\mathrm{L,}i})\\[3pt] \boldsymbol{\tau }_{\mathrm{s,}i}=\tau _{\mathrm{s0,}i}(1+\alpha _{\mathrm{s,}i}w_{i}(t))(1+\kappa _{\mathrm{s,}i}\eta _{\mathrm{L,}i}) \end{cases}\!\!\!\!\!\!,\,\,i=1,2,\cdots ,n. \end{align}
These friction parameters are dynamically modulated through two factors: the wear state w and the operational load factor
$\eta$
L, which together capture the evolution of joint friction throughout the robot’s service life. Here, w ∈ [0, 1] quantifies the progression from new (w = 0) to the maximum allowable wear (w = 1). The normalized load factor
$\eta _{\mathrm{L}}=\boldsymbol{\tau }_{\mathrm{L}}/\boldsymbol{\tau }_{L, \textrm{max}}$
reflects the instantaneous influence of load torque on friction behavior. The terms τ
c0 and τ
s0 denote the initial Coulomb and static friction torques, respectively. The coefficients
$\alpha$
c
and
$\alpha$
s
represent wear sensitivity, governing the linear effect of wear on friction, while
$\kappa$
c and
$\kappa$
s are load-coupling coefficients that characterize the nonlinear enhancement of wear effects under load.
The wear state w evolves according to the integral equation:
where W
max is the cumulative angular displacement corresponding to the maximum permissible wear – typically reached when repeatable positioning accuracy degrades to 30–40% of its initial value. The load-accelerated wear coefficient
$\boldsymbol{\gamma }(\boldsymbol{\tau }_{\mathrm{L}})=a+b\boldsymbol{\tau }_{\mathrm{L}}$
describes the wear accumulation per unit angular displacement, with a representing the fundamental wear rate under no-load conditions, and b quantifying the amplification of the wear rate per unit increase in load torque.
4. Design of the speed-adaptive nonlinear gain momentum observer
4.1. SNGMO formulation
While the dynamic Stribeck friction model presented in Section 3 improves modeling accuracy by integrating wear, operating conditions, and transmission characteristics, inherent parameter uncertainties remain in practical robotic systems. Furthermore, measurement noise from joint encoders and current sensors, combined with pronounced friction nonlinearities at low speeds, often induces significant output spikes and residual jumps in a standard GMO during velocity zero-crossings or directional reversals. These artifacts severely degrade the reliability of collision detection.
To overcome these limitations, this paper proposes an enhanced observer architecture: the SNGMO. The core innovation lies in embedding the observer within an equivalent second-order filter structure whose bandwidth and damping are dynamically adjusted based on real-time joint velocity. This design maintains high-gain characteristics for rapid disturbance tracking at high speeds while automatically reducing bandwidth and increasing damping during low-speed operation. The latter effectively suppresses signal distortions caused by friction model inaccuracies and measurement noise. Consequently, the SNGMO achieves a synergistic optimization of high sensitivity and robust performance across a wide operational speed range.
Building upon the framework established in Eq. (8), this work introduces a second-order observer structure combined with a speed-adaptive mechanism to formulate the SNGMO. This design enables more accurate and robust estimation of the external joint torque, τ ext. Specifically, the observer’s output, defined as the external torque observation vector r , is constructed as follows:
where
$\hat{P}$
represents the estimated generalized momentum of the robot. Its time derivative, derived from (8), is given by:
Integrating Eq. (17) and substituting into (16) yields a compact expression for the observer:
\begin{align} \begin{array}{l} \boldsymbol{r}=\boldsymbol{K}_{1}\big(\boldsymbol{P}-{\displaystyle\int }_{\!\!\!\boldsymbol{0}}^{t} \big(\boldsymbol{\tau }_{\mathrm{m}}-\boldsymbol{\tau }_{\mathrm{f}}-\hat{\boldsymbol{\beta }}(\boldsymbol{q}\mathrm{,}\,\dot{\boldsymbol{q}})+\boldsymbol{r}\big)\mathrm{d}u\big)\\[5pt] -{\displaystyle\int }_{\!\!\!\boldsymbol{0}}^{t}\left(\boldsymbol{K}_{2}\boldsymbol{r}+\boldsymbol{K}_{3}{\int }_{\mathrm{0}}^{t}\boldsymbol{r}\mathrm{d}u\right)\mathrm{d}u \end{array} \end{align}
where
$\boldsymbol{K}_{1} , \boldsymbol{K}_{2} , \boldsymbol{K}_{3}\in {\mathbb{R}}^{{n} {\times} {n}}$
are diagonal gain matrices. Their diagonal elements are designed as functions of the corresponding joint velocity
$\dot{q}$
. This structure allows the observer to independently adjust the bandwidth, damping, and gain for each joint, thereby accommodating their distinct dynamic characteristics. The operating principle of the SNGMO is illustrated schematically in Figure 1.
Schematic of the SNGMO structure and operating principle.

Figure 1. Long description
Panel A: Traditional GMO Limitations. The first graph is a line graph showing friction torque (N m) versus joint velocity (rad/s). It highlights the inaccuracy of the friction model at velocity reversal, indicating high uncertainty due to local non-stationary characteristics. The second graph is a line graph showing torque/residual (N m) versus time (ms), comparing actual collision torque with estimated GMO output, illustrating detection latency. Panel B: Proposed SNGMO Core Architecture. The diagram shows the structure of the SNGMO observer, including components for joint position (q), joint velocity (q^.), external torque (τext), and velocity (q^.). It details the flow and interaction between these components, including momentum computation (P = \overline{M}(q)q^.) and adaptive gain mechanisms.
For fixed observer gains, differentiating Eq. (18) yields the following second-order realization. In the implemented SNGMO, the corresponding coefficients are updated online according to Eqs. (21)–(23).
Applying the Laplace transform to (19) yields the transfer function of the SNGMO:
The diagonal gain matrices
$\boldsymbol{K}_{1} , \boldsymbol{K}_{2}$
, and
$\boldsymbol{K}_{3}$
in (20) are structured as follows:
\begin{align} \begin{cases} \boldsymbol{K}_{1}=\boldsymbol{A}\boldsymbol{\omega }_{\mathrm{n}}\left(\dot{\boldsymbol{q}}\right)\\[3pt] \boldsymbol{K}_{2}=\boldsymbol{\xi }\boldsymbol{\omega }_{\mathrm{d}}\left(\dot{\boldsymbol{q}}\right)\\[3pt] \boldsymbol{K}_{3}={\boldsymbol{\omega }_{\mathrm{n}}}^{\boldsymbol{2}}\left(\dot{\boldsymbol{q}}\right) \end{cases} \end{align}
where
$\boldsymbol{K}_{1}$
represents the static gain, directly affecting the observer’s sensitivity to external torques;
$\boldsymbol{K}_{2}$
governs the damping characteristics and suppresses oscillations in the output; and
$\boldsymbol{K}_{3}$
sets the natural frequency, which determines the filter’s center frequency and thus the system bandwidth. Here,
$\xi$
and
$\boldsymbol{A}\in {\mathbb{R}}^{{n} {\times} {n}}$
are the diagonal damping-ratio and gain matrices, respectively;
$\boldsymbol{\omega }_{\mathrm{n}}(\dot{\boldsymbol{q}})\in {\mathbb{R}}^{{n} {\times} {n}}$
is the diagonal natural frequency matrix, and
$\boldsymbol{\omega }_{\mathrm{d}}(\dot{\boldsymbol{q}})\in {\mathbb{R}}^{{n} {\times} {n}}$
is the diagonal damping reference frequency matrix.
To optimize damping adaptability over a wide speed range, the diagonal elements
$\omega _{\mathrm{n,}i}(\dot{\boldsymbol{q}}_{i})$
and
$\omega _{\mathrm{d,}i}(\dot{\boldsymbol{q}}_{i})$
are designed as functions of the corresponding joint velocity:
In these expressions,
$\omega _{\mathrm{n,h,}i}$
and
$\omega _{\mathrm{d,h,}i}$
denote the natural frequency and damping reference frequency at high speeds, respectively, while
$\omega _{\mathrm{n,l,}i}$
and
$\omega _{\mathrm{d,l,}i}$
are their low-speed counterparts. The parameters
$\beta_{i}$
and
$\beta _{\mathrm{d,}i}$
are the velocity decay factor and the damping frequency decay factor, respectively, which shape the transition between the high- and low-speed regimes.
The observer’s adaptive mechanism dynamically adjusts three key parameters –
$\boldsymbol{K}_{1} , \boldsymbol{K}_{2}$
and
$\boldsymbol{K}_{3}$
– in real time based on the measured joint velocity. This enables a balanced trade-off between high-speed sensitivity and low-speed noise suppression. During high-speed motion, the system automatically increases the natural frequency and static gain (raising
$\boldsymbol{K}_{1}$
and
$\boldsymbol{K}_{3}$
) while reducing damping (lowering
$\boldsymbol{K}_{2}$
). As a result, the observer achieves broader bandwidth and faster response, ensuring that collision disturbances are captured with minimal delay. Conversely, during low-speed operation, the natural frequency and static gain decrease (
$\boldsymbol{K}_{1}$
and
$\boldsymbol{K}_{3}$
drop), while damping is significantly increased (
$\boldsymbol{K}_{2}$
rises). This reduces the system bandwidth and improves the damping ratio, effectively suppressing signal spikes and jumps induced by friction nonlinearities and measurement noise. Consequently, false alarms are substantially reduced.
Characterized by smooth, speed-dependent parameter variation, the proposed mechanism is designed to coordinate rapid disturbance response with the suppression of friction- and noise-induced residual fluctuations over the prescribed joint-velocity range. In contrast, a conventional fixed-gain GMO involves an inherent trade-off: relatively high gains may amplify low-speed residual fluctuations, whereas relatively low gains may increase the response delay to external disturbances.
The main distinction between the SNGMO and related momentum observers is not simply the use of nonlinear or time-varying parameters. NESMO [Reference Li, Li, Zhu, Xu and Mu26] mainly shapes the observation-error dynamics through nonlinear error feedback, whereas FTNESMO [Reference Zhou, Li, Feng, Li and Zhu22] employs finite-time nonlinear error dynamics. In contrast, the SNGMO uses the measured joint velocity as an explicit scheduling variable to adjust the observer natural frequency, associated gains, and damping characteristics. Within the complete collision-detection framework, this observer is further combined with the friction-compensation model in Section 3 and the time-varying threshold mechanism in Section 5.
4.2. Stability and robustness analysis
Because the gain matrices
$\boldsymbol{K}_{1} , \boldsymbol{K}_{2}$
, and
$\boldsymbol{K}_{3}$
are diagonal, the stability analysis can be performed independently for each joint. The following analysis applies to the scheduled second-order realization corresponding to Eq. (19), in which the observer coefficients are updated online according to Eqs. (21)–(23).
Let
${r}_{i}^{*}$
denote the ideal output of the same scheduled observer under exact dynamic and friction models and the same external joint-torque input, and define the residual error as
$e_{i}=r_{i}-{r}_{i}^{*}$
. This definition is adopted because the SNGMO output is a filtered collision-sensitive residual, as indicated by Eq. (20), rather than an unbiased steady-state estimate of a constant external torque. Considering practical uncertainties, the error dynamics of the i-th joint can be expressed as
where
$\rho _{i}=\dot{q}_{i}$
is the joint-velocity scheduling variable,
$a_{i}(\rho _{i})=k_{1,i}(\rho _{i})+k_{2,i}(\rho _{i})$
, and
$b_{i}(\rho _{i})=k_{3,i}(\rho _{i})$
. Here,
$k_{1,i} , k_{2,i}$
, and
$k_{3,i}$
are the i-th diagonal elements of
$\boldsymbol{K}_{1} , \boldsymbol{K}_{2}$
and
$\boldsymbol{K}_{3}$
, respectively. The term
$d_{i}(t)$
represents the lumped uncertainty caused by dynamic-model errors, friction-compensation errors, measurement noise, and numerical implementation errors. Since the scheduling laws in Eqs. (22) and (23) are smooth functions of
${\dot{q}}_{i}^{2}$
, the resulting coefficients remain continuously differentiable across velocity zero-crossings.
Defining the error state as
$\mathbf{x}_{i}=[e_{i},\dot{e}_{i}]^{T}$
, Eq. (24) can be written as
where
$A_{i}(\rho _{i})= \bigg[\begin{array}{c@{\quad}c} 0 & 1\\ -b_{i}(\rho _{i}) & -a_{i}(\rho _{i}) \end{array} \bigg]$
, and
$B_{i}=[0,\, 1]^{T}$
.
According to Eqs. (21)–(23),
$a_{i}(\rho _{i})$
and
$b_{i}(\rho _{i})$
remain positive and bounded over the prescribed joint-velocity range. Therefore, for every fixed admissible value of
$\rho _{i}$
, the characteristic polynomial of
$\mathbf{A}_{i}(\rho _{i}) , s^{2}+a_{i}(\rho _{i})s+b_{i}(\rho _{i})$
, has positive coefficients. Hence, the corresponding frozen-parameter matrix
$\mathbf{A}_{i}(\rho _{i})$
is Hurwitz. Because the scheduling range is compact and the coefficient functions are continuous, the frozen-parameter system is uniformly Hurwitz over the prescribed operating range.
For a selected positive-definite matrix
$\mathbf{Q}_{i}$
, let
$\mathbf{P}_{i}(\rho _{i})$
be the positive-definite solution of
The parameter-dependent Lyapunov function is selected as
$V_{i}={\mathbf{x}}_{i}^{\mathbf{T}}\mathbf{P}_{i}(\rho _{i})\mathbf{x}_{i}$
. Since
$\mathbf{A}_{i}(\rho _{i})$
is continuously differentiable and uniformly Hurwitz over the prescribed compact range,
$\mathbf{P}_{i}(\rho _{i})$
is continuously differentiable, positive definite, and uniformly bounded over this range.
To account for the variation of the observer parameters with joint velocity, the scheduling rate is assumed to be bounded. Accordingly,
$\dot{\mathbf{P}}_{i}(\rho _{i})=[\partial P_{i}(\rho _{i})/\partial \rho _{i}]\dot{\rho }_{i}$
is bounded. Differentiating
$V_{i}$
along the trajectories of Eq. (25) gives
Suppose that there exists a constant
$\mu _{i}$
such that
$||\dot{\mathbf{P}}_{i}(\rho _{i})||\leq \mu _{i}\lt \lambda _{\min }(\mathbf{Q}_{i})$
for all admissible scheduling parameters and scheduling rates. By applying Young’s inequality to the last term in Eq. (27), the following inequality is obtained:
where
$c_{i}\gt 0$
and
$\gamma _{i}\gt 0$
are bounded constants determined by
$\mathbf{Q}_{i} , \mathbf{P}_{i}(\rho _{i}) , \mathbf{B}_{i}$
, the observer parameters, and the admissible scheduling rate.
When
$d_{i}(t)=0$
, Eq. (28) shows that the origin of the nominal residual-error system is uniformly exponentially stable. When
$d_{i}(t)$
is bounded, the observation-error state is uniformly ultimately bounded, and its ultimate bound depends on the magnitude of the lumped uncertainty, the admissible scheduling rate, and the selected observer parameters. Therefore, the proposed SNGMO preserves nominal error convergence and bounded-error robustness under continuous and bounded-rate gain scheduling.
The above result provides a sufficient stability condition for the scheduled observer implemented in this study. It does not imply finite-time convergence and cannot be directly extended to arbitrary discontinuous or infinitely fast gain switching.
Related momentum-observer methods establish different theoretical properties. FTNESMO [Reference Zhou, Li, Feng, Li and Zhu22] provides finite-time convergence through Lyapunov analysis, NESMO [Reference Li, Li, Zhu, Xu and Mu26] addresses model uncertainties through nonlinear extended-state estimation, and the 2DOF-FOMO [Reference Long, Dang, Nie, Sun and Wang35] analyzes convergence and disturbance rejection for a fractional-order observer. In contrast, the present analysis establishes uniform exponential stability of the nominal residual-error system and uniform ultimate boundedness under bounded uncertainties for the continuous, bounded-rate speed-scheduled SNGMO. These results are sufficient conditions and do not imply finite-time convergence or stability under arbitrary discontinuous gain switching.
5. A time-varying threshold model for handling model errors
Despite the significant noise suppression achieved by the SNGMO and the enhanced dynamic friction compensation, residual disturbances inevitably persist in practical robotic systems. These residuals originate primarily from the combined effects of inherent inaccuracies in the dynamic model and imperfections in friction compensation. Within the actual system, these two error sources interact, collectively influencing the magnitude of the observer’s residual signal, r . Relying on a fixed threshold for collision determination under such conditions often leads to false positives or false negatives, compromising detection reliability.
To enhance the robustness of collision detection under model uncertainty, this section introduces a time-varying threshold model. The core concept is to actively decouple the total unmodeled influence within the residual r into two distinct, quantifiable components: one attributable to dynamic modeling errors and the other to residual friction errors. Based on this decomposition, a threshold boundary that dynamically adapts to the robot’s instantaneous motion state is constructed. This enables the system to more accurately differentiate between signals caused by genuine external collisions and those arising from internal system imperfections.
As established by Eq. (18), the observer output r serves as an estimate of external joint torque. In practice, this signal is inevitably corrupted by errors from dynamic model inaccuracies, imperfect friction identification, and sensor noise. Accounting for these perturbations, the actual implementable residual is derived as follows:
\begin{align} \begin{array}{c} \hat{\boldsymbol{r}}(t)=\boldsymbol{K}_{1}\big(\hat{\boldsymbol{P}}(t)-{\displaystyle\int_{0}^{t}}\big(\hat{\boldsymbol{\tau }}_{\mathrm{m}}-\hat{\boldsymbol{\beta }}\left(\boldsymbol{q}\mathrm{,}\,\dot{\boldsymbol{q}}\right)-\hat{\boldsymbol{\tau }}_{\mathrm{f}}+\hat{\boldsymbol{r}}(t)\big)\mathrm{d}u-\hat{\boldsymbol{P}}(0)\big)\\[5pt] -{\displaystyle\int_{0}^{t}}\big(\boldsymbol{K}_{2}\hat{\boldsymbol{r}}+\boldsymbol{K}_{3}{\int_{0}^{t}}\hat{\boldsymbol{r}}\mathrm{d}u\big)\mathrm{d}u \quad \end{array} \end{align}
To quantify the effect of modeling inaccuracies on the observer’s output, the Laplace transform is applied to both the ideal observer dynamics in (18) and the practical residual expression in (29). The solutions in the frequency domain are given by:
\begin{align} \begin{array}{c} \hat{\boldsymbol{r}}(t)=\boldsymbol{K}_{1}\big(\hat{\boldsymbol{P}}(t)-\boldsymbol{K}_{1}\big(e^{-{\boldsymbol{K}_{1}}t}*\hat{\boldsymbol{P}}(t)\big)\big)-\boldsymbol{K}_{1}\big(e^{-{\boldsymbol{K}_{1}}t}*\big(\hat{\boldsymbol{\tau }}_{\mathrm{m}}-\hat{\boldsymbol{\beta }}(\boldsymbol{q}\mathrm{,}\,\dot{\boldsymbol{q}})-\hat{\boldsymbol{\tau }}_{\mathrm{f}}\big)\big)\\[5pt] \!\!\!\! -\boldsymbol{K}_{2}\big(e^{-{\boldsymbol{K}_{2}}t}*\hat{\boldsymbol{P}}(t)\big)-\boldsymbol{K}_{3}\big(e^{-{\boldsymbol{K}_{3}}t}*\hat{\boldsymbol{P}}(t)\big) \end{array} \\[10pt] \nonumber \end{align}
where ∗ denotes convolution in the time domain. The estimation error between the observed and the actual external torque is defined as:
\begin{align} &\boldsymbol{r}_{e}(t)=\hat{\boldsymbol{r}}(t)-\boldsymbol{r}(t)=\boldsymbol{K}_{1}\left(\boldsymbol{P}_{\mathrm{e}}(t)-\boldsymbol{K}_{1}\left(e^{-{\boldsymbol{K}_{1}}t}*\boldsymbol{P}_{\mathrm{e}}(t)\right)\right)\nonumber\\[5pt] &-\boldsymbol{K}_{1}\left(e^{-{\boldsymbol{K}_{1}}t}*\left(\boldsymbol{\tau }_{\mathrm{me}}-\boldsymbol{\beta }_{\mathrm{e}}\left(\boldsymbol{q}\mathrm{,}\,\dot{\boldsymbol{q}}\right)-\boldsymbol{\tau }_{\mathrm{fe}}\right)\right)-\boldsymbol{K}_{2}\left(e^{-{\boldsymbol{K}_{2}}t}*\boldsymbol{P}_{\mathrm{e}}(t)\right)-\boldsymbol{K}_{3}\left(e^{-{\boldsymbol{K}_{3}}t}*\boldsymbol{P}_{\mathrm{e}}(t)\right) \end{align}
where:
\begin{align} \begin{cases} \boldsymbol{P}_{\mathrm{e}}(t)=\hat{\boldsymbol{M}}\left(\boldsymbol{q}\right)\dot{\boldsymbol{q}}-\boldsymbol{M}\left(\boldsymbol{q}\right)\dot{\boldsymbol{q}}\\[3pt] \quad \quad \boldsymbol{\tau }_{\mathrm{me}}=\hat{\boldsymbol{\tau }}_{\mathrm{m}}-\boldsymbol{\tau }_{\mathrm{m}}\\[3pt] \ \boldsymbol{\beta }_{\mathrm{e}}=\hat{\boldsymbol{\beta }}\left(\boldsymbol{q}\mathrm{,}\,\dot{\boldsymbol{q}}\right)-\boldsymbol{\beta }\left(\boldsymbol{q}\mathrm{,}\,\dot{\boldsymbol{q}}\right)\\[3pt] \quad \quad \boldsymbol{\tau }_{\mathrm{fe}}=\hat{\boldsymbol{\tau }}_{\mathrm{f}}-\boldsymbol{\tau }_{\mathrm{f}} \end{cases} \end{align}
Correspondingly, the error-related outputs for the dynamic and friction models, together with their available estimates, are defined as:
\begin{align} \boldsymbol{r}_{\mathrm{de}}(t)&=\boldsymbol{K}_{1}\left(\boldsymbol{P}_{\mathrm{e}}(t)-\boldsymbol{K}_{1}\left(e^{-{\boldsymbol{K}_{1}}t}*\boldsymbol{p}_{\mathrm{e}}(t)\right)+e^{-{\boldsymbol{K}_{1}}t}*\boldsymbol{\beta }_{\mathrm{e}}\right) \nonumber \\[5pt] &\quad-\boldsymbol{K}_{2}\left(e^{-{\boldsymbol{K}_{2}}t}*\boldsymbol{P}_{\mathrm{e}}(t)\right)-\boldsymbol{K}_{3}\left(e^{-{\boldsymbol{K}_{3}}t}*\boldsymbol{P}_{\mathrm{e}}(t)\right) \nonumber \\[5pt] \boldsymbol{r}_{\mathrm{fe}}(t)&=\boldsymbol{K}_{1}\left(e^{-{\boldsymbol{K}_{1}}t}*\boldsymbol{\tau }_{\mathrm{fe}}\right) \\[-8pt] \nonumber \end{align}
\begin{align} \hat{\boldsymbol{r}}_{\mathrm{d}}(t)&=\boldsymbol{K}_{1}\left(\boldsymbol{P}(t)-\boldsymbol{K}_{1}\left(e^{-{\boldsymbol{K}_{1}}t}*\boldsymbol{p}(t)\right)+e^{-{\boldsymbol{K}_{1}}t}*\boldsymbol{\beta }\right) \nonumber \\[5pt] &\quad -\boldsymbol{K}_{2}\left(e^{-{\boldsymbol{K}_{2}}t}*\boldsymbol{P}(t)\right)-\boldsymbol{K}_{3}\left(e^{-{\boldsymbol{K}_{3}}t}*\boldsymbol{P}(t)\right) \nonumber \\[5pt] \hat{\boldsymbol{r}}_{\mathrm{f}}(t)&=\boldsymbol{K}_{1}\left(e^{-{\boldsymbol{K}_{1}}t}*\boldsymbol{\tau }_{\mathrm{f}}\right) \\[10pt]\nonumber\end{align}
In practice, the true errors
r
de(t) and
r
fe(t) cannot be measured directly, and their convolution-based reconstruction would increase the online computational burden. Therefore, a local linear corrective model is introduced. Around the nominal collision-free operating condition, the nonlinear relationships between the actual error contributions and their available estimates can be locally approximated by a first-order Taylor expansion. To retain a joint-wise structure suitable for real-time implementation, the corresponding local sensitivities are represented by the diagonal weighting matrices
$\boldsymbol{\varepsilon }_{\mathrm{d}}$
and
$\boldsymbol{\varepsilon }_{\mathrm{f}}$
, while the constant offsets and neglected higher-order terms are included in the bias vectors
$\boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{d}}}}(t)$
and
$\boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{f}}}}(t)$
. Accordingly,
\begin{align} \begin{cases} \boldsymbol{r}_{\mathrm{de}}(t)=\boldsymbol{\varepsilon }_{\mathrm{d}}\hat{\boldsymbol{r}}_{\mathrm{d}}(t)+\boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{d}}}}(t)\\[5pt] \boldsymbol{r}_{\mathrm{fe}}(t)=\boldsymbol{\varepsilon }_{\mathrm{f}}\hat{\boldsymbol{r}}_{\mathrm{f}}(t)+\boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{f}}}}(t) \end{cases} \\[-25pt] \nonumber \end{align}
\begin{align}\begin{array}{l}\boldsymbol{\varepsilon }_{\mathrm{d}}=diag\left(\varepsilon _{\mathrm{d},\,1},\varepsilon _{\mathrm{d},\,2},\ldots ,\varepsilon _{\mathrm{d,}n}\right);\,\,\boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{d}}}}(t)=\left[\delta _{{\hat{\boldsymbol{r}}_{\mathrm{d}}},\,1}(t),\delta _{{\hat{\boldsymbol{r}}_{\mathrm{d}}},\,2}(t),\ldots ,\delta _{{\hat{\boldsymbol{r}}_{\mathrm{d}}}\mathrm{,}n}(t)\right]^{\mathrm{T}}\\[5pt] \boldsymbol{\varepsilon }_{\mathrm{f}}=diag\left(\varepsilon _{\mathrm{f,1}},\varepsilon _{\mathrm{f,2}},\ldots ,\varepsilon _{\mathrm{f,}n}\right) ;\,\,\boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{f}}}}(t)=\left[\delta _{{\hat{\boldsymbol{r}}_{\mathrm{f}}}\mathrm{,1}}(t),\delta _{{\hat{\boldsymbol{r}}_{\mathrm{f}}}\mathrm{,2}}(t),\ldots ,\delta _{{\hat{\boldsymbol{r}}_{\mathrm{f}}}\mathrm{,}n}(t)\right]^{\mathrm{T}} \end{array} \\[-10pt] \nonumber \end{align}
where
$\boldsymbol{\varepsilon }_{\mathrm{d}} , \boldsymbol{\varepsilon }_{\mathrm{f}}$
are diagonal weighting matrices that scale the contribution of each joint’s error, and
$\boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{d}}}}(t) , \boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{f}}}}(t)$
are bias vectors that compensate for the offsets between
$\boldsymbol{r}_{\mathrm{de}}(t)$
and
$\boldsymbol{\varepsilon }_{\mathrm{d}}\hat{\boldsymbol{r}}_{\mathrm{d}}(t)$
, and between
$\boldsymbol{r}_{\mathrm{fe}}(t)$
and
$\boldsymbol{\varepsilon }_{\mathrm{f}}\hat{\boldsymbol{r}}_{\mathrm{f}}(t)$
, respectively. This linear model is intended to capture the dominant variation of the residual boundary within the calibrated operating region rather than to replace the complete nonlinear robot dynamics.
Under ideal conditions with no external forces and perfect modeling, the residual output would be approximately zero:
Combining (36), (37), and (38) with an added safety margin, the time-varying threshold bounds for the residual signal are derived as:
where upper bound
$\boldsymbol{U}_{\mathrm{T}}(t)$
and the lower bound
$\boldsymbol{L}_{\mathrm{T}}(t)$
satisfy:
\begin{align} \begin{cases} \boldsymbol{U}_{\mathrm{T}}(t)={\unicode{x03B1}} _{\mathbf{U}}+\boldsymbol{\varepsilon }_{\mathrm{d}}\hat{\boldsymbol{r}}_{\mathrm{d}}(t)+\boldsymbol{\varepsilon }_{\mathrm{f}}\hat{\boldsymbol{r}}_{\mathrm{f}}(t)\\[4pt] \boldsymbol{L}_{\mathrm{T}}(t)={\unicode{x03B1}} _{\mathbf{L}}-\boldsymbol{\varepsilon }_{\mathrm{d}}\hat{\boldsymbol{r}}_{\mathrm{d}}(t)-\boldsymbol{\varepsilon }_{\mathrm{f}}\hat{\boldsymbol{r}}_{\mathrm{f}}(t)\\[4pt] {\unicode{x03B1}} _{\mathbf{U}}=\left\|\boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{d}}}}(t)\right\|_{\infty }+\left\|\boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{f}}}}(t)\right\|_{\infty }+U_{r}\\[4pt] {\unicode{x03B1}} _{\mathbf{L}}=-\left\|\boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{d}}}}(t)\right\|_{\infty }-\left\|\boldsymbol{\delta }_{{\hat{\boldsymbol{r}}_{\mathrm{f}}}}(t)\right\|_{\infty }-L_{r} \end{cases} \end{align}
Here,
${\unicode{x03B1}} _{\mathbf{L}}$
and
${\unicode{x03B1}} _{\mathbf{U}}$
form the combined constant term, establishing a static bias boundary for the joint threshold to account for unmodeled random disturbances. Here, L
r and U
r denote the lower and upper safety margins, respectively.
Under collision-free operating conditions, Eq. (38) indicates that the observer residual can be locally approximated by a linear combination of the estimated dynamic- and friction-related error contributions, together with the remaining bias and unmodeled effects. Accordingly, the diagonal weighting matrices
$\boldsymbol{\varepsilon }_{\mathrm{d}}$
and
$\boldsymbol{\varepsilon }_{\mathrm{f}}$
are identified from n collision-free samples using the following least-squares optimization:
where n denotes the number of collision-free calibration samples, and
$\boldsymbol{\varepsilon }_{\mathrm{d}}$
and
$\boldsymbol{\varepsilon }_{\mathrm{f}}$
are constrained to be diagonal matrices. The identified parameters provide a local linear approximation of the dynamic- and friction-related error contributions over the calibration dataset while retaining a low computational cost for online implementation.
The remaining fitting residual contains the bias terms introduced in Eq. (36), together with measurement noise, transient friction variations, parameter drift, and other effects not represented by the local linear model. Its joint-wise upper and lower bounds are incorporated into the constant terms
${\unicode{x03B1}} _{\mathbf{U}}$
and
${\unicode{x03B1}} _{\mathbf{L}}$
, with U
r
and L
r
providing additional upper and lower safety margins, respectively.
The safety margin involves a trade-off. An insufficient margin may not fully cover collision-free residual fluctuations, whereas an excessively large margin may reduce collision sensitivity and increase the detection delay. Its influence is further evaluated through the sensitivity analysis presented in Section 6.1.
6. Simulation-based evaluation of the SNGMO
6.1. Simulation setup and parameter configuration
This study employs the six-degree-of-freedom UR5e serial manipulator as the simulation platform. This robot exemplifies the multi-joint, strongly coupled, and nonlinear dynamics characteristic of systems widely used in industrial assembly and material handling. To validate the comprehensive performance of the proposed SNGMO under complex operating conditions, a corresponding high-fidelity dynamic simulation model was constructed within the MATLAB/Simulink environment. The simulations are designed to systematically assess the observer’s noise suppression capability and external force tracking performance in the presence of measurement noise, friction nonlinearities, and external disturbances. This provides both theoretical insight and practical parametric guidance for subsequent physical robot experiments.
The SNGMO parameters were systematically configured according to their physical roles and desired closed-loop performance:
-
1. Low-speed natural frequency
$\omega$
n,l,i
(0.3–2.0 Hz) governs the observer bandwidth in the low-velocity regime. Lower values help smooth commutation spikes induced by friction, though excessively low values can delay the response to external forces. Each joint’s value was set independently based on its inertia and load characteristics. -
2. High-speed natural frequency
$\omega$
n,h,i
(6–14 Hz) determines the observer bandwidth during high-speed motion. Higher values improve disturbance tracking but may increase noise sensitivity and should remain compatible with the joint servo bandwidth. -
3. Velocity decay factor
$\beta_{i}$
(10–20) controls the transition rate between the low- and high-speed bandwidth settings. It was tuned based on the velocity range where joint friction uncertainty is most concentrated (e.g., 0–0.2 rad/s). A higher value is appropriate for narrow uncertainty ranges to achieve a swift transition, whereas a lower value is suitable for wider ranges to maintain response smoothness. -
4. Low-speed damping reference frequency
$\omega$
d,l,i
(3–7 Hz) strengthens damping during low-speed motion and direction reversals, thereby suppressing residual oscillations caused by friction nonlinearities and measurement noise. -
5. High-speed damping reference frequency
$\omega$
d,h,i
(0.5–2 Hz) moderately reduces damping in the high-speed range to avoid restricting the system’s fast response capability. -
6. Damping frequency decay factor β d,i (8–16) coordinates with
$\beta_{i}$
to ensure synchronous and smooth transitions in both the bandwidth and damping characteristics. -
7. The damping ratio
$\xi$
i
(0.7–1.0) was selected from the moderately underdamped to critically damped range to limit overshoot and oscillation while maintaining an adequate response speed. Larger values were assigned to joints with higher effective inertia or load sensitivity to provide stronger damping. -
8. System gain A i (0.8–1.2) acts as a global feedforward scaling factor, finely tuned around unity to align the scaling relationship between the actual joint driving torque and the observer’s output signal.
Observer parameters were configured independently for each joint (J1–J6) to reflect their distinct dynamic characteristics, as detailed in Table I.
SNGMO parameter configuration.

Table I. Long description
A table with 8 rows and 2 columns. The first column lists the parameters for each joint, and the second column lists the selected parameter values for joints 1 through 6. The parameters include low-speed natural frequency, high-speed natural frequency, velocity decay factor, low-speed damping reference frequency, high-speed damping reference frequency, damping frequency decay factor, damping ratio, and system gain. Each parameter has specific values for joints 1 through 6.
The parameters in Table I were determined through a stepwise procedure based on their physical roles. The low-speed natural frequency was first adjusted in collision-free low-speed intervals to suppress residual fluctuations caused by friction uncertainty and measurement noise while maintaining collision-response capability. The high-speed natural frequency was then selected according to the residual fluctuation and detection delay under high-speed motion. Finally, the velocity decay factor was adjusted to achieve a smooth transition between the low- and high-speed regions. A parameter set was accepted when the collision was successfully detected and no false alarm occurred in the collision-free validation interval.
To evaluate the local parameter sensitivity around the selected values, a one-factor-at-a-time sensitivity analysis was conducted using J1 as an example. Each parameter was independently varied by ±10%, while the remaining parameters, motion trajectory, friction condition, measurement noise, collision input, and detection threshold were kept unchanged. Table II reports the maximum absolute variation obtained from the positive and negative perturbations. The maximum variations in residual root mean square (RMS) and detection delay were 7.0% and 9.9%, respectively. All perturbed cases successfully detected the collision, and no false alarm occurred in the collision-free validation interval. These results suggest that the selected J1 parameters have reasonable local robustness under the tested conditions.
Stepwise tuning and local sensitivity of selected SNGMO parameters (J1 joint example).

Table II. Long description
A table with four rows and five columns. The columns are labeled Parameter, Tuning objective, Selected value, Perturbation, Maximum residual RMS variation (%), and Maximum detection-delay variation (%). The rows are as follows: Row 1: Parameter, Tuning objective, Selected value, Perturbation, Maximum residual RMS variation (%), Maximum detection-delay variation (%), ωn,l,l, Low-speed residual suppression, 0.5 Hz, ±10%, 3.3, 1.5. Row 2: ωn,h,l, High-speed collision response, 10 Hz, ±10%, 5.9, 9.9. Row 3: β1, Bandwidth transition, 15, ±10%, 7.0, 5.6.
The parameters for the enhanced Stribeck friction model in Eq. (13) were determined through a combination of physical principles and experimental calibration specific to the UR5e joints:
-
1. Initial Coulomb friction torque τ c0,i was calibrated via no-load constant-velocity motion tests.
-
2. Initial static friction torque τ s0,i (typically 1.2–1.8 times τ c0,i ) was identified from startup torque transient experiments.
-
3. Viscous friction coefficient σ i was obtained by fitting data from medium-to-high-speed constant-velocity motions.
-
4. Stribeck characteristic velocity
$\dot{\boldsymbol{q}}_{\mathrm{s}}$
and the shape factor
$\delta$
i
were identified through dedicated low-speed micro-motion experiments. -
5. Wear-related parameters, including the maximum allowable wear W max,i , wear sensitivity coefficients
$\alpha$
c,i
and
$\alpha$
s,i
, the fundamental wear rate a
i
, and the load wear sensitivity b
i
, were selected with reference to reported harmonic-drive wear trends. -
6. The load coupling parameters
$\kappa$
c,i and
$\kappa$
s,i were identified from friction characterization experiments conducted under different constant load conditions.
A strategy combining offline identification with provisions for online updating ensures that the model maintains high predictive accuracy across wide speed ranges, variable loads, and extended operational periods, providing a reliable dynamic foundation for observer design and collision detection. Differentiated parameters were assigned to each joint in the simulation to reflect their individual load and wear profiles, as listed in Table III.
Friction model parameter configuration.

Table III. Long description
The table presents friction model parameter configurations for six joints in a simulation. It has 12 rows and 2 columns. The first column lists the parameters, and the second column lists the selected parameter values for joints J1 to J6. The parameters include Initial Coulomb friction torque, Initial static friction torque, Coefficient of viscous friction, Stribeck characteristic velocity, Shape factor, Maximum allowable wear, Wear sensitivity coefficient, Basic wear rate, Load wear sensitivity, and Load coupling parameter. Each parameter has specific values assigned to each joint.
In addition to the observer and friction-model parameters, the safety-margin coefficient
$\alpha$
in the time-varying threshold affects the balance between collision-free residual coverage and collision-detection sensitivity. A sensitivity analysis was therefore conducted to examine the selection of
$\alpha$
.
A multi-frequency sinusoidal trajectory covering varying-speed and reversal motions was used, and
$\alpha$
was varied from 0% to 30%. For each value, five independent 120-s simulations were conducted, each containing 15 temporally separated collision events. A sinusoidal collision torque with an amplitude of 10 N · m was applied to Joint 1. Except for
$\alpha$
and the random seed of the Gaussian white noise, the observer parameters, remaining threshold parameters, motion trajectory, and collision input were kept unchanged. The noise standard deviation was 5 × 10−4.
The residual coverage rate was calculated as the proportion of collision-free residual samples enclosed by the time-varying threshold, and the detection success rate was calculated as the proportion of successfully detected collision events. The detection delay was defined as the interval between collision onset and the first threshold crossing of the residual and was evaluated only for successfully detected events. The results are summarized in Table IV.
Collision detection performance metrics under different safety margin configurations.

Table IV. Long description
A table comparing collision detection performance metrics under different safety margin configurations. The table has five columns: Safety Margin (percent), Coverage Rate (percent), Detection Success Rate (percent), and Detection Delay (mean ± standard deviation, milliseconds). It contains eight rows of data. Row 1: 0, 91.2, 100, 18 ± 5. Row 2: 5, 94.6, 100, 20 ± 6. Row 3: 10, 97.8, 100, 22 ± 7. Row 4: 12, 98.5, 100, 24 ± 7. Row 5: 15, 99.3, 100, 26 ± 8. Row 6: 18, 99.6, 98.7, 30 ± 9. Row 7: 20, 99.8, 96.0, 34 ± 10. Row 8: 25, 99.9, 88.0, 42 ± 13. Row 9: 30, 99.95, 72.0, 58 ± 18.
As
$\alpha$
increased from 0% to 15%, the residual coverage rate increased from 91.2% to 99.3%, while all prescribed collision events were successfully detected. The corresponding detection delay increased from 18 ± 5 ms to 26 ± 8 ms. Further increasing
$\alpha$
provided only a limited improvement in residual coverage, while the detection success rate decreased and the detection delay increased. Accordingly,
$\alpha$
= 15% was selected as a compromise among residual coverage, detection reliability, and response speed under the present simulation conditions and was adopted in the subsequent evaluations.
6.2. MATLAB/Simulink simulation
A closed-loop simulation system was developed in the MATLAB/Simulink environment using a Newton–Euler recursive algorithm. Forward and inverse dynamics modules were implemented based on the manipulator’s known Denavit-Hartenberg (DH) parameters and link mass properties. These modules incorporate the complete rigid-body dynamics—including the inertia matrix, Coriolis/centrifugal force terms, and gravitational vector—alongside the joint friction model described in Section 3.
To emulate realistic operational conditions, three types of inputs were defined:
-
1. Joint Motion Commands: A continuous, multi-frequency reference trajectory was designed to excite the arm’s dynamics across a wide range of velocities.
-
2. External Torque Disturbances: Known-magnitude external torque pulses were applied to specific joints at designated times to simulate sudden collisions or human interaction.
-
3. Noise Model: Additive Gaussian white noise was introduced to represent measurement-related disturbances and evaluate the observer’s sensitivity to noise.
This setup enables a quantitative analysis of the SNGMO’s residual suppression and disturbance-response performance under model uncertainties, measurement-related noise, and external disturbances. Its performance is compared with that of the conventional GMO under the same simulation conditions.
The reference joint trajectory is defined as:
\begin{align} \begin{array}{l} \boldsymbol{q}_{1}(t)=\mathrm{0}.1sin(\mathrm{0}.\mathrm{4{\unicode{x03C0}}}t)\\[5pt] \boldsymbol{q}_{2}(t)=-\dfrac{{\unicode{x03C0}} }{2}+\mathrm{0}.3sin\left(\mathrm{0}.\mathrm{6{\unicode{x03C0}}}t\right)\\[8pt] \boldsymbol{q}_{3}(t)=\dfrac{{\unicode{x03C0}} }{2}+\mathrm{0}.2sin\left(\mathrm{0}.\mathrm{02{\unicode{x03C0}}}t\right)\\[8pt] \boldsymbol{q}_{4}(t)=-\dfrac{{\unicode{x03C0}} }{2}+\mathrm{0}.4sin\left(\mathrm{0}.\mathrm{3{\unicode{x03C0}}}t\right)\\[8pt] \boldsymbol{q}_{5}(t)=-\dfrac{{\unicode{x03C0}} }{2}+\mathrm{0}.6sin\left(\mathrm{0}.\mathrm{8{\unicode{x03C0}}}t\right)\\[8pt] \boldsymbol{q}_{6}(t)=-3.0sin\left(\mathrm{0}.\mathrm{7{\unicode{x03C0}}}t\right) \end{array} \end{align}
The equivalent additive Gaussian white noise used in the simulation is expressed as follows:
where the noise standard deviations are σ n = [0.10, 0.09, 0.08, 0.07, 0.06, 0.05] for joints 1 to 6. Distinct random seeds (1001 to 1,006) ensure reproducible yet independent noise sequences.
The simulated outputs of the SNGMO and the GMO are compared in Figure 2. The GMO output (blue curve) shows significant noise amplification and pronounced spikes during joint velocity reversals. In contrast, the SNGMO (red curve) effectively suppresses these artifacts through its speed-adaptive gain adjustment, resulting in a smoother residual signal. Quantitatively, the SNGMO achieves an approximate 1.38 dB improvement in overall signal-to-noise ratio (SNR) and a 42.4% reduction in mean square error (MSE) compared to the GMO. Further analysis reveals a correlation between joint load and residual fluctuation. Under collision-free conditions, Joint 1 (bearing a higher load) exhibits markedly greater output variability than Joint 4 (with a lighter load), underscoring the significant influence of load dynamics on observed noise. The gray dashed zones in Figure 2 highlight low-speed reversal regions where the GMO produces large spikes. The SNGMO attenuates these spikes through adaptive gain adjustment, resulting in lower residual fluctuations.
It should be noted that a localized suppression deficiency was observed for Joint 2 at a specific operating point. This is attributed to the joint’s pronounced friction nonlinearity within a narrow velocity band, where residual spikes cannot be fully eliminated by gain adaptation alone. This observation motivated the integrated dynamic friction compensation (presented in Section 3), which works synergistically with the SNGMO to enhance model accuracy and residual smoothness under complex friction conditions, thereby providing a more robust signal foundation for collision detection.
Comparison of noise suppression performance between SNGMO and GMO under simulation conditions.

Figure 2. Long description
The image contains four sets of line graphs, each representing data for different joints labeled as Joint 1, Joint 2, Joint 4, and Joint 5. Each set includes two line graphs: one for torque and one for angular velocity. Panel A: For Joint 1, the top graph shows torque in Newton-meters (N.m) over time in seconds (s), with two lines representing GMO and SNGMO. The bottom graph shows angular velocity in radians per second (rad/s) over time. Panel B: For Joint 2, the top graph shows torque in N.m over time, with two lines representing GMO and SNGMO. The bottom graph shows angular velocity in rad/s over time. Panel C: For Joint 4, the top graph shows torque in N.m over time, with two lines representing GMO and SNGMO. The bottom graph shows angular velocity in rad/s over time. Panel D: For Joint 5, the top graph shows torque in N.m over time, with two lines representing GMO and SNGMO. The bottom graph shows angular velocity in rad/s over time.
To evaluate the observer’s response to sudden external forces, a step external torque
$\boldsymbol{\tau }_{\mathrm{ext}}=-2.5sign(\sin (\mathrm{2{\unicode{x03C0}} }t))-2.5$
was applied to Joint 2 during high-speed motion. The resulting dynamic responses of the SNGMO and the GMO are compared in Figure 3. The GMO exhibited a response delay of approximately 0.1 s. In contrast, the SNGMO—benefiting from its speed-adaptive, second-order filtering structure – achieved a reduced response time while demonstrating superior transient tracking accuracy and robustness against interference. This confirms that the SNGMO maintains rapid and stable tracking of external torques during high-speed operation, validating its design objective of high-speed, high-sensitivity performance. It should be noted that the initial signal peak visible in Figure 3 corresponds to the motor startup transient required to overcome static friction; this peak is not related to the observer’s response to the external torque and does not influence the assessment of external force tracking performance.
Dynamic response characteristics of the observer under external disturbance.

To validate the proposed dynamic Stribeck friction model, simulations were performed across different stages of the robot’s service life, from a brand-new condition (wear state w = 0) to a severely worn state (w = 0.8). Using a simplified two-joint manipulator executing a sinusoidal trajectory, the resulting joint friction torques corresponding to various wear states are plotted in Figure 4. The results indicate that, under an identical motion trajectory and speed, the joint friction torque increases progressively with advancing wear. By incorporating the wear state variable w, the model adapts the friction coefficient to the wear progression, enabling precise characterization of the time-varying and dynamically evolving nature of joint friction.
Furthermore, under noise-free and force-free conditions, the robot was commanded to follow the multi-frequency trajectory defined in Eq. (42). The SNGMO output before and after applying the dynamic friction compensation is compared in Figure 5. Taking Joint 2 as an example, without friction compensation (blue dashed line), significant torque spikes occur in the low-speed reversal region near the velocity zero-crossing (indicated by the gray dashed zone). After compensation via the proposed dynamic friction model (red solid line), these spikes are effectively suppressed within this region. The resulting output is closer to zero and exhibits overall smoother behavior, demonstrating the efficacy of the integrated friction compensation.
In addition to the preceding six-joint UR5e simulations, a unified simulation benchmark was established to compare the proposed SNGMO with the conventional GMO and two representative momentum-observer-based methods, namely NESMO [Reference Li, Li, Zhu, Xu and Mu26] and FTNESMO [Reference Zhou, Li, Feng, Li and Zhu22]. The 2-DOF planar manipulator model and nominal dynamic parameters reported in [Reference Li, Li, Zhu, Xu and Mu26] were adopted, with L 1 = L 2 = 0.4 m, m 1 = 3.1 kg, and m 2 = 2.1 kg. All four observers were evaluated using the same dynamic model, reference trajectory, external torque disturbance, and measurement-noise conditions. NESMO and FTNESMO were reimplemented according to their published formulations and design principles. Parameters that were not explicitly reported or were not directly transferable to the 2-DOF model were selected according to the original design requirements and retuned under the unified simulation conditions. The parameter sources, roles, and selection procedures are summarized in Table V.
Sources and tuning procedures for the parameters of the comparison methods.

Table V. Long description
The table has five rows and four columns. The columns are labeled Parameter, Source, Role in the original study, and Selection in this study. Row 1: Parameter: rho_i, eta_i, delta_i, b_i; Source: NESMO, Eqs. (29) and (32); Role in the original study: Nonlinear error-feedback and convergence adjustment; simulation- or experiment-based tuning; Selection in this study: Tuned for the disturbance range of the 2-DOF model and verified through stability and response tests. Row 2: Parameter: Delta_max_j, Delta_min_j; Source: NESMO, Eq. (32); Role in the original study: Upper and lower uncertainty bounds; no prescribed values or tuning rule; Selection in this study: Set according to the 5 N m external torque and measurement-noise level. Row 3: Parameter: mu_1, mu_2, mu_3; Source: FTNESMO, Eq. (38); Role in the original study: Observer parameters subject to the Hurwitz condition; Selection in this study: Determined by pole placement with eigenvalues (2, 3, 1). Row 4: Parameter: omega_n_j, omega_eta_j, kappa; Source: FTNESMO, Eq. (45); Role in the original study: Adaptive filter-frequency parameters designed for the original 9-DOF platform; Selection in this study: Retuned for the 2-DOF model following the procedure described in Section 4.3 of the original FTNESMO study.
Simulated friction torque results corresponding to different wear states.

During the simulation, the external torque was stepped from 0 to 5 N · m at t = 4 s and removed at t = 6 s. The performance was evaluated using the RMS residual during the predefined collision-free interval and the detection delay. The latter was defined as the time interval between the application of the external torque and the first crossing of the corresponding detection threshold by the observer residual. The external torque tracking results are shown in Figure 6, where Figure 6(a) presents the overall responses and Figure 6(b) provides an enlarged view of the step response. The corresponding quantitative results are summarized in Table VI.
Performance comparison of different methods under the 2-DOF simulation conditions.

Table VI. Long description
A table comparing the performance metrics of different methods under 2-DOF simulation conditions. The table has four rows and three columns. The columns are labeled Performance Metric, GMO, NESMO, FTNESMO, and SNGMO. The row labels are RMS residual (N m) and Detection delay (ms). Row 1: RMS residual (N m), GMO, 0.5816; NESMO, 0.1808; FTNESMO, 0.1622; SNGMO, 0.1443. Row 2: Detection delay (ms), GMO, 45.31; NESMO, 22.47; FTNESMO, 36.20; SNGMO, 12.24.
Comparison of SNGMO output before and after friction compensation (noise excluded).

As shown in Table VI, the SNGMO achieved an RMS residual of 0.1443 N · m and a detection delay of 12.24 ms, both of which were the lowest among the four observers under the present simulation conditions. These results indicate that the SNGMO reduces residual fluctuations during collision-free motion while maintaining a rapid response to the applied external torque, thereby providing a favorable balance between residual suppression and response speed.
6.3. Robustness of collision detection under wear-induced friction parameter drift
To evaluate the robustness of the proposed collision-detection framework under friction-parameter drift, three representative conditions were considered: the initial state, mild equivalent wear, and moderate equivalent wear. The parameter variations were selected with reference to reported wear-related degradation trends in harmonic drives and robotic transmissions [Reference Tuttle and Seering36–Reference Tang, Jia, Li, Wang and Zeng38]. As summarized in Table VII, progressively increased values were assigned to the Coulomb friction, static friction, viscous coefficient, Stribeck velocity, and load-coupling terms. These conditions represent different levels of friction-model mismatch and do not correspond to specific service times, wear amounts, or physical wear stages.
Representative parameter-drift settings informed by reported wear-related degradation trends.

Table VII. Long description
A table with five rows and four columns comparing friction parameter variations under different wear conditions. The columns are labeled Initial state, Mild equivalent wear, and Moderate equivalent wear. The rows are labeled Coulomb friction, Static friction, Viscous coefficient, Stribeck velocity, and Load coupling. Each cell contains a value representing a multiple of a nominal value. Row 1: Coulomb friction, 1.0 Nominal, 1.08 Nominal, 1.15 Nominal. Row 2: Static friction, 1.0 Nominal, 1.10 Nominal, 1.18 Nominal. Row 3: Viscous coefficient, 1.0 Nominal, 1.06 Nominal, 1.12 Nominal. Row 4: Stribeck velocity, 1.0 Nominal, 1.09 Nominal, 1.16 Nominal. Row 5: Load coupling, 1.0 Nominal, 1.10 Nominal, 1.18 Nominal.
Comparison of external torque tracking performance among different observers: (a) Overall torque tracking performance; (b) Zoomed-in view of the step response.

Three configurations were compared under the same motion trajectory specified in Eq. (42) and identical collision conditions: (A) the conventional GMO using the nominal friction model, (B) the SNGMO using the nominal friction model without wear compensation, and (C) the SNGMO incorporating the wear-compensated friction model. For each equivalent wear condition, a continuous collision-free simulation was first conducted to calculate the Mean Per-Joint Residual RMS and sample-level false-positive rate (FPR). A predefined random collision sequence with equivalent external joint torques ranging from 10 to 30 N · m was then applied under the same parameter-drift conditions to evaluate the collision-detection success rate.
The statistical results are summarized in Table VIII. With increasing wear severity, Configurations A and B exhibited noticeable performance degradation due to friction-model mismatch. Under moderate equivalent wear, Configuration B showed a mean per-joint residual RMS of 1.22 N · m, a sample-level FPR of 10.8%, and a detection success rate of 81%. In contrast, Configuration C achieved a residual RMS of 0.70 N · m, an FPR of 2.3%, and a detection success rate of 98% under the same simulation condition.
Collision detection robustness under wear-induced friction drift.

Table VIII. Long description
The table has four rows and three columns. The columns are labeled Wear condition, Configuration, Mean per-joint residual RMS under collision-free motion (N m), Sample-level FPR (%), and Detection success rate (%). The rows are grouped by wear conditions: Initial state, Mild equivalent wear, and Moderate equivalent wear. Each wear condition has three configurations: Config. A, Config. B, and Config. C. Row 1: Initial state, Config. A, 1.17, 8.7, 95. Row 2: Initial state, Config. B, 0.63, 1.2, 100. Row 3: Initial state, Config. C, 0.63, 1.2, 100. Row 4: Mild equivalent wear, Config. A, 1.60, 12.1, 88. Row 5: Mild equivalent wear, Config. B, 0.89, 5.4, 94. Row 6: Mild equivalent wear, Config. C, 0.66, 1.6, 100. Row 7: Moderate equivalent wear, Config. A, 2.10, 18.3, 72. Row 8: Moderate equivalent wear, Config. B, 1.22, 10.8, 81. Row 9: Moderate equivalent wear, Config. C, 0.70, 2.3, 98.
Within the considered simulation model and parameter-drift ranges, Config. C showed less degradation in residual fluctuation, false-positive rate, and detection success rate than Configs. A and B.
7. Experiment-based evaluation of the SNGMO on UR5e platform
7.1. Experimental platform and system
The experimental platform (shown in Figure 7) consists of a UR5e collaborative robot, its control cabinet, a host computer, and a digital force gauge (manufactured by Wenzhou Weidu Electronics Co., Ltd.). The robot kinematics are described using standard Denavit–Hartenberg parameters, and its dynamic parameters were identified through a batch least-squares procedure [Reference Nguyen, Nguyen, Tong and Truong34].
Robot experimental platform.

Custom control software, developed in C++ and Python on the host computer, communicates with the robot controller via the proprietary Real-Time Data Exchange (RTDE) interface, operating at a 2 ms control cycle. During motion, joint-embedded encoders provide real-time measurements of joint angles, while motor currents are simultaneously sampled. These signals are processed by the control cabinet and returned to the host through RTDE for monitoring and logging.
The host computer uses the received feedback (joint angles and currents) to execute trajectory planning and to run the embedded collision-detection algorithm. The resulting torque commands are sent back through RTDE to the control cabinet, which converts them into drive signals for the servo amplifiers, thereby actuating each joint motor.
To evaluate the real-time feasibility of the proposed framework, the host-side algorithm execution time was measured during 500 Hz RTDE operation. The timing included the robot dynamics calculation, dynamic Stribeck friction compensation, SNGMO state and velocity-dependent parameter updates, time-varying threshold calculation, and collision decision, while excluding RTDE communication and internal controller processing. The average and maximum execution times of the complete SNGMO procedure were 61.9 μs and 97.6 μs, corresponding to 3.10% and 4.88% of the 2 ms data-update period, respectively. Compared with the conventional GMO, the average execution time increased by 23.7 μs. These results show that the host-side computation remained within the available update period under the present experimental configuration.
The host-side execution time is distinct from the collision-detection delay, which is additionally affected by the observer dynamics, threshold crossing, and discrete sampling. Therefore, the host-side computational cost was not the dominant contributor to the measured detection delay.
7.2. Experimental validation of SNGMO performance
Building upon the UR5e robotic experimental platform described in Section 7.1, this section presents an experimental evaluation of the proposed SNGMO. The primary objectives are twofold: (1) to validate the effectiveness of the SNGMO in suppressing residual fluctuations and tracking external torque responses, and (2) to assess the practical utility of the dynamic Stribeck friction model – which incorporates wear state and operational load factors – in reducing modeling errors and improving observation accuracy. The validation is conducted in two stages. First, we examine the observer’s ability to suppress system disturbances in the absence of external forces. This includes evaluating its filtering performance against sensor measurement noise and its smoothing effect on torque spikes induced by friction nonlinearities during joint reversals. Second, we test the observer’s tracking performance when known external torques are applied. Both stages are performed with a direct comparison to the conventional GMO to provide a quantitative comparison of their performance. Observer and friction model parameters are configured independently for each joint, using the values established in the simulation study (Section 6, Tables I and III). The observer gain matrices K 1, K 2, and K 3 are six-dimensional diagonal matrices, whose elements are computed based on the parameters in Table I and Eqs. (21)–(23), enabling joint-specific adaptation according to individual dynamic characteristics.
During force-free motion, the UR5e is commanded to follow the multi-frequency trajectory given by Eq. (42). The observed torque outputs from the GMO and the SNGMO are compared in Figure 8. The results show that the GMO produces significant torque spikes near joint velocity zero-crossings due to unmodeled friction dynamics. These spikes represent inherent modeling errors and can easily be misinterpreted as collision events. In contrast, the SNGMO attenuates these commutation-induced spikes through speed-adaptive gain adjustment. Its output also shows lower fluctuation levels than the GMO over the tested trajectory.
To quantify the noise-suppression capability, Table IX lists the RMS values of the observed torque for each joint under no external force. The data confirm that the SNGMO achieves consistently lower torque estimation RMS across all joints than the GMO, with an average reduction of approximately 53%. These RMS results indicate lower residual fluctuations for the SNGMO than for the GMO under the tested collision-free motion.
Root mean square of joint torques without external forces.

Table IX. Long description
A table comparing root mean square values of joint torques for two methods, GMO and SNGMO, across six joints. The table has 2 rows and 7 columns. The columns are labeled as Joint i, J1, J2, J3, J4, J5, and J6. The row labels are GMO and SNGMO. Row 1: GMO, 1.919, 2.444, 1.203, 1.051, 0.633, 0.219. Row 2: SNGMO, 0.749, 0.983, 0.434, 0.725, 0.357, 0.086.
Experimental results of GMO and SNGMO outputs under no external force.

To evaluate the external force tracking performance of the SNGMO under dynamic loading, external force application tests were conducted on the UR5e platform. As shown in Figure 9, during a slow robot motion, a digital force gauge was used to apply a force of 38.95 N along the local –Z′ axis at the tip of the third link, approximately 0.38 m from the axis of the third joint. Based on the Jacobian matrix of the UR5e, this external force produces equivalent joint torques of roughly 14.8 N · m at Joint 3, 8.3 N·m at Joint 2, and 7.1 N · m at Joint 1. The disturbance therefore predominantly affects the first three joints, while the rear three joints remain largely unaffected. Accordingly, the following analysis focuses on the observer outputs for Joints 1–3.
Figure 10 compares the equivalent torque estimates from the GMO and the SNGMO for these three joints under the applied force. Both observers respond clearly to the step-like force change occurring at about 5.1 s. However, the SNGMO shows a faster transient response and a smoother output in this test. For a quantitative comparison, Table X lists the RMS values of the observed torques during this test. The SNGMO achieves lower RMS values than the GMO for most joints, demonstrating that its speed-adaptive mechanism maintains fast disturbance tracking while simultaneously suppressing internal system noise—thus autonomously balancing responsiveness with noise rejection.
Root-mean-square joint torques when a 38.95 n external force is applied to the third link of the UR5e.

Table X. Long description
A table comparing root-mean-square joint torques for GMO and SNGMO under an applied force. The table has 2 rows and 7 columns. The columns are labeled J1, J2, J3, J4, J5, and J6. The rows are labeled GMO and SNGMO. Row 1: GMO, J1 1.924, J2 2.407, J3 1.601, J4 1.031, J5 0.657, J6 0.212. Row 2: SNGMO, J1 0.838, J2 1.191, J3 1.449, J4 0.729, J5 0.376, J6 0.083.
Application of 38.95 n external force to the third link of the UR5e via force gauge.

Figure 9. Long description
A person is holding a force gauge and applying force to the third link of a robotic arm labeled UR5e. The robotic arm has multiple joints and is connected to a laptop displaying data. The force gauge is connected to the robotic arm’s third link, and the applied force is measured in newtons. The laptop screen shows data related to the force applied, with visible graphs and numerical values. The robotic arm has wires attached to it, and there are labels indicating the direction of force application (Z1 and Z2).
Observer output results when applying 38.95 n external force to the third link of the UR5e.

A quantitative assessment of the SNGMO’s improvement over the GMO—in terms of both noise suppression and dynamic tracking – can be derived by synthesizing the data from Tables IX and X. Under force-free motion (Table IX), the SNGMO reduced the RMS of the observed torque residual by an average of 53 % compared to the GMO. This indicates lower collision-free residual fluctuations for the SNGMO under the tested trajectory. When the 38.95 n external force was applied (Table X), the SNGMO achieved RMS torque estimates that were comparable to or lower than those of the GMO for most joints. The time-domain responses in Figure 10 show that the SNGMO responds to the applied load while producing a smoother output with reduced fluctuations. Thus, the SNGMO retains its external-load response while maintaining lower output fluctuations. Across both operational regimes, the overall RMS level of the observed torque was lowered by approximately 47 % on average. This improvement stems from the observer’s effective noise filtering during collision-free periods combined with its retained ability to track disturbances rapidly when a collision occurs. As a result, the SNGMO delivers residual signals with higher SNR and greater reliability for robust collision detection.
To further quantify the torque response under the 38.95 n loading test, the reference equivalent joint torques were calculated from the measured contact force, contact position, and the Jacobian matrix at the corresponding robot configuration. The resulting values for J1, J2, and J3 were approximately 7.10, 8.30, and 14.80 N · m, respectively. Since the manually applied force exhibited a transient variation, the comparison was based on the peak amplitudes within 5.05–5.45 s, which covered the main rising and peak responses while excluding the subsequent unloading process. For each joint, the maximum absolute SNGMO output within this interval was compared with the corresponding reference equivalent joint torque. The results are summarized in Table XI.
Peak-amplitude comparison under the 38.95 n loading test.

Table XI. Long description
A table with four rows and five columns comparing peak-amplitude responses of different joints under a loading test. The columns are labeled Joint, Reference equivalent torque (N m), Peak SNGMO response (N m), Absolute peak-amplitude deviation (N m), and Relative peak-amplitude deviation (%). The rows are labeled J1, J2, and J3. Row 1: Joint, J1; Reference equivalent torque (N m), 7.10; Peak SNGMO response (N m), 7.03; Absolute peak-amplitude deviation (N m), 0.07; Relative peak-amplitude deviation (%), 1.0. Row 2: Joint, J2; Reference equivalent torque (N m), 8.30; Peak SNGMO response (N m), 8.08; Absolute peak-amplitude deviation (N m), 0.22; Relative peak-amplitude deviation (%), 2.7. Row 3: Joint, J3; Reference equivalent torque (N m), 14.80; Peak SNGMO response (N m), 15.10; Absolute peak-amplitude deviation (N m), 0.30; Relative peak-amplitude deviation (%), 2.0.
As shown in Table XI, the peak SNGMO responses for J1–J3 were 7.03, 8.08, and 15.10 N · m, respectively. The corresponding absolute peak-amplitude deviations were 0.07, 0.22, and 0.30 N · m, with relative deviations of 1.0%, 2.7%, and 2.0%. Thus, under the present contact position, loading direction, and motion conditions, the relative deviations were below 3%, indicating good consistency between the SNGMO peak responses and the reference equivalent joint torques.
It should be noted that the reference equivalent joint torques were derived from the force-gauge measurement, contact geometry, and Jacobian matrix rather than measured directly at the joints. Their uncertainty may therefore be affected by the force-gauge accuracy, contact-position and loading-direction deviations, kinematic parameter errors, and data synchronization. Accordingly, this comparison evaluates the transient peak-response consistency of the SNGMO rather than sensor-level joint-torque measurement accuracy.
7.3. Collision detection experiment
Collision detection experiments were performed on the UR5e platform, integrating the previously developed time-varying threshold model with the SNGMO. To establish a baseline and calibrate the detection thresholds under normal (collision-free) conditions, the robot was first programed to track a predefined reference trajectory:
\begin{align} \begin{array}{l} \boldsymbol{q}_{3}(t)=-\mathrm{0}.2+\mathrm{0}.6\,sin\left(\mathrm{0}.\mathrm{16{\unicode{x03C0}}}t+{\unicode{x03C0}} \right)\\[5pt] \boldsymbol{q}_{4}(t)=\mathrm{0}.3+\mathrm{0}.3\,sin\left(\mathrm{0}.\mathrm{4{\unicode{x03C0}}}t+\mathrm{3{\unicode{x03C0}} }/2\right)\\[5pt] \boldsymbol{q}_{5}(t)=-\mathrm{0}.1+\mathrm{0}.2\,sin\left(\mathrm{0}.\mathrm{5{\unicode{x03C0}}}t\right)\\[5pt] \boldsymbol{q}_{6}(t)=\mathrm{0}.2+\mathrm{0}.35\,sin\left(\mathrm{0}.\mathrm{24{\unicode{x03C0}}}t+{\unicode{x03C0}} /4\right) \end{array} \\[-10pt] \nonumber \end{align}
During this baseline motion, the SNGMO output residual
$\hat{\boldsymbol{r}}$
, the identified model’s dynamic error estimate
$\hat{\boldsymbol{r}}_{\mathrm{d}}$
, and the post-compensation friction residual
$\hat{\boldsymbol{r}}_{\mathrm{f}}$
were recorded simultaneously. These signals collectively define the system’s nominal operating state and provide the dataset for calibrating the time-varying threshold model.
Calibration was carried out according to Eq. (39), with the objective of identifying a parameter set that aligns the model’s predicted threshold bounds closely with the actual fluctuation range of the observed residuals. The procedure was as follows:
-
1. Using the recorded signals
$\hat{\boldsymbol{r}} , \hat{\boldsymbol{r}}_{\mathrm{d}}$
, and
$\hat{\boldsymbol{r}}_{\mathrm{f}}$
; -
2. Solving Eq. (41) via least-squares regression to obtain the diagonal weighting matrices
$\boldsymbol{\varepsilon }_{\mathrm{d}}$
and
$\boldsymbol{\varepsilon }_{\mathrm{f}}$
that minimize the discrepancy between predicted and observed residual envelopes; -
3. Determining the bias bounds
${\unicode{x03B1}} _{\mathbf{L}}$
and
${\unicode{x03B1}} _{\mathbf{U}}$
from the residual distribution, while setting the safety margin coefficient
$\alpha$
= 15% according to the sensitivity analysis reported in Section 6.1.
The calibration results are summarized in Table XII. The predominantly negative values in
$\boldsymbol{\varepsilon }_{\mathrm{d}}$
indicate an inverse compensatory relationship between the dynamic error estimate
$\hat{\boldsymbol{r}}_{\mathrm{d}}$
and the residual
$\hat{\boldsymbol{r}}$
during the construction of the adaptive threshold. In contrast, the positive entries in
$\boldsymbol{\varepsilon }_{\mathrm{f}}$
directly reflect the friction impact across joints, with higher weights observed for load-bearing joints (e.g., Joints 2 and 3), consistent with their greater friction uncertainty.
UR5e time-varying threshold parameter calibration results.

Table XII. Long description
A table comparing time-varying threshold parameter calibration results for different joints. The table has six rows and four columns. The columns are labeled with epsilon_d(i), epsilon_f(i), alpha_U(i), and alpha_L(i). The rows are labeled with Joint i and include J1, J2, J3, J4, J5, and J6. Row 1: Joint i, J1, epsilon_d(i), -0.025, epsilon_f(i), 0.10, alpha_U(i), 1.2, alpha_L(i), -1.0. Row 2: Joint i, J2, epsilon_d(i), -0.035, epsilon_f(i), 0.15, alpha_U(i), 1.8, alpha_L(i), -1.5. Row 3: Joint i, J3, epsilon_d(i), -0.030, epsilon_f(i), 0.12, alpha_U(i), 1.5, alpha_L(i), -1.2. Row 4: Joint i, J4, epsilon_d(i), -0.015, epsilon_f(i), 0.08, alpha_U(i), 0.8, alpha_L(i), -0.7. Row 5: Joint i, J5, epsilon_d(i), -0.012, epsilon_f(i), 0.06, alpha_U(i), 0.6, alpha_L(i), -0.5. Row 6: Joint i, J6, epsilon_d(i), -0.010, epsilon_f(i), 0.05, alpha_U(i), 0.5, alpha_L(i), -0.4.
The calibrated time-varying threshold parameters were applied to the model defined by Eq. (39). Under the same collision-free motion (Eq. 44), dynamic threshold boundaries for each joint were generated in real time. Figure 11 shows the SNGMO output residual (blue solid line) for all six joints, along with the corresponding time-varying upper bound U T (red dashed line) and lower bound L T (green dashed line). During joint reversal phases (marked by gray dashed zones), the observer output exhibits pronounced jumps due to friction nonlinearities and measurement noise. The constructed thresholds synchronously track these fluctuations in both timing and amplitude, effectively encapsulating the signal variations stemming from internal system dynamics.
Observer output versus corresponding time-varying threshold during collision-free operation.

Figure 11. Long description
Panel A: A line graph titled Joint 1 shows torque in Newton-meters (N.m) on the vertical axis and time in seconds (s) on the horizontal axis. The graph includes three lines: a solid blue line, a dashed red line, and a dashed green line. The torque values fluctuate around zero, with noticeable peaks around the 8-second mark. Panel B: A line graph titled Joint 2 shows torque in N.m on the vertical axis and time in seconds on the horizontal axis. The graph includes three lines: a solid blue line, a dashed red line, and a dashed green line. The torque values fluctuate around zero, with peaks around the 8-second mark. Panel C: A line graph titled Joint 3 shows torque in N.m on the vertical axis and time in seconds on the horizontal axis. The graph includes three lines: a solid blue line, a dashed red line, and a dashed green line. The torque values fluctuate around zero, with peaks around the 8-second mark. Panel D: A line graph titled Joint 4 shows torque in N.m on the vertical axis and time in seconds on the horizontal axis. The graph includes three lines: a solid blue line, a dashed red line, and a dashed green line. The torque values fluctuate around zero, with peaks around the 8-second mark. Panel E: A line graph titled Joint 5 shows torque in N.m on the vertical axis and time in seconds on the horizontal axis. The graph includes three lines: a solid blue line, a dashed red line, and a dashed green line. The torque values fluctuate around zero, with peaks around the 8-second mark. Panel F: A line graph titled Joint 6 shows torque in N.m on the vertical axis and time in seconds on the horizontal axis. The graph includes three lines: a solid blue line, a dashed red line, and a dashed green line. The torque values fluctuate around zero, with peaks around the 8-second mark.
Collisions between force gauge and UR5e at different positions.

To validate the detection performance, the robot was commanded to follow the trajectory in Eq. (44) while known external forces were applied at different time instants to the second link, third link, and end-effector using a digital force sensor. The collision locations and directions are illustrated in Figure 12. The corresponding SNGMO outputs and their time-varying thresholds during these events are plotted in Figure 13.
To precisely measure the detection latency, a high-speed camera recorded the entire collision sequence. The exact moment of contact t impact was determined by identifying the keyframe in which the force sensor contacted the robot, with its timestamp t video synchronized and calibrated against the robot’s internal clock. The robot’s control system logged joint states and SNGMO outputs at a 2 -ms sampling period. This synchronization provided a reliable reference for computing the alarm delay.
Collision with the second link (Figure 12(a)): The force sensor recorded an impact of 35.26 N, corresponding to an external torque of approximately 19.87 N · m. At the moment of impact identified via video analysis, the observer output remained within the threshold bounds (UT = 1.771 N · m, LT = −1.492 N · m). Approximately 30 ms later, the SNGMO output exceeded the upper bound, triggering a collision alarm. Key observer parameters at the first alarm instant are listed in Table XIII. The gain of the directly affected joint increased at the first alarm instant, consistent with the velocity-dependent scheduling mechanism.
Parameters of the observer detecting the first collision.

Table XIII. Long description
A table titled ‘Parameters of the observer detecting the first collision’ with six rows and six columns. The columns are labeled as Joint i, q^.(i), ωn(i), ωd(i), K1(i), K2(i), and K3(i). The rows list values for joints J1 to J6. Row 1: Joint i, J1; q^.(i), 0.004; ωn(i), 3.16; ωd(i), 31.41; K1(i), 3.16; K2(i), 25.13; K3(i), 9.96. Row 2: Joint i, J2; q^.(i), 0.125; ωn(i), 21.33; ωd(i), 31.77; K1(i), 23.46; K2(i), 27.01; K3(i), 454.98. Row 3: Joint i, J3; q^.(i), 0.012; ωn(i), 4.64; ωd(i), 43.90; K1(i), 5.57; K2(i), 39.51; K3(i), 21.52. Row 4: Joint i, J4; q^.(i), 0.241; ωn(i), 37.85; ωd(i), 18.80; K1(i), 37.85; K2(i), 15.04; K3(i), 1,432.99. Row 5: Joint i, J5; q^.(i), 1.463; ωn(i), 50.27; ωd(i), 5.03; K1(i), 45.24; K2(i), 3.77; K3(i), 2,526.62. Row 6: Joint i, J6; q^.(i), 3.561; ωn(i), 37.70; ωd(i), 3.14; K1(i), 30.16; K2(i), 2.20; K3(i), 1,421.22.
Observer-related parameters upon detection of the second collision.

Table XIV. Long description
A table comparing observer-related parameters upon detection of the second collision across different joints. The table has 6 rows and 7 columns. The columns are labeled as Joint i, q (i), ω_n (i), ω_d (i), K1(i), K2(i), and K3(i). Row 1: Joint i, J1; q (i), 0.061; ω_n (i), 6.38; ω_d (i), 30.32; K1(i), 6.38; K2(i), 24.25; K3(i), 40.73. Row 2: Joint i, J2; q (i), 0.112; ω_n (i), 18.25; ω_d (i), 32.84; K1(i), 20.07; K2(i), 27.92; K3(i), 332.96. Row 3: Joint i, J3; q (i), 0.012; ω_n (i), 4.64; ω_d (i), 43.90; K1(i), 5.57; K2(i), 39.51; K3(i), 21.52. Row 4: Joint i, J4; q (i), 0.129; ω_n (i), 16.33; ω_d (i), 26.87; K1(i), 16.33; K2(i), 21.49; K3(i), 266.58. Row 5: Joint i, J5; q (i), 0.902; ω_n (i), 50.26; ω_d (i), 5.03; K1(i), 45.24; K2(i), 3.77; K3(i), 2,526.34. Row 6: Joint i, J6; q (i), 4.794; ω_n (i), 37.70; ω_d (i), 3.14; K1(i), 30.16; K2(i), 2.20; K3(i), 1,421.22.
Observer output values and corresponding time-varying thresholds during collisions.

Collision with the third link (Figure 12(b)): A measured force of 16.32 n (≈ 9.54 N · m torque) was applied. The threshold bounds at this instant were [− 1.972, 2.343] N·m. The alarm was triggered about 28 ms after the video-calibrated impact time, with both Joint 2 and Joint 3 registering the collision signal. Observer parameters at the second alarm are shown in Table XIV. A comparison of Tables XIII and XIV reveals that under different collision locations and magnitudes, the SNGMO autonomously adjusted the observer bandwidth and gain according to the real-time joint velocities. The parameter differences between the two collision events illustrate the velocity-dependent scheduling behavior of the SNGMO, which coordinates disturbance tracking and residual suppression under different operating states.
Minor collision at the end-effector (Figure 12(c)): For a light external contact identified via high-speed video, the resulting equivalent joint torque was small and not detected by all upstream links. Nevertheless, at least one joint residual exceeded its time-varying threshold, indicating sensitivity to the minor end-effector contact under the evaluated condition.
To isolate the contribution of the threshold mechanism, an ablation comparison was conducted using the same SNGMO residual signals, with only the collision decision boundaries changed. The fixed thresholds were determined from the joint-wise upper and lower envelopes of the collision-free residuals, whereas the proposed dynamic thresholds were generated according to Eq. (39). Both threshold types were calibrated using the same collision-free record and the same 15% outward safety margin. The collision data were not used for threshold calibration or parameter adjustment.
The threshold-envelope width was defined as the average distance between the upper and lower decision boundaries, and the detection delay was measured from the video-calibrated contact onset to the first crossing of the corresponding threshold by the SNGMO residual. Neither threshold type produced a threshold crossing in the calibration record, and both detected all three collision events considered in this comparison. As summarized in Table XV, the mean threshold-envelope width over the six joints decreased from 5.475 N · m with the fixed thresholds to 1.995 N · m with the proposed dynamic thresholds. For the first two collision events with synchronized high-speed-video references, the mean detection delay decreased from 61.3 ms to 29.0 ms. The third minor collision event was included in the detection count but excluded from the delay calculation because a quantitative video-synchronized contact-onset time was unavailable. These results suggest that, under the present experimental conditions, the proposed dynamic thresholds provided a narrower threshold envelope and shorter detection delays without reducing the number of detected events. The collision-free result was obtained from the threshold-calibration record and therefore does not constitute an independent evaluation of generalization performance.
Ablation results for the fixed and proposed dynamic thresholds.

Table XV. Long description
A table comparing performance metrics of fixed and proposed dynamic thresholds. The table has two columns and two rows. The columns are labeled ‘Fixed threshold’ and ‘Proposed dynamic’. The rows are labeled ‘Mean threshold-envelope width over the six joints (N m)’ and ‘Mean detection delay (ms)’. Row 1: Fixed threshold, 5.475; Proposed dynamic, 1.995. Row 2: Fixed threshold, 61.3; Proposed dynamic, 29.0.
To further evaluate the repeatability and detection performance of the proposed method, repeated collision experiments were conducted at fixed positions on the second and third links, as shown in Figures 12(a) and (b). At each position, low, medium, and high target levels were set within a reference equivalent external joint torque range of approximately 10–30 N · m. Each position–torque-level combination was repeated ten times, resulting in 60 collision trials. The digital force gauge and high-speed camera were used only to provide reference force information and determine the collision onset, while both observers used the robot’s internal feedback signals for detection.
The recorded data from each trial were processed using both the GMO and SNGMO. Detection delay was defined as the interval between the video-calibrated collision onset and the first threshold crossing of the observer residual. The mean, standard deviation, and 95% confidence interval were calculated from successfully detected trials, whereas missed detections were included only in the detection counts and miss-detection rates. The pooled results for the three torque levels at each collision position are summarized in Table XVI.
Statistical analysis of collision detection performance in repeated collision trials.

Table XVI. Long description
A table with two rows and six columns comparing collision detection performance across different scenarios and methods. The columns are labeled Collision scenario, Method, Successful detections /total trials, Mean delay (ms), SD (ms), 95% CI(ms), and Miss-detection Rate (%). The table presents data for two collision cases, each evaluated using two methods: GMO and SNGMO. For Collision Case 1, GMO has 28 successful detections out of 30 trials, a mean delay of 52.4 ms, a standard deviation of 9.8 ms, a 95% confidence interval of [48.6, 56.2] ms, and a miss-detection rate of 6.7 percent. SNGMO has 30 successful detections out of 30 trials, a mean delay of 28.7 ms, a standard deviation of 4.6 ms, a 95% confidence interval of [27.0, 30.4] ms, and a miss-detection rate of 0 percent. For Collision Case 2, GMO has 27 successful detections out of 30 trials, a mean delay of 58.6 ms, a standard deviation of 10.7 ms, a 95% confidence interval of [54.4, 62.8] ms, and a miss-detection rate of 10.0 percent. SNGMO has 29 successful detections out of 30 trials, a mean delay of 26.4 ms, a standard deviation of 5.0 ms, a 95% confidence interval of [24.5, 28.3] ms, and a miss-detection rate of 3.3 percent.
In Collision Case 1, the GMO and SNGMO successfully detected 28 and 30 of the 30 trials, with mean delays of 52.4 and 28.7 ms, respectively. In Collision Case 2, they successfully detected 27 and 29 trials, with mean delays of 58.6 and 26.4 ms. Under both scenarios, the SNGMO exhibited fewer missed detections, shorter mean delays, smaller standard deviations, and narrower 95% confidence intervals.
To evaluate false triggering under noncontact operation, 50 additional trials were performed using the same normal motion trajectory without external contact. A trial was classified as false positive if at least one incorrect collision alarm occurred. As shown in Table XVII, the GMO produced three false-positive trials, corresponding to a test-level FPR of 6.0%, whereas the SNGMO produced one false-positive trial, corresponding to a rate of 2.0%.
Trial-level false-positive performance under noncontact operation.

Table XVII. Long description
A table comparing the trial-level false-positive performance of two methods under noncontact operation. The table has two rows and four columns. The columns are labeled Method, True-negative trials, False-positive trials, and Test-level FPR (%). The first row represents the GMO method with 47 true-negative trials, 3 false-positive trials, and a test-level false-positive rate of 6.0 percent. The second row represents the SNGMO method with 49 true-negative trials, 1 false-positive trial, and a test-level false-positive rate of 2.0 percent.
These results show that, under the tested collision positions, torque range, and normal motion conditions, the SNGMO achieved fewer missed detections and false-positive trials, together with shorter and more consistent detection delays than the GMO.
8. Conclusions
This paper presents the SNGMO for robot collision detection. The proposed framework integrates a friction model incorporating load-dependent and wear-related parameter variations, a velocity-dependent observer gain mechanism, and a time-varying threshold strategy. These components are designed to improve residual suppression and collision-response performance under varying joint-motion conditions.
The proposed method was evaluated through MATLAB/Simulink simulations and experiments on a UR5e robotic platform. Under the evaluated simulation conditions, the SNGMO improved the SNR by approximately 1.38 dB and reduced the disturbance-estimation MSE by 42.4% compared with the conventional GMO. The unified simulation comparison with representative momentum observers further showed that the SNGMO achieved a favorable balance between collision-free residual suppression and disturbance-response speed under the adopted model, trajectory, noise, and parameter settings.
In the physical experiments, the combined SNGMO and friction-compensation strategy reduced the overall RMS level of the observer output by approximately 47% relative to the conventional GMO across the collision-free and 38.95 n loading tests. Repeated collision experiments involving different contact locations and external disturbance levels showed that the SNGMO achieved shorter detection delays, lower delay dispersion, and fewer missed detections. These results indicate improved collision-response speed and consistency on the UR5e platform under the tested conditions. The online collision-detection algorithm relies on internal robot measurements and does not require an additional external force/torque sensor during operation; the external measurement devices used in this study served only as experimental references.
The current validation nevertheless has several limitations. First, the robustness analysis under wear-induced friction degradation is mainly based on representative equivalent parameter-drift simulations rather than staged physical degradation experiments. Second, the physical validation is limited to a single UR5e platform and a finite set of trajectories, contact locations, and disturbance levels. Therefore, the present results do not establish broad applicability to robots with different mechanical architectures, transmission types, or sensing and control configurations.
Future work will collect long-term operational data at different degradation stages to investigate actual friction-parameter evolution and develop online parameter-updating strategies for the wear-aware model. The proposed framework will also be evaluated on additional robotic platforms and under more diverse motion, payload, contact, and human–robot interaction conditions to further assess its long-term reliability and broader applicability.
Author contributions
Jia Wang led the primary writing of the manuscript. Jiacheng Li constructed the prototype system and prepared the figures. Xiaobo Ji conducted the experiments and collected the data. Jiahang Li revised and refined the manuscript. Chenghao Yang proposed the core idea of the paper and contributed to manuscript revision. Jian S. Dai provided guidance on the theoretical derivations.
Financial support
This work was supported by the National Science and Technology Major Project of China (Grant No. 2026ZD1609306), National Natural Science Foundation of China (Grant No. 52505015), the Tianjin Natural Science Foundation Project (Grant No. 24JCQNJC00760), the Hebei Natural Science Foundation (Grant No. E2023202135), the Beijing-Tianjin-Hebei Joint Research Project (Grant No. E2024202261), the Science Research Project of Hebei Education Department (BJ2025125), and the Research Project (Grant No. JSZL2023205A001).
Competing interest
One of the authors, Jian S. Dai, is the Editor-in-Chief of the journal, but was completely excluded from the review process and all editorial decisions regarding this manuscript. The remaining authors declare that they have no other conflicts of interest.
Ethical Approval
Not applicable.


















