Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Signal state change to 50 (Fast close init)
  • Load fast close speeds
  • If neither at position P1 (positive closed) nor at position P2 (negative closed), then
    • Move (MA) to the positive closed position (P1)
    • If error checking is enabled (Ec=1), check drift at previous, assumed negative closed position (call X8)
    • Hold until movement complete
    • Set Df=1 to indicate that slits are in positive closed position
    • Copy current encoder count to Cs for future drift checks
  • EndIf
  • Signal state change to 51 (Fast close complete)
  • Goto mode select

Subroutines

Drift Check at Positive Closed Position (X8)

  • If Df==1 (position is positive closed position), then
    • Let Dr=N1-Cs, such that Dr is positive if the motor is slipping (missing steps while travelling in the positive direction)
    • If Dr >= Dl (drift limit), then
      • Set Ld=1, indicating a drift limit violation in the negative direction
    • EndIf
  • EndIf
  • Return

Drift Check at Negative Closed Position (X9)

  • If Df==-1 (position is negative closed position), then
    • Let Dr=Cs-N2, such that Dr is positive if the motor is slipping (missing steps while traveling in the negative direction)
    • If Df >= Dl (drift limit), then
      • Set Ud=1, indicating a drift limit violation in the negative direction
    • EndIf
  • EndIf
  • Return

Mode/State Tables

Se - Mode Select

...