Friday, 2 December 2016

ThorLabs Automatic Mirror Aligner Setup

For a project we are working on we invested in a ThorLabs KPA101 Position Aligner and a very sexy looking piezo actuated mirror mount as well as some other bits and pieces to make it work. Check out the photos below! In any case, we were hoping for an easy setup but it turned out to not be so easy...

This post documents the configuration and my experience with the (very expensive) equipment.

The Equipment:

The piezo actuated (2-axis) mirror mount with beam-splitter and quadrant photodetector in the background.

As you may have noticed from the photos, but we are using the following equipment:
  • KPA101 Position Aligner (basically just 2 PID controllers with photodiode inputs and -10 to +10V outputs)
  • Two KPZ101 Piezo Controllers (one for each axis of the mirror)
  • Polaris K1PZ2 mirror mount
  • PDQ80A Quadrant Photodiode (the controller tries to keep the beam centred on this)
  • Two SMB to BNC cables (ThorLabs provides these with the mount)
  • Two BNC to SMC adaptors (to connect the BNC to the Piezo Controller... more on this below)
  • Two SMA to SMA cables (to connect the aligner to the controllers)
  • Power supplies
Irritatingly, after we bought all the bits, at no insignificant expense, we found that although ThorLabs supplies cables, for some random reason the HV out on the Piezo Controllers is actually a fairly exotic SMC connector! There was no mention of the fact that one would need an adaptor by default to make this work (yes, we should have realised... before we were in the lab hooking it up). The adaptor is around $50 which is pretty steep, although we found one at Farnell/RS/Mouser for less and so we bought two there instead.

The Configuration:

We were hoping that everything would be relatively "plug and play" but unfortunately this wasn't the case.

The outputs of the position aligner PID controller are bipolar, -10 to +10V, proportional to how far the mirror should move on each axis to get the beam centred on the detector. Of course, centred means that the optical intensity in each quadrant is equal so one should ensure the beam is symmetrical. A fairly simple mechanism which one could achieve with an Arduino and some trans-impedance amplifiers if time was of no importance ;)

The outputs simply hook up to the piezo controllers. This is where the problem comes in. IMO the product managers at ThorLabs need to seriously rethink at this: the inputs of the piezo controllers are 0 to 10V. See the issue? There is no easy way to get a 5V offset, or to force the position aligner to output 0 to 10V centred on 5V, or some other compromise to make it work well. Basically, the beam can be controlled to move down and left. Right and up would also be handy, right? Well... the controller outputs a negative voltage for that, and the controllers don't know what to do with a negative voltage.

Our solution (for now) is to make sure the beam starts of slightly misaligned in tho top right quadrant on the detector so that there is an approximately 5V artificial bias on things. This way when there is some wobble, there is some range to correct in any direction.

For reference, these are the settings we used:

The top image is the open loop "default" config where we have set the inputs of the controllers to be from the external SMA which is fed by the aligner. Notice how the beam is initially positioned in the top right quadrant. Below, the beam is well centred by the controller at about 5V.
The position aligners PID settings are controllable from the PC application via USB. The defaults worked, but the control was very slow but stable. We are hoping to use the system for tip-tilt correction in a free space comms link and so we need it to be quite fast. We settled on the following values: P=1.0, I = 0.5, D = 0.5. This seems to be stable with no overshoot or oscillation that is significant to our application. I'm sure it can be improved upon. I will update this post if I do so.

We also set the y direction to be reversed since the input from the quadrant photodiode is reversed. This is documented by ThorLabs.


All in all, the controller seems to work well. There are some irritations when using it and the initial alignment in a system will be quite difficult because of the fact that negative control outputs don't work. With my custom PID settings the beam converges to the centre from the position shown in the photo above in half a second or so. Hopefully this works for our application!

No comments:

Post a Comment

Home Assistant + Node-RED with BTRFS on Arch

After using Home Assistant for a few months and having set it up to use external MySQL databases, etc. I have decided to re-install in a rob...