APS-2BM-MIC / ipython-user2bmb

ipython configurations for the tomography instrument
2 stars 5 forks source link

create PV to inform which instrument can use the beam #55

Closed prjemian closed 5 years ago

prjemian commented 5 years ago

Per comments in https://github.com/APS-2BM-MIC/ipython-user2bmb/issues/53#issuecomment-439650986, add a PV to the beam line so the instrument team can indicate (for use by client software) which station, if any, is using the beam.

Bluesky can monitor this PV with an ophyd signal and configure itself to use certain PVs or to simulate them based on its value. It can also monitor this PV and suspend progress of a plan if the value changes from the startup value.

Other clients could add such code as well. For now, we ignore them and expect they will continue operations as they always have.

prjemian commented 5 years ago

Typically, this PV would be hosted in the IOC of a shared optics station at the beam line. 2-BM does not have such a station, just separate IOCs for each instrument. It would not be appropriate to host this PV in either.

It is possible to create a softIoc for just this one PV but easier to add it to the database for another existing softIoc, such as #54. This PV will be added after the work of #54 is completed.

prjemian commented 5 years ago

example

user2bmb@lyra ~/.../startup/ioc2bmbmona $ caget 2bm:instrument_in_use
2bm:instrument_in_use          none
user2bmb@lyra ~/.../startup/ioc2bmbmona $ caput 2bm:instrument_in_use 1
Old : 2bm:instrument_in_use          none
New : 2bm:instrument_in_use          2-BM-A
user2bmb@lyra ~/.../startup/ioc2bmbmona $ caput 2bm:instrument_in_use 2
Old : 2bm:instrument_in_use          2-BM-A
New : 2bm:instrument_in_use          2-BM-B
user2bmb@lyra ~/.../startup/ioc2bmbmona $ caput 2bm:instrument_in_use 3
Warning: enum index value '3' may be too large.
Old : 2bm:instrument_in_use          2-BM-B
New : 2bm:instrument_in_use          
user2bmb@lyra ~/.../startup/ioc2bmbmona $ caput 2bm:instrument_in_use 0
Old : 2bm:instrument_in_use          
New : 2bm:instrument_in_use          none