def move_DMM_dmm_m2y(energy_change_PVs, params): log.info(' ') log.info(' *** moving dmm m2y') if TESTING: log.warning(' *** testing mode: set dmm m2y %s mm' % params.dmm_m2y) else: log.info(' *** moving dmm m2y %s mm' % params.dmm_m2y) energy_change_PVs['dmm_m2y'].put(params.dmm_m2y, wait=True, timeout=1000.0)
def yes_or_no(question): answer = str(input(question + " (Y/N): ")).lower().strip() while not (answer == "y" or answer == "yes" or answer == "n" or answer == "no"): log.warning("Input yes or no") answer = str(input(question + "(Y/N): ")).lower().strip() if answer[0] == "y": return True else: return False
def move_xia_slits(energy_change_PVs, params): log.info(' ') log.info(' *** moving xia slits') if TESTING: log.warning(' *** testing mode: set A slits h center %s mm' % params.a_slits_h_center) log.warning(' *** testing mode: set xia slits y %s mm' % params.xia_slits_y) else: log.info(' *** moving A slits h center %s mm' % params.a_slits_h_center) energy_change_PVs['a_slits_h_center'].put(params.a_slits_h_center, wait=True) log.info(' *** moving xia slits y %s mm' % params.xia_slits_y) energy_change_PVs['xia_slits_y'].put(params.xia_slits_y, wait=True)
def move_DMM_X(energy_change_PVs, params): log.info(' ') log.info(' *** moving dmm x') if TESTING: log.warning(' *** testing mode: set dmm usx %s mm' % params.dmm_usx) log.warning(' *** testing mode: set dmm dsx %s mm' % params.dmm_dsx) else: log.info(' *** moving dmm usx %s mm' % params.dmm_usx) energy_change_PVs['dmm_usx'].put(params.dmm_usx, wait=False) log.info(' *** moving dmm dsx %s mm' % params.dmm_dsx) energy_change_PVs['dmm_dsx'].put(params.dmm_dsx, wait=True) time.sleep(3)
def move_DMM_arms(energy_change_PVs, params): log.info(' ') log.info(' *** moving dmm arms') if TESTING: log.warning(' *** testing mode: set DMM dmm_us_arm %s mm' % params.dmm_us_arm) log.warning(' *** testing mode: set DMM dmm_ds_arm %s mm' % params.dmm_ds_arm) else: log.info(' *** moving dmm us arm %s mm' % params.dmm_us_arm) energy_change_PVs['dmm_us_arm'].put(params.dmm_us_arm, wait=False, timeout=1000.0) log.info(' *** moving dmm ds arm %s mm' % params.dmm_ds_arm) energy_change_PVs['dmm_ds_arm'].put(params.dmm_ds_arm, wait=True, timeout=1000.0) time.sleep(3)
def init_energy_change_PVs(params): energy_change_PVs = {} log.info(' *** testing mode: set PVs') log.warning(' *** energy PVs: %s' % (params.tomoscan_prefix + 'Energy.VAL')) log.warning(' *** energy PVs: %s' % (params.tomoscan_prefix + 'EnergyMode.VAL')) # shutter pv's energy_change_PVs['ShutterA_Open'] = PV('2bma:A_shutter:open.VAL') energy_change_PVs['ShutterA_Close'] = PV('2bma:A_shutter:close.VAL') energy_change_PVs['ShutterA_Move_Status'] = PV('PA:02BM:STA_A_FES_OPEN_PL') energy_change_PVs['ShutterB_Open'] = PV('2bma:B_shutter:open.VAL') energy_change_PVs['ShutterB_Close'] = PV('2bma:B_shutter:close.VAL') energy_change_PVs['ShutterB_Move_Status'] = PV('PA:02BM:STA_B_SBS_OPEN_PL') energy_change_PVs['filter'] = PV('2bma:fltr1:select.VAL') energy_change_PVs['mirror_angle'] = PV('2bma:M1angl.VAL') energy_change_PVs['mirror_vertical_position'] = PV('2bma:M1avg.VAL') energy_change_PVs['dmm_usx'] = PV('2bma:m25.VAL') energy_change_PVs['dmm_dsx'] = PV('2bma:m28.VAL') energy_change_PVs['dmm_usy_ob'] = PV('2bma:m26.VAL') energy_change_PVs['dmm_usy_ib'] = PV('2bma:m27.VAL') energy_change_PVs['dmm_dsy'] = PV('2bma:m29.VAL') energy_change_PVs['dmm_us_arm'] = PV('2bma:m30.VAL') energy_change_PVs['dmm_ds_arm'] = PV('2bma:m31.VAL') energy_change_PVs['dmm_m2y'] = PV('2bma:m32.VAL') energy_change_PVs['xia_slits_y'] = PV('2bma:m7.VAL') energy_change_PVs['a_slits_h_center'] = PV('2bma:Slit1Hcenter.VAL') energy_change_PVs['camera_y'] = PV('2bma:m21.VAL') energy_change_PVs['table_y'] = PV('2bma:m33.VAL') energy_change_PVs['Energy'] = PV(params.tomoscan_prefix + 'Energy.VAL') energy_change_PVs['Energy_Mode'] = PV(params.tomoscan_prefix + 'EnergyMode.VAL') return energy_change_PVs