Files
sicspsi/insttest/amortest
2009-03-16 14:25:12 +00:00

116 lines
3.5 KiB
Tcl
Executable File

#!/usr/bin/tclsh
#-------------------------------------------------------------------------
# This is the regression test for SICS on the AMOR instrument
#
# Mark Koennecke, November 2006
#
# Modified, Mark Koennecke, March 2009
#------------------------------------------------------------------------
source sicstcldebug.tcl
source insttestutil.tcl
source amorinventory.tcl
#------ If there is another argument, test at localhost: for debugging...
if {$argc > 0} {
set instrument local
} else {
set instrument amor
}
initSicsDebug $instrument
config rights lnsmanager lnsSICSlns
#--------- remember soz position
set sozpos [SICSValue soz]
standardPrelude $instrument count
set notList [list chopperspeed chopper1phase chopper2phase ch1ph ch2ph chsp]
lappend notList aby pby
lappend commandList "counter setthreshold 1 0"
lappend commandList "count timer 20"
lappend commandList "cscan soz 0 .1 2 2"
lappend commandList "sscan soz 0. .1 3 2"
lappend commandList "repeat 2"
lappend commandList "wwwsics"
lappend commandList "amorpar"
lappend commandList "amorstatus collapse"
lappend commandList "amorstatus singletof"
lappend commandList "amorstatus projectytof"
lappend varList [list "amorset chopper offset" 137.5 10]
lappend varList [list "amorset chopper scaleoffset" 0 1]
# TODO: slit1 when configured
lappend varList [list "amorset mono offset" 200.5 10]
lappend varList [list "amorset mono scaleoffset" 0 1]
lappend varList [list "amorset ds offset" -40 5]
lappend varList [list "amorset ds scaleoffset" 0 1]
lappend varList [list "amorset slit2 offset" 267. 5]
lappend varList [list "amorset ds scaleoffset" 0 1]
lappend varList [list "amorset slit3 offset" -53 5]
lappend varList [list "amorset slit3 scaleoffset" 0 1]
lappend varList [list "amorset slit4 offset" 270 5]
lappend varList [list "amorset slit4 scaleoffset" 0 1]
lappend varList [list "amorset sample offset" 308 5]
lappend varList [list "amorset sample scaleoffset" 0 1]
lappend varList [list "amorset detector offset" 297 5]
lappend varList [list "amorset detector scaleoffset" 0 1]
lappend varList [list "amorset ana offset" 200 5]
lappend varList [list "amorset ana scaleoffset" 0 1]
lappend varList [list "d1b sign" -1 .1]
lappend varList [list "dbs sign" -1 .1]
lappend varList [list "d2b sign" -1 .1]
lappend varList [list "d3b sign" -1 .1]
lappend varList [list "d4b sign" -1 .1]
lappend varList [list "aom sign" -1 .1]
lappend varList [list "atz sign" -1 .1]
lappend varList [list "com sign" -1 .1]
lappend varList [list "cox sign" -1 .1]
lappend interruptList "drive soz 90"
lappend interruptList "count timer 120"
lappend interruptList "exe insttestbatch.tcl"
set par(inventory) $inventory
set par(driveCommand) drive
set par(motorList) $motors
set par(notList) $notList
set par(commandList) $commandList
set par(interruptList) $interruptList
set par(instrument) $instrument
set par(user) lnsmanager
set par(password) lnsSICSlns
#================= actually test =====================================
set counters [runStandardTests par]
#--------- Test detection system
puts stdout "Testing detector"
set det 1
hm genbin 0 200000 2
hm init
count timer 600
set counts [SICSValue "hm sum 0 128 0 256"]
if {$counts <= 0} {
set det 0
}
if {$det == 1} {
puts stdout "Detector passed"
} else {
puts stdout "Check detector, found no noise after 10 minutes counting"
}
#--------- put detector back where it was
drive soz $sozpos
standardRestore
#------------ print a summary
set inst [string toupper $instrument]
puts stdout "Test Summary for $inst"
printStandardSummary $counters
puts stdout "Chopper NOT tested!!"
exit