Open DominicOram opened 3 weeks ago
GDA does this by doing the following:
/dls_sw/i03/software/gda_var/mx_parameters.xml
Save to XML
button is pressed on the gonio EDM, this calls /dls_sw/apps/mx-scripts/beamline_tools/xmlwriter.py
which will save the info to /dls_sw/i03/software/gda_var/mx_parameters.xml
Discussed with scientists at https://diamondlightsource.slack.com/archives/C048RD0KFFF/p1718118995771029. Happy to not read the xml in hyperion and just cache the motor positions before load then reapply them
A couple of minor points:
GDA does both of these things already.
Additionally, we should have a limit of if the cached position is > 0.2 mm away from 0 then do not do the robot load. GDA currently does this too
Made an initial start at doing this in a plan at https://github.com/DiamondLightSource/dodal/tree/hyperion_1439_cache_lower_gonio but it may be easier to do by using the reset_positions_wrapper
pre-processor see https://diamondlightsource.slack.com/archives/C04TCA0AF2P/p1718201303789869.
The smargon is mounted on a set of lower gonio stages
BL03I-MO-GONP-01:X
etc. The robot is taught to load/unload on to the smargon when these stages are at 0. However, throughout the run this gonio is recalibrated to make sure pins are still correctly aligned with the OAV when they are mounted.Acceptance criteria
For every robot load we need to: