Closedown
This commit is contained in:
@@ -62,13 +62,34 @@ class Keithley(object):
|
||||
2) set user mode, set range
|
||||
|
||||
"""
|
||||
self.dosetdefaultCh.write(1)
|
||||
self.scanCh.write(9)
|
||||
#self.dosetdefaultCh.write(1)
|
||||
#self.scanCh.write(9)
|
||||
|
||||
def prepare(self, dwell, triggered):
|
||||
"""
|
||||
prepare keithley for gpib polling.
|
||||
|
||||
setting keithley parameters has several issues.
|
||||
the dwell time and trigger mode cannot be set programmatically at the moment.
|
||||
the user should select poll slow (100 ms), medium (20 ms) or fast (2 ms).
|
||||
this method just reads the current value and stores it in self.dwell.
|
||||
|
||||
dwell: dwell time in seconds.
|
||||
0.1 - 20.0 in triggered mode,
|
||||
0.1 - 1.0 in free running mode.
|
||||
triggered:
|
||||
True: wait for self.trig call and trigger once per call.
|
||||
False: 1 Hz free run using EPICS SCAN attribute.
|
||||
"""
|
||||
self.triggered = False
|
||||
self.dwell = self.tottimeCh.read() / 1000.
|
||||
|
||||
def prepare_not_working(self, dwell, triggered):
|
||||
"""
|
||||
prepare keithley for gpib polling:
|
||||
scan passive, bus triggered, set dwell time
|
||||
|
||||
this doesn't to work.
|
||||
|
||||
dwell: dwell time in seconds.
|
||||
0.1 - 20.0 in triggered mode,
|
||||
@@ -142,6 +163,7 @@ class Keithley(object):
|
||||
_do nothing for now!_
|
||||
"""
|
||||
return None
|
||||
|
||||
self.nplcCh.write(5.)
|
||||
self.navgCh.write(1.)
|
||||
self.scanCh.write(6)
|
||||
|
||||
@@ -111,10 +111,10 @@ from keithley import KeiSample, KeiReference
|
||||
|
||||
def prepare_keithleys(dwell, triggered):
|
||||
"""
|
||||
prepare keithleys for gpib polling:
|
||||
passive, bus triggered, dwell time
|
||||
|
||||
dwell = dwell time in seconds (0.1 - 20.0)
|
||||
prepare keithleys.
|
||||
|
||||
at the moment, the dwell time has to be set manually by selecting one of the poll modes
|
||||
slow = 100 ms, medium = 20 ms, fast = 2 ms.
|
||||
"""
|
||||
KeiSample.prepare(dwell, triggered)
|
||||
KeiReference.prepare(dwell, triggered)
|
||||
@@ -130,7 +130,6 @@ def trig_keithleys():
|
||||
def wait_keithleys():
|
||||
"""
|
||||
wait for one dwell time so that the keithleys can finish their measurement.
|
||||
if we polled them too early, they would produce an error message.
|
||||
"""
|
||||
time.sleep(KeiSample.dwell * 2.2)
|
||||
|
||||
@@ -325,7 +324,7 @@ def after_scan():
|
||||
Close shutter and turn off analyser
|
||||
"""
|
||||
caput("X03DA-PC:AFTER-SCAN.PROC", 1)
|
||||
release_keithleys()
|
||||
#release_keithleys()
|
||||
|
||||
def set_adc_averaging(dwelltime=0.0):
|
||||
if dwelltime == 0.0:
|
||||
|
||||
@@ -8,9 +8,9 @@ AuxCurrent: not connected
|
||||
|
||||
import time
|
||||
|
||||
RANGE = "G1200 full"
|
||||
#RANGE = "G1200 full"
|
||||
#RANGE = "G600 full"
|
||||
#RANGE = "C K-edge"
|
||||
RANGE = "C K-edge"
|
||||
BEAM = "G1200 1x1"
|
||||
#BEAM = "G1200 6x10"
|
||||
|
||||
@@ -36,8 +36,6 @@ elif RANGE == "C K-edge":
|
||||
LATENCY = 1.0
|
||||
DWELL = 1.0
|
||||
|
||||
prepare_keithleys(DWELL, False)
|
||||
|
||||
if BEAM == "G600 1x1":
|
||||
# G600 1x1 reference sscan_2268 (elog:119)
|
||||
#SampleCurrentGain.write("L, 10^7")
|
||||
@@ -92,6 +90,7 @@ else:
|
||||
|
||||
POSITIONERS = (Eph)
|
||||
SENSORS = (SampleCurrent, RefCurrent, MachineCurrent)
|
||||
set_adc_averaging()
|
||||
time.sleep(5.)
|
||||
|
||||
lscan(POSITIONERS, SENSORS, STARTPOS, ENDPOS, STEPS, LATENCY, before_read=before_readout, after_read=after_readout)
|
||||
|
||||
Reference in New Issue
Block a user