Comparatively slow growth in energy density of both power storage and generation technologies has placed added emphasis on the need for energy-efficient designs in legged robots. This paper explores the potential of parallel springs in robot limb design. We start by adding what we call the exhaustive parallel compliance matrix (EPCM) to the design. The EPCM is a set of parallel springs, which includes a parallel spring for each joint and a multijoint parallel spring for all possible combinations of the robot's joints. Then, we carefully formulate and compare two performance metrics, which improve various aspects of the system performance. Each performance metric is analyzed and compared, their strengths and weaknesses being rigorously presented. The performance benefits associated with this approach are dramatic. Implementing the spring matrix reduces the sum of square power (SSP) exerted by the actuators by up to 47%, the peak power requirement by almost 40%, the sum of squared current by 55%, and the peak current by 55%. These results were generated using a planar robot limb and a gait trajectory borrowed from biology. We use a fully dynamic model of the robotic system including inertial effects. We also test the design robustness using a perturbation study, which shows that the parallel springs are effective even in the presence of trajectory perturbation.

## Introduction

Growth in energy storage and generation technologies has lagged significantly behind growth in information technology [1–4]. This lag in technological advancement has led, at least in part, to the performance and efficiency gap between legged robots and their biological counterparts, and comparatively the slow growth of power density of robotic limbs in general. In spite of continuing and noteworthy advances in legged robots, their performance still lags behind that of animals. Increases in power efficiency and density will help to improve functionality of legged robots for navigating rugged terrain or operating in spaces designed for humans.

### Introduction to the Exhaustive Parallel Compliance Matrix.

This paper explores the potential of adding specialized parallel springs to a multiactuator robot limb. We include a spring about every possible joint and joint combination including multijoint parallel springs. The attributes of those springs are then optimized simultaneously to minimize actuator effort. This exhaustive approach has not been explored in published literature to date.

The motivation of this paper is to maximize power performance of robotic limbs. We contribute an optimization routine, which allows a designer to add optimally tuned linear compliance to a robotic limb design in a systematic way. The exhaustive parallel compliance matrix (EPCM) is a matrix of parallel springs, which cross every joint and joint combination. The stiffness of these springs is efficiently optimized about a given task trajectory. In order for the results to be meaningful, we use a realistic loading scenario and an accurate motor model. For the loading scenario, we use a gait trajectory including both force and velocity, which was measured empirically from a biological quadruped. This gives us a realistic loading scenario to test the merits of our optimal design tool. Using this gait trajectory, we formulate a fully dynamic motor torque profile including both the inertial effects from the acceleration profile and the torque required by the ground reaction force profile of the gait trajectory. This motor torque profile varies as a function of the stiffness and offset values of the parallel spring matrix. The stiffness-dependent torque profile affects the motor power required for the task. After presenting the motor model, we carefully formulate two different cost functions, based on the motor torque and power profiles, which we use to optimize the design of the spring stiffness matrix. We then compare and contrast the results of these solutions.

The springs prove to be very capable of reducing motor effort. Specifically, we show that including parallel springs in the design reduced the sum of squared power by up to 47%, along with up to 39% reduction in peak motor power, up to 55% reduction in sum of square current (SSC), and up to 41% reduction in peak current. Each performance metric performed better in some aspects than the others, and the choice between them will depend on the designers' priorities.

### Literature Review.

While our exhaustive parallel spring matrix concept is novel, compliance in robotic actuators is not. There have been many instances where adding compliance to the design of an actuator has proven to significantly and positively affect a wide range of performance parameters. One example of this is the series elastic actuator, i.e., an actuator with a compliant member added in series. This technology has been used extensively in legged robots such as Atrias [5] and Big Dog [6], and in wearable robotic systems [7,8]. Hollander et al. showed that tuning the spring stiffness of a series elastic actuator can significantly reduce the peak power required at the motor [9]. Parallel compliance is another type of compliant actuation, less commonly used than serial compliance in actuator designs. Yang et al. incorporated this method in the design of ERNIE, a bipedal walking robot, and performed an experiment to see how spring stiffness affected power use [10]. In their experiment, gaits of varying speed were designed for a number of knee spring stiffnesses. For each spring, stiffness gaits were designed by simultaneously optimizing gait trajectory and spring offsets. The paper does not rigorously detail their optimization process, but they use the average of the absolute value of motor power as fitness metric throughout the paper. This fitness metric is similar to the sum of square power (SSP) metric, which we formulate in Sec. 5.1. It was shown that the average power required to walk could be decreased using a spring at speeds above 0.4 m per second, and that the best spring stiffness increased with walking speed. They do not, as opposed to the method introduced here, find the optimal spring stiffness for each walking speed. In this paper, we rigorously develop an optimization method, which, given a fixed task (e.g., walking at 3 mph, or any arbitrary task, which can be modeled by a set of force and velocity trajectories), will find an optimal parallel stiffness, which minimizes one of three fitness metrics, which we suggest. Another area where parallel springs are implemented in multijoint robotic limbs is in hoppers such as the one described by Punzo and McGookin [11]. The paper describes their leg design, which includes several springs: one across the knee, one across the ankle, and one along the length of the tibia. They choose the stiffness of these springs to mimic the design of a biological flea.

The Cheetah Cub is a quadruped robot that has made extensive use of parallel springs in the leg design. The authors describe their design process in a 2013 paper [12]. They use a central pattern generator and an advanced dynamic model to develop optimal gait trajectories. They briefly discuss the stiffness of their leg springs, stressing that the stiffness is critical to the design, and describing the effects of the spring being too stiff or too soft. They chose a high stiffness spring, which must be actuated at low speeds, but at high speeds, the spring takes advantage of the momentum-based dynamics and passively actuates the gait.

One subpurpose of this paper is to test different fitness metrics against each other. This need arises from the fact that, over the years, many different fitness metrics have been developed for optimizing performance of robotic systems driven by a DC motor. Many of these metrics have been suggested in work on the optimization of transmission ratio for actuators driven by geared DC motors. This paper draws on several strategies from this body of research. Following is an overview of the major papers which influenced the author's work. The classical result was introduced by Pasch and Seering [13]. The performance metric they suggest is output acceleration for given amplitude of actuator effort using an inertial load. The result is often referred to as the principle of inertia matching, because they find that the optimal gear ratio equivalates the inertial load of the motor with the inertial load of the task. Chen and Tsai expand the inertia match principle to multi-actuator robotic devices [14,15]. The authors choose a fitness metric, the maximum acceleration capacity, which represents the spatial acceleration capacity of a geared robotic arm with multiple degrees-of-freedom (DoFs). The maximum acceleration capacity is proportional to the volume of the acceleration ellipsoid. Van de Straete et al. described a method to select a feasible motor given a dynamic loading scenario [16–18]. They use a graphical approach to select the best performing motor (with feasibility constraints) for a dynamic loading scenario. They seek to minimize peak current which reduces the cost of the inverter. Rezazadeh and Hurst [19] continue the trend toward fully dynamic, trajectory-based loading scenarios. Their performance metric of choice is the sum of waste energy (ohmic heating) in the motor windings. Overheating in the motor windings is a critical failure point for DC motors; significantly reducing ohmic heating will, in many cases, allow the designer to use a smaller motor. In this paper, we utilize a fully dynamic trajectory-based loading scenario, but we test several different performance metrics. We formulate a metric very similar to Rezazadeh and Hurst [19] in Sec. 5.2, and one based roughly on Yang et al. [10] in Sec. 5.1.

## The Model: A Two Degrees-of-Freedom Planar Robot Limb With Parallel Springs

For this paper, we will design the optimal spring stiffness for a multiactuator robotic limb. For the sake of this paper, we implement our optimal design methods on a minimalist example: a 2DoF planar serial manipulator (see Fig. 1). The robot limb has two actuated joints and two leg segments. Joints one and two will be the robot's hip and knee joints, respectively. And segments one and two will be the thigh and shank. The robot's kinematics and dynamics will be over-viewed in Secs. 2.2 and 2.3 as they relate to the method we introduce to design and optimize the EPCM.

This method is designed such that a spring matrix may be added to the design of any robotic limb. The 2DoF robotic limb is the simplest nontrivial example of a robotic limb. The EPCM creates a matrix of springs, which cross every joint and joint combination. The number of springs in the matrix increases as a function of the number of joints. Adding a third joint, for example, would require three more springs to be added to the EPCM. So, for simplicity, only two joints have been included in this case study. To clarify, the contribution of this paper is not the three spring case study, but the method used to tune it. This method may be used to incorporate parallel springs into any design where a force–velocity trajectory is known.

### Assumptions.

