This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

OPT9221: Phase sequence programmability for linearity calibration

Part Number: OPT9221


Hi there,

I came across the description in Fig 3 and Tab 11 of www.ti.com/lit/ds/symlink/opt9221.pdf. I was wondering if the phase between the illumination modulation and the sensor demodulation signals, or phq in the figure, can be changed by alternating certain register value? It would be much easier to calibrate phase linearity by sweeping phq in small steps from 0-2pi and measure the phase of a fixed object in the scene. Otherwise, could you advise any approach to ensure calibration accuracy if I use a movable object instead (e.g. placing a whiteboard on a long translation stage)?

Thanks,

Sam 

  • Hello Sam,

    We have received your inquiry about the device OPT9221 and the device applications team will get back to you next week.
  • Artificially adjusting phase would not take into account non-linearity introduced by amplitude of reflection, which can introduce some non-linearity. Moving a white target relative the camera would be a good approach. Sweeping the target over 0-2pi in small increment, then fit data piece-wise linear or cubic spline, then resample the fitted curve and put the values in the linearity registers.
  • Thanks Larry! Does this mean that there is no corresponding register value or variables in voxelsdk that would enable artificial adjustment of phase?

    I have another question regarding changing the modulation frequency mod_freq1 in the register. In my cpp capture code, I tried to modify it from 10 to 70 MHz in 10 MHz step. Raw images of 40-70 MHz all make sense, however when mod_freq1 is smaller than 40, results look identical to that captured under 40 MHz. Would this commit resolve the issue? (github.com/3dtof/voxelsdk/commit/7bb81412c20d0d4e95d13d9dc846a764aff0ae32)

    Best,

    Sam

  • Hi Larry,

    Thanks again for your help. Could you comment on my question in the previous reply?

    Best,

    Sam

  • Nothing to allow artificial padding of illumination delay.

    Yes, should have the latest code.  Are you turning off de-aliasing?

  • Thanks for the confirmation.

    Yes, I have turned off de-aliasing and only tried to modify mod_freq1 in the register. Should I enable de-aliasing and modify mod_freq2 as well if lower freq measurement is desired?
  • Sam

    The github commit you reference may resolve the issue. mod_freq2 is only used in de-aliasing mode.

    -Larry