I am considering of a redesign of the so far existing but limited input signal mixing for feedback source:
A new input configuration is proposed (note, the nomenclature "AIC" is historical of the SR hardware, but still used to refer to ADC/DAC0..8):
Sources transformation(s) Flag Level/Gain for "Fuzzy-Mix"
AIC_IN(0) --> I --> [log-trafo option] --x--> [L/G] -----+\ SetPt
AIC_IN(1) --> df -----------------------------x--> [L/G] -----+ ( SUM ) |
AIC_IN(2) --> g -----------------------------x--> [L/G] -----+ ( w SAT ) ==> FB
AIC_IN(3) --> X -----------------------------x--> [L/G] -----+/
SetPt := Sum_i of SetPt_i * Gain_i [i=0..3]
I,df,g,x are input sources. (I=current, df = freq. shift or force signal, g = gamma/damping, x = auxiliary signal)
Level is for determining if source is relevant (can be lower cut-off) and gain for weighing the sources. Flag may be used to exclude sources fully. A new "for all" Setpoint is computed as it derives from the weighs.
FB is the feedback algorithm with CP/CI as usual.
Any further suggestions?
I am not using the fuzzy mixing but a more genereal interface might be a good idea. So the first question is why do you want to limit it to four sources? I know that mixing more than two is not trivial but you might have more standard channels (dI, ddI [from external lock in], lateral force, ...). So one might think of new assigment of the input channels which might be helpfull also for spectroscopy and quick changing between AFM and STM mode. You can just keep the cables wired and change the feedback option in GXSM or on the DSP. For now the normal feedback runs only on AIC5. By using the fuzzy mixing one can easily switch between modes.
I think you may not need the additional flag to switch a channel totally off - gain 0 might do the same job unless an if-statement is faster.
What do you mean by "w SAT"? Does it mean with saturation? In this case, it might be possible to crash the tip by using the wrong range for the set point. At least there had to be a warning for being out of range.
Is there any meaningful normalization of FB? By adding to the tunneling current (eg 1) another signal of the same magnitude (eg. also 1) you get as FB-signal 2. At least if you change the tunneling current you also have to readjust CP/CI. In that case you would have to define a "standard level" for each channel which gives a equal response to the feedback.
yes SAT=saturation -- the best choice we have to prevent bad things. You will be able to life monitor the "virtual" feedback mix signal ... -- so the plan ;-)
No need for standard gain, but gain should be between -1 and 1 unless some boost is needed for what so ever reason. -- This is because I compute the "virtual" setpoint as sum of all separate setpoints scaled with the gains. I guess I take the abs of gains for this, as a negative gain I expect only be for signal signum adjustments -- or do you see any reason for canceling out signals -- sounds terrifying and unstable to me?
Right, "OFF" is and will be identical with gain = 0, no needs for any further if else etc...
BUT -- I intend on the GUI side only (GXSM-HwI) to have a pulldown with:
for all input four sources (do you really foresee a reasonable need for more than 4???).
This way you can select OFF -- GXSM will set the gain on the DSP to ZERO -- and for convenience you can keep your GAIN number unchanged. OK?
Z data will be Float for GXSM soon. It is 16 (native) + 16 (digits from sigma-delta-style oversampling of variable length/width) -- i.e. 32bit number will go to GXSM and transformed into float, i.e. the Z-DAC 16bits are +/-32767 and the what so ever length of resolution enhancements will go into decimals -- this way everything stays unchanged with units Ang/DAC, etc... and makes it most transparent for any future enhancements :-)
Also I plan to use DSP level oversampling/res enhancements of and XY -- but only "invisible" on DSP level -- GXSM do not really need to know so far. Things are just getting incredibly smooth.
Sign up for the SourceForge newsletter:
You seem to have CSS turned off.
Please don't fill out this field.