Merging release 2.0 branch with CVS trunk

r2601 | ffr | 2008-05-30 10:26:57 +1000 (Fri, 30 May 2008) | 2 lines
This commit is contained in:
Ferdi Franceschini
2008-05-30 10:26:57 +10:00
committed by Douglas Clowes
parent 4a937e1608
commit 0749b0effa
125 changed files with 8541 additions and 1810 deletions

View File

@@ -1,9 +1,10 @@
' PLATYPUS - CONTROLLER 1
'
' $Revision: 1.11 $
' $Date: 2008-04-30 01:57:55 $
' $Revision: 1.12 $
' $Name: not supported by cvs2svn $
' $Date: 2008-05-30 00:26:56 $
' Author: Dan Bartlett
' Last revision by: $Author: dcl $
' Last revision by: $Author: ffr $
'
' A-BEAM SHADE RAISE
' B-COLLIMATOR TRANSLATE A=7350364, B=6529772, C=6941582

View File

@@ -1,9 +1,10 @@
' PLATYPUS - CONTROLLER 2
'
' $Revision: 1.6 $
' $Date: 2008-04-30 01:57:55 $
' $Revision: 1.7 $
' $Name: not supported by cvs2svn $
' $Date: 2008-05-30 00:26:56 $
' Author: Dan Bartlett
' Last revision by: $Author: dcl $
' Last revision by: $Author: ffr $
'
' A-SAMPLE TILT 1
' B-SAMPLE TILT 2

View File

@@ -1,9 +1,10 @@
' PLATYPUS - CONTROLLER 3
'
' $Revision: 1.6 $
' $Date: 2008-04-30 01:57:55 $
' $Revision: 1.7 $
' $Name: not supported by cvs2svn $
' $Date: 2008-05-30 00:26:56 $
' Author: Dan Bartlett
' Last revision by: $Author: dcl $
' Last revision by: $Author: ffr $
'
' A-SLIT S1 WEST BLADE
' B-SLIT S1 EAST BLADE

View File

@@ -1,9 +1,10 @@
' PLATYPUS - CONTROLLER 4
'
' $Revision: 1.6 $
' $Date: 2008-04-30 01:57:55 $
' $Revision: 1.7 $
' $Name: not supported by cvs2svn $
' $Date: 2008-05-30 00:26:56 $
' Author: Dan Bartlett
' Last revision by: $Author: dcl $
' Last revision by: $Author: ffr $
'
' A-SLIT S3 BOTTOM BLADE
' B-SLIT S3 TOP BLADE

View File

@@ -1,4 +1,6 @@
platypus_configuration.tcl
sics_ports.tcl
script_validator_ports.tcl
extraconfig.tcl
config
util

View File

@@ -1,3 +1,4 @@
config/anticollider/anticollider_common.tcl
config/plc/plc_common_1.tcl
config/counter/counter_common_1.tcl
config/hipadaba/hipadaba_configuration_common.tcl
@@ -8,3 +9,4 @@ config/hmm/anstohm_linked.xml
config/scan/scan_common_1.hdd
config/scan/scan_common_1.tcl
config/nexus/nxscripts_common_1.tcl
config/commands/commands_common.tcl

View File

@@ -0,0 +1,3 @@
# Forbid detector motion when the detector voltage is on
forbid {-inf inf} for dy when dhv1 in {20 inf}
forbid {-inf inf} for dz when dhv1 in {20 inf}

View File

@@ -0,0 +1,8 @@
# $Revision: 1.2 $
# $Date: 2008-05-30 00:26:56 $
# Author: Ferdi Franceschini (ffr@ansto.gov.au)
# Last revision by: $Author: ffr $
source $cfPath(anticollider)/anticollider_common.tcl
::anticollider::loadscript acscript.txt

View File

@@ -0,0 +1 @@
source $cfPath(commands)/commands_common.tcl

View File

@@ -1 +1,10 @@
source $cfPath(hipadaba)/hipadaba_configuration_common.tcl
set sobj_klass_list [concat $sobj_klass_list junk]
set instrument_dictionary [concat $instrument_dictionary {
junk {
sobj {@any junk}
privilege spy
datatype @none
property {data true control true nxsave true klass NXnote type part}
}
} ]

View File

