Keywords

1 Introduction

When human beings suffer from stroke and other neurological diseases, the difficulty of their limb motion will influence activities of daily living (ADLs). According to the World Health Organization, for every year 15 million people suffer from stroke and 5 million of them remain permanently disabled [1]. Thus, the development of effective rehabilitation devices has attracted much attention, whose merit is the ability to intelligently interact with users. The actuators applied to traditional rehabilitation robots are preferred to be as stiff as possible to make precise position movements or trajectory tracking control easier (faster systems with high bandwidth) [2, 3].

Recent years, researchers have proposed SEA concept, and the elastic element gives SEAs several unique properties compared to rigid ones, including low output impedance, increased peak power output, and passive mechanical energy storage [4,5,6,7]. Many different types of SEAs have been developed for rehabilitation devices. Ragonesi et al. [8] propose rotary powered exoskeleton primarily on commercially available off-the-shelf components, compression springs as the compliant element, and power transmission through a bevel gear. In [9], the authors use linear springs coupled to rotary shafts and place the springs between the motor and external load to achieve compact rotary SEA. In [10, 11], the proposed SEA is built based on linear springs coupled to a ball screw which is connected with servo motor. In [12], the authors use Bowden cable connected to linear springs to achieve rotary SEA. In [13, 14], the linear springs are placed within the reduction phase, which can reduce the torque requirement on the spring compared to placing the spring at the actuator output. Although current rehabilitation devices actuated by SEAs have achieved reasonable performance through separated experiments, they still face some limitation. For example, in [15] the SEA is fixed onto the knee and ankle joint of rehabilitation robot directly, which increases the inertia of the joint and affects its performance.

Apart from the mechanical development of SEAs, the control approach is also gaining much attention these years. The basic purpose of these controllers is to guarantee the SEA’s output torque as desired. For instance, the output force can be observed by measuring change of resistance [4], or by measuring the spring deflection and based on Hooke’s law [16,17,18]. Pratt et al. [19] propose that the position feedback can be used as the innermost control structure for torque control. This kind of control method has been adopted by other researchers, considering torque control as a position control problem. In recent years, new controllers include PID control as well as take the dynamics of mechanical system to improve response frequency of torque control [20, 21]. In [13] the authors combine PID, model-based, and disturbance observer (DOB) together to realize impressive torque tracking performance.

Existing rehabilitation devices fix stiff actuator or compliant actuator onto joint directly. One drawback is that they are too heavy, bulky, and stationary. To address this issue, in this paper, we present a novel compact rotary SEA with Bowden cable to develop a light weight, low profile, and potable elbow rehabilitation robot. Unlike the former SEA design method, we propose a new structure configuration for shorter length and better output torque measurement. The description and mathematic model of this proposed SEA is presented in Sect. 2. In Sect. 3 the controller including PD feedback term and feedforward term is described as well as the numerical parameters selection of the PD. The physical prototype experiments results are presented to evaluate the proposed SEA in Sect. 4. Finally, Sect. 5 presents conclusions and future work.

2 Description and Modeling

2.1 Description of the Compact Rotary SEA

Existing SEAs usually put elastic elements between servo motor and load, such as linear translational or torsional springs. In general, servo motor shell of SEA is stationary, and the output side of SEA is away from servo motor, which brings the difficulty of spring deflection measurement and increases the whole length of SEA, as shown in Fig. 1(a). In this paper, we propose a new structural arrangement of rotary SEA, which is shown in Fig. 1(b). The definition of parameters in Fig. 1 will be given in modeling and control section. Figure 2 shows the CAD prototype of the SEA. Our design consists of a servo motor with gear reducer, a rotary encoder, a four-spoke component, eight linear springs, deep groove ball bearing, output pulley, inner and outer sleeve.

Fig. 1.
figure 1

Structural configuration of compliant actuator, (a) The general case model; (b) The modified model.

Fig. 2.
figure 2

The CAD prototype of rotary SEA design.

