Introduction
In recent years, society has recognized the significance of robots in assisting human motions, such as reducing workload, improving the efficiency, enhancing the productivity, rehabilitation therapy, and so on. Safety is a critical consideration in these applications where involves direct physical human-robot interaction. Using flexible actuators is a popular solution for the safe cooperation, since they provide several attractive characteristics such as low output impedance, back drivability and shock tolerance [1], [2].
Flexible joints use springs or other flexible components to decouple the motor from the environment motion thus improving the safe performance. Since their introduction, flexible joints have been utilized in different kinds of robotic applications including rehabilitation robots [3]–[7], walking robots [8], humanoids [9], [10] and haptics [11], [12]. According to whether the joint involves the stiffness regulation, flexible joint can be divided into two categories: series elastic actuator (SEA) and variable stiffness actuator (VSA). For SEA, the compliant component is directly in series-elastic configuration to provide internal compliance. However, the physical compliance of SEAs is fixed which weakens the achievable bandwidth of actuator. On the contrary, as the stiffness of VSAs could be regulated, VSAs are capable of surmounting the bandwidth limitation and enhancing the task adaptability to different kind of environments [13], [14]. Therefore, VSA is more suitable for the interaction control which involves the environment uncertainties and dynamically changing in the process of human robot interaction.
Before performing the human-robot interaction, the motion intention of human should be identified firstly. Much research efforts were dedicated to the biological signals, such as skin electromyography (EMG) [15] and electroencephalography (EEG) [16], to estimate the motion intention of human. Nevertheless, it is time-consuming to attach or detach sensors to or from the muscles of human when utilizing these biological signals resulting in inconvenience. Besides, these biological signals require higher concentration of subjects’ attention, and these signals would be affected by the individual difference. Another medium for motion intention estimation is the interaction force. As the signals of interaction force are relatively robust, the interaction force between the robot and human is also widely utilized for the motion estimation. In [17], [18], the motion intentions were recognized by the difference between the estimated and measured torque of robots. However, such approach requires the accurate dynamics of robots and human arms or legs. Velocity-based admittance controllers [19], [20] were developed for identifying the motion intention of human by changing the damping variable. Nevertheless, the variable stiffness property is not considered and the motion intention estimation may not be accurate enough. In [21], the impedance model was utilized for estimating the motion intention by incorporating a neural network to display the relationship between the desired motion and interaction force. However, there are many undetermined parameters of neural network needed to be updated, leading to huge computation cost. This paper aims for a relatively accurate estimation of motion intention through the medium of interaction force with as few unknown parameters as possible.
When the interaction force is utilized to estimate the motion intention, special considerations should also be taken into account for the approach of detecting the interaction force. Traditionally, the forces are measured or estimated by detecting the signals of force sensor [3], [21], [22] and the current of motor [4]. Nevertheless, the former requires the expensive force sensor mounted onto the robot and the latter relies on the accurate dynamic models. Flexible actuator has the potential to estimate the external forces by only measuring the internal deflection of the compliant component, with no need for additional force sensor or accurate internal dynamics. For SEA whose stiffness is generally constant, it is compression spring [23], [24] or torsion spring [25] that converts the elasticity into force. However, it requires special consideration on selecting the stiffness of springs: the higher stiffness extends the range of allowable maximum force but results in a worse resolution of force estimation; the lower stiffness brings a better resolution of force estimation, but weakens the allowable maximum force considering the same maximum compression. Besides, the “softer” spring leads to a lower bandwidth which is not suitable for input signals with higher frequency. For VSA, the stiffness is changeable and the internal compliance could be utilized for external force estimation [13], [26]. Since the stiffness is adjustable, the VSA has the potential to achieve a better resolution of force estimation and avoid violating the limitation of internal deflection simultaneously. However, little attention has been paid to such area.
In this paper, a control strategy for physical human-robot interaction is presented for robots driven by VSA. The basic design of VSA has been introduced in [27]. The goal of this paper is to propose and validate a controller to achieve an effective human-robot interaction that enables the robot to actively follow the motion intention of human. The motion intention is achieved through the medium of interaction force which is directly estimated by measuring the internal deflection of VSA. When realizing the “force self-sensing”, a stiffness region control is developed, based on the improved Barrier Lyapunov function, to achieve a better resolution of force estimation and avoid violating the maximum internal deflection simultaneously. Besides, the motion intention is generated by estimating the dynamic model of upper limb which involves minimizing the interaction force between the human and robot. Different with the approach in [21] where the neural network was utilized, the unknown parameters needed to be updated in this paper are only the upper-limb dynamic models, thereby contributing to a lower computation cost. The impedance control is integrated into the controller to enable the robot to “actively” follow the desired motion with compliance. Finally, experiments are conducted to verify the effectiveness of the proposed controller.
The rest of this paper is organized as follows. In Section II, the robotic system is introduced. In Section III, the controller design is described in details. Section IV gives the experimental results. Discussions and concluding remarks are given in Section V and Section VI respectively.
Robotic System
The schematic of human-robot interaction and the VSA-actuated robot are shown in Fig. 1. The subject is asked to put their arm in the horizontal position and the upper limb is constrained to make cyclical abduction/adduction movement along the rotation axis of the robot. The dynamic modeling of human is simplified only considering the stiffness and damper parameters and the interaction force
The schematic of human-robot interaction. (a) Top-down schematic view. (b) Human performing the task.
A. Mechanical Design of VSA
The principle of VSA and its three-dimensional model can be seen in Fig. 2. The VSA is powered by two brush DC motors for the position control and stiffness regulation respectively, each of which has a rotary encoder. The stiffness regulation is realized by a lever mechanism which consists of the lever, pivot and springs. The position motor, shown as Motor1, transmits its motion firstly to the connecting disk on which the pivot and spring module are mounted, then to the lever through the pivot and spring module, and finally to output shaft. The motion of stiffness regulation motor, shown as Motor2, is firstly transmitted to the gear train1 then to the cam-based panel. When regulating the stiffness, the locations of pivot and spring module are changed towards or away from the center of actuator simultaneously through the rotation of cam-based panel. When the external force is exerted onto the output shaft, the springs are compressed to generate force against the external force, thus introducing the compliance. One additional absolute encoder is installed to measure the internal deflection through gear train2. More details of the VSA can be found in [27].
The structure of VSA. (a) Principle of the actuator. (b) Partial cross-sectional view of the actuator.
The dynamic model of the VSA-driven robot can be expressed as:\begin{align*} \begin{cases} \displaystyle J_{1}\ddot {\theta }_{1}+K\left ({\theta _{1}-q }\right)+f_{dis1}=\tau _{1}\\ \displaystyle J_{2}\ddot {\theta }_{2}+f_{dis2}=\tau _{2} \\ \displaystyle M\ddot {q}+C\left ({q,\dot {q} }\right)\dot {q}+G\left ({q }\right)+Kq=K\theta _{1}+\tau _{e} \\ \displaystyle \end{cases}\tag{1}\end{align*}
As the nonlinear friction exists when regulating the stiffness, the motions of motors are realized by servo drivers for a better position-tracking performance. Therefore, the dynamics of Motor1 and Motor2 are not concerned in this paper.
B. Performance Analysis of Force Self-Sensing
The stiffness is an essential parameter for force self-sensing which directly affects the resolution of force estimation. The details of stiffness analysis can be found in [27]. For the VSA, the stiffness is approximately constant for a specific \begin{equation*} K=9.40+33.12\alpha -8.21\alpha ^{2}+50.78\alpha ^{3}+140.10\alpha ^{4}\tag{2}\end{equation*}
Results of stiffness calibration. (a) The relationship between the torque and deflection angle. (b) Fitting results of stiffness.
From (2), the external force can be estimated by (3).\begin{equation*} \tau _{e}=K\varphi\tag{3}\end{equation*}
For a VSA with the lever mechanism for stiffness regulation, the maximum deflection angle
Considering the VSA adopted in this paper, the designing constraints are given as [27]: (i) the compression of spring is less than 6 mm; (ii) the nominal torque of the actuator is 20 Nm which is related to the nominal torque of motors and the strength of internal parts. The maximum deflection angle
As the results of Fig. 4 are obtained through simulation with several inequality constraints, it is difficult to achieve explicit expressions for these constraints, thus inconvenient for the controller design. Therefore, data fitting method is utilized to display the relationships shown in Fig. 4. As there is a relationship between \begin{align*}&\hspace {-0.5pc}\tau _{em} \!=\!\begin{cases} \displaystyle 1.691e^{1.2347\alpha }\!+\!0.0013e^{6.6406\alpha }, & 0\!\le \! \alpha \!\le \! 1.3587 \\ \displaystyle 20,& 1.3587\! < \!\alpha \!\le \! \pi /2 \end{cases}\!\!\!\!\!\! \\\tag{4}\end{align*}
When estimating the external force by the internal compliance of VSA, the resolution of the force estimation is determined by the joint stiffness and the resolution of encoder. When the resolution of encoder is decided, a higher stiffness leads to a worse resolution of force estimation. Hence, the lower stiffness is desired in the process of force estimation for a better resolution. Besides, the lower stiffness also contributes to the performance of safe human-robot interaction. Nevertheless, as shown in Fig. 3–4, the lower stiffness usually results in a smaller value of
Controller Design
In this section, the control strategy for physical human-robot interaction is developed for the robot driven by VSA. Even though the controller in this paper is only considering the robot with one degree of freedom (DOF), such controller is easily extended to robots with multi-DOFs. The controller consists of the stiffness region control, the estimation of human motion intention and the impedance control. The stiffness region control is to regulate the stiffness to achieve a better resolution and avoid violating the maximum operating torque. The human motion intention is estimated to generate the desired trajectory and the impedance control is implemented to drive the robot to “actively” track the desired trajectory with compliance. The block diagram of the control structure is shown in Fig. 5.
A. Stiffness Region Control
As mentioned in Section II, the performance of force estimation is highly dependent on the stiffness of VSA. To improve the performance of force estimation, the stiffness regulation is specified as three regions, i.e., the constant stiffness region, stiffness increase region and stiffness decrease region. The objective is to make the stiffness stay within the constant stiffness region, where enables a proper resolution of force estimation and ensures that the interaction force would not transgress the maximum operating torque. The Barrier Lyapunov Function is a potential tool to handle the problem of region control [29]. To formulate the stiffness control method, an improved Barrier Lyapunov Function is proposed as:\begin{equation*} V_{1}=\frac {1}{2}\log \frac {{(\eta _{2}-\eta _{1})}^{2}}{{(\eta _{2}-\eta _{1})}^{2}-{[\max \left ({0,\left |{ \eta }\right |-\eta _{1} }\right)] }^{2}}\tag{5}\end{equation*}
The
An illustration of the improved Barrier Lyapunov Function is shown in Fig. 6. The range of constant stiffness region is highly influenced by the
As the function \begin{align*} \dot {V}_{1}=\begin{cases} \displaystyle 0,& \vert \eta \vert \le \mathrm {\eta }_{1} \\ \displaystyle \frac {\left ({\eta -\eta _{1} }\right)\dot {\eta }}{\left ({\eta _{2}-\eta _{1} }\right)^{2}-\left ({\eta -\eta _{1} }\right)^{2}},& \eta _{1}\le \eta \le \eta _{2} \\ \displaystyle \frac {\left ({\eta +\eta _{1} }\right)\dot {\eta }}{\left ({\eta _{2}-\eta _{1} }\right)^{2}-\left ({\eta +\eta _{1} }\right)^{2}},& {-\eta }_{2}\le \eta \le -\eta _{1} \end{cases}\tag{6}\end{align*}
In order to constrain the \begin{align*} \dot {\eta }=\begin{cases} \displaystyle 0, & {-\eta }_{1}\le \eta \le \eta _{1} \\ \displaystyle -k_{\eta }\left ({\eta -\eta _{1} }\right),& \eta _{1}\le \eta \le \eta _{2} \\ \displaystyle -k_{\eta }\left ({\eta +\eta _{1} }\right),& {-\eta }_{2}\le \eta \le -\eta _{1} \end{cases}\tag{7}\end{align*}
From the definition of \begin{equation*} \dot {\eta }=-\frac {\vert \tau _{e}\vert }{\tau _{em}^{2}}\dot {\tau }_{em}=-\frac {\vert \tau _{e}\vert }{\tau _{em}^{2}}\frac {d\tau _{em}}{d\alpha }\dot {\alpha }\tag{8}\end{equation*}
Combining (7) and (8), the derivative of \begin{align*} \dot {\alpha }=\begin{cases} \displaystyle 0,& {-\eta }_{1}\le \eta \le \eta _{1} \\ \displaystyle k_{\eta }\left ({\eta -\eta _{1} }\right)\frac {\tau _{em}^{2}}{\left |{ \tau _{e} }\right |}\frac {1}{{d\tau _{em}} \mathord {\left /{ {\vphantom {{d\tau _{em}} {d\alpha }}} }\right. } {d\alpha }},&\eta _{1}\le \eta \le \eta _{2} \\ \displaystyle k_{\eta }\left ({\eta +\eta _{1} }\right)\frac {\tau _{em}^{2}}{\vert \tau _{e}\vert }\frac {1}{{d\tau _{em}} \mathord {\left /{ {\vphantom {{d\tau _{em}} {d\alpha }}} }\right. } {d\alpha }},&{-\eta }_{2}\le \eta \le -\eta _{1} \end{cases}\tag{9}\end{align*}
For a discrete-time implementation, \begin{equation*} \alpha \left ({t_{k+1} }\right)=\alpha \left ({t_{k} }\right)+\dot {\alpha }\left ({t_{k} }\right)\times \Delta t\tag{10}\end{equation*}
From (2), the stiffness
Remark 1:
It is highly possible that the interaction force
B. Motion Intention Estimation
The objective of the motion intention estimation is to generate the desired trajectory that would be followed by robot. As discussed in [30], the model of upper limb is mainly affected by the damper and spring parameters. Therefore, the human model can be simplified as \begin{equation*} -C_{H}\dot {q}+G_{H}\left ({q_{Hd}-q }\right)=\tau _{e}\tag{11}\end{equation*}
By (11), the motion intention can be expressed as \begin{equation*} q_{Hd}=q+ \boldsymbol {Y}^{ \boldsymbol {T}} \boldsymbol {W}\tag{12}\end{equation*}
As parameters \begin{equation*} \hat {q}_{Hd}=q+ \boldsymbol {Y}^{ \boldsymbol {T}}\widehat { \boldsymbol {W}}\tag{13}\end{equation*}
The objective is to minimize the interaction force \begin{equation*} E=\frac {1}{2}\tau _{e}^{2}\tag{14}\end{equation*}
Combining (13) and (14), the update law of \begin{align*} \dot {\widehat { \boldsymbol W}}\left ({t_{k} }\right)=&-{ \boldsymbol \Gamma }_{\mathbf {0}}\frac {\partial E}{\partial \widehat { \boldsymbol W}}=- \boldsymbol {\Gamma }_{\mathbf {0}}\frac {\partial E}{\partial \tau _{e}}\frac {\partial \tau _{e}}{\partial \hat {q}_{Hd}}\frac {\partial \hat {q}_{Hd}}{\partial \widehat { \boldsymbol W}} \\=&- \boldsymbol {\Gamma }_{\mathbf {0}}\tau _{e}\frac {1}{\widehat {w}_{1}} \boldsymbol {Y}\tag{15}\end{align*}
\begin{equation*} \dot {\widehat { \boldsymbol W}}\left ({t_{k} }\right)=-sgn\left ({\widehat {w}_{1} }\right)\tau _{e}\left ({t_{k} }\right) \boldsymbol {\Gamma }_{\mathbf {0}} \boldsymbol {Y}\left ({t_{k} }\right)\tag{16}\end{equation*}
Therefore, the estimation of \begin{align*}&\hspace {-0.5pc}\hat {q}_{Hd}\left ({t_{k+1} }\right)=q\left ({t_{k+1} }\right) \\&\qquad\qquad\quad+ \boldsymbol {Y}^{ \boldsymbol {T}}\left ({t_{k+1} }\right)\left [{ \widehat { \boldsymbol W}\left ({t_{k} }\right)+\dot {\widehat { \boldsymbol W}}\left ({t_{k} }\right)\times \Delta t }\right]\tag{17}\end{align*}
On the basis of the previous discussions, the human motion intention can be estimated through (17).
C. Impedance Control
With the available desired trajectory of (17), the impedance control is adopted to make the robot move towards the desired position with compliance, thus improving the performance of safe human-robot interaction. The impedance model is defined as:\begin{equation*} M_{d}\left ({\ddot {q}-\ddot {q}_{d} }\right)+C_{d}\left ({\dot {q}-\dot {q}_{d} }\right)+G_{d}\left ({q-q_{d} }\right)=\tau _{e}\tag{18}\end{equation*}
By defining the position error as
An augmented impedance error is given by:\begin{equation*} \overline w =\ddot {e}+\left ({\Lambda _{1}+\Gamma _{1} }\right)\dot {e}+\Lambda _{1}\Gamma _{1}e-\left ({\dot {f}_{l}+\Gamma _{1}f_{l} }\right)\tag{19}\end{equation*}
In fact, the parameters \begin{align*} \Gamma _{1}=&\frac {M_{d}^{-1}C_{d}\pm \sqrt {M_{d}^{-2}C_{d}^{2}-4M_{d}^{-1}G_{d}}}{2}\tag{20}\\ \Lambda _{1}=&\frac {M_{d}^{-1}C_{d}\mp \sqrt {M_{d}^{-2}C_{d}^{2}-4M_{d}^{-1}G_{d}}}{2}\tag{21}\end{align*}
For a discrete-time implementation, it is reasonable to define that \begin{equation*} f_{l}\left ({t_{k+1} }\right)=\frac {f_{l}\left ({t_{k} }\right)+\Delta tM_{d}^{-1}\tau _{e}\left ({t_{k+1} }\right)}{1+\Delta t\Gamma _{1}}\tag{22}\end{equation*}
By defining \begin{equation*} z=\dot {e}+\Lambda _{1}e-f_{l}\tag{23}\end{equation*}
It can be obtained that \begin{equation*} \overline w =\dot {z}+\Gamma _{1}z\tag{24}\end{equation*}
The \begin{equation*} \mathop {\textrm {lim}}_{t\rightarrow \infty } z=0\tag{25}\end{equation*}
An augmented state variable is defined as \begin{equation*} \dot {q}_{r}=\dot {q}_{d}-\Lambda _{1}e+f_{l}\tag{26}\end{equation*}
Combining (23) and (26), it can be derived as \begin{equation*} z=\dot {q}-\dot {q}_{r}\tag{27}\end{equation*}
By using (27), the third equation of (1) is rewritten as \begin{equation*} M\dot {z}+M\ddot {q}_{r}+C\left ({q,\dot {q} }\right)\dot {q}+G\left ({q }\right)+Kq=K\theta _{1}+\tau _{e}\tag{28}\end{equation*}
Then the desired input of the robot dynamics can be developed as:\begin{equation*} \theta _{1d}\!=\!q+\frac {1}{K}\left [{-k_{z}z+M\ddot {q}_{r}\!+\!C\left ({q,\dot {q} }\right)\dot {q}+G\left ({q }\right)-\tau _{e} }\right]\tag{29}\end{equation*}
The desired input of the stiffness regulation motor is given as:\begin{equation*} \theta _{2d}=\theta _{1d}-\alpha\tag{30}\end{equation*}
Substituting (29) into (28), it can be derived
Remark 2:
In the practical implementation, the interaction force
Experiment
In this section, the proposed control strategy is implemented through experiments. Fig. 7 illustrates the experimental setup and its control system. The VSA-actuated robot is mainly made up with a robot link driven by VSA. In the control system, the hardware consists of a STM32-based controller, two servo drivers, two motors, an absolute encoder, lithium ion batteries, switches and a laptop. The servo drivers are utilized to collect and send signals from and to motors for position control. The STM32-based controller is to execute the control algorithm, handle the signals transmitted from servo drivers and absolute encoder, then send the control commands to servo drivers. The reason for using STM32-based controller is that it is convenient to realize the RS485 bus with low cost. The detailed signal and power transmissions can be seen in Fig. 7.
The goal of experiments is to verify the effectiveness of proposed strategy. The subject is asked to put their arm in the horizontal position and the upper limb is constrained to make a cyclical abduction/adduction movement along the rotation axis of the robot, shown in Fig. 1. The interaction force is estimated by measuring the internal deflection of VSA. In experiment, the interaction force is perceived as the motion intention and then the robot drives the upper limb to “actively” track the desired “motion intention”.
To better display the effectiveness of stiffness region control, two different experiments are conducted with different initial stiffness. In the first case, one higher initial stiffness is selected, which is
In the experiments, the time period is set as
In the experiment, a minimum stiffness is set as
Fig. 8 shows the experimental results of the first case. In Fig. 8 (a), it can be seen that there is little error between the desired position and the actual position of the robot, which indicates that the robot follows the human motion intention “actively” with the proposed control strategy. Such better tracking performance also indirectly verifies the efficacy of the proposed force estimation method. From the partial enlarged part, the desired position is bouncing up and down around the actual position. Such phenomenon can be explained by the oscillation property of the
The experimental results with an initial stiffness of
The oscillations, shown in Fig. 8 (b) and Fig. 9 (b), can be explained by the updating law in Section III B. The update law is generated by minimizing the interaction force with the gradient descent method. It is commonly accepted that parameters converge to the optimum with “zigzag” shape when utilizing the gradient descent method. Furthermore, according to (16), the degree of oscillation is related to the torque
From Fig. 8(e) and Fig. 9(e), there are periods that the estimated force by VSA is zero while the torque measured by torque sensor is not zero, shown as the partial enlarged parts. That is because the interaction force is deemed to be zero in the control strategy, if it is smaller than a certain value, as depicted in Remark 2. The normal values of interaction force can be depicted through the torque measured by torque sensor to make a comparison. Such phenomena occur when the actuator changes the rotation from one direction to another in the experiment.
From Fig. 8 (c)-(d) and Fig. 9(c)-(d), there are some periods that the stiffness remains constant even when the
From Fig. 8 and Fig. 9, the interaction force is well estimated by VSA with higher accuracy in the process of human-robot interaction, and the robot is able to “actively” track the “motion intention” of human, thus providing a safe human-robot interaction.
Discussions
This paper describes the controller for physical human-robot interaction for robots driven by VSA. The contributions can be highlighted as follows: (i) The interaction force is directly estimated by measuring the internal deflection of VSA, and the stiffness region control is developed to improve the performance of force estimation. (ii) The motion intention is achieved through the medium of interaction force, by estimating the limb model with only two unknown parameters to be updated, thus decreasing the computation cost.
Compared with the traditional methods of detecting the interaction force, the interaction force in this paper is directly estimated by detecting the internal deflection of VSA, which does not require additional force sensor or accurate dynamics. Besides, the stiffness region control is incorporated into the controller to achieve a proper resolution of force estimation and avoid violating the maximum internal deflection simultaneously, which is difficult to be achieved for SEA.
In the estimation of motion intention, as the damper and spring variables of upper limb are all considered, the proposed method makes the estimation relatively accurate. Furthermore, unlike the [21] where the neural network was utilized, there are only two unknown parameters that are needed to be updated in this paper, thus contributing to a lower computation cost.
In Section III A, the constant stiffness region is the outcome of compromise between the resolution of force estimation and the allowable maximum force. It has the “proper” resolution of force estimation but not the “best” one. The resolution can be improved further by selecting the proper parameter
In the experiment, the errors of torque estimation by VSA are smaller enough and acceptable for human-robot interaction. Such performance not only displays the effectiveness of the proposed stiffness region control, but also the accuracy of stiffness calibration in a dynamic condition.
From the experiments, when performing the cooperation task, the robot “actively” complies with the motion of human and provides certain resistance. Actually, the impedance parameters in (18) could be regulated for the interaction to achieve different degree of interaction force. Besides, even though the controller in this paper is only focusing on the robot with one DOF, such controller is easily extended to robots with multi-DOFs.
Conclusion
In this paper, the control strategy for physical human-robot interaction has been investigated for robots driven by VSA. The interaction force is directly estimated by the internal deflection of VSA with the stiffness region control to improve the performance of force estimation. The human motion intention is estimated as the desired trajectory based on the estimated force, and then integrated into the impedance control to make the robot “actively” track the desired trajectory with compliance. Experiments have been carried out to verify the effectiveness of the proposed strategy. Such strategy can be readily extended to other robots driven by VSAs in the occasions involving human-robot cooperation.