1. Introduction
Robots are playing an important role in industrial applications with modern manufacturing development. The scenario of modern manufacturing tasks is more delicate and numerical, thus the man-robot collaboration is necessary. As shown in Figure 1, lightweight robots are a typical device in man-robot collaboration surroundings and have been widely used in assembly [Reference Metzner, Leurer, Handwerker, Karlidag, Blank, Hefner and Franke1], polishing [Reference Husmann, Stemmler, Hähnel, Vogelgesang, Abel and Bergs2], rehabilitation [Reference Liu, Li, Zhu, Zheng and Zhu3, Reference Li, Liu, Li, Sun, Liu and Gu4], and other occasions with the advantages of compact structure, lightweight, stable work, and so on. Man would engage in the above scenarios so that the collision detection function of a lightweight robot is necessary to ensure the safety of humankind. Traditionally, such as in industrial robots or normal robots, the collision detection function is unequipped so that they would integrate the torque or force sensor to sense the external surroundings, which is expensive because of the costs. However, the torque or force generated by the payloads or outer force is relative to the robot state message such as joint current so that the current loop can be deeply studied replacing the torque sensor to decrease the cost. In lightweight robot scenarios, when using the force or current loop as control mode, its dynamic model should be established with some external torque sensor mathematical model to identify the force or torque to improve its performance in collaborative tasks such as collision detection. Hence, in this technical roadmap, the real-time measurement and delicate model of the robot’s joint external torque are vital for a well-behaved lightweight robot study.
There are some mainstream roadmaps in this research field. Foremost, using a force/torque sensor [Reference Cao, Laws and Baena5, Reference Kim, Lee, Kim, Seok and Choi6] mounted at the end effector or base or installing torque sensors at each joint can obtain the robot torque directly. For instance, installing a six-axis force/torque sensor on the end effector can detect external torque directly on the end joint [Reference Kim, Seok, Lee, Kim, Kang, Kim and Choi7], while it cannot detect torque on the other part of the robot, such as force/torque on the arm. Under consideration of this issue, some researchers installed a six-axis force/torque sensor on the robot base to detect external force/torque on the entire robot so that the force/torque on the end joint can be estimated simultaneously [Reference Wang, Liu, Yan, He, Cui and Li8]. However, the payload of the torque/force sensor limits the size and weight of the robot equipped on the sensor, moreover, the big payload of this kind of sensor would cost too much for the entire device and the algorithm based on the torque sensor would be more difficult. Another solution is artificial robot skin for robots [Reference Cheng, Dean-Leon, Bergner, Olvera, Leboutet and Mittendorfer9–Reference Zhong, Zhao, Liu, Li, Kan and Feng11], but large-area skin patches would be expensive. To reduce the cost of external torque detection, using existing sensors in the robot such as joint encoders and current sensors/loops to design an algorithm identifying external torque without an external force/torque sensor, which is efficient, highly integrated, and cheap. Among the methods without external force/torque sensors, momentum observer (MOB) [Reference Han, Xu, Li and Kang12, Reference De Luca and Mattone13] based on the dynamic model is widely used, which can avoid introducing acceleration terms with noise and delay [Reference Lee and Song14]. However, the identification of dynamic parameters and numerical differentiation of position can lead to the model’s uncertainties, which affect the estimation accuracy of external torque, because these changes can be regarded as external disturbances, which are difficult to decouple [Reference Briquet-Kerestedjian, Makarov, Rodriguez-Ayerbe and Grossard15]. Data-driven machine learning [Reference Park, Kim, Park and Park16, Reference Parvaresh and Moosavian17] and statistical algorithms have a big advantage in handling model uncertainties by using an optimal and well-trained model, which can effectively identify and understand complex correlations within data when the precise physical model is hard to build.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig1.png?pub-status=live)
Figure 1. Light-robot application in industrial scenery.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig2.png?pub-status=live)
Figure 2. Diverse applications of joint modules.
This paper introduces an external torque estimation algorithm based on the BP Neural Network (BPNN). Before applying the BPNN model, it is trained using measurable joint state data and torque sensor data. Once trained, the BPNN can accurately estimate external torque based solely on joint state data, eliminating the need for costly torque sensors. Furthermore, this approach also eliminates the reliance on a physical model, reducing the impact of model uncertainties on torque estimation. This algorithm is meaningful for the current lightweight robots modular design and some issues also should be mentioned as follows: Firstly, the joint can be assembled into different robots such as lightweight robots, medical robots, and so on according to its workspace, flexibility, application areas, and payload requirements. For example, TECH robot in Figure 2, a Chinese robot brand adopt the modular design to assemble the different robots. This modular design allows each joint to operate independently, making it straightforward to apply the external torque estimation method, designed for individual joints, to the entire system. Secondly, each of the joints is different in choosing the different power motor, reducer, mechanism, and so on, and the joints should be tested by the method before integrating into the whole arm to ensure its validation. Lastly, the modular design method makes it possible to achieve the part of the design of the robot becoming a standard product (the robot joint modules) and can be manufactured in standardization administration.
Section 1 introduces the background and related work to relative research. The external torque estimation based on the physic model is introduced by the order of the robot dynamic model, the parameter identification method in Section 2, and the author summarized the first-order MOB algorithm which is the foundation of the robot dynamic model in the appendix for better understanding the method mentioned in this article. Further, a physic-free model for estimating external torque is in Section 3. Section 4 designs an experimental platform to verify the above two methods and the parameter identification results based on this experiment are analyzed to compare the physics-based model and physic-free model in Section 5. Finally, Section 6 summarizes this work and proposes future work for torque estimation technology.
2. External torque estimation based on physical model
Among the physics-based model research algorithms for estimating external torque in robots, the MOB is the one with the best performance [Reference Haddadin, De Luca and Albu-Schaeffer18]. The classic first-order MOB always needs two assumptions [Reference Garofalo, Mansfeld, Jankowski and Ott19]: the dynamic model is perfectly known and the friction torque is negligible or known. Therefore, this section will focus on obtaining the robot’s dynamic model (including the friction model), primarily addressing the aspects of modeling and parameter identification. Additionally, the appendix introduces some foundations of the MOB algorithm based on the physical dynamic model for a better understanding of the method of this article. At the end of the paper, a comparison is made between the performance of the MOB algorithm and the BPNN algorithm (physic-free model) in external torque estimation.
2.1. Physical dynamic model
Use the Lagrangian approach to establish the robot dynamic model.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn1.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn2.png?pub-status=live)
where
$M(q)$
,
$C(q,\dot{q})$
, and
$G(q)$
represent the inertia matrix, the Coriolis matrix, and the gravity matrix, respectively,
$q$
,
$\dot{q}$
, and
$\ddot{q}$
represent the joint position, joint velocity, and joint acceleration, respectively,
$\tau _{e}$
is the external torque applied at the end of the joint,
$\tau$
is the drive torque of joint module which is proportion of drive current according to Eq. (2), and
$K_{t}$
is the torque coefficient.
For a lightweight robot, the whole body can be regarded as an integration of each joint module. Hence, the single joint module’s model and its control are the foundation of the whole robot’s performance. For the joint module, a test platform is established as shown in Figure 3 which includes the motor, reducer, coupling, torque sensor, and load which can simulate different external work conditions.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig3.png?pub-status=live)
Figure 3. Schematic diagram of a single joint system.
Considering joint friction, the dynamic model in Figure 3 is represented by Eq. (3). Since the motor rotates around a fixed horizontal axis, both the Coriolis matrix
$C(q,\dot{q})$
and the gravity matrix
$G(q)$
in Eq. (1) are zero. The inertia matrix
$M(q)$
has only one term,
$I_{zz}$
, which represents the system’s moment of inertia about the z-axis.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn3.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn4.png?pub-status=live)
where
$\tau _{f}$
is the friction torque, described by the classical Coulomb-viscous friction model, as shown in Eq. (4), and
$f_{c}$
and
$f_{v}$
represent the coefficient of Coulomb friction and viscous friction, respectively.
However, some issues should be mentioned. The Coulomb-Viscous friction model is only suitable for describing simple frictional behaviors. However, in practical applications, friction forces are often more complex. The Coulomb-Viscous model has limitations when addressing these complexities in unstable or nonlinear friction phenomena. For instance, the friction force exhibits significant variation across different velocity ranges, the Stribeck effect [Reference Liu, Wei, Ni, Lu, Zhang and Li20]. It’s difficult for the traditional Coulomb friction model to accurately capture this nonlinear characteristic, especially in low speeds or static states, where friction forces may exhibit dramatic changes.
2.2. Parameter identification of physical dynamic model
The single joint module dynamic model which is described as Eq. (3) is linear so that its dynamic parameters can be identified using the least squares method (LSM) directly. The core idea of LSM is to minimize the sum of squared residuals between the actual observed values and the model estimates to seek optimal parameters fitting model. To promote the efficiency of identification, the joint mechanism must be operated without a load, in other words,
$\tau _{e}$
is zero. The dynamic model can be further represented in Eq. (5) according to Eq. (3) and Eq. (4).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn5.png?pub-status=live)
where
$Y(\dot{q},\ddot{q})$
is the measurement matrix, specifically
$[\ddot{q},\mathrm{sgn}(\dot{q}),\dot{q}]$
, and
$P$
is the parameter identification matrix, specifically
$[{I_{zz}},{f_{c}},{f_{v}}]^{T}$
.
Then use Eq. (6) to identify parameter identification matrix.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn6.png?pub-status=live)
The parameter identification procedure uses the robot’s trajectory experiments to form the datasets. Hence, the excitation trajectory design would influence the accuracy of robot dynamic parameter identification [Reference Swevers, Ganseman, Tukel, d. Schutter and Brussel21]. The sampling datasets furtherly form the coefficient matrix
$Y(\dot{q},\ddot{q})$
. While the condition number of coefficient matrix is large or ill-conditioned condition number, the dynamic model would be numerical sensitive, which means tiny input’s changes (robot state variables’ change) would affect the output’s accuracy (torque’s accuracy in Eq. (5). Therefore, the excitation trajectory should be designed with its coefficient matrix having a small condition number, specifically a well-conditioned condition number to reduce errors and uncertainties caused. Additionally, the excitation trajectory should be periodic and smooth for repeatable robot motion so that the Fourier series [Reference Park22], composed of sine and cosine functions with the periodic feature and continuous higher-order derivatives is designed to meet the above requirements. In this article, a third-order Fourier series, as shown in Eq. (7), is chosen as the excitation trajectory for dynamic parameters identification.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn7.png?pub-status=live)
where
$t$
is time,
$a$
is a constant,
$b_{n}$
and
$c_{n}$
are the Fourier coefficients,
$\omega _{f}$
is the angular frequency.
To ensure that the joint mechanism adheres to its hardware’s physical motion limitations while executing the trajectory, and robot’s smooth start or stop, the boundary condition of the excitation trajectory is shown in Eq. (8).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn8.png?pub-status=live)
where
$\dot{q}_{max}$
is the upper limit of the joint angular velocity,
$t_{0}$
is the initial time of the trajectory, and
$t_{f}$
is the final time of the trajectory.
3. External torque estimation based on physic-free model
The appendix introduces a physics-based model external torque estimation method according to the classical MOB mechanism, which has a complicated mathematical model and is sensitive to the excitation trajectory. Thus, there is an intuition to find a physic-free model to build up an external torque estimation. According to the previous study, the dynamic model encompassing parameters identification error and joint friction has uncertainties that is nonlinear, so an intelligent algorithm may have a better fitting feature. Through the analysis of the mechanics and physics of the robot’s joint, the external torque is relative to some joint’s state such as current, velocity, and acceleration. In addition, this kind of joint is periodic so the joint value would be less relative to the joint torque. Following the mechanism of Figure 3, a torque estimation prototype is built up, which is shown on the left of Figure 4. Through the PLC controller, the robot joint state such as current, velocity, and acceleration can be sampled, and these datasets can form the input of the physic-free model, which estimates the external torque. In this article, a BPNN model is designed to connect the external torque and robot joint state by its powerful nonlinear predictive through supervised machine learning, whose core idea is shown in Figure 4. BPNN is a multilayer feedforward neural network trained by an error back propagation mechanism, whose core structures are data processing, BPNN design, and its training methods. The following section focuses on these aspects of study and design serving our research objects.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig4.png?pub-status=live)
Figure 4. Estimating external torque model by BPNN.
3.1. Data processing of physic-free model
To improve the data quantity of our external torque estimation BPNN model, data preprocessing is necessary to filter some error values such as outers and normalize data to promote the training performance. The specific filtering method is described in Section 4.2. Besides, the data preprocessing is performed using linear normalization as shown in Eq. (9) and its denormalization is shown in Eq. (10).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn9.png?pub-status=live)
where
$y$
is the original data,
$y_{max}$
is the maximum value of
$y$
,
$y_{min}$
is the minimum value of
$y$
, and
$y^{\mathrm{*}}$
is the preprocessed data.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn10.png?pub-status=live)
3.2. BPNN structure in physic-free model
The BP neural network of physic-free model is made of an input layer, several hidden layers, and an output layer as Figure 5 shows. The output layer and input layer’s neurons are determined by the dimension of input data (three dimensions which are the velocity, acceleration, and current) and output data (one dimension which is the external torque) respectively.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig5.png?pub-status=live)
Figure 5. BP neural network of Physic-Free Model.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig6.png?pub-status=live)
Figure 6. The principle of neuron’s mechanism.
In the hidden layers, every neuron has its inputs and outputs. For a neuron, each of the inputs is summarized together by the linear combination and furtherly functioned by a nonlinear transformation to output its result as Eq. (11) shows. The principle of the
$i^{th}$
neuron in the
$m^{th}$
layer is designed in Figure 6.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn11.png?pub-status=live)
where
$x_{m}^{j}$
is the output of the
${neuron}_{m}^{j}$
,
$f_{m}$
is the activation function of
$m^{th}$
layer, which is always a nonlinear function.
$\omega _{m}^{i,j}$
is the weight between
${neuron}_{m}^{j}$
and
${neuron}_{m-1}^{i}$
, and all weights of the neural network are shown in Eq. (12).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn12.png?pub-status=live)
While the neuron principle is determined, the number of hidden layers and the number of neurons in each layer need to be designed. The more complex the hidden layers, the stronger the network’s fitting ability, but excessively complex hidden layers may lead to overfitting, reducing the generalization ability of the network [Reference Karsoliya23]. The design of the hidden layers mostly relies on empirical knowledge and can refer to Eq. (13).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn13.png?pub-status=live)
where
$N_{m}$
,
$N_{in}$
, and
$N_{out}$
represent the number of neurons in the hidden layers, input layer, and output layer, respectively,
$d$
is a constant between 0 and 10. After determining the structure of a network, training is continuously needed to obtain the optimal parameters of the network.
3.3. BPNN training in physic-free model
To verify the model in Section 3.2, 85% of data sets with a size of
$N_{tr}$
are used for network training, and the other part with a size of
$N_{val}$
is used for verifying the network performance, which are the training set and the validation set, respectively. The training process of BPNN includes two parts: forward propagation and backward propagation, and the aim of the training is to optimize the initial weights until the optimal solution is solved continuously. In our model, all of data are processed before which are
$[{I^{\mathrm{*}}},{\dot{q}^{\mathrm{*}}},{\ddot{q}^{\mathrm{*}}}]^{T}$
to
${\tau _{p}}^{\mathrm{*}}$
. For the forward propagation, each set of data inputs into the network, passes through the hidden layer in order, and finally goes through the output layer to obtain the estimated result
${\tau _{p}}^{\mathrm{*}}$
according to Eq. (11) and Eq. (14).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn14.png?pub-status=live)
where
${\tau _{p}}^{\mathrm{*}}$
is the output of the output layer neuron. For the convenience of subsequent tasks, the mathematical operation
$\Phi$
is determined for reshaping
$\omega$
into a column vector
$\Omega$
of length
$n$
in Eq. (15).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn15.png?pub-status=live)
The actual
$\tau$
is processed by normalization to nominal
$\tau ^{\mathrm{*}}$
in this model. Furtherly, an error model is designed in Eq. (16). To drive model training, the initial weights
$\Omega ^{0}$
are randomly generated within the range of 0 to 1, and the loss function based on output error is designed in Eq. (17).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn16.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn17.png?pub-status=live)
where
$e_{r}(\Omega )$
is the error between the actual value
$\tau ^{\mathrm{*}}$
and the estimated value
$\tau _{p}^{\mathrm{*}}$
of the
$r^{th}$
sample,
$L(\Omega )$
is the loss function, which uses the mean square error.
Using Levenberg-Marquardt algorithm [Reference Hagan and Menhaj24] for backpropagation to optimize loss problem, the optimal solution
$\Omega ^{opt}$
can be calculated as Eq. (18) shows. There are some different optimization algorithms such as gradient descent, Newton-Euler, and LM which are shown in Eq. (19), Eq. (20), and Eq. (22) with the weights updating condition
$L(\Omega ^{k+1})\lt L(\Omega ^{k})$
.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn18.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn19.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn20.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn21.png?pub-status=live)
where
$\Omega ^{k+1}$
is the specific value of the parameters in the neural network after the iteration
$(k+1)^{th}$
,
$g(\Omega ^{k})$
is the search direction of
$L(\Omega ^{k})$
at point
$\Omega ^{k}$
,
$p$
is the step size,
$H(\Omega ^{k})$
is the Hessian matrix of
$L(\Omega ^{k})$
at point
$\Omega ^{k}$
.
Reasonable step size
$p$
is vital for nonlinear problem convergence. Generally, a big
$p$
could hinder convergence and vice versa [Reference Hagan, Demuth and Beale25]. For backpropagation, there are Newton’s method and the LM algorithm. Newton’s method improves convergence speed by using the Hessian matrix of the loss function to determine the step size. However, the calculation of the Hessian matrix requires computing the second derivative of the loss function, which incurs substantial computational costs. However, the Hessian matrix might not be positive definite, which could cause the algorithm’s instability. Therefore, Newton’s method is not typically used as the neural network backpropagation algorithm. The LM algorithm combines the advantages of gradient descent and Newton’s method, improving convergence speed and ensuring stability. Its core idea is to adjust the step size by approximating the Hessian matrix, which makes the LM algorithm have better search performance and quickly converge to the optimal solution. Therefore, this paper chooses the LM algorithm for neural network backpropagation as Eq. (22) to Eq. (25) show.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn22.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn23.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn24.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn25.png?pub-status=live)
where
$J(\Omega ^{k})$
is the Jacobian matrix,
$e(\Omega ^{k})$
is an
$n$
-dimensional column vector composed of whole
$e_{r}(\Omega ^{k})$
,
$\mu$
(MU) is a damping factor, which is divided by the constant
$\beta$
when the performance of the neural network increases, otherwise
$\mu$
will be multiplied by
$\beta$
,
$U$
is an identity matrix, adding
$\mu U$
is to ensure that the matrix is positively definite.
Neural networks use forward propagation and backward propagation to adjust their parameters. In practical training, it is essential to establish stopping criteria by consideration of iterations, efficiency, synchronicity, overfitting, and so on. In engineering applications, there are five criteria as follows.
-
1.
$k\geq k_{{target}}$
-
2.
$L(\Omega ^{k})\leq L_{{target}}$
-
3.
$| g(\Omega ^{k})| \leq g_{{target}}$
-
4.
$\xi \geq \xi _{{target}}$
-
5.
$\mu \geq \mu _{{target}}$
where
$k$
is the iteration, setting the maximum iteration
$k_{{target}}$
to prevent training from continuing indefinitely. The neural network training approaches the optimum when
$L(\Omega ^{k})$
achieves sufficiently small, the gradient magnitude
$| g(\Omega ^{k})|$
achieves sufficiently small, or
$\mu$
achieves sufficiently large. Additionally,
$\xi$
(VAL CHECK) is the number of consecutive increases in validation set error, which is used for preventing overfitting for the neural network. When
$\xi$
continues to rise
$\xi _{{target}}$
times, it indicates a decline in the performance of the neural network, so the training should be stopped.
4. Experiment
4.1. Experimental platform
A joint’s external torque testing platform is furnished as shown in Figure 7 to compare the physics-based model and physic-free model, which mainly consists of three parts: joint module, torque sensor, and powder brake. The joint module consists of a motor, harmonic reducer, and hardware to drive the actuator motion and monitor state variables, and the powder brake supplies a stable payload to simulate actual external torque, and the torque sensor records the value of different real-time external torque. Specifically, the experimental platform consists of six devices and its information as shown in Table I, in which there is a joint module (integrates a harmonic reducer, frameless torque motor, incremental encoder, and servo driver), Beckhoff controller and EL3064 (drives the actuator and receives the external torque information from the sensor), NCTE torque sensors, the powder brake and its tension controller (supplies the stable external torque) and power supply.
Table I. Characteristics of experimental platform.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_tab1.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig7.png?pub-status=live)
Figure 7. Experiment platform.
4.2. Experimental principle
Figure 8 represents the experimental principle: the PC sends control commands following the excitation trajectory to the Beckhoff controller to drive the joint module motion. Then powder brake will work to generate different external torques by changing its control voltage signal. Meanwhile, the corresponding external torque value can be measured by the torque sensor, which is the analog voltage signal that can be converted into a digital signal through EL3064 and then transmitted into an actual physical quantity by Eq. (26). The joint data
$I,\dot{q},\ddot{q}$
in Beckhoff controller and external torque
$\tau _{e}$
are collected at a sampling frequency of
$1000\,Hz$
into the PC simultaneously. Subsequently, design a second-order low-pass Butterworth filter [Reference Proakis26] with a cutoff frequency of
$10\,Hz$
, whose frequency response characteristics in the z-domain can be represented by the transfer function in Eq. (27), where the coefficients are obtained using the MATLAB “butter” function [27]. Then, apply this transfer function to filter those data both in forwards and backwards procedure. The filtered data can be further used for experimental result analysis.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn26.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn27.png?pub-status=live)
Table II. Excitation trajectory parameters.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_tab2.png?pub-status=live)
5. Experimental results
5.1. Experimental results of parameter identification
Before comparing the physics-based model and the physic-free model of torque estimation, the physical model method as well as physics-based model should be tested to show its performance. Hence, excitation trajectories are designed to identify the parameters by the MOB, and the coefficients and position figure of the identification trajectory and the validation trajectory are shown in Table II and Figure 9, respectively, which are with well-conditioned condition numbers and joint velocity limits
$\dot{q}_{max}$
of
$\frac{\pi }{3}/s$
and
$\frac{\pi }{6}/s$
according to the Eq. (7) and Eq. (8).
Table III. Identified dynamic parameters of external torque estimation based on physical model.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_tab3.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig8.png?pub-status=live)
Figure 8. Experimental schematic diagram.
Table IV. The error evaluation of different trajectories by identified dynamic model.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_tab4.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig9.png?pub-status=live)
Figure 9. Excitation trajectory with the parameters in Table II.
Using the identification trajectory, and collecting data sets, the identified dynamic parameters can be calculated by Eq. (6) and the results are shown in Table III.
Then these identified dynamic parameters can construct the model and use the identification trajectory and validation trajectory to test its accuracy with the Eq. (2). The results are shown in Figure 10. From Figure 10, it’s obvious that the estimation accuracy is better in the identification trajectory compared to the validation trajectory. The reason is that the parameter identification is based on the identification trajectory. Moreover, the fitting procedure shows that drive torque estimation by the identified dynamic model has a bad generalization ability, proving that some lightweight robots’ drag-and-drop teaching sometimes behaves badly when the operators drag different joints with different forces.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig10.png?pub-status=live)
Figure 10. Joint driving torque estimation in different excitation trajectory. (a) Identification trajectory and (b) validation trajectory.
Furthermore, the errors in different excitation trajectories are compared in Figure 11. The results show that the huge impulse errors always exist around the change of velocity direction, in which the velocity is around zero, as well as around the orange point zone in Figure 11. Table IV shows different evaluation way with the RSME and R-squared, which reveals that the identified dynamic model in identification trajectory has better performance with smaller RSME value and larger R-squared value.
Table V. The parameters of external torque estimation based on physic-free model.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_tab5.png?pub-status=live)
Table VI. The error evaluation by MOB model and BPNN model with the same identification trajectory.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_tab6.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig11.png?pub-status=live)
Figure 11. Estimation errors of different trajectory by identified dynamic model.
5.2. Comparison of external torque estimation with two model
To improve the model generalization ability by the BPNN method, it is crucial to establish a diverse training set, collected by many different scenarios and variations. In our experiments, there are six control groups with different voltages (
$1V$
,
$2V$
,
$3V$
,
$4V$
,
$5V$
,
$6V$
) of powder brake, corresponding to different external torque for the joint module from small to large. Then select the identification trajectory in Figure 9 as the excitation trajectory and use the control groups with
$1V$
,
$2V$
,
$3V 5V$
, and
$6V$
as training sets with
$4V$
as a testing set to build up the BPNN model. Through the training, the model parameters are shown in Table V.
Compare physics-based model (MOB model) and physic-free model (BPNN model) with the identification trajectory with some payload (
$4V$
of powder brake) to verify the accuracy. In this MOB model, the proportion coefficient
$k_{p}$
is 10. The estimated torque by different model is shown in Figure 12, in which the BPNN model has better fitting ability compared to the MOB model.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig12.png?pub-status=live)
Figure 12. Estimated torque by MOB model and BPNN model with same identification trajectory.
Furthermore, the error of different model is shown in Figure 13, which also shows that the huge impulse errors are around the change of velocity direction (orange zone in Figure 13). Table VI shows different evaluation way with the RSME and R-squared, which reveals that the BPNN model has better performance with smaller RSME value and larger R-squared value.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig13.png?pub-status=live)
Figure 13. Estimated torque error by MOB model and BPNN model with same identification trajectory.
6. Conclusion and discussion
From the experiment’s results, it’s obvious that the BPNN model has better generalization ability compared to the MOB model. Meanwhile, the BPNN model is more accurate in estimating external torque. From this study, the reasons for that are origin from the parameter identification errors in the dynamic model, the vibration of the first-order MOB’s position derivative, the MOB model’s overfitting in identification trajectory (in other words, the worse generalization ability of the MOB model in validation trajectory) and so on. However, this experiment also has some shortcomings at the beginning of joint module motion or its velocity is nearly zero, it’s hard to distinguish whether the joint is stopping or moving at a very small velocity. If in the stop state, the dynamics of the robot are invalidated because the torque is equal to the payload. Hence the MOB model cannot be used for estimating. Besides, in the very short duration time between stops to an obvious motion of the joint module (usually 0.1 s in this experiment every single time), friction shows obvious nonlinear characteristics compared to the motion state. However, this period is short and happens rarely so the training physic-free model or BPNN model in this period behaves badly for lacking sufficient data. Hence, the BPNN model also has some impulse errors around the change of velocity directions. Future work will focus on the distinguishment of torque under the robot’s different states so that a more delicate model can be built to calculate the external torque.
Generally, this paper introduces an external torque estimation algorithm based on the BPNN to reduce the estimation error, which is a physic-free model without torque sensors, as well as an economical way. This method avoids uncertainties by the physical model, which encompasses parameters identification error and joint friction, and enhances the accuracy of the estimation. Compared to the classical physical dynamics, the first-order MOB, the BPNN model for external torque estimation also improves the whole accuracy, mostly especially near the velocity direction change areas. The external torque estimation based on BPNN will be further studied in the more-axis robot to solve much more collaborative scenarios.
7. Future work
In the future, the research will focus on the adaptability of the BPNN model for lightweight robotic systems and the further impact of nonlinear friction on its performance especially in the same series of joint modules. Additionally, it’s vital to improve the precision of the BPNN model sustainably in estimating joint external torque, especially the influence of nonlinear friction at a very low joint velocity, which enhances the model’s performance across a range of motion states.
Author contributions
Tao Zhang and Huapeng Wu conceived and designed the study. Haochong Li and Yongping Shi conducted data gathering. Xuanchen Zhang and Jun Zhang performed statistical analyses. Tao Zhang and Haochong Li wrote the article.
Financial support
This project is funded by the National Natural Science Foundation of China (No. 12105070), the Anhui Provincial Key Research and Development Project (No. 2022e07020027), and the Fundamental Research Funds for the Central Universities (NO. JZ2024HGTB0221). Thanks to all members who helped with this research.
Competing interests
The authors declare no competing interests exist.
Ethical approval
None
Appendix A. Momentum observer of physical dynamic model
MOB is a classic algorithm used for external torque estimation in robotics. The external torque can be calculated by inverse dynamics described in Eq. (1), but the inaccurate acceleration term of the dynamic model, which is the real-time second derivative of the joint position causing the large noise and delay, can lead to the wrong estimates. The first-order MOB as shown in Figure A1 only requires the velocity, a first derivative of the joint position, and drive torque of the joint module as inputs to compute the joint external torque. The generalized momentum of the robot is defined in Eq. (3).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn28.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn29.png?pub-status=live)
where
$M(q)$
,
$C(q,\dot{q})$
, and
$G(q)$
are represent the inertia matrix, the Coriolis matrix, and the gravity matrix, respectively,
$q$
,
$\dot{q}$
, and
$\ddot{q}$
are represent the joint position, joint velocity, and joint acceleration, respectively,
$\tau _{e}$
is the external torque applied at the end of the joint,
$\tau$
is the drive torque of joint module,
$\tau _{f}$
is the friction torque, described by the classical Coulomb-viscous friction model, as shown in Eq. (2), and
$f_{c}$
and
$f_{v}$
represent the coefficient of Coulomb friction and viscous friction, respectively.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn30.png?pub-status=live)
In the robot dynamics model,
$M(q)$
is a positive definite symmetric matrix, and the matrix
$\dot{M}(q)-2C(q,\dot{q})$
is a skew-symmetric matrix. This can be expressed mathematically as follows
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn31.png?pub-status=live)
The time derivative of Eq. (1) can be obtained using Eq. (1) and Eq. (4) as follows
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn32.png?pub-status=live)
Define the residual term
$r$
to detect external torque.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn33.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn34.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn35.png?pub-status=live)
where
$p(0)$
and
$p(t)$
are the initial value and final value of the generalized momentum, respectively, and
$k_{p}$
is a proportion coefficient that is always greater than 0. Substitute Eq. (5) into Eq. (8) and differentiate both sides concerning time.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn36.png?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_fig14.png?pub-status=live)
Figure A1. First-order MOB model.
Apply the Laplace transform to Eq. (9) results in
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20250204035648331-0736:S0263574725000086:S0263574725000086_eqn37.png?pub-status=live)
It is evident that
$k_{p}$
is sufficiently large and
$r$
serves as a qualified observation of the external torque
$\tau _{e}$
.