lband narrow filter bank
note:this tuneable filter bank was replaced by
a filterbank with a fixed set of filters. The page is left for historical
A filter bank has been built for the lband narrow receiver. It contains
2 (1 for each polarization) by 4 separate filters that are switch
able via the computer.
filter 1 is a motor driven tuneable filter covering 1000 to 2000 Mhz with
a 2% bandwidth.
filter 2 is a ???
filter 3 is a ???
filter 4 is a spare with nothing installed.
The tuneable filter setup:
There are two tuneable filters (one for each polarization). The following
discussion applies to each of these individually.
The filter is driven by a start/stop motor. A potentiometer
attached to the filter axis monitors the current position of the filter.
An hp34907 dac generates a voltage that corresponds to the requested frequency.
Inside the filter chassis this voltage is compared with the current voltage
of the potentiometer. If the voltage difference is greater than 22 milliVolts
then the motor is turned on and moves at a constant velocity. When the
difference drops below 22 milliVolts the motor is turned off. A separate
bit is available to disable the motor independently of the pot voltage.
The user can read back the current voltage of the potentiometer using the
hp34907 to tell when the filter has arrived on frequency.
The system is calibrated using the Tcl procedure lbnfbcal (under proc/diag/lbnfbtst.proc).
It steps the filter from 1000 to 2000 Mhz in 25 Mhz steps. At each filter
step the following occurs:
After the data is taken there will be 13 measurements at each of 41 different
filter positions. The idl routine lbnfbcal (idl/test/lbnfbcal.pro) is then
used to analyze the data. It will:
setup the correlator to integrate over a 50 Mhz band for 1 second.
step the if/lo from -30 Mhz to +30 Mhz in 5 Mhz steps about the expected
frequency of the filter. At each if/lo step take one seconds worth of data.
For this procedure to work you need to bootstrap the voltage(freq)
relation to be within 30 Mhz of the correct value. This can be done by
measuring a few points between 1000 and 2000 Mhz using the requested voltage
and the frequency as read out on the spectrum analyzer. The polynomial
is then entered into the program if1Prog.c
For each filter position it computes the total power at the 13 if/lo steps.
It then fits a 2nd order polynomial and finds the frequency of the maximum.
You now have 41 requested voltages and measured frequencies going from
1000 to 2000 Mhz. Fit a fourth order polynomial to the requestedVoltage(measuredFrequency).
This polynomial is then used to position the filter. The form of the polynomial
volt(x)=a0 + a1*x+a2*x^2 + a3*x^3 +a4*x^4
Initial calibration attempts were hampered by a potentiometer that was
overly sensitive to temperature (it was replaced). The voltage to
frequency mapping came to about 1.5 milliVolts per Mhz. The calibration
the results of the calibration:
The 4th order fit had large residuals (> 20 Mhz) when fit over the 1000
to 2000 Mhz range. Since the lband narrow system operates 1200 to 1600
Mhz, the fit was narrowed to the receiver frequency range (rather than
covering the entire range of the filter).
The start/stop motor has a built in hysterisis. Moving from freq1 -> freq2
(with freq1 < freq2) will leave the filter in a different
position than moving from freq3 -> freq2 (freq3 > freq2). This difference
is up to 4 Mhz.
The hp34907 reads back the potentiometer voltage to tell when the filter
is on position. The read back varies by up to 10 milliVolts from the requested
Repeatability. The filters were stepped between 1200 to 1600 Mhz in +25Mhz,-25Mhz,+50Mhz,-50Mhz,
and 100Mhz steps.This entire sequence was repeated 4 times. The voltage
readout of the pot showed the directional hysterisis (offset between +
and - steps) and the repeatability of the positioning (as seen by the spread
of the values).
Figure 1 shows the voltage(freq) curve for 1000 to 2000 Mhz. Black is polA
and red is polB. The middle plot shows the fit residuals in volts. The
bottom plot shows the fit residuals in Mhz (using the derivative of the
polynomial). A fourth order fit does not work very well over this range
of the data.
Figure 2 fits the volt(freq) function for 1200 to 1600 Mhz (the range
of the lbn receiver). This fit was done on 03jun01. It will be used to
control the device.
Figure 3. On 10jun01 the positioning test was repeated 3 times using the
fit from 03jun01 (fig 2). The plots show the difference between the
measured center frequency and the requested center frequency (using the
fit from 03jun01 1200-1600 Mhz to position the filter). Each test was separated
by about 30 minutes. The agreement between the 3 runs was good. There is
an offset of up to 8 Mhz in the measured values from the fit measured 7
Figure 4. On 09 june 01 the filters were stepped from 1200 to 1600 Mhz
using +25, -25, +50,-50, and 100 Mhz steps. The plot shows the difference
between the requested and measured voltages. The positive steps all
have an offset of about- .014 volts. The negative steps are centered at
-.021 volts and have more scatter. The hysterisis in direction is
.007 volts. Part of the offset is the error in the requested versus
read back voltage. For positioning purposes it is probably better to always
approach the requested frequency from a smaller frequency. It does not
look like it matters how far you want to move (as long as you are more
than 22 milliVolts from the current position).
online routines to control the filterbank: lbnfb in /home/online/Tcl/Proc/lbnfb.proc
online routines to calibrate the motor driven filter: lbnfbcal in /home/online/Tcl/proc/diag/lbnfbtst.proc
idl routines to process the calibration data: ~phil/idl/test/lfnfbcal.proc.
help routines: helpdt lbnfb
The actual filter coefficients are in : vw/datatk/if1/if1Prog.c routine
. After computing the new coefficients, add them to the routine lnbFbFreqToVolts()
in this file.