Open davidkeymer opened 6 years ago
Do we want a user to use a 4 axis OPI with a 2 axis blade?
Does this ticket relate to #3463? Is it possible for a two-axis OPI to drive a 4-axis IOC? (naively, I would expect that a two-axis OPI could drive a 4-axis IOC - it could just initialise the two unused axes to some suitable values which will never change).
I’d assume that if you set up a 2-axis OPI looking at a 4-axis IOC then the two not being referred to would stay wherever they are or where you put them.
OPIs do not drive IOCs just present the controls and information for display so I wouldn’t expect it to do anything to something it isn’t pointing at.
As a user if I use a 2 set to look at 4 I am confused why I am getting no neutrons (if other jaws are closed). Similarly, if I use a 4 set to look at a 2 it appears that 2 axes are not connected. Either way, I ring the support phone and complain that my jaws don't work. I think the solution is that the jaws db should publish a PV which is JAWS type (MBBI, 4 blades, 2 blades horizontal, 2 blades vertical etc). The OPI should then read this PV and either:
Sorry to expand the ticket better now than later.
When using a 4 axis jaws OPI and only 2 axes are defined, an error occurs and the following stack trace is generated:
2018-10-09 15:07:50 ERROR: Error in on East_Blade.
Traceback (most recent call last):
File "<script>", line 6, in <module>
ZeroDivisionError: float division
2018-10-09 15:07:50 ERROR: Error in on West_Blade.
Traceback (most recent call last):
File "<script>", line 4, in <module>
ZeroDivisionError: float division
It is suspected that as the range of motion of the two undefined axes is zero, when trying to update the image of the blades, the
ZeroDivisionError
occurs.