67 lines
1.4 KiB
Python
67 lines
1.4 KiB
Python
"""
|
|
Continuous 1D Manipulator scan, Keithley detection only
|
|
|
|
set manipulator scan parameters below.
|
|
|
|
the motor speed is determined from the STEP parameter and the step_time.
|
|
note that the motors have a limited speed range!
|
|
"""
|
|
|
|
import math
|
|
|
|
MOTORS = (ManipulatorY)
|
|
CENTER = -0.6
|
|
WIDTH = 1.
|
|
RANGE = (CENTER - WIDTH / 2., CENTER + WIDTH / 2.)
|
|
STEP = 0.0010
|
|
|
|
#MOTORS = (ManipulatorY)
|
|
#RANGE = (-3.5, +3.5)
|
|
#STEP = 0.1
|
|
|
|
# Z axis cannot be used in fly scan. minimum speed is too high.
|
|
#MOTORS = (ManipulatorZ)
|
|
#RANGE = (112., 118.)
|
|
#STEP = 0.4
|
|
|
|
#MOTORS = (ManipulatorTheta)
|
|
#RANGE = (-9., 81.)
|
|
## minimum speed 0.001, maximum speed 0.5 deg/s
|
|
#SPEED = 0.1
|
|
|
|
#MOTORS = (ManipulatorTilt)
|
|
#RANGE = (-20., +20.)
|
|
## minimum speed 0.1, maximum speed 1.4 mm/s
|
|
#SPEED = 1.0
|
|
|
|
#MOTORS = (ManipulatorPhi)
|
|
#RANGE = (-179., +180.)
|
|
## minimum speed 0.6, maximum speed 6.0 mm/s
|
|
#SPEED = 1.0
|
|
|
|
|
|
SENSORS = (SampleCurrent, RefCurrent, MachineCurrent)
|
|
|
|
|
|
# --- do not edit below ---
|
|
|
|
RELATIVE = False
|
|
LATENCY = 0.0
|
|
ZIGZAG = False
|
|
ENDSCAN = False
|
|
|
|
#adjust_sensors()
|
|
#set_adc_averaging()
|
|
|
|
step_time = 0.1
|
|
print "step time: ", step_time
|
|
|
|
# time for one scan in seconds
|
|
SPEED = STEP / step_time
|
|
print "speed: ", SPEED
|
|
fly_time = (RANGE[1] - RANGE[0]) / SPEED
|
|
STEPS = int(fly_time / step_time) + 1
|
|
print "scan time: ", fly_time
|
|
|
|
cscan(MOTORS, SENSORS, RANGE[0], RANGE[1], STEPS, time=fly_time, before_read=before_readout, check_positions = False)
|
|
|