Difference between revisions of "Integral clamp"

From MCEWiki
(Commands and Usage)
(Commands and Usage)
Line 19: Line 19:
  
 
* Typical flx_quanta and i_coeff Values
 
* Typical flx_quanta and i_coeff Values
ACT
+
{| border="1"
SCUBA-2
+
|-
CLOVER
+
! Telescope !! Flux Quanta !! I Coefficient !! i_clamp_val
BICEP
+
|-
SPIDER
+
| ACT || 6500 || 480 || ?
 +
|-
 +
| SPIDER || 9500 || 50 || ?
 +
|-
 +
| SCUBA-2 || 6500 || 2024 || ?
 +
|}
  
 
   -----------------------------------------------------------------------------
 
   -----------------------------------------------------------------------------

Revision as of 20:47, 20 January 2010

This feature was implemented in an effort to eliminate the effects of unlocked and ramping pixels on locked pixels on an array. It is currently available in Readout Card rev. 5.0.9.

Introduction

  • Typically, the dominant term in the MCE's PID-loop calculation is the accumulated integral. When the operating environment changes, it is possible that some pixels that were locked before can no longer. When this occurs, the integral-term in the PID-loop calculation grows linearly in time until it wraps. Because the FSFB affects the ground-plane level, a large change in the FSFB (i.e. wrapping) causes a considerable level shift in healthy pixels as well.
  • Often, these unlocked/ ramping pixels are caught, but only after they ruin observing data. At that time, they are turned off manually, usually by setting p_coeff = i_coeff = d_coeff = 0.
  • The goal of the FSFB clamping feature is to stop pixels from ramping at all by clamping them at a user-specified value. If their absolute value exceeds this value, then they are then clamped. In this way, unlocked pixels no longer affect the rest of the array after they have reached that value.

Commands and Usage

  • The i_clamp_val command specifies the maximum value of the integral term (before it is multiplied by the integral coefficient.) This register specifies the positive and negative value that, when exceeded, the integral term is clamped at. This prevents unlocked pixels from wrapping continuously in lock mode. The value of this register will be different for each experiment and depends on the range of the integral term. The range is determined by the integral coefficient (i_coeff,) and flux-quanta size (flx_quanta) -- assuming that flux-jumping is enabled. The formula for determining an appropriate value is:
i_coeff_range  =  {[2^20] * [flx_quanta]} / [i_coeff]    // flux-jumping ENABLED
i_coeff_range  =  // flux-jumping DISABLED
i_clamp_val    =  (0.9)*(i_coeff_range)
  • No matter how large the calculated value is, it must still allow for a reasonable margin between it and the wrap-point of the I-term. If the margin is too small, then calculated values of the I-term will wrap anyway when the I-term value does not fall between i_clamp_val< I-term < i_term_max.
  • Usage:
wb rc1 i_clamp_val 45000000 //Typical for ACT: (0.9)*(2^20)*(6200)/128
  • Typical flx_quanta and i_coeff Values
Telescope Flux Quanta I Coefficient i_clamp_val
ACT 6500 480 ?
SPIDER 9500 50 ?
SCUBA-2 6500 2024 ?
 -----------------------------------------------------------------------------
 -- I-Term Magnitudes:
 -----------------------------------------------------------------------------
 -- This is where the clamp needs to be to prevent wrapping.
 -- The reasoning for this is that a clamp any later in the chain will not prevent the I term from wrapping and causing a whiplash effect
 -- Since a large FSFB is due to a ramping I term, the I term is the most important thing to be clamped; The P & D terms less so.
 -- However, since we want to avoid small-scale fluctuations in the FSFB once the I term is clamped, we should also clamp the P and D terms to zero.
 -- The way to do this is to check for an I term above/below a certain threshold, and if that happens, clamp to a fixed value above/below those thresholds
 -- That way, the integral term gets frozen until a flx_lp_init command clears the pipeline.
 -- Caltech: MAX_INTEGRAL ~ MAX_FJ_VAL/I_COEFF = (2^32-1)/50   = 2^25.2
 -- ACT:     MAX_INTEGRAL ~ MAX_FJ_VAL/I_COEFF = (2^31-1)/480  = 2^21.0
 -- SCUBA2:  MAX_INTEGRAL ~ MAX_FJ_VAL/I_COEFF = (2^31-1)/2024 = 2^19.1
 -- The SCUBA2 system allows for the least range in the I term, and Caltech the most.  
 -- i_clamp_val_i is the value to look at.
 -----------------------------------------------------------------------------