Skip to content

Instantly share code, notes, and snippets.

@aleksas
Last active August 27, 2024 11:36
Show Gist options
  • Save aleksas/e764e93894b7945427d594147ea23370 to your computer and use it in GitHub Desktop.
Save aleksas/e764e93894b7945427d594147ea23370 to your computer and use it in GitHub Desktop.
self-mixing-equations.ipynb
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@Kiogora
Copy link

Kiogora commented Aug 14, 2024

Hi Aleksas,

Long time. I just wanted to inform you that I reworked my interferometer project in my free time as I needed to measure Piezo displacement between 40kHz and 300kHz and at low amplitudes less than 6 micrometers. I noticed there were quite some errors in my past project. Please see changes to the self mixing interferometer:

  1. The updated laser diode is the ADL-65052TL from http://laserlands.net
  2. The controller was switched to the Analog discovery 2 (AD2).
  3. I moved to use a simpler modulation scheme using an Opamp and N-channel MOSFET to create a Voltage Controlled Current Source (VCCS). The scheme is briefly illustrated by Norgia here on IEEE Xplore: https://ieeexplore.ieee.org/document/10155245 - Have a look at section V.
  4. The photodiode section is quite standard needing only a trans-impedance amplifier.

Some learning points:

  1. The self-mixing setup is limited by the TIA Gain Bandwidth Product (GBW), you typically need 4MHz GBW Opamp to visualize fringes for a 500Hz motion due to the higher frequency components in the interferometric fringes. My rule of thumb us that you need a TIA bandwidth of 10-20 x the sinusoidal motion frequency of the object.
  2. You require a retroreflector to enable backscattering of as much power into the laser cavity - However, some papers show that self mixing is possible on diffuse targets but in my opinion the signal is below the noise floor. However, I notice general noise from the breadboard, speckle noise from laser and fading effects from the retroreflector show up in my signal. These effects limits the frequency of motion I can detect by raising the noise floor, and therefore not suitable to a KHz piezo.

Currently I am using the S-curve of a Sanyo HD-65 DVD optical pickup. This is based off this work: https://www.youtube.com/watch?v=5bqujaldaCQ that shows that a DVD optical pickup can serve as a MHz level vibrometer - See minute 2:48 in the video. However, the vibrometer FFT off of the pickup is in volts instead of absolute distance.

As FYI, other links showing hacking Optical Pickups is here: http://www.diyouware.com/node/161 and here: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6066758/ .

To calibrate the S-curve, I noticed that the optical pickup also can act as a self-mixing interferometer, and therefore I can calibrate the intensity measured by the pickup photodiode using the monitor diode signal at a low frequency of motion. This would then allow usage till MHz frequencies. I believe this is possible because this research mentions that noise is caused due to back-reflection of power back into the laser cavity (See figure 15(OPUStructure) and figure 18 (Backreflection noise) here https://research-information.bris.ac.uk/files/319227179/Final_PhD_Thesis_FRP.pdf) - Therefore it could work as a self-mixing interferometer also - In principle,

Happy to collaborate more on this research.

@aleksas
Copy link
Author

aleksas commented Aug 15, 2024

I have stopped working on the project 3 years ago due to time shortage. I have managed to reproduce interference steps both with retroreflective tape and from just a white colored wall from ~30-40cm distance. A weaker interference pattern but still very clear visible. If I remember correctly distance estimation was somewhat consistent with theory, but there was a big error margin when calculating using peak count. I have a repo with pcb design and software if you're interested.

@Kiogora
Copy link

Kiogora commented Aug 27, 2024

Thank you for the feedback and insight on your results. Do share

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment