Senslogic - Optical System Design

View Original

The Big Picture About Senslogic

This tech talk is about Senslogic and the philosophy behind it. After over two decades in optics, one realization stands out, which is that there is a disconnect between theory and practice. Maybe the joke that “it works in theory” has some merit. Obviously, this is not the case everywhere, but it is so frequently enough.

We have design tools with good predictive capabilities, diffraction theory works, but too often it stops there. A design is done and the people who are supposed to build the system are using small apertures and business cards to align it. Once all elements are in place, the system gets to see “first light” and then starts the slow march toward reaching the expected, or should I rather say “desired” performance because when the tools are millimeter sized apertures and business cards, reaching the target performance in entirely unexpected. Hence, what follows is, if we allow ourselves a euphemism, tweaking.

Enough Tweaking

Why do we tweak? Well, obviously because we want a different result. Sometimes we even tweak because we have to choose between the lesser of two evils. But if there is a time and place for tweaking, that time is during the design phase. If we cannot have it all, this is where we should make the choice. Not on the production floor, not by someone that does not have the input needed to make the choice. Not after all the resources sunk into getting that far into a product.

As mentioned earlier, the predictive power of the tools available to us is really good. There really is no excuse for being ignorant of how an optical system works. We should, when needed, add to that Monte-Carlo methods, or Latin Hypercube Sampling to get a comprehensive view one all the variables affecting a system performance and derive optical specifications instead of opting for the best we can do, or the best we think the market will accept. At Senslogic, the phrase optical system never refers to a lens assembly. Instead, optical system encompasses the entire setup, including the light source, object, image, and performance requirements. All intermediary components are considered derived objects or subsystems.

To return to tweaking, it is here where tweaking should take place. This is the project phase where to make trade-offs, where we have all the sensitivities before our eyes and can make performance trades between subsystems.

Build the Design by Designing the Assembly Process

Please allow a short segue for context. Tennis has funny scoring system, but as you may have suspected, it has something to do with a clock and coming full circle. In the context of tennis scoring, we are now at 30 in this tech talk. Designing the assembly or manufacturing process will go a long way of winning this game of ours, but it’s not the final point.

Nevertheless, it is a huge point. Every piece of an optical system was once a discrete element that eventually found its proper place in an assembly, and if we are the ones responsible for finding its right place, we need tools. This is where the WaveMe Toolbox comes in, to make sure we have the proper tools when building optical systems with discrete optical elements.

BeamNotes

The simplest of the toolboxes that WaveMe provides is the BeamNotes tool, yet, it is probably the one that best captures the spirit of this tech talk. The measurement it does is not bordering on trivial, it is trivial because it’s just a centroid measurement augmented with a few tools to remember positions, easily spot that centering is according to tolerances and pass notes between design and assembly teams. This allows us to put things straight along a laser beam, even though our mechanics is less than perfect, it offers a simple way to achieve accurate optical alignment. In addition, the BeamNotes tool allows the system designer to share his knowledge, in the form of XML files, to guide the assembly process and make sure that for each step, the information can be made available at the time when it is needed. It is an important component for the design the assembly process.

Shack-Hartmann

I understand, the BeamNotes tool is not impressive. However, the Shack-Hartmann tool is. Maybe you already use a SHS (Shack-Hartmann Sensor). How long does it take to get a result? Do you have to align the sensor? If so, how do you align a sensor in a system that is being aligned. This is a Catch 22 that the Shack-Hartmann toolbox in WaveMe solves. Does your sensor require you to define regions for the spots? Most of the tools out there are way to complex for practical assembly work. The time to obtain a single result is in the minute range, or more. This I personally find unacceptable. The time to make a wavefront measurement with WaveMe’s Shack-Hartmann toolbox is literally the time to select the toolox itself from the Toolbox Menu, and most often it is only the time to turn on the program. There is nothing more to do, and there shouldn’t be. No regions of interest, no exposure settings. All automated. You can read about it in the tech talk about calibration. It’s actually pretty neat.

Phase-shifting Interferometry

Element centering and proper collimation will go a long way when assembling optical systems but optical systems are more complex than that. Lenses can be squeezed by mounts, mirrors bent by coatings or mechanics, and lenses can be inserted in the wrong direction. It happens. Earlier, I did try to make the analogy with a game of tennis and the clock metaphor, and this is the process coming full circle. We started with models, found the requirements and designed optics. Laid out a strategy for assembly and provided the tools. But since this is optics, and despite our best efforts there is a final step to be made, a no excuses, no if or buts. Just a pure - this is what it is. This is the final grade for our efforts. Do the models predict the results. Do the assembly instructions give us the same system each time, no matter who builds them. A phase-shifting interferometer will give us the answer. The phase-shifting interferometer in WaveMe is not only accurate, it’s fast too. With a USB3 camera and a fast actuator, 15 wavefronts per second is entirely possible. It is also quite versatile as it allows itself to be controlled by an user-supplied library that can be used to control some other hardware, like an OMEMS or deformable mirror. In order to reach speeds that are limited only by the physical interface of the camera, the phase-shifting tool has to move between synchronous and asynchronous states so that hardware can have the time to react when the rest of system is doing something else.

A point diffraction interferometer is almost always a custom tool but it is not difficult to build. For high-end imaging systems, like for lithography, it will always tell you what you need to know.

Full Circle & Bonus

We have now come full circle. We have the results to feed back to our models or the way we assembly our systems. Imagine having done this a couple of times, tuned the process, learned from the mistakes. After a few turns of this wheel, we will gain enough confidence that already after the modelling process, we will know the product we will have two or three years down the road. The value in that may vary but this is what the learning process provides, but until we have the tools for it, this loop cannot be closed. In the tennis analogy, our game is done, but until the match is won, there is the next game and if we didn’t bring the experiences from the last game to the next, we are likely to repeat whatever mistakes we did then, and our opponent will thank us for it. Let’s not do life too simple for the competition.

A few work before we close this tech talk. The field of optics is huge. It’s difficult to provide one tool for everything, but WaveMe is a flexible tool. The program itself is not much more than a pipeline, a compositor and a modules interface. Modules bring their own user interface and can interact with other modules (or tools). The pipeline and the module interface are an open API. If a tool does not exactly do what you like, it’s not difficult to add one to the pipeline to get the result you are looking for. Anyone can write a WaveMe module and interact with the messages in the pipeline, and to streamline this process, WaveMe comes with open-source templates that can be copied and extended in any way imaginable. This is in fact how all the currently available tools were once developed.

See this gallery in the original post