Abstract
Collision detection is the core issue in physical human–robot interactions, and many detection methods based on robot dynamic models have been proposed. However, model uncertainties, especially complicated friction, seriously affect the collision detection performance of these methods. In this paper, a nonlinear disturbance observer (NDO) originally proposed for friction estimation is applied for the first time in robot collision detection. To verify that the collision detection performance of the NDO is better than that of the classical generalized momentum observer (GMO), the detection sensitivity, robustness and external torque estimation accuracy of each method are compared and analyzed. Then, to eliminate the effects of friction uncertainties on the collision detection results, a modified nonlinear disturbance observer (MNDO) based on neural networks is proposed to improve the collision detection performance. To verify the effectiveness of the algorithm, simulations and experiments are conducted with a 6-DOF robot and two single-joint platforms. The results indicate that the proposed algorithm is accurate and effective.
Introduction
Human-friendly robots [1] as coworkers have played increasingly important roles in common life tasks, such as in home service [2], cooperative assembly [3], medical surgery [4] and so on. In these applications, robots should be able to share the workspace with a human user, prevent undesired outcomes and control unavoidable or intentional physical contact in a safe and robust way. Achieving this robot behavior is the global objective of physical human–robot interaction (pHRI) research [5, 6]. One of the core problems in pHRI is the handling of collisions between robots and humans to prevent possible human injury due to physical contacts. To date, many collision detection methods have been proposed in this research area.
An intuitive approach is to monitor the measured currents in robot electrical drives and look for the fast transients that are often caused by collisions [7]. Another proposed scheme compares the actual commanded motor torques with the nominal model-based control values in the absence of collisions, with any difference being attributed to a collision [8, 9]. This concept has been refined by considering the use of adaptive compliance control [10, 11]. However, the tuning of collision detection thresholds in these schemes is difficult because of the highly varying dynamic characteristics of the control torques. One expensive way to perform collision detection is to use sensitive skins [12, 13]. However, this method is impractical because of the complicated electrical wiring covering the robots. To solve these problems, some methods based on learning technology have been proposed [14–16]. Introduce neural networks that accept high-dimensional signals from robot joints as input and then output a binary evaluation of whether a collision occurred. However, these methods have some limitations. For example, the detection performance is affected when the robot motion trajectory or dynamic model changes, such as for different payloads. Unlike the methods above, observer methods based on robot dynamic models have been proposed recently. The most classical method is the generalized momentum observer (GMO) [17–19], which uses changes in robot momentum as the basis for determining whether a collision occurred. However, this method depends on the exact robot dynamic model and model uncertainties, especially friction disturbances, which can seriously affect the collision detection effects. In addition, this approach requires the solution of the derivative of the inertia matrix, which increases the computational requirements. A more personalized system can be designed [24] which is not the focus of this paper.
In this paper, to improve collision detection performance, the nonlinear disturbance observer (NDO), which was originally proposed in [20] to estimate the friction of a robot joint, is introduced for robot collision detection. The advantages of the NDO are that the collision detection sensitivity and robustness are better than those of the GMO. In addition, the gain parameter adjustment of the NDO is easier than that for the GMO because only one gain parameter is used. To eliminate the effects of complicated friction on the collision detection performance, the MNDO is proposed using a feedforward neural network to model friction disturbances combined with the output of the NDO. The main contributions of this paper are as follows. (1) To the knowledge of the authors, it is the first time that the NDO has been applied for robot collision detection. (2) We verify that the collision detection performance of the NDO is better than that of the GMO based on simulations and experimental comparisons of these two methods. (3) To eliminate the effects of friction on collision detection, the MNDO is proposed with a feedforward neural network, which can accurately and sensitively detect external collisions without relying on the exact robot dynamics model.
The paper is organized as follows. The proposed collision detection method description is introduced in Section 2. Section 3 gives the simulations and analysis. The experiments are conducted in Section 4. Then, the discussion is shown in Section 5. Finally, conclusions are given in Section 6.
Proposed collision detection method
NDO
Robotic manipulators are considered open kinematic chains of rigid bodies with n rigid
joints. Therefore, the dynamics of n degree of freedom (DOF) rigid robotic manipulators
can be described as,
To overcome the disadvantages of linear disturbance observers, Chen et al. [20] proposed a NDO without the need of an
acceleration signal and used it to estimate the robot friction torque. The observer is
designed as
Equation (2) is only used to estimate a
friction disturbance. However, in collision detection, the friction model (an exact
friction model is supposed to be known) should be considered in the formula, and the
output of the observer will become an external collision disturbance. Therefore, the
observer equation becomes
However, the exact friction model is complex and difficult to acquire because it is usually related to many factors, such as the temperature and material properties. In addition, dynamic uncertainties, especially friction, will reduce the collision detection sensitivity of (5). To overcome this problem, the MNDO based on the modeling of friction torque with neural networks is proposed in this paper. The basic concept of the MNDO is to treat the output of (2) as the unknown friction without considering the dynamic friction during robotic free motion. Then, neural networks are used to establish a map from the joint position and joint velocity to friction by training data collected through an appropriate excitation trajectory and the output of (2).
For (1), assuming that the terms M (q),
Let
When τ
e
xt equals zero,
i.e., there is no external collision force on the robotic maniulatpors, (7) can be
represented as
Notably, when the robot is in free motion, the estimation results without considering
friction can be used to approximate the unknown friction dynamics. Then, the approximation
results can be obtained as follows:
If no a priori knowledge is available, a general neural network structure can be adopted
to generate input-output mapping using the property that a multilayer neural network can
approximate any function based on mild assumptions with any desired accuracy [22]. The nonlinear friction function can be
approximated offline by a feedforward neural network function, and a global friction
approximation with limited training data using neural networks was obtained in [23]. Thus, neural networks are used in this paper to
reconstruct the friction as follows:
Thus, the MNDO is finally proposed here by substituting the results in (9) and (10) into
(5)
NDO
To observe the collision detection performance of the NDO, comparisons are conducted between the NDO and the standard collision detection algorithm GMO. The GMO equation is given below. The comparison includes the collision detection sensitivity, observer robustness and external collision torque estimation accuracy. Joint friction torque in joint dynamics is generally not considered in these comparison simulations. However, the MNDO is used for robot collision detection simulation considering the joint friction torque. All the simulations are conducted in MATLAB/Simulink. The robotic arm model is Puma560, and the robot segmental parameters are listed in Table 1. For simplicity, only the first three joint parameters are listed. Considering the table space limit, the link moment of inertia matrices and mass center coordinates are not given here, but they can be found in [25–28]. The robot controller is used to calculate the torque. The simulation sampling time is 1 ms. The desired trajectory is a cosine curve with initial position q0=[0.5, 0, – 1, 0, 0, 0.5] rad. The position amplitude is – 1 rad, and the frequency is 0.5 Hz.
Inertia parameters of the Puma560 first three joints
Inertia parameters of the Puma560 first three joints
Collision detection sensitivity is the most important index for assessing the performance
of collision detection algorithms. The higher the detection sensitivity is, the more
quickly collisions can be detected, and then robots can make safe reactions as soon as
possible. To compare the detection sensitivities of the GMO and NDO, the collision
detection times of the two methods are compared, and the two effects shown in
III-C are also considered here. Two collisions are added to robot
joints 6 and 3 at 0.5 s and 1.5 s, respectively. When the output of the observers is
higher than the setting threshold, a collision is detected. The simulation results are
shown in Fig. 1. The principle of
setting the collision detection threshold is defined as follows: The collision detection sensitivity comparison simulation of the Puma560 robot
using the GMO and NDO. The external collisions are applied to joint 6 at 0.5 s and
joint 3 at 1.5 s.
Figure 1 shows that the GMO detected the first collision at time 0.51 s; however, the NDO detected the first collision at time 0.501 s. Thus, the NDO detection time was 9 ms faster than that of the GMO for the first collision. In addition, the GMO detected the second collision at 1.513 s; however, the NDO detected it at 1.505 s. Therefore, the NDO detection time was 8 ms faster than that of the GMO for the second collision, and overall, the NDO detection sensitivity is higher than that of the GMO.
In observer-based methods, model uncertainties, such as unknown torque disturbances and
measurement noise, are generally included in the external disturbance estimations and
result in an estimated non-zero external disturbance when the actual external disturbance
τext is zero. This phenomenon causes one problem: the tuning of the
threshold for collision detection becomes difficult to obtain and affects the collision
detection performance. To compare the robustness of the GMO and NDO, a simulation was
conducted considering the following two unideal effects. The robot joint contains an unknown and bounded torque disturbance [-0.3 ∼ 0.3]
N.m. The position and velocity measurement noise are considered. The position noise
amplitude is 0.001 rad, and the frequency is 100 rad/s. The velocity noise amplitude
is 0.005 rad/s, and the frequency is 100 rad/s.
The unideal effects discussed above are enabled for 1 s < t < 3 s. Figure 2 illustrates that both observers work well under ideal conditions, whereas obvious differences appear under unideal conditions. In addition, the robust performance of the NDO is obviously better than that of the GMO for joints 1 and 2 because the NDO has smaller torque fluctuations under unideal effects. For joint 3, the GMO exhibits fluctuations similar to those of the NDO when c is 50. However, when c is 100, the NDO fluctuations become larger because the large c value generates more estimated noise. This phenomenon can be seen clearly for joint 6. For joints 4–6, the fluctuations for the GMO are similar to those for the NDO when c is 50. Additional robust performance comparison data can be found in Table 2. Notably, the NDO with c = 50 displays smaller torque fluctuations from – 0.76 N.m. to 0.74 N.m. in total compared with those of the GMO from – 2.05 N.m. to 2.10 N.m. Therefore, it is concluded that the robustness of the NDO is better than that of the GMO based on selecting the appropriate c.

Robust performance comparison of the Puma560 robot for an actual external disturbance τ ext = 0 at all 6 joints using the GMO and NDO with c = 50 and c = 100. For 0 s < t ⩽ 1 s, the robot is under ideal conditions. For t > 1 s, the robot is under unideal conditions considering the two effects described above.
The torque fluctuations and robust comparison of the GMO and NDO
To compare the disturbance torque estimation accuracy of the GMO and NDO, an estimated
accuracy comparison simulation is conducted here. It should be noted that joint friction
is not considered. It is assumed that the time-varying external disturbance torque model
is designed as
The GMO gain matrix K and NDO gain c can affect the observed accuracy. Thus, for meaningful and equivalent comparison, the gains K and c should be adjusted to achieve satisfactory observation accuracy. Therefore, a tuning method is introduced here. For the diagonal gain matrix K = diag {K1, K2, K3, K4, K5, K6}, a step disturbance torque (–5 N.m.) is sequentially applied to every joint at 0.5 s in the Puma560. Then, K i is adjusted until the constant disturbance torque can be estimated accurately by the observer. For example, K4 for the last joint of the Puma560 is adjusted in Fig. 3, and K6 is determined as 62 after tuning. Using the same method, the tuned K and c values are listed in Table 3.

Observer gain coefficient tuning. The top plot is the tuning of the 6th element K6 of diagonal matrix K for the GMO. When K6 is equal to 35 or 75, the estimated external collision torque is – 4.58 N.m. or – 5.42 N.m., which is higher or lower than the applied step collision torque of – 5 N.m. When K6 is equal to 51, the estimated result is exactly equal to – 5 N.m. The bottom plot is the gain coefficient c tuning for the NDO. Regardless of whether c is equal to 20, 50 or 100, the estimated value is equal to – 5 N.m.
Inertia parameters of the Puma560 first three joints
After tuning the gain coefficients of the GMO and NDO, the external time-varying disturbance estimation errors are shown in Fig. 4. The error data can be found in Table 4. The maximum estimation errors of the first three joints are significantly larger than those of the last three joints for both the GMO and NDO. This difference is mainly because the coefficients b in the first three joints are larger than those of the last three joints in Table 1, which results in a large external disturbance torque. In addition, by increasing the gain coefficient c to 100, the estimation accuracy for the time-varying external disturbance of the NDO is improved. Although increasing c can improve the estimation accuracy for time-varying external disturbances, large c values can result in more estimated noise (as shown in Fig. 2). To find a good balance between high accuracy and low noise, the gain coefficient c of the NDO is selected as 50 in the simulation. Finally, it is concluded that the estimated accuracy of the NDO is equal to that of the GMO for a stepped or constant external disturbance; however, the estimated accuracy of the GMO is better than that of the NDO for a time-varying external disturbance.

