DiamondLightSource / DiamondLightSource/i19-bluesky
Get pin tip from ophyd device
- Dominant language
- Python
- Stars
- 1
- Forks
- 0
- Avg merge
- 12h 23m
- Merged PRs (30d)
- 2
Description
Issues with i19's OAV(s) have meant that it has had to be converted to K8s. This has broken the pin tip detection code in the IOC. We should be able to instead use the pin tip detection in the `ophyd-async` device.
To do this we will need to:
* Add two `PinTipDetection` (https://github.com/DiamondLightSource/dodal/blob/dc0d8edea5ff4150d18a6be8f9a092468e43eec5/src/dodal/devices/oav/pin_image_recognition/__init__.py#L32) and `OAVBeamCentrePV` (https://github.com/DiamondLightSource/dodal/blob/dc0d8edea5ff4150d18a6be8f9a092468e43eec5/src/dodal/devices/oav/oav_detector.py#L300) devices (one for each OAV) to `i19_1.py` and confirm they connect
* Create a plan that:
1. Sets the oav params to the pin tip detection device (e.g. the i19_1 equivalent of `/dls_sw/i03/software/daq_configuration/json/OAVCentring_hyperion.json`) - e.g. using https://github.com/DiamondLightSource/mx-bluesky/blob/510fb97274592a7c5904cf7e28d56aa86c03cff0/src/mx_bluesky/common/device_setup_plans/setup_oav.py#L14, which we should also move into `dodal` as a device setup plan. Note that BlueAPI might not have access to the location of the `.json` file in the file system so we may need to copy them into the scratch area for now
2. Trigger the pin tip detection device
3. Write the location to `oav.beam_centre_i` and `oav.beam_centre_j` (note this is a hack because it's hard to send info back to GDA, long term we should look at changing this)
4. In GDA change the pin tip detection code to trigger this plan then read results from `BL19I-EA-OAV-01:OVER:1:CenterX` and `BL19I-EA-OAV-01:OVER:1:CenterY` (or equivalent for other IOC). These are the PVs that `beam_centre_i`/`beam_centre_j` map too
## Acceptance Criteria
- We can trigger a pin tip centre in GDA again
Contributor guide
Assessment
This issue has not been assessed yet.