Conversation
DominicOram
left a comment
There was a problem hiding this comment.
Thanks, some comments
| if (omega_start := doc.get("gonio-omega")) is not None: | ||
| omega_in_gda_space = -omega_start | ||
| if ( | ||
| omega_offset_and_phase := doc.get("gonio-omega_axis-offset_and_phase") |
There was a problem hiding this comment.
Should: Why can't we just read gonio-omega_axis-phase here?
| else direction.NEGATIVE | ||
| ) | ||
|
|
||
| start_scan_deg = reference_angle.nearest_to_phase(start_scan_deg).unwrap() |
There was a problem hiding this comment.
Should: The reference angle is presumably needed because the zebra is still in the old co-ordinate system? Did you think about setting the position on the zebra so that it is in the new co-ordinate system, see attached:
I think this will get us more on the way to the underlying motor behaviour being invisible at the plan level.
There was a problem hiding this comment.
We could do this, however I don't think we should be making plans agnostic to phase vs absolute angle because they are distinct concepts with different properties. If we made this change, and then subsequently decided to change omega to be wrapped, we would still have to read the unwrapped omega from somewhere and apply it to POS4_SET PV so I don't think it really gains us anything.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1640 +/- ##
==========================================
+ Coverage 92.87% 92.88% +0.01%
==========================================
Files 155 155
Lines 8494 8506 +12
==========================================
+ Hits 7889 7901 +12
Misses 605 605
🚀 New features to boost your workflow:
|
Fixes
Requires
Implements robot load at mod-360 values of omega and subsequent operations using the phase-angle of the omega axis rather than absolute values.
(remember to update
pyproject.tomlwith the dodal commit tag if you need it for tests to pass!)Instructions to reviewer on how to test:
Checks for reviewer