The external time-varying disturbance estimation error curve of the Puma560 robot. The top is the estimated error of the GMO, for which the K matrix is equal to diag52,52,52,51.5,51.5,51. The middle and bottom are the estimated errors of the NDO for c equal to 50 and 100, respectively.
External time-varying disturbance estimation errors of the Puma560 robot using the GMO and NDO
The three comparison simulations above indicate that the NDO performs better than the GMO with respect to collision detection sensitivity and robustness. With respect to estimated accuracy, the NDO performs the same as the GMO for an external constant disturbance, but the GMO outperforms the NDO for an external time-varying disturbance. However, the collision detection sensitivity and robustness of the observers are more important than the estimation accuracy in collision detection. In addition, there is only one gain parameter in the NDO, which makes parameter tuning easy. Therefore, the NDO is a better choice than the GMO in robot collision detection.
To obtain MNDO, we must first solve for Neural network training schematic diagram.
Next, we use the MNDO to detect collisions that occur at the robot links. The bounded torque disturbance, measurement noise and delay are also considered. To compare the collision performance of the NDO and MNDO, the simulation results are shown below. For simplicity, only the third joint of Puma560 is shown here. A collision is added at link 3 at time 0.5 s. As shown in Fig. 6, there is a false detection at approximately 0.2 s, and the collision cannot be detected correctly by the NDO because of the existing friction disturbance. A good collision detection signal should be as close to zero as possible when there is no collision. However, the detection signal of the NDO is large and much greater than zero. However, the MNDO can detect the external collision in a short time by setting the threshold to 8. The neural networks accurately estimate the existing friction and improve the collision detection performance of the NDO. Thus, even if a complicated friction model or exact dynamic model is not known, the MNDO can accurately and easily detect an external collision.