The power source comes from DC servo motor connected with planetary gear reducer, whose output shaft is fixed with a four-spoke component. Between the four-spoke and stationary outer sleeve, there are eight linear translational springs, and each spring shares same stiffness and size. The shell of servo motor and reducer is fixed with the inner sleeve, and the inner sleeve is also fixed with output pulley, which means they will rotate together when SEA works. Deep groove ball bearings are used between inner and outer sleeve to guarantee smooth rotation motion. In Fig. 2, define left side as front and right side as end, so the proposed SEA design can be regarded as a kinematic chain in series. For the output torque measurement, a rotary encoder installed in the carriage is to measure the rotary deflection angle of linear springs. When SEA works, the load acts on the output pulley, which leads to two parameters, reducer output position \( \theta \) and pulley output position q. The output torque of SEA can be calculated through springs’ compression.

This structural configuration is beneficial to install encoder for measuring the deflection of springs. The proposed actuator is designed to be able to provide up to 10 N·m assistive torque for elbow joint. A Maxon DC servo motor (20 W 24 V) connected with planetary reducer is used for the design due to its lightweight (0.4 kg) and low movement inertia. The linear springs have spring constant of 13.75 N/mm and a working stroke of 10 mm. They can provide an output force of 125 N before fully compressed. The incremental rotary encoder fixed on the outer sleeve has a resolution of 2500 lines/rev. And the total mass of the actuator is 0.95 kg.

2.2 Stiffness Modeling of the Compact Rotary SEA

Based on above mechanical description of SEA, the approximate SEA stiffness model was presented in our previous work [22]. In this paper, we propose the precise SEA stiffness model. As shown in Fig. 3, the eight linear translational springs inserted in the SEA experience a pre-contraction equal to half of the maximum acceptable deflection. Here the angle deflection \( \theta_{s} \) is designed changing from minus 10 degrees to 10 degrees.

Fig. 3.
figure 3

Compression of springs related to module deflection.

The precise spring compression diagram is presented in Fig. 4, where \( L_{0} \) is the length of pre-contraction and \( \Delta x \) is the compression. Then the initial spring length can be expressed as:

Fig. 4.
figure 4

Precise compression model of springs.

$$ L = L_{0} + \Delta x $$
(1)

When the four-spoke experiences a deflection of \( \theta_{s} \), based on Cosine theorem we can obtain the length of two springs:

$$ \begin{aligned} L_{1} = \sqrt {\left( {\frac{R}{{\cos \theta_{s} }} - R} \right)^{2} + \left( {L_{0} + R\,\tan \theta_{s} } \right)^{2} - 2\left( {\frac{R}{{\cos \theta_{s} }} - R} \right)\left( {L_{0} + R\,\tan \theta_{s} } \right)\sin \theta_{s} } \hfill \\ L_{2} = \sqrt {\left( {\frac{R}{{\cos \theta_{s} }} - R} \right)^{2} + \left( {L_{0} - R\,\tan \theta_{s} } \right)^{2} { + }2\left( {\frac{R}{{\cos \theta_{s} }} - R} \right)\left( {L_{0} - R\,\tan \theta_{s} } \right)\sin \theta_{s} } \hfill \\ \end{aligned} $$
(2)

Thus, the compression of the two springs now is written as:

$$ \begin{aligned} \Delta x_{1} & = L_{0} + \Delta x - L_{1} \\ \Delta x_{2} & = L_{0} + \Delta x - L_{2} \\ \end{aligned} $$
(3)

From Fig. 4, the two spring resistance forces are in the same line along their axis, respectively. So, the force perpendicular to four-spoke arm can be expressed as:

$$ F = F_{2} \sin \theta_{1} - F_{1} \sin \theta_{2} $$
(4)

Where

$$ F_{1} = K\Delta x_{1} = K(L_{0} + \Delta x - L_{1} ),F_{2} = K\Delta x_{2} = K(L_{0} + \Delta x - L_{2} ) $$
(4)
$$ \sin \theta_{1} = \frac{{L_{0} - R\,\tan \theta_{s} }}{{L_{2} }}cos\,\theta_{s} ,\sin \theta_{2} = \frac{{L_{0} + R\,\tan \theta_{s} }}{{L_{1} }}cos\,\theta_{s} $$
(6)

