Skip to content

PI Stage Setup

Rob Campbell edited this page Apr 8, 2019 · 3 revisions

If you are using PI stages, you should ideally optimize their motions using PI MikroMove. The following is a list of things to do, but without detailed instructions.

  • Set the soft limits (min and max positions) for the X and Y axes so that even at the firmware level, stages can't accept out of bounds motion commands that would cause hardware damage.

  • Load the stage with the water bath and fire up the data recorder for each axis. Make steps of the sizes you typically use during tile scanning. Look at the curves. They should settle in under about 150 ms. If the stage position poorly follows the command position then you can try tuning the PID loops (see below). If the command position is changing too quickly, try increasing the speed and acceleration. Ensure that the stages are also able to me large motions (20 or 30 mm) even with the faster speeds. Decrease if not. Remember that in a 1 or 2 mm step you may not reach the maximum speed.

  • You can confirm all is good by imaging pollen grains and moving the stages.

  • Note that with larger step sizes and faster speeds the water in the bath can cause image to oscilate for a short while. If this is problematic: decelerate more gradually, use slower speeds, reduce the water bath volume.

Tuning the PID loops

  • The direct-drive stages have separate loops for position and velocity.
  • Other stages have multiple loops for other purposes. If your tuning changes do nothing, try a different loop.
  • Enable the display of the startup parameters. This will make going back to the original values easier.
  • Set the I and D terms to zero. Set P to a low number (e.g. 10). Perform a step of the size and speed typical of tile scanning.
  • Keep doubling P until you see oscillations, then halve it.
  • Set I to a small number (e.g. 5) and keep doubling it as long as the curve improves. Look for where it settles to a steady state and has reached the target position. Keep going until it oscillates then halve it. If the curve looks good earlier then you don't need to push that far.
  • Tweak D if needed, but otherwise leave at zero.
  • More info here.

Hints and tips

  • Ensure that the stage really is settling as expected. e.g. If you are are planning on moving in 1 mm steps and settling well within, say, 200 ms then make sure that you can successfully issue 1 mm motion steps every 200 ms. Ensure that every so often the stages aren't taking much longer to settle. This can happen and it will really slow down your acquisitions. Tweak PID parameters until this no longer a problem.
Clone this wiki locally