The collision detection comparison of the NDO and MNDO in joint 3 of the Puma560.
Experiments setup
To verify the correctness of the proposed algorithm, experiments were performed using the two platforms shown in Fig. 7. Platform 1 is only used in estimation accuracy experiments involving the GMO and NDO. We must compensate for the estimated friction in the controller using the developed driver in this experiment, and compensation is difficult to perform using commercial drivers. The remaining comparison experiments and collision detection experiments with the MNDO are conducted with platform 2. The brushless motor is a Maxon EC-4pole 30, and the gearbox is a Maxon GP 42 C in platform 1. The driver and controller were developed by the authors at the DSP and PC. A built-in PID controller algorithm is used. A link (0.15 m) is directly attached to a 120-watt servo motor (YZ-57BLS120) to form a single-joint system in platform 2. A PC is used as the upper computer, and Modbus communication is established between the PC and the controller (Elmo GOLD-MAESTR001). EtherCAT communication is established between the controller and the driver (Elmo G-SOL WHI10/100EE) to exchange the command and sensor data. The motor position, velocity (numerically differentiated from position data) and current can be fed from the encoder and driver. All the control and sampling periods are set to 1 ms in the experiments.

Two experiment platforms. (a) Platform 1 and (b) Platform 2.
To compare the collision detection sensitivity of the NDO and GMO, the experiment was conducted with platform 2. As shown in Fig. 8, the collision detection time of the NDO, which is 0.988 s, is earlier than that of GMO, which is 1.022 s, according to the threshold set based on the principle in (13). Therefore, the collision detection time of the NDO is 34 ms earlier than that of the GMO, which means that the controller yields safe reactions for handling collisions in short times and enhances the human–robot interaction safety. Overall, the experimental results indicate that the collision detection sensitivity of the NDO is better than that of the GMO, which is an important improvement for collision detection.

Collision detection sensitivity comparison experiment between the NDO and GMO.
To compare the robustness performance of the NDO and GMO, current disturbances from – 0.1 N.m to 0.1 N.m are added to the current signals as current noise. In addition, position noise from – 0.05 rad to 0.05 rad and velocity noise from – 0.5 rad/s to 0.5 rad/s are added to the position and velocity signals, respectively. No external collision is added to the link. The comparison experiment is conducted with platform 2, and the results are shown in Fig. 9. The torque fluctuation range of the NDO is from – 0.024 N.m to 0.020 N.m when c is 0.012. When we increase the value of c to 0.12, the torque fluctuation range of the NDO also increases, ranging from – 0.043 N.m to 0.026 N.m Therefore, a large c decreases the robustness of the NDO. In addition, the torque fluctuation range of the GMO is from – 0.037 N.m to 0.021 N.m, which is larger than that of the NDO when c is 0.012. Thus, the robustness of the NDO is better than that of the GMO. The experimental results are consistent with the simulation results.

Robust comparison experiment between the NDO and GMO.
Because the actual external collision torque is not known, the estimated accuracy comparison method applied differs from that used in the simulations above. We use the NDO and GMO to estimate the joint friction disturbance during motor sinusoidal trajectory motion with platform 1. Then, the estimation results are compensated for by the PID controller. If the trajectory velocity tracking performance of the controller is improved, then the disturbance estimated by the observers is considered accurate. The estimated disturbance results are shown in Fig. 10(a). The friction estimated by the two observers is consistent, except that the friction estimated by the NDO is slightly larger than that based on the GMO at the zero moment. For simplicity, only the velocity tracking errors of the controller after compensation for the friction estimated by the GMO are shown in Fig. 10(b). Notably, the velocity tracking errors of the controller, especially the static errors, are reduced after compensating for the friction estimated by the GMO. In this case, the initial peak velocity errors are mainly caused by the PID controller dynamics tracking. Therefore, it can be concluded that the estimation accuracies of the NDO and GMO are basically consistent in the experiment.