In conclusion, the combined torque on the compliant actuator considering the axial forces of four pairs of springs is:

$$ T_{total} = 4FR = 4KR\left[ {(L_{0} + \Delta x - L_{2} )\frac{{L_{0} - R\,\tan \theta_{s} }}{{L_{2} }}cos\,\theta_{s} - (L_{0} + \Delta x - L_{1} )\frac{{L_{0} + R\,\tan \theta_{s} }}{{L_{1} }}cos\,\theta_{s} } \right] $$
(7)

By directly differentiating the torque equation, the rotary stiffness of the four-spoke component which is due to the axial deflection of the springs can be expressed as:

$$ K_{A} = \frac{{\partial T_{total} }}{{\partial \theta_{s} }}{ = }f(L_{0} ,\Delta x,R,K,\theta_{s} ) $$
(8)

From above equations, a nonlinear relation can be figured out between the output torque and the angle deflection. Due to the range of \( \theta_{s} \), it is assumed that \( { \tan }\,(\theta_{s} ) \approx \theta_{s} ,{ \sin }\,(\theta_{s} ) \approx \theta_{s} ,{ \cos }\,(\theta_{s} ) \approx 1 \), then the rotary stiffness can be regarded as a constant:

$$ K_{A} = 8KR^{2} $$
(9)

2.3 Dynamic Modeling of the Compact Rotary SEA

The mechanical implementation of the compact rotary SEA is shown in Figs. 2 and 3. As we mentioned before, the whole system can be regarded as a kinematic chain in series, and the whole mechanical system’s mathematical equation can be expressed as:

$$ \begin{aligned} J\ddot{q} + D_{q} \dot{q} + \tau_{out} & = \tau_{e} (\theta_{s} ) \\ B\ddot{\theta } + D_{\theta } \dot{\theta } + \tau_{e} (\theta_{s} ) & = \tau \\ K_{A} (\theta - q) & = \tau_{e} (\theta_{s} ) \\ \end{aligned} $$
(10)

where q and \( \theta \) are respectively the pulley angle position and gear reducer shaft angle position, and \( \theta_{s} = \theta - q \). J and B are the inertias of inner sleeve with power source and servo motor, respectively. D q is the viscous friction coefficient of the inner sleeve, while D θ is the viscous friction coefficient of servo motor. \( \tau_{out} \) is the output torque of pulley. \( \tau \) and \( \tau_{e} \left( {\theta_{s} } \right) \) are output torque of servo motor and elastic element, respectively. K A is the rotary stiffness coefficient of our proposed SEA.

Based on the Eq. (10), assuming a fixed load end, which means q = 0, and \( \theta_{s} = \theta \), the Newton’s second law of the whole system is given by:

$$ \ddot{\tau }_{out} = \frac{{K_{A} }}{B}\tau - \frac{{D_{\theta } }}{B}\dot{\tau }_{out} - \frac{{K_{A} }}{B}\tau_{out} $$
(11)

The system model above does not include friction and disturbance terms, so in this paper we consider these two terms as follows:

$$ \ddot{\tau }_{out} = \frac{{K_{A} }}{B}\tau - \frac{{D_{\theta } }}{B}\dot{\tau }_{out} - \frac{{K_{A} }}{B}\tau_{out} + [\Delta f(\dot{\theta }_{s} ) + d_{1} ] $$
(12)

where \( \Delta f\left( {\dot{\theta }_{s} } \right) \) represents the friction and d 1 represents the disturbance. The output torque of servo motor has a relationship with motor current i, which can be expressed as \( \tau = \beta i \). \( \beta \) is the product of torque current coefficient and reducer ratio.

3 Torque Control Design for SEA

