ISISComputingGroup / IBEX

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

MERLIN: Migrate to IBEX #2354

Closed kjwoodsISIS closed 6 years ago

kjwoodsISIS commented 7 years ago

As an instrument scientist, I would like to migrate MERLIN to use the IBEX instrument control system.

Acceptance Criteria

  1. IBEX is installed on MERLIN
  2. Configuration files matching the current SECI config files are created
  3. IBEX is configured for the devices on MERLIN.
  4. MERLIN scripts are converted to genie_python
  5. MERLIN scientists are trained in how to use IBEX
  6. IBEX is tested on MERLIN

Notes

  1. The devices on MERLIN are listed on the MERLIN Instrument Details list
  2. The following tickets should be implemented prior to deploying IBEX on MERLIN
    • [x] #2347
    • [x] #2355
    • [x] #2357
    • [x] #2358
    • [x] #2360
    • [x] #2361
    • [x] #2362
    • [ ] #2507
    • [x] #2529
  3. Use the Migrate-an-Instrument-Control-PC page to guide you through the migration process. The following activities need to be completed as part of the migration process:
    • [x] Ask Facilities IT (Anthony Shuttle) to create a private network for MERLIN. This is required so that we can use TCP/IP to communicate with the Galils. Facilities IT will need notice of about 4-6 weeks.
      • 27/07/2017: Confirmed by Anthony; scheduled to happen mid-August.
    • [x] Check that NDXMERLIN has sufficient disk space to install IBEX
      • C: drive - Total: 126.00 GB, Free: 89.9 GB on 26/07/2017.
      • Fresh install of IBEX requires 16.0GB + 20GB growth room. 89.9GB free is sufficient space.
    • [x] Check whether MERLIN uses 5- or 8- digit run-numbers
      • [ ] MERLIN uses 5-digit run-numbers; upgrade the ICP program (to permit 8-digit run-numbers)
    • [ ] Create a virtual instrument for testing purposes
      • [ ] Set up a test system, say, NDXMERLINTEST.
      • [ ] create IBEX configurations to correspond to their SECI equivalents
      • [ ] create genie-python scripts to correspond to their Open-Genie equivalents
      • [ ] test these configurations & scripts
      • [ ] check that all the devices previously supported by SECI (on MERLIN) are supported by IBEX
    • [ ] arrange one or more training sessions with the scientists to help them understand how to use IBEX
      • [ ] demonstrate the configurations & scripts (created above) to the instrument scientists and check that they are happy with the migrated configurations & scripts
kjwoodsISIS commented 6 years ago

On 26/07/2017 MERLIN had the following local disk space:

AdrianPotter commented 6 years ago

The current McLennan driver was tested using a model PM304. As far as I know, the McLennans encountered on other machines have been the same model. The driver does theoretically support the PM600 that's on MERLIN, and without any different setup on our part, but I don't know whether it's ever been tested.

kjwoodsISIS commented 6 years ago

@AdrianPotter : I doubt that we have previously (knowingly) encountered a PM600, so we probably haven't tested on a PM600. Therefore, I think we ought to test the McLennan driver on MERLIN asap.

AdrianPotter commented 6 years ago

Having discussed with David, my previous assertion was wrong. We've used lots of PM600s before, and is in fact most common, so this shouldn't be an issue

AdrianPotter commented 6 years ago

The basic migration has been completed. There are a number of outstanding issues I'm working on:

kjwoodsISIS commented 6 years ago

@AdrianPotter:

  1. The network on MERLIN is being re-configured as a private network in anticipation of the communications with Galils being done over TCP/IP.
  2. The phrase "old FORTRAN executable" screams risk at me ;-). We should discuss this with the scientists, to discover how well they understand the original source code.
AdrianPotter commented 6 years ago
  1. Ah yes, I see now you've already discussed that in an earlier comment, thanks. I'll tick it off the list.

  2. I've confirmed that it can be executed without issue from Python script, so the behaviour should be unchanged from Open Genie. I completely agree though, it's a 3rd party component that we should do our best to either understand or better yet, eliminate. The executable seems hard coded to write to a location in LabView Modules so it will stop working once SECI is no longer used (unless we put in a nasty Python hack to trick it).

AdrianPotter commented 6 years ago

Impeded awaiting:

AdrianPotter commented 6 years ago

Ticket #2529 was a duplicate of #2361 which is already complete, although one of the controls hadn't had manager mode applied. I've submitted a patch and am awaiting an updated Jenkins build

kjwoodsISIS commented 6 years ago

@AdrianPotter : now that we can call the old FORTRAN executable (that sets the tcb parameters) from genie_python, this ticket should no longer be impeded. Of course, we still want to track down the original FORTRAN source code, but that can happen independently of this ticket.

AdrianPotter commented 6 years ago

Yes. Still no word from Toby