Configure motor controller 1 motors and clean up a bit

r3537 | dcl | 2012-04-26 13:10:46 +1000 (Thu, 26 Apr 2012) | 1 line
This commit is contained in:
Douglas Clowes
2012-04-26 13:10:46 +10:00
parent c9c632de9b
commit 4061642380

View File

@@ -41,11 +41,11 @@ if {$sim_mode == "true"} {
#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 ftz_Home 32096132
set ptz_Home 1242083
set pom_Home 34677
set stth_Home 152965
set mtth_Home 24409175
set sv1_Home 0
set sh1_Home 0
@@ -117,9 +117,9 @@ set move_count 100
# mc1: Polariser & Spin Flipper - Z translation slide
# Moto: 100:1 gear, 2mm pitch
set ptzStepRate [expr (300000.0/100.0)/2.0]
set ptzStepRate [expr { 25000 * 100 / 2.0 }]
#Motor ptz $motor_driver_type [params \
Motor ptz $motor_driver_type [params \
asyncqueue mc1\
host mc1-pelican\
port pmc1-pelican\
@@ -127,25 +127,32 @@ set ptzStepRate [expr (300000.0/100.0)/2.0]
units mm\
hardlowerlim 0\
hardupperlim 500\
maxSpeed [expr 400000.0/300000.0]\
maxAccel [expr 150000.0/300000.0]\
maxDecel [expr 150000.0/300000.0]\
maxSpeed [expr { 300000.0 / $ptzStepRate }]\
maxAccel [expr { 150000.0 / $ptzStepRate }]\
maxDecel [expr { 150000.0 / $ptzStepRate }]\
stepsPerX $ptzStepRate\
absEnc 1\
absEncHome $ptz_Home\
cntsPerX 4096]
#ptz part crystal
#ptz long_name ptz
#ptz softlowerlim 0
#ptz softupperlim 500
#ptz home 0
cntsPerX 4096\
posit_count 5]
ptz part crystal
ptz long_name ptz
ptz softlowerlim 0
ptz softupperlim 500
ptz home 0
# 1:RevLimit, 2:Coll, 3:Open, 4:Polarizer, 5:FwdLim
ptz posit_1 31327313
ptz posit_2 31408274
ptz_posit_3 32096132
ptz posit_4 33171650
ptz posit_5 33179305
#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]
set ftzStepRate [expr { 25000 * 100 / 2.0 }]
#Motor ftz $motor_driver_type [params \
Motor ftz $motor_driver_type [params \
asyncqueue mc1\
host mc1-pelican\
port pmc1-pelican\
@@ -153,91 +160,99 @@ set ftzStepRate [expr (300000.0/100.0)/2.0]
units mm\
hardlowerlim 0\
hardupperlim 500\
maxSpeed [expr 400000.0/300000.0]\
maxAccel [expr 150000.0/300000.0]\
maxDecel [expr 150000.0/300000.0]\
maxSpeed [expr { 300000.0 / $ftzStepRate }]\
maxAccel [expr { 150000.0 / $ftzStepRate }]\
maxDecel [expr { 150000.0 / $ftzStepRate }]\
stepsPerX $ftzStepRate\
absEnc 1\
absEncHome $ftz_Home\
cntsPerX 4096]
#ftz part crystal
#ftz long_name ftz
#ftz softlowerlim 0
#ftz softupperlim 500
#ftz home 0
#}
cntsPerX 4096\
posit_count 5]
ftz part crystal
ftz long_name ftz
ftz softlowerlim 0
ftz softupperlim 500
ftz home 0
# 1:RevLimit, 2:PG, 3:Open, 4:Be, 5:FwdLim
ptz posit_1 590458
ptz posit_2 590157
ptz_posit_3 1242083
ptz posit_4 2348104
ptz posit_5 2426769
# mc1: Polariser (& Spin Flipper) - Rotation + - 2 deg about polariser (i.e, The Elbow)
set pomSetRate 25000
set pomStepRate [expr { 1176 * 25000 }]
#Motor pom $motor_driver_type [params \
Motor pom $motor_driver_type [params \
asyncqueue mc1\
host mc1-pelican\
port pmc1-pelican\
axis E\
units degrees\
hardlowerlim 0\
hardupperlim 2\
maxSpeed [expr 250000.0/$pomSetRate]\
maxAccel [expr 25000.0/$pomSetRate]\
maxDecel [expr 25000.0/$pomSetRate]\
stepsPerX $pomSetRate\
hardlowerlim -1.5\
hardupperlim 1.5\
maxSpeed [expr { 100000.0 / $pomStepRate }]\
maxAccel [expr { 25000.0 / $pomStepRate }]\
maxDecel [expr { 25000.0 / $pomStepRate }]\
stepsPerX $pomStepRate\
absEnc 1\
absEncHome $pom_Home\
cntsPerX 4096]
#pom part crystal
#pom long_name pom
#pom softlowerlim 0
#pom softupperlim 2
#pom home 0
cntsPerX [expr { 8192.0 / 360.0 }]]
pom part crystal
pom long_name pom
pom softlowerlim -1.5
pom softupperlim 1.5
pom home 0
# mc1: Sample/Detector Chamber Rotation (Detector)
set stthSetRate 25000
#set stthStepRate 66807.314
set stthStepRate [expr { 25000 * 100.0 * (3800.0 / 395.0) / 360.0) }]
#Motor stth $motor_driver_type [params \
Motor stth $motor_driver_type [params \
asyncqueue mc1\
host mc1-pelican\
port pmc1-pelican\
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\
hardlowerlim -60\
hardupperlim 50\
maxSpeed [expr { 25000.0 / $stthStepRate }]\
maxAccel [expr { 5000.0 / $stthStepRate }]\
maxDecel [expr { 5000.0 / $stthStepRate }]\
stepsPerX $stthStepRate\
absEnc 1\
absEncHome $stth_Home\
cntsPerX 4096]
#stth part detector
#stth long_name stth
#stth softlowerlim -125
#stth softupperlim 8
#stth home 0
cntsPerX [expr { -8192.0 / 360.0 }]]
stth part detector
stth long_name stth
stth softlowerlim -60
stth softupperlim 50
stth home 0
# mc1: Instrument Drive System (Main Drive)
set mtthSetRate 25000
# mc1: Instrument Drive System (Main Drive) (Flight Tube)
#set mtthStepRate 222222.222
set mtthStepRate [expr { 25000 * 100.0 / (66.0/2112) / 360.0 }]
#Motor mtth $motor_driver_type [params \
Motor mtth $motor_driver_type [params \
asyncqueue mc1\
host mc1-pelican\
port pmc1-pelican\
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 43\
hardupperlim 134\
maxSpeed [expr { 100000.0 / $mtthStepRate }]\
maxAccel [expr { 25000.0 / $mtthStepRate }]\
maxDecel [expr { 25000.0 / $mtthStepRate }]\
stepsPerX $mtthStepRate\
absEnc 1\
absEncHome $mtth_Home\
cntsPerX 4096]
#mtth part detector
#mtth long_name mtth
#mtth softlowerlim 40
#mtth softupperlim 140
#mtth home 0
cntsPerX [expr { (1<<25)/360.0 }]]
mtth part detector
mtth long_name mtth
mtth softlowerlim 43
mtth softupperlim 134
mtth home 90
############################
@@ -248,7 +263,7 @@ set mtthSetRate 25000
#
# mc2: Slits Set AB1- (After Beryllium Filter) (2 blades and 1 Motor & Encoder set)
set sv1SetRate 25000
set sv1StepRate 25000
#Motor sv1 $motor_driver_type [params \
asyncqueue mc2\
@@ -258,10 +273,10 @@ set sv1SetRate 25000
units mm\
hardlowerlim -2\
hardupperlim 60\
maxSpeed [expr 25000.0/$sv1SetRate]\
maxAccel [expr 25000.0/$sv1SetRate]\
maxDecel [expr 25000.0/$sv1SetRate]\
stepsPerX $sv1SetRate\
maxSpeed [expr 25000.0/$sv1StepRate]\
maxAccel [expr 25000.0/$sv1StepRate]\
maxDecel [expr 25000.0/$sv1StepRate]\
stepsPerX $sv1StepRate\
absEnc 1\
absEncHome $sv1_Home\
cntsPerX 4096]
@@ -272,7 +287,7 @@ set sv1SetRate 25000
#sv1 home 0
# mc2: Slits Set AB2- (After Beryllium Filter) (2 blades and 1 Motor & Encoder set)
set sh1SetRate 25000
set sh1StepRate 25000
#Motor sh1 $motor_driver_type [params \
asyncqueue mc2\
@@ -282,10 +297,10 @@ set sh1SetRate 25000
units mm\
hardlowerlim -2\
hardupperlim 50\
maxSpeed [expr 25000.0/$sh1SetRate]\
maxAccel [expr 25000.0/$sh1SetRate]\
maxDecel [expr 25000.0/$sh1SetRate]\
stepsPerX $sh1SetRate\
maxSpeed [expr 25000.0/$sh1StepRate]\
maxAccel [expr 25000.0/$sh1StepRate]\
maxDecel [expr 25000.0/$sh1StepRate]\
stepsPerX $sh1StepRate\
absEnc 1\
absEncHome $sh1_Home\
cntsPerX 4096]
@@ -296,7 +311,7 @@ set sh1SetRate 25000
#sh1 home 0
# mc2: Slits Set AF1- (After Fermi Chopper) (2 blades and 1 Motor & Encoder set)
set sv2SetRate 25000
set sv2StepRate 25000
#Motor sv2 $motor_driver_type [params \
asyncqueue mc2\
@@ -306,10 +321,10 @@ set sv2SetRate 25000
units mm\
hardlowerlim -2\
hardupperlim 40\
maxSpeed [expr 25000.0/$sv2SetRate]\
maxAccel [expr 25000.0/$sv2SetRate]\
maxDecel [expr 25000.0/$sv2SetRate]\
stepsPerX $sv2SetRate\
maxSpeed [expr 25000.0/$sv2StepRate]\
maxAccel [expr 25000.0/$sv2StepRate]\
maxDecel [expr 25000.0/$sv2StepRate]\
stepsPerX $sv2StepRate\
absEnc 1\
absEncHome $sv2_Home\
cntsPerX 4096]
@@ -320,7 +335,7 @@ set sv2SetRate 25000
#sv2 home 0
# mc2: Slits Set AF2- (After Fermi Chopper) (2 blades and 1 Motor & Encoder set)
set sh2SetRate 25000
set sh2StepRate 25000
#Motor sh2 $motor_driver_type [params \
asyncqueue mc2\
@@ -330,10 +345,10 @@ set sh2SetRate 25000
units mm\
hardlowerlim -2\
hardupperlim 30\
maxSpeed [expr 25000.0/$sh2SetRate]\
maxAccel [expr 25000.0/$sh2SetRate]\
maxDecel [expr 25000.0/$sh2SetRate]\
stepsPerX $sh2SetRate\
maxSpeed [expr 25000.0/$sh2StepRate]\
maxAccel [expr 25000.0/$sh2StepRate]\
maxDecel [expr 25000.0/$sh2StepRate]\
stepsPerX $sh2StepRate\
absEnc 1\
absEncHome $sh2_Home\
cntsPerX 4096]
@@ -344,7 +359,7 @@ set sh2SetRate 25000
#sh2 home 0
# mc2: Graphite filter rotation stage (post 1st slit and post 1st Fermi chopper)
set gomSetRate 25000
set gomStepRate 25000
#Motor gom $motor_driver_type [params \
asyncqueue mc2\
@@ -354,10 +369,10 @@ set gomSetRate 25000
units degrees\
hardlowerlim 0\
hardupperlim 15\
maxSpeed [expr 50000.0/$gomSetRate]\
maxAccel [expr 25000.0/$gomSetRate]\
maxDecel [expr 25000.0/$gomSetRate]\
stepsPerX $gomSetRate\
maxSpeed [expr 50000.0/$gomStepRate]\
maxAccel [expr 25000.0/$gomStepRate]\
maxDecel [expr 25000.0/$gomStepRate]\
stepsPerX $gomStepRate\
absEnc 1\
absEncHome $gom_Home\
cntsPerX 4096]
@@ -368,7 +383,7 @@ set gomSetRate 25000
#gom home 0
# mc2: Sample rotation correction - 10 deg rotation
set scorSetRate 25000
set scorStepRate 25000
#Motor scor $motor_driver_type [params \
asyncqueue mc2\
@@ -378,10 +393,10 @@ set scorSetRate 25000
units degrees\
hardlowerlim 0\
hardupperlim 360\
maxSpeed [expr 50000.0/$scorSetRate]\
maxAccel [expr 25000.0/$scorSetRate]\
maxDecel [expr 25000.0/$scorSetRate]\
stepsPerX $scorSetRate\
maxSpeed [expr 50000.0/$scorStepRate]\
maxAccel [expr 25000.0/$scorStepRate]\
maxDecel [expr 25000.0/$scorStepRate]\
stepsPerX $scorStepRate\
absEnc 1\
absEncHome $scor_Home\
cntsPerX 4096]
@@ -592,7 +607,7 @@ momc home -45
#
# mc4: Monochromator crystal stages tilt stage - G270
set mphiSetRate 25000
set mphiStepRate 25000
Motor mphi $motor_driver_type [params \
asyncqueue mc4\
@@ -605,7 +620,7 @@ Motor mphi $motor_driver_type [params \
maxSpeed [expr 50000.0/25000.0]\
maxAccel [expr 12500.0/25000.0]\
maxDecel [expr 12500.0/25000.0]\
stepsPerX $mphiSetRate\
stepsPerX $mphiStepRate\
absEnc 1\
absEncHome $mphi_Home\
cntsPerX 4096]
@@ -616,7 +631,7 @@ mphi softupperlim 2
mphi home 0
# mc4: Monochromator crystal stages tilt stage - G350
set mchiSetRate 25000
set mchiStepRate 25000
# NOTE: A limit of +-2 degrees ensures that you cannot drive the crystals into the face of the guide even when the crystal y translation is at the maximum
Motor mchi $motor_driver_type [params \
@@ -630,7 +645,7 @@ Motor mchi $motor_driver_type [params \
maxSpeed [expr 50000.0/25000.0]\
maxAccel [expr 12500.0/25000.0]\
maxDecel [expr 12500.0/25000.0]\
stepsPerX $mchiSetRate\
stepsPerX $mchiStepRate\
absEnc 1\
absEncHome $mchi_Home\
cntsPerX 4096]
@@ -644,7 +659,7 @@ mchi accel 0.1
mchi decel 0.1
# mc4: Monochromator crystal stages Linear stage X - T250
set mxSetRate 25000
set mxStepRate 25000
Motor mx $motor_driver_type [params \
asyncqueue mc4\
@@ -657,7 +672,7 @@ Motor mx $motor_driver_type [params \
maxSpeed [expr 50000.0/25000.0]\
maxAccel [expr 12500.0/25000.0]\
maxDecel [expr 12500.0/25000.0]\
stepsPerX $mxSetRate\
stepsPerX $mxStepRate\
absEnc 1\
absEncHome $mx_Home\
cntsPerX 4096]
@@ -669,7 +684,7 @@ mx home 0
mx speed 1.0
# mc4: Monochromator crystal stages Linear stage Y - T250
set mySetRate 25000
set myStepRate 25000
Motor my $motor_driver_type [params \
asyncqueue mc4\
@@ -682,7 +697,7 @@ Motor my $motor_driver_type [params \
maxSpeed [expr 50000.0/25000.0]\
maxAccel [expr 12500.0/25000.0]\
maxDecel [expr 12500.0/25000.0]\
stepsPerX $mySetRate\
stepsPerX $myStepRate\
absEnc 1\
absEncHome $my_Home\
cntsPerX 4096]
@@ -694,7 +709,7 @@ my home 0
my speed 1.0
# mc4: Monochromator crystal stages Rotation stage - R275
set momSetRate 25000
set momStepRate 25000
Motor mom $motor_driver_type [params \
asyncqueue mc4\
@@ -707,7 +722,7 @@ Motor mom $motor_driver_type [params \
maxSpeed [expr 50000.0/25000.0]\
maxAccel [expr 12500.0/25000.0]\
maxDecel [expr 12500.0/25000.0]\
stepsPerX $momSetRate\
stepsPerX $momStepRate\
absEnc 1\
absEncHome $mom_Home\
cntsPerX 4096]