Skip to content
Rob Campbell edited this page Jun 6, 2018 · 10 revisions

Motion control

How do I see the status of the the axes?

Run hBT.getStageStatus to get a report on how each axis is set up and other important information.

My PI direct-drive stages are cutting out and/or giving over-current errors

If necessary, set the D terms of the PID loops to zero then at the MikroMove command line run the phase finding command: FPH 1. The axis has to be enabled (i.e. EAX? 1 returns 1) and the servo mode has to be off (SVO? 1 returns 0). You can query the result of the phase-finding operation with FPH?. This should return a positive value. -1 indicates that the phase finding operation failed. If it worked, the new value can be saved to non-volatile memory via the command WPA 100

Once this is done, enable the servo and see if performance improves. If not you could try setting a small positive D term to the position PID loop (e.g. 0.005) but be cautious of going too far as this may increase position noise.

If you have simply knocked the stages and caused the servo to cut out, you can test for this by running the BakingTray command hBT.getStageStatus. If, say, the X axis is listed as disabled you can try enabling it with hBT.xAxis.resetAxis.

Scanning

Is BakingTray scanning software?

No it's not. BakingTray uses external scanning or image acquisition software to obtain images. Currently only ScanImage is supported. BakingTray interacts with ScanImage indirectly via the SIBT class.

Is a custom version of ScanImage needed?

BakingTray interacts with ScanImage via the ScanImage API and requires no modification (see also here).

How does BakingTray use ScanImage?

BakingTray coordinates a tile scan over a sample by triggering ScanImage to acquire a small z stack at each tile X/Y position. The X and Y stages are moved by BakingTray and are not connected to ScanImage. The Z stack is performed using a PIFOC controlled by ScanImage . BakingTray interacts with ScanImage to do the following:

  1. Set the parameters for a fast z-stack
  2. Set the number of reps of this stack
  3. Set up the imaging parameters such as image size, number of microns per optical degree, etc.

The tile scan itself is performed using a callback function in the SIBT class that runs after z stack finishes at a single X/Y position.

Laser control

The laser seems to connect but can't be turned on via the GUI.

As a workaround, try issuing hBT.laser.turnOn at the command line. This may turn on the laser then allow it to be controlled via the GUI. You could also try closing and re-opening the GUI. File an issue if you see behavior such as this. For more info see here.

Clone this wiki locally