lband narrow filter bank

14jun01

     note:this tuneable filter bank was replaced by a filterbank with a fixed set of filters. The page is left for historical purposes.

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:

    1. setup the correlator to integrate over a 50 Mhz band for 1 second.
    2. 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.
    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:
    1. 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.
    2. 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 is:
      1. x=(freqMhz-1000.)/1000.
        volt(x)=a0 + a1*x+a2*x^2 + a3*x^3 +a4*x^4
    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

    The calibration:

    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 issues were: The figures show the results of the calibration:
    1. 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.
    2. 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.
    3. 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 days before.
    4. 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).

    Software:

  •  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.
  • processing: x101/010604/doit.pro
     home_~phil