Command Generation For Dynamic Systems1
Command Generation For Dynamic Systems1
Dynamic Systems
William Singhose 1
Warren Seering 2
Copyright 2011
Preface
Many mechanical systems achieve their design objectives by performing movement from an initial configuration or location to a desired one. Planning these movements involves two tasks: 1) specification of a trajectory that the system is commanded to follow, and 2)
design of a control algorithm to ensure that the system follows the desired path. If the system is subjected to significant disturbances, then
the controller will need feedback to compensate for the disturbances.
A vast literature exists on the design of feedback algorithms. Far less
has been written about methods for specifying trajectories. The purpose of this book is to provide the reader with methods for generating
commands that will cause machines to complete desired moves
quickly and accurately.
One might assume that the best trajectory for moving a system from
an initial configuration to any subsequent one would specify that the
system move at its top speed directly from the former to the latter. For
many systems this is not the best approach. Typically, the commanded
position or velocity will be specified as a function of time and will depend on the motion to be achieved, the capacity of the system actuators, and the dynamic response of the system in its environment.
A simple example showing the need to plan a trajectory occurs when
a golfer putts on an undulating green. Expecting the ball to travel in a
straight line to the cup would be naive; thats not what golf balls do.
Good golfers plan both the position and the velocity1 of the ball for its
entire trajectory. The plan takes into account the distance to the hole,
the changing slope of the green, the condition of the grass, and perhaps a strong crosswind. To ensure best performance, the desired trajectories of machines should be determined with the same care.
4/237
Chapter 1
Basic Control System
Elements
Systems with oscillatory dynamics present a challenging class of
control problems. Imagine trying to transfer cargo between ships at
sea using a large crane when waves and wind are causing large disturbances to the ships and dangling payloads. Or, think about trying to
reorient a satellite equipped with huge and very flexible solar panels
that behave like aluminum foil. To control such systems accurately, a
sophisticated and robust control system is indispensable. In the case
of the crane, the current industry standard is a well-trained human operator whose skills have been perfected over time. In the case of satellites, a computer makes control decisions based on various on-board
sensor measurements and information provided by ground-based mission controllers. Then, reaction jets and momentum wheels provide
the appropriate control forces and torques to move the system without
causing damage or inducing large amounts of oscillation.
At the heart of any control problem is a physical system that is acted
upon by control effort. This input induces some type of response, as
shown schematically in Figure 1.1. The engineers that design and work
with the physical plant will have some performance requirements for
the system response. For example, the system may need to move very
quickly from one location to another and then settle to within a few
millimeters of the desired location. Or, the machine may have to pick
up a wide range of payloads and move them through complicated
trajectories.
6/237
7/237
8/237
9/237
10/237
11/237
12/237
13/237
14/237
15/237
16/237
payload is transported to the desired location and settles without residual oscillation. Comparing Figures 1.4 and 1.12, reveals the benefits
of properly generating the reference command. This is the type of effect that the command generator block in Figure 1.8 strives to achieve.
A command generator element was installed on the Georgia Tech
crane in order to help the human operators. Figure 1.13 shows the payload response with this command generator operating, (labeled
Input-Shaped Response). When this command generator aided the
novice operator by properly shaping the commands, the operator was
able to move the payload cleanly through the obstacles and arrive at
the goal without oscillation.
The first suggested use of this technology on cranes was made in the
late 1950s by O.J.M. Smith when he developed Posicast control [120,
121]. However, given the absence of digital controllers at that time, the
method does not appear to have been implemented on a real cranelike structure until Starr reported some excellent results manipulating
suspended payloads in 1985 [124]. Since the inception of this
command-shaping procedure, its lack of robustness to modeling errors and plant variations has been well known [128]. These effects occur in cranes when the payload is hoisted, the payload geometry
changes, the motors exhibit nonlinearity, or the suspension length is
not known with certainty. To address the problem, command-shaping
technology for cranes [20, 33, 43, 48, 78, 92, 110] (and all other machines) has been improved by the development of robust input-shaping methods, which will be described starting in Chapter 7.
17/237
18/237
Chapter 2
Elementary Command
Generation
The introductory chapter demonstrated that the design of the reference command given to a dynamic system can have a significant impact on its performance. The question then arises as to how to generate the optimal command, or at least a very good reference command.
This question cannot be answered until a set of performance specifications is established. These specifications define what the system must
do and how well the tasks must be done. Another requirement for
command generation is a system model. Without knowing how a system responds to commands, there is no way of intelligently generating
an appropriate command function. In general, the more complicated
the system model, the more difficult it is to determine appropriate
commands. Therefore, models used for command generation should
always be as simple as possible and only represent the important dynamic effects. This chapter will examine command generation for very
simple systems. The techniques presented will be limited to elementary command generation methods that only consider system inertia,
viscous friction, acceleration limits, and velocity limits.
20/237
21/237
Suppose that we want the mass to move from one rest location to
another rest location. Furthermore, we want the mass to move quickly.
The faster we move the mass, the larger the force we must provide.
Without a specified limit on the maximum possible force, the solution
is undefined. But, it would take the form of a massive impulse of force
to start the motion, followed immediately by an equally massive negative impulse to bring the mass back to rest. To get a realistic solution,
our dynamic model must contain an actuator limit. Let us assume that
the force is bounded by some value umax:
Integrating twice to obtain the position during the time period of the
command yields:
22/237
23/237
Figure 2.3 shows the velocity and position response of the mass
when subjected to the bang-bang input. Note that even though the
control effort is a bang-bang function that contains discontinuous
jumps, the position response of the system is a smooth parabolic function, called an S-Curve. The curve transitions smoothly from start to
finish and is characterized by zero slope at the beginning and end. Figure 2.4 shows the switch times of the bang-bang command as a function of the desired move distance. The data shown in Figure 2.4 is for
the case when m = 1 and umax = 1. As expected, the command duration, t3, increases with the desired move distance.
24/237
25/237
simply integrate (2.1) with respect to time and set the result equal to
the maximum velocity:
Substituting t2 from (2.10) into (2.11) and solving for tm, we get:
26/237
Substituting (2.10) and (2.12) into (2.13) yields a very simple solution for the time location of t3, the beginning of the deceleration pulse:
The deceleration pulse has the same duration as the positive pulse,
so:
Figure 2.7: Bang-Bang Command for Sliding Mass with Viscous Damping to Ground.
27/237
28/237
29/237
Chapter 3
Using Elementary Commands
on Flexible Systems
The commands designed in the previous chapter were derived for
the dynamics of a simple translational mass without oscillatory dynamics, but with consideration of acceleration and velocity limits. The
desired performance was rapid rest-torest motion. (The commands
were actually the time-optimal commands subject to the dynamic limitations.) The results are very convenient in that they are simple
closed-form expressions.
The temptation is to use these well-known and easily derived commands on a wide range of dynamic systems. Unfortunately, when
commands derived for rigid bodies are used on systems with flexibility, they will usually induce a significant amount of vibration. To
demonstrate this problem, we can evaluate the use of the bang-bang
commands on the system model shown in Figure 3.1. The model consists of two masses connected by a linear spring with a control force
acting on the first mass. This model is the simplest description of a
system that has both rigid-body translation and flexible deformation.
The equations of motion for the system are:
where xi is the position of the ith mass, mi are the mass values, and k
is the spring constant. In the examples that follow, the spring constant
31/237
is set to 1 and each of the mass values is set equal to 0.5, so that the
total mass is 1.
32/237
33/237
Figure 3.5: Bang-Bang Induced Residual Vibration Amplitude vs. Move Distance.
To further demonstrate the dependence on move distance, Figure
3.4 shows the position response of the second mass, x2, for move distances ranging from 2 units to 40 units. Note that the amount of residual vibration depends greatly on how far the system is moved. To show
this explicitly, Figure 3.5 plots the amplitude of residual vibration as a
function of the move distance. The vibration amplitude does not have
a linear dependence on the move distance as one might expect. Furthermore, the vibration is actually zero for special cases such as move
34/237
distances of 10 and 40 units. The results in Figures 3.3 - 3.5 demonstrate that bang-bang commands designed for a rigid system will usually not work well for a system that has flexibility.
35/237
36/237
37/237
comparable with the changes that depend on move distance and maximum velocity shown in Figures 3.5 and 3.7.
Figure 3.9: Residual Vibration Amplitude vs. the Suspension Cable Length of the SRTC Crane.
38/237
Center (SRTC) was measured [92]. The bridge can travel back and
forth 85 ft., the trolley can travel 43 ft. side to side, and the vertical
hook can hoist 29 ft. up and down. The crane was repeatedly moved a
horizontal distance of 8 feet using a bangcoast- bang command. For
each experiment, the payload height was varied and the residual oscillation amplitude was recorded. Figure 3.9 shows the amplitude of residual vibration as a function of the suspension cable length. As expected, the amplitude varies with the suspension length and has a dependence similar to portions of the curves shown in Figure 3.7.
Given that commands designed for rigid systems can induce large
amounts of problematic vibration, these commands are often not acceptable to use. Even if the effects of the commands are well understood, the results are usually complex functions of both the motion
parameters and the system parameters. Therefore, compensating for
the induced vibration by changing the motion parameters is not realistic. Designing a feedback controller to address the vibration problem
can also be a challenging task because the controller must accommodate the widely varying dynamic response. The most sensible approach
is to properly design the command profiles, as these are ultimately the
source of motioninduced vibration.
Chapter 4
Command Smoothing
The previous chapters demonstrated that bang-bang and pulse commands can induce unwanted vibration in flexible systems. Other commands with rapid transitions, such as step functions, may cause similar vibration problems. The vibration is induced by the rapid change in
force that occurs at each step change in the command profiles. Therefore, the idea of using smooth commands naturally arises because they
will tend to induce less vibration. Virtually all smooth commands
have a finite first derivative. Smooth commands do not have instantaneous transitions like the step functions that form pulses. The relative smoothness of a command is increased if higher order derivatives
are also finite. An example of a smoothed velocity command for a
crane was shown in Figure 1.6.
The smoothness of a command profile depends on the domain used
to describe the command. For example, a bang-bang force command
is equivalent to a triangular velocity command, which in turn is equivalent to a smooth SCurve in position. Refer to Figure 2.3 to see this
equivalence. Therefore, when analyzing the smoothness of a command
the domain must be clearly stated. A command that is smooth in position may induce abrupt changes in force.
Although smooth commands will often lessen vibration problems,
they will also tend to slow the system down. The trade-off between vibration reduction and operating speed is a fundamental issue that
continually arises. Techniques presented later in this book are designed to maximize the benefits from this trade-off by obtaining large
reductions in vibration, while slowing the system down only slightly.
40/237
41/237
42/237
43/237
specifically target any known vibration frequencies. To show this effect, Figure 4.5 compares the frequency content of the original and
smoothed bang-coast-bang commands for a desired move distance of
10 units. As the command is smoothed and lengthened with longer
ramps, the frequency content decreases at high frequencies. However,
the frequency content at low frequencies is not greatly effected by the
smoothing. Therefore, in order to suppress low frequency vibration,
the commands must be made very long and, consequently, the system
will move slowly.
44/237
Figure 4.6: Fast Fourier Transform Magnitude as a Function of Ramp Time and Move Distance.
45/237
Figure 4.7 shows the percentage overshoot of an undamped secondorder system as a function of its natural frequency when the system is
driven by an S-Curve with a one-second rise time. The system natural
frequencies at which there will be zero residual vibration occur at multiples of 2 Hz for the case shown. That is, the S-Curve rise time is twice
the duration of the first vibration mode that it can suppress. Furthermore, if the system frequency is above 6 Hz, then there is essentially
no overshoot.
46/237
47/237
Using the well-known pendulum relationship between the pendulum length, L, the gravitational constant, g, and the oscillation frequency, we know that the period of pendulum oscillation is:
Recall that if the rise time of an S-Curve is twice that of the system
oscillation period, then there should be no residual vibration as a result of the move. This condition is represented by:
48/237
Using this formula, we can predict that a 4-second S-Curve will cancel the oscillation of a pendulum whose length is 994mm. A series of
experiments was performed using the 4-second S-Curve to move payloads with various suspension lengths. The amplitude of residual vibration induced by the S-Curve command, as a function of the suspension length, is shown in Figure 4.11. The S-Curve does cancel the oscillation near its target length of approximately 1m. However, as the suspension length increases, the residual vibration also increases. Furthermore, as the suspension length decreases from 1m, the residual
oscillation also increases to approximately 30mm peak-to-peak. Additional decreases in the suspension length cause the vibration to decrease back towards zero as the pendulum frequency approaches the
second frequency that the S-Curve can cancel (1.0 Hz). Similar
49/237
50/237
While smooth commands can move systems with low levels of vibration, they generally cause the system to have a sluggish response. The
command shaping methods in the following chapters utilize knowledge of the flexible dynamics to maximize effectiveness at reducing vibration, while at the same time moving systems rapidly.
Chapter 5
Impulse Commands for
Vibration Reduction
The preceding chapters have demonstrated that the shape of the reference command going into a flexible system can have a significant effect on the system performance. A well-versed engineer will need to
take this realization a step further and actually design command profiles that produce a desired response. The primary performance requirement is often rapid motion with low levels of vibration. This
chapter will introduce techniques for designing commands that suppress unwanted vibration at specific frequencies. The techniques are
based on the assumption that a good model of the plant dynamics exists. This assumption is not always the case in practice, so subsequent
chapters will present methods to address cases in which accurate system models are not available.
As a first step to understanding how to generate commands that
move flexible systems without vibration, it is helpful to start with the
simplest such command. A fundamental building block for all commands is an impulse. This theoretical command is often a good approximation of a short burst of force such as that from a hammer
blow, or from momentarily turning an actuator full on. Applying an
impulse, A1, to a flexible system will cause it to vibrate. The response
of an underdamped system to such an impulse is shown in the top part
of Figure 5.1. If a second impulse, A2, is applied at a later time, as
shown in the middle of Figure 5.1 (Figure 5.1b), then some of the vibration induced by the first impulse may be cancelled. This concept is
demonstrated at the bottom of Figure 5.1. Impulse A1 induces the
52/237
vibration indicated by the dashed line, while A2 induces the dotted response. Combining the two responses using superposition results in
zero residual vibration. The second impulse must be applied at the
correct time and must have the appropriate magnitude for complete
cancellation. Note that this two-impulse sequence is analogous to the
two-pulse crane command that was shown in Figure 1.12.
To derive the amplitudes and time locations of the impulses shown
in Figure 5.1, a mathematical description of the residual vibration that
results from a series of impulses must be utilized. If an underdamped,
second-order system has an undamped natural frequency of n and a
damping ratio of , then the residual vibration that results from a sequence of impulses can be described by [14, 94, 120]:
53/237
54/237
where,
and
Note that (5.1) is expressed in a nondimensional form. It is generated by taking the amplitude of residual vibration induced by an impulse series and then dividing by the vibration amplitude caused by a
single, unity-magnitude impulse. So, if V is calculated to be 0.05 when
the impulses are entered into (5.1), then the impulses will cause a residual vibration whose amplitude is only 5% of the amplitude that
would result from the application of a single unitymagnitude impulse.
55/237
The impulses could satisfy (5.5) by taking on very large positive and
negative values. These large impulses would saturate the actuators.
One way to obtain a bounded solution is to limit the impulse amplitudes to positive values:
56/237
impulse time locations (t1, t2). Without loss of generality, we can set
the time location of the first impulse equal to zero:
The problem is now reduced to finding three unknowns (A1, A2, t2).
In order for (5.1) to equal zero, the expressions in (5.2) and (5.3) must
both equal zero independently because they are each squared in (5.1).
Therefore, the impulses must satisfy:
Substituting (5.7) into (5.8) and (5.9) simplifies the equations to:
In other words:
57/237
The impulse time locations can now be described very simply; the
first impulse is at time zero and the second impulse is located at half
the period of vibration. This result can easily be guessed by examining
Figure 5.1.
For this simple two-impulse case, the amplitude constraint given in
(5.5) reduces to:
58/237
where:
The sequence of two impulses that leads to zero vibration can now
be stated in matrix form as:
59/237
vector is set equal to the amplitude of the applied impulse. The angle,
, at which the vector is plotted is:
60/237
61/237
62/237
and loop it around a shoe. Hold on to the end of the belt so that the
shoe dangles below your hand. This situation is shown on the left side
of Figure 5.5. Make sure that the shoe is hanging motionless. Then, using a quick (impulsive) motion, move your hand to the side, from
point A to C, as shown in the figure. The shoe will lag behind the motion of your hand, but it will soon catch up to your hand and swing
past. This motion is indicated by the arc labeled 2 in the figure.
When the shoe reaches the extreme point in its arc, after one half period of oscillation, it will briefly come to rest. At this point, quickly move
your hand sideways, from point C to B. This motion will move your
hand over the top of the shoe and will cancel the oscillation of the beltand-shoe system. You will have moved a very flexible system from
point A to B with minimal residual vibration.
1
This problem statement and solution are similar to one first published by O.J.M. Smith in 1957 [121].
Chapter 6
Real-Time Generation of
Zero-Vibration Commands
Most real systems cannot be moved around usefully with impulses,
so the properties of the zero-vibration impulse sequence given in
(5.20) must be transferred to a usable command. This can be done by
simply convolving the impulse sequence with any desired command.
The convolution product is then used as the reference command for
the system. If the impulse sequence, also known as an input shaper,
causes no vibration, then the convolution product will also cause no
vibration [9, 94].
This command generation process, called input shaping, is demonstrated in Figure 6.1 using a 2-second pulse as the initial command.
Note that the convolution product in this case is a two-pulse command, similar to the one shown in Figure 1.12 that moved the crane
with no residual vibration. For the case shown in Figure 6.1, the
shaper duration, , is longer than the initial command, but in most
cases the impulse sequence will be much shorter than the baseline
command profile. This is especially true when the system is moving
through a complex trajectory and the period of system vibration is
small compared to the duration of the move. When this is the case, the
shaped command will form a continuous function, as shown in Figure
6.2.
Convolving a two-impulse sequence with a continuous function is
very easy. First, scale the continuous function by the amplitude of the
first impulse. Next, form a secondary function by scaling the original
function by the amplitude of the second impulse and shift it to the
64/237
time location of the second impulse, as shown in Figure 6.2. There are
now two scaled replicas of the original function, one of which is shifted
in time. The final step is to add the two functions together. The solid
line in Figure 6.2 shows the convolution product that results from
summing the two scaled replicas of the original function.
65/237
In his Ph.D. thesis, Singer noted that his input shapers had an infinite number of zeros and that the Fourier transform of the input
shapers for undamped systems were exactly zero at the natural frequency of the system (pg. 63)[93]. Bhat and Miu stated the more general case for damped systems when they wrote [9]:
. . . the necessary and sufficient condition for zero residual vibration is that the Laplace transform of the time
bounded control input have zero component at the system poles.
To rigorously demonstrate the vibration-canceling phenomenon, we
can transfer the input shaping process into the Laplace domain. The
key idea is to establish that the Laplace transform of the system response to the shaped input does not have any frequency content at the
poles of the flexible system. If this is the case, then the shaped command cannot cause the system to vibrate; it cannot inject energy into
the flexible modes.
If we call the initial command f(t), the input shaper i(t), and the
shaped command c(t), then the input-shaping process can be described as:
where the capitalized functions of s = + j are the Laplace transforms of the corresponding functions of time. The key result of the
66/237
Substituting (6.4) and (6.5) into (6.3) and evaluating the expression
when s = + j yields:
In order for I(s) to equal zero, the exponential term on the right side
must equal -1. To see how this can occur, note that the exponential
term is a complex number that can be written as a real component
multiplied by an imaginary component:
This exponential term will equal -1 when the first component on the
right equals 1 and the component with the imaginary term equals -1:
67/237
Combining the results given in (6.10) and (6.12) produces the conditions under which I(s) will equal zero:
68/237
where G(s) is the system transfer function. Given that C (s) is zero at
the flexible poles, then Y (s) must also be zero at the system poles. This
means that the response has no energy at the flexible poles. The system will not vibrate in response to the shaped command. If the system
has multiple modes, then the argument still holds provided that the
input shaper transfer function, I(s), is zero at every pole of the system
transfer function, G(s). Design of multi-mode input shapers is addressed in Chapter 9.
69/237
Many motion control boards and DSP chips have built-in algorithms
for performing the real-time convolution that is necessary for input
shaping. If these features are not available, then a very simple algorithm can be added to the control system. The algorithm starts by
creating a buffer for the command - a vector variable of a finite length.
This buffer is used to store the command values for each time step.
For example, the first value in the buffer would be the shaped command at the first time instance; the value for the nth time step would
be stored in the nth buffer location. A graphical representation of such
a buffer is shown in the upper right-hand corner of Figure 6.4. The
upper left-hand portion of the figure shows the unshaped command at
time step 1.
70/237
71/237
72/237
73/237
74/237
This is true except for the special case when F(s) is infinite at the
value of s under consideration.
Chapter 7
Robust Commands
The previous chapter introduced the concept of shaping the reference command for vibration reduction. The process was demonstrated
using a shaper that contained two impulses. If the initial reference
command is a step input, then the input shaping process would proceed as shown in Figure 7.1. The second step in the shaped staircase
command is intended to cancel the vibration induced by the first step
in the command. Complete vibration cancellation only occurs if the
second step occurs at exactly the right time and has the correct amplitude relative to the first step. Stated in terms of the input shaper, the
amplitudes and time locations of the impulses must be calculated with
exact knowledge of the vibration parameters (n and ).
If the shaped command was issued to a system that was modeled
perfectly, then the system would respond without residual vibration.
This is shown in Figure 7.2 for the case of an undamped oscillator
whose frequency is 1 Hz. The zero-vibration (ZV) shaper for these
parameters can be obtained by substituting n = 2 (1 Hz) and = 0
into (5.20). For this case, the equation yields:
If there are errors in the modeling parameter values (and there always are), then the input shaping process will not result in zero vibration. This effect is demonstrated in Figure 7.3, which shows the response to the shaped command when the model is perfect and when
76/237
the actual system frequency is 10% smaller than expected (0.9 Hz). As
the plot shows, there can be a noticeable amount of vibration for this
relatively small modeling error. This lack of robustness was a major
stumbling block for the command-shaping methods developed in the
1950s [23, 120, 128].
77/237
78/237
This shaper provides perfect vibration cancellation of the 0.9 Hz oscillation. Unfortunately, we will never know the system parameters
perfectly, so we cannot assume that redesigning the input shaper is always an option. Furthermore, the parameters are likely to change
somewhat over time or during the motion of the physical plant. What
79/237
is needed is a robust input shaper that works well even when there are
errors in the system model.
80/237
81/237
Enforcing this constraint has the effect of keeping the vibration near
zero as the actual frequency starts to deviate from the modeling frequency. The resulting Zero Vibration and Derivative (ZVD) shaper is
given by:
82/237
Note that the ZVD shaper has a duration of one vibration period;
this is exactly twice the duration of the ZV shaper. However, for this
small increase in rise time, a substantial amount of robustness is obtained, as shown by the sensitivity curves in Figure 7.8.
Robust shapers are used when there is a fair amount of uncertainty
in the modeling parameters. In these cases, the actual system will almost certainly not coincide with the modeling parameters. Therefore,
forcing the command to produce exactly zero vibration at the modeling parameters is not a particularly useful design constraint. Using
this realization, input shapers with even more robustness can be obtained, without incurring an additional rise-time penalty. The key is to
relax the constraint of zero vibration at the modeled natural frequency. Rather than force the vibration to zero, simply constrain it below some tolerable level. The sensitivity curve for such an Extra-Insensitive (EI) input shaper is shown in Figure 7.8. For undamped systems the EI shaper is given by [113, 114]:
83/237
84/237
85/237
rarely hoisted all the way to the ceiling, so oscillation control for very
short cable lengths was not required.
The input shaping control system was experimentally evaluated as a
function of the suspension cable length. Figure 7.10 shows the experimentally measured residual vibration. This percentage vibration was
computed by taking the vibration amplitude that resulted with the input shaping control enabled and dividing by the vibration amplitude
from an identical move with the input shaping disabled (normal operation). The data indicates that the robust shaper is very successful at
reducing the vibration over the entire useful workspace of the crane.
Chapter 8
Extra-Robust Input Shapers
Chapter 7 demonstrated that command shaping can be made robust
to uncertainty in the system parameters. This robustness allows input
shaping to work well on many real systems, such as those whose parameters vary over time or change with configuration. Command shaping can also yield good performance on moderately nonlinear systems.
The cost of the robustness is a small increase in the system rise time.
This rise time increase can be directly correlated with the duration of
the input shaper.
In cases where the system parameters are very uncertain, or are expected to change substantially during normal operation, the control
system may require greater robustness than an EI shaper provides.
Consider a robot arm whose dynamic properties change significantly
when it picks up a payload. Under such circumstances, the inertia of
the system increases, and the oscillation frequency decreases. If the
desired application requires an extra-robust shaper, then several options are available. However, increases in robustness will require some
increase in the shaper duration, and consequently the rise time will
increase.
87/237
88/237
89/237
where,
90/237
The five equations for the two-hump EI shaper (8.1, 8.2, 8.4-8.8)
contain five unknowns (A1,A2,A3,A4, ?) and one design parameter,
Vtol. We can solve for the input shaper amplitudes as a function of V
tol[111]. Combining (8.1), (8.2), and (8.8) yields:
and
91/237
where,
92/237
The multi-hump sensitivity curve idea can be extended to a threehump EI shaper by assuming the shape of the sensitivity curve, choosing the form and duration of the shaper, and establishing constraint
equations based on the sensitivity curve. The derivation will be omitted because it is similar to that of the two-hump EI shaper. The
undamped, three-hump EI shaper containing 5 impulses and having a
duration of two vibration periods is [111]:
93/237
Figure 8.4 compares the three-hump EI shaper to the zero-derivative shaper formed by setting the third derivative equal to zero. This
ZVDDD shaper also has a duration of two cycles of vibration. When
Vtol = 5%, the three-hump EI shaper has 54% more robustness than
the ZVDDD shaper.
The multi-hump EI design procedure can be used for damped systems. Three modifications to the above process must be performed.
First, the damped vibration equation and the derivative of the damped
vibration equation must be used in place of the undamped equations
in (8.4) and (8.5). Second, the assumption of a symmetrical input
shaper must be discarded. These discarded equations are replaced by
constraints describing the sensitivity curve on both sides of the modeling frequency. The above undamped procedure only constrained one
half of the sensitivity curve, because the symmetry of the input shaper
ensured symmetry of the sensitivity curve. Third, the set of constraint
equations must be solved numerically [111].
The amplitudes and time locations of the two-hump EI (Vtol = 5%)
shaper and the three-hump EI (Vtol = 5%) shaper are given in Table
8.1. The curve fits for the two-hump EI shaper have maximum errors
in the impulse times and amplitudes of less than 0.5% over the range
0 0.3. The curve fits for the three-hump EI shaper are accurate to
within 0.4% over the range 0 0.2.
94/237
95/237
96/237
97/237
98/237
99/237
100/237
101/237
input shaper in Figure 8.10. The gray areas are desired regions for the
filter frequency response. Each type of filter has some desired passband, but the input shaper does not.
The type of traditional FIR filter most closely related to input shaping is the bandstop filter, or notch filter, shown in Figure 8.10d.
However, these filters are designed so that frequencies outside of the
stop band are passed with only minor attenuation. Input shaping has
no such performance requirement. Therefore, the set of performance
specifications for input shaping is less extensive than for traditional
filtering. In fact, as shown in previous chapters, many input shapers
do not have a range of stop frequencies, as shown in Figure 8.10f. Instead, limits on the frequency response amplitude are applied at only a
single frequency, or a set of individual frequencies. As a result of the
simplicity of the performance specifications, many types of input
shapers have been determined in closed-form, whereas closed-form
solutions of traditional FIR filters are not available.
102/237
103/237
In addition to the fundamental difference of pass band specifications, input shaping has certain characteristics that differ from the
general characteristics of traditional FIR filtering. Input shaping techniques can readily accommodate damped frequencies because mechanical systems always have some damping. On the other hand, traditional filtering methods are often based on frequency domain techniques that assume undamped dynamics. The number of filter coefficients is generally chosen with filtering, but not with input shaping.
Finally, the duration of an input shaper is almost always minimized.
On the other hand, filters are usually designed by choosing a filter duration and then minimizing the stop-band amplitude or the pass-band
ripple.
To summarize, input shaping is advantageous when compared to
traditional FIR filtering because it has a low number of impulses, short
duration (filter length), and large robustness to modeling errors (stop
band width).
104/237
105/237
signal was shaped by a two-hump EI shaper, the amplitude of the system response at the resonance frequency was sharply reduced. The
two-hump notch in the frequency response near 2 Hz is readily apparent in Figure 8.13.
106/237
Shaper
TwoHumpEI
M0
M1
M2
M3
t2
0.49890
0.16270
-0.54262
6.1618
t3
0.99748
0.18382
-1.58270
8.17120
t4
1.49920
-0.09297
-0.28338
1.85710
A1
0.16054
0.76699
2.26560
-1.2275
A2
0.33911
0.45081
-2.58080
1.7365
A3
0.34089
-0.61533
-0.68765
0.4226
A4
0.15997
-0.60246
1.00280
-0.931
108/237
ThreeHumpEI
t2
0.49974
0.23834
0.44559
12.472
t3
0.99849
0.29808
-2.36460
23.399
t4
1.49870
0.10306
-2.01390
17.032
t5
1.99960
-0.28231
0.61536
5.4045
A1
0.11275
0.76632
3.29160
-1.4438
A2
0.23698
0.61164
-2.57850
4.8522
A3
0.30008
-0.19062
-2.14560
0.1374
A4
0.23775
-0.73297
0.46885
-2.086
A5
0.11244
-0.45439
0.96382
-1.460
Chapter 9
Multi-Mode Input Shaping
Every real system has several flexible modes. Fortunately, the amplitude of vibration associated with higher frequency modes is inconsequential most of the time. The largest contribution to vibration amplitude arises from the primary flexible mode, which is usually the
mode with the lowest frequency. However, when systems are pushed
to their performance limit, additional modes can be excited to a level
that degrades performance. Furthermore, some systems are not naturally dominated by a single mode, rather two or three modes play important roles in the dynamic response. When multiple modes make
significant contributions to the dynamic response, command shaping
can be very useful.
110/237
111/237
112/237
113/237
The sensitivity curves for the two single-mode shapers given in (9.1)
and (9.2) and the convolved two-mode shaper are shown in Figure 9.3.
The convolved shaper is very robust to modeling errors or variations
of the mode at 2.5 Hz. This large insensitivity occurs because the
shaper designed to eliminate 1 Hz vibration also suppresses 3 Hz vibration. The combined effect allows the second mode to range
between 2.1 Hz and 3.3 Hz without exceeding a 5% residual vibration
level.
114/237
Figure 9.3 compares the sensitivity curves of the simultaneous solution in (9.5) and the convolved solution in (9.3). While the robustness
to errors in the low mode are approximately the same, the convolved
shaper is much more robust to modeling errors of the second mode.
On the other hand, the direct solution is 18.4% shorter in duration and
contains four fewer impulses. Having fewer impulses means that the
real-time execution of the shaping convolution will be faster. Having a
shorter input shaper duration means that the system rise time will be
faster. Figure 9.4 compares the time duration of the convolved and
simultaneous two-mode ZVD shapers as a function of mode ratio,
2/1. The convolved ZVD shaper is up to 33% longer than the
115/237
simultaneous ZVD shaper, and it averages 12% longer for the range
shown in the figure.
116/237
117/237
where,
118/237
119/237
120/237
high mode (1.72 Hz). The resulting input shaper contains five
impulses:
121/237
122/237
Chapter 10
Shaping Operator Commands
The most common and useful position for an input shaper is outside
of any feedback loops, as was shown in the generic control diagram of
Figure 1.8. However, it is possible to insert an input shaper inside a
feedback loop, as shown in Figure 10.1. In many cases, this configuration does not provide advantages, and can create significant problems.
The major disadvantage is that system stability can be degraded by the
partial time delays caused by inserting the shaper into the feedback
loop. However, there are a few applications where placing a shaper inside of a feedback loop can be advantageous 1) when the feedback controller is a human operating a flexible machine and 2) when the system has hard nonlinearities. This chapter will examine the case when
human crane operators utilize input shaping.
124/237
125/237
126/237
input shaping was 51 seconds. The average times for the unshaped
runs was 135 seconds. Input shaping reduced the completion time by
more than 60%.
Operator Learning
Although input shaping cancels out payload swing, skilled operators
can also employ manual swing control techniques to reduce payload
sway. On the other hand, most novice crane operators rely on a passive approach for swing cancellation. They limit themselves to slow and
simple movements in an attempt to avoid large oscillations. When
large oscillations do arise, the operators usually elect to take less challenging paths to the target, or they make numerous small motions to
proceed slowly through a dangerous region. This tactic works, but results in long task completion times. The large swings can be actively
damped if the human operator can appropriately manipulate the crane
motions. Acquiring the skill to achieve an effective manual swing control requires a great deal of practice. A study was conducted to determine the effect of crane operator learning with and without input shaping [35]. Some operators drove the crane only 3 times, whereas others
drove the crane up to 9 different times. The average testing frequency
was 2.2 trials per week.
127/237
128/237
enabled. Even though the operator became more skilled over time, the
performance without input shaping was still considerably poorer than
when input shaping was utilized. Figure 10.5 shows the progression of
completion times without input shaping for all of the operators. There
is a clear downward trend in completion time as the number of trials
increases. Figure 10.6 shows the corresponding information when input shaping was enabled. In this case, the operator learning does not
have a big effect on task completion time. However, the completion
times with shaping are considerably shorter than without input shaping, even after substantial operator learning on the unshaped crane.
The results indicate that significant learning is not needed when input
shaping is utilized. With input shaping enabled, crane operators immediately become safer and more efficient in their manipulation tasks.
129/237
130/237
The human operator drove the crane with and without input shaping,
and with 4.5 kg and 13.6 kg payloads.
131/237
132/237
133/237
134/237
Obstacle Avoidance
Figure 10.12 shows the average completion time for each trial in the
obstacle avoidance tests. The bars for each trial represent the standard
deviation. The data clearly show that the completion times with input
shaping are substantially lower than the completion times without input shaping. The downward trends indicate that the operators were
learning to control the double-pendulum oscillations. However, the
downward trend in completion times is not as apparent for operation
with shaping enabled. This is because the operators could drive the
crane with shaping near its theoretical limit during their first trial.
The average number of button pushes for each trial is shown in Figure 10.13. For both shaped and unshaped operations, the number of
button pushes decreased as the operators learned to control the
double-pendulum crane. The button pushes for the unshaped case
levels off at about 30 pushes, while the SI shaped case levels off at 4
135/237
button pushes. This clearly shows that the amount of effort required of
the operator is much less when using the input shaper.
136/237
137/237
138/237
139/237
Chapter 11
Negative Input Shapers
In order to maximize throughput and productivity, machines must
be moved with as much force as their actuators are designed to produce. To generate shaped commands that drive actuators near their
limits, input shapers must contain negative impulses. This may seem
counterintuitive because negative impulses in an input shaper have
the effect of decreasing the command value - possibly even driving the
system in the opposite direction. However, using negative impulses allows larger positive impulses to be used. The net result is a shaped
command that is more aggressive than one generated by using only
positive impulses in the shaper.
To demonstrate this effect, consider the shaped commands shown
in Figure 11.1. The top of the figure shows a step input shaped with a
positive ZV shaper. The rise time of the command equals the duration
of the shaper, 1 = T/2. Figure 11.1b shows the step input being shaped
by a ZV input shaper that contains a small negative impulse. To compensate for the negative impulse, the two positive impulses must increase in amplitude so that the impulse amplitudes sum to 1. (Recall
the amplitude summation requirement in (5.5).) In order to cancel the
vibration of the first (positive) and second (negative) impulses, the
third (positive) impulse must be brought closer in time to the first impulse. The net result of these adjustments is that the duration, 2, of
the negative shaper shown in Figure 11.1b is less than that of the positive ZV shaper shown in Figure 11.1a. Consequently, the shaped command rise time is faster.
Figure 11.1c shows the step input being shaped with a ZV shaper
that contains a negative impulse that has the same magnitude as the
141/237
positive impulses. All three of the impulse magnitudes must equal one
(1, -1, 1) so that the amplitude sum equals one. This shaper results in
an even faster shaped command than the shaper shown in Figure
11.1b. Note that the shaped command has an initial value that is the
same as the original step input. As the magnitude of the negative impulse increases, the shaper duration decreases. However, Figure 11.1d
shows that using a negative impulse that is too large will cause the
magnitude of the shaped command to exceed the magnitude of the original command. This can lead to actuator saturation and poor vibration suppression.
142/237
143/237
144/237
Therefore, the UM-ZV shaper for undamped systems can be described as:
145/237
curve fits to solutions obtained with a numerical optimization program were generated. The curve fits to t2 and t3 are shown in Table
11.1 as a function of the damping ratio. The curve fits give time locations within 0.5% of their actual values over the range 0 0.3.
Table 11.1: UM-ZV Shaper for Damped Systems
Table 11.2: UM-ZVD Shapers for Damped Systems
146/237
147/237
148/237
149/237
150/237
151/237
The first option is the easiest and most appropriate when the
throughput of the system is not a high priority. Option 2 is the highest
performance solution because an input shaper can be customized to a
specific system with a minimal time penalty. Unfortunately, the lookup method provided by the curve-fit tables must be abandoned. Options 3 and 4 can still utilize the tables, however, there can be large increases in the computational requirements during run-time and the
rise time will suffer.
Option 2, the process of restricting only a few problematic high frequencies, is best demonstrated by returning to the flexible beam example. The UM-EI shaper greatly reduced the 2 Hz mode. However,
assume that the 8 Hz mode causes the residual vibration to exceed the
tolerable amplitude threshold. This high-mode component of the vibration can be reduced by adding an equation to the set of inputshaper design constraints to limit the vibration at 8 Hz. This approach
is illustrated by the sensitivity curves in Figure 11.5. The sensitivity
curve fro the UM-EI shaper shows that the 2 Hz mode will be robustly
suppressed. However, the 8 Hz mode is amplified by the shaping action. By adding one constraint equation that limits the 8 Hz vibration
to a low level, a new shaper is obtained that has the sensitivity curve
shown by the dotted line in Figure 11.5. When the shaper with highmode limitation was implemented on the flexible beam, the 8 Hz
mode was virtually eliminated, as shown in Figure 11.6.
If more than one high mode is problematic, then simply add a constraint equation for each mode of vibration and solve the augmented
set of constraints. For each mode that is constrained, a small amount
of time will be added to the shaper duration. However, a negative
shaper with high-mode constraints will continue to be shorter than a
positive shaper for the low mode until constraints have been placed on
a large number of high modes.
152/237
153/237
154/237
could be utilized. This would have much the same effect as a low-pass
filter and may be simpler to implement. However, the system response
will be sluggish compared to when input-shaping is used. More intelligently designed smooth commands target only the problematic frequency and act as a notch filter [2, 19, 60, 61, 127, 145]. This allows the
system to move faster. However, the procedures for designing such
smooth commands are often computationally intensive. Furthermore,
it may be necessary to calculate a command for each unique motion
that the system must perform.
155/237
in move. The vertical scale for the shaped response on the right side
of the figure has been shifted upwards so that the residual vibration in
each case is clearly visible. Even though the shaped response has a
longer rise time, the operational speed of the machine is increased because much less time is spent waiting for vibration to dissipate.
156/237
Ai
ti
M0
M1
M2
M3
t1
-1
t2
0.16724
0.27242
0.20345
t3
0.33323
0.00533
0.17914
0.20125
Ai
ti
M0
M1
M2
M3
t1
-1
t2
0.08945
0.28411
0.23013
0.16401
t3
0.36613
-0.08833
0.24048
0.17001
-1
t4
0.64277
0.29103
0.23262
0.43784
t5
0.73228
0.00992
0.49385
0.38633
Shaper
Ai
ti
M0
M1
M2
M3
UM-EI
1
-1
1
-1
1
t1
t2
t3
t4
t5
0
0.09374
0.36798
0.64256
0.73664
0
0.31903
-0.05894
0.28595
0.00162
0
0.13582
0.13641
0.26334
0.52749
0
0.6
0.6
0.2
0.1
TwoHump
UM-EI
1
-1
1
-1
1
-1
1
t1
t2
t3
t4
t5
t6
t7
0
0.05970
0.40067
0.59292
0.78516
1.12640
1.18640
0
0.31360
-0.08570
0.38625
-0.08828
0.20919
-0.02993
0
0.31759
0.14685
0.34296
0.54174
0.44217
0.79859
0
1.58
1.6
1.2
1.38
0.3
0.1
ThreeHump
UM-EI
1
-1
1
-1
1
-1
1
-1
1
t1
t2
t3
t4
t5
t6
t7
t8
t9
0
0.04275
0.42418
0.56353
0.83047
1.09760
1.23710
1.61890
1.66190
0
0.31845
-0.05725
0.48068
-0.09785
0.38825
-0.08706
0.09964
-0.09711
0
0.46272
0.04989
0.38047
0.34048
0.35290
0.81706
0.42780
0.80045
0
3.3
3.9
4.2
4.4
2.9
2.8
1.31
1.0
Chapter 12
Specified-Negative-Amplitude
and Duration Shapers
Given the tradeoffs that exist with negative input shapers, it is desirable to develop complimentary alternatives to unity magnitude (UM)
shapers. For example, it is useful to have an input shaper whose negative impulse amplitudes can be set to any value. This allows a designer
to precisely trade off rise time and high-mode excitation. Furthermore, it can also be useful to specify the duration of an input shaper.
This allows the designer to set the rise time to any desired value. This
chapter describes how to accomplish both of these goals using negative input shapers.
12.1 Specified-Negative-Amplitude
Shapers
A technique that specifies the amplitude of negative impulses can
produce shapers that span the performance gap between positive
shapers and UM shapers. Such shapers are shown schematically in
Figure 12.1. The key feature of specifiednegative- amplitude (SNA)
shapers is that the magnitude of the negative impulses, b, can be set to
any value. When 0 < b < 1, these shapers have longer durations than
UM shapers. If b > 1, then SNA shapers are faster than UM shapers,
but they will often cause actuator saturation. So the most useful range
is 0 < b < 1.
For undamped systems, the SNA-ZV shaper is given in closed form
by [104]:
161/237
162/237
163/237
164/237
The middle impulse cannot be smaller than c 0.5. At this value, the
shaper is equivalent to the positive ZVD shaper. This result can be
seen in Figure 12.4, where the impulse time locations are plotted as a
function of the middle impulse amplitude when b = 1. The curve for t5
(the shaper duration) is the same curve shown in Figure 12.3 for the
case of b = 1. The two negative impulses located at t2 and t4 approach
the positive impulses at t1 = 0 and t5 as c decreases. The positive and
negative impulses eventually coincide when c = 0.5 and form the
three-impulse positive ZVD shaper. Also noted on the figure is the case
(c = 1) when the shaper is equivalent to the UM-ZVD shaper.
165/237
166/237
167/237
Note that the SNA shaper provides a 22% time savings and the UM
shaper provides a 33% time savings, relative to the positive ZV shaper.
168/237
approximately five times the pendulum frequency. Given that its contribution to the overall vibratory response is likely to be small, this
high mode was not taken into account when designing the input
shapers in (12.4)-(12.6). The payload response using the three shapers
is shown in Figure 12.8. The unshaped response is not shown because
it would be off the scale (22 in. peak-to-peak). All three shapers eliminate most of the residual vibration of the pendulum mode.
The ZV shaper does not excite the higher frequencies of the robotic
arm and moves the hanging pendulum with a minimal amount of residual vibration. On the other hand, the UM excites the higher mode
of the robot and this shows up in the payload response. However, it
does produce the fastest rise time. The payload of the robot reaches
the desired location much faster with the SNA shaper than with the
positive ZV shaper, and the robot bending mode is not excited. These
results demonstrate that the flexibility of the SNA shaper provides a
means for achieving excellent performance that is not possible with
either the positive ZV or UM-ZV shapers.
Note that the second mode could also have been reduced by utilizing
the techniques in Chapter 9 to create a multi-mode shaper. For example, the UM-ZV shaper given in (12.4) could be convolved with the
positive ZV shaper designed to suppress the 1.8 Hz robot mode given
by:
169/237
170/237
171/237
172/237
lengths. This makes sense, as the measurement system has progressively worse resolution as cable length is decreased and the payload
moves away from the camera. Furthermore, at short suspension
lengths the actual damping ratio deviates more from the modeled
value of zero.
To compare SD shapers to earlier techniques, three UM-ZV shapers
were designed to suppress vibration throughout the crane workspace.
The shapers were designed to have zero residual vibration at cable
lengths of approximately 24 ft, 16 ft, and 11 ft. Figure 12.10 shows the
measured percentage residual vibration as a function of cable length.
If the operator switches between the three shapers at 20 ft and 13 ft,
then the residual vibration can be kept to below 20% of the unshaped
level (for cable lengths between 9 and 29 feet).
173/237
Chapter 13
Multi-Mode Negative Shapers
Chapter 9 presented two approaches for creating input shapers to
suppress multiple modes. One method created shapers for each individual mode and then convolved them. Unfortunately, this approach
cannot be used reliably to combine two or more negative shapers. The
resulting shaper will cancel the desired modes, but it may cause actuator saturation.
Recall that single-mode negative shapers have impulse amplitudes
that alternate between positive and negative values. This ensures that
the shaped command does not exceed its limit. A problem can occur
when a convolved shaper formed from multiple negative shapers contains two or more impulses in sequence that have large amplitudes of
the same sign. This can produce a shaped command that exceeds the
value of the unshaped command. Such a large-valued command could
cause actuator saturation. This effect is illustrated in Figure 13.1 by a
convolution of UM and SNA shapers. The two-mode negative shaper
has a sequence of three positive impulse [a, b, a]. When convolved
with a step input, the resulting shaped command will have a larger
maximum amplitude than the original unshaped step command, as
shown in Figure 13.2.
The brief periods when the shaped command requests more actuator effect than is available can be tolerated on many systems. However,
it will lead to some degradation of the shaping vibration reduction.
Furthermore, this overcurrenting may damage the actuator, so it is
usually prudent to avoid convolving two negative shapers together.
Note that a negative shaper can be convolved with a positive shaper to
produce a multi-mode shaper that works much more reliably;
175/237
however, the shaper will have a longer duration that one formed from
two negative shapers.
Figure 13.2: A Convolved Negative Input Shaper Can Amplify the Peak Command Amplitude.
In order to produce a reliable multi-mode negative shaper, we must
use the simultaneous solution technique presented in Chapter 9. That
is, we form a set of constraint equations that include negative amplitude constraints and vibration limitations on all of the frequencies
176/237
targeted for suppression. Then, the complete set of constraints is satisfied simultaneously while minimizing the shaper duration. Recall that
this process was used in Section 11.4 to limit a problematic high frequency. In the general case, multiple frequency ranges can be suppressed by simultaneously forming specified insensitivity (SI) constraints over each of the desired suppression ranges and combining
them with negative amplitude constraints, such as the unity magnitude (UM) or specified-negative amplitude (SNA) constraints.
177/237
contacts the part and the computer records the location of the contact.
The position of a touch-trigger probe during a typical measurement is
shown in Figure 13.3.
178/237
part and brought into contact with the right face. The two encoder positions are then subtracted to obtain the part dimension. In the case
shown on the left side of the figure the part is measured accurately because the encoders indicate the true position of the probe. For the case
shown on the right side of Figure 13.4, the measurement is inaccurate
because the structural deflection makes the encoder readings differ
from the true location of the contact points. If the structure is vibrating with an amplitude of during the probe approach (3), then the
calculated dimension can have an error of 2.
Recall that the structural deflection of a CMM was shown in Figure
1.11. By performing an FFT on the deflection response during the approach region, a lightly-damped dominant mode was identified at 8
Hz, and some lightly damped
secondary modes occurred in the 14-18 Hz range. The low mode is
clearly dominant, but the higher modes are not negligible. Therefore, a
two-mode UM shaper was designed by using ZVD constraints for 8 Hz
and 16 Hz. The robustness of the ZVD constraints provided satisfactory suppression over the 14-18 Hz range.
179/237
180/237
Repeatability Tests
The process of input shaping not only improves the measurement
accuracy, it also greatly improves the repeatability of the measurements. Repeatability is a measure of the ability of the instrument to
produce the same indication when sequentially sensing the same
quantity under similar measurement conditions [67]. A repeatability
test for a CMM is conducted by repeatedly measuring the location of a
fixtured part. After each measurement cycle, the probe returns to its
starting position. The minimum measured value is subtracted from
the maximum measurement to obtain the repeatability of the CMM.
Most CMMs have a repeatability of just a few microns.
Figure 13.6 shows 50 individual measurements of a repeatability
test using a 1 mm probe approach distance and a 20 mm gross motion.
The repeatability range for the unshaped measurements is: 25.2735
mm - 25.2687 mm, which equals 4.8 m. The mean value and standard deviation of the unshaped measurements are 25.2711 mm and
181/237
0.00123, respectively. Figure 13.6 also shows 50 measurements obtained with input shaping enabled. For the shaped measurements the
range is 3.3 m, the mean is 25.2670 mm, and the standard deviation
is 0.00067. For this set of measurement parameters input shaping improves the repeatability by 1.5 m and the standard deviation by 45%.
The improved repeatability with input shaping is a straightforward
result given the deflection curves of Figure 13.5. The curves show that
the unshaped measurements have considerably more variation in the
deflection during the probe approach region. During the course of the
repeatability test, the part is contacted at slightly different locations on
the deflection curve. The decrease in deflection variability with input
shaping translates directly into a decrease in measurement variability
(an improvement in repeatability).
To ensure that the benefit of input shaping is not limited to this particular set of parameters, repeatability tests were conducted with several probe approach and gross motion distances [116]. Figure 13.7
shows the repeatability as a function of probe approach distance for
measurements with a 20 mm gross motion. Each data point in Figure
13.7 represents the range of measurements obtained from a 50-point
repeatability test with the given probe approach distance and a 20 mm
gross motion. In general, repeatability improves with increasing probe
approach distance. Figure 13.7 also demonstrates that input shaping
improves repeatability over a wide range of probe approach distances.
182/237
Figure 13.7: Shaped and Unshaped Repeatability for Several Probe Approach Distances.
Chapter 14
Designing Input Shapers and
PD Feedback Concurrently
Input shaping can be used in conjunction with any type of feedback
controller. A block diagram for the case with an input shaper and a
Proportional-Derivative (PD) feedback controller is shown in Figure
14.1. A standard approach to using both input shaping and feedback
controllers is to first calculate the feedback control gains and then
design an input shaper for the resulting frequencies of the overall
closed-loop system. However, this procedure fails to maximize the system performance. Improved performance can be achieved if the feedback gains and input shaper are determined concurrently.
184/237
185/237
where,
Now, the response to the sequence of steps that results from convolving a step function with an input shaper can be determined. The
amplitude of step Lj in the step sequence can be expressed as:
186/237
where,
and
The peak response, Yp, can be found by evaluating (14.9) at time tp:
187/237
Now that the peak response has been determined, the peak percent
overshoot can be expressed as:
Note that the peak percent overshoot depends not on the step size,
but rather on the impulse amplitudes and time locations in the input
shaper. Consequently, the overshoot can be constrained with the input
shaper.
To ensure that the tolerable overshoot value, Mp,tol, is never exceeded by the shaped signal, (14.14) is constrained below this tolerable
value after the step corresponding to each impulse. In other words, k
is increased from 1 to n in (14.14), and for each value of k the following
constraint is enforced:
Assuming that R is a step change in position of magnitude L introduced at time t0, we can rewrite (14.16) as:
188/237
which is valid for time greater than t0, the time at which the step input is introduced.
Again using trigonometric identities, the plant input resulting from
the shaped step command can be expressed as:
where,
189/237
and Atot and are defined in (14.10). But, the value of in (14.10)
is calculated using the phase shift from (14.20), rather than ? from
(14.5).
To ensure that u(t) does not exceed the maximum allowable actuator effort, Utol, the following constraint is enforced after each step in
the command:
where,
Atot and y are given by (14.10) and (14.11), again using ? from
(14.20), and
190/237
where Utol is the actuator limit, m is the nominal mass of the system, and L is the magnitude of the step change in position. Physically,
the ratio /L provides a quantitative measure of the ability of the
191/237
system to respond to a step input. In general, a system with a large ratio of /L will respond faster than a system with a small value of /L.
The parameters for the example system yield a ratio value of 200.
In order to make a reasonable comparison, both control schemes
are required to have a time constant of 0.116s. The time constant of
the system, defined as ( n)1, gives an indication of the systems
ability to reject disturbances. Table 14.1 summarizes the important
parameters of the two control methods.
The input shaper to be used in conjunction with the gains listed in
Table 14.1 for the CEF method is given by:
The input shaper defined by (14.30) was designed without robustness to mass variations; however, any number of robustness methods
could be utilized in the CEF control approach [94, 114, 115].
Three criteria are used to compare the effectiveness of the CEF approach to PD control:
Overshoot
Settling Time
Sensitivity to Disturbances
Overshoot
In order to evaluate overshoot properties, (14.2) is solved for Y when
the system is subjected to a step input of magnitude L:
192/237
193/237
Settling Time
For this comparison, the system is defined to be settled when the residual vibration decays below 5% of the step magnitude. The fastest
settling time that can be attained with only PD control is plotted as a
function of damping ratio in Figure 14.3 for an /L value of 200. The
following equation was used to generate the curve in Figure 14.3:
The fastest settling time with PD control alone is 0.395s. This settling time requires a damping ratio of 0.75, which will yield an overshoot of 19.4%.
The final impulse time defines an upper bound on the settling time
under CEF control because the input shaper forces the residual vibration to below 5% at the time of the final impulse.1 Figure 14.3 shows
the best achievable settling time with CEF control as a function of
damping ratio for /L = 200. The minimum settling time with CEF
control is 0.153s, about 2.6 times faster than with PD control alone.
194/237
Although Figure 14.3 shows only the case for /L = 200, the same effects occur for other values of /L.
Sensitivity
Disturbances that directly affect the plant input are shown as D in
Figure 14.1. Measurement noise, or other similar error sources, could
also be introduced to the plant response, and they are represented by
W in Figure 14.1. The sensitivity of a system to these disturbances is
another good indicator of system performance. Low sensitivity values
are desired, as this indicates that disturbances will have little effect on
both the output of the system and the magnitude of the error signal (E
in Figure 14.1). The sensitivity of the response to disturbances of type
D is:
195/237
196/237
Figure 14.6 indicates that the CEF control system will result in error
signals of smaller magnitude than the PD controller for low frequency
inputs, while at high frequencies the two controllers produce error signals of similar magnitude.
This section has compared CEF control to optimized PD control
without input shaping. The reader should note that the controller with
input shaping is much better in nearly all respects. Another comparison can be made between CEF control and the optimized PD control
with input shaping added after the PD gains have been chosen. PD
control with input shaping achieves performance levels closer to the
CEF control; however, the higher proportional gain of the CEF control
allows it to move the system faster. This is another key result - concurrently designing the feedback gains and input shaper, (CEF
197/237
198/237
199/237
200/237
through the CEF approach, then the sequential method could yield
equivalent performance (provided that the optimal shaper was then
designed in the subsequent step). However, the sequential approach
does not have any mechanism for finding the optimal gain values, other than through a trial-and-error process that includes designing the
complimentary input shaper and evaluating the resulting
performance.
201/237
CEF
KP/m
132.2
321.5
KD/m
17.24
17.24
0.75
0.48
, sec.
0.116
0.116
Overshoot, %
19.4
ts, sec.
0.395
0.209
Chapter 15
Historical Overview of
Command Shaping
15.1 Early Work
Over 70 years ago command shaping appeared in the literature discussing cam profile design [45, 89, 130, 145] and command smoothing
[2, 19, 59, 60, 127, 131]. The early command-shaping methods did not
target specific system frequencies. Rather, they limited input energy to
a range of frequencies below the resonant frequencies of the system
being controlled. As this work evolved, various authors presented
methods for constructing command functions, typically trigonometric
or polynomial functions, that caused limited residual vibration [2]. To
minimize move and settling time, step and pulse command functions
were approximated as sums of sinusoids that were carefully selected to
minimize energy at the system resonant frequencies [60].
Systematic research on cam profile design can be found as far back
as the 1930s [130] and significant advancements in vibration reduction for cam systems occurred in the 1960s and 70s [45, 144, 145]. As
digital computers became more powerful, specification of cam profiles
came to be seen as an optimization problem. It is generally assumed
that these cam designs are appropriate for use in those systems which
are intended to operate at a constant or nearly constant speed [145].
Away from the design speed, system performance is often degraded
significantly.
An early method for constructing command waveforms for a specific
system model was Signal Component Control [23]. The objective of
204/237
205/237
Generating the time-delayed portion of the command was particularly difficult. Researchers tried to produce the delayed components
with mechanical delay elements, transmission delay lines, and analog
circuitry [90, 128]. One method determined a Fourier series expansion
of the command, truncated the series, and then reconstituted the comparable command [90]. Another approach changed the system set
point in predetermined ways when the system passed through a point
of zero velocity [62].
15.3 Robustness
In the 1980s, use of microprocessors became widespread. This enabled practical development and use of more sophisticated commandshaping methods. A key element of these methods was robustness to
modeling errors, uncertainties, and nonlinearities. Command-shaping
methods require some information about the system dynamics. This
information will always have some degree of inaccuracy. So, for command shaping to be successful on real applications, it must have an
adequate level of robustness.
In 1990, Singer and Seering presented a command-shaping method
that produced commands that limited residual vibration, even in the
presence of significant modeling errors [93, 94]. The method achieved
robust performance by limiting residual vibration at frequencies near
the modeled system frequency. The constraint was implemented by
first constructing an equation that describes the amount of residual vibration as a function of a series of impulses. The derivative of this
equation with respect to frequency was then set to zero at the modeled
value of the systems natural frequency. The effect of this constraint is
to keep the vibration at a low level, even when the actual frequency deviates somewhat from the modeled value.
The idea of robust command shaping was a significant step forward,
as it greatly expanded the design possibilities, as well as the applications for command shaping. In a very short time, several other
206/237
research groups adopted the idea and were making extensions and experimental verifications of Singer and Seerings input-shaping method
[8, 36, 83, 137, 146].
Even though it was not robust, the early work in command shaping
sought to understand the operating principles so that they could be
better exploited [8, 9]. In his book [120], OJM Smith demonstrated
that the posicast method placed zeros over the complex poles representing a systems natural frequency, thereby canceling their vibratory
effects. Singer and Seerings derivative constraints place additional
zeros over the flexible poles of the plant [74, 100]. This concept of
adding additional zeros at, or near, the flexible poles would prove to be
a powerful concept for designing command-shaping methods.
Soon after the development of the zero vibration and derivative
(ZVD) input shaper [94], many other researchers sought to extend the
robustness idea. The extensions can largely be categorized as: 1) Builtin robustness, or 2) Adaptive robustness. Built-in robustness seeks to
make the input shaper inherently robust, as for example the ZVD
shaper. A fundamental tradeoff in this approach is that obtaining
more robustness can lead to an increase in shaper duration. A key
challenge is to obtain significant robustness while limiting the shaperduration penalty.
To address this challenge, another approach was proposed in 1990,
wherein the constraint of zero vibration at the modeling frequency was
replaced with a constraint that merely limited the vibration to a small
value [41, 77, 102, 112, 114]. This approach evolved from the understanding that vibration can never be completely eliminated. Furthermore, methods that attempt to achieve a perfectly vibration-free response usually pay a significant penalty for the last few percent of vibration reduction. This more practically-based method was called the
Extra-Insensitive (EI) approach because it provides extra robustness
without increasing the shaper duration - the EI shaper has the same
duration as the ZVD shaper.
207/237
208/237
209/237
210/237
211/237
shaping process by adding additional constraints to limit transient deflection during the motion [32, 42, 87, 103].
15.5 Summary
Methods that generate specially-shaped reference commands to
move flexible systems are an important part of control theory and application - nearly 1,000 papers on the subject have been published.
The major advantage of such commands is that they do not require
sensor measurements, although sensors can be used in adaptive
command-shaping methods to improve performance. Another
strength of command shaping is that it acts to suppress vibration in a
preemptive way that is faster than anything possible with feedback
control. Feedback control must wait for an error to arise and be sensed
before suppression can be initiated. Command shaping uses a dynamic model to anticipate the occurrence of vibration, so it can effectively
start to act as soon as the system motion is initiated.
A key point in the history of command shaping was the development
of robust methods. These algorithms produce commands that can
work well even when large modeling errors exist. Furthermore, the dynamic model required by command shaping is usually quite simple,
consisting of estimates of the systems natural frequencies and damping ratios. Command shaping is very versatile in that many types of
auxiliary constraints, such as actuator limits, fuel usage, and transient
deflection limits, can be integrated into the design of the commands.
These beneficial properties have enabled engineers to harness the benefits of command shaping on millions of machines worldwide.
Appendix A: Notes on
Feedback Control
The introductory chapter discussed a general system that consisted
of a physical plant, command generator, feedback, and feedforward
control. While this is a general system description, many systems do
not contain all four elements. For example, the systems discussed in
Chapters 2 and 3 only contained the physical plant and the command
generator. These types of systems may lack final positioning accuracy
and can be greatly affected by disturbances. Therefore, feedback control is often added to address such problems. If this is the case, then
the system has the structure shown in Figure A.1. Note that the system
must retain the command generator; without this element there is no
means to create the reference signal and affect the state of the system.
This appendix does not provide a fundamental understanding of
feedback control systems. There are numerous books devoted entirely
to the subject. It is assumed that the reader already has good familiarity with feedback control. The goal here is to discuss feedback control
in the context of how it relates to command generation.
Important properties of feedback-controlled systems can be illustrated by considering the simple example of a mass under proportional and derivative (PD) control, as shown in Figure A.2. Transfer functions for the mass and PD controller are shown explicitly in the figure,
but the command generator has been left in generic form. The performance of the system depends on the dynamic effects between the
performance specifications going into the command generator and the
system response, Y. Block diagram reduction can be used to simplify
the closed-loop portion of the system, as shown in Figure A.3.
213/237
214/237
215/237
216/237
217/237
218/237
Appendix B: Derivation of
Residual Vibration
Amplitude Equation
The amplitude of residual vibration of an underdamped second-order system resulting from a series of impulses can be derived from the
response from a single impulse applied at time t0:
220/237
By comparing the trigonometric identity of (B.3) to the residual vibration given in (B.2), the Bi terms can be identified as:
221/237
Bibliography
[1] C. F. Alsop, G. A. Forster, and F. R. Holmes. Ore unloader automation - a feasibility study. Tokyo Symposium on Systems Engineering for Control System Design, pgs. 295305. Tokyo, Japan, 1965.
[2] D. M. Aspinwall. Acceleration profiles for minimizing residual response. ASME Journal of Dynamic Systems, Measurement, and
Control, 102:36, March 1980.
[3] M. Athens and P. L. Falb. Optimal Control. McGraw-Hill, New
York, 1966.
[4] Arun Banerjee, Nelson Pedreiro, and William Singhose. Vibration
reduction for flexible spacecraft following momentum dumping
with/without slewing. AIAA J. of Guidance, Control, and Dynamics,
24(May- June):417428, 2001.
[5] Arun K. Banerjee. Dynamics and control of the wisp shuttle-antennae system. J. of Astronautical Sciences, 41(1):7390, 1993.
[6] Arun K. Banerjee and William E. Singhose. Command shaping in
tracking control of a two-link flexible robot. AIAA J. of Guidance,
Control, and Dynamics, 21(Nov.-Dec.):10121015, 1998.
[7] J. Ben-Asher, J. A. Burns, and E. M. Cliff. Time-optimal slewing of
flexible spacecraft. J. of Guidance, Control, and Dynamic,
15:36067, 1992.
[8] Sudarshan P. Bhat and Denny K. Miu. Precise point-to-point positioning control of flexible structures. ASME Winter Annual Meeting. San Francisco, CA, 1989.
[9] Sudarshan P. Bhat and Denny K. Miu. Precise point-to-point positioning control of flexible structures. ASME J. of Dynamic Systems,
Measurement, and Control, 112(4):667674, 1990.
[10] Sudarshan P. Bhat, M. Tanaka, and Denny K. Miu. Experiments
on point-to-point position control of a flexible beam using laplace
223/237
transform technique-part 1: Open-loop. ASME J. of Dynamic Systems, Measurement, and Control, 113:4327, 1991.
[11] Robert Blevins. Formulas for Natural Frequency and Mode
Shape. Van Nostrand Reinhold Co., New York, NY, 1979.
[12] Marc Bodson. Experimental comparison of two input shaping
methods for the control of resonant systems. IFAC World Congress.
San Francisco, CA, 1996.
[13] Marc Bodson. An adaptive algorithm for the tuning of two input
shaping methods. Automatica, 34(6):771776, 1998.
[14] Ray E. Bolz and George L. Tuve. CRC Handbook of Tables for Applied Engineering Science. CRC Press, Inc., Boca Raton, FL, 1973.
[15] Arthur Bryson and Yu-Chi Ho. Applied Optimal Control. Hemisphere Publishing, 1975.
[16] G. Cook. An application of half-cycle posicast. IEEE Trans. on
Automatic Control, 11(3):556559, 1966.
[17] A. Dhanda and G. F. Franklin. Optimal control formulations of vibration reduction problems. IEEE Trans. on Automatic Control,
55:37894, 2010.
[18] B. J. Driessen. On-off minimum-time control with limited fuel usage: Near global optima via linear programming. Optimal Control
Applications and Methods, 27(3):161168, 2006.
[19] R. L. Farrenkopf. Optimal open-loop maneuver profiles for flexible spacecraft. J. of Guidance and Control, 22:491498, 1979.
[20] J. T. Feddema. Digital filter control of remotely operated flexible
robotic structures. American Control Conf., volume 3, pgs.
27102715. ACC, San Francisco, CA, 1993.
[21] J. Fortgang and W. Singhose. Concurrent design of vibration absorbers and input shapers. J. of Dynamic Systems, Measurement,
and Controls, 127:329335, 2005.
[22] Joel Fortgang, Juan de Juanes Marquez, and William Singhose.
Application of input shaping on micro-mills. Japan USA Symposium on Flexible Automation. Denver, Colorado, 2004.
224/237
225/237
[33] Michael Kenison and William Singhose. Input shaper design for
doublependulum planar gantry cranes. IEEE Conference on Control
Applications, pgs. 53944. Hawaii, 1999.
[34] Michael Kenison and William Singhose. Concurrent design of input shaping and proportional plus derivative feedback control.
ASME J. of Dynamic Systems, Measurement, and Control,
124(3):398405, 2002.
[35] Attir Khalid, John Huey, William Singhose, and Jason Lawrence.
Human operator performance testing using an input-shaped bridge
crane. ASME J. of Dynamic Systems, Measurement, and Control,
128(4):835841, 2006.
[36] F. Khorrami, S. Jain, and A. Tzes. Experiments of rigid-body
based controllers with input preshaping for a two-link flexible manipulator. American Control Conference, volume 3, pgs.
29572961. Chicago, IL, 1992.
[37] F. Khorrami, S. Jain, and A. Tzes. Adaptive nonlinear control and
input preshaping for flexible-link manipulators. American Control
Conference, pgs. 27052709. San Francisco, CA, 1993.
[38] F. Khorrami, S. Jain, and A. Tzes. Experiments on rigid-body
based controllers with input preshaping for a two-link flexible manipulator. IEEE Transactions on Robotic Automation, volume 10,
pgs. 5565. 1994.
[39] Dooroo Kim and William Singhose. Human operator learning on
doublependulum bridge cranes. ASME IMECE. Seattle, WA, 2007.
[40] Dooroo Kim and William Singhose. Studies of human operators
manipulating double-pendulum bridge cranes. European Control
Conference. Kos, Greece, 2007.
[41] Dooroo Kim and William Singhose. Performance studies of human operators driving double-pendulum bridge cranes. Control
Engineering Practice, 18:567576, June 2010.
[42] H. Kojima and W. Singhose. Adaptive deflection limiting control
for slewing flexible space structures. AIAA J. of Guidance, Control,
and Dynamics, 30:6167, 2007.
226/237
[43] R. L. Kress, J. F. Jansen, and M. W. Noakes. Experimental implementation of a robust damped-oscillation control algorithm on a full
sized, two-dof, ac induction motor-driven crane. 5th International
Symposium on Robotics and Manufacturing, pgs. 58592. Maui,
HA, 1994.
[44] Ravi Kumar and Tarunraj Singh. Design of input shapers using
modal cost for multi-mode systems. Automatica, 46(3):598604,
2010.
[45] H. Kwakernaak and J. Smith. Minimum vibration cam profiles. J.
of Mechanical Engineering Science, 10:219227, 1968.
[46] Jason Lawrence and William Singhose. Design of minicrane for
education and research. 6th Int. Conference on Research and Education in Mechatronics. Annecy, France, 2005.
[47] Jason Lawrence, William Singhose, Rolff Weiss, Adrian Erb, and
Urs Glauser. An internet-driven tower crane for dynamics and controls education. IFAC Symp. on Control Education. Madrid, Spain,
2006.
[48] Derek Lewis, Gordon G. Parker, Brian Driessen, and Rush D.
Robinett. Command shaping control of an operator-in-the-loop
boom crane. American Control Conference, pgs. 26437. Philadelphia, PA, 1998.
[49] Sungyung Lim and Jonathon How. Input command shaping techniques for robust, high-performance control of flexible structures.
AIAA Guidance, Navigation, and Control Conf. San Diego, CA,
1996.
[50] Sungyung Lim, H.D. Stevens, and J.P. How. Input shaping design
for multi-input flexible systems. J. of Dynamic Systems, Measurement and Control, 121(3):4437, 1999.
[51] Q. Liu and B. Wie. Robust time-optimal control of uncertain flexible spacecraft. J. of Guidance, Control, and Dynamics,
15:597604, 1992.
227/237
228/237
[60] Peter H. Meckl and Warren P. Seering. Minimizing residual vibration for point-to-point motion. Journal of Vibration, Acoustics,
Stress and Reliability in Design, 107:378382, October 1985.
[61] Peter H. Meckl and Warren P. Seering. Reducing residual vibration in systems with time varying resonances. IEEE Int. Conf. on
Robotics and Automation, pgs. 16901695. Raleigh, NC, 1987.
[62] D. H. Mee. A feedback implementation of posicast control using
sampling circuits. Proceedings of the Institute of Radio and Electronics Engineering, Jan-Feb:1115, 1974.
[63] J. L. Meyer and L. Silverberg. Fuel optimal propulsive maneuver
of an experimental structure exhibiting spacelike dynamics. Journal
of Guidance, Control, and Dynamics, 19(1):1419, 1996.
[64] Marco Muenchhof and Tarunraj Singh. Concurrent feedforward/
feedback controller design using time-delay filters. AIAA Guidance,
Navigation and Control Conference. Monterey, CA, 2002.
[65] Marco Muenchhof and Tarunraj Singh. Jerk limited time optimal
control of flexible structures. J. of Dynamic Systems, Measurement,
and Controls, 125(1):13942, 2003.
[66] Rory Ninneman and Keith Denoyer. Middeck active control experiment reflight (mace ii): Lessons learned and reflight status. Proceedings of SPIE - The International Society for Optical Engineering, volume 3991, pgs. 131137. Newport Beach, CA, 2000.
[67] American Society of Mechanical Engineers. Methods for performance evaluation of coordinate measuring machines. Tech. report,
ASME B89.1.12M, 1990.
[68] Katsuhiko Ogata. Modern Control Engineering, pg. 282.
Prentice-Hall, Inc., 1970.
[69] Yuichi Okazaki, Toshimichi Mori, and Noboru Norita. Desk-top
nc milling machine with 200 krpm spindle. ASPE 2001 Annual
Meeting, pgs. 192 195. Crystal City, VA, 2001.
[70] A.V. Oppenheim and R.W. Schafer. Digital Signal Processing.
Prentice Hall, Inc., Englewood Cliffs, NJ, 1975.
229/237
230/237
231/237
[92] Neil Singer, William Singhose, and Eric Kriikku. An input shaping controller enabling cranes to move without sway. ANS 7th Topical Meeting on Robotics and Remote Systems, volume 1, pgs.
22531. Augusta, GA, 1997.
[93] Neil C. Singer. Residual Vibration Reduction in Computer Controlled Machines. Ph.D. thesis, Massachusetts Institute of Technology, 1989.
[94] Neil C. Singer and Warren P. Seering. Preshaping command inputs to reduce system vibration. J. of Dynamic Sys., Measurement,
and Control, 112:7682, 1990.
[95] Neil C. Singer, William E. Singhose, and Warren P. Seering. Comparison of filtering methods for reducing residual vibration.
European Journal of Control, (5):208218, 1999.
[96] T. Singh and S. R. Vadali. Input-shaped control of three-dimensional maneuvers of flexible spacecraft. J. of Guidance, Control, and
Dynamics, 16(6):10618, 1993.
[97] Tarun Singh. Fuel/time optimal control of the benchmark problem. J. of Guidance, Control, and Dynamics, 18(6):122531, 1995.
[98] Tarunraj Singh. Jerk limited input shapers. J. of Dynamic Systems, Measurement, and Controls, 126(1):21519, 2004.
[99] Tarunraj Singh and G. R. Heppler. Shaped input control of a system with multiple modes. Journal of Dynamic Systems, Measurement, and Control, 115:341347, September 1993.
[100] Tarunraj Singh and S. R. Vadali. Robust time-delay control.
ASME Journal of Dynamic Systems, Measurement, and Control,
115:3036, 1993.
[101] Tarunraj Singh and S. R. Vadali. Robust time-optimal control: A
frequency domain approach. J. of Guidance, Control and Dynamics, 17:346 353, 1994.
[102] William Singhose. A vector diagram approach to shaping inputs
for vibration reduction. Tech. Report MIT Artificial Intelligence Lab
Memo No. 1223, MIT, 1990.
232/237
233/237
234/237
235/237
236/237