ISISComputingGroup / IBEX

Top level repository for IBEX stories
4 stars 2 forks source link

ENGIN-X: Sample Positioning System #2401

Closed kjwoodsISIS closed 6 years ago

kjwoodsISIS commented 7 years ago

As an ENGIN-X scientist, I want to adjust the settings of each of the Sample Positioning System, so that I can control the position and orientation of the sample.

Acceptance Criteria

  1. The GUI must display the current value of each of the following parameters:
    1. X - translation of the sample in a direction parallel to the beam (in the horizontal plane)
    2. Y - translation of the sample in a direction perpendicular to the beam (in the horizontal plane)
    3. Z - translation of the sample in a direction perpendicular to the beam (in the vertical plane)
    4. W (omega) - rotation of the sample about the vertical axis
    5. S (slit rails) - translation of slits (i.e. jaws-3) in a direction parallel to the beam (in the horizontal plane)
  2. I can use a script to query current value of each of the above parameters.
  3. I can use the GUI to set the value of each of the above parameters.
  4. I can use a script to set the value of each of the above parameters.
  5. I must be able to use the jog box to control the position of the sample independently of IBEX.
    1. Any adjustments to the above parameters made using the jog box must be reflected in IBEX.

Notes

  1. The ENGIN-X sample positioning system is controlled by Galil controllers.
  2. ENGIN-X uses a jog box for positioning samples. There is an existing Galil program (i.e. a program that gets loaded into the Galil firmware) for communicating with the jog box. The IOC need to be configured to load this program into the Galil controller.
  3. The Cybaman positioning system is outside the scope of this ticket.
  4. See ENGIN-X Instrument Details for additional information.
Tom-Willemsen commented 7 years ago

Following a long discussion with @John-Holt-Tessella @KathrynBaker and @FreddieAkeroyd we have decided that the best approach to this ticket is to LvDCOM the VI in the short term as there are several (potentially safety-related) complexities to be solved before this can be done in EPICS.

John-Holt-Tessella commented 6 years ago

Use the vi "Galil Remote.vi". Controls to have on OPI:

  1. Pendant active
  2. Light Curtain Active
  3. Emergency Stop Active
  4. Stop all button
  5. In Motion, Position, and SetPoint for x, y, z, omega and S. When set point is set the go button is pressed (lvdcom lets you do this).
Tom-Willemsen commented 6 years ago

Ensure you manually enable controls on the "Galil Remote" vi when testing, otherwise it will appear not to work.

John-Holt-Tessella commented 6 years ago

Please:

Tom-Willemsen commented 6 years ago

Test framework PR at https://github.com/ISISComputingGroup/EPICS-IOC_Test_Framework/pull/18

Have implemented recsim and alarms