Re-factor motor configurations
r1284 | dcl | 2006-11-14 09:40:29 +1100 (Tue, 14 Nov 2006) | 2 lines
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# $Revision: 1.2 $
|
||||
# $Date: 2006-11-07 02:05:21 $
|
||||
# $Revision: 1.3 $
|
||||
# $Date: 2006-11-13 22:40:29 $
|
||||
# Author: Ferdi Franceschini (ffr@ansto.gov.au)
|
||||
# Last revision by: $Author: ffr $
|
||||
# Last revision by: $Author: dcl $
|
||||
|
||||
#START SERVER CONFIGURATION SECTION
|
||||
source dmc2280_util.tcl
|
||||
@@ -14,165 +14,7 @@ VarMake Instrument Text Internal
|
||||
Instrument Koala
|
||||
Instrument lock
|
||||
|
||||
# Setup addresses of Galil DMC2280 controllers.
|
||||
set dmc2280_controller1(host) mc1-koala
|
||||
set dmc2280_controller1(port) pmc1-koala
|
||||
|
||||
# Run slit homing routines
|
||||
#if [catch {dmc_connect dmc2280_controller1} ] {
|
||||
# dmc_sendCmd dmc2280_controller1 "XQ#HOME,1"
|
||||
# dmc_close dmc2280_controller1
|
||||
#}
|
||||
#if [catch {dmc_connect dmc2280_controller1} ] {
|
||||
# dmc_sendCmd dmc2280_controller1 "XQ#HOME,1"
|
||||
# dmc_close dmc2280_controller1
|
||||
#}
|
||||
|
||||
#Default upper and lower ranges for vertical slits
|
||||
set vertSlitLowRange 25
|
||||
set vertSlitUpRange 95
|
||||
|
||||
#Default upper and lower ranges for horizontal slits
|
||||
set horSlitLowRange 20
|
||||
set horSlitUpRange 25
|
||||
|
||||
Motor ss1u DMC2280 [params \
|
||||
host $dmc2280_controller1(host)\
|
||||
port $dmc2280_controller1(port)\
|
||||
axis G\
|
||||
units mm\
|
||||
maxSpeed 1\
|
||||
maxAccel 1\
|
||||
maxDecel 1\
|
||||
stepsPerX -20125\
|
||||
motorHome 2040518]
|
||||
setHomeandRange -motor ss1u -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
|
||||
|
||||
Motor ss1d DMC2280 [params \
|
||||
host $dmc2280_controller1(host)\
|
||||
port $dmc2280_controller1(port)\
|
||||
axis H\
|
||||
units mm\
|
||||
maxSpeed 1\
|
||||
maxAccel 1\
|
||||
maxDecel 1\
|
||||
stepsPerX -20125\
|
||||
motorHome 2040518]
|
||||
setHomeandRange -motor ss1d -home 0 -lowrange $vertSlitLowRange -uprange $vertSlitUpRange
|
||||
|
||||
Motor ss1l DMC2280 [params \
|
||||
host $dmc2280_controller1(host)\
|
||||
port $dmc2280_controller1(port)\
|
||||
axis E\
|
||||
units mm\
|
||||
maxSpeed 1\
|
||||
maxAccel 1\
|
||||
maxDecel 1\
|
||||
stepsPerX -20125\
|
||||
motorHome 542093]
|
||||
setHomeandRange -motor ss1l -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
|
||||
|
||||
Motor ss1r DMC2280 [params \
|
||||
host $dmc2280_controller1(host)\
|
||||
port $dmc2280_controller1(port)\
|
||||
axis F\
|
||||
units mm\
|
||||
maxSpeed 1\
|
||||
maxAccel 1\
|
||||
maxDecel 1\
|
||||
stepsPerX -20125\
|
||||
motorHome 542093]
|
||||
setHomeandRange -motor ss1r -home 0 -lowrange $horSlitLowRange -uprange $horSlitUpRange
|
||||
|
||||
#--------------------------------------------------------
|
||||
proc ss1widthscript {val} {
|
||||
set currentWidth [expr [SplitReply [ss1r]] + [SplitReply [ss1l]]]
|
||||
set diff [expr $val - $currentWidth]
|
||||
set newD1R [expr [SplitReply [ss1r]] + $diff/2]
|
||||
set newD1L [expr [SplitReply [ss1l]] + $diff/2]
|
||||
return "ss1r=$newD1R,ss1l=$newD1L"
|
||||
}
|
||||
publish ss1widthscript user
|
||||
|
||||
#-------------------------------------------------------
|
||||
proc ss1readwidth {} {
|
||||
return [expr [SplitReply [ss1r]] + [SplitReply [ss1l]]]
|
||||
}
|
||||
publish ss1readwidth user
|
||||
MakeConfigurableMotor ss1hg
|
||||
ss1hg drivescript ss1widthscript
|
||||
ss1hg readscript ss1readwidth
|
||||
|
||||
#--------------------------------------------------------
|
||||
proc ss1horoffsetscript {val} {
|
||||
set SR [SplitReply [ss1r]]
|
||||
set SL [SplitReply [ss1l]]
|
||||
set currentOffset [ expr $SR - ($SR + $SL)/2.0 ]
|
||||
set diff [expr $val - $currentOffset]
|
||||
set newD1R [expr $SR + $diff]
|
||||
set newD1L [expr $SL - $diff]
|
||||
return "ss1r=$newD1R,ss1l=$newD1L"
|
||||
}
|
||||
publish ss1horoffsetscript user
|
||||
|
||||
#-------------------------------------------------------
|
||||
proc ss1readhoroffset {} {
|
||||
set SR [SplitReply [ss1r]]
|
||||
return [ expr $SR - ($SR + [SplitReply [ss1l]])/2.0 ]
|
||||
}
|
||||
publish ss1readhoroffset user
|
||||
|
||||
#-------------------------------------------------------
|
||||
MakeConfigurableMotor ss1ho
|
||||
ss1ho drivescript ss1horoffsetscript
|
||||
ss1ho readscript ss1readhoroffset
|
||||
|
||||
#-----------------------------------------------------
|
||||
proc ss1heightscript {val} {
|
||||
set currentWidth [expr [SplitReply [ss1u]] + [SplitReply [ss1d]]]
|
||||
set diff [expr $val - $currentWidth]
|
||||
set newD1B [expr [SplitReply [ss1d]] + $diff/2]
|
||||
set newD1T [expr [SplitReply [ss1u]] + $diff/2]
|
||||
return "ss1d=$newD1B,ss1u=$newD1T"
|
||||
}
|
||||
publish ss1heightscript user
|
||||
|
||||
#-------------------------------------------------------
|
||||
proc ss1readheight {} {
|
||||
return [expr [SplitReply [ss1u]] + [SplitReply [ss1d]]]
|
||||
}
|
||||
publish ss1readheight user
|
||||
|
||||
#---------------------------------------------------------
|
||||
MakeConfigurableMotor ss1vg
|
||||
ss1vg drivescript ss1heightscript
|
||||
ss1vg readscript ss1readheight
|
||||
|
||||
#--------------------------------------------------------
|
||||
proc ss1vertoffsetscript {val} {
|
||||
set SU [SplitReply [ss1u]]
|
||||
set SD [SplitReply [ss1d]]
|
||||
set currentOffset [ expr $SU - ($SU + $SD)/2.0 ]
|
||||
set diff [expr $val - $currentOffset]
|
||||
set newD1U [expr $SU + $diff]
|
||||
set newD1D [expr $SD - $diff]
|
||||
return "ss1u=$newD1U,ss1d=$newD1D"
|
||||
}
|
||||
publish ss1vertoffsetscript user
|
||||
|
||||
#-------------------------------------------------------
|
||||
proc ss1readvertoffset {} {
|
||||
set SU [SplitReply [ss1u]]
|
||||
return [ expr $SU - ($SU + [SplitReply [ss1d]])/2.0 ]
|
||||
}
|
||||
publish ss1readvertoffset user
|
||||
|
||||
#-------------------------------------------------------
|
||||
MakeConfigurableMotor ss1vo
|
||||
ss1vo drivescript ss1vertoffsetscript
|
||||
ss1vo readscript ss1readvertoffset
|
||||
###############################################
|
||||
|
||||
# END MOTOR CONFIGURATION
|
||||
|
||||
fileeval motor_configuration.tcl
|
||||
source gen_hipadaba.tcl
|
||||
fileeval extraconfig.tcl
|
||||
|
||||
Reference in New Issue
Block a user