Development and Control of a Variable Stiffness Actuator using a Variable Radius Gear Transmission Mechanism Handdeut Chang1, Sangjoon J. Kim1, Youngjin Na1, Junghoon Park1, and Jung Kim1*, Member, IEEE
Abstract— The closer distance between robots and human partners in the same space makes compliant robots essential in these days. While torque sensor based impedance control scheme suffers from insufficient bandwidth, musculoskeletal systems can achieve similar ability with smaller resources by using mechanically guaranteed dynamics. In this study, inspired by active stiffness mechanism of biological muscle, we developed a variable stiffness actuator which can realize precise joint stiffness without torque sensor based feedback control. The actuator consists of two antagonistically allocated DC motors with a variable radius gear transmission mechanism. The equilibrium position and joint stiffness can be independently controlled adjusting the activation level of motors by feedforward control. Theoretically predicted stiffness is realized well. In this paper, the design, functional principle and control of the actuator are introduced with analytical investigation. I. INTRODUCTION High mechanical impedance in joints has been a desirable aspect for classical position controlled industrial robots to Fig. 1. Developed variable stiffness actuator and its experimental equipment. guarantee precise and rapid position tracking. However, with the increasing demand for human-robot collaboration, high quadratic (nonlinear) springs. Both equilibrium position and mechanical impedance in joints which can induce severe stiffness are independently controlled by the position control damage to both the human users and robots during collision of two agonist and antagonist actuators with nonlinear springs. Tonietti et al. [6] and Bicchi et al. [7] also developed a has become a critical safety issue. In many applications, an impedance control approach [1] variable stiffness actuator based on similar antagonistic setup. can be a solution for realizing compliant robots. They control This actuator consists of two series elastic actuators and linear robot position and generate apparent compliance as a result of springs. To generate the effect of a nonlinear spring, tension calculating the dynamics of a system using force/torque springs and a timing belt mechanism is used. The above sensor data. However, this approach tends to be costly and not studies focus on realizing the characteristics of a nonlinear sufficiently reliable due to limited bandwidths of the passive spring with position control to change stiffness but it is difficult to accurately adjust joint stiffness due to the force/torque sensors and actuators. As another approach to implement compliant robots, complex nonlinear mechanism used to generate the nonlinear developing mechanically compliant actuator has been studied. spring effect with position control. As another approach, this study emulates the mechanism of At DLR, the German Aerospace Center in Germany, biological muscle stiffness to reduce the complexity of mechanically controlled stiffness [2], [3] has been developed: nonlinear calculation with position control and mechanical the VS-Joint. The design uses pretension of a spring to vary the stiffness, and two unbalanced DC motors; one motor for structure for accurate stiffness realization. Biological muscle stiffness control and the other for equilibrium position stiffness consists of two types of stiffness; one is passive stiffness which does not change with respect to muscle control. There is another approach to realize variable stiffness using activation and the other is active stiffness which can be two DC motors as agonist and antagonist actuator. Migliore et changed by the muscle activation level. Desired joint stiffness al. [4], [5] developed a controllable stiffness actuator which and equilibrium position can be independently controlled by consists of two series elastic actuators (SEA) and passive feedforward control which adjusts activation level of antagonistically allocated two muscles. In our previous research [10], inspired by the mentioned variable stiffness This work was supported by the National Research Foundation of Korea mechanism of biological muscle, a simple variable radius (NRF) grant funded by the Korea government (MSIP) (No. 2015-002966). gear transmission mechanism is introduced to realize the Handdeut Chang, Sangjoon J. Kim, Youngjin Na, Junghoon Park, and active stiffness properties of biological muscles. Using this Jung Kim are with Korea Advanced Institute of Science and Technology, Daejeon, Korea. (E-mail: onemean, sangjoon.j.kim, youngjin.na, variable radius gear transmission mechanism, an open-loop junghoon.park and
[email protected]).
controlled novel variable stiffness actuator (see Fig. 1) is developed. This actuator consists of two antagonistically allocated DC motors with simple variable radius gear transmission and can control both the equilibrium position and joint stiffness independently by changing the activation level of the DC motors without any sensor based feedback control. Because position feedback control based variable stiffness actuation use additional feedback gains, the desired impedance may be distorted. Although the developed variable stiffness actuator uses feedforward input to guarantee the desired stiffness, its stability is also guaranteed by its mechanical compliant property without feedback control. In this study, principle of the developed variable stiffness actuator, its control methods, numerical simulation and experimental results are presented. II. DESIGN OF AN ACTUATOR This section presents the method of designing an actuator which can adjust joint impedance. A. Stiffness and viscosity of the actuator To define stiffness and viscosity of an actuator, it is assumed that the generalized force T generated by an arbitrary actuator can be expressed as follows: T = T�E(t), θ(t), ω(t)�
(1)
where t is time, E(t) is the activation rate of an actuator which takes a value between 0 and 1, θ(t) is the generalized position, ω(t) = θ̇(t) is the generalized velocity. T can be any nonlinear function of E, θ, and ω. With respect to an actuator expressed in (1), the stiffness and viscosity of an actuator are mathematically defined in this study: ∂T Stiffness: k = 0), Tm+ and Tm− are positive and negative ∂θ DC motor torque. As a result, total stiffness is proportional to the sum of the two motor torques and it means that joint torque and stiffness can be independently controllable using the proposed mechanism. Fig. 3 shows the variable stiffness mechanism using two independent DC motors and the variable radius gear transmissions used in this study.
Fig. 5. Three-dimensional relationship among joint torque, angle and angular velocity with respect to three activation levels. DC motor input current 10 [A] Fig. 4. Design of developed variable stiffness actuator inspired by biological is defined as 100 % activation. muscle and experimental testbed.
added in this study.
III. SIMULATION AND EXPERIMENTAL RESULTS A. Hardware design Fig. 4 and Table II show the developed variable stiffness actuator and its designed specifications. The variable stiffness actuator consists of two DC motors (EC flat 90, Maxon, Switzerland), variable radius gear transmissions, and linear springs and is controlled in horizontal plane. A torque sensor (TFF 400, Futek, U.S.A) is mounted to verify the realization of joint stiffness. The theoretical three-dimensional relationship among joint torque, angle, and angular velocity of the designed variable stiffness actuator is represented as shown in Fig. 5. The negative gradient properties with respect to joint angle and angular velocity are shown (i.e., stiffness and viscosity). The stiffness which is proportional to motor torque is theoretically predicted in Fig. 5. The theoretical joint stiffness is compared to the measured joint stiffness in the following sections. B. Control of variable stiffness actuator Because a single variable stiffness actuator uses two independent actuators, inverse dynamics solution for realizing an arbitrary trajectory is not unique if control is conducted by only position control. However, using the antagonistic actuator, the following constraint equation is
Agonist torque: Tag =
1 T ηag net
Antagonist torque: Tan = −
+
1
ηag
1 β ηan
β
(15)
where Tag , Tan and Tnet are agonist motor torque, antagonist motor torque and required net motor torque. β is a coactivation parameter and active stiffness can be independently controlled with time by adjusting β. The sign of β is same as the sign of Tnet . The introduction of parameters β in this study gives a constraint equation and unique solution for the inverse dynamics problem. As the results, the corresponding joint net torque and stiffness is obtained as follows: Torque: Tnet = ηag Tag + ηan Tan ∂Tnet = a��Tag � + |Tan |� Stiffness: ∂θ 1 1 Tnet = a �� + � β+ � ηag ηan ηag
(16)
In (16), the joint stiffness is proportional to β and Tnet . Thus, the joint stiffness can be controlled by adjusting the coactivation parameter β with respect to the given required
Table II Specifications of the variable stiffness actuator
Properties
Values
Unit
Link length
0.20
m
Link mass
0.25
kg
Motor max stall torque
0.34
kN/m
Gear reducer ratio ζ
100: 36
−
Spring stiffness
Viscosity of motor
2.18 0.02
(a)
Nm
Nms/rad
(b) Fig. 6. Block diagram for the variable stiffness actuator control. (a) Feedback control mode. PD controller modifies motor inputs for tracking the target trajectory. (b) Feedforward control mode. Using the obtained control inputs in feedback control mode, the variable stiffness actuator is open-loop controlled.
equilibrium state. Then, required motor torque Tnet becomes 0 and β can affect stiffness control. As shown in Fig. 7, the initial perturbed state (i.e., the initial error is 30°) converges to the target state in all cases of β. However, converging time becomes shorter as β becomes higher due to the active stiffness induced by coactivation. Theoretical active stiffness is calculated as shown in Table III. The active stiffness with 10% coactivation (i.e., β = 0.1) is almost the same as the passive stiffness which means that the magnitude of the
Fig. 8. Simulation results of a static target trajectory. Both motors are open-loop controlled by constant inputs. The initial error decreases with time but converging time is different due to the different active stiffness.
net motor torque Tnet . As shown in Fig. 6 (a), the required net torque Tnet is obtained by the inverse dynamics model in the simulation case, but by PD controller in the experimental case due to the uncertainty of the inverse dynamics model. In case of position control using a PD controller, the required net motor torque Tnet is defined as follows: Tnet = −GP [θ − θd ] − GD [ω − ωd ]
(a)
(17)
where positive constants GP , GD are proportional and derivative gains of the PD controller. The role of PD controller is to automatically search for appropriate control input to track the desired trajectory without a complex nonlinear inverse dynamics model. The obtained input is considered as an inverse dynamics solution for realizing a desired trajectory. After the control input is obtained for the desired trajectory, the variable stiffness actuator is open-loop controlled by using the obtained input as shown in Fig. 6 (b) because the feedback gain of the PD controller may provide extra stiffness and viscosity to compensate position and velocity error. In the next sections, the simulation and experimental results are presented.
(b)
C. Simulation results Fig. 7 shows the simulation results with respect to a static target trajectory. For simple demonstration, the target trajectory is selected as θ = 90 [°] which is also the initial Table III Simulation parameters used in Fig. 7
Properties Active stiffness Passive stiffness Total stiffness Motor current 1 Motor current 2
β=0
β = 0.1 1.40
β = 0.5
1.25
1.25
1.25
0
1
0
1.25 0
Units
7.00
Nm/rad
2.65
8.25
Nm/rad
1
5
5
Nm/rad A A
(c) Fig. 7. Experimental results of a static trajectory. (a) Measured joint angle trajectory with respect to different β. (b) Measured joint torque with respect to different β. (c) Measured and theoretical joint stiffness.
designed active stiffness is sufficiently high. Furthermore, active stiffness can be easily controlled by feedforward control because it is linearly proportional to motor current. D. Experimental results Fig. 8 shows the experimental results with respect to the static target trajectory which is simulated in Fig. 7. Fig. 8 (a) shows joint angle trajectories with respect to different coactivation parameter β . The different constant motor currents are applied to both motors. External disturbance (i.e., 30° perturbation) is manually added and restoring torque is measured by the mounted torque sensor (see Fig. 8 (b)). As predicted in the simulation results, converging time becomes shorter as β becomes higher. Using measured angle displacement in Fig. 8 (a), and restoring torque in Fig. 8 (b), joint stiffness is calculated as shown in Fig. 8 (c). The calculated joint stiffness is proportional to motor input current and the proportional factor is obtained as 0.551 using linear regression while the theoretical value calculated from (14) is 0.663. IV. DISCUSSION
A. Active stiffness of biological muscle The negative gradient property of biological muscle force with respect to contraction length and velocity is well known in physiology and biomechanics [9], as shown in Fig. 9 (a) and (b). This negative gradient property of biological muscle plays a significant role in generating the stiffness and viscosity of the joint. In particular, there exist two types of stiffness; one is the active stiffness generated by actin-myosin
(a)
cross bridge mechanism, the other is passive stiffness generated by titin filament. As shown in Fig. 9 (a), the negative gradient (i.e., stiffness) increases as activation rate of muscle increases (i.e., active stiffness exists). In a previous research, Lee [11], [12] measured human ankle joint impedance with both relaxed and active muscles. The relaxed ankle stiffness measured as 20 [Nm/rad] increases to 60 [Nm/rad] with 10% muscle activation. The mechanical impedance of biological muscle can play a significant role in stabilizing musculoskeletal system against the perturbation induced by external disturbances. To stabilize a system with dynamics, the mechanical impedance should properly vary with respect to intensity of its motion because higher impedance is required for stabilization when a system conducts more aggressive motion [10]. However, a system which consists of only passive impedance components can not correspond to various magnitude of the required stiffness. If human joint stiffness solely depends on passive stiffness, it requires much larger passive stiffness than that of the present human for stability. We believe that the active stiffness of biological muscle provides the ability to cope with various range of intensity of motion or impedance of environment. B. Stability of the variable stiffness actuator The variable stiffness actuator developed in this study can be open-loop controlled as shown in Fig. 6 (b) but shows stable motion. As shown in Fig. 10, instead of a feedback controller, the mechanical stiffness and viscosity modifies joint torque with respect to joint angle and angular velocity error. A system which solely depends on sensor based feedback control with low computational and sensor bandwidth may be destabilized or broken by external disturbance. However, mechanical feedback structure in this study can cope with high frequency disturbance because it does not require any sensors or heavy calculation to modify joint torque. Although the active stiffness in this study can provide additional stiffness proportional to motor torque and maintains system stability, it cannot contribute to stability if the actuator is not activated or activated with low level. In this case, passive stiffness plays significant role in maintaining stability. Thus, the combination and balance of passive and active stiffness is important for stability and safe interaction of robot. C. Active stiffness error and Coulomb friction The measured active stiffness in Fig. 8 (c) is slightly smaller (i.e., approximately 20 % less) than the theoretical value. It is considered that the main factor of the error is induced by
(b) Fig. 9 (a) Force-length relation of biological muscle. The stiffness is proportional to activation rate. (b) Force-velocity relation of biological muscle. [9]
Fig. 10 Mechanical impedance structure modifies joint torque with respect to the position and velocity error. The actuator can be stabilized without position based feedback control.
V. CONCLUSION In this paper, a biologically inspired variable stiffness actuator using a variable radius gear transmission mechanism is presented with both feedback and feedforward control algorithms which can control the equilibrium position of joint angle and stiffness. The theoretically predicted stiffness is realized well. We believe that the developed variable stiffness actuator can be used to realize safety and stability in many robotics applications which involve physical human robot interaction. REFERENCES
Fig. 11 Variable radius gear whose pitch curve is exponential function.
[1] Hogan, Neville. "Impedance control: An approach to manipulation:
Coulomb friction of gear reducers. According to Fig. 8 (c), it is predicted that active stiffness will not become 0 (i.e., 0.292 [Nm/rad]) although no DC motor torque is applied. This is originated from the Coulomb friction torque which is measured by the torque sensor but does not contribute to angular displacement. Static Coulomb friction can impede returning to the equilibrium state and induces position error from the equilibrium point. This steady state error can be relieved by increasing restoring torque (i.e., high stiffness) and Fig. 8 (a) shows that the steady state position error decreases with high active stiffness. Another factor of the error is model mismatch. The manufactured variable radius gear in Fig. 2 can contribute to the error because theoretical gear ratio is calculated from the pitch curves of the both input and output gears. Due to manufacturing and mounting tolerance, exact gear ratio may slightly differ from the theoretical value. The theoretical motor torque provided from the data sheet of motor specification also has a tolerance known as 5 to 10 %. However, the active stiffness realized in this study has good property that the active stiffness is linearly proportional to motor input. It can be one of the advantages of the variable radius gear transmission mechanism. D. Gear ratio shaping for desired stiffness function The developed variable radius gear ratio is linearly designed with respect to the joint angle. However, any function of gear ratio can be manufactured if it is designed as a monotonically decreasing function (i.e., negative stiffness) with respect to output gear angle. Actually, active stiffness of human muscle is not uniform with respect to the joint angle (see Fig. 9 (a)). It implies that there exists the region of joint angle that the joint stiffness is large or small. In application, not uniformly designed active stiffness may be used if a robot should secure high joint stiffness at some limited region of its work space. Such an ununiformed stiffness can be realized by manufacturing the corresponding variable radius gears whose pitch curve can be theoretically calculated as shown in the previous section. For example, in our previous research [10], we developed variable radius gears whose pitch curve is exponential function (see Fig. 11) to provide our robot with active stiffness for stability and it showed rapid increasing of joint stiffness with respect to the joint angle rotation.
[2]
[3]
[4] [5]
[6]
[7] [8] [9] [10]
[11] [12]
Part II—Implementation." Journal of dynamic systems, measurement, and control 107.1 (1985): 8-16. Schiavi, Riccardo, et al. "VSA-II: A novel prototype of variable stiffness actuator for safe and performing robots interacting with humans." Robotics and Automation, 2008. ICRA 2008. IEEE International Conference on. IEEE, 2008 De Luca, Alessandro, et al. "Nonlinear decoupled motion-stiffness control and collision detection/reaction for the VSA-II variable stiffness device." Intelligent Robots and Systems, 2009. IROS 2009. IEEE/RSJ International Conference on. IEEE, 2009. Migliore, Shane A., Edgar A. Brown, and Stephen P. DeWeerth. "Novel nonlinear elastic actuators for passively controlling robotic joint compliance." Journal of Mechanical Design 129.4 (2007): 406-412. Migliore, Shane A., Edgar A. Brown, and Stephen P. DeWeerth. "Biologically inspired joint stiffness control." Robotics and Automation, 2005. ICRA 2005. Proceedings of the 2005 IEEE International Conference on. IEEE, 2005. Tonietti, Giovanni, Riccardo Schiavi, and Antonio Bicchi. "Design and control of a variable stiffness actuator for safe and fast physical human/robot interaction." Robotics and Automation, 2005. ICRA 2005. Proceedings of the 2005 IEEE International Conference on. IEEE, 2005. Bicchi, Antonio, et al. "Variable stiffness actuators for fast and safe motion control." Robotics research. The eleventh international symposium. Springer Berlin Heidelberg, 2005. Zarębski, I., and T. Sałaciński. "Designing of non-circular gears." Archive of Mechanical Engineering 55.3 (2008): 275-292. Winter, David A. Biomechanics and motor control of human movement. John Wiley & Sons, 2009. Chang, Handdeut, Sangjoon J. Kim, and Jung Kim. "Analytical investigation of the stabilizing function of the musculoskeletal system using Lyapunov stability criteria and its robotic applications." Intelligent Robots and Systems (IROS), 2016 IEEE/RSJ International Conference on. IEEE, 2016. Lee, Hyunglae, et al. "Multivariable static ankle mechanical impedance with relaxed muscles." Journal of biomechanics 44.10 (2011): 1901-1908. Lee, Hyunglae, et al. "Multivariable static ankle mechanical impedance with active muscles." Neural Systems and Rehabilitation Engineering, IEEE Transactions on 22.1 (2014): 44-52.