-
Notifications
You must be signed in to change notification settings - Fork 2
Move Galils Under SECI
Kathryn Baker edited this page Jun 7, 2019
·
9 revisions
The move is undertaken as a state machine, and as such the text below attempts to explain the behaviours
State Name | Actions in State | Condition for next state and Next State |
---|---|---|
Init |
First Call --> Idle New Setpoint --> Send Setup Stop triggered --> Stop Otherwise --> State passed from previous run |
|
Idle |
Send Setup |
|
Send Setup |
corrections = 0 Calculate the setpoint hardware set point = user set point - offset _ user offset, the user set point is coerced to the user max and min if appropriate, and the hardware set point to the soft max and min if appropriate g_sp{axis} = motor steps per unit * hardware set point If stepper motor (If encoder position NaN (Read Encoder Position, "TP" or "RP" based on setup), "PR = 0", "DP = Encoder Readback") Send motor parameters "SP" |
Move call != "" --> Galil Program Check Move Call == "" AND (Dual Position Stage OR (If setpoint > position?forward backlash != 0 : backward backlash != 0)) = True --> Send Setpoint + Backlash Move Call == "" AND (Dual Position Stage OR (If setpoint > position?forward backlash != 0 : backward backlash != 0)) = False --> Set Point
|
Send Setpoint + Backlash |
If Dual Position Stage --> "JG" at Speed, otherwise --> "PT = 1", Setpoint to use = Set Point + moving forward?forward backlash : backward backlash, "PA=Setpoint to use" correction = 0 |
Begin Motion 1 |