Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator Holly Warner*
Department of Mechanical Engineering
Cleveland State University
Cleveland, Ohio 44115
December 2, 2014
Abstract
Results from a previously developed model of an actuator for use in the simulation and
optimization of a prosthetic knee joint design indicated the potential for successful energy
regeneration. This model took into account losses due to the resistance of the motor.
However, no mechanical losses were included. This project addresses that modeling
deficiency, providing further insight into the actuator’s energy regeneration capacity.
This is approached by two methods, the development of a friction torque model for the
ballscrew for use in a simulation in which the design parameters are static, having been
previously optimized, and the implementation of a more basic method of accounting for
friction based on efficiency for use in future optimization simulations where the
parameter details are less defined. Results for each approach are presented. In both cases
the capacity for the system to perform energy regeneration is indicated.
1. Introduction
A proof-of-concept simulation for a prosthetic knee crank-slider actuator design
including energy regeneration using ultracapacitors has been formerly established. It can
be described by the bond graph shown in Figure 1.
The input on the left is a knee torque profile. From left to right, the elements represent a
torsion spring, crank-slider geometry, nut mass, screw lead, motor inertia, motor
constant, armature resistance, a DC-DC power converter, and a capacitor. Detail on the
bond graph modeling method can be found in [1]. Within this model eight parameters
were optimized by using an evolutionary algorithm with a fitness function maximizing
* Email address: [email protected]
𝑀𝐾(𝑡) . .
𝑆𝐸 1
𝐶 : 1 𝐾
1/𝐺 . .
𝑀𝑇𝐹 1
𝐼 : 𝑚
1/𝑙 . . 𝑇𝐹 1
𝐼 : 𝐽𝑚
𝑎 . . 𝐺𝑌 1
𝑢 . . 𝑇𝐹
𝑅 : 𝑅𝑎
𝐶 : 𝐶
Figure 1 – Bond graph for the original, frictionless simulation
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 2 of 59
the stored electrical charge. These parameters include the capacitance of an
ultracapacitor, the spring constant of a torsion spring, two link lengths, two constant
angles, the ballscrew lead, and the initial charge of the capacitor. For the set of
parameters that reached the maximum energy storage condition, the ultracapacitor energy
increased by 12.7 Joules during one stride, which was almost half of the 26.5 Joules that
were available. While the motor’s resistance was accounted for, this model neglected
frictional losses in the transmission components. Inclusion of such losses would provide
useful insight as to the actuator’s ability to function in an energy regenerating mode. The
primary element for which this can be modeled is the ballscrew.
Friction within a ballscrew has been a topic of much study ranging from the development
of highly complex models to the simplest efficiency accounting as well as some
intermediate approaches. Complex models of a ballscrew system includes variables such
as rolling contact, lubrication, sliding, ball-to-ball contact, and the return system, among
others, such as in [2]. Simplifications modeling only a portion of these effects have been
established. For example, in [3] the model was based primarily on bearing-related effects.
Considering the problem from a general perspective, it has been modeled with
modification as a basic screw as well [4]. Experimental modeling has also been applied to
this problem [5]. Frequently, manufacturer’s recommend that a ballscrew be modeled by
use of a 90% efficiency term [6]. Selecting from among these options is really dependent
on the accuracy required for the application and the available information.
Because the model defined within the proof-of-concept system optimization is general
with the focus being placed on regeneration capacity, only the lead of the ballscrew is
being included in the simulation as this models the kinematic and kinetic transformations
that this element implies. This is only one parameter that defines a ballscrew; the
remainder of the parameters, diameter, length, and preload among others, have been left
to be determined during future mechanical design work. Accordingly, the ability to model
friction is limited because few details of the screw are known. Two separate approaches
to adding a friction model to the simulation that are feasible within these constraints were
identified.
An optimal set of parameters has been previously defined for the frictionless model.
Within this set a ballscrew lead value is specified. A specific ballscrew with this lead
value could be selected based on guidelines given by ballscrew manufacturers and a
complex friction model developed from the screw’s now known parameters. This model
can be simulated for a given parameter set, providing insight into friction’s effects on the
system’s power flow and energy usage.
Additionally, and perhaps most commonly, the frictional losses of a ballscrew can be
modeled by a simplified method, accounting for the efficiency of the screw which is
stated by manufacturers to be about 90% [6]. The ballscrew friction model developed by
Olaru, et al. has shown close agreement with this value for a variety of speeds and a
range of contact loads, indicating the sufficiency of this method for optimization
purposes [2]. The results of the complex friction model should also provide confirmation
of this approach. Accounting for this efficiency figure and adding it to the current
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 3 of 59
optimization simulation will provide a second means for modeling the ballscrew’s
friction. This approach will be feasible for optimization as it is not dependent on screw
geometry.
In Section 2 the two approaches, complex friction modeling for a given parameter set and
general efficiency friction modeling for use in optimization, are developed in detail. A
method for tracking energy throughout the system is also described. The results of
simulation of both approaches and optimization of the second approach are presented in
Section 3. Lastly, Section 4 provides several concluding observations and possibilities for
future work.
2. Methods
2.1. Complex friction model
According to [4], the friction of a ballscrew is greatly dependent on the preload of the
ballnut and primarily of the coulomb type. It is therefore stated that the friction torque
could be represented by the equation typically describing the torque to raise or lower a
load as shown in (1) with the force 𝐹𝑃 set equal to the preload rather than axial load force.
𝜏𝑓𝑟𝑖𝑐 = 𝐹𝑃𝑅 (2𝜋𝑅𝜇±𝑙 cos(𝛼)
2𝜋𝑅 cos(𝛼)∓𝜇𝑙) (1)
In addition to the preload the pitch radius 𝑅, friction coefficient 𝜇, screw lead 𝑙, and
thread angle 𝛼 must be known. For a high-precision ballscrew with a light preload in the
ballnut a value of 𝜇 = 0.005 may be used for the coefficient of friction. Additionally, the
thread angle 𝛼 for a ballscrew is 45°. [4] The remaining parameters are dependent on the
geometry of the specific ballscrew being considered. The first set of signs given in (1) is
for extension of the screw, while the second set is for compression.
2.2. Ballscrew selection
The selection of a ballscrew is primarily dependent on the axial load. To estimate the
maximum dynamic axial load the original simulation was run with the best parameter set.
This set of parameters for the original system as shown in Figure 1 is given in Table 1.
The parameters which were optimized are shown in the lower portion of the table.
Parameter Symbol Value Units
Motor Constant 𝛼 .054 Nm/A
Armature Resistance 𝑅𝑎 .0821 Ohm
Estimated Nut Mass 𝑚 2.1 kg
Motor Inertia 𝐽𝑚 1.29 kg m2
Capacitance 𝐶 221.54 F
Spring Constant 𝐾 47.64 Nm/rad
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 4 of 59
Link Length 𝑎 .055 m
Link Length 𝑑 .25 m
Angle 𝛾 1.32 rad
Angle 𝜙𝐿 1.17 rad
Screw Lead 𝑙 .000809 m/rad
Initial Capacitor Charge 𝑞𝑐0 6726 C
Table 1 – Original system parameter set. Optimized
parameters are given in the lower section of the table.
The geometry constants are illustrated in Figure 2, a concept drawing of the crank-slider
driven prosthesis. Within this figure the long link on the left represents the ballscrew. At
the base of this link is the motor which is attached to the shank. At the top a triangular
link is shown at which point the user’s socket would be connected.
Figure 2 – Concept drawing of
crank-slider driven prosthetic leg
An equation expressing the axial load of the ballscrew was derived (2) and added to the
original system simulation.
𝐹𝑎𝑥𝑖𝑎𝑙 =1
𝑙((𝑚𝑙2 + 𝐽𝑚)�̈�𝑚 +
𝛼2
𝑅𝑎�̇�𝑚 −
𝛼𝑢
𝑅𝑎𝐶𝑞𝑐) (2)
The simulation was run, and the peak force was extracted. The value determined was
𝐹𝑎𝑥𝑖𝑎𝑙 = 1421 N ≈ 320 lbf. Coupled with the value of the screw lead, 0.2 in/rev or
5.08 mm/rev, this information was sufficient to select a ballscrew as it also defined the
required preload value. The optimal preload value is 10% of the maximum force
according to [4]. This is a value of 𝐹𝑃 = 142.1 N ≈ 32 lbf. The selected screw must be
capable of having this preload applied.
γ
a
d
𝜙𝐿
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 5 of 59
A search was conducted among several ballscrew manufacturers. The final selection was
a PowerTrac 0631-0200 SRT RA screw and SEL 10408 nut assembly from Nook
Industries. The datasheet for this product can be found in Appendix 1. It is able to handle
a dynamic load of up to 815 lbf and preloads up to 233 lbf, and it possesses the required
lead. While a ballscrew does not have a pitch radius as defined in the typical sense for
power screws or gears, the ball circle radius is a reasonable approximation. For the Nook
Industries screw the ball circle radius was 𝑅 = 0.00801 m.
2.3. System equations with complex friction model
The augmented bond graph representing the complete system is shown in Figure 3. It was
able to be developed with the same causality for each of the energy storage elements as
the original model. No algebraic loops were introduced through the addition of the R
element.
Figure 3 – Bond graph for including complex ballscrew friction model
To form the complete function Φ𝑓𝑟𝑖𝑐 , the sign conventions of the bond graph and (1) were
handled as shown in (3), an expression in the form of coulomb friction.
Φ𝑓𝑟𝑖𝑐(𝑓) = |𝜏𝑓𝑟𝑖𝑐| 𝑠𝑖𝑔𝑛(𝑓) (3)
The completed model includes a total of three states. Accordingly, three equations of
motion may be systematically derived from the bond graph. This development is
illustrated in Appendix 2. Equations (4), (5), and (6) show the final result.
�̇�𝑘 = 𝐺𝑙�̇�𝑚 (4)
�̈�𝑚 =1
𝐽𝑚+𝑚𝑙2[𝑙𝐺𝑀𝑘(𝑡) − 𝑙𝐺𝐾𝜙𝑘 −
𝛼2
𝑅�̇�𝑚 +
𝛼𝑢
𝑅𝐶𝑞𝑐 −Φ(�̇�𝑚)] (5)
𝑖𝑐 =𝛼𝑢
𝑅�̇�𝑚 −
𝑢2
𝑅𝐶𝑞𝑐 (6)
2.4. Simulation with complex friction model
Having established the system’s dynamic equations, the control 𝑢 must be addressed to
construct a complete simulation. An open-loop approach was selected, remaining
𝑀𝐾(𝑡) . .
𝑆𝐸 1
𝐶 : 1 𝐾
1/𝐺 . .
𝑀𝑇𝐹 1
𝐼 : 𝑚
1/𝑙 . . 𝑇𝐹 1
𝐼 : 𝐽𝑚
𝑎 . . 𝐺𝑌 1
𝑢 . . 𝑇𝐹
𝑅 : 𝑅𝑎
𝐶 : 𝐶
𝑅 : Φ𝑓𝑟𝑖𝑐(𝑓)
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 6 of 59
consistent with the original simulation. To determine 𝑢, the equations of motion were
manipulated such that a direct solution was possible based on reference data. This is
termed 𝑢-inversion and shown in Appendix 3.
Simulink® was used to create the system simulation. This was implemented by
constructing the system equations in block diagram form. While no optimization was
intended for this simulation, it was developed within the same framework as the original
simulation such that optimization could be possible if required in the future given further
development. Additionally, a specialized function was used to implement the friction
model. Within a MATLAB embedded function block logic was assembled to provide
switching between the screw extension and compression variations of the friction torque
equation and to apply the sign function.
Lastly, auxiliary MATLAB code was developed and additional blocks were added to the
Simulink® diagram to track the power flow and energy usage of the system. Alongside a
general energy accounting an efficiency term for the ballscrew was calculated. A sum of
the power entering and a sum of the power exiting the 1 junction connecting the R
element to the bond graph, excepting the power entering the R element, were computed.
These were integrated to determine the total energy entering and exiting the junction.
Division of the exiting energy value by the entering energy value produced an efficiency
term for the ballscrew. The MATLAB code for this calculation as well as the system
Simulink® and the other MATLAB code can be found in Appendix 4.
2.5. Generalized friction model
As previously stated, for the sake of optimization definition of the complete parameter set
required for the complex friction model is not preferable. As an alternative a simulation
could account for the losses based on a general efficiency term unrelated to the ballscrew
parameters. For ballscrews this efficiency is typically cited to be at least 90% [6].
Applying this concept to the basic transformer model shown for the ballscrew in
Figure 1, requires a loss of the power conservation property of the bond graph as
illustrated in general terms in (7) for the case where the screw is converting power in the
mechanical rotation domain to power in the mechanical translation domain and 𝜂 < 1.
𝐹𝑠𝑐𝑟𝑒𝑤 �̇� = 𝜂 𝜏𝑠𝑐𝑟𝑒𝑤 �̇� (7)
The equations describing a ballscrew within a bond graph are separated into the
kinematic relationship and kinetic relationship as shown in (8) and (9).
�̇� =1
𝑙�̇� (8)
𝜏𝑠𝑐𝑟𝑒𝑤 = 𝑙𝐹𝑠𝑐𝑟𝑒𝑤 (9)
Using these equations to substitute back into the right hand side of the power equality
given in (7), one can see that the efficiency coefficient must only be applied to either (8)
or (9). Since the friction torque is a kinetic variable, it follows that the efficiency
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 7 of 59
coefficient should be applied to (9). It cannot simply be said, however, that (10) always
holds true as it is possible for the screw to be driven by the force, backdriving, as shown
in (11).
𝜏𝑠𝑐𝑟𝑒𝑤 = 𝜂𝑙𝐹𝑠𝑐𝑟𝑒𝑤 (10)
𝐹𝑠𝑐𝑟𝑒𝑤 = 𝜂1
𝑙𝜏𝑠𝑐𝑟𝑒𝑤 (11)
For the power equality to hold for both of these cases and the equation to be of the form
(9) as implemented in the bondgraph, the coefficient cannot simply be set to 0.9, though
the efficiency is always 90%. The solution to this is to use the equation of the form (10)
where two values of 𝜂 are switched between. The first is obvious; 𝜂𝐹 = 0.9 for the case
where the force is driving the screw. The second is found by solving (11) for 𝜏𝑠𝑐𝑟𝑒𝑤. This
requires 𝜂𝜏 =1
0.9 and is for the case where the torque is driving the screw.
Replacing (9) in the bond graph system equation derivation process with the form (10)
leads to a slight alteration to the second equation of motion (13) of the original set of
equations. The complete set is shown below for the original frictionless system with the
addition of the efficiency term.
�̇�𝑘 = 𝐺𝑙�̇�𝑚 (12)
�̈�𝑚 =1
𝐽𝑚+𝑚𝑙2𝜂[𝜂𝑙𝐺𝑀𝑘(𝑡) − 𝜂𝑙𝐺𝐾𝜙𝑘 −
𝛼2
𝑅�̇�𝑚 +
𝛼𝑢
𝑅𝐶𝑞𝑐] (13)
𝑖𝑐 =𝛼𝑢
𝑅�̇�𝑚 −
𝑢2
𝑅𝐶𝑞𝑐 (14)
The derivation of (12), (13), and (14) is not given as it follows the derivation of the
previously discussed friction model set of equations nearly identically.
2.6. Simulation with generalized friction model
Control within this simulation was once again defined in an open loop manner by
𝑢-inversion by the same method as was described before. Similar to the previously
developed simulation the system equations were implemented in block diagram form. An
embedded MATLAB function was prepared for the selection of 𝜂. Based on the power
convention of the bond graph the switching was defined such that 𝜂 = 0.9 would be
selected for positive power flow through the TF element, corresponding to backdriving,
and 𝜂 =1
0.9 would be selected for negative power flow in which case the screw is being
driven by the torque.
Code for an energy balance was completed for this model as well as calculation of the
efficiency across the ballscrew TF element. While the system energy would no longer
balance because of the non-power conserving change made to the system equations, the
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 8 of 59
difference will represent the losses due to the screw’s friction torque. In addition,
dividing the time integral of the input power of the TF by the time integral of the output
power of the TF yielded an efficiency term to be compared with the expected value of
90%.
2.7. Optimization with generalized friction model
Upon completion of the simulation, optimization of the generalized friction model could
be accomplished. This was approached by use of an evolutionary optimization algorithm,
namely biogeography-based optimization. Biogeography-based optimization is an
algorithm based upon the migration and emigration of species to and from various
isolated habitats where the habitats represent problem solutions and species characterize
solution features [7]. In addition to the basic algorithm, mutation and elitism were
utilized. Each run was begun with a random seed. A total of five optimization runs were
completed with the algorithm parameters given in Table 2.
Parameter Value
Population Size 200
Number of Generations 100
Number of Elite Individuals 2
Probability of Mutation 0.02
Table 2 – Biogeography-based optimization parameters
The optimization algorithm selected minimizes a given cost. As the goal for this
optimization is the maximization of capacitor charge for one gait cycle, the cost function
was defined as (15).
𝐶𝑜𝑠𝑡 = −(𝑞𝑐,𝑓𝑖𝑛𝑎𝑙 − 𝑞𝑐,𝑖𝑛𝑖𝑡𝑖𝑎𝑙) (15)
While maximization of energy gain is more applicable, this cost function based on
maximizing the capacitor charge was selected to remain consistent with the original
simulation such that a direct comparison may be made.
The optimized parameters were selected as shown in Table 3, which also includes the
search space. All of the parameters were allowed to vary throughout a continuous search
space except for the ballscrew lead 𝑙 for which a discrete set was defined.
Parameter Minimum Value Maximum Value Units
𝐶 0 500 F
𝐾 0 100 Nm/rad
𝑎 0 .15 m
𝑑 0 .3 m
𝛾 0 𝜋 rad
𝜙𝐿 0 𝜋 rad
𝑙 1 6.350 mm/rev
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 9 of 59
𝑞𝑐0 0 8000 C
Table 3 – Optimization parameter ranges
Lastly, several constraints were placed on the acceptable solutions to help ensure
feasibility. This was implemented through penalizing the cost function of any solution
not meeting the constraints by setting it to infinity. Specifically, the geometry variables
were required to result in real values for the variable length link (ballscrew) and for the
transformer ratio G. Additionally, solutions for the 𝑢-inversion were required to be real
and between zero and one. The MATLAB code and Simulink® code for the optimization
and simulation are given in Appendix 5.
3. Results
3.1. Complex friction model results
The parameters within the simulation were set to the values given in Table 1. The
simulation was run with an input reference knee moment with a length of one stride.
Mathematically perfect tracking as predicted by the 𝑢-inversion technique was attained,
as shown in Figure 4.
Figure 4 – Tracking results for complex friction model
The attributes of the electrical system throughout the simulation time are depicted in
Figure 5. With the inclusion of the friction losses the capacitor still charged for the given
parameter set.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.90
10
20
30
40
50
60
70
80
Time (s)
Knee A
ngle
(d
eg)
rms error = 7.9578e-05
Reference Data
Simulated
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 10 of 59
Figure 5 – Capacitor charge, voltage, and current for one stride.
The plot of power flow in Figure 6 shows an alternating pattern between the power
provided and required by the human and the power delivered to and extracted from the
capacitor. This illustrates the power exchange expected for regeneration.
Figure 6 – Power flow for one stride
The change in energy for each component was also evaluated and is shown in Figure 7.
The sum of the final values of each component’s change in energy was on the order of
10-6 proving that the system model is truly energy conserving. An overall gain of 7.95 J
was observed in the capacitor. The net available energy entering the system from the
human was 26.58 J. The capacitor stored energy represents approximately 30% of this
available energy.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.96724
6726
6728
Cap
acit
or
Charg
e, q c
Charge gained = 0.2620 C
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.930.35
30.36
30.37
Cap
acit
or
Vo
ltage, v C
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9-20
0
20
Time (s)
Cap
acit
or
Curr
ent,
i c
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9-600
-400
-200
0
200
400
600
Time (s)
Pow
er
(W)
Positive corresponds to power entering bond graph
Mechanical Power from Human
Spring Power
Linear Kinetic Power
Rotational Kinetic Power
Joule Power Losses
Capacitor Power
Friction Power Losses
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 11 of 59
Figure 7 – Energy distribution for one stride
It was also noted that the losses related to the motor resistance were two to three times
greater than the friction losses, suggesting that this may be an important area to
investigate with respect to the overall actuator’s efficiency.
Finally, the efficiency of the ballscrew actuator was plotted in Figure 8.
Figure 8 – Ballscrew efficiency
At its lowest point the efficiency of the screw was 97%. This suggests that the
manufacturer’s value of 90% is more than sufficient in accounting for the friction losses.
However, it should be noted that the efficiency is highly dependent on the preload of the
ballscrew. While large variations in the required value of the preload are not expected for
different screws, further trials for different parameter sets would be required to determine
the range of this variation.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9-40
-30
-20
-10
0
10
20
30
Time (s)
E
nerg
y (
J)
Negative corresponds to energy gained by a component
Mechanical Energy from Human
Spring Energy
Linear Kinetic Energy
Rotational Kinetic Energy
Joule Losses
Capacitor Energy
Friction Losses
0 0.2 0.4 0.6 0.80
0.2
0.4
0.6
0.8
1
Time (s)
Bal
lscre
w e
ffic
iency,
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 12 of 59
3.2. Generalized Friction Model and Optimization Results
For each of the five optimization runs convergence was achieved. An example plot is
shown in Figure 9.
Figure 9 – Example convergence plot from Trial 4
Associated with each trial a best parameter set was determined. The results of the five
trials are shown in Table 4.
Optimized System Parameters Capacitor
Charge
Gained
(C)
Capacitor
Energy
Gained
(J)
Friction
Losses
(J) 𝑪
(F)
𝑲
(Nm/rad)
𝒂
(m)
𝒅
(m)
𝜸
(rad)
𝝓𝑳
(rad)
𝒍 (mm/rev)
𝒒𝒄𝟎
(C)
Trial 1 124.43 31.44 0.049 0.28 1.55 1.34 4 4140 0.057 23.98 9.84
Trial 2 117.99 32.32 0.060 0.30 1.77 1.29 5 3850 0.056 0.26 9.66
Trial 3 137.90 31.07 0.036 0.078 2.74 1.51 3 4613 0.056 12.30 9.68
Trial 4 234.83 30.46 0.035 0.29 0.55 1.28 3 7423 0.060 1.32 9.50
Trial 5 123.23 31.57 0.061 0.24 2.11 1.36 5 4094 0.055 -13.90 9.43
Table 4 – Optimization results for five runs
While it cannot be concluded from the results of the individual trials that a global
optimum was found by the optimization algorithm, it is clear that particular ranges of the
parameters tend to cause the maximum capacitor charge. The consistency across the
capacitor charge gained and friction losses columns between trials is striking in that this
suggests that even with the variations among the system parameters, the algorithm may
have been consistently approaching the same limit.
It is also notable that the energy gained by the capacitor was highly variable. This merits
further investigation especially as it seems intuitively that an increase in capacitor charge
should indicate an increase in the capacitor’s stored energy. One potential cause of this to
be considered is the initial kinetic energy in that the energy within a capacitor is related to
the square of the capacitor voltage. The voltage across the capacitor is related to the
angular velocity of the motor. For example, in the case where the energy gain is large, a
large initial kinetic energy is observed. This issue poses an opportunity for future work.
0 10 20 30 40 50 60 70 80 90 100-0.1
0
0.1
Generation
Min
imu
m C
ost
(C
)-
(qc,f
inal -
qc,i
nit
ial )
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 13 of 59
Because the timing of the efficiency switching could not be exactly determined during
the 𝑢-inversion process for this case, the tracking, as shown in Figure 10, is no longer
mathematically perfect; however, it is still sufficiently accurate for gait.
Figure 10 – Representative tracking plot, Trial 4
A set of plots demonstrating the electrical features of system is given in Figure 11.
Within the first plot one can observe the overall charge of the capacitor. The voltage
remains fairly constant. There is significant variation in the current.
Figure 11 – Typical capacitor charge, voltage, and current curves, Trial 4
Once again an alternating pattern between the capacitor and human power flows is
observed in Figure 12, representing the power exchange between the human and
prosthesis. Additionally, one can see indications of the switching of the efficiency value
within this plot as it causes discontinuities in the power flow.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.90
10
20
30
40
50
60
70
80
Time (s)
Knee A
ngle
(d
eg)
rms error = 0.0011812
Reference Data
Simulated
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.97420
7422
7424
Cap
acit
or
Charg
e, q c
Charge gained = 0.05952 C
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.931.73
31.74
31.75
Cap
acit
or
Vo
ltage, v C
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9-20
0
20
Time (s)Cap
acit
or
Curr
ent,
i c
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 14 of 59
Figure 12 – Example power flow plot from Trial 4
A plot exhibiting the change in energy within the elements of the system was also created
and is shown in Figure 13. While an exact energy balance could not be computed for this
case as it was forced into a non-energy conserving state, the model could be checked by
comparing the energy balance and the frictional losses value. These values were
Figure 13 – Plot of individual components’ change in energy, Trial 4
equivalent to the thousandths of Joules, confirming that the system was balanced, though
not energy conserving.
Finally, the results of the efficiency model were plotted in Figure 14 to confirm its
accurate performance. A brief transient is observed. This is likely due to the fact that the
𝜂 is set to one in the case that the ballscrew output power, which is used for switching, is
zero.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9-600
-400
-200
0
200
400
600
800
Time (s)
Pow
er
(W)
Positive corresponds to power entering bond graph
Mechanical Power from Human
Spring Power
Linear Kinetic Power
Rotational Kinetic Power
Joule Power Losses
Capacitor Power
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9-30
-20
-10
0
10
20
30
Time (s)
E
nerg
y (
J)
Negative corresponds to energy gained by a component
Mechanical Energy from Human
Spring Energy
Linear Kinetic Energy
Rotational Kinetic Energy
Joule Losses
Capacitor Energy
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 15 of 59
Figure 14 – Characteristic efficiency plot, Trial 4
4. Conclusion
Completion of this project represents the development and validation of two methods of
adding mechanical losses to the crank-slider actuator model for a prosthesis. The first
method explored an approach to modeling the frictional losses of the ballscrew based
upon its geometry and preload. The alternative method was the implementation of
generalized friction losses based upon an efficiency percentage, decoupling the ballscrew
geometry from the addition of friction to the simulation. This second method was pursued
because it allows greater freedom in optimization; the ballscrew may simply be modeled
by its lead value.
The results of simulation of the first method indicated that the manufacturer’s value of
90% efficiency is beyond sufficient. Additionally, for the specific parameter set used in
this simulation, regeneration capacity was maintained. The predicted regeneration
capacity of the complex friction model simulation is equivalent to 26% of the energy
needed for driving an ankle motor according to Winter’s data for a fast walking pace [8].
Brief evaluation indicated that this method was greatly dependent on the preload of the
ballscrew. A more detailed assessment of the required preload and its variation in relation
to other parameter sets should be completed.
Simulation and optimization of the second method was completed for a total of five trials.
For many parameters a clear range arose among the best solutions. Even at 90%
efficiency the system was capable of charging the capacitor. No conclusion with respect
to the system’s energy regeneration potential may be made at this point. Further work
must be done in this area as a large amount of variability was predicted within this result.
One potential cause of this apparent inconsistency has been proposed, and future work
will include its investigation.
Several directions within the broader scope of this model’s implementation will be
addressed in the future. First, more extensive optimization may be completed, including
multi-objective optimization. Within a closed-loop control system the ability to not only
charge the capacitor but also to track reference data becomes imperative. Other potential
elements of the cost function include minimizing user effort, tracking ground reaction
forces, and minimizing control signals. Secondly, dependent on the conclusions formed
0 0.2 0.4 0.6 0.80
0.2
0.4
0.6
0.8
1
Time (s)
Bal
lscre
w e
ffic
iency,
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 16 of 59
with respect to the variablility of the capacitor energy gain, the optimization cost may be
better executed as energy gain rather than change in capacitor charge. Third, the results
will be applied to a crank-slider actuator model within a larger control system
development simulation.
References
[1] D. Karnopp, D. Margolis and R. Rosenberg, System Dynamics: Modeling,
Simulation, and Control of Mechantronic Systems, 5th ed., Hoboken: Wiley, 2012.
[2] D. Olaru, G. C. Puiu, L. C. Balan and V. Puiu, "A New Model to Estimate Friction
Torque in a Ball Screw System," in Product Engineering: Eco-Design, Technologies
and Green Energy, Dordrecht, Springer, 2004, pp. 333-346.
[3] S. Jindrich, "A Study on the Ball Screw Friction Torque," in Student's Conference,
2011.
[4] A. H. Slocum, Precision Machine Design, Englewood Cliffs: Prentice-Hall, 1992.
[5] A. Kamalzadeh, "Precision Control of High Speed Ball Screw Drives," 2008.
[6] T. McNier and J. G. Johnson, "Specifying, Selecting, and Applying Linear Ball
Screw Drives," Thomson Industries, Inc, Wood Dale.
[7] D. Simon, "Biogeography-Based Optimization," in IEEE Transactions on
Evolutionary Computation, 2008.
[8] D. Winter, "Energy Generation and Absorption at the Ankle and Knee during Fast,
Natural, and Slow Cadences," Clinical Orthopaedics and Related Research, pp. 147-
154, 1983.
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 17 of 59
Appendix 1: Ballscrew datasheet
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 18 of 59
Appendix 2: Complex friction model equation derivation
Figure A2.1 – Reference bond graph for including complex ballscrew friction model
Derive first state space equation:
�̇�2 = 𝑓2 = 𝑓3 = 𝐺𝑓4 = 𝐺𝑓6 = 𝐺𝑙𝑓7 = 𝐺𝑙𝑓8 =𝐺𝑙
𝐽𝑚𝑝8 (A2.1)
Derive second state space equation:
�̇�8 = 𝑒8 = 𝑒7 − 𝑒9 − 𝑒10 = 𝑙𝑒6 − 𝛼𝑓11 −Φ(𝑓10) = 𝑙(𝑒4 − 𝑒5) − 𝛼𝑓12 −Φ(𝑝8
𝐽𝑚)
= 𝑙(𝐺𝑒3 − 𝑒5) −𝛼
𝑅𝑎𝑒12 −Φ(
𝑝8
𝐽𝑚) = 𝑙(𝐺(𝑒1 − 𝑒2) − 𝑒5) −
𝛼
𝑅𝑎(𝑒11−𝑒13)−Φ(
𝑝8
𝐽𝑚)
= 𝑙(𝐺(𝑀𝑘(𝑡) − 𝐾𝑞2) − 𝑒5) −𝛼
𝑅𝑎(𝛼𝑓9 − 𝑢𝑒14) − Φ(
𝑝8
𝐽𝑚)
= 𝑙(𝐺(𝑀𝑘(𝑡) − 𝐾𝑞2) − 𝑒5) −𝛼
𝑅𝑎(𝛼𝑓8 −
𝑢
𝐶𝑞14) − Φ(
𝑝8
𝐽𝑚)
= 𝑙(𝐺(𝑀𝑘(𝑡) − 𝐾𝑞2) − 𝑒5) −𝛼
𝑅𝑎(𝛼
𝐽𝑚𝑝8 −
𝑢
𝐶𝑞14) − Φ(
𝑝8
𝐽𝑚) (A2.2)
Require 𝑒5 from derivative causality to complete (A2.2):
𝑝5 = 𝑚𝑓5 = 𝑚𝑓6 = 𝑚𝑙𝑓7 = 𝑚𝑙𝑓8 =𝑚𝑙
𝐽𝑚𝑝8 (A2.3)
Taking time derivative of (A2.3):
𝑒5 = �̇�5 =𝑚𝑙
𝐽𝑚�̇�8 (A2.4)
Substituting (A2.4) into (A2.2)
�̇�8 = 𝑙 (𝐺(𝑀𝑘(𝑡) − 𝐾𝑞2) −𝑚𝑙
𝐽𝑚�̇�8) −
𝛼
𝑅𝑎(𝛼
𝐽𝑚𝑝8 −
𝑢
𝐶𝑞14) − Φ(
𝑝8
𝐽𝑚) (A2.5)
𝑀𝐾(𝑡) . .
𝑆𝐸 1
𝐶 : 1 𝐾
1/𝐺 . .
𝑀𝑇𝐹 1
𝐼 : 𝑚
1/𝑙 . . 𝑇𝐹 1
𝐼 : 𝐽𝑚
𝑎 . . 𝐺𝑌 1
𝑢 . . 𝑇𝐹
𝑅 : 𝑅𝑎
𝐶 : 𝐶
𝑅 : Φ𝑓𝑟𝑖𝑐(𝑓)
1
2
3 4
5
6 7
8
9
10
11 12
13 14
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 19 of 59
Solving (A2.5) for �̇�8:
�̇�8 =𝐽𝑚
𝐽𝑚+𝑚𝑙2[𝑙𝐺𝑀𝑘(𝑡) − 𝑙𝐺𝐾𝑞2 −
𝛼2
𝑅𝑎𝐽𝑚𝑝8 +
𝛼𝑢
𝑅𝑎𝐶𝑞14 −Φ(
𝑝8
𝐽𝑚)] (A2.6)
Derive third state space equation:
�̇�14 = 𝑓14 = 𝑢𝑓13 = 𝑢𝑓12 =𝑢
𝑅𝑎𝑒12 =
𝑢
𝑅𝑎(𝑒11 − 𝑒13) =
𝑢
𝑅𝑎(𝛼𝑓9 − 𝑢𝑒14)
=𝑢
𝑅𝑎(𝛼𝑓8 −
𝑢
𝐶𝑞14) =
𝑢
𝑅𝑎(𝛼
𝐽𝑚𝑝8−
𝑢
𝐶𝑞14)
(A2.7)
Change of variables:
𝑞2 = 𝜙𝑘, knee angle
𝑝8 = 𝐽𝑚𝜃𝑚, motor momentum
𝑞14 = 𝑞𝑐, capacitor charge
Taking time derivatives:
�̇�2 = �̇�𝑘, knee angular velocity
�̇�8 = 𝐽𝑚�̈�𝑚, knee inertial force
�̇�14 = 𝑖𝑐, capacitor current
Substitute change of variables to form final set of system equations:
�̇�𝑘 = 𝐺𝑙�̇�𝑚 (A2.8)
�̈�𝑚 =1
𝐽𝑚+𝑚𝑙2[𝑙𝐺𝑀𝑘(𝑡) − 𝑙𝐺𝐾𝜙𝑘 −
𝛼2
𝑅�̇�𝑚 +
𝛼𝑢
𝑅𝐶𝑞𝑐 −Φ(�̇�𝑚)] (A2.9)
𝑖𝑐 =𝛼𝑢
𝑅�̇�𝑚 −
𝑢2
𝑅𝐶𝑞𝑐 (A2.10)
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 20 of 59
Appendix 3: 𝑢-inversion
Starting from the system equations:
�̇�𝑘 = 𝐺𝑙�̇�𝑚 (A3.1)
�̈�𝑚 =1
𝐽𝑚+𝑚𝑙2[𝑙𝐺𝑀𝑘(𝑡) − 𝑙𝐺𝐾𝜙𝑘 −
𝛼2
𝑅𝑎�̇�𝑚 +
𝛼𝑢
𝑅𝑎𝐶𝑞𝑐 −Φ(�̇�𝑚)] (A3.2)
𝑖𝑐 =𝛼𝑢
𝑅𝑎�̇�𝑚 −
𝑢2
𝑅𝑎𝐶𝑞𝑐 (A3.3)
Multiply (A3.3) by 𝑞𝑐:
𝑞𝑐𝑖𝑐 =𝛼𝑢
𝑅𝑎𝑞𝑐�̇�𝑚 −
𝑢2
𝑅𝑎𝐶𝑞𝑐2 (A3.4)
Integrate (A3.4) with respect to time:
∫ 𝑞𝑐𝑖𝑐 𝑑𝜏𝑡
0= ∫
𝛼𝑢
𝑅𝑎𝑞𝑐�̇�𝑚 −
𝑢2
𝑅𝑎𝐶𝑞𝑐2 𝑑𝜏
𝑡
0 (A3.5)
Perform change of variables 𝑞𝑐 = 𝑥3, 𝑖𝑐 = �̇�3:
∫ 𝑥3�̇�3 𝑑𝜏𝑡
0= −
1
𝑅𝑎𝐶∫ (𝑢𝑥3)
2 𝑑𝜏𝑡
0+
𝛼
𝑅𝑎∫ (𝑢𝑥3)�̇�𝑚 𝑑𝜏𝑡
0 (A3.5)
Continue integration:
1
2(𝑥3(𝑡)
2 − 𝑥3(0)2) = −
1
𝑅𝑎𝐶∫ (𝑢𝑥3)
2 𝑑𝜏𝑡
0+
𝛼
𝑅𝑎∫ (𝑢𝑥3)�̇�𝑚 𝑑𝜏𝑡
0 (A3.6)
𝑥3(𝑡)2 = 2 [−
1
𝑅𝑎𝐶∫ (𝑢𝑥3)
2 𝑑𝜏𝑡
0+
𝛼
𝑅𝑎∫ (𝑢𝑥3)�̇�𝑚 𝑑𝜏𝑡
0] + 𝑥3(0)
2 (A3.7)
Solve (A3.2) for 𝑢𝑥3:
𝑢𝑥3 =𝑅𝑎𝐶
𝛼[(𝐽𝑚 +𝑚𝑙2)�̈�𝑚 − 𝑙𝐺𝑀𝑘(𝑡) + 𝑙𝐺𝐾𝜙𝑘 +
𝛼2
𝑅𝑎�̇�𝑚 +Φ(�̇�𝑚)] (A3.8)
Substitution of (A3.8) into (A3.7) gives an expression for 𝑥3(𝑡)2 in terms of values that
are either known or could be taken from reference data. Taking the square root of this
result provides an expression for 𝑥3(𝑡). Finally, dividing (A3.8) by this expression for
𝑥3(𝑡) yields a direct solution for 𝑢. The implementation of these final steps can be
completed numerically within MATLAB and are, therefore, not shown here.
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 21 of 59
Appendix 4: Complex friction model MATLAB code and Simulink®
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 22 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 23 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 24 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 25 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 26 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 27 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 28 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 29 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 30 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 31 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 32 of 59
Appendix 5: Generalized friction model MATLAB code and Simulink®
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 33 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 34 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 35 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 36 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 37 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 38 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 39 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 40 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 41 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 42 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 43 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 44 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 45 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 46 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 47 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 48 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 49 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 50 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 51 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 52 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 53 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 54 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 55 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 56 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 57 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 58 of 59
Ballscrew Efficiency Modeling in a
Crank-Slider Prosthetic Knee Actuator H. Warner
Page 59 of 59