First attempt at kowari config.

r992 | ffr | 2006-05-10 14:38:00 +1000 (Wed, 10 May 2006) | 2 lines
This commit is contained in:
Ferdi Franceschini
2006-05-10 14:38:00 +10:00
committed by Douglas Clowes
parent f3c56a1dab
commit f6896faaad

View File

@@ -0,0 +1,487 @@
# $Revision: 1.1 $
# $Date: 2006-05-10 04:38:00 $
# Author: Ferdi Franceschini (ffr@ansto.gov.au)
# Last revision by: $Author: ffr $
#START SERVER CONFIGURATION SECTION
installprotocolhandler
# Use this to create an array of named parameters to inilise motors.
proc params {args} {
upvar 1 "" x;
if [info exists x] {unset x}
eval "array set x [list $args]"
}
ServerOption statusfile /home/sics/SICS/log/status.tcl
ServerOption RedirectFile /home/sics/SICS/log/stdout
ServerOption LogFileBaseName /home/sics/SICS/log/serverlog
ServerOption LogFileDir /home/sics/SICS/log
ServerOption QuieckPort 60004
ServerOption ServerPort 60003
ServerOption InterruptPort 60002
ServerOption TelWord sicslogin
ServerOption TelnetPort 60001
ServerOption ReadUserPasswdTimeout 600000
ServerOption AcceptTimeOut 10
ServerOption ReadTimeOut 10
SicsUser manager ansto 1
SicsUser user sydney 2
SicsUser spy 007 3
MakeDataNumber SicsDataNumber /home/sics/SICS/data/DataNumber
VarMake SicsDataPath Text Internal
SicsDataPath /home/sics/SICS/data/
SicsDataPath lock
VarMake SicsDataPrefix Text Internal
SicsDataPrefix smp
SicsDataPrefix lock
VarMake SicsDataPostFix Text Internal
SicsDataPostFix .hdf
SicsDataPostFix lock
VarMake Title Text User
VarMake Sample Text User
VarMake User Text User
VarMake starttime Text User
VarMake currentfile Text User
VarMake batchroot Text User
VarMake Instrument Text Internal
Instrument RSD
Instrument lock
MakeDrive
#END SERVER CONFIGURATION SECTION
########################################
# INSTRUMENT SPECIFIC CONFIGURATION
# Setup addresses of Galil DMC2280 controllers.
set dmc2280_controller1(host) 137.157.201.66
set dmc2280_controller1(port) 1034
set dmc2280_controller2(host) 137.157.201.67 1034
set dmc2280_controller2(port) 1034
set dmc2280_controller3(host) 137.157.201.67
set dmc2280_controller3(port) 1035
set dmc2280_controller4(host) 137.157.201.68
set dmc2280_controller4(port) 1034
Motor mth DMC2280 [params \
host $dmc2280_controller1(host)\
port $dmc2280_controller1(port)\
axis X?\
stepsPerX XXX\
absEnc 1\
absEncHome YYY\
cntsPerX ZZZ]
mth hardlowerlim -180
mth hardupperlim 180
mth softlowerlim -180
mth softupperlim 180
mth home 0
Motor mom DMC2280 [params \
host $dmc2280_controller1(host)\
port $dmc2280_controller1(port)\
axis X?\
stepsPerX XXX\
absEnc 1\
absEncHome YYY\
cntsPerX ZZZ]
mom hardlowerlim -180
mom hardupperlim 180
mom softlowerlim -180
mom softupperlim 180
mom home 0
Motor mtth DMC2280 [params \
host $dmc2280_controller1(host)\
port $dmc2280_controller1(port)\
axis X?\
stepsPerX XXX\
absEnc 1\
absEncHome YYY\
cntsPerX ZZZ]
mtth hardlowerlim 40
mtth hardupperlim 120
mtth softlowerlim 40
mtth softupperlim 120
mtth home 80
Motor mchi DMC2280 [params \
host $dmc2280_controller1(host)\
port $dmc2280_controller1(port)\
axis X?\
stepsPerX XXX\
absEnc 1\
absEncHome YYY\
cntsPerX ZZZ]
mchi hardlowerlim 70
mchi hardupperlim 110
mchi softlowerlim 70
mchi softupperlim 110
mchi home 90
Motor mphi DMC2280 [params \
host $dmc2280_controller1(host)\
port $dmc2280_controller1(port)\
axis X?\
stepsPerX XXX\
absEnc 1\
absEncHome YYY\
cntsPerX ZZZ]
mphi hardlowerlim -20
mphi hardupperlim 20
mphi softlowerlim -20
mphi softupperlim 20
mphi home 0
Motor mx DMC2280 [params \
host $dmc2280_controller1(host)\
port $dmc2280_controller1(port)\
axis X?\
stepsPerX XXX\
absEnc 1\
absEncHome YYY\
cntsPerX ZZZ]
mx hardlowerlim xxxx
mx hardupperlim xxxx
mx softlowerlim xxxx
mx softupperlim xxxx
mx home 0
Motor my DMC2280 [params \
host $dmc2280_controller1(host)\
port $dmc2280_controller1(port)\
axis X?\
stepsPerX XXX\
absEnc 1\
absEncHome YYY\
cntsPerX ZZZ]
my hardlowerlim xxxx
my hardupperlim xxxx
my softlowerlim xxxx
my softupperlim xxxx
my home 0
Motor mrh DMC2280 [params \
host $dmc2280_controller1(host)\
port $dmc2280_controller1(port)\
axis X?\
stepsPerX XXX\
absEnc 1\
absEncHome YYY\
cntsPerX ZZZ]
mrh hardlowerlim HLL
mrh hardupperlim HUL
mrh softlowerlim SLL
mrh softupperlim SUL
mrh home 0
Motor mrv DMC2280 [params \
host $dmc2280_controller1(host)\
port $dmc2280_controller1(port)\
axis X?\
stepsPerX XXX\
absEnc 1\
absEncHome YYY\
cntsPerX ZZZ]
mrv hardlowerlim HLL
mrv hardupperlim HUL
mrv softlowerlim SLL
mrv softupperlim SUL
mrv home 0
Motor som DMC2280 [params \
host $dmc2280_controller2(host)\
port $dmc2280_controller2(port)\
axis xxxx\
units degrees\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX xxxx\
absEnc 1\
absEncHome xxxx\
cntsPerX xxxx]
som hardlowerlim 0
som hardupperlim 360
som softlowerlim 0
som softupperlim 360
som home 0
Motor stth DMC2280 [params \
host $dmc2280_controller2(host)\
port $dmc2280_controller2(port)\
axis xxxx\
units degrees\
maxSpeed xxxx\
maxAccel xxxx\
maxDecel xxxx\
stepsPerX xxxx\
motorHome xxxx\
absEnc 1\
absEncHome xxxx\
cntsPerX xxxx]
stth hardlowerlim 75
stth hardupperlim 105
stth softlowerlim 75
stth softupperlim 105
stth home 160
Motor sx DMC2280 [params \
host $dmc2280_controller2(host)\
port $dmc2280_controller2(port)\
axis xxxx\
units mm\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX xxxx\
absEnc 1\
absEncHome xxxx\
cntsPerX xxxx]
sx hardlowerlim -250
sx hardupperlim 250
sx softlowerlim -250
sx softupperlim 250
sx home 0
Motor sy DMC2280 [params \
host $dmc2280_controller2(host)\
port $dmc2280_controller2(port)\
axis xxxx\
units mm\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX xxxx\
absEnc 1\
absEncHome xxxx\
cntsPerX xxxx]
sy hardlowerlim -250
sy hardupperlim 250
sy softlowerlim -250
sy softupperlim 250
sy home 0
Motor sz DMC2280 [params \
host $dmc2280_controller2(host)\
port $dmc2280_controller2(port)\
axis xxxx\
units mm\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX xxxx\
absEnc 1\
absEncHome xxxx\
cntsPerX xxxx]
sz hardlowerlim 0
sz hardupperlim 650
sz softlowerlim 0
sz softupperlim 650
sz home 0
Motor psu DMC2280 [params \
host $dmc2280_controller3(host)\
port $dmc2280_controller3(port)\
axis xxxx\
units mm\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX xxxx\
motorHome xxxx]
psu hardlowerlim 0
psu hardupperlim 50
psu softlowerlim 0
psu softupperlim 50
psu home 0
Motor psd DMC2280 [params \
host $dmc2280_controller3(host)\
port $dmc2280_controller3(port)\
axis xxxx\
units mm\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX xxxx\
motorHome xxxx]
psd hardlowerlim 0
psd hardupperlim 50
psd softlowerlim 0
psd softupperlim 50
psd home 0
Motor psl DMC2280 [params \
host $dmc2280_controller3(host)\
port $dmc2280_controller3(port)\
axis xxxx\
units mm\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX xxxx\
motorHome xxxx]
psl hardlowerlim 0
psl hardupperlim 50
psl softlowerlim 0
psl softupperlim 50
psl home 0
Motor psr DMC2280 [params \
host $dmc2280_controller3(host)\
port $dmc2280_controller3(port)\
axis xxxx\
units mm\
maxSpeed 1\
maxAccel 1\
maxDecel 1\
stepsPerX xxxx\
motorHome xxxx]
psr hardlowerlim 0
psr hardupperlim 50
psr softlowerlim 0
psr softupperlim 50
psr home 0
Motor ssu DMC2280 [params \
host $dmc2280_controller4(host)\
port $dmc2280_controller4(port)\
axis xxxx\
stepsPerX xxxx\
motorHome xxxx]
ssu hardlowerlim 0
ssu hardupperlim 50
ssu softlowerlim 0
ssu softupperlim 50
ssu home 0
Motor ssd DMC2280 [params \
host $dmc2280_controller4(host)\
port $dmc2280_controller4(port)\
axis xxxx\
stepsPerX xxxx\
motorHome xxxx]
ssd hardlowerlim 0
ssd hardupperlim 50
ssd softlowerlim 0
ssd softupperlim 50
ssd home 0
Motor ssl DMC2280 [params \
host $dmc2280_controller4(host)\
port $dmc2280_controller4(port)\
axis xxxx\
stepsPerX xxxx\
motorHome xxxx]
ssl hardlowerlim 0
ssl hardupperlim 50
ssl softlowerlim 0
ssl softupperlim 50
ssl home 0
Motor ssr DMC2280 [params \
host $dmc2280_controller4(host)\
port $dmc2280_controller4(port)\
axis xxxx\
stepsPerX xxxx\
motorHome xxxx]
ssr hardlowerlim 0
ssr hardupperlim 50
ssr softlowerlim 0
ssr softupperlim 50
ssr home 0
proc SplitReply { text } {
set l [split $text =]
return [lindex $l 1]
}
# virtual motor ss1(h)orizontal (width)
#--------------------------------------------------------
proc widthscript {val} {
set currentWidth [expr [SplitReply [psr]] + [SplitReply [psl]]]
set diff [expr $val - $currentWidth]
set newD1R [expr [SplitReply [psr]] + $diff/2]
set newD1L [expr [SplitReply [psl]] + $diff/2]
return "psr=$newD1R,psl=$newD1L"
}
publish widthscript user
#-------------------------------------------------------
proc readwidth {} {
return [expr [SplitReply [psr]] + [SplitReply [psl]]]
}
publish readwidth user
MakeConfigurableMotor psw
psw drivescript widthscript
psw readscript readwidth
# virtual motor ss1(h)orizontal (offset)
#--------------------------------------------------------
proc horoffsetscript {val} {
set SR [SplitReply [psr]]
set SL [SplitReply [psl]]
set currentOffset [ expr $SR - ($SR + $SL)/2.0 ]
set diff [expr $val - $currentOffset]
set newD1R [expr $SR + $diff]
set newD1L [expr $SL - $diff]
return "psr=$newD1R,psl=$newD1L"
}
publish horoffsetscript user
#-------------------------------------------------------
proc readhoroffset {} {
set SR [SplitReply [psr]]
return [ expr $SR - ($SR + [SplitReply [psl]])/2.0 ]
}
publish readhoroffset user
#-------------------------------------------------------
MakeConfigurableMotor psho
psho drivescript horoffsetscript
psho readscript readhoroffset
# virtual motor ss1v(ertical), height
#-----------------------------------------------------
proc heightscript {val} {
set currentWidth [expr [SplitReply [psu]] + [SplitReply [psd]]]
set diff [expr $val - $currentWidth]
set newD1B [expr [SplitReply [psd]] + $diff/2]
set newD1T [expr [SplitReply [psu]] + $diff/2]
return "psd=$newD1B,psu=$newD1T"
}
publish heightscript user
#-------------------------------------------------------
proc readheight {} {
return [expr [SplitReply [psu]] + [SplitReply [psd]]]
}
publish readheight user
#---------------------------------------------------------
MakeConfigurableMotor ss1vg
ss1vg drivescript heightscript
ss1vg readscript readheight
# virtual motor ss1(v)ertical (offset)
#--------------------------------------------------------
proc vertoffsetscript {val} {
set SU [SplitReply [psu]]
set SD [SplitReply [psd]]
set currentOffset [ expr $SU - ($SU + $SD)/2.0 ]
set diff [expr $val - $currentOffset]
set newD1U [expr $SU + $diff]
set newD1D [expr $SD - $diff]
return "psu=$newD1U,psd=$newD1D"
}
publish vertoffsetscript user
#-------------------------------------------------------
proc readvertoffset {} {
set SU [SplitReply [psu]]
return [ expr $SU - ($SU + [SplitReply [psd]])/2.0 ]
}
publish readvertoffset user
#-------------------------------------------------------
MakeConfigurableMotor ss1vo
ss1vo drivescript vertoffsetscript
ss1vo readscript readvertoffset