예제 #1
0
def scanRoutine():
    "This is the scan routine"
    pvscan.printMsg('Starting')
    sleep(0.5) # Collect some initial data first
    # Grab images of the sample
    if grab0.grabFlag:
        grab0.grabImages(5)
    # Close pump and HeNe shutters, but only if enabled from PV.
    if shutter2.enabled:
        pvscan.printMsg('Closing pump shutter')
        shutter2.close.put(1)
    if shutter3.enabled:
        pvscan.printMsg('Closing HeNe shutter')
        shutter3.close.put(1)
    # Set all shutters to fast mode
    pvscan.shutterFunction(shutterGroup1.fast,1)
    sleep(0.5)
    # Make sure shutters are closed
    #pvscan.shutterCheck(shutterRBVPVList)
    # Do motor scan
    motorScan(motor1,motor2,motor3,grab1,radius,radius2,resetMotorPv)
    # Close pump and HeNe shutters, but only if enabled from PV.
    if shutter2.enabled:
        pvscan.printMsg('Closing pump shutter')
        shutter2.close.put(1)
    if shutter3.enabled:
        pvscan.printMsg('Closing HeNe shutter')
        shutter3.close.put(1)
예제 #2
0
def scanRoutine():
    "This is the scan routine"
    pvscan.printMsg('Starting')
    sleep(0.5) # Collect some initial data first
    # Open shutters
    pvscan.printMsg('Opening shutters')
    pvscan.shutterFunction(shutterGroup1.open,1)
    # Scan delay stage and grab images...
    pvscan.Motor.motor1DScan(motor1,grab1)
    #pvscan.Motor.pv1DScan(motor1,grab1)
    # Close shutters
    pvscan.printMsg('Closing shutters')
    pvscan.shutterFunction(shutterGroup1.close,0)
    pvscan.printMsg('Done')
예제 #3
0
def abortRoutine():
    "This is the abort routine"
    pvscan.printMsg('Aborting')
    # Kill scan routine process
    pvscan.printMsg('Killing process %d...' % (pid))
    os.kill(pid, signal.SIGKILL)
    # Disable shutters
    #pvscan.printMsg('Disabling shutters')
    #pvscan.shutterFunction(shutterGroup1.ttlInDisable,0)
    #sleep(0.5)
    # Close shutters
    pvscan.printMsg('Closing shutters')
    pvscan.shutterFunction(shutterGroup1.close,0)
    pvscan.printMsg('Aborted')
예제 #4
0
def scanRoutine():
    "This is the scan routine"
    pvscan.printMsg('Starting')
    sleep(0.5)  # Collect some initial data first
    # Open shutters
    pvscan.printMsg('Opening shutters')
    pvscan.shutterFunction(shutterGroup1.open, 1)
    # Scan delay stage and grab images...
    pvscan.Motor.motor1DScan(motor1, grab1)
    #pvscan.Motor.pv1DScan(motor1,grab1)
    # Close shutters
    pvscan.printMsg('Closing shutters')
    pvscan.shutterFunction(shutterGroup1.close, 0)
    pvscan.printMsg('Done')
예제 #5
0
def abortRoutine():
    "This is the abort routine"
    pvscan.printMsg('Aborting')
    # Stop motors
    pvscan.printMsg('Stopping motors')
    motor1.abort.put(1)
    motor2.abort.put(1)
    motor3.abort.put(1)
    # Kill scan routine process
    pvscan.printMsg('Killing process %d...' % (pid))
    os.kill(pid, signal.SIGKILL)
    # Disable shutters
    #pvscan.printMsg('Disabling shutters')
    #pvscan.shutterFunction(shutterGroup1.ttlInDisable,0)
    #sleep(0.5)
    # Close/disable shutters
    pvscan.printMsg('Disabling TTL In for all shutters')
    pvscan.shutterFunction(shutterGroup1.ttlInDisable,1)
    pvscan.printMsg('Closing pump and HeNe shutters')
    pvscan.shutterFunction(shutterGroup2.close,1)
    pvscan.printMsg('Aborted')
예제 #6
0
def abortRoutine():
    "This is the abort routine"
    pvscan.printMsg('Aborting')
    # Stop motors
    pvscan.printMsg('Stopping motors')
    motor1.abort.put(1)
    motor2.abort.put(1)
    motor3.abort.put(1)
    # Kill scan routine process
    pvscan.printMsg('Killing process %d...' % (pid))
    os.kill(pid, signal.SIGKILL)
    # Disable shutters
    #pvscan.printMsg('Disabling shutters')
    #pvscan.shutterFunction(shutterGroup1.ttlInDisable,0)
    #sleep(0.5)
    # Close/disable shutters
    pvscan.printMsg('Disabling TTL In for all shutters')
    pvscan.shutterFunction(shutterGroup1.ttlInDisable, 1)
    pvscan.printMsg('Closing pump and HeNe shutters')
    pvscan.shutterFunction(shutterGroup2.close, 1)
    pvscan.printMsg('Aborted')