Add initial i15-1 robot device#1879
Conversation
This feels like it could be its own PR |
DominicOram
left a comment
There was a problem hiding this comment.
This feels like it could be its own PR
Ideally, yes, but I'm not too bothered about having it here. It's a small change and i15-1 isn't using any of this in prod yet anyway. But yh, for future reference @Mark-Booth, I think a new PR would have been cleaner.
This looks like a good start, thank you! A few initial comments in the code on the direction to go next but I think think this is good enough to give a first go on the beamline.
| value: the sample location | ||
| """ | ||
| # if _pin_loaded(): | ||
| await self.puck_load.trigger() |
There was a problem hiding this comment.
Could: We could do this at the same time as setting the puck/pos but I doubt it's probably not going to be much faster
There was a problem hiding this comment.
I think we've seen the puck_sel and and pos_sel change during a program load, so that might introduce a race condition here.
I think it's worth sticking to the current "wait for program loaded" logic for now.
| value: the sample location | ||
| """ | ||
| # if _pin_loaded(): | ||
| await self.puck_load.trigger() |
There was a problem hiding this comment.
Should: I think we probably need a comment somewhere saying that this loads the program, rather than actually does a robot "load" as it could at first glance look confusing we're loading before we set positions
There was a problem hiding this comment.
Rather than adding a comment, I've renamed puck_load to puck_load_program instead.
Yeah, we've been discussing preferences on handling 'scout camp rule' changes (leave the camp ground tidier than you found it) and I'll go separate PR in the future. |
oliwenmandiamond
left a comment
There was a problem hiding this comment.
dodal.devices.i15.robot.py will need to be changed to dodal.devices.beamlines.i15.py
2a68323 to
8d92a87
Compare
Note that this initial implementation does only the first half of a full load operation, picking the requested pin from the puck and leaving it in the staging position.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1879 +/- ##
=======================================
Coverage 99.03% 99.04%
=======================================
Files 305 306 +1
Lines 11522 11590 +68
=======================================
+ Hits 11411 11479 +68
Misses 111 111 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
8d92a87 to
79540a0
Compare
DominicOram
left a comment
There was a problem hiding this comment.
Great, thanks! Tested on the beamline and works as expected
Note that this initial implementation does only the first half of a full load operation, picking the requested pin from the puck and leaving it in the staging position
Progresses #1863
Instructions to reviewer on how to test:
Checks for reviewer
dodal connect ${BEAMLINE}