New motor driver now requires hard upper and lower limits.

r1482 | ffr | 2007-02-14 16:49:53 +1100 (Wed, 14 Feb 2007) | 2 lines
This commit is contained in:
Ferdi Franceschini
2007-02-14 16:49:53 +11:00
committed by Douglas Clowes
parent 6a691d58c7
commit 48c899599e

View File

@ -1,7 +1,7 @@
# $Revision: 1.6 $
# $Date: 2007-01-29 20:57:24 $
# $Revision: 1.7 $
# $Date: 2007-02-14 05:49:53 $
# Author: Ferdi Franceschini (ffr@ansto.gov.au)
# Last revision by: $Author: dcl $
# Last revision by: $Author: ffr $
# START MOTOR CONFIGURATION
@ -58,10 +58,12 @@ 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 vertSlitHome 0
set vertSlitLowRange 25
set vertSlitUpRange 100
#Default upper and lower ranges for horizontal slits
set horSlitHome 0
set horSlitLowRange 25
set horSlitUpRange 25
@ -89,6 +91,8 @@ Motor mphi DMC2280 [params \
port $dmc2280_controller1(port)\
axis A\
units degrees\
hardlowerlim -5\
hardupperlim 5\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
@ -106,6 +110,8 @@ Motor mchi DMC2280 [params \
port $dmc2280_controller1(port)\
axis B\
units degrees\
hardlowerlim 85\
hardupperlim 95\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
@ -123,6 +129,8 @@ Motor my DMC2280 [params \
port $dmc2280_controller1(port)\
axis C\
units mm\
hardlowerlim -10\
hardupperlim 10\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
@ -140,6 +148,8 @@ Motor mx DMC2280 [params \
port $dmc2280_controller1(port)\
axis D\
units mm\
hardlowerlim -10\
hardupperlim 10\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
@ -157,6 +167,8 @@ Motor mom DMC2280 [params \
port $dmc2280_controller1(port)\
axis E\
units degrees\
hardlowerlim -180\
hardupperlim 180\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
@ -174,6 +186,8 @@ Motor mtth DMC2280 [params \
port $dmc2280_controller1(port)\
axis F\
units degrees\
hardlowerlim 45\
hardupperlim 100\
maxSpeed 0.2\
maxAccel 0.2\
maxDecel 0.2\
@ -182,8 +196,6 @@ Motor mtth DMC2280 [params \
absEncHome $mtth_Home\
motoffdelay 5000\
cntsPerX -93207]
mtth hardlowerlim 45
mtth hardupperlim 100
mtth softlowerlim 45
mtth softupperlim 100
mtth home 90
@ -206,6 +218,8 @@ Motor sphi DMC2280 [params \
port $dmc2280_controller2(port)\
axis A\
units degrees\
hardlowerlim -15\
hardupperlim 15\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
@ -223,6 +237,8 @@ Motor schi DMC2280 [params \
port $dmc2280_controller2(port)\
axis B\
units degrees\
hardlowerlim 75\
hardupperlim 105\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
@ -240,6 +256,8 @@ Motor sy DMC2280 [params \
port $dmc2280_controller2(port)\
axis C\
units mm\
hardlowerlim -20\
hardupperlim 20\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
@ -257,6 +275,8 @@ Motor sx DMC2280 [params \
port $dmc2280_controller2(port)\
axis D\
units mm\
hardlowerlim -20\
hardupperlim 20\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
@ -274,6 +294,8 @@ Motor som DMC2280 [params \
port $dmc2280_controller2(port)\
axis E\
units degrees\
hardlowerlim -54\
hardupperlim 120\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
@ -291,6 +313,8 @@ Motor stth DMC2280 [params \
port $dmc2280_controller2(port)\
axis F\
units degrees\
hardlowerlim -60\
hardupperlim 84\
maxSpeed 0.5\
maxAccel 0.1\
maxDecel 0.1\
@ -298,8 +322,6 @@ Motor stth DMC2280 [params \
absEnc 1\
absEncHome $stth_Home\
cntsPerX -93207]
stth hardlowerlim -60
stth hardupperlim 84
stth softlowerlim -60
stth softupperlim 80
stth home 0
@ -312,6 +334,8 @@ Motor oct DMC2280 [params \
port $dmc2280_controller2(port)\
axis G\
units degrees\
hardlowerlim -2\
hardupperlim 2\
maxSpeed 0.5\
maxAccel 0.1\
maxDecel 0.1\
@ -319,8 +343,6 @@ Motor oct DMC2280 [params \
absEnc 1\
absEncHome $oct_Home\
cntsPerX -465]
oct hardlowerlim -2
oct hardupperlim 2
oct softlowerlim -2
oct softupperlim 2
oct home 0
@ -340,6 +362,8 @@ oct precision 0.01
# port $dmc2280_controller3(port)\
# axis A\
# units degrees\
# hardlowerlim xxxx\
# hardupperlim xxxx\
# maxSpeed xxxx\
# maxAccel xxxx\
# maxDecel xxxx\
@ -357,6 +381,8 @@ oct precision 0.01
# port $dmc2280_controller3(port)\
# axis B\
# units degrees\
# hardlowerlim xxxx\
# hardupperlim xxxx\
# maxSpeed xxxx\
# maxAccel xxxx\
# maxDecel xxxx\
@ -374,12 +400,14 @@ Motor ss1r DMC2280 [params \
port $dmc2280_controller3(port)\
axis E\
units mm\
hardlowerlim [expr $horSlitHome - $horSlitLowRange]\
hardupperlim [expr $horSlitHome + $horSlitUpRange]\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX -$slitStepRate\
motorHome $ss1r_Home]
setHomeandRange -motor ss1r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
setHomeandRange -motor ss1r -home $horSlitHome -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 1, left
Motor ss1l DMC2280 [params \
@ -387,12 +415,14 @@ Motor ss1l DMC2280 [params \
port $dmc2280_controller3(port)\
axis F\
units mm\
hardlowerlim [expr $horSlitHome - $horSlitLowRange]\
hardupperlim [expr $horSlitHome + $horSlitUpRange]\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX -$slitStepRate\
motorHome $ss1l_Home]
setHomeandRange -motor ss1l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
setHomeandRange -motor ss1l -home $horSlitHome -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 1, up
Motor ss1u DMC2280 [params \
@ -400,12 +430,14 @@ Motor ss1u DMC2280 [params \
port $dmc2280_controller3(port)\
axis G\
units mm\
hardlowerlim [expr $horSlitHome - $horSlitLowRange]\
hardupperlim [expr $horSlitHome + $horSlitUpRange]\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX -$slitStepRate\
motorHome $ss1u_Home]
setHomeandRange -motor ss1u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
setHomeandRange -motor ss1u -home $horSlitHome -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
# Slit 1, down
Motor ss1d DMC2280 [params \
@ -413,12 +445,14 @@ Motor ss1d DMC2280 [params \
port $dmc2280_controller3(port)\
axis H\
units mm\
hardlowerlim [expr $vertSlitHome - $vertSlitLowRange]\
hardupperlim [expr $vertSlitHome + $vertSlitUpRange]\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX -$slitStepRate\
motorHome $ss1d_Home]
setHomeandRange -motor ss1d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
setHomeandRange -motor ss1d -home $vertSlitHome -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
############################
# Motor Controller 4
@ -433,12 +467,14 @@ Motor ss2r DMC2280 [params \
port $dmc2280_controller4(port)\
axis E\
units mm\
hardlowerlim [expr $vertSlitHome - $vertSlitLowRange]\
hardupperlim [expr $vertSlitHome + $vertSlitUpRange]\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX -$slitStepRate\
motorHome $ss2r_Home]
setHomeandRange -motor ss2r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
setHomeandRange -motor ss2r -home $vertSlitHome -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 2, left
Motor ss2l DMC2280 [params \
@ -446,12 +482,14 @@ Motor ss2l DMC2280 [params \
port $dmc2280_controller4(port)\
axis F\
units mm\
hardlowerlim [expr $vertSlitHome - $vertSlitLowRange]\
hardupperlim [expr $vertSlitHome + $vertSlitUpRange]\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX -$slitStepRate\
motorHome $ss2l_Home]
setHomeandRange -motor ss2l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
setHomeandRange -motor ss2l -home $vertSlitHome -lowrange $horSlitLowRange -uprange $horSlitUpRange
# Slit 2, up
Motor ss2u DMC2280 [params \
@ -459,12 +497,14 @@ Motor ss2u DMC2280 [params \
port $dmc2280_controller4(port)\
axis G\
units mm\
hardlowerlim [expr $vertSlitHome - $vertSlitLowRange]\
hardupperlim [expr $vertSlitHome + $vertSlitUpRange]\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX -$slitStepRate\
motorHome $ss2u_Home]
setHomeandRange -motor ss2u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
setHomeandRange -motor ss2u -home $vertSlitHome -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
# Slit 2, down
Motor ss2d DMC2280 [params \
@ -472,12 +512,14 @@ Motor ss2d DMC2280 [params \
port $dmc2280_controller4(port)\
axis H\
units mm\
hardlowerlim [expr $vertSlitHome - $vertSlitLowRange]\
hardupperlim [expr $vertSlitHome + $vertSlitUpRange]\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX -$slitStepRate\
motorHome $ss2d_Home]
setHomeandRange -motor ss2d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
setHomeandRange -motor ss2d -home $vertSlitHome -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
proc mthGet {} { return [expr [SplitReply [mtth]]/2.0]}
proc mthSet {val} { return "mtth=[SplitReply [mtth]]"}