In this paper, the control objective is to get well performance of torque tracking, which means that the output torque should follow the desired torque trajectory as closely as possible. A torque controller consisting of PD feedback and feedforward term is proposed here. The diagram is presented in Fig. 5.

Fig. 5.
figure 5

Torque control method of rotary SEA.

First, we design the model-based feedback control. Here, define the torque error \( e_{1} \left( t \right) = \tau_{d} \left( t \right) - \tau_{out} \left( t \right) \), the derivative error is given by \( e_{2} \left( t \right) = \dot{\tau }_{d} \left( t \right) - \dot{\tau }_{out} \left( t \right) \). So, we define a state as \( {\varvec{e}}\,{ = }\, [e_{1} ,e_{2} ]^{T} \), and the state equation is given by:

$$ {\dot{\varvec{e}}} = A_{1} \varvec{e} - B_{1} i + B_{1} \left[ {\frac{B}{{\beta K_{A} }}\ddot{\tau }_{d} + \frac{{D_{\theta } }}{{\beta K_{A} }}\dot{\tau }_{d} { + }\frac{1}{\beta }\tau_{d} + \Delta f(\dot{\theta }_{s} ) + d_{1} } \right] $$
(13)

Where

$$ A_{1} { = }\left[ {\begin{array}{*{20}c} 0 & 1 \\ { - \frac{{K_{A} }}{B}} & { - \frac{{D_{\theta } }}{B}} \\ \end{array} } \right],B_{1} = \left[ {\begin{array}{*{20}c} 0 \\ {\frac{{\beta K_{A} }}{B}} \\ \end{array} } \right],\Delta f(\dot{\theta }_{s} ) = \mu_{1} \text{sgn} (\dot{\theta }_{s} ) $$
(14)

Considering the state \( {\varvec {e}} \), it is natural to think that a proportional-derivative (PD) controller should be employed, that is:

$$ i(t) = K_{p} (\tau_{d} - \tau_{out} ) + K_{d} (\dot{\tau }_{d} - \dot{\tau }_{out} ) $$
(15)

where K p and K d are the PD parameters which should be chosen elaborately. In this design, the dominant linear model is given by:

$$ {\dot{\varvec{e}}} = A_{1} {\varvec{e}} - B_{1} i $$
(16)

so, we will set the PD control parameters based on this linear model. Combining the Eqs. (14) and (16), we can get:

$$ {\dot{\varvec{e}}} = \left[ {\begin{array}{*{20}c} 0 & 1 \\ { - \frac{{K_{A} }}{B} - \frac{{\beta K_{A} }}{B}K_{p} } & { - \frac{{D_{\theta } }}{B} - \frac{{\beta K_{A} }}{B}K_{d} } \\ \end{array} } \right]{ \varvec{e}} $$
(17)

Then, the system characteristic equation of closed-loop can be described as:

$$ s^{2} + (\frac{{D_{\theta } }}{B} + \frac{{\beta K_{A} }}{B}K_{d} )s + \frac{{K_{A} }}{B} + \frac{{\beta K_{A} }}{B}K_{p} = 0 $$
(18)

Here, the pole assignment method is used to design the PD parameters.

From the above analysis, note that the friction and disturbance term are not considered in PD feedback control design. Thus, we set two compensation terms for friction and disturbance in the feedforward term. Although the term \( \Delta f\left( {\dot{\theta }_{s} } \right) \) is nonlinear, it can be estimated by off-line experiments. In Eq. (14), \( \mu_{1} \) should be tested before the control design. The friction compensation can be written as:

$$ i_{r} = \mu_{1} \text{sgn} (\dot{\theta }_{s} ) $$
(19)

For the term d 1, it is assumed to be bounded by a value, which is \( \left| {d_{1} } \right| \le \alpha_{1} \).

Combining Eqs. (15) and (19), the proposed torque control is given by:

$$ i = K_{p} (\tau_{d} - \tau_{out} ) + K_{d} (\dot{\tau }_{d} - \dot{\tau }_{out} ) + i_{ff} $$
(20)

