Skip to main content

Is there a way to include minimum increment values to the compensator when performing tolerancing analysis, such that the compensator can only have a discrete number of values equally spaced within its range? I would like to simulate what effect the displacement resolution a piezo or stepper motor has when implementing these devices as a compensator in a physical experimental setup.





Thank you.

Hi Vincent,



Interesting question! Unfortunately, I don't think these is a way to do this. The compensators function the same way as variables in tolerancing optimization. The current optimization algorithm, DLS or Orthogonal Descent in OpticStudio explores the solution space in a continuous manner. I understand the application where you have a step motor so the compensator adjustment may not be continuous in real life, but I don't think there is an easy way to model this discrete behavior of the compensator during tolerancing. 



Best regards,



Hui


Hi Vincent,



Funnily enough I was talking to a friend about this the other day and may have come up with a way to do this. I haven't actually tried it out myself, mind, but I think it should work.



Imagine you have a back focus compensator which can only take its value out of a specific set of values (my friend was using shims for her adjustment). Insert a new dummy surface at the image surface, with a thickness of 0, and give it the comment SHIM or similar. It should not have any effect on the nominal system performance.



Now create a macro called SHIM.ZPL. Is should have a single line in it right now:



SOLVERETURN 0



Attach this macro to the thickness of your SHIM surface using a Macro solve. Now you have a macro that returns the value 0, and which still has no effect on the nominal performance.



This macro can then use a single merit function operand to evaluate system performance (like RSCE for RMS Spot, RWCE for wavelength, or MTFA etc). The macro evaluates the perfromance for the current system, and then either increases or decreases this value using only the allowed values to find whatever thickness value the best performance occurs at. It then SOLVERETURNs this value to the LDE.



Worth trying I think, but note I haven't actually done it: it's just an idea 😎


Another way is to generate Monte-Carlo files and round the back focal length to the your piezo step.


Reply