pelican
Create pas/config/source/source.tcl config/source/source_common.tcl pelican_configuration.tcl deploySICS.sh Don't deploy script validator configs, they are obsolete server_config.tcl Source config has been moved to config/source and is specialised for each instrument by calling the instrument specific initialiser ::source:isc_initalize commands_common_1.tcl The monitor mode and preset are recorded when running the count command counter_common_1.tcl Report and record the counts and time for the multicounter and each monitor. Also record the mode and preset for the multicounter. hmm_configuration_common_1.tcl Cleanup, remove obsolete code. Report and record the hmm total counts and time. Allow monitor controlled acquisition from the histogram server nxscripts_common_1.tcl Add DataType to NXdata section, preserve case in text attributes. scan_common_1.tcl Provide sensible feedback for our bmonscan and hmscan objects. Set run_mode when doing a scan. Allow users to select the datatype for histmem scans and to force a scan wombat_configuration.tcl echidna_configuration.tcl platypus_configuration.tcl kowari_configuration.tcl quokka_configuration.tcl Load source config. quokka_configuration.tcl SICS-198 HACK, Add AttrotDeg and RotApDeg status feedback. sans/commands/commands.tcl Add status feedback for quokka "guide" command. sans/parameters/parameters.tcl Make sure data can be saved as xml (replace % with _percent) SICS-198 HACK, add AttRotDeg and RotApDeg status feedback. utility.tcl Fix nasty "params array generator" bug. SICS commands execute at runlevel 0 which means that the params anonymous array must be made at this level. Provide the normalattlist command to enable creating attribute lists with the case preserved. Added the runsics, runtestsics and sicsclient scripts to CVS. Added source configurations for echidna, wombat, kowari, quokka, platypus, and pelican to CVS r2644 | ffr | 2008-07-11 11:09:57 +1000 (Fri, 11 Jul 2008) | 53 lines
This commit is contained in:
committed by
Douglas Clowes
parent
b4fb916018
commit
01be487c52
@@ -1,3 +1,4 @@
|
||||
config/source/source_common.tcl
|
||||
config/anticollider/anticollider_common.tcl
|
||||
config/plc/plc_common_1.tcl
|
||||
config/counter/counter_common_1.tcl
|
||||
|
||||
@@ -45,21 +45,30 @@ namespace eval optics {
|
||||
|
||||
variable guide_configuration
|
||||
variable guide_configuration_columns
|
||||
if [ catch {
|
||||
array set c1_map {G 1 MT 2 P 3}
|
||||
array set c2_map {MT 1 G 2 A 3}
|
||||
array set c3_map {MT 1 G 2 A 3}
|
||||
array set c4_map {MT 1 G 2 A 3}
|
||||
array set c5_map {MT 1 G 2 A 3}
|
||||
array set c6_map {MT 1 G 2 A 3}
|
||||
array set c7_map {MT 1 G 2 A 3}
|
||||
array set c8_map {MT 1 G 2 A 3}
|
||||
array set c9_map {LP 1 MT 2 G 3 A 4 L 5}
|
||||
|
||||
array set c1_map {G 1 MT 2 P 3}
|
||||
array set c2_map {MT 1 G 2 A 3}
|
||||
array set c3_map {MT 1 G 2 A 3}
|
||||
array set c4_map {MT 1 G 2 A 3}
|
||||
array set c5_map {MT 1 G 2 A 3}
|
||||
array set c6_map {MT 1 G 2 A 3}
|
||||
array set c7_map {MT 1 G 2 A 3}
|
||||
array set c8_map {MT 1 G 2 A 3}
|
||||
array set c9_map {LP 1 MT 2 G 3 A 4 L 5}
|
||||
|
||||
foreach el $guide_configuration($configuration) guide $guide_configuration_columns {
|
||||
lappend to_config $guide
|
||||
lappend to_config [set ${guide}_map($el)]
|
||||
foreach el $guide_configuration($configuration) guide $guide_configuration_columns {
|
||||
lappend to_config $guide
|
||||
lappend to_config [set ${guide}_map($el)]
|
||||
}
|
||||
::optics::guide -set feedback status BUSY
|
||||
eval "drive $to_config"
|
||||
} message ] {
|
||||
::optics::guide -set feedback status IDLE
|
||||
if {$::errorCode=="NONE"} {return $message}
|
||||
return -code error $message
|
||||
}
|
||||
eval "drive $to_config"
|
||||
::optics::guide -set feedback status IDLE
|
||||
}
|
||||
::optics::guide -addfb text status
|
||||
::optics::guide -set feedback status IDLE
|
||||
}
|
||||
|
||||
@@ -48,23 +48,23 @@ foreach {var lname nxname units klass} {
|
||||
|
||||
# Parameter SicsVariables
|
||||
foreach {var lname nxname units priv } {
|
||||
LambdaA LambdaA wavelength nm user
|
||||
LambdaResFWHM% LambdaResFWHM% wavelength_spread 1 user
|
||||
VSdeg VSdeg twist degrees user
|
||||
VSrpm VSrpm rotation_speed rpm user
|
||||
EApYmm EApYmm y mm user
|
||||
EApPosYmm EApPosYmm y mm user
|
||||
SApXmm SApXmm x mm user
|
||||
SApZmm SApZmm z mm user
|
||||
SApPosXmm SApPosXmm x mm user
|
||||
SApPosYmm SApPosYmm y mm user
|
||||
SApPosZmm SApPosZmm z mm user
|
||||
SamplePosXmm SamplePosXmm x mm user
|
||||
SamplePosYmm SamplePosYmm y mm user
|
||||
SamplePosZmm SamplePosZmm z mm user
|
||||
DetPosYOffsetmm DetPosYOffsetmm detposyoffset mm user
|
||||
BSXmm BSXmm x mm user
|
||||
BSZmm BSZmm z mm user
|
||||
LambdaA LambdaA wavelength nm user
|
||||
LambdaResFWHM_percent LambdaResFWHM_percent wavelength_spread 1 user
|
||||
VSdeg VSdeg twist degrees user
|
||||
VSrpm VSrpm rotation_speed rpm user
|
||||
EApYmm EApYmm y mm user
|
||||
EApPosYmm EApPosYmm y mm user
|
||||
SApXmm SApXmm x mm user
|
||||
SApZmm SApZmm z mm user
|
||||
SApPosXmm SApPosXmm x mm user
|
||||
SApPosYmm SApPosYmm y mm user
|
||||
SApPosZmm SApPosZmm z mm user
|
||||
SamplePosXmm SamplePosXmm x mm user
|
||||
SamplePosYmm SamplePosYmm y mm user
|
||||
SamplePosZmm SamplePosZmm z mm user
|
||||
DetPosYOffsetmm DetPosYOffsetmm detposyoffset mm user
|
||||
BSXmm BSXmm x mm user
|
||||
BSZmm BSZmm z mm user
|
||||
} {
|
||||
::utility::mkVar $var float $priv $lname true parameter true true
|
||||
if {$units != 1} {
|
||||
@@ -74,7 +74,7 @@ foreach {var lname nxname units priv } {
|
||||
|
||||
# Derived Parameter SicsVariables
|
||||
foreach {var type lname units depends} {
|
||||
AttFactor float AttFactor 1 AttRotDeg,LambdaA,LambdaResFWHM%
|
||||
AttFactor float AttFactor 1 AttRotDeg,LambdaA,LambdaResFWHM_percent
|
||||
PleXmm float PleXmm mm AttRotDeg
|
||||
EApXmm float EApXmm mm RotApDeg
|
||||
EApZmm float EApZmm mm RotApDeg
|
||||
@@ -139,22 +139,28 @@ foreach {pname motor units} {
|
||||
if {[set args] == ""} {
|
||||
return [sicsmsgfmt [SplitReply [$motor]]]
|
||||
} else {
|
||||
set target [lindex [set args] 0]
|
||||
Plexmm -1
|
||||
set target [lindex [set args] 0]
|
||||
Plexmm -1
|
||||
${pname}_status "BUSY"
|
||||
drive $motor \$target
|
||||
set motpos [SplitReply [$motor]]
|
||||
set motpos [SplitReply [$motor]]
|
||||
set tolerance [SplitReply [$motor precision] ]
|
||||
if {[expr abs(\$motpos - \$target)] > \$tolerance} {
|
||||
error "ERROR: failed to set $pname target \$target"
|
||||
} else {
|
||||
Plexmm [::optics::AttRotLookup \$target]
|
||||
}
|
||||
if {[expr abs(\$motpos - \$target)] > \$tolerance} {
|
||||
${pname}_status "IDLE"
|
||||
error "ERROR: failed to set $pname target \$target"
|
||||
} else {
|
||||
Plexmm [::optics::AttRotLookup \$target]
|
||||
}
|
||||
${pname}_status "IDLE"
|
||||
}
|
||||
}]
|
||||
sicslist setatt $pname units $units
|
||||
sicslist setatt $pname long_name $pname
|
||||
sicslist setatt $pname klass derived_parameter
|
||||
# sicslist setatt $pname depends $motor
|
||||
# TODO SICS-198 add feedback support to getset macro generator
|
||||
VarMake ${pname}_status text mugger
|
||||
${pname}_status "IDLE"
|
||||
}
|
||||
|
||||
foreach {pname motor units} {
|
||||
@@ -164,34 +170,40 @@ foreach {pname motor units} {
|
||||
if {[set args] == ""} {
|
||||
return [sicsmsgfmt [SplitReply [$motor]]]
|
||||
} else {
|
||||
set target [lindex [set args] 0]
|
||||
RotApXmm 0
|
||||
RotApZmm 0
|
||||
RotApShape "UNKNOWN"
|
||||
EApXmm 0
|
||||
EApZmm 0
|
||||
EApShape "UNKNOWN"
|
||||
set target [lindex [set args] 0]
|
||||
RotApXmm 0
|
||||
RotApZmm 0
|
||||
RotApShape "UNKNOWN"
|
||||
EApXmm 0
|
||||
EApZmm 0
|
||||
EApShape "UNKNOWN"
|
||||
${pname}_status "BUSY"
|
||||
drive $motor \$target
|
||||
set motpos [SplitReply [$motor]]
|
||||
set motpos [SplitReply [$motor]]
|
||||
set tolerance [SplitReply [$motor precision] ]
|
||||
if {[expr abs(\$motpos - \$target)] > \$tolerance} {
|
||||
error "ERROR: failed to set $pname target \$target"
|
||||
} else {
|
||||
set size [::optics::EApLookUp \$target "size"]
|
||||
set shape [::optics::EApLookUp \$target "shape"]
|
||||
RotApXmm \$size
|
||||
RotApZmm \$size
|
||||
RotApShape \$shape
|
||||
EApXmm \$size
|
||||
EApZmm \$size
|
||||
EApShape \$shape
|
||||
}
|
||||
if {[expr abs(\$motpos - \$target)] > \$tolerance} {
|
||||
${pname}_status "IDLE"
|
||||
error "ERROR: failed to set $pname target \$target"
|
||||
} else {
|
||||
set size [::optics::EApLookUp \$target "size"]
|
||||
set shape [::optics::EApLookUp \$target "shape"]
|
||||
RotApXmm \$size
|
||||
RotApZmm \$size
|
||||
RotApShape \$shape
|
||||
EApXmm \$size
|
||||
EApZmm \$size
|
||||
EApShape \$shape
|
||||
}
|
||||
${pname}_status "IDLE"
|
||||
}
|
||||
}]
|
||||
sicslist setatt $pname units $units
|
||||
sicslist setatt $pname long_name $pname
|
||||
sicslist setatt $pname klass derived_parameter
|
||||
# sicslist setatt $pname depends $motor
|
||||
# TODO SICS-198 add feedback support to getset macro generator
|
||||
VarMake ${pname}_status text mugger
|
||||
${pname}_status "IDLE"
|
||||
}
|
||||
################################################################################
|
||||
##
|
||||
@@ -199,7 +211,7 @@ foreach {pname motor units} {
|
||||
# as the reference for other positions. x=y=z=0.
|
||||
::hdb::MakeVelocity_Selector velocity_selector {
|
||||
wavelength LambdaA
|
||||
wavelength_spread LambdaResFWHM%
|
||||
wavelength_spread LambdaResFWHM_percent
|
||||
coordinate_scheme VelSelCoordScheme
|
||||
position {VelSelPosXmm VelSelPosYmm VelSelPosZmm}
|
||||
}
|
||||
@@ -314,7 +326,7 @@ namespace eval parameters {
|
||||
L1mm
|
||||
L2mm
|
||||
LambdaA
|
||||
LambdaResFWHM%
|
||||
LambdaResFWHM_percent
|
||||
Pent
|
||||
Plexmm
|
||||
RotApDeg
|
||||
|
||||
6
site_ansto/instrument/sans/config/source/source.tcl
Normal file
6
site_ansto/instrument/sans/config/source/source.tcl
Normal file
@@ -0,0 +1,6 @@
|
||||
source $cfPath(source)/source_common.tcl
|
||||
|
||||
proc ::source::isc_initialize {} {
|
||||
::source::ic_initialize "cold"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user