@@ -0,0 +1,18 @@
# Detector voltage controller
set sim_mode [SplitReply [detector_simulation]]
if {$::sim_mode == "true"} {
EvFactory new dhv1 sim
} else {
clientput "Detector Voltage control not yet available"
# makeasyncqueue acq NHQ200 xxxxxxxxxxxxxx yyyy
# evfactory new dhv1 nhqvps acq
# dhv1 lowerlimit xxx
# dhv1 upperlimit xxx
# dhv1 tolerance xxx
# dhv1 max xxx
# dhv1 rate xxx
# dhv1 lock
}

View File

@@ -1,46 +1,55 @@
source $cfPath(hmm)/hmm_configuration_common_1.tcl
set sim_mode [SplitReply [hmm_simulation]]
proc ::histogram_memory::init_OAT_TABLE {} {
if [ catch {
# We don't need a MAX_CHAN parameter for time because the time channel
# is scaled by calling the ::histogram_memory::clock_scale function
OAT_TABLE X -setdata MAX_CHAN 421
OAT_TABLE Y -setdata MAX_CHAN 221
OAT_TABLE X -setdata BMIN -210.5
OAT_TABLE X -setdata BMAX 210.5
OAT_TABLE Y -setdata BMIN -110.5
OAT_TABLE Y -setdata BMAX 110.5
OAT_TABLE -set X { -210.5 -209.5 } NXC 421 Y { -110.5 -109.5 } NYC 221 T { 0 2000 } NTC 1
} message ] {
if {$::errorCode=="NONE"} {return $message}
return -code error $message
}
}
proc ::histogram_memory::pre_count {} {}
proc ::histogram_memory::post_count {} {}
proc ::histogram_memory::initialize {} {
if {$::sim_mode == "true"} {
hmm configure oat_ntc_eff 1
hmm configure oat_nyc_eff 210
hmm configure oat_nxc_eff 210
}
::histogram_memory::_initialize
if [ catch {
if {$::sim_mode == "true"} {
hmm configure oat_ntc_eff 1
hmm configure oat_nyc_eff 210
hmm configure oat_nxc_eff 210
}
BAT_TABLE -init
CAT_TABLE -init
SAT_TABLE -init
OAT_TABLE -init
FAT_TABLE -init
::histogram_memory::_initialize
detector_active_height_mm 257.5
detector_active_width_mm 500
detector_active_height_mm 257.5
detector_active_width_mm 500
set x_bb0 -210.5; set xbbmax 210.5
set y_bb0 -110.5; set ybbmax 110.5
hmm configure FAT_SIMULATED_EVENT_Y0 $y_bb0
hmm configure FAT_SIMULATED_EVENT_Y1 $ybbmax
hmm configure FAT_SIMULATED_EVENT_X0 $x_bb0
hmm configure FAT_SIMULATED_EVENT_X1 $xbbmax
set x_binwidth 1
if {[expr {$xbbmax - $x_bb0}] > 0} {
set x_bb1 [expr {$x_bb0+$x_binwidth}]
} else {
set x_bb1 [expr {$x_bb0-$x_binwidth}]
}
set y_binwidth 1
if {[expr {$ybbmax - $y_bb0}] > 0} {
set y_bb1 [expr {$y_bb0+$y_binwidth}]
} else {
set y_bb1 [expr {$y_bb0-$y_binwidth}]
}
OAT_TABLE -init X_MIN $x_bb0 X_MAX $xbbmax Y_MIN $y_bb0 Y_MAX $ybbmax
# We default to one big bin for time
set t_bb0 [OAT_TABLE -get T_MIN]
set t_bb1 [OAT_TABLE -get T_MAX]
OAT_TABLE X "$x_bb0 $x_bb1" Y "$y_bb0 $y_bb1" T "$t_bb0 $t_bb1"
::histogram_memory::upload_config Filler_defaults
# hmm configure FAT_SIMULATED_EVENT_Y0 $y_bb0
# hmm configure FAT_SIMULATED_EVENT_Y1 $ybbmax
# hmm configure FAT_SIMULATED_EVENT_X0 $x_bb0
# hmm configure FAT_SIMULATED_EVENT_X1 $xbbmax
::histogram_memory::init_OAT_TABLE
::histogram_memory::upload_config Filler_defaults
::nexus::data alias ::histogram_memory::vertical_axis ::histogram_memory::y_bin
::nexus::data alias ::histogram_memory::horizontal_axis ::histogram_memory::x_bin
::nexus::data alias ::histogram_memory::vertical_axis ::histogram_memory::y_bin
::nexus::data alias ::histogram_memory::horizontal_axis ::histogram_memory::x_bin
} message ] {
if {$::errorCode=="NONE"} {return $message}
return -code error $message
}
}
##
@@ -50,8 +59,9 @@ proc ::histogram_memory::tochfreq {} {
::chopper::ready?
set chfreq [::chopper::get_frequency]
::histogram_memory::set_frame_freq $chfreq EXTERNAL
} errmsg ] {
return -code error $errmsg
} message ] {
if {$::errorCode=="NONE"} {return $message}
return -code error $message
}
}
@@ -71,11 +81,13 @@ proc histmem {cmd args} {
::histogram_memory::tochfreq
}
default {
eval "_histmem $cmd $args"
set reply [eval "_histmem $cmd $args"]
}
}
} errmsg ] {
return -code error $errmsg
return $reply
} message ] {
if {$::errorCode=="NONE"} {return $message}
return -code error $message
}
}
publish histmem user