Where

$$ i_{ff} { = }\frac{B}{{\beta K_{A} }}\ddot{\tau }_{d} + \frac{{D_{\theta } }}{{\beta K_{A} }}\dot{\tau }_{d} + \frac{1}{\beta }\tau_{d} + \mu_{1} \text{sgn} (\dot{\theta }_{s} ) + \alpha_{1} $$
(21)

4 Experimental Results

Once our compact rotary SEA is controlled by using the proposed controller, it is desired to verify the following performance objectives: (1) Bandwidth of the output torque feedback system; (2) Torque fidelity.

4.1 Experimental Setup and Model Identification

To analyze the performance of the proposed SEA, the test bench based on the design principles and design solutions has been built, which is shown in Fig. 6.

Fig. 6.
figure 6

The physical prototype of the SEA test bench and worn a subject.

The physical parameters of the compliant actuator prototype are list in Table 1, where the original number and the equivalent values are presented for dynamic modeling and analysis purpose. The equivalent values are obtained from open-loop step current response, which is identified in MATLAB [23]. Based on the model identification between i and \( \theta_{s} \), we can get the SEA closed-loop transfer function as follows:

Table 1. Parameters of the physical actuator prototype.
$$ G(s) = \frac{{7.988 \times 10^{5} }}{{s^{2} + 1.362 \times 10^{4} s + 7.988 \times 10^{5} }} $$
(22)

Closed-loop output torque control bandwidth is defined as the transfer function between the desired torque and the actual torque, which is shown in Fig. 7. The measurement can present the working frequency of the compliant actuator.

Fig. 7.
figure 7

The closed-loop Bode diagram of rotary SEA.

From Fig. 7, it is observed that the bandwidth of closed-loop system is around 10 Hz at the −3 dB. As is known to us, the frequency of human elbow joint motion is usually within 4 Hz [12]. Thus, we can make sure that the bandwidth of this proposed SEA is enough for assisting human elbow joint motion.

4.2 Performance of Output Torque Fidelity

Based on the linear relationship between output torque and springs deflection angle, the output position \( \theta_{s} \) could be transformed to the output torque. In this section, first we will verify the closed-loop step response with proposed controller, which is presented in Fig. 8. The rise time is 0.17 s, and there is no obvious overshoot.

Fig. 8.
figure 8

Step torque response of SEA with controller.

Then with the same controller’s parameters, we test different frequency sinusoidal torque signals to examine how the SEA can perform an accurate torque tracking ability. This will involve the frequency of 0.5 Hz and 1.0 Hz, whose experimental results are shown in Figs. 9 and 10.

Fig. 9.
figure 9

Torque tracking of sinusoidal signal at 0.5 Hz.

Fig. 10.
figure 10

Torque tracking of sinusoidal signal at 1.0 Hz.

In our tests, the desired torque signals have a range from −10 N·m to 10 N·m. The test results show that torque tracking have periodic error. The peak value of the error occurs on the moment that translational springs reach half acceptable compression, and it increases with the frequency increasing. To evaluate the tracking performance, average absolute error is used in different tests. With the frequency increasing, the average value is 0.3698 N·m and 0.4014 N·m. The tracking results show that at low frequency, the tracking error is less than 5%, indicating very high force fidelity.

5 Conclusions and Future Work

In this paper, based on the concept of SEA, we design a new compact rotary SEA for an initial Bowden cable driven elbow rehabilitation robot. After modeling the stiffness and dynamics of the compliant actuator, we propose the PD feedback plus feedforward controller, with which the SEA achieved good torque control fidelity and working bandwidth. The preliminary experimental results of the SEA prototype validate the design concept and demonstrate excellent torque tracking performance at low motion frequency, which can satisfy the elbow rehabilitation training requirement.

In the future, based on the preliminary experimental results of the compliant actuator, we will figure out the Coulomb friction analytical model of Bowden cable and achieve impedance control and torque fidelity with friction compensation on the designed elbow rehabilitation robot.