July 15, 2026
Model-based control of flexible joint robots with position-controlled actuators relies on accurate knowledge of the joint compliance. In practice, precise stiffness models are often unavailable as the properties of physical elastic elements vary with operating conditions and slowly change over time due to wear and aging. To improve model-based control of these systems, we propose an adaptive control approach in this work, which updates an estimate of the uncertain, nonlinear torque-deflection relation of each joint. As opposed to classical adaptive control approaches for non-elastic robots, we rely on an implicit control law and a control-input-dependent regressor matrix to account for the uncertain joint stiffness. We analyze robustness of the approach against errors induced by the motor position controller. Experimental results on a flexible joint with nonlinear stiffness characteristics demonstrate the effectiveness of the proposed approach.
Common model-based control approaches for flexible joint robots require accurate models of the joint stiffness [1], [2]. In practice, however, the torque-deflection characteristics of physical elastic elements are subject to gradual variations due to effects such as material aging, temperature changes, and load-dependent hysteresis. Explicitly modeling these effects is challenging and often impractical. As a result, torque-deflection models identified from calibration measurements may not remain accurate over time or across operating conditions.
This issue can degrade the achievable control performance of flexible joint robots, also if their elastic actuators employ servo motors. Examples for such actuators are the variable stiffness actuators (VSA) introduced in [3]. They have been designed to be low-cost and easily deployable while being inherently compliant. The actuators [3] have been used extensively in test benches for validating control strategies [4]–[6]. Further, they have been successfully incorporated into more complex robotic platforms such as the wheeled humanoid robot Alter-Ego [7] demonstrating their potential for being used in daily tasks involving physical interaction, such as opening a door [8].
Flexible joint robots equipped with servo motors provide a motor-position interface instead of a torque interface. Model-based link-side control approaches for these robots usually determine the desired motor position to be commanded from the desired torque to be injected by inverting the torque-deflection model [5], [7]. Consequently, the accuracy of the torque generation, and thus the overall control performance, strongly depends on the fidelity of the utilized model. This motivates the development of control strategies for motor-position-controlled flexible joint robots that enable accurate link-side control despite uncertainties in the joint stiffness characteristics.
A common way to address uncertain system parameters is adaptive control. Adaptive controllers have been widely studied and successfully used to compensate for parametric uncertainties in inertial parameter by adjusting estimates online [9]–[11]. Extensions of these ideas to flexible-joint robots with uncertain inertial parameters have also been proposed [12]–[14]. Besides imprecise knowledge of inertial parameters, also uncertain stiffness is treated in [15]. However, these approaches typically assume a linear torque-deflection relation and access to a motor-torque interface.
Besides classical adaptive controllers, neural adaptive controllers have also been proposed for flexible-joint robots [16]. In particular, [16] addresses motor-position controlled systems with uncertain inertial parameters. However, the joints are assumed to have a constant, known stiffness and an ideal motor-position controller.
This work is motivated by improving model-based control of motor-position controlled flexible joint robots with uncertain, nonlinear stiffness. In particular:
We propose an adaptive control framework (cf. Fig. 1) adjusting an estimate of the uncertain, nonlinear torque-deflection map online. The design applies the Lyapunov-based methodology of [9]. Different to [9], our approach relies on a control-input-dependent regressor and an implicit control law to handle the uncertain, nonlinear joint stiffness.
We formally analyze robustness of the approach against errors in the inner-loop motor position controller.
We validate the approach experimentally on a flexible joint with strongly nonlinear torque-deflection characteristic, obtaining improved link-side trajectory tracking under adaptation.
The remainder of this paper is structured as follows. We introduce the target system dynamics and problem formulation in Sec. 2. The adaptive controller is presented in Sec. 3 followed by a robustness analysis against errors induced by the inner-loop motor-position controller in Sec. 4. We experimentally validate the approach in Sec. 5. Finally, Sec. 6 concludes the work.
Consider the dynamics of a robotic system with \(n\) flexible joints modeled as \[\label{eq:RD} \begin{align} \boldsymbol{{M}}(\boldsymbol{{q}})\ddot{\boldsymbol{{q}}}+ \boldsymbol{{C}}(\boldsymbol{{q}},\dot{\boldsymbol{{q}}})\dot{\boldsymbol{{q}}}+ \boldsymbol{{g}}(\boldsymbol{{q}}) &= \boldsymbol{{\psi}}(\boldsymbol{{\theta}}- \boldsymbol{{q}})\\ \boldsymbol{{B}} \ddot{\boldsymbol{{\theta}}}+ \boldsymbol{{\psi}}(\boldsymbol{{\theta}}- \boldsymbol{{q}}) = \boldsymbol{{\tau}}_m. \end{align}\tag{1}\] Therein, \(\boldsymbol{{q}}\in \mathbb{R}^n\) and \(\boldsymbol{{\theta}}\in \mathbb{R}^n\) denote the vectors of link and motor positions, respectively. The link-side inertia matrix \(\boldsymbol{{M}}(\boldsymbol{{q}}) \in \mathbb{R}^{n\times n}\) is positive definite and is assumed to have bounded eigenvalues. The Coriolis and centrifugal matrix \(\boldsymbol{{C}}(\boldsymbol{{q}}, \dot{\boldsymbol{{q}}}) \in \mathbb{R}^{n\times n}\) fulfills the skew symmetry of \((\smash{\dot{\boldsymbol{{M}}}} -2\boldsymbol{{C}})\). The motor inertia matrix and the vector of applied motor torques are denoted as \(\boldsymbol{{B}}\in\smash{\mathbb{R}^{n\times n}}\) and \(\boldsymbol{{\tau}}_m \in \smash{\mathbb{R}^n}\), respectively. The motor side and the link side are elastically coupled via the elastic torque vector \(\boldsymbol{{\psi}}(\boldsymbol{{\theta}}- \boldsymbol{{q}}) \in \mathbb{R}^n\). It is assumed to be derived from an elastic potential and thus to be monotonic and Lipschitz continuous in the deflection \(\boldsymbol{{\theta }}- \boldsymbol{{q}}\).
We consider systems 1 under motor position control. More precisely, \(\boldsymbol{{\tau}}_m\) is provided by an inner-loop controller such that the motor position \(\boldsymbol{{\theta }}\) follows a desired motor position trajectory \(\boldsymbol{{\theta}}_d(t) \in \mathbb{R}^n\). The link-side dynamics then reduce to \[\label{eq:RD95reduced} \boldsymbol{{M}}\ddot{\boldsymbol{{q}}}+ \boldsymbol{{C}}\dot{\boldsymbol{{q}}}+ \boldsymbol{{g}} = \boldsymbol{{\psi}}(\boldsymbol{{\theta}}_d - \boldsymbol{{q}}+ \boldsymbol{{e}}_\theta ).\tag{2}\] Therein, \(\boldsymbol{{e}}_\theta = \boldsymbol{{\theta }}-\boldsymbol{{\theta}}_d \in \mathbb{R}^n\) denotes the motor-side tracking error. We consider the desired motor angle as our control input, i.e., \(\boldsymbol{{u}}=\boldsymbol{{\theta}}_d\).
If the elastic torque relation \(\boldsymbol{{\psi}}(\boldsymbol{{\theta}}-\boldsymbol{{q}})\) is known and if the motor position error remains sufficiently small such that it can be neglected, a controller for 2 can be implemented by solving \[\label{eq:kurzschluss} \boldsymbol{{0}} = \boldsymbol{{\psi}}(\boldsymbol{{u}}- \boldsymbol{{q}}) - \boldsymbol{{\tau}}_d\tag{3}\] for the control input \(\boldsymbol{{u}}\). This results in the closed-loop link-side dynamics \[\boldsymbol{{M}}\ddot{\boldsymbol{{q}}}+ \boldsymbol{{C}}\dot{\boldsymbol{{q}}}+ \boldsymbol{{g}} = \boldsymbol{{\tau}}_d\] corresponding to a rigid-body model driven by the virtual control input \(\boldsymbol{{\tau}}_d\), which can be chosen using standard rigid-body robot control techniques. Consequently, the controller design for a motor-position-controlled flexible-joint robot can then be reduced to the one for a conventional rigid-body robot.
The objective of this work is to develop a model-based adaptive control scheme for the system 2 , that achieves tracking of a desired link-side trajectory \({\boldsymbol{{q}}_d(t) \in \mathbb{R}^n}\) despite uncertainties in the nonlinear torque-deflection model and adapts an estimate of the model online.
The approach presented in this work builds upon the classical adaptive robot controller [9] for torque-controlled rigid robots with uncertain inertial parameters. Utilizing the associated Lyapunov-based design methodology, we derive an adaptive controller for the considered class of motor-position-controlled flexible-joint robots with known inertial parameters but uncertain joint stiffness. For this purpose, the uncertain torque-deflection relation \(\boldsymbol{{\psi}}(\boldsymbol{{\theta}}-\boldsymbol{{q}})\) is expressed as the product of a known, control-input-dependent regressor matrix and an uncertain parameter vector, as detailed in Sec. 3.2. Based on this representation, an implicit control law and a parameter adaptation law are formulated in Sec. 3.3 and Sec. 3.4.
For the derivation of the adaptive control law we will impose the following assumption.
Assumption 1. The motor position controller operates on a sufficiently fast time scale such that the resulting motor position error \(\boldsymbol{{e}}_\theta\) remains negligible for the purposes of the subsequent analysis. In particular, we consider the case \(\boldsymbol{{e}}_\theta = \boldsymbol{{0}}\).
We will discard this idealization in Sec. 4 analyzing robustness of the proposed approach.
Given Assumption 1, it holds \({\boldsymbol{{\psi}}(\boldsymbol{{\theta }}- \boldsymbol{{q}})} = {\boldsymbol{{\psi}}(\boldsymbol{{u}} - \boldsymbol{{q}})}\).
Assumption 2. The torque-deflection relation \(\boldsymbol{{\psi}}(\boldsymbol{{u}}-\boldsymbol{{q}})\) can be decomposed as \[\label{eq:regressor} \boldsymbol{{\psi}}(\boldsymbol{{u}}-\boldsymbol{{q}}) \;=\; \boldsymbol{{Y}}(\boldsymbol{{u}}-\boldsymbol{{q}})\,\boldsymbol{{k}},\qquad{(1)}\] where \(\boldsymbol{{Y}}(\boldsymbol{{u}}-\boldsymbol{{q}})\in\mathbb{R}^{n\times p}\) is a regressor matrix containing a finite number of known basis functions of the deflection, and \(\boldsymbol{{k}} \in\mathbb{R}^p\) is an uncertain constant parameter vector.
In practice, the required set of basis functions is typically not known a priori. However, the mechanical design and calibration measurements usually provide insight into the qualitative structure of \(\boldsymbol{{\psi}}(\boldsymbol{{u}}-\boldsymbol{{q}})\). This knowledge allows the selection of a sufficiently rich set of basis functions in \(\boldsymbol{{Y}}(\boldsymbol{{u}}-\boldsymbol{{q}})\) such that the resulting parameterization approximates the true torque-deflection relation over the relevant operating range.
Given the uncertainty in \(\boldsymbol{{k}}\), only an estimate \(\hat{\boldsymbol{{k}}}\in \mathbb{R}^p\) is considered available, in the following. The estimated torque-deflection relation evaluates as \[\label{eq:springtorque32estimated} \hat{\boldsymbol{{\psi}}}(\boldsymbol{{u}}-\boldsymbol{{q}}) = \boldsymbol{{Y}} (\boldsymbol{{u}}-\boldsymbol{{q}}) \, \hat{\boldsymbol{{k}}}.\tag{4}\] We will utilize this relation to formulate a link-side tracking controller and then provide a parameter adaptation law for \(\hat{\boldsymbol{{k}}}\), such that the tracking errors converge to zero.
Following [9], we aim at injecting the torque \[\label{eq:slotine32li} \boldsymbol{{\tau}}_d = \boldsymbol{{M}}(\boldsymbol{{q}})\ddot{\boldsymbol{{q}}}_r + \boldsymbol{{C}}(\boldsymbol{{q}},\dot{\boldsymbol{{q}}})\dot{\mathbf{q}}_r+ \boldsymbol{{g}}(\boldsymbol{{q}}) -\boldsymbol{{K}}_s(t)\boldsymbol{{s}}\tag{5}\] on the link-side, i.e., a tracking controller based on the sliding-variable \(\boldsymbol{{s}} \in \mathbb{R}^n\). The sliding variable is defined as \[\label{eq:s} \boldsymbol{{s }} = \dot{\boldsymbol{{e}}}_q+ \boldsymbol{{K}}_p \boldsymbol{{e}}_q= \dot{\boldsymbol{{q}}}- \dot{\boldsymbol{{q}}}_r\tag{6}\] with \(\dot{\boldsymbol{{q}}}_r = \dot{\boldsymbol{{q}}}_d - \boldsymbol{{K}}_p \boldsymbol{{e}}_q\) and constant, positive definite gain matrix \({\boldsymbol{{K}}_p \in\mathbb{R}^{n\times n}}\). By construction, convergence of \(\boldsymbol{{s}}\) to zero implies convergence of the tracking errors \(\boldsymbol{{e}}_q= \boldsymbol{{q}}- \boldsymbol{{q}}_d\) and \(\dot{\boldsymbol{{e}}}_q= \dot{\boldsymbol{{q}}}- \dot{\boldsymbol{{q}}}_d\) to zero. The gain matrix \(\boldsymbol{{K}}_s(t)\in\mathbb{R}^{n \times n}\) in 5 is continuous, positive definite with uniformly bounded eigenvalues.
If the true parameter vector \(\boldsymbol{{k}}\) from ?? were known, the motor input could be computed directly from 3 in order to inject the desired torque 5 exactly. With only the estimate \(\hat{\boldsymbol{{k}}}\) available, we instead choose \(\boldsymbol{{u}}\) such that the following is satisfied \[\label{eq:control32law} \boldsymbol{{0}} = \boldsymbol{{Y}}(\boldsymbol{{u}}- \boldsymbol{{q}})\hat{\boldsymbol{{k}}}\, - \, \underbrace{ ( \boldsymbol{{M}}\ddot{\boldsymbol{{q}}}_r + \boldsymbol{{C}}\dot{\mathbf{q}}_r+ \boldsymbol{{g}} -\boldsymbol{{K}}_s\boldsymbol{{s}})}_{\boldsymbol{{\tau}}_d} .\tag{7}\] Thus, the motor position is chosen such that the estimated spring torque balances the desired torque \(\boldsymbol{{\tau}}_d\). Equation 7 constitutes an implicit control law. Existence of an analytical solution for \(\boldsymbol{{u}}\) depends on the utilized basis functions in the regressor. Two common special cases admitting an explicit formulation of the control law are addressed in the following. If no analytical solution exists, 7 must be solved numerically for the control input.
For joints with linear torque-deflection relation, where the only uncertainty is the joint stiffness, the regressor \({\boldsymbol{{Y}}(\boldsymbol{{u}}- \boldsymbol{{q}}) = \mathrm{diag}(\boldsymbol{{u}}- \boldsymbol{{q}}) \in \mathbb{R}^{n\times n}}\) only contains linear functions. Equation 7 can then be solved for \(\boldsymbol{{u}}\) as \[\label{eq:linear} \boldsymbol{{u}}= \boldsymbol{{q}}+ \left(\mathrm{diag}\left(\hat{\boldsymbol{{k}}}\right)\right)^{-1}\boldsymbol{{\tau_d}},\tag{8}\] i.e., there exists an explicit control law. To ensure well-defined torque generation, the entries of \(\hat{\boldsymbol{{k}}}\) must remain nonzero.
Consider a cubic torque-deflection relation of the \(i\)-th joint of the form \({ \varphi_i(\theta_i - q_i) = k_{3,i}(\theta_i - q_i)^3 + k_{1,i}(\theta_i - q_i)}\) with linear and cubic stiffness coefficients \(k_{1,i}, k_{3,i} > 0\), where all uncertainty is assumed to be contained in the coefficients. The mapping \(\varphi_i(\theta_i - q_i)\) is strictly monotonically increasing. Hence, the relation is globally invertible.
For this special case, the implicit control law 7 reduces componentwise to the cubic equation \[\begin{bmatrix} (u_{i} - q_i)^3 & (u_{i} - q_i) \end{bmatrix} \begin{bmatrix} \hat{k}_{3,i} \\ \hat{k}_{1,i} \end{bmatrix} = \tau_{d,i}.\]
Using Cardano’s formula, the solution \(u_{i}\) can be expressed analytically for arbitrary desired torques \(\tau_{d,i} \in \mathbb{R}\) as \[\label{eq:cubic95solution} u_{i} = q_i + \sqrt[3]{\frac{\tau_{d,i}}{2\hat{k}_{3,i}} + a_i} + \sqrt[3]{\frac{\tau_{d,i}}{2\hat{k}_{3,i}} - a_i},\tag{9}\] with \[a_i = \sqrt{ \frac{\tau_{d,i}^2}{4\hat{k}_{3,i}^2} + \frac{\hat{k}_{1,i}^3}{27\hat{k}_{3,i}^3} }.\] as long as the estimates \(\hat{k}_{3,i}\) and \(\hat{k}_{1,i}\) remain nonzero.
Substituting 7 in the robot dynamics 2 with Assumptions 1 and 2 yields the closed-loop dynamics \[\begin{align} \boldsymbol{{M}}\ddot{\boldsymbol{{q}}}+ \boldsymbol{{C}}\dot{\boldsymbol{{q}}}+ \boldsymbol{{g}} &= \boldsymbol{{\tau}}_d + \boldsymbol{{Y}}(\boldsymbol{{u}}- \boldsymbol{{q}})\boldsymbol{{e}}_k,\\ \label{eq:closed32loop} \boldsymbol{{M}}\dot{\boldsymbol{{s}}} + (\boldsymbol{{C}} +\boldsymbol{{K}}_s)\boldsymbol{{s}} &= \boldsymbol{{Y}}(\boldsymbol{{u}}- \boldsymbol{{q}})\boldsymbol{{e}}_k. \end{align}\tag{10}\] The term \(\boldsymbol{{Y}}(\boldsymbol{{u}}- \boldsymbol{{q}})\boldsymbol{{e}}_k\) acts as a disturbance decreasing with the parameter estimation error \(\boldsymbol{{e}}_k= \boldsymbol{{k}} -\hat{\boldsymbol{{k}}}\). We will formulate an adaptation law, such that \(\boldsymbol{{s}}\) converges to zero despite this disturbance. We employ the Lyapunov function candidate \[\label{eq:S} {S}(\boldsymbol{{s}}, \boldsymbol{{e}}_k, t) = \underbrace{\frac{1}{2}\boldsymbol{{s}}^T\boldsymbol{{M}}(\boldsymbol{{q}})\boldsymbol{{s}}}_{S_s(\boldsymbol{{s}}, t)} + \underbrace{\frac{1}{2}\boldsymbol{{e}}_k^T\boldsymbol{{A}}\boldsymbol{{e}}_k}_{S_k(\boldsymbol{{e}}_k)}.\tag{11}\] which is structurally identical to the one in [9]. It consists of a time-dependent tracking contribution \(S_s(\boldsymbol{{s}}, t)\) and a parameter error contribution \(S_k(\boldsymbol{{e}}_k)\) with diagonal, positive definite matrix \(\boldsymbol{{A}} \in \mathbb{R}^{p\times p}\).
As the inertia matrix \(\boldsymbol{{M}}(\boldsymbol{{q}})\) is symmetric and positive definite with uniformly bounded eigenvalues, \({S}\) is bounded from below and above by positive definite functions in \((\boldsymbol{{s}},\boldsymbol{{e}}_k)\).
The time derivative of \(S\) along the trajectories of the closed-loop system evaluates as \[\begin{align} \dot{{S}} & = -\boldsymbol{{s}}^T\boldsymbol{{K}}_s\boldsymbol{{s}} \, + \, \left(\dot{\boldsymbol{{e}}}_k^T\boldsymbol{{A}} \,+\, \boldsymbol{{s}}^T\boldsymbol{{Y}}(\boldsymbol{{u}}-\boldsymbol{{q}})\right)\boldsymbol{{e}}_k \end{align}\] due to skew-symmetry of \(\dot{\boldsymbol{{M}}} -2\boldsymbol{{C}}\). It becomes negative-semi-definite for the parameter adaptation law \[\label{eq:adaptation32law} \dot{\hat{\boldsymbol{{k}}}} = \boldsymbol{{A}}^{-1}\boldsymbol{{Y}}^T\boldsymbol{{s}},\tag{12}\] which renders the equilibrium \(\begin{bmatrix} \boldsymbol{{s}}^T & \boldsymbol{{e}}_k^T \end{bmatrix} = \boldsymbol{{0}}\) uniformly globally stable.
To analyze convergence properties, Barbalat’s Lemma can be utilized equivalently as in [9]. In short, the boundedness of \(\ddot{S} = -\boldsymbol{{s}}^T\dot{\boldsymbol{{K}}_s}\boldsymbol{{s}} + 2\boldsymbol{{s}}^T\boldsymbol{{K}}_s\dot{\boldsymbol{{s}}}\) implies that \(\dot{S}\), which is known to be bounded, converges to zero for \(t\rightarrow\infty\). Thus \(\boldsymbol{{s}}\) globally uniformly converges to zero for \(t\rightarrow\infty\). By 6 , this implies global uniform convergence of \(\begin{bmatrix} \boldsymbol{{e}}_q^T & \dot{\boldsymbol{{e}}}_q^T \end{bmatrix} \rightarrow \boldsymbol{{0}}\) for \(t\rightarrow\infty\).
We summarize the previous results as follows.
Theorem 1. Consider the motor-position controlled flexible joint robot 2 with uncertain torque-deflection relation \(\boldsymbol{{\psi}}(\boldsymbol{{\theta }}- \boldsymbol{{q}}) = \boldsymbol{{Y}}(\boldsymbol{{\theta }}- \boldsymbol{{q}})\,\boldsymbol{{k}}\) under Assumptions 1 and 2. Under the control law 7 and adaptation law 12 global uniform convergence of \(\begin{bmatrix} \boldsymbol{{e}}_q^T & \dot{\boldsymbol{{e}}}_q^T \end{bmatrix} \rightarrow \boldsymbol{{0}}\) is achieved for \(t \rightarrow \infty\). A parameter estimate \(\hat{\boldsymbol{{k}}}\) is adapted online such that the parameter estimation error remains bounded.
Note that convergence of \(\hat{\boldsymbol{{k}}}\) is not guaranteed. Figure 1 shows the overall structure of the controller.
Let us now evaluate robustness of the proposed approach against errors induced by the inner-loop controller. Consider 2 . It holds \[\begin{align} \tag{13} \boldsymbol{{\psi}}(\boldsymbol{{\theta }}- \boldsymbol{{q}}) &= \boldsymbol{{\psi}}\left(\boldsymbol{{\theta}}_d - \boldsymbol{{q}}+ \boldsymbol{{e}}_\theta\right)\\ \tag{14} &= \boldsymbol{{\psi}}\left(\boldsymbol{{\theta}}_d - \boldsymbol{{q}}\right) + \boldsymbol{{\tau}}_{e}, \end{align}\] with \(\boldsymbol{{\tau}}_{e}\in \mathbb{R}^n\) and \({\vert\vert \boldsymbol{{\tau}}_{e} \vert \vert}_2 \leq k_{\psi}\, {\vert\vert \boldsymbol{{e}}_\theta \vert \vert}_2\) due to the monotonicity and Lipschitz continuity of the spring torque. Here, \(k_{\psi}> 0\) denotes the Lipschitz constant of the joint with the largest maximum stiffness. Applying the adaptive controller 7 and 12 then results in the closed-loop system \[\tag{15} \begin{align} \tag{16} \boldsymbol{{M}}\dot{\boldsymbol{{s}}} + (\boldsymbol{{C}} +\boldsymbol{{K}}_s)\boldsymbol{{s}} &= \boldsymbol{{Y}}(\boldsymbol{{u}}- \boldsymbol{{q}})\boldsymbol{{e}}_k+ \boldsymbol{{\tau}}_{e}\\ \tag{17} \dot{\boldsymbol{{e}}}_k&= -\boldsymbol{{A}}^{-1}\boldsymbol{{Y}}^T\boldsymbol{{s}}. \end{align}\] The error dynamics 16 in \(\boldsymbol{{s}}\) now includes an additional disturbance term \(\boldsymbol{{\tau_e}}\) as an input, which depends on the motor position error \(\boldsymbol{{e}}_\theta\).
Theorem 2. Consider the system 2 with motor position error \(\boldsymbol{{e}}_\theta(t)\) under the control law 7 and adaptation law 12 . The following holds:
The closed-loop system is finite-gain \(\mathcal{L}_2\) stable with respect to the input \(\boldsymbol{{e}}_\theta\) and the output \(\boldsymbol{{s}}\).
If \(\boldsymbol{{e}}_\theta\in \mathcal{L}_2\), \(\boldsymbol{{s}}\) and \(\boldsymbol{{e}}_k\) are uniformly bounded. Further, \(\boldsymbol{{s}} \rightarrow \boldsymbol{{0}}\) for \(t \rightarrow \infty\) and thus \(\begin{bmatrix} \boldsymbol{{e}}_q^T & \dot{\boldsymbol{{e}}}_q^T \end{bmatrix} \rightarrow \boldsymbol{{0}}\) for \(t \rightarrow \infty\).
Proof. Consider the function \(S(\boldsymbol{{s}},\boldsymbol{{e}}_k,t)\) from 11 . The time derivative along the trajectories of the closed-loop system 15 is then obtained as \[\begin{align} \tag{18} \dot{S} &= - \boldsymbol{{s}}^T \boldsymbol{{K}}_s\boldsymbol{{s}} + \boldsymbol{{s}}^T \boldsymbol{{\tau}}_{e}\\ \tag{19} &\leq - \underbrace{(1 - \epsilon)k_{s,min}}_{\coloneq c_1} \, \boldsymbol{{s}}^T\boldsymbol{{s}} + \underbrace{(4\epsilon k_{s,min})^{-1}}_{\coloneq c_2} \, \boldsymbol{{\tau}}_{e}^T\boldsymbol{{\tau}}_{e} \end{align}\] where \(k_{s,min}> 0\) is the smallest eigenvalue of \(\boldsymbol{{K}}_s\) and \(\epsilon\) is an arbitrary constant, such that it holds \(0 < \epsilon < 1\).3 The positive constants \(c_1\) and \(c_2\) are defined by this relation. Using this as a starting point, we prove the statements 1 and 2 consecutively.
Let us integrate \(\eqref{eq:32dissipation}\) from \(t = 0\) to \(t = T\). We obtain \[\begin{align} \label{eq:32integrated32S} S_T - S_0 \leq - c_1 \int_{0}^{T}\boldsymbol{{s}}^T\boldsymbol{{s}} \, dt + c_2 \int_{0}^{T}\boldsymbol{{\tau}}_{e}^T \boldsymbol{{\tau}}_{e}\, dt \end{align}\tag{20}\] with \(S_T =S(\boldsymbol{{s}}(T), \boldsymbol{{e}}_k(T), T)\) and \(S_0 = S(\boldsymbol{{s}}(0), \boldsymbol{{e}}_k(0), 0)\). With \(S_T \geq 0\), this immediately yields
\[\begin{align} \label{lxcdtghy} \sqrt{\int_{0}^{T} \boldsymbol{{s}}^T \boldsymbol{{s}} \, dt} &\leq \, \gamma_1 \, \sqrt{\int_{0}^{T} \boldsymbol{{\tau}}_{e}^T \boldsymbol{{\tau}}_{e}\, dt} + \beta \\ &\leq \, \gamma_2 \, \sqrt{\int_{0}^{T} \boldsymbol{{e}}_\theta^T \boldsymbol{{e}}_\theta\, dt} + \beta \end{align}\tag{21}\] with \(\gamma_1 = \sqrt{c_2c_1^{-1}}\), \({\beta = \sqrt{S_0c_1^{-1}}}\) and \(\gamma_2 = k_{\psi}\gamma_1\). Considering \(T \rightarrow \infty\), this implies that the closed-loop system with input \(\boldsymbol{{e}}_\theta\) and output \(\boldsymbol{{s}}\) is finite-gain \(\mathcal{L}_2\) stable (c.f., e.g. [17]).
Consider again 20 . For \(\boldsymbol{{e}}_\theta\in \mathcal{L}_2\) it holds \(\boldsymbol{{\tau}}_{e}\in \mathcal{L}_2\). Further, we just showed that then \(\boldsymbol{{s}} \in \mathcal{L}_2\). Thus, the right hand side of 20 is bounded \(\forall t\). This implies uniform boundedness of \(S_T\), which, in turn, yields uniform boundedness of \(\boldsymbol{{s}}\) and \(\boldsymbol{{e}}_k\).
Consider the function \({f(t) = \int_{0}^{t} \boldsymbol{{s}}^T\boldsymbol{{s}} \, dr}\). Given \(\boldsymbol{{e}}_\theta\in \mathcal{L}_2\) it holds \(\boldsymbol{{s}} \in \mathcal{L}_2\) as it has been shown in the proof of Statement 1. As \(f(t)\) is thus upper bounded and as the integrand is monotonically increasing, \(f(t)\) approaches a finite limit for \(t \rightarrow \infty\).
Now consider \(\ddot{f}(t) = 2 \boldsymbol{{s}}^T\dot{\boldsymbol{{s}}}\). As \(\boldsymbol{{s}}\) and \(\boldsymbol{{e}}_k\) have been shown to be bounded, we can conclude boundedness of \(\dot{\boldsymbol{{s}}}\) from 16 . Thus, \(\ddot{f}(t)\) is bounded. This implies that \(\dot{f}(t) = \boldsymbol{{s}}^T\boldsymbol{{s}}\) is uniformly continuous.
By Barbalat’s Lemma, we can now conclude \(\dot{f}(t)\rightarrow 0\) for \(t \rightarrow \infty\). Thus, \(\boldsymbol{{s}}\rightarrow\boldsymbol{{0}}\) and \(\begin{bmatrix} \boldsymbol{{e}}_q^T & \dot{\boldsymbol{{e}}}_q^T \end{bmatrix} \rightarrow \boldsymbol{{0}}\). ◻
To validate the performance of the approach under distinct torque-deflection characteristics, we perform trajectory tracking experiments with a variable stiffness actuator varying the physical stiffness during the motion.
The utilized setup is depicted in Fig. 2. It consists of the motor-position controlled VSA [3] rotating a weight of \(\SI{0.5}{\kilogram}\) attached on a lever in the horizontal plane.
The considered actuator contains two servo motors with motor positions \(\boldsymbol{{\theta}}_1\) and \(\boldsymbol{{\theta}}_2\). Stiffness and position adjustments are decoupled [3]. Via increasing the relative motor position \({\Delta \boldsymbol{{\theta }}= \num{0.5}(\boldsymbol{{\theta}}_2 - \boldsymbol{{\theta}}_1)}\), the stiffness setting can be increased, whereas the equilibrium position is determined as \({\boldsymbol{{\theta }}= \num{0.5}(\boldsymbol{{\theta}}_1 + \boldsymbol{{\theta}}_2)}\). Given a fixed \(\Delta\boldsymbol{{\theta }}\), the actuator can thus be treated as a series elastic actuator [5], [7]. The link-side system dynamics can then be expressed in terms of \(\boldsymbol{{\theta}}\) in the form 2 as \[\begin{align} \boldsymbol{{M}}\ddot{\boldsymbol{{q}}}&= \boldsymbol{{\psi}}(\boldsymbol{{\theta }}- \boldsymbol{{q}})\\ & = \boldsymbol{{\psi}}(\boldsymbol{{u}}- \boldsymbol{{q}}) + \boldsymbol{{\tau}}_{e} \end{align}\] with \(\boldsymbol{{M}}= \SI{0.0129}{\newton\metre\second^2/\radian}\) and control input \(\boldsymbol{{u}}\).
In the following, we operate the actuator at two distinct relative motor positions. We will refer to the setting with \({\Delta\boldsymbol{{\theta }}= \SI{0.5}{\radian}}\) as the high stiffness preset and \({\Delta\boldsymbol{{\theta }}= \SI{0.35}{\radian}}\) as the low stiffness preset. According to the datasheet and [7], the corresponding nonlinear torque-deflection relations with deflection \(\boldsymbol{{\delta}} = \boldsymbol{{\theta }}- \boldsymbol{{q}}\) are obtained as \[\tag{22} \begin{align}\tag{23} \boldsymbol{{\psi}}_{high}(\boldsymbol{{\delta}}) &= 0.166\, \mathrm{sinh}\left(8.999\, \boldsymbol{{\delta}} \right),\\ \tag{24} \boldsymbol{{\psi}}_{low}(\boldsymbol{{\delta}}) &= 0.043\, \mathrm{sinh}\left(8.999\, \boldsymbol{{\delta}} \right), \end{align}\] respectively.
Considering 22 , a hyperbolic sine function could be a suitable choice for a basis function of the regressor. Moreover, as depicted in Fig. 2 (b), the functions 22 can be approximated by the cubic function \[\begin{align} \label{eq:cube32cubic} \boldsymbol{{\psi}}_{cubic} (\boldsymbol{{\delta}}) &= k_3 \boldsymbol{{\delta}}^3 + k_1 \boldsymbol{{\delta}}\\ &= \begin{bmatrix} \boldsymbol{{\delta}}^3 & \boldsymbol{{\delta}} \end{bmatrix} \begin{bmatrix} k_3 \\ k_1 \end{bmatrix} = \boldsymbol{{Y}}(\boldsymbol{{\delta}})\boldsymbol{{k}} \end{align}\tag{25}\] with parameters \({\boldsymbol{{k}}_{high} = \begin{bmatrix} 28 & 1.5 \end{bmatrix}^T}\) for 23 and \({\boldsymbol{{k}}_{low} = \begin{bmatrix} 8 & 0.38 \end{bmatrix}^T}\) for 24 in a range of deflections \({\boldsymbol{{\delta }}\leq \SI{0.4}{\radian}}\).
We will utilize the cubic regressor \(\boldsymbol{{Y}}(\boldsymbol{{u}}-\boldsymbol{{q}})\) from 25 with \(\boldsymbol{{\delta }}= \boldsymbol{{u}}-\boldsymbol{{q}}\) for the formulation of the adaptive controller. This choice is guided by the datasheet relation and allows for an explicit formulation of the control law while the behavior for large and small deflections can be adjusted distinctly via the cubic and linear parameter.
For the experiments, we aim at tracking a desired link-side trajectory \[\label{eq:traj} \boldsymbol{{q}}_d(t) = 0.5 \pi \left( \sin\left(\frac{8\pi}{T} t\right) + \sin\left(\frac{2\pi}{T} t\right) \right),\tag{26}\] which is periodic with \(T = \SI{6.5}{\second}\). The actuator’s stiffness setting is held constant for two consecutive periods before being switched between the defined high and low settings. This alternating pattern is maintained over multiple cycles throughout the experiment.
We compare the performance of the proposed adaptive controller using an initial parameter estimate \(\hat{\boldsymbol{{k}}}_{0} = \boldsymbol{{k}}_{high}\) against two baseline approaches, which we will refer to as baseline - high and baseline - low. These use the same control law 7 , but the constant parameter estimates \(\hat{\boldsymbol{{k}}}= \boldsymbol{{k}}_{high} = const.\) and \(\hat{\boldsymbol{{k}}}= \boldsymbol{{k}}_{low} = const.\), respectively, i.e., we deactivate the parameter adaptation. To ensure physically meaningful estimates of the torque-deflection models and to prevent numerical issues due to 9 , we implement lower thresholds for the parameter estimates, i.e. \(\hat{k}_1, \, \hat{k}_3 \geq 10^{-3}\).
We provide an overview of utilized gains and initial parameter estimates in Table ¿tbl:tab:gains?.
The controllers are implemented at a control frequency of \(\SI{200}{\hertz}\).
Figure 3 shows the tracking results over five stiffness cycles. We provide \(\boldsymbol{{q}}(t)\) under the baseline approaches without adaptation (top), \(\boldsymbol{{q}}(t)\) under the proposed adaptive controller (middle) and the normed error \(\sqrt{\int_{t_0}^{t_0 + 2T} \boldsymbol{{s}}^T\boldsymbol{{s}} \, dt}\) per cycle with cycle starting time \(t_0\).
As the adaptive controller (red) has been initialized with \(\hat{\boldsymbol{{k}}}(t=0) = \boldsymbol{{k}}_{high}\), its performance is comparable to the baseline approach using the high stiffness model (blue) during the first cycle. However, then the tracking of \(\boldsymbol{{q}}_d(t)\) improves. Starting from the third cycle, the adaptive controller achieves the least normed tracking error in both the cycles with high and low stiffness setting.
The evolution of the parameter estimates is depicted in Fig. 4. Both the cubic and the linear parameter estimates reduce during the high stiffness setting of the first cycle. With the second cycle, the adaptation rate further decreases to account for the reduced stiffness. Notably, the cubic estimate reaches its lower threshold at almost zero during this cycle. Conversely, the linear parameter stabilizes at \(\hat{k}_1\approx 0.5\), which is larger than the linear contribution to \(\boldsymbol{{k}}_{low}\) obtained from the datasheet.
It may contradict the expectation that the parameter estimates do not increase in the third and fifth cycle, after the stiffness setting is switched from low to high. However, the adaptive controller does not guarantee convergence of the parameter estimate to its real value. It only adjusts the estimate, if there is a tracking error. Notably, the tracking performance remains consistent starting from the third cycle even without parameter adjustment. This may be due to the fact that the estimated, low, constant stiffness can be understood as high gain on the desired link-side torque (cf. 8 ). Note that this interpretation aligns with the observation that the baseline - low controller (yellow) is more performant than the baseline - high one (blue).
This work addressed adaptive control of motor-position-controlled flexible-joint robots with uncertain, nonlinear joint stiffness. We designed an implicit control law and an adaptation law for the case of an ideal motor-position interface proving convergence of tracking errors to zero. Further, we analyzed robustness of the approach with respect to motor-side control errors.
Experimental results confirm that the proposed approach can enhance the tracking performance of a motor-position-controlled flexible joint with an uncertain torque-deflection relation. The approach was able to react to the stiffness changes introduced via a variable stiffness mechanism and outperformed controllers utilizing a constant torque-deflection model. This motivates applying the approach in robotic joints, whose torque-deflection characteristics are expected to strongly depend on operating conditions. This could, e.g., be promising for systems involving low-cost elastic elements such as the springs fabricated from PLA introduced in [18].
Future work could develop adaptation laws that ensure physically meaningful estimates of the stiffness characteristics. To improve parameter estimation, it seems also promising to utilize information from the torque prediction error as in [10].
Finally, extensions to further classes of robots with joint flexibility, such as antagonistically driven VSA or twisted string actuators, seem promising.
This work was supported in part by the European Research Council (ERC) through the European Union’s Horizon Europe research and innovation programme under Grant 101248099 (CORIM).↩︎
\(^1\)Christian Ott is also with the Institute of Robotics and Mechatronics, German Aerospace Center (DLR), Wessling, Germany.↩︎