echidna_configuration.tcl

Load sct_lakeshore 340 and 336 configurations.  Load new robot pick and place configuration

hmm_configuration.tcl
Override proc CAT_TABLE to add offset and magnification configuration.

motor_configuration.tcl
Modularised for tilt and euler configurations.

Added euler_configuration.tcl and put tilt stage configuration in tilt_configuration.tcl
r3030 | ffr | 2010-12-01 10:29:42 +1100 (Wed, 01 Dec 2010) | 10 lines
This commit is contained in:
Ferdi Franceschini
2010-12-01 10:29:42 +11:00
committed by Douglas Clowes
parent 2e658ff4a9
commit d274698ff4
6 changed files with 193 additions and 139 deletions

View File

@@ -2,8 +2,8 @@ config/source/source_common.tcl
config/anticollider/anticollider_common.tcl config/anticollider/anticollider_common.tcl
config/plc/plc_common_1.tcl config/plc/plc_common_1.tcl
config/counter/counter_common_1.tcl config/counter/counter_common_1.tcl
config/environment/temperature/lakeshore340_common.tcl config/environment/temperature/sct_lakeshore_340.tcl
config/environment/temperature/sct_lakeshore_3xx.tcl config/environment/temperature/sct_lakeshore_336.tcl
config/environment/temperature/west400.tcl config/environment/temperature/west400.tcl
config/hipadaba/hipadaba_configuration_common.tcl config/hipadaba/hipadaba_configuration_common.tcl
config/hipadaba/common_instrument_dictionary.tcl config/hipadaba/common_instrument_dictionary.tcl
@@ -12,6 +12,7 @@ config/hmm/hmm_configuration_common_1.tcl
config/hmm/hmm_object.tcl config/hmm/hmm_object.tcl
config/hmm/hmm_cylindrical_detector_configuration.tcl config/hmm/hmm_cylindrical_detector_configuration.tcl
config/hmm/anstohm_linked.xml config/hmm/anstohm_linked.xml
config/robots/sct_pickandplace.tcl
config/scan/scan_common_1.hdd config/scan/scan_common_1.hdd
config/scan/scan_common_1.tcl config/scan/scan_common_1.tcl
config/nexus/nxscripts_common_1.tcl config/nexus/nxscripts_common_1.tcl

View File