In this subsection, we list the assumptions made in our approach to modeling and optimizing the EPCM:

- (1)
The task trajectory, both the velocity and force exerted by each joint, is known.

- (2)
Each spring applies a force, which is related linearly to the joint angle(s) upon which it acts.

- (3)
Each joint is actuated by a geared DC motor.

- (4)
The mass of the limb sections is not a function of the design variables (the spring stiffness and offset values).

### Kinematics.

In order to design a robot limb, the kinematic equations of the limb must be known. For this paper, we use a well-known robot model. If the reader is interested in seeing the specific kinematic equations for this robot limb, they are detailed in Ref. [20] for example. For this analysis, both the force and the velocity equations should be derived. A common and simple way to find these relationships is to differentiate the forward kinematics and get the Jacobian matrix (again see Ref. [20] for a more detailed explanation). Once the force and velocity relationships have been derived, inertial effects must be modeled.

### Dynamics.

Inertial effects may play a significant role in the torques developed at the joints during legged gait. For the sake of this analysis, we choose to model each leg segment as a point mass located at its midpoint. The reader may refer to Ref. [20] for a more detailed description of how to model inertial effects in multiactuator robotic limbs.

### The Exhaustive Parallel Compliance Matrix.

*k*) and an offset (

_{ij}*b*). The value of these offset parameters changes the resting angle of the corresponding spring in the spring matrix. Force is developed in each spring according to Hooke's law

_{ij}*β*is an

*m*× 1 vector

For the planar case, *K* is a 2 × 2 matrix, and *θ* and *β* are 2 × 1 vectors. The values of matrix *K* and vector *β* will be the design variables for the optimization algorithm.

### Implementation.

Figure 1 shows an implementation of the robot with an added parallel spring matrix. A torsional spring is added to each joint with torsional stiffness *κ _{i}*. A gear system is shown, which adds a biarticular linear spring, which acts on joints one and two by apply force at distances

*r*

_{1}and

*r*

_{2}from each respective joint.

*F*) may be formulated as

_{s}*K*

_{lin}is the spring stiffness of the linear spring, and Δ

*l*is the change in length of the spring. In this case

_{S}*r*

_{1}and

*r*

_{2}are the perpendicular distance between the spring force and the respective joint axis, and

*β*is the value of Δ

_{S}*l*when

_{s}*θ*

_{1}and

*θ*

_{2}are zero. Finding the values for the

*K*matrix requires substituting Eq. (7) into Eq. (4) and taking the associated partial derivatives

*β*in this case is

The design variables in this implementation are: *K*_{lin}, *κ*_{1}, *κ*_{2}, *r*_{1}, *r*_{2}, *b*_{11}, *b*_{12}, and *b*_{22}. Notice that the 8DoF of this implementation are more than enough to the 6DoF of Eq. (2). The only exception is that *K*_{12} is constrained to be equivalent to *K*_{21}. It may be possible to prove that this equivalence is mandated by conservation of energy for any implementation, but such a proof is beyond the scope of this introductory paper.

## The Task: Walking Gait Data From a Biological Quadruped

We use gait data recorded from biological cats walking, converted from Suter et al. [21] as the target gait for the optimal design. The cat gait data represent a real task performed by a multiactuator limb, biological or not. We expect that the results of this study give an indicator for the effectiveness of this approach in a robotic system. However, in practice, the trajectory should come from a detailed model, which creates an accurate use-case scenario. This task-specific datum then can be easily integrated into the optimization routine we formulate here, and a task-specific stiffness matrix will result. Figure 2(a) shows the joint torques and velocities throughout the gait cycle. Figure 3 illustrates the motion of the leg. The motivation for using biological walking data for this exercise is that it is indicative of the torques and velocities present for walking in a legged vehicle. An alternative method would be to simulate the data using an advanced dynamic simulator and a model of a legged robot.

## Formulating Electrical Power in a Geared Direct Current Motor

*I*) using a linear relationship with the motor torque (

*τ*)

_{m}*K*is the torque constant associated with the motor. The motor torque (

_{t}*τ*) is an

_{m}*m*×

*n*vector where

*m*is the number of motors and

*n*is the length of the data set. It is estimated from the given joint torque load in the data set (

*τ*), the rotational inertia of the motor (

_{j}*J*), and subtracting the torque contribution of the springs

_{m}*a*is the angular acceleration of the joint angle,

