Hi all,
Firstly, I hope this is the correct topic type to post under, and if it isn’t, please let me know where I should re-post.
I’m trying to use a MOKU:GO to control a PID loop. My setup is as follows:
-
An incident laser is aimed at the photodiodes through a 50/50 beam splitter.
-
The photodiode outputs are fed into two TIAs which convert the signals to voltage.
-
One of the voltage signals is then fed into the MOKU:GO with TIA+ and GND on one channel and TIA- and GND on the other channel.
-
The incident laser is ran at a moderate drive current, and the setpoint taken for the MOKU:GO control loop
-
The laser is turned down, and the MOKU:GO is then allowed to modulate the laser driver through an applied voltage on the laser driver.
-
The MOKU:GO PI loop is set up with P = +6 dB and a corner frequency of I = 1 kHz. This appears to well-lock the loop with the low amount of laser noise my laser has.
-
I’ve also tried increasing the gain up to P = +14 dB, but any higher gain appears to lead to system instability.
-
-
The differential output of both TIAs are also recorded on two separate channels of a webdaq 904 at a 2 Hz sampling rate for noise analysis.
The thing is that the MOKU:GO seems to think the incident laser / voltage out of TIA1+ is properly locked, but that the Webdaq is giving me a completely different story. Here’s a plot of the same 10 minutes of data taking with the webdaq versus the MOKU:GO:
NOTE: The time in the above graph is actually in seconds, not hours.
Further, I’m trying to get below a specific noise requirement of 10e-5*sqrt(1+5e-4/f)), which this lack of stability is affecting. I wished to embed a few more images in this post with the results of a noise test, but as a new user I can only embed the first image above. Instead, I’ll describe the results:
- The plot X axis is logarithmic in frequency, from 10^-4 to 10^0
- The ploy Y axis is also logarithmic, with units of 1/sqrt(hz)
- The first two traces on the plot are the results of normalizing the signals to their mean and doing a noise analysis. Notably, the individual channel noise results overlap almost exactly beyond 5*10^-4 hz
- The third trace is the noise analysis result of the individual channels’ normalized data ratio. This line is almost exclusively lower than the other two, showing that the covariant noise is much lower than the individual channel noise.
- Finally, while the covariant noise is mostly below the noise requirement line I’m trying to hit, the individual channels don’t meet the requirement until around 0.05 Hz.
The big issue here is that I would expect the in-loop photodiode/TIA1 to have a basically flat noise line, with the idea being to look at the noise of the other detector to get a relative input noise measurement.
I need some help troubleshooting why this instability is present in the Webdaq904 but not the MOKU:GO, and how I can alleviate it to get some better noise values. I’m rather new to noise analysis, so it’s very likely I’ve made some mistake somewhere that others would pick up on quickly, so please don’t be afraid to ask about simple things I may have missed.
After some testing on my end (mostly to make sure I had the correct electrical connections, but please feel free to ask about those as a check), the only thing I can think of that may be causing this is that my low sampling rate in the webdaq904 (2 Hz) may be causing some aliasing with the higher frequency noise which would raise the noise floor even with a well-locked loop. If this is the case, my idea is to introduce a low-pass filter to filter out the higher frequency noise.
Thank you all for any help you can provide!