@@ -28,6 +28,21 @@ proc ::histogram_memory::init_SAT_TABLE {} {
} }
} }
proc CAT_TABLE {args} {
return {
<CAT>
<WIX APPLY="ENABLE" MIN_RAW="0" MAX_RAW="127" TABLE_SIZE="128">
<link_numeric_file filename="../../echidna_wix.dat" default_filename="../HMconfig/Default/echidna_wix.dat" />
</WIX>
<OFFSET_Y_PER_X APPLY="ENABLE" MIN_RAW="0" MAX_RAW="127" TABLE_SIZE="128" BASE_VAL="0">
<link_numeric_file filename="../../echidna_offset_y_per_x.dat" default_filename="../HMconfig/Default/echidna_offset_y_per_x.dat" />
</OFFSET_Y_PER_X>
<MAGNIFY APPLY="ENABLE" MIN_RAW="0" MAX_RAW="127" TABLE_SIZE="128" DIRECTION="X" MAX_IN="479" MAX_OUT="479" RANGE="UNSIGNED">
<link_numeric_file filename="../../echidna_magnify.dat" default_filename="../HMconfig/Default/echidna_magnify.dat" />
</MAGNIFY>
</CAT>
}
}
proc ::histogram_memory::init_CAT_TABLE {} { proc ::histogram_memory::init_CAT_TABLE {} {
CAT_TABLE -set MESYTEC_MPSD8_CHANNEL_GAINS { CAT_TABLE -set MESYTEC_MPSD8_CHANNEL_GAINS {
1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00
@@ -142,7 +157,7 @@ proc ::histogram_memory::isc_initialize {} {
hmm configure $INST_NXC 64 hmm configure $INST_NXC 64
} }
BAT_TABLE -init BAT_TABLE -init
CAT_TABLE -init # CAT_TABLE -init
SAT_TABLE -init SAT_TABLE -init
OAT_TABLE -init OAT_TABLE -init
FAT_TABLE -init FAT_TABLE -init
@@ -162,7 +177,7 @@ proc ::histogram_memory::isc_initialize {} {
# hmm configure FAT_SIMULATED_EVENT_X1 $xbbmax # hmm configure FAT_SIMULATED_EVENT_X1 $xbbmax
::histogram_memory::init_OAT_TABLE ::histogram_memory::init_OAT_TABLE
::histogram_memory::init_SAT_TABLE ::histogram_memory::init_SAT_TABLE
::histogram_memory::init_CAT_TABLE # ::histogram_memory::init_CAT_TABLE
::histogram_memory::upload_config Filler_defaults ::histogram_memory::upload_config Filler_defaults
set ::histogram_memory::histmem_axes(HOR) /instrument/detector/x_pixel_angular_offset set ::histogram_memory::histmem_axes(HOR) /instrument/detector/x_pixel_angular_offset

View File

@@ -0,0 +1,74 @@
# This must be loaded by motor_configuration.tcl
set ephi_Home 6647698
set echi_Home 8919294
set eom_Home 23165482
# Sample Tilt 1, euler omega stage
Motor eom $motor_driver_type [params \
asyncqueue mc2\
axis A\
units degrees\
hardlowerlim -45\
hardupperlim 80\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX 25000\
absEnc 1\
absEncHome $eom_Home\
cntsPerX -8192]
setHomeandRange -motor eom -home 0 -lowrange 35 -uprange 80
eom speed 1
eom movecount $move_count
eom precision 0.01
eom part sample
eom long_name euler_omega
# Sample Tilt 2, euler chi stage
Motor echi $motor_driver_type [params \
asyncqueue mc2\
axis B\
units degrees\
hardlowerlim -32\
hardupperlim 97\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX -25000\
absEnc 1\
absEncHome $echi_Home\
cntsPerX 8192]
setHomeandRange -motor echi -home 0 -lowrange 10 -uprange 95
echi softlowerlim -10
echi softupperlim 90
echi home 0
echi speed 1
echi movecount $move_count
echi precision 0.01
echi part sample
echi long_name euler_chi
# Sample Trans 1, upper, y
Motor ephi $motor_driver_type [params \
asyncqueue mc2\
axis C\
units degrees\
hardlowerlim -185\
hardupperlim 185\
maxSpeed 5\
maxAccel 5\
maxDecel 1\
stepsPerX -12500\
absEnc 1\
absEncHome $ephi_Home\
cntsPerX -4096]
setHomeandRange -motor ephi -home 0 -lowrange 180 -uprange 180
ephi softlowerlim -180
ephi softupperlim 180
ephi home 0
ephi speed 1
ephi movecount $move_count
ephi precision 0.01
ephi part sample
ephi long_name euler_phi

View File

@@ -107,6 +107,8 @@ set slit2HGroup second/horizontal
# hnotify messages to a reasonable level # hnotify messages to a reasonable level
set move_count 10 set move_count 10
fileeval $cfPath(motors)/tilt_configuration.tcl
#fileeval $cfPath(motors)/euler_configuration.tcl
############################ ############################
# Motor Controller 1 # Motor Controller 1
# Motor Controller 1 # Motor Controller 1
@@ -354,90 +356,6 @@ scr long_name secondary_collimator_rotation
# Motor Controller 2 # Motor Controller 2
############################ ############################
# Sample Tilt 1, upper, phi
Motor sphi $motor_driver_type [params \
asyncqueue mc2\
axis A\
units degrees\
hardlowerlim -16\
hardupperlim 16\
maxSpeed 2\
maxAccel 1\
maxDecel 1\
stepsPerX -25000\
absEnc 1\
absEncHome $sphi_Home\
cntsPerX -8192]
setHomeandRange -motor sphi -home 0 -lowrange 16 -uprange 16
sphi speed 1
sphi movecount $move_count
sphi precision 0.01
sphi part sample
sphi long_name phi
# Sample Tilt 2, lower, chi
Motor schi $motor_driver_type [params \
asyncqueue mc2\
axis B\
units degrees\
hardlowerlim 74\
hardupperlim 106\
maxSpeed 2\
maxAccel 1\
maxDecel 1\
stepsPerX 25000\
absEnc 1\
absEncHome $schi_Home\
cntsPerX 8192]
setHomeandRange -motor schi -home 90 -lowrange 16 -uprange 16
schi speed 1
schi movecount $move_count
schi precision 0.01
schi part sample
schi long_name chi
# Sample Trans 1, upper, y
Motor sy $motor_driver_type [params \
asyncqueue mc2\
axis C\
units mm\
hardlowerlim -20\
hardupperlim 20\
maxSpeed 2\
maxAccel 1\
maxDecel 1\
stepsPerX 25000\
absEnc 1\
absEncHome $sy_Home\
cntsPerX 8192]
setHomeandRange -motor sy -home 0 -lowrange 20 -uprange 20
sy speed 1
sy movecount $move_count
sy precision 0.01
sy part sample
sy long_name translate_y
# Sample Trans2, lower, x
Motor sx $motor_driver_type [params \
asyncqueue mc2\
axis D\
units mm\
hardlowerlim -20\
hardupperlim 20\
maxSpeed 2\
maxAccel 1\
maxDecel 1\
stepsPerX -25000\
absEnc 1\
absEncHome $sx_Home\
cntsPerX -8192]
setHomeandRange -motor sx -home 0 -lowrange 20 -uprange 20
sx speed 1
sx movecount $move_count
sx precision 0.01
sx part sample
sx long_name translate_x
# Sample Omega, rotate # Sample Omega, rotate
Motor som $motor_driver_type [params \ Motor som $motor_driver_type [params \
asyncqueue mc2\ asyncqueue mc2\
@@ -606,34 +524,6 @@ ss1d long_name first_bottom
############################ ############################
# #
# Little is known about the Eulerian Cradle
## Eulerian-phi
#Motor ephi $motor_driver_type [params \
# asyncqueue mc4\
# axis A\
# units degrees\
# maxSpeed xxxx\
# maxAccel xxxx\
# maxDecel xxxx\
# stepsPerX xxxx\
# absEnc 1\
# absEncHome $ephi_Home\
# cntsPerX xxxx]
#setHomeandRange -motor ephi -home 0 -lowrange 180 -uprange 180
#Motor echi $motor_driver_type [params \
# asyncqueue mc4\
# axis B\
# units degrees\
# maxSpeed xxxx\
# maxAccel xxxx\
# maxDecel xxxx\
# stepsPerX xxxx\
# absEnc 1\
# absEncHome $echi_Home\
# cntsPerX xxxx]
#setHomeandRange -motor echi -home 0 -lowrange 180 -uprange 180
# Slit 2, right # Slit 2, right
Motor ss2r $motor_driver_type [params \ Motor ss2r $motor_driver_type [params \
asyncqueue mc4\ asyncqueue mc4\

View File

@@ -0,0 +1,84 @@
# Sample Tilt 1, upper, phi
Motor sphi $motor_driver_type [params \
asyncqueue mc2\
axis A\
units degrees\
hardlowerlim -16\
hardupperlim 16\
maxSpeed 2\
maxAccel 1\
maxDecel 1\
stepsPerX -25000\
absEnc 1\
absEncHome $sphi_Home\
cntsPerX -8192]
setHomeandRange -motor sphi -home 0 -lowrange 16 -uprange 16
sphi speed 1
sphi movecount $move_count
sphi precision 0.01
sphi part sample
sphi long_name phi
# Sample Tilt 2, lower, chi
Motor schi $motor_driver_type [params \
asyncqueue mc2\
axis B\
units degrees\
hardlowerlim 74\
hardupperlim 106\
maxSpeed 2\
maxAccel 1\
maxDecel 1\
stepsPerX 25000\
absEnc 1\
absEncHome $schi_Home\
cntsPerX 8192]
setHomeandRange -motor schi -home 90 -lowrange 16 -uprange 16
schi speed 1
schi movecount $move_count
schi precision 0.01
schi part sample
schi long_name chi
# Sample Trans 1, upper, y
Motor sy $motor_driver_type [params \
asyncqueue mc2\
axis C\
units mm\
hardlowerlim -20\
hardupperlim 20\
maxSpeed 2\
maxAccel 1\
maxDecel 1\
stepsPerX 25000\
absEnc 1\
absEncHome $sy_Home\
cntsPerX 8192]
setHomeandRange -motor sy -home 0 -lowrange 20 -uprange 20
sy speed 1
sy movecount $move_count
sy precision 0.01
sy part sample
sy long_name translate_y
# Sample Trans2, lower, x
Motor sx $motor_driver_type [params \
asyncqueue mc2\
axis D\
units mm\
hardlowerlim -20\
hardupperlim 20\
maxSpeed 2\
maxAccel 1\
maxDecel 1\
stepsPerX -25000\
absEnc 1\
absEncHome $sx_Home\
cntsPerX -8192]
setHomeandRange -motor sx -home 0 -lowrange 20 -uprange 20
sx speed 1
sx movecount $move_count
sx precision 0.01
sx part sample
sx long_name translate_x

View File

@@ -25,40 +25,30 @@ fileeval $cfPath(motors)/positmotor_configuration.tcl
fileeval $cfPath(plc)/plc.tcl fileeval $cfPath(plc)/plc.tcl
fileeval $cfPath(counter)/counter.tcl fileeval $cfPath(counter)/counter.tcl
#TODO Provide method for choosing environment controller #TODO Provide method for choosing environment controller
fileeval $cfPath(environment)/temperature/lakeshore340.tcl fileeval $cfPath(environment)/temperature/sct_lakeshore_336.tcl
fileeval $cfPath(environment)/temperature/sct_lakeshore_3xx.tcl fileeval $cfPath(environment)/temperature/sct_lakeshore_340.tcl
fileeval $cfPath(environment)/temperature/west400.tcl fileeval $cfPath(environment)/temperature/west400.tcl
fileeval $cfPath(hmm)/hmm_configuration.tcl fileeval $cfPath(hmm)/hmm_configuration.tcl
fileeval $cfPath(nexus)/nxscripts.tcl fileeval $cfPath(nexus)/nxscripts.tcl
fileeval $cfPath(scan)/scan.tcl fileeval $cfPath(scan)/scan.tcl
fileeval $cfPath(commands)/commands.tcl fileeval $cfPath(commands)/commands.tcl
fileeval $cfPath(anticollider)/anticollider.tcl fileeval $cfPath(anticollider)/anticollider.tcl
fileeval $cfPath(environment)/robby_configuration.tcl #fileeval $cfPath(environment)/robby_configuration.tcl
fileeval $cfPath(robots)/sct_pickandplace.tcl
source gumxml.tcl source gumxml.tcl
# ::environment::temperature::add_ls340 tc1 137.157.201.86 1
# ::environment::temperature::add_ls340 tc2 137.157.201.86 2
## ##########################################################
# New lakeshore driver. BETA status. Data saving not tested # Current driver for Lakeshore temperature controllers #
#add_ls340t tc1 ca5-[instname] 4001 ##########################################################
#add_ls340t tc2 ca5-[instname] 4002 # driverName shortName IP-address port LineTerminator Tolerance1 Tolerance2 optional_Verbose
#add_sct_ls336 tc1 137.157.201.23 7777 "\r\n" 5.0 5.0
# New Lakeshore series driver for models 340 and 336 #add_sct_ls340 tc2 ca5-[instname] 4001 "\r" 0.5 1.0
# driverName shortName IP-address portOnMoxa temperatureTolerance1 Tolerance2 LakeshoreModel
# ffr 2009-11-11: NOTE I've added a line terminator argument to the ls3xx setup.
# You need to set the line termintator to either "\r\n" for CRLF or "\r" for CR
# axm 2010-02-10: NOTE the ls3xx driver versions 2010-01-25 and newer expect 2 tolerance values,
# one for each control loop.
# name IP-address port term tol1 tol2 LakeshoreModel
# add_ls3xx tc1 137.157.201.23 7777 "\r\n" 2.0 10.0 336
###add_ls3xx tc1 137.157.201.23 7777 "\r\n" 5.0 336
#add_ls3xx tc1 ca5-[instname] 4001 "\r\n" 0.5 340
#add_ls3xx tc2 ca5-[instname] 4001 "\r" 0.5 340
#::environment::temperature::add_west400 137.157.201.14 #::environment::temperature::add_west400 137.157.201.14
###::robot::add_robby #::robot::add_robby
add_robot robby 137.157.201.26 6000
#add_robot rosie 137.157.201.26 6000
server_init server_init
########################################### ###########################################
# WARNING: Do not add any code below server_init, if you do SICS may fail to initialise properly. # WARNING: Do not add any code below server_init, if you do SICS may fail to initialise properly.