_{j}*g*is the gearing ratio between the motor and the joint angle. Note that this is where the spring torque from Eq. (2) factors into the power formulation. Substituting Eq. (11) into Eq. (10) gives

*K*) and a current dependent effect resulting from the armature resistance (

_{v}*R*)

_{a}*V*is the velocity of the motor given in the data set. It should be noted that

_{m}*U*and

*I*are

*m*×

*n*matrices, where

*m*is the number of motors and

*n*is the length of data set. Each column of these matrices is a vector containing the motors' instantaneous voltage or current levels. Similarly, the power vector (

*P*) will be constructed as an

*m*×

*n*matrix containing instantaneous motor power values for each motor. It is the elementwise product (notated as $\u2299$) of the instantaneous voltage and current matrices

This power matrix, however, cannot be used directly as the performance metric for the optimization problem. Optimization routines require a single scalar to be used as a metric for evaluating one design against another.

## Cost Function Formulation

There are several methods which may be used to produce a performance metric for the optimization routine as was discussed in Sec. 1. In this paper, we will use two methods to formulate the fitness function and compare the results. The first method will be to minimize the SSP values. The second method (used in Ref. [19]) is to minimize ohmic heating in the windings, which is equivalent to minimizing the SSC. Both of these formulations will be detailed in this section, and design results will be presented in Sec. 8.

### Sum of Square Power Method.

*m*motors across the length of the data set (

*n*)

This method penalizes negative power as much as it does positive power. It also penalizes large power spikes more than small power draws due to the nonlinearity of the squared function. Large power spikes are undesirable because the size of the motor is often determined by the peak power requirement of a task. Using this method will reduce braking energy in the force–velocity trajectory of the motor, and in all likeliness, it will reduce the value of the peak power required by the motor. A small peak power requirement often means a smaller motor may be utilized.

### Sum of Square Current.

*P*

_{Ω}) in the windings and, correspondingly, the size of the motor necessary to accomplish the task. In addition, decreasing the SSC will in this and most other cases reduce the peak current, which will decrease the size and cost of the inverter. This is because ohmic heating is the product of the squared current and the armature resistance

where *R _{a}* is the armature resistance and

*I*is the current in the windings. We know from calculus that multiplying a function by a scalar will not change the location of its minimum. Therefore, minimizing SSC is the same as minimizing the sum of ohmic heating.

where *n* is the length of the data set and *m* is the number of actuators.

## Constraints

There are two constraints for this optimization. The first of these constraints is that the diagonal elements of the *K* matrix must be positive. The second constraint is that the stiffness matrix must be symmetric. Springs around certain joint combinations may be difficult to implement in reality. In this case, the stiffness associated with infeasible springs may be constrained to zero in the optimization.

## Perturbation Study

To test the robustness of the design, a set of 50 gait trajectories were produced, which have been harmonically perturbed using the coefficients of a Fourier series fit to the unperturbed data set. Instead of adding random noise directly to the leg angles and forces, a seventh-order Fourier series was fit to the gait trajectories and then used to create the perturbed trajectories. The coefficients of the Fourier series were perturbed randomly, producing seventh-order and lower harmonic perturbations around the original gait cycle. Figures 4 and 5 show the perturbed model.

These perturbed models will be used to test how well the spring stiffness solution performs in real-world conditions. If slight variations in the gait trajectory cause significant decreases in performance, the solution may be over-specialized.

where *f* is the fitness function being evaluated, and $K\u0302$ and $\beta \u0302$ are the stiffness and offset solutions, which minimize that fitness function for the unperturbed data. $Ki*$ and $\beta i*$ are the SPOS values for the *i*th perturbation trajectory.

## Results

The results of the optimizations using the two metrics will be presented here. Table 1 displays a comparison of the solutions of the optimizations. Each column in the table represents an optimal leg stiffness design, with the exception of the last column, which represents a design without parallel compliance. The rows of the table represent the various performance metrics by which the designs may be judged by. The first two rows being the methods described in Sec. 5, while the last two rows are alternative performance metrics: peak power and peak current. Peak power is the maximum instantaneous power exerted by any of the motors during any moment in the gait cycle, a determining factor in required motor size. Peak current is the maximum instantaneous motor current in either the positive direction or the negative direction.

Table 2 is related to Table 1 in that the two columns of Table 2 equal the percentage difference of first two columns of Table 1 and the fourth column of Table 1. In short, Table 2 shows by what percentage each metric was reduced compared to the unassisted robot. This gives an easier comparison between the results.

