Abstract
At present, there are several tasks automated by robotic systems that require a precise regulation of the applied force to achieve an adequate robot–environment interaction. To address this control problem, this paper presents an explicit force control structure that has two very relevant features for interaction tasks: (1) the operation of robot actuators within a safe region is guaranteed without exceeding their torque limits, and (2) the parametric uncertainty related to gravitational forces and environment stiffness is compensated. The structure of the proposed control scheme is based on generalized saturation functions; therefore, bounded control actions are obtained without restricting the tuning of gain parameters to achieve an adequate performance. In addition, in order to achieve a compliant robot–environment interaction, the controller structure also includes a speed-dependent active damping term that uses generalized saturation functions to obtain a bounded response. Furthermore, the proposed explicit force controller is supported by a rigorous stability analysis via Lyapunov’s theory. Finally, a numerical simulation test is presented to validate its correct performance, using the dynamic model of a three-degree-of-freedom robot manipulator interacting with a rigid environment.
Similar content being viewed by others
Avoid common mistakes on your manuscript.
1 Introduction
In recent years, robotic systems have been used in increasingly complex applications that require physical contact with different types of environments or interaction with humans (Gao and Chien 2017; Mekki et al. 2018; Peters et al. 2018). For example, in space exploration tasks, robotic systems are required to operate in unknown environments and collect samples of different materials through precise manipulation that requires force regulation (Zuo et al. 2018; Schuster et al. 2019). On the other hand, in the medical area, robots must interact with humans either to support them in rehabilitation therapies, assist them with prosthetic devices or perform surgical procedures, applying in all cases appropriate force levels (Arnold and Lee 2021; Khoshdel et al. 2018; Karar 2018; Fu and Santello 2018; Osa et al. 2017). All robotic tasks or applications described above require ensuring the safety of both the robot and the environment/humans, and one way to achieve it is through control schemes with bounded actions (He et al. 2020; Zanchettin et al. 2015).
An effective approach to solving this problem is robot force control, in general interaction control algorithms can be classified into explicit and implicit force control (Winkler and Suchý 2015). In explicit force control, the desired contact forces/torques for robot–environment interaction can be predefined, thus it is possible to achieve an adequate interaction by applying a specific force level (Sheng et al. 2017). On the other hand, by mechanical impedance or stiffness in implicit force controllers, it is possible to modify the desired movement of the robot without specifying a force value required to interact correctly, then it is not necessary to directly set the desired contact force (Lakshminarayanan et al. 2021).
Within an industrial environment, several tasks require precise regulation of the contact force, including polishing, deburring and component assembly. In order to achieve a stable closed-loop response in this kind of tasks, Chávez-Olivares et al. propose a family of explicit force controllers for robot manipulators which is supported on a stability analysis in the Lyapunov sense (Chávez-Olivares et al. 2015). In addition, a study on the influence of posture in the force control of redundant robots and how it affects robot interaction capabilities is presented in Ajoudani et al. (2017). Now, for medical purposes, Karar proposes an adaptive force control scheme that uses fuzzy logic to tune a PID controller and thus let a robotic probe to interact with different desired force levels (Karar 2018). In a bilateral teleoperation system, the information flows bilaterally between the human operator and the remote environment, these systems are normally used in hostile environments or in applications that require precise haptic sensations (as robot-assisted surgery or tele-rehabilitation), then a force control scheme that seek to improve the monitoring of slave/environment contact force or the human/haptic-device interaction is quite appropriate (Na 2017). All these works focus on aspects that are aimed at improving performance in interaction tasks; however, they do not completely solve the problem of achieving safe interaction and assume that the robotic system has the torque capability to perform any type of task.
In recent years, many control schemes with bounded actions have been proposed; however, in most cases, they have mainly addressed the problems of regulation and tracking in tasks where the robot moves freely (Zavala-Río et al. 2016; López-Araujo et al. 2015; Zamora-Gómez et al. 2020, 2019). To date, very few interaction control schemes with bounded actions have been proposed. In the case of implicit force control, a couple of stiffness control algorithms have been presented, the first being a scheme requiring exact compensation of gravitational forces (Rodríguez-Liñán et al. 2017) and the second being a vision-based controller that has the limitation of working only on a plane (Vidrios-Serrano et al. 2021). On the other hand, the explicit force controllers presented in Pliego-Jiménez et al. (2019) and Ohhira et al. (2021) consider torque constraints in the robotic system. However, the structure proposed in Pliego-Jiménez et al. (2019) restricts the range of gain values that can be selected to achieve bounded actions at the cost of limiting performance or convergence to zero of force error, while the controller proposed in Ohhira et al. (2021) represents a kinematic solution that controls the interaction indirectly. Therefore, as far as we know, our proposal is one of the first to address the problem of explicit force control by ensuring the generation of bounded actions without limiting the selection of controller gain parameters. Thus, in this work, an adaptive force controller for robot manipulators is proposed, which aims to improve the robot–environment interaction in a safer way. The proposed control scheme is based on the use of generalized saturation functions, which makes it possible to ensure that the actuators of the robotic system operate within a safe region without exceeding their torque limits. Likewise, to compensate for the parametric uncertainty related to gravitational forces and the environment stiffness, the scheme includes an adaptive term within its structure. In addition, the proposed control scheme has a rigorous stability analysis that validates its proper functioning and, as an example, numerical simulation results are presented using a robot manipulator of three degrees of freedom.
2 Preliminaries
2.1 Notation and definitions
Let \(A \in \mathbb {R}^{n \times m}\) and \(y\in \mathbb {R}^n\); while \(A_i\) is the i-th row vector of matrix A, \(A_{ij}\) is the element of matrix A located in the i-th row and the j-th column, and \(y_i\) represents the i-th element of vector y. The origin of \(\mathbb {R}^n\) is denoted by \(0_n\) and the \(n\times n\) identity matrix is represented as \(I_n\). The Euclidean norm of vectors and the induced norm of matrices are denoted by \(\Vert y\Vert =\sqrt{y^Ty}\) and \(\Vert A\Vert =\sqrt{\lambda _\mathrm{max}\{A^TA\}}\), respectively, where \(\lambda _\mathrm{max}\{{A}^TA\}\) is the maximum eigenvalue of matrix \(A^TA\).
Let \(\zeta :\mathbb {R}\longmapsto \mathbb {R}\) be a continuously differentiable scalar function and \(\varphi :\mathbb {R}\longmapsto \mathbb {R}\) be a locally Lipschitz, continuous, scalar function, both vanishing at zero, i.e., \(\zeta \left( 0\right) =\varphi \left( 0\right) =0\). In addition, \(\zeta ^\prime \) represents the derivative of \(\zeta \) with respect to its argument, i.e., \(\zeta ^\prime \left( \varsigma \right) =\partial \zeta \left( \varsigma \right) /\partial \varsigma \). While the upper right-hand derivative of \(\varphi \) is given by \(D^+\varphi \left( \varsigma \right) =\lim \sup _{h\rightarrow 0^+}{[\varphi (\varsigma + h)-\varphi (\varsigma )]h}\), \(\forall \varsigma \in \mathbb {R}\), thus \(\varphi \left( \varsigma \right) =\int _{0}^{\varsigma }{D^+\varphi \left( r\right) \mathrm{d}r}\) (Khalil 2002).
Definition 1
A nondecreasing Lipschitz-continuous function \(\sigma : \mathbb {R} \rightarrow \mathbb {R}\) bounded by \(M > 0\) is a generalized saturation function (GSF) if
-
(a)
\(\varsigma \sigma (\varsigma ) > 0, \forall \varsigma \ne 0.\)
-
(b)
\(|\sigma (\varsigma )| \le M, \forall \varsigma \in \mathbb {R}\).
-
(c)
In addition, if \(\sigma (\varsigma ) = \varsigma \) when \(|\varsigma | \le L\), for some \(0 < L \le M\), then \(\sigma \) is a linear generalized saturation function (L-GSF) for (L, M).
Furthermore, the function \(\sigma \) satisfies the following properties for a constant \(k > 0\) (Vidrios-Serrano et al. 2021):
-
1.
\(\lim _{|\varsigma |\rightarrow \infty } D^+ \sigma (\varsigma ) = 0\).
-
2.
\(\exists \sigma '_M \in (0,\infty )\) : \(0 \le D^+ \sigma (\varsigma ) \le \sigma '_M, \forall \varsigma \in \mathbb {R}\).
-
3.
\(\frac{\sigma ^2(k\varsigma )}{2k\sigma '_M} \le \int _{0}^{\varsigma } \sigma (k r) \mathrm{d}r \le \frac{k \sigma '_M \varsigma ^2 }{2}, \forall \varsigma \in \mathbb {R}\).
-
4.
\(\int _{0}^{\varsigma } \sigma (k r) \mathrm{d}r > 0, \forall \varsigma \ne 0\).
-
5.
\(\int _{0}^{\varsigma } \sigma (k r)\mathrm{d}r \rightarrow \infty \) as \(\varsigma \rightarrow \infty \).
-
6.
If \(\sigma \) is strictly increasing, then
-
a.
\(\varsigma [ \sigma (\varsigma + \eta ) - \sigma (\eta ) ] > 0, \; \forall \varsigma \ne 0, \; \forall \eta \in \mathbb {R}\).
-
b.
\(\bar{\sigma } (\varsigma ) = \sigma (\varsigma + a) - \sigma (a)\) is a strictly increasing generalized saturation function (SI-GSF), for any constant \(a \in \mathbb {R}\) and bounded by \(\bar{M} = M + |\sigma (a)|\).
-
a.
-
7.
If \(\sigma \) is a linear saturation for (L, M) then, for any continuous function \(\nu : \mathbb {R} \mapsto \mathbb {R}\) such that \(|\nu (\eta )| < L\), it holds that \(\varsigma [ \sigma (\varsigma + \nu (\eta )) - \sigma (\nu (\eta )) ] >0, \; \forall \varsigma \ne 0, \forall \eta \in \mathbb {R}\).
2.2 Dynamic model of robot manipulators
The Euler–Lagrange dynamical equation in joint space for robot manipulators, with n degrees of freedom, is given by
where \(q\in \mathbb {R}^n\), \(\dot{q}\in \mathbb {R}^n\) and \(\ddot{q}\in \mathbb {R}^n\) are the joint position, velocity and acceleration vectors, respectively. \(H(q)\in \mathbb {R}^{n\times n}\), \(C(q,\dot{q})\in \mathbb {R}^{n\times n}\) and \(F\in \mathbb {R}^{n\times n}\) are matrices of inertia, centripetal and Coriolis, and viscous friction torques, respectively. While \(J(q)\in \mathbb {R}^{m\times n}\) represents the analytical Jacobian matrix of the robot. Finally, \(g(q)\in \mathbb {R}^n\), \(\ \tau \in \mathbb {R}^n\) and \(f_{e}\in \mathbb {R}^m\) are vectors of gravitational, control and external interaction torques, respectively.
The following properties of the dynamic model (1) are useful for the further analysis (Kelly et al. 2006; Rodríguez-Liñán et al. 2017).
Property 1
H(q) and F are positive definite symmetric matrices, even F is diagonal.
Property 2
For robots with only revolute joints, g(q) is bounded on \(\mathbb {R}^n\) in such a way that \(\left| g_i(q)\right| \le B_{gi}\), \(\forall q\in \mathbb {R}^n\) and non-negative constants \(B_{gi}\), \(i=1,\ldots ,n\).
Property 3
The vector g(q) can be represented as \(g(q,\theta _g)=G(q)\theta _g\), where \(G(q)\in \mathbb {R}^{n\times p}\) is a regression matrix and \(\theta _g\in \mathbb {R}^p\) is a constant vector of parameters associated with gravity.
Property 4
For the gravity vector \(g(q,\theta _g)\), let \(\theta _{Ml}\) be an upper bound such that \(\left| \theta _{gl}\right| \le \theta _{Ml}\), \(\forall \ l\in \{1,\ldots ,p\}\), and let \(\theta _M\triangleq {(\theta _{M1}, \ldots ,\theta _{Mp}\ )}^T\) and \(\Theta \triangleq [-\theta _{M1},\theta _{M1}]\times \cdots \times [-\theta _{Mp},\theta _{Mp}]\). According to Properties 2 and 3, there are constants \(B_{gi}^{\theta _M}>0\) such that \(\left| g_i(y,w)\right| =\left| G_i(y)w\right| \le \ B_{gi}^{\theta _M}\), \(\forall \ y\in \mathbb {R}^n\) and \(\forall \ w\in \Theta \). In addition, there are non-negative constants such that \(\left| G_{il}(y)\right| \le B_{Gil}\), \(\Vert G_i(y)\Vert \le B_{Gi}\) and \(\Vert G(y)\Vert \le B_G\), \(\forall y\in \mathbb {R}^n\), \(\forall l\in \{1,\ldots ,p\}\), \(i=1,\ldots ,n\).
Property 5
For robots with only revolute joints, there are non-negative constants such that \(\left| J_{ij}^T(y)\right| \le B_{Jij}\), \(\Vert J_i^T(y)\Vert \le B_{Ji}\) and \(\Vert J^T(y)\Vert \le B_J\), \(\forall y\in \mathbb {R}^n\), \(i=1, \ldots , n\), \(j=1, \ldots , m\).
Assumption 1
For robots with bounded inputs, each element of vector \(\tau \) is bounded by \(T_i>0\), i.e., \(\left| \tau _i\right| \le T_i\), \(i=1, \ldots , n\). Assume that
where \(\mathrm{sat}(\cdot )\) is the standard saturation function, i.e., \(\mathrm{sat}(\varsigma )=\mathrm{sign}(\varsigma ) \mathrm{min}\{|\varsigma |,1\}\) and \(u_i\) denotes the i-th control signal. In addition, assume that \(T_i>B_{gi}\), \(\forall i \in \{1,\ldots ,n\}\).
Using the forward kinematics, \(x=\mathcal {K}(q)\in \mathbb {R}^m\), the robot dynamics (1) can be rewritten in task space as
where \(\dot{x}=J(q)\dot{q}\in \mathbb {R}^m\) and \(\ddot{x}=\dot{J}(q,\dot{q})\dot{q}+J(q)\ddot{q}\in \mathbb {R}^m\) are the vectors of task-space velocity and acceleration, respectively. \(f_x \) is a vector of control forces such that \(\tau =J^T(q)f_x\). While \(H_x=[J^{-1}(q)]^TH(q)J^{-1}(q)\), \(C_x=\{[J^{-1}(q)]^TC(q,\dot{q})-H_x\dot{J}(q,\dot{q})\}J^{-1}(q)\), \(F_x=[J^{-1}(q)]^TFJ^{-1}(q)\) and \(g_x=[J^{-1}(q)]^Tg(q)\). This model is valid only if the robot is away from kinematic singularities and the right pseudo-inverse of J(q) can be considered when the robot is redundant (Canudas et al. 2012).
In order to model the forces of robot–environment interaction, the following assumption is considered:
Assumption 2
The external forces \(f_{e}\) can be represented as a generalized spring such that
where \(K_{e}\in \mathbb {R}^{m\times m}\) is a positive definite diagonal stiffness matrix and \(x_{e}\in \mathbb {R}^m\) is the spring rest position.
The dynamic model (3) has the following properties (Chávez-Olivares et al. 2015; Vidrios-Serrano et al. 2021):
Property 6
For some constants \(\mu _M\ge \mu _m>0\), \(H_x\in \mathbb {R}^{m\times m}\) satisfies \(\mu _mI_m\le H_x\le \mu _MI_m\).
Property 7
For some constant \(k_{c}\ge 0\), \(C_x\in \mathbb {R}^{m\times m}\) satisfies \(\Vert C_x\dot{x}\Vert \le k_{c} \Vert \dot{x}\Vert ^2\), \(\forall \dot{x}\in \mathbb {R}^m\).
Property 8
For some constants \(f_M\ge f_m>0\), \(F_x\in \mathbb {R}^{m\times m}\) satisfies \(f_mI_m\le F_x\le f_MI_m\).
Property 9
The matrices \(C_x\) and \({\dot{H}}_x\triangleq \mathrm{d}H_x/\mathrm{d}t\) satisfy \({\dot{x}}^T\left[ {\dot{H}}_x-2C_x\right] \dot{x}=0\), \(\forall \dot{x}\in \mathbb {R}^m\), and actually \({\dot{H}}_x=C_x+C_x^T\).
Property 10
The dynamic equation (3) is linear with respect to its parameters, therefore, by considering Assumption 2 and Property 3, the gravitational and interaction forces can be rewritten as
where \(Y_x\in \mathbb {R}^{m\times r}\) is a regression matrix and \(\theta \in \mathbb {R}^r\) is a constant vector of gravitational and stiffness parameters associated with the robot and the environment, respectively.
Assumption 3
Because \(\tau =J^T(q)f_x\) and according to Property 5 and Assumption 1, each element of \(f_x\) is bounded by \(\mathcal {F}_j>0\), i.e., \(\left| f_{xj}\right| \le \mathcal {F}_j\), \(j=1, \ldots , m\). Assume that
Therefore, \(u=J^T(q)u_x\).
3 Adaptive force controller with active damping
In order to control the robot–environment interaction while respecting the saturation limits of the robotic system, the following adaptive structure is proposed:
where \(\bar{f}=f_{e}-f_d\) with \(f_d\in \mathbb {R}^m\) being any constant desired interaction force; \(K_F=\mathrm{diag}[k_{F1},\ldots ,k_{Fm}]\) and \(K_D=\mathrm{diag}[k_{D1},\ldots ,k_{Dm}]\) are positive definite matrices of gain parameters; \(s_F(y)={(\sigma _{F1}(y_1),\ldots ,\sigma _{Fm}(y_m))}^T\) with \(\sigma _{Fj}(\cdot )\) being SI-GSFs bounded by \(M_{Fj}\); \(s_D(y)={(\sigma _{D1}(y_1),\ldots ,\sigma _{Dm}(y_m))}^T\) with \(\sigma _{Dj}(\cdot )\) being GSFs bounded by \(M_{Dj}\) and the active damping function \(s_D(\cdot )\) satisfying
\(\forall \dot{x} \in \mathbb {R}^m\) with \(\kappa >0\); and \(\hat{\theta }\in \mathbb {R}^r\) is the estimated parameter vector obtained from the following auxiliary dynamics:
where \(\Gamma \in \mathbb {R}^{r\times r}\) is a constant positive definite diagonal matrix, \(\epsilon >0\) is a constant, \(s_a(y)={(\sigma _{a1}(y_1),\ldots ,\sigma _{ar}(y_r))}^T\) with \(\sigma _{al}(\cdot )\) being SI-GSFs bounded by \(M_{al}\) such that
3.1 Closed-loop analysis
Suppose that there exists a constant vector \(\phi ^*\) such that \(s_a(\phi ^*)=\theta \), or equivalently \(\phi _l^*=\sigma _{al}^{-1}(\theta _l)\), \(\forall l\in \{1,\ldots ,r\}\). Therefore, \(Y_xs_a(\phi ^*)=g_x+f_{e}\), then by combining the robot model (3), the environment model (4) and the control scheme (7)–(10), the closed-loop dynamics can be represented as
where \(\bar{\phi }=\phi -\phi ^*\) represents the vector of parameter estimation error and \({\bar{s}}_a\left( \bar{\phi }\right) =s_a(\phi )-s_a(\phi ^*)=s_a(\bar{\phi }+\phi ^*)-s_a(\phi ^*)\). Now, under stationary conditions \(\dot{\bar{f}}=\ddot{x}=\dot{x}=0_m\) and \(\dot{\bar{\phi }}=0_r\), we obtain that
Then, \(\bar{f}=\dot{x}=0_m\) is the unique equilibrium vector, while the parameter estimation error equilibrium vector \(\bar{\phi }_E\) turns out to be defined by the solutions of the equation \(Y_{xE}{\bar{s}}_a\left( \bar{\phi }_E\right) =0_m\) and consequently \({\bar{s}}_a\left( \bar{\phi }_E\right) \in \mathrm{ker}\{Y_{xE}\}\).
3.2 Lyapunov stability analysis
Proposition 1
Consider the closed-loop system (13)–(15) and Assumptions 1 and 3. Thus, for any positive definite diagonal matrices \(K_F\) and \(K_D\), and any \(\epsilon \) fulfilling the following inequality:
where
with
where \(\sigma ^{\prime }_{FjM}\) are the positive bounds of \(D^+\sigma _{Fj}(\cdot )\) (see item 2 of Definition 1), \(\mu _m\), \(\mu _M\), \(k_{c}\), \(f_m\) and \(f_M\) as defined in Properties 6, 7 and 8, respectively, and \(\kappa \) as defined in (8); the asymptotic stability of the closed-loop equilibrium vector is guaranteed.
Proof
In order to analyze the stability (in the Lyapunov sense) of closed-loop equilibrium vector consider the following scalar candidate function:
Note that this function is positive definite and to prove it we can lower bound some terms, according to Property 6 and item 3 of Definition 1, so that
where \(0<\alpha <1\), then
with
Therefore, by choosing
\(W_1\left( \bar{f},\dot{x}\right) \) is positive definite, according to inequality (18), and \(W_1\left( 0_m,\dot{x}\right) \rightarrow \infty \) as \(\Vert \dot{x}\Vert \rightarrow \infty \). Thus, from inequality (27) and items 4 and 5 of Definition 1, we can concluded that \(V\left( \bar{f},\dot{x},\bar{\phi }\right) \) is a radially unbounded positive definite function.
Now, the upper right-hand derivative of (23) along the trajectories of the closed-loop system (13)–(15) is
where Property 9 was used. Then, by employing Properties 6–8, this function can be upper bounded by
where
Thus, by satisfying (18), \(W_2\left( \bar{f},\dot{x}\right) \) is a positive definite function and \(\dot{V}\left( \bar{f},\dot{x},\bar{\phi }\right) \le 0\) and according to LaSalle’s invariance principle (Khalil 2002), consider the following set
Therefore, \(\bar{f}=\dot{x}=0_m\Rightarrow \dot{\bar{f}}=\ddot{x}=0_m\) and from the closed-loop dynamics (13)–(15), \(Y_{x}{\bar{s}}_a\left( {\bar{\phi }}\right) =0_m\). Therefore, the closed-loop equilibrium vector is asymptotically stable, which completes the proof.
3.3 Boundedness analysis
The adaptive force controller (7)–(10) ensures that the generated torques are inside the limits of robot actuators. First, in robot–environment interaction tasks, the environment deformation is bounded and there are positive constants \(B_{ej}\) such that \(\left| x_j-x_{ej}\right| \le B_{ej}\), \(j = 1,\ldots ,m\). Then, we are assuming that strictly increasing LGSFs can reproduce the force–deformation relationship before fracture and the following assumption turns out to be crucial.
Assumption 4
A bounded version of model (4) can be represented by
where \(s_{e}(y)={(\sigma _{e1}(y_1),\ldots ,\sigma _{em}(y_m))}^T\) with \(\sigma _{ej}(\cdot )\) being strictly increasing LGSFs bounded by \(M_{ej}\). Thus, the vector of parameters \(\theta \) can be represented as
where \(\theta _{e}\in \mathbb {R}^m\) is a constant vector which depends on the environment stiffness, then \(r=p+m\) and
where \(G_x=[J^{-1}(q)]^TG(q) \in \mathbb {R}^{m\times p}\) and \(F_{e}=\mathrm{diag}[\sigma _{e1}(x_1-x_{e1}),\ldots ,\sigma _{em}(x_m-x_{em})]\in \mathbb {R}^{m\times m}\) are regression matrices.
Now, by considering Assumption 4, the controller (7) can be rewritten as \(u_x=u_{FD}+G_x{\hat{\theta }}_g\) where
Then, in order to avoid the actuator saturation, we have that
and according to Eqn. (10) and Property 4, there are non-negative constants \(B_{gi}^{M_a}\) such that
\(i=1,\ldots ,n\); and now (36) can be rewritten as
Therefore, from Property 5, the following sufficient condition to avoid actuator saturation can be set:
However, being (39) a condition only sufficient and not necessary, successful results avoiding saturation can be obtained with values of \(\left[ T_i-B_{gi}^{M_a}\right] /B_{Ji}\) greater than \(u_M\).
4 Simulation example
To illustrate the type of applications in which the proposed force control scheme can be used, this section presents a numerical simulation of an interaction task that was performed using the model of a robot manipulator of 3 degrees of freedom. The configuration of the robot is anthropomorphic and its nominal parameters were previously reported in Chávez-Olivares et al. (2012), then it is known that maximum joint torques are \(T_1=50\) Nm, \(T_2=150\) Nm and \(T_3=15\) Nm, respectively, the positive constants that satisfy Properties 5 to 8 are \(B_{J1}=0.93\), \(B_{J1}=0.9\), \(B_{J1}=0.45\), \(\mu _m=0.531\), \(\mu _M=3589\), \(k_{c}=39925\), \(f_m=0.722\) and \(f_M=3295\), respectively; while the parameters associated with gravity are \(\theta =[55.628,0.273,1.996,0.696]^T\) Nm.
The robot manipulator must interact at a point on a flat and rigid surface as shown in Fig. 1. In order to simplify the interaction task planning, it was represented with respect to the coordinated frame \((x_p,y_p,z_p)\) attached to the environment (surface) and which in industrial robotics is called user frame. The origin of user reference frame is located at (0.480, 0.378, -0.538) m and the surface is an inclined plane whose orientation is determined by a composition of successive rotations X-Z-X of 30, 90 and 20 degrees, respectively, and with a stiffness value normal to the plane of 2000 N/m, therefore, \(K_{e}= \mathrm{diag} \{684.04, 939.69, 1627.60\}\) N/m. Assume then that the position of the robot end effector with respect to the user frame is
where \(H_{e}\) is the following homogeneous transformation matrix:
At the beginning of the interaction with the environment, the robot has the following joint configuration \(q(0)= [-5, 100, -70]^T\) degrees or equivalently the end effector is located in \(x(0)= (0.307, 0.644, -0.312)\) m and it must apply a desired constant force \(f_d=[3.420, -4.698, 8.138]^T\) N (which is equivalent to a normal force of 10 N).
4.1 Configuration of the adaptive force controller
For the implementation of the controller (7)–(10), the following generalized saturation functions were used:
where
Then, the proportional action of force, the derivative action and the adaptive term were implemented with
\(j=1,\ 2,\ 3\) and \(l= 1, 2, \ldots , 7\). Therefore, \({\sigma }'_{FjM}={\sigma }'_{DjM}={\sigma }'_{al}=1\) and \(\kappa =\max _j\{k_{Dj}\}\). While the regression matrix is given by
where
with
\(j=1,2,3\); \(a=0.45\) m and \(d=0.25\) m.
4.2 Results
To properly perform the robot–environment interaction task described above, the parameters of controller (7)–(10) were selected according to the following procedure:
-
1.
Set the parameters \(M_{al}\) and \(L_{al}\) satisfying inequality (11) and compute the constants \(B_{gi}^{M_a}\) using (12).
-
2.
Set the parameters \(M_{ej}\) and \(L_{ej}\) according to the maximum deformation values expected during the interaction task.
-
3.
Set the parameters \(M_{Dj}\), \(M_{Fj}\) and \(L_{Fj}\) trying to satisfy inequality (39), if possible, or increasing the value of \(u_M\) as far as the maximum torque values permit it.
-
4.
Run simulations/experiments with low control gains (\(k_{Dj}\), \(k_{Fj}\), \(\gamma _l\)).
-
5.
Increase the proportional gains, \(k_{Fj}\), to reduce the rise time (speed up the closed-loop response).
-
6.
Increase the derivative gains, \(k_{Dj}\), to reduce inertial effects, such as the overshoot.
-
7.
Increase the adaptive gains, \(\gamma _l\), to strengthen the elimination of force errors, by reducing stabilization times (speed up the parameter convergence).
-
8.
Adjust \(\epsilon \) satisfying inequality (18), if possible, or increasing its value as far as the closed-loop stability permits it.
-
9.
Repeat steps 5–8 until the best possible response is obtained.
Therefore, the selected parameters are presented in Table 1. To implement the adaptive term, we chose as initial condition \(\hat{\theta }(0)=[51,0.1,1.2,0.4,200,1500,2200]^T\). The simulation results are presented as follows: Fig. 2 shows the time evolution of force error, Fig. 3 depicts the applied control torques for all joints, while the evolution of the estimated parameters associated with gravity and stiffness are presented in Figs. 4 and 5, respectively.
It is worth mentioning that a very important feature of direct force control schemes is that they can regulate the contact force during robot–environment interaction tasks. As it can observed in Fig. 2, this is accomplished appropriately with the proposed force controller, since all the components of force error present convergence to zero. Moreover, the most important advantage of the proposed control scheme over the previously presented controllers is that our force regulator ensures, by its formulation, that the control torques remain bounded all the time. Figure 3 shows that the applied control torques exhibit a kind of micro oscillations in the transient response, while the components of the force error (see Fig. 2) do not present such oscillations. This is because the controller (7)–(10) is Cartesian while the robot is not, since the robot is anthropomorphic and has revolute joints, therefore, the nonlinear mapping of Jacobian matrix used to achieve the joint control generates this type of behavior. However, Fig. 3 shows that all the applied torques remain within the nominal operation range of robot actuators, that is, below of the torque limits defined above.
Finally, it is important to highlight an important property of our control scheme, the proposed force regulator can compensate for the parametric uncertainty of gravitational and contact forces, since it includes an adaptive term related to such physical models. Figures 4 and 5 show a comparison between the nominal values and the estimation of parameters associated with gravitational torques and environment stiffness. As it can observed, these parameters are properly estimated in less than 0.5 s.
5 Conclusions
In the design of force controllers, greater efforts should be made to ensure safer interaction tasks and to take into account that the actuators of robotic systems are not unlimited sources of torque, that is, their torque and speed capabilities are bounded. With the adaptive force controller proposed in this paper, we can guarantee the generation of bounded control actions and have an unrestricted gain tuning process thanks to the use of generalized saturation functions. In addition, the proposed structure includes an adaptive term that compensates for the parametric uncertainty attributed to gravity and environment stiffness, while helping to improve the regulation of the contact force at a desired value. Furthermore, the proposed control law is supported by a rigorous stability analysis in the Lyapunov’s sense.
In particular, as far as we know, this is the first study to include saturation functions that allow not to restrict gain selection in an explicit force controller with bounded actions for interaction tasks. The numerical results obtained in the simulation are quite reliable as to supports this theoretical development. Finally, as future work, it is suggested the development of control schemes that operate in the joint space, to avoid the use of the robot’s Jacobian that limits the region of closed-loop stability.
References
Ajoudani A, Tsagarakis NG, Bicchi A (2017) Choosing poses for force and stiffness control. IEEE Trans Robot 33(6):1483–1490. https://doi.org/10.1109/TRO.2017.2708087
Arnold J, Lee H (2021) Variable impedance control for pHRI: impact on stability, agility, and human effort in controlling a wearable ankle robot. IEEE Robot Autom Lett 6(2):2429–2436. https://doi.org/10.1109/LRA.2021.3062015
Canudas C, Siciliano B, Bastin G (2012) Theory of robot control. Springer Science & Business Media, London
Chávez-Olivares C, Reyes-Cortés F, González-Galván E, Mendoza-Gutiérrez M, Bonilla-Gutiérrez 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
Chávez-Olivares C, Reyes-Cortés F, González-Galván E (2015) On explicit force regulation with active velocity damping for robot manipulators. Automatika 56(4):478–490. https://doi.org/10.1080/00051144.2015.11828661
Fu Q, Santello M (2018) Improving fine control of grasping force during hand-object interactions for a soft synergy-inspired myoelectric prosthetic hand. Front Neurorobot 11:71. https://doi.org/10.3389/fnbot.2017.00071
Gao Y, Chien S (2017) Review on space robotics: toward top-level science through space exploration. Sci Robot 2(7):1–11. https://doi.org/10.1126/scirobotics.aan5074
He W, Xue C, Yu X, Li Z, Yang C (2020) Admittance-based controller design for physical human-robot interaction in the constrained task space. IEEE Trans Autom Sci Eng 17(4):1937–1949. https://doi.org/10.1109/TASE.2020.2983225
Karar ME (2018) A simulation study of adaptive force controller for medical robotic liver ultrasound guidance. Arab J Sci Eng 43(8):4229–4238. https://doi.org/10.1007/s13369-017-2893-4
Kelly R, Santibáñez V, Loría JA (2006) Control of robot manipulators in joint space. Springer Science & Business Media, London
Khalil HK (2002) Nonlinear systems, 3rd edn. Prentice Hall, Upper Saddle River
Khoshdel V, Akbarzadeh A, Naghavi N, Sharifnezhad A, Souzanchi-Kashani M (2018) sEMG-based impedance control for lower-limb rehabilitation robot. Intell Serv Robot 11(1):97–108. https://doi.org/10.1007/s11370-017-0239-4
Lakshminarayanan S, Kana S, Mohan DM, Manyar OM, Then D, Campolo D (2021) An adaptive framework for robotic polishing based on impedance control. Int J Adv Manuf Technol 112(1):401–417. https://doi.org/10.1007/s00170-020-06270-1
López-Araujo DJ, Zavala-Río A, Santibáñez V, Reyes F (2015) A generalized global adaptive tracking control scheme for robot manipulators with bounded inputs. Int J Adapt Control Signal Process 29(2):180–200. https://doi.org/10.1002/acs.2466
Mekki M, Delgado AD, Fry A, Putrino D, Huang V (2018) Robotic rehabilitation and spinal cord injury: a narrative review. Neurotherapeutics 15(3):604–617. https://doi.org/10.1007/s13311-018-0642-3
Na UJ (2017) A new impedance force control of a haptic teleoperation system for improved transparency. J Mech Sci Technol 31(12):6005–6017. https://doi.org/10.1007/s12206-017-1145-6
Ohhira T, Yokota K, Tatsumi S, Murakami T (2021) A robust hybrid position/force control considering motor torque saturation. IEEE Access 9:34515–34528. https://doi.org/10.1109/ACCESS.2021.3059889
Osa T, Sugita N, Mitsuishi M (2017) Online trajectory planning and force control for automation of surgical tasks. IEEE Trans Autom Sci Eng 15(2):675–691. https://doi.org/10.1109/TASE.2017.2676018
Peters BS, Armijo PR, Krause C, Choudhury SA, Oleynikov D (2018) Review of emerging surgical robotic technology. Surg Endosc 32(4):1636–1655. https://doi.org/10.1007/s00464-018-6079-2
Pliego-Jiménez J, Arteaga-Pérez M, Sánchez-Sánchez P (2019) Dexterous robotic manipulation via a dynamic sliding mode force/position control with bounded inputs. IET Control Theory Appl 13(6):832–840. https://doi.org/10.1049/iet-cta.2018.5331
Rodríguez-Liñán M, Mendoza M, Bonilla I, Chávez-Olivares C (2017) Saturating stiffness control of robot manipulators with bounded inputs. Int J Appl Math Comput Sci 27(1):79–90. https://doi.org/10.1515/amcs-2017-0006
Schuster MJ, Brunner SG, Bussmann K, Büttner S, Dömel A, Hellerer M et al (2019) Towards autonomous planetary exploration. J Intell Robot Syst 93(3):461–494. https://doi.org/10.1007/s10846-017-0680-9
Sheng X, Xu L, Wang Z (2017) A position-based explicit force control strategy based on online trajectory prediction. Int J Robot Autom 32(1):93–100. https://doi.org/10.2316/Journal.206.2017.1.206-4899
Vidrios-Serrano C, Mendoza M, Bonilla I, Maldonado-Fregoso B (2021) A generalized vision-based stiffness controller for robot manipulators with bounded inputs. Int J Control Autom Syst 19(1):548–561. https://doi.org/10.1007/s12555-019-1056-7
Winkler A, Suchý J (2015) Implicit force control of a position controlled robot-a comparison with explicit algorithms. Int J Comp Inf Eng 9(6):1447–1453. https://doi.org/10.5281/zenodo.1106937
Zamora-Gómez GI, Zavala-Río A, Lñpez-Araujo DJ, Cruz-Zavala E, Nuño E (2019) Continuous control for fully damped mechanical systems with input constraints: finite-time and exponential tracking. IEEE Trans Autom Control 65(2):882–889. https://doi.org/10.1109/TAC.2019.2921667
Zamora-Gómez GI, Zavala-Río A, Lñpez-Araujo DJ, Nuño E, Cruz-Zavala E (2020) Further advancements on the output-feedback global continuous control for the finite-time and exponential stabilisation of bounded-input mechanical systems: desired conservative-force compensation and experiments. Int J Control 93(7):1521–1533. https://doi.org/10.1080/00207179.2018.1514533
Zanchettin AM, Ceriani NM, Rocco P, Ding H, Matthias B (2015) Safety in human-robot collaborative manufacturing environments: metrics and control. IEEE Trans Autom Sci Eng 13(2):882–893. https://doi.org/10.1109/TASE.2015.2412256
Zavala-Río A, Mendoza M, Santibáñez 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). https://doi.org/10.1177/1729881416663368
Zuo Y, Wang Y, Liu X (2018) Adaptive robust control strategy for rhombus-type lunar exploration wheeled mobile robot using wavelet transform and probabilistic neural network. Comput Appl Math 37(1):314–337. https://doi.org/10.1007/s40314-017-0538-6
Acknowledgements
This work was supported by the National Council for Science and Technology (grant 2018-000012-01NACF-11014), Mexico, and the Autonomous University of Aguascalientes (PII19-2 and PII22-4).
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors declare that they have no conflict of interest.
Additional information
Communicated by Luz de Teresa.
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Springer Nature or its licensor 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
Rojas-García, L., Mendoza, M., Bonilla, I. et al. Adaptive force control with active damping for robot manipulators with bounded inputs. Comp. Appl. Math. 41, 266 (2022). https://doi.org/10.1007/s40314-022-01976-2
Received:
Revised:
Accepted:
Published:
DOI: https://doi.org/10.1007/s40314-022-01976-2