|
Time delay= 0.0 S Gain* |
1.0 |
x 10
X 10
Fig. 1. (a) Response of a filter with two poles at - JiylO and a zero ai 2 (b) Poles and zeros table displayed Oy HP 3562A for (a), (c) Pole-zero diagram for (a).
However, how is this function represented in pole-residue form? Again, the HP 3562A has the answer (Fig. 2b):
— j250 x 10~6 j250X10"G -2.5xi0";'-j25xl0"3
A more interesting pole-residue case occurs when there are more zeros than poles:
(s + l)[s + 2}(s + l -j5)(s+l+j5) (s + "1 — jl0](s + l + jlO)
This results in extra Laurent expansion terms—isolated powers of s that did not appear in the original pole-zero form [see Fig, 2c):
|
Synthesis |
|
Polynomials |
|
NUMERATOR 1 |
DENOMINATOR 4 |
|
1 2.0 |
10.201k |
|
2 1.0 |
404.0 |
|
3 |
206.0 |
|
4 |
4.0 |
|
5 |
1.0 |
|
Time delay 0.0 S Gain» |
1.0 Scale= 1.0 |
|
(a) |
|
Synthesis |
|
Poles And |
Residues |
|
POLES 4 |
RESIDUES |
|
1 -1.0 ij 10.0 |
0.0 ±j -250.0y |
|
2 ( -1.0 ±3 10.0 1 *2 |
-2.5m±j -25.0m |
|
|
|
Synthesis |
|
|
|
|
Poles And |
Residues |
|
|
|
POLES 2 |
|
RESIDUES |
|
1 |
-1 |
0 tj 10.0 |
|
-37.5 ±j -375.0 |
|
2 |
S*0 |
|
|
-73.0 |
|
3 |
S"1 |
|
|
3.0 |
|
A |
S*2 |
|
|
Î.0 |
Fig. 2, HP 3562A display of (a) polynomial table for equation 1, (b) pole-residue table for Equation 2, and (c) table for equation 3 with Laurent expansion terms
The implementation of the synthesis table conversions in the HP 3562A was straightforward, except for keeping track of a multitude of details. The pole-residue form requires many different cases. A consistent representation of the many forms had to be designed within the constraints of the HP 3562A's displayabie character set. The necessary zero-finder routine is shared with the curve-fitting algorithm [see article on page 33).
Many table conversions result in small residual error terms after conversion. To keep from displaying the error terms, the table conversion routines estimate the errors in their arithmetic as they proceed, if a term is as small as the expected error for that table conversion, then the table conversion routines assume that the term is indeed caused by arithmetic errors and sets the term to zero. This allows most table conversions to work exactly as expected. For example, converting a polynomial table to a pole-zero table will give a zero at 0 Hz, if that is where it belongs, not at 2.31 x 10"23. Also, converting a pole-zero table with Hermi-tian symmetry to rational polynomial form will result in purely real polynomials.
Another problem is caused by the large numbers often encountered in polynomials. For example, {s—10,000)1° converted to polynomial form results in numbers as large as lO4". This will lead to numerical problems. We solve this problem in several ways. First, a scale frequency parameter is introduced to allow designers to design in units that are appropriate for their particular design problem. For many designs, choosing one hertz or one radian as the design unit is no more applicable than designing electrical filters using ohms, farads, and henries (most practical de-
|
Synthesis |
|
|
Polynomials |
|
|
NUMERATOR 0 |
|
DENOMINATOR 5 |
|
1 1.0 |
|
1.0 |
|
2 |
|
5.0 |
|
3 |
|
0.0 |
|
4 |
|
20,0 |
|
5 |
|
0.0 |
|
6 |
|
16.0 |
|
Time delay- 0.0 S Gain» |
1. |
0 Scale« 10.0k |
FxdXV 0 Hz 20k
FxdXV 0 Hz 20k
Fig, 3, Table (a) and synthesized response (b) for fifth-order Chebyshev polynomial (equation 4).
signs use kit, /iF. and mH). Likewise, many filter designs are more naturally expressed in kHz or kiloradians. or normalized to the corner frequency' or the center frequency of the filter bandwidth. Second, the formulas used for table conversions and frequency response synthesis were carefully designed to try to minimize numerical problems. Finally, if numerical problems cannot be avoided, the HP 3562A table conversion routines attempt to diagnose the error, and warn the user of the numerical problems.
Designing a Chebyshev Low-Pass Filter
For a simple example of using the synthesis and curve-fi t-ting capabilities of the HP 3562A. let's construct an equirip-pie low-pass filter. The magnitude of the response of this type of filter is equal to l/IT^fioJ + je], where Tk(o>) is the kth-order Chebyshev polynomial. Using the Chebyshev recursion relationship, we can quickly arrive at. for example, a fifth-order Chebyshev polynomial:
This polynomial oscillates between ±1 over the frequency range of u» = ± 1. We choose e =1.0. resulting in a passband ripple of 3 dS, This function can be synthesized using the HP 3562A's polynomial synthesis capability [Fig. 3).
Since the HP 3562A polynomials are expressed in terms of jiu, the filler function synthesized is actually:
|
Curve Fit
Poles And Zenos POLES 10 ZEROS 0 |
|
1 -1.77134k
2 1.77184k
3 1.43346k±j 5,96936k
5 -547,536 tj 9.6586k
6 547.536 tj 9.6586k
Time delay 0.0 S Gain»- |
-39.E+36 Scale- t.O |
FxdXY 0 Hz 20k
Fig. 4. (a) Table of ten poles obtained by curve fitting equation 5 (b) Response obtained by discarding right-band poles listed in (a) and resynthesizing the resulting pole-zero function.
FxdXY 0 Hz 20k
Fig. 4. (a) Table of ten poles obtained by curve fitting equation 5 (b) Response obtained by discarding right-band poles listed in (a) and resynthesizing the resulting pole-zero function.
|
Synthesis |
|
Poles And |
Zeros |
|
POLES 5 |
ZEROS 2 |
|
1 -14.0k |
0.0 ±j 32.4k |
|
2 -S.75k±j 16.24k |
|
|
3 -2.44kü 22,0k |
|
|
Time delay= 0.0 S Gain-; |
>.2EH2 Scale= Î.0 |
SYNTHESIS 30.0
Pole Zero
M: SYNTHESIS 0.0
Fxd M: SYNTHESIS
Pole Zero dB
till
1 I I I M I I I I I I M I I I I I I I II I U--1_■ it'll
Log Hz
SYNTHESIS 30.0
Pole Zero
M: SYNTHESIS 0.0
|
|
|
\ |
|
|
|
|
|
|
|
|
|
|
\ |
|
|
|
|
|
|
|
|
|
|
|
\r |
\ |
|
|
|
|
|
|
|
|
|
|
\ |
If |
|
|
|
100k
I 1 M I (MM I M I I I I M I TTTTT I I I I I I II M I II I I -1.1.1 IX
I I I I I I I I I I I I (I I I I I I I TTTTT llltl I I I I I
100k
Fig. 5. (a) Table of poles and zeros for synthesis of reconstruction filter (b) Synthesized response of filter by Itself fc) Response of combined system (DAC plus filter), (d) Detailed pa es band performance
|
|
|
|
|
\ |
\ |
|
|
|
|
|
|
|
|
|
|
\ |
|
|
|
|
|
|
|
|
|
|
|
y |
■ ""1 |
> |
"M |
|
|
|
|
|
|
|
|
|
|
|
Curve Fit
Poles And Zeros POLES 5 ZEROS 10 |
|
1 -13.7761k
2 -6.69592k+j 16.3601k
3 -2.51997k22.0867k
Time delay= 0.0 S Gain= |
-71.9401 ±J 32.4116k 0.0 ±j 51.2k-0.0 ±j 102.4k«-0.0 ±J 153,6k-0.0 +j 204.6k-
1.0 Scale- 1.0 |
fig. 6. Measured response (a) and table of poles and zeros (b) for actual filter constructed using the parameters synthesized in Fig 5.
In addition, a frequency scaling factor has been entered to specify a corner frequency at (io= 1) = 10 kHz.
While the synthesized function has the correct magnitude for the filter we want, the phase of the synthesized function may not correspond to the phase of the filter we are trying synthesize. Let's ignore phase for a moment by taking the squared magnitude:
Curve fitting this function gives os ten poles, half of which are in the right-hand plane [Fig. 4a). Discarding the right-
Input Voltage
Power Acceleration Amplifier Output
Fig. 7. Simple head positioning system for a disc drive
Input Voltage
Power Acceleration Amplifier Output
Fig. 7. Simple head positioning system for a disc drive hand plane poles, and resvntbesizing the resulting pole-zero function, gives us the filter response desired (Fig, 4b). An alternate approach would be to curve fit the original synthesized function HfwJ with results very similar to those used for Fig. 4b. The right-hand pole is then reflected into the left-hand plane to arrive at a stable function with identical magnitude response.
Designing a Reconstruction Low-Pass Filter
As a more complicated filter design example, we wish to design a simple low-pass filter that will aid in the reconstruction of an analog signal from digital data samples using a digital-to-analog converter (DAC). The filter has three requirements:
1. The filter must block alias components at 1.56 times the passband corner frequency [the sample rate of the dig-
FRHJ RESP 10.0
lOOAvg OXOvlp Unif
FRHJ RESP 10.0
lOOAvg OXOvlp Unif
VOLT -30.0 Fxd i 0 FREQ RESP
lOOAvg OXOvlp Unif
VOLT -30.0 Fxd i 0 FREQ RESP
lOOAvg OXOvlp Unif
Real
Real
|
|
\ |
|
|
|
|
|
|
|
|
|
|
\ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SO.Otn
Fig. 8. (a) Plot of the acceleration response of the system in Fig 7 as a function of the excitation voltage frequency (b) System step response
- Fig. 9. Typical feedback control system
ital system is 2.56 times the filter corner frequency). For this particular application. 45 dB of alias protection is considered adequate.
2. The filter must compensate for a (sin roll-off caused by the DAC outputting rectangular pulses rather than theoretically infinitely narrow impulses. After compensation, the DAC and reconstruction filter together should have a passband flatness better than ±0.5 dB.
3. The filter must be inexpensive, using a minimum of second-order stages.
To implement this design, the characteristic (sin wjm roll-off is first examined on a sample frequency of 51.2 kHz. This is approximated by the real part of:
which the HP 3562A can synthesize as a pole at 10-1' Hz with a gain factor of — 16,300 and a time delay of 9.766 /as.
A small offset is added to 10 in the denominator to avoid dividing by zero. Curve fitting the (sin ui)/to roll-off over a 0-to-20-kHz range indicates that the roll-off can be well represented as a single heavily damped pole within this
M: FREQ RESP 40.0
20Avg OXOvlp Unif
M: FREQ RESP 40.0
20Avg OXOvlp Unif
- FxtlXV 0 H: FHEQ RESP
- SOAvg OXOvlp Unif
Fxd y 0
Fig. 10. Improvement in system response (Fig 8a) as k is increased slightly until the system is nearly unstable
Fxd y 0
Fig. 10. Improvement in system response (Fig 8a) as k is increased slightly until the system is nearly unstable frequency range. This convinces us that the roll-off correction can be easily handled by slightly modifying the pole locations of a standard low-pass filter design.
Accordingly, the fifth-order Chehyshev polynomial discussed in the earlier example is tried, leading to the conclusion that a zero is needed near 1.6 times the corner frequency of the filter to make the transition to 45 dB of attenuation quickly enough. Trial solutions for the pole locations are determined by using the above Chehyshev design technique with a passband ripple of ±0.25 dB. The zero location chosen is based on the 1.56-times-the-corner-frequency criterion (requirement 1 on page 29], Then, including the (sin wj/w roll-off factor, the pole and zero locations are modified manually by trial and error until the desired performance is reached. The fast synthesis capabilities of the HP 3562A make this manual adjustment ap-
20AVO OXOvlp Un if
20AVO OXOvlp Un if dB
|
|
|
|
|
A |
|
|
|
|
|
|
|
|
|
|
y \ |
\ |
|
|
|
|
|
|
|
|
|
|
V |
/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Poles And Zeros |
|
|
POLES |
4 |
ZEROS |
2 -716.07B +j 3 |
8308Bk 13107k |
2.20902k+3 1. -168.942 ±j 2. |
10028k 31066k |
|
Time delay= 0 |
.0 S 6ain- |
-6.725m Scale» |
1.0 |
Fig. 11 .By curve fitting the resonance portion ol the response in (a) as shown in (b), the HP 3562A obtains the poles and zeros listed in (c).
proach practical. The table in Fig. 5a lists the pole-zero locations of the designed reconstruction filter. Fig. 5b shows the performance of the filter by itself and Fig. 5c shows the combined system performance. Fig. 5d shows the detailed passband performance of the combined filter and (?in id)/u> system. While not quite optimal, the design is flatter than can be achieved with the 1% resistor and capacitors to be used in the circuit implementation.
Once the circuit is constructed, the actual performance can be measured using the HP 35S2A's measurement facilities (see Fig. fia). Then the curve fitter is asked to find the pole-zero locations actually obtained. Since the zeros of the (sin o))/o> part of the system are known exactly, based oo the system's sample frequency, the first four of these values are entered explicitly in the curve fitter table (Fig. 6b). The curve fitter then considers the entered values to be known constraints on the curve-fit pole-zero locations to he found and it only solves for the unknown pole and zero locations.
Because of component tolerances, stray capacitance, finite op amp bandwidths, and other imperfections, the prototype circuit performance is seldom exactly as designed. The pole-zero locations can be adjusted again, based on the performance achieved in the first-pass design, so that the production filter will be as desired.
A Servo Design Example
As a more advanced example of the use of the HP 3562 A's synthesis and curve fit abilities, consider the task of designing a servo control system. Fig. 7 is a sketch of the prototype of a disc head positioning system. A voltage is applied to an electromagnet attached to the disc head positioning arm,
M: FREQ RESP 10.0
20Avq OJEDvlp Unif
Fxd Y 0
M: FREQ RESP 10.0
20Avq OJEDvlp Unif dB
Fxd Y 0
Phase
-360
20Avg OXOvlp Unit
20Avg OXOvlp Unit
Phase
-360
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fxd Y 0 Hz
Fig. 12. Compensated open loop system response.
and the electro magnetic field generated opposes the static magnetic field of the permanent magnet, causing the positioning arm to move to an equilibrium position. That motion is detected by an accelerometer attached to the arm. We would like to use the information provided by the accelerometer to improve (he response of the positioning arm to the excitation voltage. The accelerometer provides no static dc information on the position of the arm, so an additional position feedback system will ultimately be required for movement at very low frequencies.
Fig. 8a is a plot of the acceleration response of the original system as a function of the frequency ol the applied voltage. The two initial primary problems with this response are the strong resonance at t.8 kHz and a sharp roll-off in the response near dc. Fig, 8b shows the corresponding step response. This is clearly a poor response for a positioning system to have. We need to improve the response using a feedback control system.
Fig. 9 shows a diagram of a typical feedback control system, where G2 is the existing electromechanical system whose performance we would like to improve. G, is a filter to control loop performance, k is a loop gain parameter, and A is a precompensation filter to improve the output response without changing the control loop performance.
As an initial try, close the loop without compensating networks. Set A = 1, G, = 1. and increase k from zero until G2 begins to go unstable. Fig. 10 shows the resulting improvement in the system as k is increased until the system is almost unstable. However, even with very small values of k the system becomes unstable, the response is dominated by a very sharp resonance at 1,8 kHz, and the system
M; SYNTHESIS 0.0
Pole Zero
M; SYNTHESIS 0.0
Pole Zero
|
\ |
|
|
|
|
|
|
|
|
|
|
|
\ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Pole Zero
Phase
-180
Fxd Y 0
4k response is not significantly improved at frequencies below 1.8 kHz. This problem is typical of electromechanical control systems. The pole is caused by the first significant structural resonance of the positioning arm.
As we close the loop by increasing k, the system instability occurs at the frequency where the open-loop phase crosses 180 degrees. With the lBO-degree phase shift, the negative feedback becomes positive feedback, and when k times the magnitude of G2 is greater than one. we have an oscillator (or a broken systeml.
The fundamental problem to solve is to keep the system phase away from 180 degrees for as long as possible, and then to bring the system loop gain belou unity before the phase does go to 180 degrees. A major portion of the phase problem is caused by the resonance at 1.8 kHz and the accompanying antiresonance at 1.2 kHz. We curve fit these two features to find their actual frequencies and dampings (Fig. 11). The poles at ±1.83 kHz and the zeros at ±2.31 kHz found by the curve fitter (Fig. 1 lc) are the actual poles and zeros we are looking for. The others are computational poles and zeros added by the curve fitter to compensate for resonances outside the frequency range the curve fitter examined.
As a first attempt at loop compensation, we place a zero {-95±jl830J on top of the pole location just found, ami place a pole [-170tj2300) on top of the zero found. Fig, 12 shows the resulting compensated open-loop system performance. While smoother, the phase still rolls toward 180 degrees faster than we would like, and there are a number of difficult-to-control resonances around 2.4 kHz. Let's try rolling off the loop gain below 2.4 kHz. but keep the loop gain high at 200 Hz where there is a sharp structural resonance.
Fig. 13 shows the response of an additional G, element we design to meet these loop roll-off goals. This element is a pole pair at 25()±j250 Hz. Unfortunately, this pole pair creates added phase delay, greatly lowering the frequency at which the Gt-G2 system response crosses 180 degrees (Fig. 14). We ask the HP 3562A's curve fitter to find an all-pass phase compensation network to solve this phase problem. Setting the magnitude to unity and curve fitting to the phase response as shown in Fig. 14 gives two poles {-1721.15 and - 300.517) and two zeros (2H7.B0y and 1558.58). To be strictly all-pass, the pole locations
Phase!
-360
Phase!
-360
|
V |
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
|
|
V |
V |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
V |
|
Fig. 13. Response of additional G, element designed to meet loop roll-oft goals
Fig. 14. Phase response with added GI element of Fig 13 This response is curve fitted to help tind parameters for an ail-pass phase compensation network must match the zero locations exactly. We choose Uj -— 300 Hz and u2 — 1600 Hz for the pole-zero locations of our all-pass phase compensation filter. This results in a conditionally stable control loop, but the right choice of k will give a stable response. Fig. 15a shows the table of the total pole-zero locations for the combined G, loop compensation network. With k = 80, the closed-loop system response is as shown in Fig. 15b and Fig. 15c,
The system has greatly improved flatness, hut there are still troublesome system resonances above 3 kHz. Designing a simple precompensation network A with poles at —400ij500 for the overall closed-loop feedback system gives the acceptable system response and corresponding step response shown in Fig. 16.
|
Synthesis
Poles And Zeros POLES 6 ZEROS i |
|
3 300.0
Time delay» 0.0 S Gain= |
-20. OH Scale' 1.0 |
M: FREQ RESP
|
1 1 1 1 Mil |
1 1 M H II |
I 1 II 1 III |
1 1 1 1 1 111 |
|
1 t iitni |
t 1 1 1 IUI |
1 1 1 11 III |
1 1 ...... |
|
1 i 111 in |
1 1 1 1 un |
1 1 1 II III |
1 1 1 1llll |
|
1 1 t II Til |
1 1 1 1 il Ii |
1 1 M 1 III |
1 1 1 1 lilt |
|
I M 1 r en |
_ 1 1 rriin |
""I 1 PNJIf |
1 1 I I 1 III |
|
1 1 1 11 111 |
1 1 1 1 1 1 il 1 |
1 ill 1 Tu |
1 1 1 1 1 III |
|
1 1 1 11 III |
1 1 1 Ulli |
1 i I 111if |
, 1 r 1 11 III |
|
1 1 1 11 III |
1 1 1 11 III |
1 1 II llll |
\ t 1 1 1 nit |
|
.....Ill |
1 1 1 1 1 1 II |
1 1 1 1 1JII |
■ 1 1 } 1 1 *11 |
|
1 1 111 III |
1 1 1 1 11 If |
1 1 M 1 111 |
V 1 linn |
|
1 1 1 1 1 Ml |
■ 1 r 111 m |
1 1 1 1 1 HI |
1 vi |
1 1 till |
|
t 1 1 1 1 III |
1 1 1 M III |
1 1 1 1 Mil |
1 in |
1 11 III |
|
1 t 1 II III |
t 1 1 11 III |
1 1 1 1 Mil |
I l[ |
t 11111 |
|
i r 1 111 h |
T 1 1 1 111I |
1 1 T 1 1 Ml |
1 11 |
1 1 Mil |
|
t 1 1 11 m |
1 1 1 II III |
1 1 1 1 1 III |
1 1 |
Mill |
|
1 1 1 Mill |
1 1 1 111ll |
1 1 1 1 1 III |
1 1 |
1 1 1 III |
|
1 1 1 II III |
1 1 1 11 III |
1 1 1 1 1 III |
1 1 |
II"" |
|
_!.. 1. I.I.I.JH |
1 * 1 • |
-1-1 1 M III |
* 1 |
1 1 hi 11 |
Fxd Y 1 Log Hz 10k
Fxd Y 1 Log Hz 10k
Fig. 16. (a) Acceptable frequency response gained by adding a precompensation network A (b) Corresponding step response.
Fig. 16. (a) Acceptable frequency response gained by adding a precompensation network A (b) Corresponding step response.
Acknowledgments
Many of the HP 3562A's frequency response synthesis, table editing, and display routines were implemented by Bryan Murray. Conversations with Ron Potter clarified many issues in the synthesis table conversion theory.
Log Hz
Fig. 15. (a) Table of poles and zeros for the combined G, loop compensation network (b) Frequency response of closed-loop system, (ej Phase response of closed-loop system Troublesome resonances still exist above 3 kHz
M: FREQ RESP 30.0
Log Hz
M: FREQ RESP 30.0
M: FREQ RESP ISO
Phase
Log Hz
-IB0
Log Hz
Fig. 15. (a) Table of poles and zeros for the combined G, loop compensation network (b) Frequency response of closed-loop system, (ej Phase response of closed-loop system Troublesome resonances still exist above 3 kHz
|
| | | | | | |
Post a comment