118 lines
4.6 KiB
Python
118 lines
4.6 KiB
Python
#Script imported from: Calibrate.xml
|
|
###### Init - DO NOT MODIFY THE CODE BELOW ######
|
|
global print_log, sendFeedback, inspect, log, sys, inspect, os, traceback
|
|
import sys, inspect, os, traceback
|
|
|
|
def print_log(testName, DEVICE, text):
|
|
time.ctime()
|
|
now = time.strftime('%Y.%m.%d %H:%M:%S')
|
|
print now + ' ' + DEVICE + ' - ' + testName + ': ' + str(text)
|
|
log (now + ' ' + DEVICE + ' - ' + testName + ': ' + text )
|
|
|
|
#prepare and send feedback to calling tool
|
|
def sendFeedback(testPath, testName, DEVICE, returnString, testPassed):
|
|
print_log(testName, DEVICE, 'End of test. Result:')
|
|
print_log(testName, DEVICE, 'Device: ' + DEVICE)
|
|
print_log(testName, DEVICE, 'Test name: ' + testName)
|
|
print_log(testName, DEVICE, 'Test path: ' + testPath)
|
|
print_log(testName, DEVICE, 'Test passed: ' + str(testPassed))
|
|
print_log(testName, DEVICE, 'Return string: ' + returnString)
|
|
ret = [testPath, DEVICE, returnString, testPassed]
|
|
set_return(ret)
|
|
|
|
def startTest(testName, DEVICE, params):
|
|
try:
|
|
import traceback
|
|
#get the path of this script
|
|
testPath = inspect.getfile(inspect.currentframe())
|
|
#by default, failed
|
|
ret = 'Test failed'
|
|
success = False
|
|
#plot name to be given to the scan. Use: scan.setPlotName(plotName)
|
|
plotName = DEVICE + ' - ' + testName
|
|
######### WRITE YOUR CODE HERE BELOW #############
|
|
scan = ManualScan(['sample'], ['Drive Status: '+DEVICE+':STA:1', 'Logical Pos: '+DEVICE+':IST:2', 'Diameter: '+DEVICE+':DIAM:2 (mm)', 'Cpc: '+DEVICE+':IST1:2 (mm)', 'Pot: '+DEVICE+':IST2:2 (mm)', 'Btvs: '+DEVICE+':IST3:2 (mm)'] , [0.0], [900.0], [900])
|
|
scan.setPlotName(plotName)
|
|
scan.start()
|
|
|
|
try:
|
|
#Pre-actions: 1 = calibrate
|
|
caput(DEVICE+':COM:2', 1)
|
|
#Creating channels: dimension 1
|
|
#PseudoPositioner id000000
|
|
#ScalarDetector id000001
|
|
id000001 = Channel(DEVICE+':STA:1', type = 'd')
|
|
#ScalarDetector id000003
|
|
id000003 = Channel(DEVICE+':IST:2', type = 'd')
|
|
#ScalarDetector id000004
|
|
id000004 = Channel(DEVICE+':DIAM:2', type = 'd')
|
|
#ScalarDetector id000005
|
|
id000005 = Channel(DEVICE+':IST1:1', type = 'd')
|
|
#ScalarDetector id000006
|
|
id000006 = Channel(DEVICE+':IST1:2', type = 'd')
|
|
#ScalarDetector id000007
|
|
id000007 = Channel(DEVICE+':IST2:1', type = 'd')
|
|
#ScalarDetector id000008
|
|
id000008 = Channel(DEVICE+':IST2:2', type = 'd')
|
|
#ScalarDetector id000009
|
|
id000009 = Channel(DEVICE+':IST3:1', type = 'd')
|
|
#ScalarDetector id000010
|
|
id000010 = Channel(DEVICE+':IST3:2', type = 'd')
|
|
except:
|
|
ret = 'Unable to create channel - ' + traceback.format_exc()
|
|
success = False
|
|
sendFeedback(testPath, testName, DEVICE, ret, success)
|
|
return
|
|
|
|
#Dimension 1
|
|
#PseudoPositioner id000000
|
|
for setpoint1 in range(0, 900):
|
|
readback1 = setpoint1
|
|
sleep( 0.1 ) # Settling time
|
|
#Detector id000001
|
|
detector1 = id000001.get()
|
|
#Detector id000003
|
|
detector2 = id000003.get()
|
|
#Detector id000004
|
|
detector3 = id000004.get()
|
|
#Detector id000005
|
|
detector4 = id000005.get()
|
|
#Detector id000006
|
|
detector5 = id000006.get()
|
|
#Detector id000007
|
|
detector6 = id000007.get()
|
|
#Detector id000008
|
|
detector7 = id000008.get()
|
|
#Detector id000009
|
|
detector8 = id000009.get()
|
|
#Detector id000010
|
|
detector9 = id000010.get()
|
|
scan.append ([setpoint1], [readback1], [detector1, detector2, detector3, detector5, detector7, detector9])
|
|
|
|
#Closing channels
|
|
id000001.close()
|
|
id000003.close()
|
|
id000004.close()
|
|
id000005.close()
|
|
id000006.close()
|
|
id000007.close()
|
|
id000008.close()
|
|
id000009.close()
|
|
id000010.close()
|
|
|
|
scan.end()
|
|
|
|
ret = 'Calibration done'
|
|
status = True
|
|
################ END OF YOUR CODE ################
|
|
###### Final - DO NOT MODIFY THE CODE BELOW ######
|
|
sendFeedback(testPath, testName, DEVICE, ret, success)
|
|
except:
|
|
ret = traceback.format_exc()
|
|
success = False
|
|
sendFeedback(testPath, testName, DEVICE, ret, success)
|
|
return
|
|
|
|
#launch the test
|
|
startTest(test, device, parameters)
|
|
|