diff --git a/site_ansto/instrument/hipd/motor_configuration.tcl b/site_ansto/instrument/hipd/motor_configuration.tcl index a49878d4..616ccee7 100644 --- a/site_ansto/instrument/hipd/motor_configuration.tcl +++ b/site_ansto/instrument/hipd/motor_configuration.tcl @@ -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]]"}