RF,IF attenuators description & switching times
10mar17
Intro
Normal operation
of rf,if attenuators
Attenuator failures
Measuring
the switching times
The IfAttn 2nd
4db attenuator problem.
Turning off
switch verify caused adjustment problems.
Summary
Introduction:
The upstairs if/lo has two sets of
attenuators: rf attens (before the mixer) and if1 attens
(after the mixer). These attenuators go 0 to 11 db in 1 db
steps. Internally the attenuators consist of:
- a 1db attenuator (bit 0)
- a 2 db attenuator (bit 1)
- 2 4db attenuators (bits2,3)
This combination can generate value of 0 thru 11 db. they are
accessed via a 4bit word.
Normal
operation of the attenuators
In normal operation the adjpwrif1() procedure is
used to adjust the upstairs power levels. The sequence is:
- decide the optimum power levels for a receiver/bandwidth
(assuming no rfi..)
- Measure the total power going into the upstairs fiber optic
transmitter using the upstairs power meter (if1mp proc).
- Compute the attenuation needed for polA, polB
- adjust the rf,if attenuator to the values computed above(rf
atten is used first, if we need more atten, use the if atten).
- go back an reread the power level. Loop a maximum of 3 times.
These attenuators are attached to the gpib bus
via the 87130 switch controller. To set an attenuation value the
program will:
- the sequence to set the attenuator values:
- for each attenuator (order rfAttnA, rfAttnB, ifAttnA, ifAttnB)
- decide with attenuator switches must be open (not in
use) and which should be closed (in use)
- Send a gpib command to close the requested switches
- send a gpib command to open the requested switches.
- If the switch table (swTbl87130 array in
~phil/vw/h/if1ProgLibDat.h) has the verify flag set, then the
program will check for any errors after the switch setting.
The 87130 can read back the attenuator sense lines to see if
the switches are in the correct position.
- When finished setting all 4 attenuators, go back in and reread
the power meter.
- In normal operation the rf,if atten switches have the verify
bit set.
Attenuator failures
- 19oct15: the polB if atten switch was failing the verify
test. one of the 4db attenuators was not consistently
switching. These failures were causing the observing gui (cima)
to abort). The IF attenuator is rarely used. A quick fix was to
disable the verify mode for the rf,if attenuators. The if
attenuator was replaced. The verify remained off.
- 12dec16:
We had more troubles with the if polB attenuator. the 2nd 4db
attenuator was not switching. occasionally the 2db attenuators
was not switching. I think the if attenuator was replaced again.
- 2017: sometime in early 2017 i noticed that the ifpolb 2nd 4db
attenuator was not working again (this only appeared when the
sbn receiver needed to use the if attenuator when the 2360 rfi
became very strong).
06mar17:Measuring
the time for 1db steps
On 06mar17 the proc/test/attntm.proc routine
was run to measure how long it took for the attenuators to make
1db steps. The procedure was:
- set attenuator to 0db attenuation
- loop attenval 0 thru 10
- measure power in the IF with the power meter (if1mp)
- set the attenuator to the new value (1db step from current
value)
- measure time when prog returns from setting the attenuator
- loop 10 times
- measure IF power (if1mp)
- measure time when returned from if1mp
- The was done for the rf and if attenuators with the verify
mode off. It was also done with the verify mode on for the rf
attenuator.
The plots show the time for the 1db steps
- The black lines are polA attenuator
- the red lines are the polB attenuator
- the horizontal axis is the time measured from the return of
the switch setting
- the * show when the if1mp power measurement returned
- There are 11sets showing the transition from atten N to atten
N+1
- the lines are power attnN (before switch) - Attn(N+1) after
switch
- So they should show i step down of 1db
- I've also each set by 3 value for display.
- The dashed blue line shows the power before the 1db step.
- Note that the if1mp can take up to 200 ms to measure the
power, so the sampling is not very fast.
- All times are measured after the program returns from setting
the polA and polB atten values
06mar17: 1 db steps with RF
attenuator. switch verify off (.ps) (.pdf)
- This is the rf attenuator (before the first mixer). The times
to switch are 150 to 800 ms.
- You can see the switches being closed and then being opened
(attn 3 to 4 polB)
- It goes below 1db (4db attn inserted) then 1,2 db
attenuators removed.
- polB takes longer than polA
- All steps end up being 1db (if you wait up to .8 secs)
06mar17: 1 db steps with IF
attenuator, switch verify off (.ps) (.pdf)
- This is the IF attenuator (after the first mixer). It take up
to 900 ms to switch.
- the 7 to 8 db step goes up by 4db instead of down by 1db
- This is the 2nd 4db atten switch not being closed correctly.
08mar17: 1 db steps with RF
attenuator, switch verify on (.ps) (.pdf)
- The rf attenuator (before the first mixer) with switch verify
on.
- It takes less that 200 ms to switch.
- It probably takes 10's of ms but the if1mp takes 200 ms.
- The time is measured from after the switch change command
has returned. All verifies have completed.
- I'm not sure whether
- the verify waits for the switch to change.. or
- the verify takes so long, that it includes up to a second of
delay.
The problem
with the 2nd 4db attn of ifattenPolB
On 09mar17 felix inspected the polB IF
attenuator in the dome. He found that the cable that plugged into
the atten card had the pin for the 2nd 4db attenuator bent.
This was causing the atten switch to not close. He fixed the pin
and it now works correctly.
Turning off
verify caused power adj problems
When the adjpwrif1() routine was written, i
timed how long it took for the attenuators to switch. At the
time I saw that they were always switched by the end of the
command to set the attenuator (This was with switch verify on). So
the adjpwrif1 sequence was:
- loop 3
- read power meter (if1mp)
- set new attenuator values
- with no delay, go back to loop
When the switch verify was turned off, adjpwrif1() was not
changed. The caused the following:
- loop 3
- read power meter (if1mp)
- set new attenuator values
- with no delay, go back to loop
- The problem is that the attenuators hadn't switched yet.
- the next power meter reading (if1mp) would see the same
power value, but the program assumed that the attenuation
had already been inserted,.. so it would request more
attenuation
- The routine ended up looping 3 times, and putting in too much
attenuation. So the power levels that were used could be too low
by a few db.
On 09mar17 i put a 1 second delay in the adjpwrif1() routine after
the set attenuator values, and before the next power meter
reading.. this fixed the problem.
Note that the downstairs if2 attenuators are
not driven by and 87130.. so they do not have a verify option. The
adjpwrif2() routine always had a 1 second delay between the
setting of the attenuator and the reading of the power meter.
Summary:
- The problem with the 2nd 4db attenuator of the IFatten was
caused by a bent pin in the communication cable.
- The switching times for the attenuators (when verify is turned
off) can take up to 900ms.
processing : x101/170306/attntm.pro
page
up
home ~phil