User Tools

Site Tools


stage_cycler

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
stage_cycler [2017/04/04 23:57]
vik
stage_cycler [2019/04/18 23:35] (current)
Line 1: Line 1:
 +====== Stage Cycler ======
  
 +[{{ ::​stage_cycler.gif |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.
 +
 +===== Example =====
 +
 +
 +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 [[commands:​status|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 Cycle''​s field is set to **50000** , the app does this 50,000 times before stopping. ​
 +
 +
 +===== Controls Explained =====
 +
 +  - WK Com Port , pick the serial comm port the ASI controller is assigned to.
 +  - WK baud Rate, pick the controllers baud rate. MS2000 and RM2000 default baud rate is 9600. TG1000 has a fixed baud rate of 115200
 +  - Pos1 , first serial command that will get sent.  ​
 +  - Delay(sec) , delay in seconds before the Pos2 command is sent. if Busy Poll is checked , the does a busy poll first. ​
 +  - Pos2 , the second command that will get sent. 
 +  - 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**.
 +  - Busy Poll , when check the app polls the controller with [[commands:​status|Command:​STATUS]] until the controller return a **N** which indicates not busy. 
 +  - The two numbers, indicate the time the app has been cycling, and total number of cycles performed so far.
 +  - 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 [[commands:​um|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. ​
 +
 +{{tag>​software}}