Table 3 shows the results of the perturbation study. Each column contains results using the solutions of the two optimization methods: SSP for column one, and SSC in column two. The first two rows of the table represent the average reduction in each performance metric across the fifty different perturbed gait cycles. The third row contains the mean difference, in percentage, from the perturbation-specific best-case scenario, as defined in Eq. (18). This value effectively represents how sensitive each solution is to perturbation, a lower value representing a more positive result.

### Sum of Square Power.

Minimizing SSP resulted in a 47% reduction in SSP, 35% reduction in SSC, 39% reduction in peak power, and a 10% reduction in peak current. This means that adding parallel springs could significantly reduce the size of the motor required (by reducing SSP and peak power), the amount of heat produced by the motors during gait (by reducing current draw on the motor windings), the size of the batteries needed for a given duration of gait (by reducing energy expenditure), and the size and cost of the power inverter necessary (by reducing peak current). Even in the presence of random perturbation, the spring matrix (with $K\u0302SSP$ and $\beta \u0302SSP$ values unchanged) reduced the SSP by an average of 41%, and SSC by an average of 34%. All of these factors are large design considerations, and large contributors to overall system cost. This savings in dollars and mass would have to outweigh the cost of adding the springs to the legs in the first place, but in general, mechanical springs have a very high power density and lower cost compared to DC motors.

### Sum of Square Current.

The results of the SSC minimization were distinctive from the other two minimizations. Several of the metrics were reduced, or increased, with double-digit percentage differences compared to the SSP method (see Table 2). Notably, the method reduced the sum of square current metric by 55% points, whereas the SSP method reduced the figure by a mere 35% points. On the other hand, the SSC minimization reduced sum of square power by only 13% compared to the SSP method's 47% point reduction. The results of the perturbation study follow the same trend: the SSC method scores much lower on the SSP metric, but much higher on the SSC metric. According to its low $\Lambda \xaf$ score, the optimal solution for the SSC metric does not change much with perturbation, the SPOS best-possible solutions are on average only 1.2% better than the unperturbed solution.

The differences in the actual stiffness and offset solution of this method show up in the off-diagonal terms of the $K\u0302SSC$ matrix. The off-diagonal spring stiffness has been reduced almost a full order of magnitude from the previous results. This, along with small differences in the offset terms, may be responsible for the noticeable performance differences.

## Conclusions

The main contribution of this paper lies in the EPCM itself and the optimization routine developed to tune it. This combination is a powerful design tool, which will allow an engineer to quickly and systematically design parallel compliance into a limb. The optimization routine allows a designer to have confidence that they have thoroughly explored the parallel compliance design space and have selected an optimal configuration for their particular task and robot structure. The case study performed here shows that the EPCM may dramatically reduce the power required for a legged vehicle to ambulate if designed carefully. We optimize the spring design according to two different fitness functions. Both fitness functions produce a spring stiffness matrix, which significantly reduces the performance requirements of the actuators. Each performance metric reduces some metrics more than the other. It is difficult to make a decision about which method is the better without more context about the problem and the associated goals. The sum of square power will reduce the peak power value, along with extending the battery life. This means a reduction in the size of the motor and the battery size. The SSC metric minimized the ohmic heating and dramatically reduced the peak current value, at the cost of comparatively low savings in SSP. This implies that the cost of the inverter will decrease along with the temperature of the windings, and potentially the size of the motor, with less impact on battery size or life. No matter which of these advantage sets seems most attractive to the designer, both of them dramatically change the capability of the robotic system being designed. Double-digit percentage point decreases in many key performance metrics is a significant finding. What makes the results more significant is that we have shown that the performance improvements are robust to perturbations in the design trajectory. This means that if the system and task are well defined, the performance gains modeled in this paper should be applicable to real-world scenarios, which will inevitably include perturbations. In conclusion, the results of this study show that parallel springs should be considered in the design robotic limbs required to efficiently perform a specific task.

## Future Work

In the future, an algorithm could be developed, which accounts for more realistic design constraints. Since linear torsional springs are sometimes difficult to implement, future work could take into account the nonlinearities, which would most likely be present in real designs. Implementing the EPCM on limbs with more than two joints may require springs, which cross more than two joints, or sets of joints, which are not adjacent to one another.

## Funding Data

National Science Foundation (026257-001).