You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

Records from xip.template

The below records are in addition to the normal ims motor records

  •  $(MOTOR):SE
    • Reads Se from Mcode
    • Pulse picking mode select
  • $(MOTOR):SET_SE
    • Writes Se to Mcode, values 0 to 100 are allowed
    • Pulse picking mode select
  • $(MOTOR):MCODE:INIT
    • Sends a hard reset to the Mcode
    • Sets Se to 99
    • Executes program 1
  • $(MOTOR):RESET_PG
    • Hard reset of Mcode software
    • Set :RESET_FLAG to 0
    • Set :SET_SE to 5(close)
    • Turn off :DF scanning
    • Set :SET_SE to 0
    • Set :EXE_PG to 1 (Execute program 1)
    • Read :SE_L (Mode Select)
  • $(MOTOR):SD_L
    • Raw Mcode status number
  • $(MOTOR):SD
    • Mcode status string
      *
  • $(MOTOR):RUN_ONESHOT
    • Runs One Shot mode
    • Sets SET_SE to 1
    • Turns output 4 on
  • $(MOTOR):UPDATE_ALL
    • Updates all Mcode parameters for the pulse picker
  • $(MOTOR):UPDATE_STATUS
    • Updates specific mcode parameters
    • They include MV, P, C1, C2, I1, I2
  • $(MOTOR):S_OPEN
    • Moves shutter to open position
    • Sets Se to 4
    • Reads Se from Mcode
    • Reads Ad from Mcode
  • $(MOTOR):S_CLOSE
    • Moves shutter to close position
    • Sets Se to 5
    • Reads Se from Mcode
    • Reads Ad from Mcode
  • $(MOTOR):ULV
    • Upper Limit Violation in raw motor counts
    • On I/O Intr, looks for "ULV=<counts>" sting
    • Waiting for interruption from Mcode if upper limit is violated
    • Process UD, #########TODO: Find what UD is
  • $(MOTOR):LLV
    • Lower Limit Violation in raw motor counts
    • On I/O Intr, looks for "LLV=<counts>" sting
    • Waiting for inturption from Mcode if lower limit is violated
    • Process UD, #########TODO: Find what LD is
  • $(MOTOR):S_POS_CLOSE
    • Last reported close position
    • On I/O Intr, looks for "CLOSE=<counts>" string
  • $(MOTOR):S_POS_OPEN
    • Last reported open position
    • On I/O Intr, looks for "OPEN=<counts>" string
  • $(MOTOR):PLUS_DEGREES
    • Conversion of N1 from motor counts to degrees
    • ##########TODO: find what N1 is
  • $(MOTOR):MINUS_DEGREES
    • Conversion of N2 from motor counts to degrees
    • ###########TODO: Find what N2 is
  • $(MOTOR):PLUS_DEGREE_CNTS
    • Conversion of N3 from encoder counts to degrees
    • ###################TODO: find what N3 is
  • $(MOTOR):MINUS_DEGREES_CNTS
    • Conversion of N4 from encoder counts to degrees
    • ###############TODO: find what N4 is
  • $(MOTOR):DEADBAND_DEGREES
    • Conversion of Sd from encoder counts to degrees
    • ###### Currently Sd is save deadband, and Karl is planning on using it as a status indicator.
  • $(MOTOR):SETUP_30HZ
    • Write parameters to motor for 30Hz operation
    • Sets A, D, VI, VM to $(LOC):30HZ:<A ... VM>:01
    • Sets A, D, VI, VM to $(LOC):30HZ:<A ... VM>:02
    • ###############TODO: unsure of why values need to be set to 02 after being set to 01, Also these settings from epics may not be needed
  • $(MOTOR):SETUP_60HZ
    • Sets A, D, VI to $(LOC):60HZ:<A ... VI>:01
    • Sets A, D, VI to $(LOC):60HZ:<A ... VI>:02
    • Sets A, D, VI to $(LOC):60HZ:<A ... VI>:03
    • Sets A, D, VI to $(LOC):60HZ:<A ... VI>:04
    • Sets A, D, VI to $(LOC):60HZ:<A ... VI>:05
    • Sets A, D, VI to $(LOC):60HZ:<A ... VI>:06
    • Sets VI to $(LOC):50HX:VI:07
    • Sets VI to $(LOC):50HX:VI:08
    • ###############TODO: unsure of why values need to be set to 02 after being set to 01, Also these settings from epics may not be needed
  • No labels