The Effect of a Zero on a Second Order System's Performance
Copyright 2010, Kevin Walker
Form of the System
A second order system can be described using its natural frequency,
, its damping ratio,
, and its gain,
, which we will assume to be unity. Maple will assume that all variables are complex unless it is told otherwise. A few hints to Maple on the domain of these parameters will often result in more compact and intuitive solutions later. We consider only positive frequencies,
and set the damping ratio between 0 and 1
If the damping ratio were greater than 1, then the second order system would simplify to two first order poles, so for the time being we will assume that it is less than one. The transfer function of the system is (with unit gain
):
![`/`(`*`(`^`(omega[n], 2)), `*`(`+`(`*`(`^`(s, 2)), `*`(2, `*`(xi, `*`(omega[n], `*`(s)))), `*`(`^`(omega[n], 2)))))](/view.aspx?SI=87680/0/images/SecondOrderZero_8.gif) |
(1.1) |
To introduce a zero into the system at
, we multiply the numerator of the transfer function by
. Since this term is zero when
, therefore the transfer function also goes to zero (and hence the name "zero"). We choose to use
instead of the more canonical form of
to keep the DC gain of the system at unity.
![`/`(`*`(`^`(omega[n], 2), `*`(`+`(`/`(`*`(s), `*`(a)), 1))), `*`(`+`(`*`(`^`(s, 2)), `*`(2, `*`(xi, `*`(omega[n], `*`(s)))), `*`(`^`(omega[n], 2)))))](/view.aspx?SI=87680/0/images/SecondOrderZero_15.gif) |
(1.2) |
Note that
, which means that the zero has less and less effect as it moves further away from the origin. The fraction may be expanded into two terms:
![`+`(`/`(`*`(`^`(omega[n], 2), `*`(s)), `*`(`+`(`*`(`^`(s, 2)), `*`(2, `*`(xi, `*`(omega[n], `*`(s)))), `*`(`^`(omega[n], 2))), `*`(a))), `/`(`*`(`^`(omega[n], 2)), `*`(`+`(`*`(`^`(s, 2)), `*`(2, `*`(x...](/view.aspx?SI=87680/0/images/SecondOrderZero_18.gif) |
(1.3) |
The second term is the standard second order system as given in
.
 = `/`(`*`(`^`(omega[n], 2)), `*`(`+`(`*`(`^`(s, 2)), `*`(2, `*`(xi, `*`(omega[n], `*`(s)))), `*`(`^`(omega[n], 2)))))](/view.aspx?SI=87680/0/images/SecondOrderZero_21.gif) |
(1.4) |
The first term is the perturbation caused by the zero:
 = `/`(`*`(`^`(omega[n], 2), `*`(s)), `*`(`+`(`*`(`^`(s, 2)), `*`(2, `*`(xi, `*`(omega[n], `*`(s)))), `*`(`^`(omega[n], 2))), `*`(a)))](/view.aspx?SI=87680/0/images/SecondOrderZero_23.gif) |
(1.5) |
Relationship between the Two Terms
Recalling the Laplace transform property,
, and assuming zero initial conditions, we can see that the inverse transform of
is the derivative of
scaled by
. That is,
. This equivalence can be illustrated through the time-domain step responses. These are obtained by first multiplying the transfer functions by
, which applies a unit step to the system at
, then by taking the inverse Laplace transform. That is, we will show the equivalence of
. Beginning with the right-hand-side of this equation,

![`+`(1, `-`(`*`(`^`(`+`(1, `/`(`*`(`^`(xi, 2)), `*`(`+`(`-`(`*`(`^`(xi, 2))), 1)))), `/`(1, 2)), `*`(exp(`+`(`-`(`*`(t, `*`(xi, `*`(omega[n])))))), `*`(cos(`+`(`*`(`^`(`+`(`-`(`*`(`^`(xi, 2))), 1), `/`...](/view.aspx?SI=87680/0/images/SecondOrderZero_34.gif) |
(1.1.1) |
![`/`(`*`(omega[n], `*`(exp(`+`(`-`(`*`(t, `*`(xi, `*`(omega[n])))))), `*`(sin(`*`(`^`(`+`(`-`(`*`(`^`(xi, 2))), 1), `/`(1, 2)), `*`(t, `*`(omega[n]))))))), `*`(`^`(`+`(`-`(`*`(`^`(xi, 2))), 1), `/`(1, ...](/view.aspx?SI=87680/0/images/SecondOrderZero_36.gif) |
(1.1.2) |
The left-hand-side of the equation can be obtained by:

![`/`(`*`(omega[n], `*`(exp(`+`(`-`(`*`(t, `*`(xi, `*`(omega[n])))))), `*`(sin(`*`(`^`(`+`(`-`(`*`(`^`(xi, 2))), 1), `/`(1, 2)), `*`(t, `*`(omega[n]))))))), `*`(`^`(`+`(`-`(`*`(`^`(xi, 2))), 1), `/`(1, ...](/view.aspx?SI=87680/0/images/SecondOrderZero_39.gif) |
(1.1.3) |
Since
and
are identical, therefore we have shown that the inverse transform of
is the time derivative of
scaled by
.
Time-domain Step Response
The time-domain step response of the second order system with a zero is
![`+`(1, `-`(`*`(cos(`*`(`^`(`+`(`-`(`*`(`^`(xi, 2))), 1), `/`(1, 2)), `*`(t, `*`(omega[n])))), `*`(exp(`+`(`-`(`*`(t, `*`(xi, `*`(omega[n]))))))))), `/`(`*`(sin(`*`(`^`(`+`(`-`(`*`(`^`(xi, 2))), 1), `/...](/view.aspx?SI=87680/0/images/SecondOrderZero_46.gif) |
(1.2.1) |
Since the arguments of the sine and cosine functions are identical, we can convert them into a single trigonometric function with a new magnitude and phase offset. This gives a more intuitive form of the step response.
![`+`(1, `*`(`^`(`+`(1, `/`(`*`(`^`(`+`(`-`(`*`(xi, `*`(a))), omega[n]), 2)), `*`(`+`(`-`(`*`(`^`(xi, 2))), 1), `*`(`^`(a, 2))))), `/`(1, 2)), `*`(exp(`+`(`-`(`*`(t, `*`(xi, `*`(omega[n])))))), `*`(cos(...](/view.aspx?SI=87680/0/images/SecondOrderZero_48.gif) |
(1.2.2) |
Interactive Exploration
Click and drag the poles or the zero in the S-plane to see the effect on the time domain response on the right.
S-Plane (Frequency Domain)
|
Step Response (Time Domain)
|
The time-domain step response: