diff --git a/config/variables.properties b/config/variables.properties index 05fc095..aeebe01 100644 --- a/config/variables.properties +++ b/config/variables.properties @@ -1,4 +1,4 @@ -#Mon Dec 14 23:43:57 CET 2020 -LastRunDate=201214 -FileSequentialNumber=4909 -DaySequentialNumber=110 +#Tue Dec 15 09:30:04 CET 2020 +LastRunDate=201215 +FileSequentialNumber=4915 +DaySequentialNumber=6 diff --git a/script/devices/eiger.py b/script/devices/eiger.py index de64004..3107443 100644 --- a/script/devices/eiger.py +++ b/script/devices/eiger.py @@ -177,11 +177,12 @@ def save_as_tiff(data, filename, check=False, show = False, parallel=True, metad else: _save_as_tiff(data, filename, check, show, metadata) -def trigger_eiger(wait=False): +def trigger_eiger(wait=True): eiger.waitReady(5000) eiger.start() if wait: - eiger.waitNewImage(20000) + image.waitNext(20000 + int(eiger.exposure * 1000)) + #eiger.waitNewImage(20000 + int(eiger.exposure * 1000)) def get_eiger_exposure_readback(): return caget("X11MA-ES1-SD1:cam1:AcquireTime_RBV",'f') diff --git a/script/templates/ObjectiveScan.py b/script/templates/ObjectiveScan.py new file mode 100644 index 0000000..d1e108d --- /dev/null +++ b/script/templates/ObjectiveScan.py @@ -0,0 +1,38 @@ +SCAN_RANGE = [1455.0, 1475.0] +STEP_SIZE = 0.2 +EXPOSURE_TIME = 1.0 +SETTLING_TIME = 0.1 + +start = time.time() + +objective = microscope.get_child("Objective") +add_device(objective, True) +objective.polling=1000 + + +class CoefficientOfVariation(Readable): + def read(self): + d = image.data + ip = load_array(d.array, d.width, d.height) + img_stddev = get_measurement(ip, "StdDev") + img_mean= get_measurement(ip, "Mean") + try: + return img_stddev/img_mean + except: + return float('nan') + + +variation = CoefficientOfVariation() +sensors = [variation] + +if not get_dry_run() and str(get_setting("AUTO_SWITCH_VALVE")).lower() == "true": + open_vg10() + +init_eiger(EXPOSURE_TIME) +try: + lscan(objective, sensors, SCAN_RANGE[0], SCAN_RANGE[1], float(STEP_SIZE), latency=SETTLING_TIME, before_read=trigger_eiger, keep=False) +finally: + if not DRY_RUN and str(get_setting("AUTO_SWITCH_VALVE")).lower() == "true": + close_vg10() + restore_eiger() + print "Running time: " + str(time.time() - start) \ No newline at end of file