Abstract
Regardless of the type of application, robot manipulators are frequently subjected to various disturbances, including unmodeled dynamics, uncharacterized friction, unexpected collisions, compliant interaction forces, and varying payloads. Disturbance observers play a crucial role in mitigating and counteracting these perturbations. They serve as force/torque (F/T) estimators in situations where F/T sensors are unavailable for force control applications or in the design of cost-effective robotic systems for interaction tasks. In this paper, we introduce a nonlinear and velocity-independent perturbation observer that represents an enhanced version of the classic Mohammadi’s approach. Here, velocity is estimated through the filtering of robot joint positions. The efficacy of the proposed method is substantiated through a Lyapunov convergence analysis of perturbation/force and velocity estimation errors. Furthermore, the method’s performance is validated through a series of simulation and experimental tests.
Similar content being viewed by others
Avoid common mistakes on your manuscript.
1 Introduction
Robotic systems have gained significant popularity due to their capacity for automating processes, extending beyond industrial environments to encompass domestic services and medical applications [1, 2]. Owing to the growing complexity of tasks executed by robots, an expanding array of sensors is now employed within robotic systems, consequently leading to elevated costs [3, 4]. In response, numerous research groups have undertaken initiatives to investigate alternatives for efficient sensor signal processing [5, 6] or the adoption of strategies aimed at reducing the number of sensors through the use of observers [7, 8].
It is well known that robot manipulators are highly non-linear and coupled systems that are exposed to different types of perturbations, including unmodeled dynamics, friction, unknown payloads and interaction forces [9]. Such disturbances have the potential to significantly impact the performance of control systems, particularly when using non-robust control approaches [10,11,12]. A commonly employed technique for enhancing the robustness of control systems involves compensating for disturbances by incorporating an additional term to estimate the lumped perturbations within any nominal control framework.
Disturbance observers can be categorized into two main groups: the linear disturbance observers (LDOBs) and the nonlinear disturbance observers (NDOBs) [13]. In these techniques, the process begins with the reconstruction of the robot’s inverse dynamics through the measurement of its motion. Subsequently, this reconstructed dynamic information is subtracted from the known forces/torques applied to the robot. Next, the resulting residue is processed using a linear filter in LDOBs or a non-linear filter in NDOBs, ultimately yielding estimates of the unknown forces/torques or lumped disturbances [14].
Recently, the research in the field of disturbance estimators has shifted its focus towards NDOBs due to their enhanced performance when applied to nonlinear systems, outperforming LDOBs. The structure of dynamic equations permits the classification of NDOBs into two broad categories: basic and those based on sliding modes [15,16,17]. While sliding-mode based observers do achieve convergence in finite time, the tuning process is more intricate compared to the basic approach because it necessitates the selection of a greater number of gain parameters [12, 18]. Furthermore, the common occurrence of chattering in sliding-mode NDOBs adds complexity to their analysis. To address this phenomenon, second-order sliding mode NDOBs were introduced, albeit at the cost of increasing the number of parameters that need to be tuned [2]. In an effort to circumvent the complexity associated with the structure and tuning procedures of sliding-mode-based NDOBs, this work has opted for the basic approach.
Numerous disturbance observer techniques have been introduced in the robotics and mechatronics literature, as detailed in references [13, 19, 20]. Such observers serve a dual purpose, not only for rejecting perturbations but also for estimating and controlling interaction forces in both industrial and medical robotic applications. To mitigate the expenses associated with robotic systems for interaction tasks, there have been proposals to employ virtual force sensors based on disturbance estimators as a substitute for the conventional F/T sensors [21, 22]. Despite the variety of proposed solutions, Mohammadi’s basic scheme [23] remains a frequently employed and referenced approach. This can be attributed to its versatile formulation suitable for applications with diverse kinematic structures, characterized by a lack of restrictions on the number of degrees of freedom (DOF). Moreover, it eliminates the requirement for measuring joint acceleration and offers straightforward tuning, however, it is necessary to compute the inverse of the inertia matrix [24, 25]. For example, in [26] this NDOB is employed to estimate end-effector forces and torques within an admittance-controlled wheeled mobile manipulator, facilitating mobility assistance while obviating the necessity for an expensive F/T sensor. In [11], instead of using F/T sensors in a non-linear teleoperation control system, which is susceptible to variable time delays, Mohammadi’s NDOB serves as a virtual F/T sensor for both the master and slave robots. On the other hand, in [15], the NDOB is employed to estimate and compensate model uncertainties and external disturbances in an underwater multilateral teleoperation system. In [10], Mohammadi’s NDOB is combined with a finite time controller that leads to a robust tracking control structure.
When formulating an NDOB for force/torque estimation in joint space, the requirement for the inverse of the Jacobian matrix arises. Therefore, in [27], a Cartesian NDOB inspired by Mohammadi’s observer is introduced to circumvent this calculation. This NDOB is employed to estimate external forces within a nonlinear teleoperation system that is controlled by an adaptive force-position controller. Some other studies focus on estimating external forces and torques using Kalman Filters, which are designed according to the robot’s dynamic equations. Typically, such research presents experimental results, yet they often lack a formal convergence analysis, such as a Lyapunov stability analysis [28, 29]. While the generalized momentum observer (GMOB) is an alternative technique designed for estimating disturbances and can also be applied to estimate external torques. Its implementation does not necessitate the measurement of joint accelerations. However, it assumes that velocity is a measurable variable. A distinctive feature of GMOB is that it eliminates the need for calculating the inverse of the inertia matrix [30, 31].
In contrast to schemes based on Mohammadi’s NDOB, certain disturbance observers are designed to incorporate supplementary information related to the robot’s motion, such as motor currents. For instance, in [21, 32], the authors present an application of force control using a virtual sensor for a 7-DOF robot equipped with both position and motor current sensors. Other force estimators are devised for implementation in robots equipped with torque sensors in all joints. For example, in [33], the authors introduce an estimator for external torque that exclusively relies on motor-side information, employing torque residual equations as the basis.
Given the escalating complexity of robotic tasks involving human–robot interaction and collaboration, there is an imperative need for control systems that prioritize both security and stability. Additionally, there is a growing demand for more accessible robotic systems capable of executing intricate tasks with minimal sensor reliance. Consequently, the central focus of this work is on addressing as primary challenge: the development of a virtual F/T sensor for robots equipped with only position sensors.
Mohammadi’s NDOB structure necessitates the measurement of joint velocity for its practical implementation, rendering it unsuitable for robotic systems equipped solely with joint position sensors. In practical applications, the estimation of velocity-dependent dynamic terms becomes necessary through numerical methods. However, this modification lacks formal analysis to guarantee the convergence of estimation errors [30]. This paper introduces an innovative structure that enhances the basic Mohammadi’s NDOB by eliminating the requirement for joint velocity measurements. The proposed structure incorporates an auxiliary subsystem for estimating joint velocity through filtering of robot joint positions, a key element integrated into the convergence analysis, supported by an appropriate Lyapunov function. To the best of our knowledge, no similar approach has been presented to date with a structure as straightforward and easily tunable as the one proposed in this study. Hence, our proposal holds both theoretical and practical significance, which can be succinctly summarized through the following key points:
-
It estimates both external contact or friction forces and the robot joint velocity.
-
The observer convergence is underpinned by a rigorous stability analysis following the Lyapunov framework.
-
The observer architecture requires solely the measurement of joint positions and the simple tuning of a limited number of parameters.
-
Experimental validation affirms that the observer’s performance is comparable to other state-of-the-art schemes, despite having a simpler structure and requiring fewer sensors.
2 Preliminaries
In this paper, scalars, vectors and matrices are represented as \(x \in {\mathbb {R}}\), \(\varvec{y}\in {\mathbb {R}}^n\) and \(\varvec{A}\in {\mathbb {R}}^{n \times m}\), respectively. The origin of \({\mathbb {R}}^n\) is denoted by \({\varvec{0}}_n\), while the \(n \times n\) identity matrix is represented as \(\varvec{I}_n\). The Euclidean norm of vectors and the induced norm of matrices are denoted by \(\left\| {\varvec{y}}\right\| =\sqrt{\varvec{y}^T\varvec{y}}\) and \(\left\| {\varvec{A}}\right\| =\sqrt{\lambda _{\textrm{max}}\left\{ {\varvec{A}^T \varvec{A}}\right\} }\), respectively, where \(\lambda _{\textrm{max}}\left\{ {\varvec{A}^T \varvec{A}}\right\} \) represents the maximum eigenvalue of matrix \(\varvec{A}^T \varvec{A}\).
2.1 Dynamic modeling of serial rigid robotic manipulators
The dynamic model of a robot arm establishes the relationship between the generalized joint torques exerted by the actuators and its motion. This relationship is described in terms of the positions, velocities, and accelerations of the robot’s joints. It is important to note that this model does not necessarily assume that the robot is equipped with velocity and acceleration sensors. However, the presence of these sensors may be necessary for the implementation of certain control algorithms and disturbance observers. Consider the Euler–Lagrange formulation for the dynamic model of a n-DOF serial rigid robot manipulator in contact with the environment given by [34]
where \(\varvec{h}(\varvec{q},\dot{\varvec{q}})= \varvec{C}(\varvec{q},\dot{\varvec{q}})\dot{\varvec{q}}+ \varvec{g}(\varvec{q})\nonumber \); \(\varvec{q}, \dot{\varvec{q}}, \ddot{\varvec{q}}\in {\mathbb {R}}^n\) are the joint position, velocity and acceleration vectors, respectively; \(\varvec{M}(\varvec{q})\in {\mathbb {R}}^{n \times n}\) is the inertia matrix, and \(\varvec{f}(\dot{\varvec{q}})\), \(\varvec{C}(\varvec{q},\dot{\varvec{q}})\dot{\varvec{q}}\), \(\varvec{g}(\varvec{q})\), \(\varvec{\tau }\), \(\varvec{\tau }_e\) are vectors of joint friction, Coriolis and centrifugal forces, gravitational forces, generalized control torques, and external contact torques, respectively. Subsequently, we denote \(\dot{\varvec{M}}(\varvec{q},\dot{\varvec{q}})\) as the rate of change of \(\varvec{M}(\varvec{q})\).
Assumption 1
Let \(D_{\varvec{q}}\) denote the set of all attainable joint positions, representing the finite workspace of a physical robot. In order to consider robots with both revolute and prismatic joints, which cannot extend infinitely, we assume that \(D_{\varvec{q}}\) is a bounded set.
Assumption 2
It is a known fact that electronic drives cannot deliver infinite energy to the actuators, thereby constraining the robot’s motion. Consequently, we assume that both the speed and acceleration of the manipulator fall within the following bounded sets
The following properties of the dynamic model (1) are useful for further analysis [35, 36].
Property 1
The inertia matrix \(\varvec{M}(\varvec{q})\) is symmetric, positive definite and bounded, that is,
for some constants \(\mu _M \ge \mu _m > 0\).
Property 2
The matrix \(\varvec{C}(\varvec{q},\dot{\varvec{q}})\) is upper bounded as \(\left\| {\varvec{C}(\varvec{q},\dot{\varvec{q}})}\right\| \le C_b(\dot{\varvec{q}}) \left\| {\dot{\varvec{q}}}\right\| \), where \(C_b(\dot{\varvec{q}})\) is a scalar function. For a robot with all revolute joints, \(C_b(\dot{\varvec{q}})\) can be replaced by a non-negative constant defined as \(\gamma = \text {sup}_{\varvec{q}\in D_{\varvec{q}}} \left\{ {C_b(\dot{\varvec{q}})}\right\} \) and recalling Assumption 2, it is observed that
Property 3
The matrices \(\dot{\varvec{M}}(\varvec{q},\dot{\varvec{q}})\) and \(\varvec{C}(\varvec{q},\dot{\varvec{q}})\) are related in such a way that
therefore, by considering (4) and (5) we obtain
A simple procedure to explicitly obtain the value of \(\gamma \) for robots with only revolute joints is presented in [36]. Consider appropriate constants \(\bar{M}_i\) such that \(\left\| {\frac{\partial \varvec{M}(\varvec{q})}{\partial q_i}}\right\| \le \bar{M}_i\), \(i=1,\ldots ,n\), for all \(\varvec{q}\in {\mathbb {R}}^n\), then \(\gamma \) is computed as
2.2 NDOB for robot manipulators with velocity sensors
This section reviews the structure of the well-known NDOB proposed by Mohammadi et al. [23].
Assumption 3
Let \(\hat{\varvec{M}}(\varvec{q})\) and \(\hat{\varvec{h}}(\varvec{q},\dot{\varvec{q}})\) be the estimates of actual \(\varvec{M}(\varvec{q})\) and \(\varvec{h}(\varvec{q},\dot{\varvec{q}})\), respectively, while \(\Delta \varvec{M}\) and \(\Delta \varvec{h}\) are the corresponding additive uncertainties present in the robot model such that
By substituting the Eqs. (8) in (1), the system that reconstructs the robot dynamics is obtained as follows
where \(\varvec{\tau }_d\) represents the lumped disturbance vector defined as
Moreover, the estimate of inertia matrix \(\hat{\varvec{M}}(\varvec{q})\) and its rate of change \(\dot{\hat{\varvec{M}}}(\varvec{q},\dot{\varvec{q}})\) satisfy the following properties:
Property 4
The estimate of inertia matrix \(\hat{\varvec{M}}(\varvec{q})\) is symmetric, positive definite and bounded, that is,
for some constants \(\sigma _M \ge \sigma _m > 0\).
Property 5
The matrix \(\dot{\hat{\varvec{M}}}(\varvec{q},\dot{\varvec{q}})\) is upper bounded as
for some constant \(\zeta >0\). Note that, under Assumptions 1 and 2, this property is not only valid for robots with only revolute joints, but also for robots with prismatic joints.
2.2.1 Disturbance observer structure
In order to estimate the lumped disturbance vector \(\hat{\varvec{\tau }}_d\), Mohammadi et al. [23] proposed the following system
where
with \(\varvec{X}\) being an invertible matrix, while \(\varvec{L}(\varvec{q})\) and \(\varvec{p}(\dot{\varvec{q}})\) satisfy \(\frac{d}{dt} \varvec{p}(\dot{\varvec{q}})= \varvec{L}(\varvec{q})\hat{\varvec{M}}(\varvec{q})\ddot{\varvec{q}}\).
To ensure convergence and complete the design of the NDOB, it is suggested to find a constant matrix \(\varvec{\Gamma }>0\) such that
The disturbance estimation error defined as \(\Delta \varvec{\tau }_d= \varvec{\tau }_d -\hat{\varvec{\tau }}_d\), whose dynamics is given by
where \(\dot{\varvec{\tau }}_d\) is the rate of change of the lumped disturbance vector. Also, two scenarios related with \(\dot{\varvec{\tau }}_d\) are considered for convergence analysis:
Case 1
Fast-varying disturbances. The rate of change of the lumped disturbance vector is bounded, i.e. \( \left\| {\dot{\varvec{\tau }}_d}\right\| \le k\) for some constant \(k>0\). In this case, the disturbance tracking error converges with an exponential rate \(\beta _{M1}\) defined as
to the ball with radius \(2 k \sigma _M \left\| {\varvec{X}}\right\| ^2 / \left( \theta \lambda _{\textrm{min}}\left\{ {\varvec{\Gamma }}\right\} \right) \) where \(0 \le \theta \le 1\).
Case 2
Slow-varying disturbances. The rate of change of the lumped disturbance acting on the manipulator is negligible in comparison with the error dynamics (19), hence \(\dot{\varvec{\tau }}_d\approx {\varvec{0}}_n \). In this case, the disturbance tracking error converges asymptotically to zero with minimum exponential rate \(\beta _{M2}\) defined as
In addition, an optimal design for \(\varvec{Y}= \varvec{X}^{-1}\) can be obtained as follows
Observe that the NDOB structure presented in (13), (14) implies that the robot is equipped with position and velocity sensors. In the next section, a NDOB for robots without velocity and acceleration sensors is presented.
3 NDOB without velocity and acceleration measurements
The main disadvantage of the NDOB reviewed in Sect. 2.2 is the need for velocity measurements [23]. In practical applications, velocity and acceleration sensors are often absent in many robotic systems. Nevertheless, it is feasible to adapt the disturbance observer (13), (14) to eliminate the necessity for velocity measurement. To achieve this, we introduce the following velocity estimator
where \(\varvec{v}\) is the estimate of joint velocity \(\dot{\varvec{q}}\), while \(\varvec{A}_v\) is a constant diagonal, positive definite matrix. Note that the auxiliary subsystem (20) gives rise to the so-called dirty derivative of \(\dot{\varvec{q}}\) [37, 38], where each of its components passes through a first-order low-pass filter. This practice is common in order to limit high-frequency gains, resulting in an approximated causal derivative operator.
Now, in order to establish a system that, like in Eq. (9), reconstructs the robot dynamics without requiring velocity measurements, consider the rate of change of the estimated velocity \(\dot{\varvec{v}}\) such that
where \(\hat{\varvec{h}}(\varvec{q},\varvec{v})= \hat{\varvec{C}}(\varvec{q},\varvec{v})\varvec{v}+ \varvec{g}(\varvec{q})\). Therefore, the modified disturbance observer that does not need velocity or acceleration measurements takes the following form
where \(\varvec{L}(\varvec{q})\) was defined in (15) and \(\varvec{p}(\varvec{v})\) is given by
with \(\varvec{X}\in {\mathbb {R}}^{n \times n}\) being an invertible matrix. In this case, observe that the terms \(\varvec{L}(\varvec{q})\) and \(\varvec{p}(\varvec{v})\) are related as follows \(\frac{d}{dt} \varvec{p}(\varvec{v})= \varvec{L}(\varvec{q})\hat{\varvec{M}}(\varvec{q})\dot{\varvec{v}}\).
Before performing the convergence analysis for NDOB (22)-(23), the dynamics of estimation errors shall be studied.
3.1 Dynamics of estimation errors
The estimation error vector \(\varvec{e}\in {\mathbb {R}}^{2n}\) contains the perturbation and velocity estimation errors and it is defined as
where the perturbation estimation error \(\varvec{e}_d\in {\mathbb {R}}^n\) is given by
while the velocity estimation error \(\varvec{e}_v\in {\mathbb {R}}^n\) is
Note that \(\varvec{e}_d\) is equivalent to \(\Delta \varvec{\tau }_d\) previously defined in Sect. 2.2.
Now, the rate of change of \(\varvec{e}_d\) is analyzed. Taking the time derivative of (26), we obtain that
therefore,
which retains the same structure as Eq. (19) used in the NDOB with velocity measurements.
On the other hand, taking the time derivative of (27)
and observe that
therefore,
3.2 Stability and convergence analysis
The analysis of estimation error behavior for the proposed NDOB encompasses two scenarios, previously referred to as Cases 1 and 2. While the same Lyapunov candidate function is utilized for both cases, distinct conditions regarding the rate of perturbation change in its time derivative are taken into account.
Assumption 4
For the fast-varying disturbances case, it is assumed that the rate of change of the lumped disturbance is bounded as \(\left\| {\dot{\varvec{\tau }}_d}\right\| \le k_d\), for some constant \(k_d>0\).
Assumption 5
For the slow-varying disturbances case, it is assumed that the rate of change is negligible in comparison with error dynamics, that is, \(\dot{\varvec{\tau }}_d\approx {\varvec{0}}_n\).
Assumption 6
For both slow and fast-varying disturbances cases, it is assumed that
-
1.
It is possible to find a constant, positive definite matrix \(\varvec{\Gamma }\) that satisfies Inequality (18).
-
2.
From Assumption 2, there is a constant \(k_a>0\) that upper bounds the acceleration such that
$$\begin{aligned} \left\| {\ddot{\varvec{q}}}\right\| \le k_a \left\| {\varvec{e}_v}\right\| \end{aligned}$$(31)
3.2.1 Fast-varying disturbances
To assess the behavior of estimation errors, consider the following Lyapunov candidate function
Note that according to Property 4, \(w\left( \varvec{e}_d,\varvec{e}_v\right) \) is a positive definite function. Also, by considering two positive constants \(\varepsilon _{11}\) and \(\varepsilon _{12}\) given by
and from (25) that
it is obtained that \(w\left( \varvec{e}_d,\varvec{e}_v\right) \) can be upper- and lower bounded as follows
Appendix 1 shows in detail how it was obtained.
Now, taking the time derivative of \(w\left( \varvec{e}_d,\varvec{e}_v\right) \) we have that
where, from (15) and (28), \(\dot{\varvec{e}}_d= \dot{\varvec{\tau }}_d-\varvec{X}^{-1}\hat{\varvec{M}}^{-1}(\varvec{q})\varvec{e}_d\). Therefore, considering that \(\dot{\varvec{e}}_v\) is given by (30) then
In order to demonstrate that \(\dot{w}\left( \varvec{e}_d,\varvec{e}_v\right) \) is negative definite, consider Assumptions 4 and 6, as well as the following positive constant
with \(\theta \in \left( 0,1\right) \) and \(\lambda _{\textrm{min}}\left\{ {\varvec{A}_v}\right\} > k_a\). Then, from (18)
also, note that according to Property 4
while from (31)
and as \(\varvec{A}_v\) is a positive definite diagonal matrix
Then, from inequalities (40) to (43), \(\dot{w}\left( \varvec{e}_d,\varvec{e}_v\right) \) is upper bounded by
where
Therefore
Now, according to (36), it can be observed that \(w\left( \varvec{e}_d,\varvec{e}_v\right) / \varepsilon _{12} \le \left\| {\varvec{e}}\right\| ^2\) thus
and then
Also, from (36) we have that \(\left\| {\varvec{e}}\right\| ^2 \le w(t)/\varepsilon _{11}\) thereby
that is,
Therefore, according to the uniform ultimate boundedness theorems [39], the tracking error is globally uniformly ultimately bounded. Moreover, the perturbation estimation error converges with an exponential rate of \(\varepsilon _{2}/\left( 2\varepsilon _{12}\right) \) to the ball with radius \(2 k_d \sigma _M \left\| {\varvec{X}}\right\| ^2/\left( \theta \lambda _{\textrm{min}}\left\{ {\varvec{\Gamma }}\right\} \right) \), \(\forall \varvec{e}_d(0) \in {\mathbb {R}}^2\), where \(0<\theta <1\). While the velocity estimation error will be bounded for any initial condition \(\varvec{e}_v(0)\).
3.2.2 Slow-varying disturbances
Consider again the Lyapunov candidate function (32) and its time derivative (38), as well as the following positive constant
with \(\lambda _{\textrm{min}}\left\{ {\varvec{A}_v}\right\} > k_a\).
According to Assumption 5, it can be observed that Eq. (38) is simplified as follows
Now, according to Assumption 6 and inequalities (40), (42) and (43), we obtain that
where
Therefore
Note that \(\dot{w}\left( \varvec{e}_d,\varvec{e}_v\right) \) is negative definite for all \(\varvec{e}\in {\mathbb {R}}^{2n}\). Therefore, the disturbance and velocity estimation errors asymptotically converge to zero as time tends to infinity, for all \(\varvec{e}\in {\mathbb {R}}^{2n}\). In order to compute the convergence rate, from (36) it can be observed that \(w\left( \varvec{e}_d,\varvec{e}_v\right) / \varepsilon _{12} \le \left\| {\varvec{e}}\right\| ^2\), hence
and then
Again, from (36) we have that \(\left\| {\varvec{e}}\right\| ^2 \le w(t)/\varepsilon _{11}\), thus
that is,
Therefore, the minimum convergence rate of the estimation error is
where \(\varepsilon _{12}\) and \(\varepsilon _{3}\) were defined in (34) and (46), respectively.
3.3 Aspects to consider for implementing the proposed NDOB
While we have analyzed the convergence of estimation errors, there remain practical issues that require attention to finalize the NDOB design. In the subsequent analyses, please take into account the rate of convergence as defined in Eq. (50), as typically, there is limited prior information available regarding the perturbations [23].
3.3.1 Velocity estimator
Note that from the velocity estimator (20), the following transfer function [37] (in the frequency domain) is obtained for its i-th element
whose maximum gain is 1. Therefore, \(\left\| {\varvec{v}}\right\| \) tends to \(\left\| {\dot{\varvec{q}}}\right\| \) after the transient period. Considering the definition of \(\varvec{e}_v\) in (27), we obtain that \(\left\| {\varvec{e}_v}\right\| = \left\| {\dot{\varvec{q}}-\varvec{v}}\right\| \) and consequently \(\left\| {\varvec{e}_v}\right\| \le \left\| {\dot{\varvec{q}}}\right\| + \left\| {\varvec{v}}\right\| \), thus \(\left\| {\varvec{e}_v}\right\| \le 2 \left\| {\dot{\varvec{q}}}\right\| \). While when considering Inequality (31), \(\left\| {\ddot{\varvec{q}}}\right\| \le k_a \left\| {\varvec{e}_v}\right\| \le 2 k_a \left\| {\dot{\varvec{q}}}\right\| \). Then, according to Assumption 2
On the other hand, concerning the definition of \(\varepsilon _{3}\), it is feasible to design \(\varvec{\Gamma }= \gamma _o \varvec{I}_n\) and \(\varvec{A}_v =a_v \varvec{I}_n\) to satisfy \(\lambda _{\textrm{min}}\left\{ {\varvec{A}_v}\right\} > k_a\) and \(\lambda _{\textrm{min}}\left\{ {\varvec{A}_v}\right\} -k_a > \lambda _{\textrm{min}}\left\{ {\varvec{\Gamma }}\right\} \). Then, the constant \(a_v\) can be selected as
with \(k_a = \left\| {\ddot{\varvec{q}}}\right\| _{\textrm{max}}/ \left( 2\left\| {\dot{\varvec{q}}}\right\| _{\textrm{max}}\right) \) and \(\alpha _v>1\). The procedure for calculating the value of \(\gamma _o\) will be explained in the following section.
3.3.2 Gain of the NDOB
To align with the definition of \(\varepsilon _{12}\), one can choose \(\varvec{Y}= \varvec{X}^{-1} = y \varvec{I}_n\) such as \(\sigma _M \left\| {\varvec{X}}\right\| ^2 <1/2\). Based on the analysis presented in the preceding section, it is obtained that the minimum convergence rate for the NDOB is given by \(\beta = \lambda _{\textrm{min}}\left\{ {\varvec{\Gamma }}\right\} \), then
Furthermore, pre- and post-multiplying (18) by \(\varvec{Y}^T\) and \(\varvec{Y}\), respectively, we obtain that
Note that Property 5 implies that \(\dot{\hat{\varvec{M}}}(\varvec{q},\dot{\varvec{q}})\le \zeta \varvec{I}_n\) for some constant \(\zeta >0\). Then, \(\varvec{Y}\) can be designed to satisfy \(\varvec{Y}^T + \varvec{Y}- \varvec{Y}^T \varvec{\Gamma }\varvec{Y}\ge \zeta \varvec{I}_n \ge \dot{\hat{\varvec{M}}}(\varvec{q},\dot{\varvec{q}})\) and so
thus, according to (51)
Now, because \(\sigma _M \left\| {\varvec{X}}\right\| ^2 < 1/2\) then \(\sigma _M/y^2 \le 1/2\), therefore
Note that \(\left\| {\varvec{L}(\varvec{q})}\right\| \le \left\| {\varvec{Y}}\right\| \left\| {\hat{\varvec{M}}^{-1}(\varvec{q})}\right\| \), i.e., the observer gain is proportional to \(\left\| {\varvec{Y}}\right\| \). Then, a high NDOB gain amplifies sensitivity to disturbances caused by measurement noise, leading to its amplification. From this perspective, it is advisable to choose the smallest possible NDOB gain so that
where, as previously defined, \(\zeta \) and \(\sigma _M\) are constants that depend on the robot’s dynamic parameters and maximum joint velocities. With this, the NDOB design procedure is concluded.
4 Simulation results
The initial validation of the proposed NDOB was conducted by simulating a robot-environment interaction task. The numerical simulation was executed using Matlab r2021b, employing the ODE45 function.
We performed a comparative analysis, assessing the performance of our proposal against Mohammadi’s scheme [23] and the GMOB approach [31]. To regulate the robot-environment interaction task, the following stiffness controller [40] was used
where \(\bar{\varvec{x}} = \varvec{x}_d - \varvec{x}\), with \(\varvec{x}_d\) and \(\varvec{x}\) representing the desired and actual posture of the robot end-effector in task space, respectively. \(\varvec{J}\) is the analytic Jacobian matrix, \(\varvec{g}(\varvec{q})\) is the gravity vector of the robot, while \(\varvec{K}_p\) and \(\varvec{K}_v\) are the proportional and damping gain matrices, respectively. Since the controller was originally designed without a velocity estimator, the task-space velocity is computed as \(\dot{\varvec{x}}= \varvec{J}\dot{\varvec{q}}\).
It is worth noting that the control gains remained consistent with those outlined in [40]. This choice was made to solely evaluate the performance of the disturbance observers, hence \(\varvec{K}_p=\text {diag}\left\{ {750, 1750, 850}\right\} \) and \(\varvec{K}_v=\text {diag}\left\{ {15, 15, 45}\right\} \).
4.1 Robot model
The robotic platform utilized in numerical simulations is a 3-DOF anthropomorphic robot manipulator. The corresponding direct kinematics mapping \(\varvec{x}(\varvec{q})=\left[ \begin{array}{c} x_1, x_2, x_3 \end{array}\right] ^T\) and the elements of Jacobian matrix are given by
where \(s_i = \sin (q_i)\), \(c_i = \cos (q_i)\), \(s_{2,3} =\sin (q_2+q_3)\) and \(c_{2,3} = \cos (q_2+q_3)\), while \(d_2=0.15\) m, \(d_3=0.1\) m, \(l_2=0.45\) m, and \(l_3=0.45\) m.
The dynamic model of the robot manipulator and its nominal parameters were reported in [41], and their corresponding numerical values are presented in Table 1. The model has the following structure
where
with \(s_{2} = \sin (q_2)\), \(c_{2} = \cos (q_2)\), \(s_{3} = \sin (q_3)\), \(c_{3} = \cos (q_3)\), \(s_{22} = \sin (2q_2)\), \(c_{22} = \cos (2q_2)\), \(s_{2,3} = \sin (q_2+q_3)\), \(c_{2,3} = \cos (q_2+q_3)\), \(s_{22,3} = \sin (2q_2+q_3)\), \(c_{22,3} = \cos (2q_2+q_3)\), \(s_{22,23} = \sin (2q_2+2q_3)\), \(c_{22,23} = \cos (2q_2+2q_3)\). Whereas \(\varvec{f}_e\) denotes the external force applied to the robot end-effector and \(g=9.81\) m/s\({}^2\) is the acceleration of gravity.
The robot actuators have as torque limit values \(\tau _{\textrm{max}} = \left[ \begin{array}{c} 50, 150, 15\end{array}\right] ^T\) Nm, for the base, shoulder and elbow joints, respectively. Moreover, the maximum values of velocity and acceleration are \(\dot{\varvec{q}}_{\textrm{max}} = \left[ \begin{array}{c}2\pi , \pi , 4\pi \end{array}\right] ^T\)rad/s and \(\ddot{\varvec{q}}_{\textrm{max}} = \left[ \begin{array}{c}520.833333, 1056.338028, 1250\end{array}\right] ^T\) rad/s\({}^2\), respectively. Thus, inequalities (11) and (12) are satisfied with \(\sigma _M = 5.116525\) kg m\({}^2\) and \(\zeta =167.048302\) kg m\({}^2\)/s, respectively.
4.2 Configuration of the interaction task
The interaction task is depicted in Fig. 1, where the robot is required to interact with an inclined plane. The stiffness of the plane in the normal direction is 2000 N/m. The origin of this plane, known as user frame in industrial robotics, is represented as \(x_p y_p z_p\) and it is located at \(\left[ \begin{array}{c}0.5, 0.35, -\,0.49\end{array}\right] ^T\) m from the world reference frame \(x_0 y_0 z_0\). The orientation is established through a sequence of successive rotations X–Z–X, with angles of 30, 90, and 20 degrees, respectively. Then, the position of the robot end-effector relative to the user frame is computed as follows
where
The robot’s motion commences with the initial joint configuration \(\varvec{q}(0)=\left[ \begin{array}{c}-\,10, 110, -\,75\end{array}\right] ^T\) degrees. Consequently, the robot end-effector is initially situated at \(\varvec{x}(0)=\left[ \begin{array}{c}0.364, 0.627, -\,0.215 \end{array}\right] ^T\) m and needs to reach the target position \(\varvec{x}_d=\left[ \begin{array}{c}0.321, 0.626, -\,0.28 \end{array}\right] ^T\) m. Whereas the initial joint velocity is \(\dot{\varvec{q}}(0)=\left[ \begin{array}{c}0,0,0 \end{array}\right] \) rad/s.
4.3 Configuration of the observers
In order to compare the performance of both NDOBs and considering that \(\varvec{Y}_{M\text {optimal}} = \varvec{Y}_{\textrm{optimal}}\), the convergence rate was set as \(\beta = \beta _{M2} = 8\). Then,
and \(\gamma _o = 8\). In addition, taking into account the maximum velocity values and choosing \(\alpha _v=20\), we have that \(k_a = 59.648\) and \(a_v = 1352.953\), therefore
Furthermore, for ensuring swift convergence in velocity estimation and enhancing the observer’s response, it is advisable to choose an appropriate initial condition for the auxiliary variable \(\varvec{v}_c\) and set the initial velocity to zero, such that \(\varvec{v}_c(0)=-\varvec{A}_v \varvec{q}(0)\).
On the other hand, the GMOB [31] can be formulated to estimate the disturbance torque, which can be modeled either as the external torque or as the sum of friction and external torque. In the first scenario,
where
with \(\varvec{p}= \varvec{M}(\varvec{q})\dot{\varvec{q}}\) representing the generalized momentum of the robot manipulator and \(\varvec{L}\) being a user-designed diagonal, definite positive matrix. The tuning of \(\varvec{L}\) aims to strike a balance between the desired bandwidth and noise amplification. While in the second scenario,
To assess its performance relative to NDOBs, \(\varvec{L}\) was selected as
with \(\varvec{\Gamma }(0) = -\varvec{p}(0)\) as initial condition.
4.4 Results
To optimize simulation time, the traditional friction model is approached as a continuous function denoted by \(f(\dot{q}_i) = f_{vi} \dot{q}_{i} + f_{ci} \tanh (10^{4}\dot{q}_{i})\), where \(f_{vi}\) and \(f_{ci}\) represent the i-th viscous and Coulumb friction coefficients, respectively. The block diagram in Fig. 2 represents how both the controller and the proposed NDOB were implemented. Please note that while the controller necessitates the robot’s joint velocity for its implementation, the proposed NDOB solely relies on the estimated velocity \(\varvec{v}\).
Figure 3 illustrates a comparative graph between the robot’s actual velocity and its estimation obtained through the proposed scheme. It is evident that the velocity estimation error undergoes a transient phase lasting approximately 0.5 s before gradually converging to a stable state, approaching zero.
The results of disturbance estimation are shown in Figs. 4 and 5. The estimation error behaviors are notably similar among the three observers. The proposed scheme holds the advantage of not necessitating velocity measurements.
Additionally, assuming that unmodeled dynamics is negligible, Fig. 6 presents the estimate of contact force given by \(\hat{\varvec{f}_e}=\left[ \varvec{J}^T(\varvec{q})\right] ^{-1} \varvec{\tau }_e\), where \(\varvec{\tau }_e=-\hat{\varvec{\tau }_d}-\varvec{\tau }_{\textrm{fric}}\) with \(\varvec{\tau }_{\textrm{fric}}\) representing the friction torque for each observer, i.e., \(\varvec{f}(\dot{\varvec{q}})\) and \(\varvec{f}(\varvec{v})= \left. \varvec{f}(\dot{\varvec{q}})\right| _{\dot{\varvec{q}}=\varvec{v}} \), respectively. It can be observed that the force estimation behavior is nearly identical across all schemes.
To assess the effectiveness of the disturbance estimator within a stiffness control scheme, we present the controller results in Fig. 7. It is evident that the position error components have a stable behavior. However, achieving the desired position is unattainable due to contact with the surface. Nevertheless, the system exhibits stable behavior. Consequently, during contact, priority is directed towards force regulation, as further illustrated in Fig. 7.
On the other hand, both the proposed observer and Mohammadi’s scheme can be adapted to enhance contact force estimation. This adaptation involves incorporating friction torques into the observer structure while excluding them from the perturbations. The formulation of this modified NDOB is detailed in [26]. Therefore, the corresponding modifications are \(\hat{\varvec{h}}(\varvec{q},\dot{\varvec{q}})= \hat{\varvec{C}}(\varvec{q},\dot{\varvec{q}})\dot{\varvec{q}}+ \varvec{g}(\varvec{q})+ \varvec{f}(\dot{\varvec{q}})\) and \(\hat{\varvec{h}}(\varvec{q},\varvec{v})= \hat{\varvec{C}}(\varvec{q},\varvec{v})\varvec{v}+ \varvec{g}(\varvec{q})+ \varvec{f}(\varvec{v})\) for Mohammadi’s NDOB and our proposal, respectively. It is important to emphasize that demonstrating the validity of the presented convergence analysis for both modified observers requires no extensive effort.
Figures 8 and 9 depict the results of disturbance estimation, while Fig. 10 illustrates the contact force estimation for the modified structures with \(\hat{\varvec{f}_e}=-\left[ \varvec{J}^T(\varvec{q})\right] ^{-1} \hat{\varvec{\tau }_d}\). Observing the results, it becomes evident that incorporating the friction term into the observer structure yields an enhancement in the accuracy of contact force estimation. Furthermore, all components exhibit a convergence pattern similar to that obtained with the original scheme.
Lastly, Table 2 presents a numerical comparison of the root mean square (RMS) values for perturbation and contact force estimation errors, respectively. The force estimation error is defined as the difference between the actual and estimated contact force, i.e., \(\varvec{e}_{fe}= \varvec{f}_e- \hat{\varvec{f}_e}\). It is evident that Mohammadi’s NDOB yields slightly superior results in disturbance and contact force estimation. However, RMS values are very similar and the proposed observer holds the advantage of not requiring velocity measurements for its implementation. Furthermore, a more accurate estimate of the contact force is achieved using the modified structure for all disturbance observers.
To provide a comprehensive perspective, it is noteworthy to consider the findings from pertinent studies that employ alternative disturbance estimation techniques, such as Kalman filters and sliding mode schemes, as referenced in [2, 29, 32, 33]. In these studies, the reported results reveal instantaneous estimation errors of up to 5 Nm in external torques and 5 N in external forces, which surpass the errors observed in our proposed approach. Moreover, in certain cases, the implementation of these techniques necessitates a greater number of sensors. Furthermore, it’s worth noting that these results lack a quantitative assessment and are exclusively presented in graphical form. Regarding the remaining referenced studies [12, 16,17,18, 21, 28], they neither include comparative plots illustrating the estimated versus actual external force/torque nor provide a comprehensive performance evaluation. In some instances, the sole discernible advantage lies in a faster convergence rate.
5 Experimental results
A series of experimental tests were conducted to validate the effective performance of the proposed scheme in a practical two-dimensional interaction task. To corroborate the simulation results obtained earlier, a comparative analysis was conducted, evaluating both the original and modified estimation schemes described previously, in the context of an interaction task regulated by the same controller (54). The control gains were selected as \(\varvec{K}_p=\text {diag}\left\{ {90, 90}\right\} \) and \(\varvec{K}_v=\text {diag}\left\{ {60, 60}\right\} \).
The experimental test involved directing the robot’s end-effector to interact with a solid, flat surface (a wooden wall covered with a styrofoam plate) positioned within the robot workspace, as illustrated in Fig. 11. The robot commences its motion from a stationary position with joint configuration \(\varvec{q}(0)=[45,-\,58]\) degrees. Consequently, the initial location of the robot end-effector is at \(\varvec{x}(0)=[0.486, -\,0.134]\) meters. As the robot starts moving, it endeavors to reach the target position \(\varvec{x}(0)=[0.638, -\,0.314]\) meters; however, it collides with the wooden structure before achieving this goal.
5.1 Robot model and configuration of the NDOB
The experimental platform comprises a 2-DOF parallelogram SCARA-type robot manipulator. It is actuated using Sureservo systems, specifically the SVM-220B servomotor with a torque limit of 9.4 Nm and the SVA-2300 servoamplifier configured in torque mode. Joint positions are acquired using quadrature encoders with a resolution of 10,000 pulses per revolution. The control algorithm operates at a 2 ms cycle on an STM32F407 Discovery board. To assess the performance of the disturbance estimators, an ATI multi-axis force/torque sensor model Gamma was affixed to the robot end-effector, calibrated with a maximum force of 130 N and a maximum torque of 10 Nm about each axis.
The direct kinematic model \(\varvec{x}(\varvec{q}) = [x_1,x_2]^T\) and the elements of the Jacobian matrix are given by
where \(L_1=0.35\) m and \(L_2=0.45\) m. Figure 12 shows the kinematic diagram of the robot.
On the other hand, the dynamic model of the robot has the following structure
with
where \(\varvec{f}_e\) denotes the external forces applied to the end-effector. The nominal inertial and friction parameters are presented in Table 3.
As previously stated, the actuators are subject to the following torque limit values \(\tau _{\textrm{max}}=[9.4,9.4]^T\) Nm, while the maximum velocity and acceleration values are \(\dot{\varvec{q}}_{\textrm{max}}=[7,7]^T\) rad/s and \(\ddot{\varvec{q}}_{\textrm{max}}=[21.45,21.45]^T\) rad/s\({}^2\), respectively. Thus, inequalities (11) and (12) are satisfied with \(\sigma _M = 0.74841\) kg m\({}^2\) and \(\zeta =17.574574\) kg m\({}^2\)/s, respectively.
The convergence rate of the NDOB was configured as \(\beta =5.629\), then \(\varvec{Y}_{\textrm{optimal}} = 13 \varvec{I}_n\) and \(\gamma _0 =5.629\). Considering the maximum velocity values and selecting \(\alpha _v=22.714\), we have that \(k_a=1.532\) and \(a_v=162.65\), then \(\varvec{A}_v=162.65 \varvec{I}_n\).
5.2 Results
The experimental results for the proposed disturbance estimation schemes are presented in Figs. 13, 14, 15 and 16 and Table 4. The behavior of the position error is illustrated at the top of Fig. 13, where initially it attempts to converge to the desired position before stabilizing at the location of the wooden barrier. In addition, the bottom part of Fig. 13 illustrates that the disturbance increases as the robot interacts with the environment. Consequently, for the first approximately 600 ms, the perturbation is primarily attributed to friction and unmodeled dynamics.
In this paper, our primary interest lies in utilizing the disturbance estimation scheme as a replacement for force/torque sensors in interaction controllers. Hence, Fig. 14 presents comparative graphs depicting the components of the robot-environment contact force. It is evident that the estimated forces exhibit a behavior very similar to that of the measured forces. However, the estimates display a smoother response, as they are less susceptible to noise caused by vibrations, as observed in the measured forces. This sensitivity is associated with the rate of change of the interaction forces and the tuning of the observer, as elucidated in Sect. 3.3.2.
On the other hand, Fig. 15 depicts the position errors and the disturbances estimated using the modified scheme. Regarding the position errors, their behavior closely resembles that depicted in Fig. 13. However, when it comes to perturbation torques, slight discrepancies become apparent. These differences arise because the modified scheme attempts to compensate for friction by incorporating it as a component of the known dynamics.
The comparison between the behavior of measured forces and those estimated using the modified scheme is illustrated in Fig. 16. It can be observe that there exist only minor deviations in the transient response when compared to the behavior of the original scheme (refer to Fig. 14). Consequently, it became essential to calculate the RMS value of the force error \(\varvec{e}_{fe}\) to more accurately gauge the enhancement in contact force estimation, as demonstrated in Table 4.
6 Conclusion
This paper has introduced a nonlinear disturbance observer for serial robot manipulators. This estimation scheme is applicable to robot kinematic configurations without any restrictions on the number of degrees of freedom. The proposed observer accomplishes velocity estimation through a linear auxiliary subsystem, making it suitable for implementation without the necessity of velocity and acceleration measurements, and allowing for straightforward tuning. Moreover, the convergence of perturbation and joint-velocity estimations is theoretically substantiated by a formal stability analysis in the Lyapunov sense.
The practical effectiveness of our proposed observer was validated through numerical simulations and experimental tests involving robot-environment interaction tasks. In this validation process, we compared the performance of our proposal with the classic scheme introduced by Mohammadi et al. and the generalized momentum observer. The results of this comparative analysis demonstrate that our proposed scheme offers a practical advantage: it can be applied even in robots lacking velocity sensors. Furthermore, the achieved results are comparable to those obtained with state-of-the-art schemes, which are still widely utilized in various robotic applications. The estimation of force/torque during robot-environment interaction is effectively achieved using the proposed perturbation observer. The results show an improvement when friction is incorporated as part of the known robot dynamics, even in the presence of uncertainty, as observed in the experimental tests.
In future research, it will be crucial to design force or impedance control schemes that incorporate these observers into their structure while minimizing sensor requirements. Specifically, it would be desirable for the scheme to rely solely on joint position sensors to enhance cost-effectiveness. Additionally, efforts should be directed towards conducting stability and convergence analyses for the complete closed-loop system, encompassing the robot dynamics, controller, and observer.
Another important aspect to consider is the development of robot-environment interaction control schemes that do not rely on force/torque sensors while taking into account the torque and speed capabilities of the robot’s actuators. These schemes should operate safely within the robot drive system’s operational limits, with a particular focus on enhancing safety in tasks involving human–robot interaction. One approach could involve utilizing control structures based on saturation functions, for instance.
References
Ramírez-Vera VI, Mendoza-Gutiérrez MO, Bonilla-Gutiérrez I (2022) Impedance control with bounded actions for human–robot interaction. Arab J Sci Eng 47(11):14989–15000. https://doi.org/10.1007/s13369-022-06638-3
Kommuri SK, Han S, Lee S (2022) External torque estimation using higher order sliding-mode observer for robot manipulators. IEEE/ASME Trans Mechatron 27(1):513–523. https://doi.org/10.1109/TMECH.2021.3067443
Wu Q, Liu H, Chen Y (2023) Development of a hierarchical control strategy for a soft knee exoskeleton based on wearable multi-sensor system. Proc Inst Mech Eng Part I J Syst Control Eng 237(9):1587–1601. https://doi.org/10.1177/09596518231165345
Li J, Guo K, Wang J, Li J (2023) Towards optimal dynamic localization for autonomous mobile robot via integrating sensors fusion. Int J Control Autom Syst 21:2648–2663. https://doi.org/10.1007/s12555-021-1088-7
Ovur SE, Demiris Y (2023) Naturalistic robot-to-human bimanual handover in complex environments through multi-sensor fusion. IEEE Trans Autom Sci Eng. https://doi.org/10.1109/TASE.2023.3284668
Latifinavid M, Azizi A (2023) Kinematic modelling and position control of a 3-DOF parallel stabilizing robot manipulator. J Intell Robot Syst 107(2):17. https://doi.org/10.1007/s10846-022-01795-x
Cho J, Choi D, Park JH (2023) Sensorless variable admittance control for human–robot interaction of a dual-arm social robot. IEEE Access. https://doi.org/10.1109/ACCESS.2023.3292933
Deng K, Gao D, Zhao C, Lu Y (2023) A sensorless method for predicting force-induced deformation and surface waviness in robotic milling. Int J Adv Manuf Technol 127:831–844. https://doi.org/10.1007/s00170-023-11559-y
Cao P, Gan Y, Dai X (2019) Finite-time disturbance observer for robotic manipulators. Sensors. https://doi.org/10.3390/s19081943
Ren B, Wang Y, Chen J, Chen S (2021) A novel nonlinear disturbance observer embedded second-order finite time tracking-based controller for robotic manipulators. J Comput Inf Sci Eng 21(6):061005. https://doi.org/10.1115/1.4050470
Mehrjouyan A, Menhaj MB, Khosravi MA (2021) Robust observer-based adaptive synchronization control of uncertain nonlinear bilateral teleoperation systems under time-varying delay. Measurement 182:109542. https://doi.org/10.1016/j.measurement.2021.109542
Chwa D, Kwon H (2022) Nonlinear robust control of unknown robot manipulator systems with actuators and disturbances using system identification and integral sliding mode disturbance observer. IEEE Access 10:35410–35421. https://doi.org/10.1109/ACCESS.2022.3163306
Mohammadi A, Marquez HJ, Tavakoli M (2017) Nonlinear disturbance observers: design and applications to Euler–Lagrange systems. IEEE Control Syst Mag 37(4):50–72. https://doi.org/10.1109/MCS.2017.2696760
Saadatzi M, Long DC, Celik O (2019) Comparison of Human–Robot interaction torque estimation methods in a wrist rehabilitation exoskeleton. J Intell Robot Syst 94(3):565–581. https://doi.org/10.1007/s10846-018-0786-8
Mo Y, Song A, Wang T (2021) Underwater multilateral tele-operation control with constant time delays. Comput Electr Eng 96:107473. https://doi.org/10.1016/j.compeleceng.2021.107473
Shi D, Zhang J, Sun Z, Xia Y (2022) Adaptive sliding mode disturbance observer-based composite trajectory tracking control for robot manipulator with prescribed performance. Nonlinear Dyn 109(4):2693–2704. https://doi.org/10.1007/s11071-022-07569-2
Kim HH, Lee MC, Kyung JH, Do HM (2021) Evaluation of force estimation method based on sliding perturbation observer for dual-arm robot system. Int J Control Autom Syst 19(1):1–10. https://doi.org/10.1007/s12555-019-0324-x
Lu YS, Chen CT, Chiu CW (2021) Design and implementation of a sliding-mode disturbance observer for robotic manipulators with unbalanced rotating payloads. J Braz Soc Mech Sci Eng 44(1):34. https://doi.org/10.1007/s40430-021-03342-5
Chen WH, Yang J, Guo L, Li S (2016) Disturbance-observer-based control and related methods: an overview. IEEE Trans Ind Electron 63(2):1083–1095. https://doi.org/10.1109/TIE.2015.2478397
Sariyildiz E, Oboe R, Ohnishi K (2020) Disturbance observer-based robust control and its applications: 35th anniversary overview. IEEE Trans Ind Electron 67(3):2042–2053. https://doi.org/10.1109/TIE.2019.2903752
Yen SH, Tang PC, Lin YC, Lin CY (2019) Development of a virtual force sensor for a low-cost collaborative robot and applications to safety control. Sensors. https://doi.org/10.3390/s19112603
Mohammadi A, Dallali H (2020) Chapter 5: Disturbance observer applications in rehabilitation robotics: an overview. In: Dallali H, Demircan E, Rastgaar M (eds) Powered prostheses. Academic Press, Cambridge, pp 113–133
Mohammadi A, Tavakoli M, Marquez HJ, Hashemzadeh F (2013) Nonlinear disturbance observer design for robotic manipulators. Control Eng Pract 21(3):253–267. https://doi.org/10.1016/j.conengprac.2012.10.008
Chen WH, Ballance DJ, Gawthrop PJ, O’Reilly J (2000) A nonlinear disturbance observer for robotic manipulators. IEEE Trans Ind Electron 47(4):932–938. https://doi.org/10.1109/41.857974
Nikoobin A, Haghighi R (2009) Lyapunov-based nonlinear disturbance observer for serial n-link robot manipulators. J Intell Robot Syst 55(2):135–153. https://doi.org/10.1007/s10846-008-9298-2
Xing H, Torabi A, Ding L, Gao H, Deng Z, Mushahwar VK et al (2021) An admittance-controlled wheeled mobile manipulator for mobility assistance: Human-robot interaction estimation and redundancy resolution for enhanced force exertion ability. Mechatronics 74:102497. https://doi.org/10.1016/j.mechatronics.2021.102497
Dehghan SAM, Koofigar HR, Sadeghian H, Ekramian M (2021) Observer-based adaptive force-position control for nonlinear bilateral teleoperation with time delay. Control Eng Pract 107:104679. https://doi.org/10.1016/j.conengprac.2020.104679
Hu J, Xiong R (2018) Contact force estimation for robot manipulator using semiparametric model and disturbance Kalman filter. IEEE Trans Ind Electron 65(4):3365–3375. https://doi.org/10.1109/TIE.2017.2748056
Cao F, Docherty PD, Chen X (2022) Contact force estimation for serial manipulator based on weighted moving average with variable span and standard Kalman filter with automatic tuning. Int J Adv Manuf Technol 118(9):3443–3456. https://doi.org/10.1007/s00170-021-08036-9
Mamedov S, Mikhel S (2020) Practical aspects of model-based collision detection. Front Robot AI. https://doi.org/10.3389/frobt.2020.571574
Liu S, Wang L, Wang XV (2021) Sensorless force estimation for industrial robots using disturbance observer and neural learning of friction approximation. Robot Comput-Integr Manuf 71:102168. https://doi.org/10.1016/j.rcim.2021.102168
Yuan J, Qian Y, Gao L, Yuan Z, Wan W (2019) Position-based impedance force controller with sensorless force estimation. Assem Autom 39(3):489–496. https://doi.org/10.1108/AA-09-2018-0124
Yao B, Zhou Z, Wang L, Xu W, Liu Q, Liu A (2018) Sensorless and adaptive admittance control of industrial robot in physical human-robot interaction. Robot Comput-Integr Manuf 51:158–168. https://doi.org/10.1016/j.rcim.2017.12.004
Siciliano B, Khatib O (2007) Springer handbook of robotics. Springer-Verlag, Berlin, Heidelberg
Kelly R, Santibáñez V, Loría A (2005) Control of robot manipulators in joint space. Springer Science + Business Media, London
Mulero-Martínez JI (2007) Uniform bounds of the Coriolis/centripetal matrix of serial robot manipulators. IEEE Trans Robot 23(5):1083–1089. https://doi.org/10.1109/TRO.2007.903820
Loría A (2016) Observers are unnecessary for output-feedback control of Lagrangian systems. IEEE Trans Autom Control 61(4):905–920. https://doi.org/10.1109/TAC.2015.2446831
Zavala-Rio A, Mendoza M, Santibanez V, Reyes F (2016) Output-feedback proportional-integral-derivative-type control with multiple saturating structure for the global stabilization of robot manipulators with bounded inputs. Int J Adv Robot Syst 13(5):1729881416663368. https://doi.org/10.1177/1729881416663368
Khalil HK (1996) Nonlinear systems, 2nd edn. Prentice Hall, Upper Saddle River NJ
Chávez-Olivares C, Reyes-Cortés F, González-Galván E (2015) On stiffness regulators with dissipative injection for robot manipulators. Int J Adv Robot Syst 12:65. https://doi.org/10.5772/60054
Chávez-Olivares C, Reyes-Cortés F, González-Galván E, Mendoza-Gutierrez M, Bonilla-Gutierrez I (2012) Experimental evaluation of parameter identification schemes on an anthropomorphic direct drive robot. Int J Adv Robot Syst 9(5):203. https://doi.org/10.5772/52190
Acknowledgements
This work was supported by the National Council of Humanities, Sciences and Technologies, Mexico.
Author information
Authors and Affiliations
Contributions
CAC-O contributed to conceptualization, formal analysis, investigation, methodology, and writing-original draft, MOM-G helped in formal analysis, investigation, supervision, and writing—original draft, and IB-G contributed to investigation, methodology, supervision, and writing—review and editing.
Corresponding author
Ethics declarations
Conflict of interest
The authors declare that they have no conflict of interest.
Additional information
Technical Editor: Rogério Sales Gonçalves.
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix 1 Boundedness analysis of the candidate Lyapunov function
Appendix 1 Boundedness analysis of the candidate Lyapunov function
Note that \(w\left( \varvec{e}_d,\varvec{e}_v\right) \) defined in (32) can be rewritten as
and considering the lower bound of \(\hat{\varvec{M}}(\varvec{q})\) in (11), we have that \(\sigma _m \varvec{e}_d^T \varvec{X}^T\varvec{X}\varvec{e}_d\le w_{11}(\varvec{e}_d)\) \(\Longrightarrow \sigma _m \lambda _{\textrm{min}}\left\{ {\varvec{X}^T \varvec{X}}\right\} \left\| {\varvec{e}_d}\right\| ^2 \le w_{11}(\varvec{e}_d)\). While \(\frac{1}{2} \left\| {\varvec{e}_v}\right\| ^2 \le w_{12}(\varvec{e}_v)\), therefore
where
Now considering (35) and the constant \(\varepsilon _{11}\) defined in (33), observe that \(w\left( \varvec{e}_d,\varvec{e}_v\right) \) is lower bounded as follows
On the other hand, considering the upper bound of \(\hat{\varvec{M}}(\varvec{q})\) in (11) we obtain that \(w_{11}(\varvec{e}_d) \le \sigma _M \left\| {\varvec{X}}\right\| ^2 \left\| {\varvec{e}_d}\right\| ^2\), while \(w_{12}(\varvec{e}_v) \le \frac{1}{2} \left\| {\varvec{e}_v}\right\| ^2\), therefore
where
Using again (35) and the constant \(\varepsilon _{12}\) defined in (34), \(w\left( \varvec{e}_d,\varvec{e}_v\right) \) is upper bounded by
Therefore, the boundedness of \(w\left( \varvec{e}_d,\varvec{e}_v\right) \) presented in (36) is demonstrated.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Chávez-Olivares, C.A., Mendoza-Gutiérrez, M.O. & Bonilla-Gutiérrez, I. A nonlinear disturbance observer for robotic manipulators without velocity and acceleration measurements. J Braz. Soc. Mech. Sci. Eng. 45, 639 (2023). https://doi.org/10.1007/s40430-023-04554-7
Received:
Accepted:
Published:
DOI: https://doi.org/10.1007/s40430-023-04554-7