Further refinement of slit configurations

r1408 | dcl | 2007-01-18 14:18:01 +1100 (Thu, 18 Jan 2007) | 2 lines
This commit is contained in:
Douglas Clowes
2007-01-18 14:18:01 +11:00
parent 60ed8a9a72
commit 4514dc01db
3 changed files with 191 additions and 133 deletions

View File

@@ -1,22 +1,64 @@
# $Revision: 1.4 $ # $Revision: 1.5 $
# $Date: 2006-12-12 21:03:10 $ # $Date: 2007-01-18 03:16:56 $
# Author: Ferdi Franceschini (ffr@ansto.gov.au) # Author: Ferdi Franceschini (ffr@ansto.gov.au)
# Last revision by: $Author: dcl $ # Last revision by: $Author: dcl $
# START MOTOR CONFIGURATION # START MOTOR CONFIGURATION
set animal wombat
# Setup addresses of Galil DMC2280 controllers. # Setup addresses of Galil DMC2280 controllers.
set dmc2280_controller1(host) mc1-wombat set dmc2280_controller1(host) mc1-$animal
set dmc2280_controller1(port) pmc1-wombat set dmc2280_controller1(port) pmc1-$animal
set dmc2280_controller2(host) mc2-wombat set dmc2280_controller2(host) mc2-$animal
set dmc2280_controller2(port) pmc2-wombat set dmc2280_controller2(port) pmc2-$animal
set dmc2280_controller3(host) mc3-wombat set dmc2280_controller3(host) mc3-$animal
set dmc2280_controller3(port) pmc3-wombat set dmc2280_controller3(port) pmc3-$animal
set dmc2280_controller4(host) mc4-wombat set dmc2280_controller4(host) mc4-$animal
set dmc2280_controller4(port) pmc4-wombat set dmc2280_controller4(port) pmc4-$animal
#Measured absolute encoder reading at home position
set mphi_Home 7414753
set mchi_Home 7818915
set my_Home 7781680
set mx_Home 7562793
set mom_Home 17694127
set mtth_Home 10299428
set sphi_Home 7934290
set schi_Home 7581355
set sy_Home 7562793
set sx_Home 7562793
set som_Home 17694127
set stth_Home 6559259
#Measured or computed slit motor steps per millimetre
# 125 steps * 161:1 gears = 20125
set slitStepRate 20125
#Measured slit gap, in units, after homing on limit switches
set ss1h_Gap 52.5
set ss1v_Gap 205.9
set ss2h_Gap 51.3
set ss2v_Gap 203.3
set ss1r_Home [expr $ss1h_Gap/2*$slitStepRate]
set ss1l_Home [expr $ss1h_Gap/2*$slitStepRate]
set ss1u_Home [expr $ss1v_Gap/2*$slitStepRate]
set ss1d_Home [expr $ss1v_Gap/2*$slitStepRate]
set ss2r_Home [expr $ss2h_Gap/2*$slitStepRate]
set ss2l_Home [expr $ss2h_Gap/2*$slitStepRate]
set ss2u_Home [expr $ss2v_Gap/2*$slitStepRate]
set ss2d_Home [expr $ss2v_Gap/2*$slitStepRate]
#Default upper and lower ranges for vertical slits
set vertSlitLowRange 25
set vertSlitUpRange 100
#Default upper and lower ranges for horizontal slits
set horSlitLowRange 25
set horSlitUpRange 25
# Run slit homing routines on controllers 3 and 4 # Run slit homing routines on controllers 3 and 4
#if [catch {dmc_connect dmc2280_controller3} ] { #if [catch {dmc_connect dmc2280_controller3} ] {
@@ -47,7 +89,7 @@ Motor mphi DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX -25000\ stepsPerX -25000\
absEnc 1\ absEnc 1\
absEncHome 7414753\ absEncHome $mphi_Home\
cntsPerX -8192] cntsPerX -8192]
setHomeandRange -motor mphi -home 0 -lowrange 15 -uprange 15 setHomeandRange -motor mphi -home 0 -lowrange 15 -uprange 15
mphi speed 1 mphi speed 1
@@ -64,7 +106,7 @@ Motor mchi DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX 25000\ stepsPerX 25000\
absEnc 1\ absEnc 1\
absEncHome 7818915\ absEncHome $mchi_Home\
cntsPerX 8192] cntsPerX 8192]
setHomeandRange -motor mchi -home 90 -lowrange 15 -uprange 15 setHomeandRange -motor mchi -home 90 -lowrange 15 -uprange 15
mchi speed 1 mchi speed 1
@@ -81,7 +123,7 @@ Motor my DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX 25000\ stepsPerX 25000\
absEnc 1\ absEnc 1\
absEncHome 7781680\ absEncHome $my_Home\
cntsPerX 8192] cntsPerX 8192]
setHomeandRange -motor my -home 0 -lowrange 20 -uprange 20 setHomeandRange -motor my -home 0 -lowrange 20 -uprange 20
my speed 1 my speed 1
@@ -98,7 +140,7 @@ Motor mx DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX -25000\ stepsPerX -25000\
absEnc 1\ absEnc 1\
absEncHome 7562793\ absEncHome $mx_Home\
cntsPerX -8192] cntsPerX -8192]
setHomeandRange -motor mx -home 0 -lowrange 20 -uprange 20 setHomeandRange -motor mx -home 0 -lowrange 20 -uprange 20
mx speed 1 mx speed 1
@@ -115,7 +157,7 @@ Motor mom DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX -12500\ stepsPerX -12500\
absEnc 1\ absEnc 1\
absEncHome 17694127\ absEncHome $mom_Home\
cntsPerX -4096] cntsPerX -4096]
setHomeandRange -motor mom -home 0 -lowrange 180 -uprange 180 setHomeandRange -motor mom -home 0 -lowrange 180 -uprange 180
mom speed 1 mom speed 1
@@ -127,19 +169,19 @@ Motor mtth DMC2280 [params \
port $dmc2280_controller1(port)\ port $dmc2280_controller1(port)\
axis F\ axis F\
units degrees\ units degrees\
maxSpeed 0.5\ maxSpeed 0.2\
maxAccel 0.2\ maxAccel 0.2\
maxDecel 0.2\ maxDecel 0.2\
stepsPerX [expr 25000*18]\ stepsPerX [expr 25000*18]\
absEnc 1\ absEnc 1\
absEncHome 10299428\ absEncHome $mtth_Home\
cntsPerX 93207] cntsPerX -93207]
mtth hardlowerlim 86 mtth hardlowerlim 45
mtth hardupperlim 137 mtth hardupperlim 100
mtth softlowerlim 86 mtth softlowerlim 45
mtth softupperlim 137 mtth softupperlim 100
mtth home 90 mtth home 90
mtth speed 0.5 mtth speed 0.2
mtth accel 0.01 mtth accel 0.01
mtth decel 0.01 mtth decel 0.01
mtth precision 0.02 mtth precision 0.02
@@ -151,8 +193,6 @@ mtth failafter 10
# Motor Controller 2 # Motor Controller 2
# Motor Controller 2 # Motor Controller 2
############################ ############################
#:TP at HOME
#
# Sample Tilt 1, upper, phi # Sample Tilt 1, upper, phi
Motor sphi DMC2280 [params \ Motor sphi DMC2280 [params \
@@ -165,7 +205,7 @@ Motor sphi DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX -25000\ stepsPerX -25000\
absEnc 1\ absEnc 1\
absEncHome 7934290\ absEncHome $sphi_Home\
cntsPerX -8192] cntsPerX -8192]
setHomeandRange -motor sphi -home 0 -lowrange 20 -uprange 20 setHomeandRange -motor sphi -home 0 -lowrange 20 -uprange 20
sphi speed 1 sphi speed 1
@@ -182,7 +222,7 @@ Motor schi DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX 25000\ stepsPerX 25000\
absEnc 1\ absEnc 1\
absEncHome 7581355\ absEncHome $schi_Home\
cntsPerX 8192] cntsPerX 8192]
setHomeandRange -motor schi -home 90 -lowrange 20 -uprange 20 setHomeandRange -motor schi -home 90 -lowrange 20 -uprange 20
schi speed 1 schi speed 1
@@ -199,7 +239,7 @@ Motor sy DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX 25000\ stepsPerX 25000\
absEnc 1\ absEnc 1\
absEncHome 7562793\ absEncHome $sy_Home\
cntsPerX 8192] cntsPerX 8192]
setHomeandRange -motor sy -home 0 -lowrange 20 -uprange 20 setHomeandRange -motor sy -home 0 -lowrange 20 -uprange 20
sy speed 1 sy speed 1
@@ -216,7 +256,7 @@ Motor sx DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX -25000\ stepsPerX -25000\
absEnc 1\ absEnc 1\
absEncHome 7562793\ absEncHome $sx_Home\
cntsPerX -8192] cntsPerX -8192]
setHomeandRange -motor sx -home 0 -lowrange 20 -uprange 20 setHomeandRange -motor sx -home 0 -lowrange 20 -uprange 20
sx speed 1 sx speed 1
@@ -233,9 +273,9 @@ Motor som DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX 12500\ stepsPerX 12500\
absEnc 1\ absEnc 1\
absEncHome 17694127\ absEncHome $som_Home\
cntsPerX 4096] cntsPerX 4096]
setHomeandRange -motor som -home 0 -lowrange 180 -uprange 180 setHomeandRange -motor som -home 0 -lowrange 90 -uprange 90
som speed 1 som speed 1
som precision 0.01 som precision 0.01
@@ -246,12 +286,12 @@ Motor stth DMC2280 [params \
axis F\ axis F\
units degrees\ units degrees\
maxSpeed 0.5\ maxSpeed 0.5\
maxAccel 0.2\ maxAccel 0.1\
maxDecel 0.2\ maxDecel 0.1\
stepsPerX 125000\ stepsPerX 125000\
absEnc 1\ absEnc 1\
absEncHome 6559259\ absEncHome $stth_Home\
cntsPerX 93207] cntsPerX -93207]
stth hardlowerlim -60 stth hardlowerlim -60
stth hardupperlim 60 stth hardupperlim 60
stth softlowerlim -60 stth softlowerlim -60
@@ -260,17 +300,6 @@ stth home 0
stth speed 0.5 stth speed 0.5
stth precision 0.01 stth precision 0.01
#Default upper and lower ranges for vertical slits
set vertSlitLowRange 20
set vertSlitUpRange 100
#Default upper and lower ranges for horizontal slits
set horSlitLowRange 15
set horSlitUpRange 35
#Measured or computed slit motor steps per millimetre
set slitStepRate 20180
############################ ############################
# Motor Controller 3 # Motor Controller 3
# Motor Controller 3 # Motor Controller 3
@@ -289,7 +318,7 @@ set slitStepRate 20180
# maxDecel xxxx\ # maxDecel xxxx\
# stepsPerX xxxx\ # stepsPerX xxxx\
# absEnc 1\ # absEnc 1\
# absEncHome xxxx\ # absEncHome $mf1_Home\
# cntsPerX xxxx] # cntsPerX xxxx]
#setHomeandRange -motor mf1 -home 0 -lowrange 0 -uprange 360 #setHomeandRange -motor mf1 -home 0 -lowrange 0 -uprange 360
#mf1 speed 1 #mf1 speed 1
@@ -322,7 +351,7 @@ Motor ss1r DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 54.5/2*$slitStepRate]] motorHome $ss1r_Home]
setHomeandRange -motor ss1r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss1r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 1, left # Slit 1, left
@@ -335,7 +364,7 @@ Motor ss1l DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 54.5/2*$slitStepRate]] motorHome $ss1l_Home]
setHomeandRange -motor ss1l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss1l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 1, up # Slit 1, up
@@ -348,7 +377,7 @@ Motor ss1u DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 207.5/2*$slitStepRate]] motorHome $ss1u_Home]
setHomeandRange -motor ss1u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss1u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
# Slit 1, down # Slit 1, down
@@ -361,7 +390,7 @@ Motor ss1d DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 207.5/2*$slitStepRate]] motorHome $ss1d_Home]
setHomeandRange -motor ss1d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss1d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
############################ ############################
@@ -381,7 +410,7 @@ Motor ss2r DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 52.25/2*$slitStepRate]] motorHome $ss2r_Home]
setHomeandRange -motor ss2r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss2r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 2, left # Slit 2, left
@@ -394,7 +423,7 @@ Motor ss2l DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 52.25/2*$slitStepRate]] motorHome $ss2l_Home]
setHomeandRange -motor ss2l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss2l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 2, up # Slit 2, up
@@ -407,7 +436,7 @@ Motor ss2u DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 204.1/2*$slitStepRate]] motorHome $ss2u_Home]
setHomeandRange -motor ss2u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss2u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
# Slit 2, down # Slit 2, down
@@ -420,7 +449,7 @@ Motor ss2d DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 204.1/2*$slitStepRate]] motorHome $ss2d_Home]
setHomeandRange -motor ss2d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss2d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
proc mthGet {} { return [expr [SplitReply [mtth]]/2.0]} proc mthGet {} { return [expr [SplitReply [mtth]]/2.0]}

View File

@@ -1,22 +1,66 @@
# $Revision: 1.11 $ # $Revision: 1.12 $
# $Date: 2007-01-17 05:30:10 $ # $Date: 2007-01-18 03:15:58 $
# Author: Ferdi Franceschini (ffr@ansto.gov.au) # Author: Ferdi Franceschini (ffr@ansto.gov.au)
# Last revision by: $Author: ffr $ # Last revision by: $Author: dcl $
# START MOTOR CONFIGURATION # START MOTOR CONFIGURATION
set animal echidna
# Setup addresses of Galil DMC2280 controllers. # Setup addresses of Galil DMC2280 controllers.
set dmc2280_controller1(host) mc1-echidna set dmc2280_controller1(host) mc1-$animal
set dmc2280_controller1(port) pmc1-echidna set dmc2280_controller1(port) pmc1-$animal
set dmc2280_controller2(host) mc2-echidna set dmc2280_controller2(host) mc2-$animal
set dmc2280_controller2(port) pmc2-echidna set dmc2280_controller2(port) pmc2-$animal
set dmc2280_controller3(host) mc3-echidna set dmc2280_controller3(host) mc3-$animal
set dmc2280_controller3(port) pmc3-echidna set dmc2280_controller3(port) pmc3-$animal
set dmc2280_controller4(host) mc4-echidna set dmc2280_controller4(host) mc4-$animal
set dmc2280_controller4(port) pmc4-echidna set dmc2280_controller4(port) pmc4-$animal
#Measured absolute encoder reading at home position
set mphi_Home 7415177
set mchi_Home 7818798
set my_Home 7779997
set mx_Home 7580365
set mom_Home 13442932
set mtth_Home 11477617
set pcx_Home 8345644
set pcr_Home 6197934
set sphi_Home 7924507
set schi_Home 7542917
set sy_Home 7626584
set sx_Home 24029910
set som_Home 24984596
set stth_Home 14530407
#Measured or computed slit motor steps per millimetre
# 125 steps * 161:1 gears = 20125
set slitStepRate 20125
#Measured slit gap, in units, after homing on limit switches
set ss1h_Gap 54.0
set ss1v_Gap 207.5
set ss2h_Gap 52.0
set ss2v_Gap 203.4
set ss1r_Home [expr $ss1h_Gap/2*$slitStepRate]
set ss1l_Home [expr $ss1h_Gap/2*$slitStepRate]
set ss1u_Home [expr $ss1v_Gap/2*$slitStepRate]
set ss1d_Home [expr $ss1v_Gap/2*$slitStepRate]
set ss2r_Home [expr $ss2h_Gap/2*$slitStepRate]
set ss2l_Home [expr $ss2h_Gap/2*$slitStepRate]
set ss2u_Home [expr $ss2v_Gap/2*$slitStepRate]
set ss2d_Home [expr $ss2v_Gap/2*$slitStepRate]
#Default upper and lower ranges for vertical slits
set vertSlitLowRange 25
set vertSlitUpRange 100
#Default upper and lower ranges for horizontal slits
set horSlitLowRange 25
set horSlitUpRange 25
# Run slit homing routines on controllers 3 and 4 # Run slit homing routines on controllers 3 and 4
#if [catch {dmc_connect dmc2280_controller3} ] { #if [catch {dmc_connect dmc2280_controller3} ] {
@@ -47,7 +91,7 @@ Motor mphi DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX -25000\ stepsPerX -25000\
absEnc 1\ absEnc 1\
absEncHome 7415177\ absEncHome $mphi_Home\
cntsPerX -8192] cntsPerX -8192]
setHomeandRange -motor mphi -home 0 -lowrange 15 -uprange 15 setHomeandRange -motor mphi -home 0 -lowrange 15 -uprange 15
mphi speed 1 mphi speed 1
@@ -64,7 +108,7 @@ Motor mchi DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX 25000\ stepsPerX 25000\
absEnc 1\ absEnc 1\
absEncHome 7818798\ absEncHome $mchi_Home\
cntsPerX 8192] cntsPerX 8192]
setHomeandRange -motor mchi -home 90 -lowrange 15 -uprange 15 setHomeandRange -motor mchi -home 90 -lowrange 15 -uprange 15
mchi speed 1 mchi speed 1
@@ -81,7 +125,7 @@ Motor my DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX 25000\ stepsPerX 25000\
absEnc 1\ absEnc 1\
absEncHome 7779997\ absEncHome $my_Home\
cntsPerX 8192] cntsPerX 8192]
setHomeandRange -motor my -home 0 -lowrange 20 -uprange 20 setHomeandRange -motor my -home 0 -lowrange 20 -uprange 20
my speed 1 my speed 1
@@ -98,7 +142,7 @@ Motor mx DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX -25000\ stepsPerX -25000\
absEnc 1\ absEnc 1\
absEncHome 7580365\ absEncHome $mx_Home\
cntsPerX -8192] cntsPerX -8192]
setHomeandRange -motor mx -home 0 -lowrange 20 -uprange 20 setHomeandRange -motor mx -home 0 -lowrange 20 -uprange 20
mx speed 1 mx speed 1
@@ -115,7 +159,7 @@ Motor mom DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX -12500\ stepsPerX -12500\
absEnc 1\ absEnc 1\
absEncHome 13442932\ absEncHome $mom_Home\
cntsPerX -4096] cntsPerX -4096]
setHomeandRange -motor mom -home 0 -lowrange 180 -uprange 180 setHomeandRange -motor mom -home 0 -lowrange 180 -uprange 180
mom speed 1 mom speed 1
@@ -132,7 +176,7 @@ Motor mtth DMC2280 [params \
maxDecel 0.2\ maxDecel 0.2\
stepsPerX [expr 25000*18]\ stepsPerX [expr 25000*18]\
absEnc 1\ absEnc 1\
absEncHome 11477617\ absEncHome $mtth_Home\
cntsPerX -93207] cntsPerX -93207]
mtth hardlowerlim 90 mtth hardlowerlim 90
mtth hardupperlim 137 mtth hardupperlim 137
@@ -157,7 +201,7 @@ Motor pcx DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX [expr -25000/6]\ stepsPerX [expr -25000/6]\
absEnc 1\ absEnc 1\
absEncHome 8345644\ absEncHome $pcx_Home\
cntsPerX [expr 8192/6]] cntsPerX [expr 8192/6]]
setHomeandRange -motor pcx -home 0 -lowrange 0 -uprange 140 setHomeandRange -motor pcx -home 0 -lowrange 0 -uprange 140
pcx speed 1 pcx speed 1
@@ -174,7 +218,7 @@ Motor pcr DMC2280 [params \
maxDecel 0.1\ maxDecel 0.1\
stepsPerX [expr -25000/(360/100)]\ stepsPerX [expr -25000/(360/100)]\
absEnc 1\ absEnc 1\
absEncHome 6197934\ absEncHome $pcr_Home\
cntsPerX [expr 8192/(360/100)]] cntsPerX [expr 8192/(360/100)]]
setHomeandRange -motor pcr -home 0 -lowrange 10 -uprange 10 setHomeandRange -motor pcr -home 0 -lowrange 10 -uprange 10
pcr speed 0.1 pcr speed 0.1
@@ -185,8 +229,6 @@ pcr precision 0.01
# Motor Controller 2 # Motor Controller 2
# Motor Controller 2 # Motor Controller 2
############################ ############################
#:TP at HOME
# 7924507, 7542917, 7626584, 24029910, 24984596, 14530407, 22369621, 22369621
# Sample Tilt 1, upper, phi # Sample Tilt 1, upper, phi
Motor sphi DMC2280 [params \ Motor sphi DMC2280 [params \
@@ -199,7 +241,7 @@ Motor sphi DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX -25000\ stepsPerX -25000\
absEnc 1\ absEnc 1\
absEncHome 7924507\ absEncHome $sphi_Home\
cntsPerX -8192] cntsPerX -8192]
setHomeandRange -motor sphi -home 0 -lowrange 20 -uprange 20 setHomeandRange -motor sphi -home 0 -lowrange 20 -uprange 20
sphi speed 1 sphi speed 1
@@ -216,7 +258,7 @@ Motor schi DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX 25000\ stepsPerX 25000\
absEnc 1\ absEnc 1\
absEncHome 7542917\ absEncHome $schi_Home\
cntsPerX 8192] cntsPerX 8192]
setHomeandRange -motor schi -home 90 -lowrange 20 -uprange 20 setHomeandRange -motor schi -home 90 -lowrange 20 -uprange 20
schi speed 1 schi speed 1
@@ -233,7 +275,7 @@ Motor sy DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX 25000\ stepsPerX 25000\
absEnc 1\ absEnc 1\
absEncHome 7626584\ absEncHome $sy_Home\
cntsPerX 8192] cntsPerX 8192]
setHomeandRange -motor sy -home 0 -lowrange 20 -uprange 20 setHomeandRange -motor sy -home 0 -lowrange 20 -uprange 20
sy speed 1 sy speed 1
@@ -250,7 +292,7 @@ Motor sx DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX -25000\ stepsPerX -25000\
absEnc 1\ absEnc 1\
absEncHome 24029910\ absEncHome $sx_Home\
cntsPerX -8192] cntsPerX -8192]
setHomeandRange -motor sx -home 0 -lowrange 20 -uprange 20 setHomeandRange -motor sx -home 0 -lowrange 20 -uprange 20
sx speed 1 sx speed 1
@@ -267,7 +309,7 @@ Motor som DMC2280 [params \
maxDecel 1\ maxDecel 1\
stepsPerX 12500\ stepsPerX 12500\
absEnc 1\ absEnc 1\
absEncHome 24984596\ absEncHome $som_Home\
cntsPerX 4096] cntsPerX 4096]
setHomeandRange -motor som -home 0 -lowrange 142 -uprange 218 setHomeandRange -motor som -home 0 -lowrange 142 -uprange 218
som speed 1 som speed 1
@@ -284,7 +326,7 @@ Motor stth DMC2280 [params \
maxDecel 0.1\ maxDecel 0.1\
stepsPerX 125000\ stepsPerX 125000\
absEnc 1\ absEnc 1\
absEncHome 14530407\ absEncHome $stth_Home\
cntsPerX -93207] cntsPerX -93207]
stth hardlowerlim -79 stth hardlowerlim -79
stth hardupperlim 77 stth hardupperlim 77
@@ -294,17 +336,6 @@ stth home 0
stth speed 0.5 stth speed 0.5
stth precision 0.01 stth precision 0.01
#Default upper and lower ranges for vertical slits
set vertSlitLowRange 20
set vertSlitUpRange 100
#Default upper and lower ranges for horizontal slits
set horSlitLowRange 15
set horSlitUpRange 35
#Measured or computed slit motor steps per millimetre
set slitStepRate 20180
############################ ############################
# Motor Controller 3 # Motor Controller 3
# Motor Controller 3 # Motor Controller 3
@@ -323,7 +354,7 @@ set slitStepRate 20180
# maxDecel xxxx\ # maxDecel xxxx\
# stepsPerX xxxx\ # stepsPerX xxxx\
# absEnc 1\ # absEnc 1\
# absEncHome xxxx\ # absEncHome $mf1_Home\
# cntsPerX xxxx] # cntsPerX xxxx]
#setHomeandRange -motor mf1 -home 0 -lowrange 0 -uprange 360 #setHomeandRange -motor mf1 -home 0 -lowrange 0 -uprange 360
#mf1 speed 1 #mf1 speed 1
@@ -339,7 +370,7 @@ Motor ss1r DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 54.5/2*$slitStepRate]] motorHome $ss1r_Home]
setHomeandRange -motor ss1r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss1r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 1, left # Slit 1, left
@@ -352,7 +383,7 @@ Motor ss1l DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 54.5/2*$slitStepRate]] motorHome $ss1l_Home]
setHomeandRange -motor ss1l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss1l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 1, up # Slit 1, up
@@ -365,7 +396,7 @@ Motor ss1u DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 207.5/2*$slitStepRate]] motorHome $ss1u_Home]
setHomeandRange -motor ss1u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss1u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
# Slit 1, down # Slit 1, down
@@ -378,7 +409,7 @@ Motor ss1d DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 207.5/2*$slitStepRate]] motorHome $ss1d_Home]
setHomeandRange -motor ss1d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss1d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
############################ ############################
@@ -400,7 +431,7 @@ setHomeandRange -motor ss1d -home 0 -lowrange $vertSlitLowRange -uprange $vertSl
# maxDecel xxxx\ # maxDecel xxxx\
# stepsPerX xxxx\ # stepsPerX xxxx\
# absEnc 1\ # absEnc 1\
# absEncHome xxxx\ # absEncHome $ephi_Home\
# cntsPerX xxxx] # cntsPerX xxxx]
#setHomeandRange -motor ephi -home 0 -lowrange 180 -uprange 180 #setHomeandRange -motor ephi -home 0 -lowrange 180 -uprange 180
@@ -414,7 +445,7 @@ setHomeandRange -motor ss1d -home 0 -lowrange $vertSlitLowRange -uprange $vertSl
# maxDecel xxxx\ # maxDecel xxxx\
# stepsPerX xxxx\ # stepsPerX xxxx\
# absEnc 1\ # absEnc 1\
# absEncHome xxxx\ # absEncHome $echi_Home\
# cntsPerX xxxx] # cntsPerX xxxx]
#setHomeandRange -motor echi -home 0 -lowrange 180 -uprange 180 #setHomeandRange -motor echi -home 0 -lowrange 180 -uprange 180
@@ -428,7 +459,7 @@ Motor ss2r DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 52.25/2*$slitStepRate]] motorHome $ss2r_Home]
setHomeandRange -motor ss2r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss2r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 2, left # Slit 2, left
@@ -441,7 +472,7 @@ Motor ss2l DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 52.25/2*$slitStepRate]] motorHome $ss2l_Home]
setHomeandRange -motor ss2l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss2l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 2, up # Slit 2, up
@@ -454,7 +485,7 @@ Motor ss2u DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 204.1/2*$slitStepRate]] motorHome $ss2u_Home]
setHomeandRange -motor ss2u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss2u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
# Slit 2, down # Slit 2, down
@@ -467,7 +498,7 @@ Motor ss2d DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome [expr 204.1/2*$slitStepRate]] motorHome $ss2d_Home]
setHomeandRange -motor ss2d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss2d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
proc mthGet {} { return [expr [SplitReply [mtth]]/2.0]} proc mthGet {} { return [expr [SplitReply [mtth]]/2.0]}

View File

@@ -1,7 +1,9 @@
set slit2active 0 set slit2active 0
set animal koala
# Setup addresses of Galil DMC2280 controllers. # Setup addresses of Galil DMC2280 controllers.
set dmc2280_controller2(host) mc2-koala set dmc2280_controller2(host) mc2-$animal
set dmc2280_controller2(port) pmc2-koala set dmc2280_controller2(port) pmc2-$animal
# Run slit homing routines # Run slit homing routines
#if [catch {dmc_connect dmc2280_controller2} ] { #if [catch {dmc_connect dmc2280_controller2} ] {
@@ -19,29 +21,26 @@ set dmc2280_controller2(port) pmc2-koala
# #
#Measured or computed slit motor steps per unit (mm) #Measured or computed slit motor steps per unit (mm)
set slitStepRate 20180 set slitStepRate 20125
#Measured slit gap, in units, after homing on limit switches #Measured slit gap, in units, after homing on limit switches
set s1vGap 128 set ss1h_Gap 52.6
set s1hGap 53 set ss1v_Gap 128.6
set s2vGap 205 set ss2h_Gap 51
set s2hGap 51 set ss2v_Gap 205
#Measured offset for centre opening in units, positive up set ss1r_Home [expr $ss1h_Gap/2*$slitStepRate]
set s1vOff 0 set ss1l_Home [expr $ss1h_Gap/2*$slitStepRate]
set ss1u_Home [expr $ss1v_Gap/2*$slitStepRate]
set s1uHome [expr $s1vGap/2*$slitStepRate] set ss1d_Home [expr $ss1v_Gap/2*$slitStepRate]
set s1dHome [expr $s1vGap/2*$slitStepRate] set ss2r_Home [expr $ss2h_Gap/2*$slitStepRate]
set s1rHome [expr $s1hGap/2*$slitStepRate] set ss2l_Home [expr $ss2h_Gap/2*$slitStepRate]
set s1lHome [expr $s1hGap/2*$slitStepRate] set ss2u_Home [expr $ss2v_Gap/2*$slitStepRate]
set s2uHome [expr $s2vGap/2*$slitStepRate] set ss2d_Home [expr $ss2v_Gap/2*$slitStepRate]
set s2dHome [expr $s2vGap/2*$slitStepRate]
set s2rHome [expr $s2hGap/2*$slitStepRate]
set s2lHome [expr $s2hGap/2*$slitStepRate]
#Default upper and lower ranges for vertical slits #Default upper and lower ranges for vertical slits
set vertSlitLowRange 60 set vertSlitLowRange 64
set vertSlitUpRange 60 set vertSlitUpRange 64
#Default upper and lower ranges for horizontal slits #Default upper and lower ranges for horizontal slits
set horSlitLowRange 25 set horSlitLowRange 25
@@ -56,7 +55,7 @@ Motor ss1r DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome $s1rHome] motorHome $ss1r_Home]
setHomeandRange -motor ss1r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss1r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
Motor ss1l DMC2280 [params \ Motor ss1l DMC2280 [params \
@@ -68,7 +67,7 @@ Motor ss1l DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome $s1lHome] motorHome $ss1l_Home]
setHomeandRange -motor ss1l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss1l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
Motor ss1u DMC2280 [params \ Motor ss1u DMC2280 [params \
@@ -80,7 +79,7 @@ Motor ss1u DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome $s1uHome] motorHome $ss1u_Home]
setHomeandRange -motor ss1u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss1u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
Motor ss1d DMC2280 [params \ Motor ss1d DMC2280 [params \
@@ -92,7 +91,7 @@ Motor ss1d DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome $s1dHome] motorHome $ss1d_Home]
setHomeandRange -motor ss1d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss1d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
if {$slit2active} { if {$slit2active} {
@@ -105,7 +104,7 @@ Motor ss2r DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome $s2rHome] motorHome $ss2r_Home]
setHomeandRange -motor ss2r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss2r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
Motor ss2l DMC2280 [params \ Motor ss2l DMC2280 [params \
@@ -117,7 +116,7 @@ Motor ss2l DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome $s2lHome] motorHome $ss2l_Home]
setHomeandRange -motor ss2l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange setHomeandRange -motor ss2l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
Motor ss2u DMC2280 [params \ Motor ss2u DMC2280 [params \
@@ -129,7 +128,7 @@ Motor ss2u DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome $s2uHome] motorHome $ss2u_Home]
setHomeandRange -motor ss2u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss2u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
Motor ss2d DMC2280 [params \ Motor ss2d DMC2280 [params \
@@ -141,7 +140,7 @@ Motor ss2d DMC2280 [params \
maxAccel 1\ maxAccel 1\
maxDecel 1\ maxDecel 1\
stepsPerX -$slitStepRate\ stepsPerX -$slitStepRate\
motorHome $s2dHome] motorHome $ss2d_Home]
setHomeandRange -motor ss2d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange setHomeandRange -motor ss2d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
} }
@@ -325,4 +324,3 @@ ss2vo readscript ss2readvertoffset
} }
# END MOTOR CONFIGURATION # END MOTOR CONFIGURATION