diff --git a/site_ansto/instrument/dingo/config/motors/motor_configuration.tcl b/site_ansto/instrument/dingo/config/motors/motor_configuration.tcl index cf49d1f3..d345629b 100644 --- a/site_ansto/instrument/dingo/config/motors/motor_configuration.tcl +++ b/site_ansto/instrument/dingo/config/motors/motor_configuration.tcl @@ -17,78 +17,24 @@ set dmc2280_controller2(port) pmc2-$animal set dmc2280_controller3(host) mc3-$animal set dmc2280_controller3(port) pmc3-$animal -set dmc2280_controller4(host) mc4-$animal -set dmc2280_controller4(port) pmc4-$animal +#set dmc2280_controller4(host) mc4-$animal +#set dmc2280_controller4(port) pmc4-$animal if {$sim_mode == "true"} { set motor_driver_type asim } else { set motor_driver_type DMC2280 -# MakeAsyncQueue mc1 DMC2280 $dmc2280_controller1(host) $dmc2280_controller1(port) -# MakeAsyncQueue mc2 DMC2280 $dmc2280_controller2(host) $dmc2280_controller2(port) + MakeAsyncQueue mc1 DMC2280 $dmc2280_controller1(host) $dmc2280_controller1(port) + MakeAsyncQueue mc2 DMC2280 $dmc2280_controller2(host) $dmc2280_controller2(port) MakeAsyncQueue mc3 DMC2280 $dmc2280_controller3(host) $dmc2280_controller3(port) - MakeAsyncQueue mc4 DMC2280 $dmc2280_controller4(host) $dmc2280_controller4(port) +# MakeAsyncQueue mc4 DMC2280 $dmc2280_controller4(host) $dmc2280_controller4(port) # MakeAsyncQueue mc6 DMC2280 $dmc2280_controller6(host) $dmc2280_controller6(port) } -#Measured absolute encoder reading at home position -set dummy_Home 0 - -set ftz_Home 0 -set ptz_Home 0 -set pom_Home 0 -set stth_Home 0 -set mtth_Home 0 - -set sv1_Home 0 -set sh1_Home 0 -set sv2_Home 0 -set sh2_Home 0 -set gom_Home 0 -set scor_Home 0 - -# AND abs Encoder Reading with FFF to get the lowest 12 bits only -#set mra_Home 4286 -set mra_Home 191 -#set moma_Home 8386659 -set moma_Home 2147 -#set mrb_Home 294 -set mrb_Home 294 -#set momb_Home 8386694 -set momb_Home 2182 -#set mrc_Home 4558982 -set mrc_Home 86 -#set momc_Home 12499198 -set momc_Home 2302 - -set mphi_Home 0 -set mchi_Home 8383096 -set mx_Home 8390604 -set my_Home 8391084 -set mom_Home 8389414 - -set rco_Home 0 -set rcz_Home 0 -set bsr_Home 0 -set gv1_Home 0 -set gv2_Home 0 - - -# set movecount high to reduce the frequency of -# hnotify messages to a reasonable level -set move_count 100 - -############################ -# Motor Controller 1 -# Motor Controller 1 -# Motor Controller 1 -############################ -# - # Dummy translation motor, useful for testing scans - -#Motor dummy_motor asim [params \ +set dummy_Home 0 +Motor dummy_motor asim [params \ asyncqueue mc1\ host mc1-dingo\ port pmc1-dingo\ @@ -103,17 +49,53 @@ set move_count 100 absEnc 1\ absEncHome $dummy_Home\ cntsPerX [expr 8192.0/5.0]] -#dummy_motor part instrument -#dummy_motor long_name dummy_motor -#dummy_motor softlowerlim -500 -#dummy_motor softupperlim 500 -#dummy_motor home 0 +dummy_motor part instrument +dummy_motor long_name dummy_motor +dummy_motor softlowerlim -500 +dummy_motor softupperlim 500 +dummy_motor home 0 -# mc1: Polariser & Spin Flipper - Z translation slide -# Moto: 100:1 gear, 2mm pitch -set ptzStepRate [expr (300000.0/100.0)/2.0] +############################ +# Motor Controller 1 +# Motor Controller 1 +# Motor Controller 1 +############################ +# -Motor ptz $motor_driver_type [params \ +# All motors are at 25000steps/turn if no other specify +set motorrate 25000.0 + +# mc1: Sample rotation axis +# Gearbox 100:1, Gear ratio 356:1 +set stth_Home 0 +set stthStepRate [expr $motorrate*100.0*356.0/360.0] +Motor stth $motor_driver_type [params \ + asyncqueue mc1\ + host mc1-dingo\ + port pmc1-dingo\ + axis A\ + units degree\ + hardlowerlim 0\ + hardupperlim 360\ + maxSpeed [expr 400000.0/300000.0]\ + maxAccel [expr 150000.0/300000.0]\ + maxDecel [expr 150000.0/300000.0]\ + stepsPerX $stthStepRate\ + absEnc 1\ + absEncHome $stth_Home\ + cntsPerX 4096] +stth part sample +stth long_name stth +stth softlowerlim 0 +stth softupperlim 360 +stth home 0 + + +# mc1: Sample X-translation sample stage +# Gearbox 20:1, pitch 5mm +set sx_Home 0 +set sxStepRate [expr $motorrate*20.0/5.0] +Motor sx $motor_driver_type [params \ asyncqueue mc1\ host mc1-dingo\ port pmc1-dingo\ @@ -124,22 +106,21 @@ Motor ptz $motor_driver_type [params \ maxSpeed [expr 400000.0/300000.0]\ maxAccel [expr 150000.0/300000.0]\ maxDecel [expr 150000.0/300000.0]\ - stepsPerX $ptzStepRate\ + stepsPerX $sxStepRate\ absEnc 1\ - absEncHome $ptz_Home\ + absEncHome $sx_Home\ cntsPerX 4096] -ptz part crystal -ptz long_name ptz -ptz softlowerlim 0 -ptz softupperlim 500 -ptz home 0 +sx part sample +sx long_name sx +sx softlowerlim -250 +sx softupperlim 250 +sx home 0 -#if $use_tiltstage { -# mc1: Beryllium / Graphite filter shared - Z translation slide -# Moto: 100:1 gear, 2mm pitch -set ftzStepRate [expr (300000.0/100.0)/2.0] - -Motor ftz $motor_driver_type [params \ +# mc1: Sample Y-translation sample stage +# Gearbox 20:1, pitch 5mm +set sy_Home 0 +set syStepRate [expr $motorrate*20.0/5.0] +Motor sy $motor_driver_type [params \ asyncqueue mc1\ host mc1-dingo\ port pmc1-dingo\ @@ -150,87 +131,65 @@ Motor ftz $motor_driver_type [params \ maxSpeed [expr 400000.0/300000.0]\ maxAccel [expr 150000.0/300000.0]\ maxDecel [expr 150000.0/300000.0]\ - stepsPerX $ftzStepRate\ + stepsPerX $syStepRate\ absEnc 1\ - absEncHome $ftz_Home\ + absEncHome $sy_Home\ cntsPerX 4096] -ftz part crystal -ftz long_name ftz -ftz softlowerlim 0 -ftz softupperlim 500 -ftz home 0 +sy part sample +sy long_name sy +sy softlowerlim -250 +sy softupperlim 250 +sy home 0 -# mc1: Polariser (& Spin Flipper) - Rotation + - 2 deg about polariser (i.e, The Elbow) -set pomSetRate 25000 - -Motor pom $motor_driver_type [params \ +# mc1: Sample Z-translation sample stage +# Gearbox 20:1, pitch ? +set sz_Home 0 +set szStepRate ? +Motor sz $motor_driver_type [params \ asyncqueue mc1\ host mc1-dingo\ port pmc1-dingo\ - axis E\ - units degrees\ + axis D\ + units mm\ hardlowerlim 0\ - hardupperlim 2\ - maxSpeed [expr 250000.0/$pomSetRate]\ - maxAccel [expr 25000.0/$pomSetRate]\ - maxDecel [expr 25000.0/$pomSetRate]\ - stepsPerX $pomSetRate\ + hardupperlim 500\ + maxSpeed [expr 400000.0/300000.0]\ + maxAccel [expr 150000.0/300000.0]\ + maxDecel [expr 150000.0/300000.0]\ + stepsPerX $szStepRate\ absEnc 1\ - absEncHome $pom_Home\ + absEncHome $sz_Home\ cntsPerX 4096] -pom part crystal -pom long_name pom -pom softlowerlim 0 -pom softupperlim 2 -pom home 0 +sz part sample +sz long_name sz +sz softlowerlim -250 +sz softupperlim 250 +sz home 0 -# mc1: Sample/Detector Chamber Rotation (Detector) -set stthSetRate 25000 - -Motor stth $motor_driver_type [params \ - asyncqueue mc1\ - host mc1-dingo\ - port pmc1-dingo\ - axis F\ - units degrees\ - hardlowerlim -125\ - hardupperlim 8\ - maxSpeed [expr 150000.0/$stthSetRate]\ - maxAccel [expr 5000.0/$stthSetRate]\ - maxDecel [expr 5000.0/$stthSetRate]\ - stepsPerX $stthSetRate\ - absEnc 1\ - absEncHome $stth_Home\ - cntsPerX 4096] -stth part detector -stth long_name stth -stth softlowerlim -125 -stth softupperlim 8 -stth home 0 - -# mc1: Instrument Drive System (Main Drive) -set mtthSetRate 25000 - -Motor mtth $motor_driver_type [params \ +# mc1: End station Z-translation +# Gearbox 5:1, Gear ratio 16:1, pitch 4mm +set dz_Home 0 +set dzStepRate [expr $motorrate*5.0*16.0/4.0] +Motor dz $motor_driver_type [params \ asyncqueue mc1\ host mc1-dingo\ port pmc1-dingo\ axis G\ units mm\ - hardlowerlim 40\ - hardupperlim 140\ - maxSpeed [expr 150000.0/$mtthSetRate]\ - maxAccel [expr 25000.0/$mtthSetRate]\ - maxDecel [expr 25000.0/$mtthSetRate]\ - stepsPerX $mtthSetRate\ + hardlowerlim 0\ + hardupperlim 500\ + maxSpeed [expr 400000.0/300000.0]\ + maxAccel [expr 150000.0/300000.0]\ + maxDecel [expr 150000.0/300000.0]\ + stepsPerX $dzStepRate\ absEnc 1\ - absEncHome $mtth_Home\ + absEncHome $dz_Home\ cntsPerX 4096] -mtth part detector -mtth long_name mtth -mtth softlowerlim 40 -mtth softupperlim 140 -mtth home 0 +dz part sample +dz long_name dz +dz softlowerlim -125 +dz softupperlim 125 +sz home 0 ############################ @@ -238,478 +197,66 @@ mtth home 0 # Motor Controller 2 # Motor Controller 2 ############################ -# +# -# mc2: Slits Set AB1- (After Beryllium Filter) (2 blades and 1 Motor & Encoder set) -set sv1SetRate 25000 - -Motor sv1 $motor_driver_type [params \ +# mc2: Camera translation axis along beam +# Gearbox ?, Gear ratio ?, +set dy_Home 0 +set dyStepRate ? +Motor dy $motor_driver_type [params \ asyncqueue mc2\ host mc2-dingo\ port pmc2-dingo\ axis A\ units mm\ - hardlowerlim -2\ - hardupperlim 60\ - maxSpeed [expr 25000.0/$sv1SetRate]\ - maxAccel [expr 25000.0/$sv1SetRate]\ - maxDecel [expr 25000.0/$sv1SetRate]\ - stepsPerX $sv1SetRate\ - absEnc 1\ - absEncHome $sv1_Home\ - cntsPerX 4096] -sv1 part aperture -sv1 long_name sv1 -sv1 softlowerlim -2 -sv1 softupperlim 60 -sv1 home 0 - -# mc2: Slits Set AB2- (After Beryllium Filter) (2 blades and 1 Motor & Encoder set) -set sh1SetRate 25000 - -Motor sh1 $motor_driver_type [params \ - asyncqueue mc2\ - host mc2-dingo\ - port pmc2-dingo\ - axis B\ - units mm\ - hardlowerlim -2\ - hardupperlim 50\ - maxSpeed [expr 25000.0/$sh1SetRate]\ - maxAccel [expr 25000.0/$sh1SetRate]\ - maxDecel [expr 25000.0/$sh1SetRate]\ - stepsPerX $sh1SetRate\ - absEnc 1\ - absEncHome $sh1_Home\ - cntsPerX 4096] -sh1 part aperture -sh1 long_name sh1 -sh1 softlowerlim -2 -sh1 softupperlim 50 -sh1 home 0 - -# mc2: Slits Set AF1- (After Fermi Chopper) (2 blades and 1 Motor & Encoder set) -set sv2SetRate 25000 - -Motor sv2 $motor_driver_type [params \ - asyncqueue mc2\ - host mc2-dingo\ - port pmc2-dingo\ - axis C\ - units mm\ - hardlowerlim -2\ - hardupperlim 40\ - maxSpeed [expr 25000.0/$sv2SetRate]\ - maxAccel [expr 25000.0/$sv2SetRate]\ - maxDecel [expr 25000.0/$sv2SetRate]\ - stepsPerX $sv2SetRate\ - absEnc 1\ - absEncHome $sv2_Home\ - cntsPerX 4096] -sv2 part aperture -sv2 long_name sv2 -sv2 softlowerlim -2 -sv2 softupperlim 40 -sv2 home 0 - -# mc2: Slits Set AF2- (After Fermi Chopper) (2 blades and 1 Motor & Encoder set) -set sh2SetRate 25000 - -Motor sh2 $motor_driver_type [params \ - asyncqueue mc2\ - host mc2-dingo\ - port pmc2-dingo\ - axis D\ - units mm\ - hardlowerlim -2\ - hardupperlim 30\ - maxSpeed [expr 25000.0/$sh2SetRate]\ - maxAccel [expr 25000.0/$sh2SetRate]\ - maxDecel [expr 25000.0/$sh2SetRate]\ - stepsPerX $sh2SetRate\ - absEnc 1\ - absEncHome $sh2_Home\ - cntsPerX 4096] -sh2 part aperture -sh2 long_name sh2 -sh2 softlowerlim -2 -sh2 softupperlim 30 -sh2 home 0 - -# mc2: Graphite filter rotation stage (post 1st slit and post 1st Fermi chopper) -set gomSetRate 25000 - -Motor gom $motor_driver_type [params \ - asyncqueue mc2\ - host mc2-dingo\ - port pmc2-dingo\ - axis E\ - units degrees\ hardlowerlim 0\ - hardupperlim 15\ - maxSpeed [expr 50000.0/$gomSetRate]\ - maxAccel [expr 25000.0/$gomSetRate]\ - maxDecel [expr 25000.0/$gomSetRate]\ - stepsPerX $gomSetRate\ + hardupperlim 500\ + maxSpeed [expr 400000.0/300000.0]\ + maxAccel [expr 150000.0/300000.0]\ + maxDecel [expr 150000.0/300000.0]\ + stepsPerX $dyStepRate\ absEnc 1\ - absEncHome $gom_Home\ + absEncHome $dy_Home\ cntsPerX 4096] -gom part sample -gom long_name gom -gom softlowerlim 0 -gom softupperlim 15 -gom home 0 - -# mc2: Sample rotation correction - 10 deg rotation -set scorSetRate 25000 - -Motor scor $motor_driver_type [params \ - asyncqueue mc2\ - host mc2-dingo\ - port pmc2-dingo\ - axis F\ - units degrees\ - hardlowerlim 0\ - hardupperlim 360\ - maxSpeed [expr 50000.0/$scorSetRate]\ - maxAccel [expr 25000.0/$scorSetRate]\ - maxDecel [expr 25000.0/$scorSetRate]\ - stepsPerX $scorSetRate\ - absEnc 1\ - absEncHome $scor_Home\ - cntsPerX 4096] -scor part sample -scor long_name scor -scor softlowerlim 0 -scor softupperlim 360 -scor home 0 +dy part instrument +dy long_name dy +dy softlowerlim 0 +dy softupperlim 20 +dy home 0 ############################ # Motor Controller 3 # Motor Controller 3 # Motor Controller 3 ############################ -# +# -# ROTATION STAGES 120:1 PLUS GEARBOX 8:1 -# ROTATION STAGE RESOLVER 360:55 - -# FOCUS STAGE GEARBOX 6:1 -# FOCUS STAGE RESOLVER DIRECT 310 DEG, 3527 COUNTS USABLE RANGE - -# Computes Monochromator step rates (steps per degree) of focusing and Rotation -# 1 unit here is 1 degree -set monoRotateStepsPerUnit [expr 25000.0*8.0*120.0/360.0] - -# Encode reading at the roation, 1 unit here is 1 degree -set MonoRotateCntsPerUnit [expr 4096.0*360.0/55.0/360.0] - -# Setup Focus range as min = 0 and max = 1, working range = 0 to 1 (310 degrees) -# or, 0 for full focus and 1 for non focus -# Focusing rate 25000 steps * 6:1 gears = 150000, 1 unit here is 310 degrees -set monoFocusStepsPerUnit [expr -25000.0*6.0*310.0/360.0] - -# Encode reading at Focusing stage, 1 unit here is 310 degrees -set monoFocusCntsPerUnit [expr 4096.0*310.0/360.0] - -# Max speed for Focusing , -- currently set as 0.083 -# speed unit here is 310 degrees -set monoFocusSpeed 0.05 -set monoFocusMaxSpeed 0.083 - -# Precision setting turn/move, or 310*turn/move (degrees) -set monoFocusprecision 0.001 - -# mc3: Monochromator Focusing 1 - Focus -Motor mra $motor_driver_type [params \ +# mc3: Selector Wheel Rotation Axis (attenuator) +# Gearbox 50:1, Gear ratio 119:14 +set at_Home 0 +set atStepRate [expr $motorrate*50.0*119.0/14.0/360.0] +Motor at $motor_driver_type [params \ asyncqueue mc3\ host mc3-dingo\ port pmc3-dingo\ axis A\ - units degrees\ - hardlowerlim 0\ - hardupperlim 1\ - precision $monoFocusprecision\ - maxSpeed $monoFocusMaxSpeed\ - maxAccel [expr 25000.0/25000.0]\ - maxDecel [expr 25000.0/25000.0]\ - stepsPerX $monoFocusStepsPerUnit\ - absEnc 1\ - absEncHome $mra_Home\ - bias_bits 12\ - cntsPerX $monoFocusCntsPerUnit] -mra speed $monoFocusSpeed -mra accel $monoFocusSpeed -mra decel $monoFocusSpeed -mra part crystal -mra long_name mra -mra softlowerlim 0 -mra softupperlim 1 -mra home 0 -# fix the motor -mra fixed -1 - -# mc3: Monochromator Focusing 1 - Rotation -Motor moma $motor_driver_type [params \ - asyncqueue mc3\ - host mc3-dingo\ - port pmc3-dingo\ - axis B\ - units degrees\ - hardlowerlim -72.003174\ - hardupperlim -20.0379\ - maxSpeed 0.5\ - maxAccel 0.5\ - maxDecel 0.5\ - stepsPerX $monoRotateStepsPerUnit\ - absEnc 1\ - absEncHome $moma_Home\ - bias_bits 12\ - cntsPerX $MonoRotateCntsPerUnit] -moma part crystal -moma long_name moma -moma softlowerlim -70 -moma softupperlim -20.537842 -moma home -45 - -# mc3: Monochromator Focusing 2 - Focus -Motor mrb $motor_driver_type [params \ - asyncqueue mc3\ - host mc3-dingo\ - port pmc3-dingo\ - axis C\ - units degrees\ - hardlowerlim 0\ - hardupperlim 1\ - precision $monoFocusprecision\ - maxSpeed $monoFocusMaxSpeed\ - maxAccel [expr 25000.0/25000.0]\ - maxDecel [expr 25000.0/25000.0]\ - stepsPerX $monoFocusStepsPerUnit\ - absEnc 1\ - absEncHome $mrb_Home\ - bias_bits 12\ - cntsPerX $monoFocusCntsPerUnit] -mrb speed $monoFocusSpeed -mrb accel $monoFocusSpeed -mrb decel $monoFocusSpeed -mrb part crystal -mrb long_name mrb -mrb softlowerlim 0 -mrb softupperlim 1 -mrb home 0 -# fix the motor -mrb fixed -1 - -# mc3: Monochromator Focusing 2 - Rotation -Motor momb $motor_driver_type [params \ - asyncqueue mc3\ - host mc3-dingo\ - port pmc3-dingo\ - axis D\ units degree\ - hardlowerlim -72.003174\ - hardupperlim -20.198975\ - maxSpeed 0.5\ - maxAccel 0.5\ - maxDecel 0.5\ - stepsPerX $monoRotateStepsPerUnit\ - absEnc 1\ - absEncHome $momb_Home\ - bias_bits 12\ - cntsPerX $MonoRotateCntsPerUnit] -momb part crystal -momb long_name momb -momb softlowerlim -70 -momb softupperlim -20.698975 -momb home -45 - -# mc3: Monochromator Focusing 3 - Focus -Motor mrc $motor_driver_type [params \ - asyncqueue mc3\ - host mc3-dingo\ - port pmc3-dingo\ - axis E\ - units degrees\ hardlowerlim 0\ - hardupperlim 1\ - precision $monoFocusprecision\ - maxSpeed $monoFocusMaxSpeed\ - maxAccel [expr 25000.0/25000.0]\ - maxDecel [expr 25000.0/25000.0]\ - stepsPerX $monoFocusStepsPerUnit\ + hardupperlim 500\ + maxSpeed [expr 400000.0/300000.0]\ + maxAccel [expr 150000.0/300000.0]\ + maxDecel [expr 150000.0/300000.0]\ + stepsPerX $atStepRate\ absEnc 1\ - absEncHome $mrc_Home\ - bias_bits 12\ - cntsPerX $monoFocusCntsPerUnit] -mrc speed $monoFocusSpeed -mrc accel $monoFocusSpeed -mrc decel $monoFocusSpeed -mrc part crystal -mrc long_name mrc -mrc softlowerlim 0 -mrc softupperlim 1 -mrc home 0 -# fix the motor -mrc fixed -1 - -# mc3: Monochromator Focusing 3 - Rotation -Motor momc $motor_driver_type [params \ - asyncqueue mc3\ - host mc3-dingo\ - port pmc3-dingo\ - axis F\ - units degree\ - hardlowerlim -72.003174\ - hardupperlim -21.246338\ - maxSpeed 0.5\ - maxAccel 0.5\ - maxDecel 0.5\ - stepsPerX $monoRotateStepsPerUnit\ - absEnc 1\ - absEncHome $momc_Home\ - bias_bits 12\ - cntsPerX $MonoRotateCntsPerUnit] -momc part crystal -momc long_name momc -momc softlowerlim -70 -momc softupperlim -21.746338 -momc home -45 - - -############################ -# Motor Controller 4 -# Motor Controller 4 -# Motor Controller 4 -############################ -# - -# mc4: Monochromator crystal stages tilt stage - G270 -set mphiSetRate 25000 - -Motor mphi $motor_driver_type [params \ - asyncqueue mc4\ - host mc4-dingo\ - port pmc4-dingo\ - axis A\ - units degrees\ - hardlowerlim -5\ - hardupperlim 5\ - maxSpeed [expr 50000.0/25000.0]\ - maxAccel [expr 12500.0/25000.0]\ - maxDecel [expr 12500.0/25000.0]\ - stepsPerX $mphiSetRate\ - absEnc 1\ - absEncHome $mphi_Home\ + absEncHome $at_Home\ cntsPerX 4096] -mphi part crystal -mphi long_name mphi -mphi softlowerlim -5 -mphi softupperlim 5 -mphi home 0 - -# mc4: Monochromator crystal stages tilt stage - G350 -set mchiSetRate 25000 - -Motor mchi $motor_driver_type [params \ - asyncqueue mc4\ - host mc4-dingo\ - port pmc4-dingo\ - axis B\ - units degrees\ - hardlowerlim -5\ - hardupperlim 5\ - maxSpeed [expr 50000.0/25000.0]\ - maxAccel [expr 12500.0/25000.0]\ - maxDecel [expr 12500.0/25000.0]\ - stepsPerX $mchiSetRate\ - absEnc 1\ - absEncHome $mchi_Home\ - cntsPerX 4096] -mchi part crystal -mchi long_name mchi -mchi softlowerlim -5 -mchi softupperlim 5 -mchi home 0 -mchi speed 0.2 -mchi accel 0.1 -mchi decel 0.1 - -# mc4: Monochromator crystal stages Linear stage X - T250 -set mxSetRate 25000 - -Motor mx $motor_driver_type [params \ - asyncqueue mc4\ - host mc4-dingo\ - port pmc4-dingo\ - axis C\ - units mm\ - hardlowerlim -20\ - hardupperlim 20\ - maxSpeed [expr 50000.0/25000.0]\ - maxAccel [expr 12500.0/25000.0]\ - maxDecel [expr 12500.0/25000.0]\ - stepsPerX $mxSetRate\ - absEnc 1\ - absEncHome $mx_Home\ - cntsPerX 4096] -mx part crystal -mx long_name mx -mx softlowerlim -20 -mx softupperlim 20 -mx home 0 -mx speed 1.0 - -# mc4: Monochromator crystal stages Linear stage Y - T250 -set mySetRate 25000 - -Motor my $motor_driver_type [params \ - asyncqueue mc4\ - host mc4-dingo\ - port pmc4-dingo\ - axis D\ - units mm\ - hardlowerlim -20\ - hardupperlim 20\ - maxSpeed [expr 50000.0/25000.0]\ - maxAccel [expr 12500.0/25000.0]\ - maxDecel [expr 12500.0/25000.0]\ - stepsPerX $mySetRate\ - absEnc 1\ - absEncHome $my_Home\ - cntsPerX 4096] -my part crystal -my long_name my -my softlowerlim -10 -my softupperlim 10 -my home 0 -my speed 1.0 - -# mc4: Monochromator crystal stages Rotation stage - R275 -set momSetRate 25000 - -Motor mom $motor_driver_type [params \ - asyncqueue mc4\ - host mc4-dingo\ - port pmc4-dingo\ - axis E\ - units degrees\ - hardlowerlim -15\ - hardupperlim 15\ - maxSpeed [expr 50000.0/25000.0]\ - maxAccel [expr 12500.0/25000.0]\ - maxDecel [expr 12500.0/25000.0]\ - stepsPerX $momSetRate\ - absEnc 1\ - absEncHome $mom_Home\ - cntsPerX 4096] -mom speed 0.5 -mom part crystal -mom long_name mom -mom softlowerlim -15 -mom softupperlim 15 -mom home 0 +at part sample +at long_name at +at softlowerlim 0 +at softupperlim 20 proc motor_set_sobj_attributes {} { } +# End of configuration file +