User Tools

Site Tools


Stage Cycler

Fig 1

Stage cycler is a .net framework based app developed inhouse by ASI for Stage QC and testing. The program lets user send two serial commands Pos1 [3] and Pos2[3] repeatedly with a set delay in seconds using Delay(sec) [4] or poll the controller for a not busy state with the Busy Poll [7] check box, or both. The app can do this indefinitely or for a set number of cycles specified with the Max Cycles [6] field.

This program works with MS2000, RM2000 and TG-1000 controllers.


With the settings in Fig 1 , the app will move the XY axis by 123.45mm in positive direction. Usually the stage will encounter the upper limit. As the stage is travelling the App will do a busy poll ie query the controller with Command:STATUS until the controller return a N which indicates not busy and stage has finished the Pos1 command. Because the Delay(sec) field is set to 1 , the app waits 1 second before it issues command in Pos2 field. Which makes the controller move the XY axis opposite direction to -123.45mm position. And begins the Busy Poll check again. Then repeats the cycle.

Because the Max Cycles field is set to 50000 , the app does this 50,000 times before stopping.

Controls Explained

  1. WK Com Port , pick the serial comm port the ASI controller is assigned to.
  2. WK baud Rate, pick the controllers baud rate. MS2000 and RM2000 default baud rate is 9600. TG1000 has a fixed baud rate of 115200
  3. Pos1 , first serial command that will get sent.
  4. Delay(sec) , delay in seconds before the Pos2 command is sent. if Busy Poll is checked , the does a busy poll first.
  5. Pos2 , the second command that will get sent.
  6. Max Cycles, total number of times the command Pos1 and Pos2 will get sent. To have the app run indefinitely , set this field to 0.
  7. Busy Poll , when check the app polls the controller with Command:STATUS until the controller return a N which indicates not busy.
  8. The two numbers, indicate the time the app has been cycling, and total number of cycles performed so far.
  9. START and STOP , self explanatory , they start or stop the cycling app.

For Cycling a lot of Axis

On systems where we are cycling a lot of axis, with commands like M X=1234567 Y=1234567…..=1234567 , the controller chokes on the huge string. Use Command:Unit Multiplier to change the units to mm instead of 1/10 microns. Then shorter commands like M X=999 Y=999….=999 can be used, to get around the max command length issue.

Address: 29391 W Enid Rd. Eugene, OR 97402, USA | Phone: +1 (541) 461-8181
stage_cycler.txt · Last modified: 2019/04/18 23:35 (external edit)