commands_common.tcl Added ::motor::go_home command to run motors to their home positions. hrpd,hipd,rsd,sans,reflectometer/commands.tcl Initilise ::motor::is_homing_list for the ::motor::go_hom command util/command.tcl Allow an empty parameter list server_config.tcl Call the "commands" initilisation function on server init motor_asim.c Added the "home" parameter so we can test the go_home command r2677 | ffr | 2008-08-14 15:00:18 +1000 (Thu, 14 Aug 2008) | 17 lines
84 lines
2.1 KiB
Tcl
84 lines
2.1 KiB
Tcl
source $cfPath(commands)/commands_common.tcl
|
|
|
|
namespace eval motor {
|
|
# is_homing_list = comma separated list of motors which are safe to send "home"
|
|
variable is_homing_list ""
|
|
}
|
|
|
|
namespace eval sample {
|
|
command select {int=0:8 sampid} {
|
|
SampleNum $sampid
|
|
}
|
|
}
|
|
|
|
namespace eval optics {
|
|
VarMake ::optics::select::section text user
|
|
VarMake ::optics::polarizer::in text user
|
|
VarMake ::optics::lens::selection text user
|
|
|
|
command rotary_attenuator {int=0,15,45,90,180 angle} {
|
|
AttRotDeg $angle
|
|
}
|
|
|
|
command entrance_aperture {
|
|
int=0,45,90,135,180,270 angle
|
|
text=circ,squ,open,rect shape
|
|
} {
|
|
RotApDeg $angle
|
|
RotApShape $shape
|
|
}
|
|
|
|
command sample_aperture {
|
|
int=25,50 size
|
|
text=circ,squ,open,rect shape
|
|
} {
|
|
SApXmm $size
|
|
SApZmm $size
|
|
SApShape $shape
|
|
}
|
|
|
|
##############################
|
|
##
|
|
# @brief set_guide uses a lookup table to setup the collimation system
|
|
# @param row, selects a row from the guide configuration table
|
|
#
|
|
# eg\n
|
|
# set_guide HIRES
|
|
command guide "
|
|
text=[join [array names ::optics::guide_configuration] , ] configuration
|
|
" {
|
|
|
|
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}
|
|
|
|
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
|
|
}
|
|
::optics::guide -set feedback status IDLE
|
|
}
|
|
::optics::guide -addfb text status
|
|
::optics::guide -set feedback status IDLE
|
|
}
|
|
|
|
proc ::commands::isc_initialize {} {
|
|
::commands::ic_initialize
|
|
}
|