View File

@@ -0,0 +1,28 @@
##
# @brief Instrument parameters
# TODO There should be an NXgeometry entry for each distance, and linked to an NXgeometry
# entry for the chopper [SICS-108]. We put them in a junk entry for now to avoid holding up
# testing and development.
foreach vn {
detector_distance
detector_base
slit4_distance
slit4_base
sample_distance
sample_base
slit3_distance
slit3_base
} {
::utility::mkVar $vn float manager $vn true junk true true
}
detector_distance 10000
detector_base 300
slit4_distance 6000
slit4_base 20
sample_distance 5800
sample_base 50
slit3_distance 5600
slit3_base 20

View File

@@ -1,5 +1,5 @@
# $Revision: 1.14 $
# $Date: 2007-10-31 06:07:10 $
# $Revision: 1.15 $
# $Date: 2008-05-30 00:26:56 $
# Author: Ferdi Franceschini (ffr@ansto.gov.au)
# Last revision by: $Author: ffr $
@@ -17,25 +17,37 @@ source server_config.tcl
########################################
# INSTRUMENT SPECIFIC CONFIGURATION
source $cfPath(hipadaba)/hipadaba_configuration.tcl
fileeval $cfPath(parameters)/parameters.tcl
fileeval $cfPath(motors)/motor_configuration.tcl
fileeval $cfPath(plc)/plc.tcl
fileeval $cfPath(counter)/counter.tcl
fileeval $cfPath(hmm)/hmm_configuration.tcl
fileeval $cfPath(hmm)/detector.tcl
fileeval $cfPath(nexus)/nxscripts.tcl
fileeval $cfPath(scan)/scan.tcl
fileeval $cfPath(chopper)/chopper.tcl
fileeval $cfPath(commands)/commands.tcl
fileeval $cfPath(anticollider)/anticollider.tcl
source gumxml.tcl
########
# Parameters set above the restore command will be clobbered by
# the values in the status.tcl file
# BIG WARNING: DON'T PUT 'restore' IN A CATCH BLOCK BECAUSE IT RETURNS
# AN ERROR IF THERE IS NO ../log/status.tcl FILE.
restore
fileeval $cfPath(plc)/plc.tcl
fileeval $cfPath(counter)/counter.tcl
fileeval $cfPath(hmm)/hmm_configuration.tcl
fileeval $cfPath(nexus)/nxscripts.tcl
fileeval $cfPath(scan)/scan.tcl
fileeval $cfPath(chopper)/chopper.tcl
source $cfPath(hipadaba)/hipadaba_configuration.tcl
source gumxml.tcl
::histogram_memory::initialize
MakeStateMon hmscan
fileeval extraconfig.tcl
if [file exists extraconfig.tcl] {
fileeval extraconfig.tcl
} else {
clientput "extraconfig.tcl not found. continueing"
}
::anticollider::init
server_set_sobj_attributes
buildHDB instrument_dictionary

View File

@@ -0,0 +1,4 @@
set quieckport quieck-val-platypus
set serverport server-val-platypus
set interruptport interrupt-val-platypus
set telnetport telnet-val-platypus