(a) The friction disturbance estimated by the NDO and GMO, (b) The velocity tracking errors after compensating for the friction estimated by the GMO. NC means no compensation.
The neural network training data set used to estimate the unknown friction included 7002 values, and another 5001 data points were used for testing. The collision detection comparison experiment between NDO and MNDO was conducted with platform 2, and the results are shown in Fig. 11. When no collision is applied to the link, the detection signal of the MNDO is closer to zero than that of the NDO because the friction estimated by the neural networks has been compensated for based on (11), as shown in Fig. 11(a). Therefore, the detection signal is cleaner and the controller threshold is smaller, which improves the detection sensitivity. When an external collision is applied to the link at approximately 0.7 s and ends at approximately 1.3 s, as shown in Fig. 11(b), the MNDO can detect the occurrence of a collision earlier than the NDO because the detection threshold of the MNDO (0.05 N.m) is smaller than that of the NDO (0.065 N.m). The collision detection time is 0.793 s based on the NDO. However, the collision detection time is 0.79 s using the MNDO, and this time is 3 ms earlier than that of the NDO. Thus, the MNDO can detect an external collision with higher sensitivity than the NDO, and the collision detection performance of the MNDO is improved compared with that of the NDO.

Comparison experiments between NDO and MNDO. (a) Without external collision, (b) With external collision.
In this paper, the NDO is applied for the first time in robot collision detection because of its excellent collision detection performance, sensitivity and robustness. To verify that the collision detection performance of the NDO is better than that of the classical GMO, the collision detection sensitivity, robustness and external torque estimation accuracy are compared and analyzed for the two observers based on 6-DOF robot simulations and two single-joint platform experiments.
Simulation results show that the sensitivity of NDO is 8 ms∼9 ms faster than that of GMO for the collision. However, the sensitivity of NDO is 34 ms faster than that of GMO in the experiments. Notably, this is an important and great improvement for collision detection application because the controller can have sufficient time to give safe reaction actions. Besides, total torque fluctuation of joints in the simulations are from – 2.05 N.m to 2.10 N.m and from – 0.76 N.m to 0.74 N.m by using GMO and NDO, respectively, which means that the robustness of NDO is better than GMO. In the experiments, the robustness of NDO with torque fluctuation from – 0.024 N.m to 0.020 N.m is stronger than that of GMO with torque fluctuation – 0.037 N.m to 0.021 N.m when torque noise and velocity noise are included. It should be noted that larger gain c will reduce the robustness of NDO. In addition, it is found that the estimation accuracy of these two observers is basically consistent because the velocity tracking performance of the controller was improved through compensating the friction estimated by observers into the developed controller and driver. All the experimental results are consistent with the simulation results. So, it can be concluded that NDO is better than GMO for collision detection. Next, for eliminating the effects of unknown friction on the collision detection performance of NDO, the MNDO is proposed by using neural networks to estimate and predict the friction. By simulation and experimental validation, the detection signal of MNDO is cleaner than that of NDO and smaller threshold can be used in MNDO which can avoid the false collision detection and make the detection time is 3 ms earlier than NDO.
Therefore, the proposed MNDO is more effective for collision detection and it does not depend on exact dynamics model any more. However, the proposed method is only tested in single joint robots and its performance and effect for multi-joints robots need to be verified. So next, the proposed method will be applied to the 7-dof robotic arm which is being developed by authors’ laboratory in the future.
Conclusion
This paper introduced the NDO and proposed the MNDO by feedforward neural networks to be applied to robot collision detection for obtaining better collision detection performance and eliminating the dependence on exact robot dynamics model such as friction disturbance. In addition, simulations and experiments were conducted to compare the performance of NDO with GMO and prove the effectiveness of the proposed algorithm. The following conclusions can be drawn from this study.
The collision detection sensitivity and robustness of NDO is better than GMO. Especially, the collision detection time of NDO is 34 ms faster than GMO in the experiments, which is an important and considerable improvement. In addition, the external torque estimation accuracy of NDO is basically consistent with GMO. So, it is concluded that NDO is better for robot collision detection than GMO. Then, MNDO can eliminate the effects of friction disturbance on collision detection performance by using neural networks. Especially, the collision detection signal of MNDO is cleaner than NDO, which makes smaller detection threshold can be used. Finally, the collision detection time of MNDO is 3 ms earlier than NDO.
Footnotes
Acknowledgments
The authors acknowledge the Major Research Plan of National Natural Science Foundation of China (Grant No. 91648201) and the National Science and Technology Major 04 Special Project (Grant No. 2017ZX04005001).
