mx-bluesky 1.5.2__py3-none-any.whl → 1.5.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- mx_bluesky/_version.py +16 -3
- mx_bluesky/beamlines/aithre_lasershaping/__init__.py +2 -0
- mx_bluesky/beamlines/aithre_lasershaping/beamline_safe.py +17 -0
- mx_bluesky/beamlines/i04/__init__.py +7 -3
- mx_bluesky/beamlines/i04/experiment_plans/i04_grid_detect_then_xray_centre_plan.py +3 -8
- mx_bluesky/beamlines/i04/thawing_plan.py +3 -3
- mx_bluesky/beamlines/i24/serial/blueapi_config.yaml +2 -2
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/CustomChip_py3v1.edl +10 -10
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DetStage.edl +1 -1
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DiamondChipI24-py3v1.edl +68 -68
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/ME14E-GeneralPurpose.edl +120 -120
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/MappingLite-oxford_py3v1.edl +135 -135
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/PMAC_Command.edl +2 -2
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/Shutter_Control.edl +3 -3
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/nudgechip.edl +24 -24
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/pumpprobe-py3v1.edl +12 -12
- mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Manager_py3v1.py +13 -12
- mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_moveonclick.py +10 -10
- mx_bluesky/beamlines/i24/serial/parameters/utils.py +1 -1
- mx_bluesky/beamlines/i24/serial/set_visit_directory.sh +1 -1
- mx_bluesky/beamlines/i24/serial/setup_beamline/pv.py +142 -135
- mx_bluesky/common/device_setup_plans/manipulate_sample.py +2 -2
- mx_bluesky/common/experiment_plans/common_grid_detect_then_xray_centre_plan.py +2 -2
- mx_bluesky/common/experiment_plans/inner_plans/udc_default_state.py +65 -0
- mx_bluesky/common/experiment_plans/oav_grid_detection_plan.py +12 -2
- mx_bluesky/common/experiment_plans/oav_snapshot_plan.py +2 -2
- mx_bluesky/common/external_interaction/alerting/__init__.py +13 -0
- mx_bluesky/common/external_interaction/alerting/_service.py +82 -0
- mx_bluesky/common/external_interaction/alerting/log_based_service.py +57 -0
- mx_bluesky/common/external_interaction/callbacks/common/grid_detection_callback.py +35 -17
- mx_bluesky/common/external_interaction/callbacks/sample_handling/sample_handling_callback.py +31 -6
- mx_bluesky/common/external_interaction/config_server.py +151 -54
- mx_bluesky/common/parameters/constants.py +27 -8
- mx_bluesky/common/parameters/gridscan.py +1 -1
- mx_bluesky/hyperion/__main__.py +50 -178
- mx_bluesky/hyperion/baton_handler.py +130 -69
- mx_bluesky/hyperion/device_setup_plans/dcm_pitch_roll_mirror_adjuster.py +29 -24
- mx_bluesky/hyperion/experiment_plans/hyperion_flyscan_xray_centre_plan.py +4 -1
- mx_bluesky/hyperion/experiment_plans/load_centre_collect_full_plan.py +17 -5
- mx_bluesky/hyperion/experiment_plans/pin_tip_centring_plan.py +1 -1
- mx_bluesky/hyperion/experiment_plans/robot_load_and_change_energy.py +6 -2
- mx_bluesky/hyperion/experiment_plans/rotation_scan_plan.py +2 -3
- mx_bluesky/hyperion/external_interaction/agamemnon.py +128 -73
- mx_bluesky/hyperion/external_interaction/alerting/__init__.py +0 -0
- mx_bluesky/hyperion/external_interaction/alerting/constants.py +12 -0
- mx_bluesky/hyperion/external_interaction/callbacks/__main__.py +9 -0
- mx_bluesky/hyperion/external_interaction/callbacks/alert_on_container_change.py +54 -0
- mx_bluesky/hyperion/external_interaction/callbacks/rotation/nexus_callback.py +2 -2
- mx_bluesky/hyperion/external_interaction/config_server.py +12 -31
- mx_bluesky/hyperion/parameters/cli.py +15 -3
- mx_bluesky/hyperion/parameters/components.py +7 -5
- mx_bluesky/hyperion/parameters/constants.py +20 -4
- mx_bluesky/hyperion/parameters/gridscan.py +22 -14
- mx_bluesky/hyperion/parameters/load_centre_collect.py +1 -14
- mx_bluesky/hyperion/parameters/robot_load.py +1 -4
- mx_bluesky/hyperion/parameters/rotation.py +1 -2
- mx_bluesky/hyperion/plan_runner.py +78 -0
- mx_bluesky/hyperion/runner.py +189 -0
- {mx_bluesky-1.5.2.dist-info → mx_bluesky-1.5.4.dist-info}/METADATA +4 -3
- {mx_bluesky-1.5.2.dist-info → mx_bluesky-1.5.4.dist-info}/RECORD +64 -55
- {mx_bluesky-1.5.2.dist-info → mx_bluesky-1.5.4.dist-info}/entry_points.txt +0 -2
- {mx_bluesky-1.5.2.dist-info → mx_bluesky-1.5.4.dist-info}/WHEEL +0 -0
- {mx_bluesky-1.5.2.dist-info → mx_bluesky-1.5.4.dist-info}/licenses/LICENSE +0 -0
- {mx_bluesky-1.5.2.dist-info → mx_bluesky-1.5.4.dist-info}/top_level.txt +0 -0
mx_bluesky/_version.py
CHANGED
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
# file generated by setuptools-scm
|
|
2
2
|
# don't change, don't track in version control
|
|
3
3
|
|
|
4
|
-
__all__ = [
|
|
4
|
+
__all__ = [
|
|
5
|
+
"__version__",
|
|
6
|
+
"__version_tuple__",
|
|
7
|
+
"version",
|
|
8
|
+
"version_tuple",
|
|
9
|
+
"__commit_id__",
|
|
10
|
+
"commit_id",
|
|
11
|
+
]
|
|
5
12
|
|
|
6
13
|
TYPE_CHECKING = False
|
|
7
14
|
if TYPE_CHECKING:
|
|
@@ -9,13 +16,19 @@ if TYPE_CHECKING:
|
|
|
9
16
|
from typing import Union
|
|
10
17
|
|
|
11
18
|
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
19
|
+
COMMIT_ID = Union[str, None]
|
|
12
20
|
else:
|
|
13
21
|
VERSION_TUPLE = object
|
|
22
|
+
COMMIT_ID = object
|
|
14
23
|
|
|
15
24
|
version: str
|
|
16
25
|
__version__: str
|
|
17
26
|
__version_tuple__: VERSION_TUPLE
|
|
18
27
|
version_tuple: VERSION_TUPLE
|
|
28
|
+
commit_id: COMMIT_ID
|
|
29
|
+
__commit_id__: COMMIT_ID
|
|
19
30
|
|
|
20
|
-
__version__ = version = '1.5.
|
|
21
|
-
__version_tuple__ = version_tuple = (1, 5,
|
|
31
|
+
__version__ = version = '1.5.4'
|
|
32
|
+
__version_tuple__ = version_tuple = (1, 5, 4)
|
|
33
|
+
|
|
34
|
+
__commit_id__ = commit_id = None
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
from mx_bluesky.beamlines.aithre_lasershaping.beamline_safe import (
|
|
2
|
+
go_to_zero,
|
|
2
3
|
set_beamline_safe_on_robot,
|
|
3
4
|
)
|
|
4
5
|
from mx_bluesky.beamlines.aithre_lasershaping.check_goniometer_performance import (
|
|
@@ -18,4 +19,5 @@ __all__ = [
|
|
|
18
19
|
"go_to_furthest_maximum",
|
|
19
20
|
"rotate_goniometer_relative",
|
|
20
21
|
"jog_sample",
|
|
22
|
+
"go_to_zero",
|
|
21
23
|
]
|
|
@@ -34,3 +34,20 @@ def set_beamline_safe_on_robot(
|
|
|
34
34
|
else ForceBit.NO.value
|
|
35
35
|
)
|
|
36
36
|
yield from bps.abs_set(robot.set_beamline_safe, set_value, wait=True)
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def go_to_zero(
|
|
40
|
+
goniometer: Goniometer = inject("goniometer"), group="move_to_zero", wait=True
|
|
41
|
+
) -> MsgGenerator:
|
|
42
|
+
"""
|
|
43
|
+
Rotate the goniometer and set stages to zero in preparation for robot load/unload.
|
|
44
|
+
Pass wait=False to avoid waiting for the move to complete.
|
|
45
|
+
"""
|
|
46
|
+
yield from bps.abs_set(goniometer.omega, 0, group=group)
|
|
47
|
+
yield from bps.abs_set(goniometer.x, 0, group=group)
|
|
48
|
+
yield from bps.abs_set(goniometer.y, 0, group=group)
|
|
49
|
+
yield from bps.abs_set(goniometer.z, 0, group=group)
|
|
50
|
+
yield from bps.abs_set(goniometer.sampy, 0, group=group)
|
|
51
|
+
yield from bps.abs_set(goniometer.sampz, 0, group=group)
|
|
52
|
+
if wait:
|
|
53
|
+
yield from bps.wait(group=group)
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
from mx_bluesky.beamlines.i04.experiment_plans import (
|
|
2
|
-
|
|
1
|
+
from mx_bluesky.beamlines.i04.experiment_plans.i04_grid_detect_then_xray_centre_plan import (
|
|
2
|
+
i04_grid_detect_then_xray_centre,
|
|
3
3
|
)
|
|
4
4
|
from mx_bluesky.beamlines.i04.thawing_plan import thaw, thaw_and_stream_to_redis
|
|
5
5
|
|
|
6
|
-
__all__ = [
|
|
6
|
+
__all__ = [
|
|
7
|
+
"thaw",
|
|
8
|
+
"thaw_and_stream_to_redis",
|
|
9
|
+
"i04_grid_detect_then_xray_centre",
|
|
10
|
+
]
|
|
@@ -4,7 +4,6 @@ from functools import partial
|
|
|
4
4
|
|
|
5
5
|
import bluesky.plan_stubs as bps
|
|
6
6
|
import bluesky.preprocessors as bpp
|
|
7
|
-
from blueapi.core import BlueskyContext
|
|
8
7
|
from bluesky.utils import MsgGenerator
|
|
9
8
|
from dodal.common import inject
|
|
10
9
|
from dodal.devices.aperturescatterguard import ApertureScatterguard
|
|
@@ -66,19 +65,13 @@ from mx_bluesky.common.parameters.gridscan import GridCommon, SpecifiedThreeDGri
|
|
|
66
65
|
from mx_bluesky.common.preprocessors.preprocessors import (
|
|
67
66
|
transmission_and_xbpm_feedback_for_collection_decorator,
|
|
68
67
|
)
|
|
69
|
-
from mx_bluesky.common.utils.
|
|
68
|
+
from mx_bluesky.common.utils.log import LOGGER
|
|
70
69
|
from mx_bluesky.phase1_zebra.device_setup_plans.setup_zebra import (
|
|
71
70
|
setup_zebra_for_gridscan,
|
|
72
71
|
tidy_up_zebra_after_gridscan,
|
|
73
72
|
)
|
|
74
73
|
|
|
75
74
|
|
|
76
|
-
def create_devices(
|
|
77
|
-
context: BlueskyContext,
|
|
78
|
-
) -> GridDetectThenXRayCentreComposite:
|
|
79
|
-
return device_composite_from_context(context, GridDetectThenXRayCentreComposite)
|
|
80
|
-
|
|
81
|
-
|
|
82
75
|
# See https://github.com/DiamondLightSource/blueapi/issues/506 for using device composites
|
|
83
76
|
def i04_grid_detect_then_xray_centre(
|
|
84
77
|
parameters: GridCommon,
|
|
@@ -184,9 +177,11 @@ def get_ready_for_oav_and_close_shutter(
|
|
|
184
177
|
):
|
|
185
178
|
yield from bps.wait(PlanGroupCheckpointConstants.GRID_READY_FOR_DC)
|
|
186
179
|
group = "get_ready_for_oav_and_close_shutter"
|
|
180
|
+
LOGGER.info("Non-udc tidy: Seting up beamline for OAV")
|
|
187
181
|
yield from setup_beamline_for_OAV(
|
|
188
182
|
smargon, backlight, aperture_scatterguard, group=group
|
|
189
183
|
)
|
|
184
|
+
LOGGER.info("Non-udc tidy: Closing detector shutter")
|
|
190
185
|
yield from bps.abs_set(
|
|
191
186
|
detector_motion.shutter,
|
|
192
187
|
0,
|
|
@@ -10,7 +10,7 @@ from dodal.devices.oav.oav_detector import OAV
|
|
|
10
10
|
from dodal.devices.oav.oav_to_redis_forwarder import OAVToRedisForwarder, Source
|
|
11
11
|
from dodal.devices.robot import BartRobot
|
|
12
12
|
from dodal.devices.smargon import Smargon
|
|
13
|
-
from dodal.devices.thawer import
|
|
13
|
+
from dodal.devices.thawer import OnOff, Thawer
|
|
14
14
|
|
|
15
15
|
from mx_bluesky.beamlines.i04.callbacks.murko_callback import MurkoCallback
|
|
16
16
|
|
|
@@ -117,7 +117,7 @@ def _thaw(
|
|
|
117
117
|
|
|
118
118
|
def do_thaw():
|
|
119
119
|
yield from bps.abs_set(smargon.omega.velocity, new_velocity, wait=True)
|
|
120
|
-
yield from bps.abs_set(thawer.control,
|
|
120
|
+
yield from bps.abs_set(thawer.control, OnOff.ON, wait=True)
|
|
121
121
|
yield from bps.rel_set(smargon.omega, rotation, wait=True)
|
|
122
122
|
if plan_between_rotations:
|
|
123
123
|
yield from plan_between_rotations()
|
|
@@ -125,7 +125,7 @@ def _thaw(
|
|
|
125
125
|
|
|
126
126
|
def cleanup():
|
|
127
127
|
yield from bps.abs_set(smargon.omega.velocity, inital_velocity, wait=True)
|
|
128
|
-
yield from bps.abs_set(thawer.control,
|
|
128
|
+
yield from bps.abs_set(thawer.control, OnOff.OFF, wait=True)
|
|
129
129
|
|
|
130
130
|
# Always cleanup even if there is a failure
|
|
131
131
|
yield from bpp.contingency_wrapper(
|
|
@@ -7,11 +7,11 @@ env:
|
|
|
7
7
|
events:
|
|
8
8
|
broadcast_status_events: false
|
|
9
9
|
api:
|
|
10
|
-
|
|
10
|
+
url: http://localhost:25565
|
|
11
11
|
cors:
|
|
12
12
|
allow_credentials: True
|
|
13
13
|
origins:
|
|
14
14
|
- "*"
|
|
15
15
|
stomp:
|
|
16
16
|
enabled: true
|
|
17
|
-
|
|
17
|
+
url: http://i24-control.diamond.ac.uk:61613
|
|
@@ -89,7 +89,7 @@ x 143
|
|
|
89
89
|
y 82
|
|
90
90
|
w 110
|
|
91
91
|
h 30
|
|
92
|
-
controlPv "
|
|
92
|
+
controlPv "BL24I-MO-IOC-01:GP6"
|
|
93
93
|
font "arial-medium-r-18.0"
|
|
94
94
|
fontAlign "right"
|
|
95
95
|
fgColor index 25
|
|
@@ -180,7 +180,7 @@ x 144
|
|
|
180
180
|
y 126
|
|
181
181
|
w 110
|
|
182
182
|
h 30
|
|
183
|
-
controlPv "
|
|
183
|
+
controlPv "BL24I-MO-IOC-01:GP7"
|
|
184
184
|
font "arial-medium-r-18.0"
|
|
185
185
|
fontAlign "right"
|
|
186
186
|
fgColor index 25
|
|
@@ -464,7 +464,7 @@ x 145
|
|
|
464
464
|
y 171
|
|
465
465
|
w 110
|
|
466
466
|
h 30
|
|
467
|
-
controlPv "
|
|
467
|
+
controlPv "BL24I-MO-IOC-01:GP8"
|
|
468
468
|
font "arial-medium-r-18.0"
|
|
469
469
|
fontAlign "right"
|
|
470
470
|
fgColor index 25
|
|
@@ -580,7 +580,7 @@ h 144
|
|
|
580
580
|
lineColor index 7
|
|
581
581
|
fill
|
|
582
582
|
fillColor index 7
|
|
583
|
-
visPv "
|
|
583
|
+
visPv "BL24I-MO-IOC-01:GP1"
|
|
584
584
|
visMin "0"
|
|
585
585
|
visMax "2"
|
|
586
586
|
endObjectProperties
|
|
@@ -598,7 +598,7 @@ h 143
|
|
|
598
598
|
lineColor index 7
|
|
599
599
|
fill
|
|
600
600
|
fillColor index 7
|
|
601
|
-
visPv "
|
|
601
|
+
visPv "BL24I-MO-IOC-01:GP1"
|
|
602
602
|
visMin "0"
|
|
603
603
|
visMax "2"
|
|
604
604
|
endObjectProperties
|
|
@@ -618,7 +618,7 @@ fontAlign "center"
|
|
|
618
618
|
fgColor index 14
|
|
619
619
|
bgColor index 0
|
|
620
620
|
useDisplayBg
|
|
621
|
-
visPv "
|
|
621
|
+
visPv "BL24I-MO-IOC-01:GP1"
|
|
622
622
|
visMin "0"
|
|
623
623
|
visMax "2"
|
|
624
624
|
value {
|
|
@@ -648,7 +648,7 @@ botShadowColor index 11
|
|
|
648
648
|
font "arial-medium-r-18.0"
|
|
649
649
|
numCmds 1
|
|
650
650
|
command {
|
|
651
|
-
0 "caput
|
|
651
|
+
0 "caput BL24I-EA-CHIP-01:PMAC_STRING \\#5hmz\\#6hmz\\#7hmz"
|
|
652
652
|
}
|
|
653
653
|
endObjectProperties
|
|
654
654
|
|
|
@@ -728,7 +728,7 @@ h 143
|
|
|
728
728
|
lineColor index 7
|
|
729
729
|
fill
|
|
730
730
|
fillColor index 7
|
|
731
|
-
visPv "
|
|
731
|
+
visPv "BL24I-MO-IOC-01:GP1"
|
|
732
732
|
visMin "0"
|
|
733
733
|
visMax "2"
|
|
734
734
|
endObjectProperties
|
|
@@ -748,7 +748,7 @@ fontAlign "center"
|
|
|
748
748
|
fgColor index 14
|
|
749
749
|
bgColor index 0
|
|
750
750
|
useDisplayBg
|
|
751
|
-
visPv "
|
|
751
|
+
visPv "BL24I-MO-IOC-01:GP1"
|
|
752
752
|
visMin "0"
|
|
753
753
|
visMax "2"
|
|
754
754
|
value {
|
|
@@ -792,7 +792,7 @@ x 146
|
|
|
792
792
|
y 209
|
|
793
793
|
w 110
|
|
794
794
|
h 25
|
|
795
|
-
controlPv "
|
|
795
|
+
controlPv "BL24I-MO-IOC-01:GP99"
|
|
796
796
|
font "arial-medium-r-18.0"
|
|
797
797
|
fontAlign "right"
|
|
798
798
|
fgColor index 25
|