Don't MakeAsyncQueue when using simulated driver.
Add metedata to slit gap and offset motors for new hdb and nexus code. r2123 | ffr | 2007-08-16 16:37:45 +1000 (Thu, 16 Aug 2007) | 3 lines
This commit is contained in:
committed by
Douglas Clowes
parent
307e29e60e
commit
950037bfc3
@@ -1,17 +1,12 @@
|
||||
# $Revision: 1.15 $
|
||||
# $Date: 2007-05-15 03:15:00 $
|
||||
# $Revision: 1.16 $
|
||||
# $Date: 2007-08-16 06:36:59 $
|
||||
# Author: Ferdi Franceschini (ffr@ansto.gov.au)
|
||||
# Last revision by: $Author: dcl $
|
||||
# Last revision by: $Author: ffr $
|
||||
|
||||
# START MOTOR CONFIGURATION
|
||||
|
||||
set animal wombat
|
||||
set sim_mode [SplitReply [motor_simulation]]
|
||||
if {$sim_mode == "true"} {
|
||||
set motor_driver_type asim
|
||||
} else {
|
||||
set motor_driver_type DMC2280
|
||||
}
|
||||
|
||||
# Setup addresses of Galil DMC2280 controllers.
|
||||
set dmc2280_controller1(host) mc1-$animal
|
||||
@@ -26,10 +21,15 @@ set dmc2280_controller3(port) pmc3-$animal
|
||||
set dmc2280_controller4(host) mc4-$animal
|
||||
set dmc2280_controller4(port) pmc4-$animal
|
||||
|
||||
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)
|
||||
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 mc3 DMC2280 $dmc2280_controller3(host) $dmc2280_controller3(port)
|
||||
MakeAsyncQueue mc4 DMC2280 $dmc2280_controller4(host) $dmc2280_controller4(port)
|
||||
}
|
||||
|
||||
#Measured absolute encoder reading at home position
|
||||
set mphi_Home 7613516
|
||||
@@ -95,6 +95,10 @@ set ss2l_HiRange [expr $hSlitHome + $hSlitLoRange]
|
||||
set ss2u_HiRange [expr $vSlitHome + $vSlitHiRange]
|
||||
set ss2d_HiRange [expr $vSlitHome + $vSlitLoRange]
|
||||
|
||||
set slit1VGroup first/vertical
|
||||
set slit1HGroup first/horizontal
|
||||
set slit2VGroup second/vertical
|
||||
set slit2HGroup second/horizontal
|
||||
# set movecount high to reduce the frequency of
|
||||
# hnotify messages to a reasonable level
|
||||
set move_count 10
|
||||
@@ -614,6 +618,9 @@ publish mthGet user
|
||||
MakeConfigurableMotor mth
|
||||
mth readscript mthGet
|
||||
mth drivescript mthSet
|
||||
sicslist setatt mth klass crystal
|
||||
sicslist setatt mth units degrees
|
||||
sicslist setatt mth long_name half_takeoff_angle
|
||||
|
||||
proc sthGet {} { return [expr [SplitReply [stth]]/2.0]}
|
||||
proc sthSet {val} { return "stth=[SplitReply [stth]]"}
|
||||
@@ -622,6 +629,9 @@ publish sthSet user
|
||||
MakeConfigurableMotor sth
|
||||
sth readscript sthGet
|
||||
sth drivescript sthSet
|
||||
sicslist setatt sth klass sample
|
||||
sicslist setatt sth units degrees
|
||||
sicslist setatt sth long_name half_azimuthal_angle
|
||||
|
||||
proc get_gap_width {m1 m2} {
|
||||
return [expr [SplitReply [$m1]] - [SplitReply [$m2]]]
|
||||
@@ -652,7 +662,7 @@ proc set_gap_offset {m1 m2 val} {
|
||||
}
|
||||
|
||||
# make_gap_motors virt_width_motor virt_offset_motor real_high_motor real_low_motor
|
||||
proc make_gap_motors {vm1 vm2 m1 m2} {
|
||||
proc make_gap_motors {vm1 vm1_name vm2 vm2_name m1 m2 aunits agroup} {
|
||||
eval "proc get_$vm1 {} { get_gap_width $m1 $m2 }"
|
||||
set v {$var}
|
||||
eval "proc set_$vm1 {var} { set_gap_width $m1 $m2 $v }"
|
||||
@@ -670,12 +680,23 @@ publish set_$vm1 user
|
||||
$vm2 drivescript set_$vm2
|
||||
publish get_$vm2 user
|
||||
publish set_$vm2 user
|
||||
|
||||
sicslist setatt $vm1 units $aunits
|
||||
sicslist setatt $vm1 klass aperture
|
||||
sicslist setatt $vm1 long_name $vm1_name
|
||||
sicslist setatt $vm1 group $agroup
|
||||
sicslist setatt $vm2 units $aunits
|
||||
sicslist setatt $vm2 klass aperture
|
||||
sicslist setatt $vm2 long_name $vm2_name
|
||||
sicslist setatt $vm2 group $agroup
|
||||
}
|
||||
|
||||
make_gap_motors ss1vg ss1vo ss1u ss1d
|
||||
make_gap_motors ss1hg ss1ho ss1r ss1l
|
||||
make_gap_motors ss1vg gap ss1vo offset ss1u ss1d mm $slit1VGroup
|
||||
make_gap_motors ss1hg gap ss1ho offset ss1r ss1l mm $slit1HGroup
|
||||
|
||||
make_gap_motors ss2vg ss2vo ss2u ss2d
|
||||
make_gap_motors ss2hg ss2ho ss2r ss2l
|
||||
make_gap_motors ss2vg gap ss2vo offset ss2u ss2d mm $slit2VGroup
|
||||
make_gap_motors ss2hg gap ss2ho offset ss2r ss2l mm $slit2HGroup
|
||||
|
||||
proc motor_set_sobj_attributes {} {
|
||||
}
|
||||
# END MOTOR CONFIGURATION
|
||||
|
||||
@@ -1,17 +1,12 @@
|
||||
# $Revision: 1.18 $
|
||||
# $Date: 2007-07-26 02:22:57 $
|
||||
# $Revision: 1.19 $
|
||||
# $Date: 2007-08-16 06:37:45 $
|
||||
# Author: Ferdi Franceschini (ffr@ansto.gov.au)
|
||||
# Last revision by: $Author: dcl $
|
||||
# Last revision by: $Author: ffr $
|
||||
|
||||
# START MOTOR CONFIGURATION
|
||||
|
||||
set animal echidna
|
||||
set sim_mode [SplitReply [motor_simulation]]
|
||||
if {$sim_mode == "true"} {
|
||||
set motor_driver_type asim
|
||||
} else {
|
||||
set motor_driver_type DMC2280
|
||||
}
|
||||
|
||||
# Setup addresses of Galil DMC2280 controllers.
|
||||
set dmc2280_controller1(host) mc1-$animal
|
||||
@@ -26,10 +21,15 @@ set dmc2280_controller3(port) pmc3-$animal
|
||||
set dmc2280_controller4(host) mc4-$animal
|
||||
set dmc2280_controller4(port) pmc4-$animal
|
||||
|
||||
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)
|
||||
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 mc3 DMC2280 $dmc2280_controller3(host) $dmc2280_controller3(port)
|
||||
MakeAsyncQueue mc4 DMC2280 $dmc2280_controller4(host) $dmc2280_controller4(port)
|
||||
}
|
||||
|
||||
#Measured absolute encoder reading at home position
|
||||
set mphi_Home 7413209
|
||||
@@ -96,6 +96,10 @@ set ss2l_HiRange [expr $hSlitHome + $hSlitLoRange]
|
||||
set ss2u_HiRange [expr $vSlitHome + $vSlitHiRange]
|
||||
set ss2d_HiRange [expr $vSlitHome + $vSlitLoRange]
|
||||
|
||||
set slit1VGroup first/vertical
|
||||
set slit1HGroup first/horizontal
|
||||
set slit2VGroup second/vertical
|
||||
set slit2HGroup second/horizontal
|
||||
# set movecount high to reduce the frequency of
|
||||
# hnotify messages to a reasonable level
|
||||
set move_count 10
|
||||
@@ -639,6 +643,9 @@ publish mthGet user
|
||||
MakeConfigurableMotor mth
|
||||
mth readscript mthGet
|
||||
mth drivescript mthSet
|
||||
sicslist setatt mth klass crystal
|
||||
sicslist setatt mth units degrees
|
||||
sicslist setatt mth long_name half_takeoff_angle
|
||||
|
||||
proc sthGet {} { return [expr [SplitReply [stth]]/2.0]}
|
||||
proc sthSet {val} { return "stth=[SplitReply [stth]]"}
|
||||
@@ -647,6 +654,9 @@ publish sthSet user
|
||||
MakeConfigurableMotor sth
|
||||
sth readscript sthGet
|
||||
sth drivescript sthSet
|
||||
sicslist setatt sth klass sample
|
||||
sicslist setatt sth units degrees
|
||||
sicslist setatt sth long_name half_azimuthal_angle
|
||||
|
||||
proc get_gap_width {m1 m2} {
|
||||
return [expr [SplitReply [$m1]] - [SplitReply [$m2]]]
|
||||
@@ -677,7 +687,7 @@ proc set_gap_offset {m1 m2 val} {
|
||||
}
|
||||
|
||||
# make_gap_motors virt_width_motor virt_offset_motor real_high_motor real_low_motor
|
||||
proc make_gap_motors {vm1 vm2 m1 m2} {
|
||||
proc make_gap_motors {vm1 vm1_name vm2 vm2_name m1 m2 aunits agroup} {
|
||||
eval "proc get_$vm1 {} { get_gap_width $m1 $m2 }"
|
||||
set v {$var}
|
||||
eval "proc set_$vm1 {var} { set_gap_width $m1 $m2 $v }"
|
||||
@@ -695,12 +705,23 @@ publish set_$vm1 user
|
||||
$vm2 drivescript set_$vm2
|
||||
publish get_$vm2 user
|
||||
publish set_$vm2 user
|
||||
|
||||
sicslist setatt $vm1 units $aunits
|
||||
sicslist setatt $vm1 klass aperture
|
||||
sicslist setatt $vm1 long_name $vm1_name
|
||||
sicslist setatt $vm1 group $agroup
|
||||
sicslist setatt $vm2 units $aunits
|
||||
sicslist setatt $vm2 klass aperture
|
||||
sicslist setatt $vm2 long_name $vm2_name
|
||||
sicslist setatt $vm2 group $agroup
|
||||
}
|
||||
|
||||
make_gap_motors ss1vg ss1vo ss1u ss1d
|
||||
make_gap_motors ss1hg ss1ho ss1r ss1l
|
||||
make_gap_motors ss1vg gap ss1vo offset ss1u ss1d mm $slit1VGroup
|
||||
make_gap_motors ss1hg gap ss1ho offset ss1r ss1l mm $slit1HGroup
|
||||
|
||||
make_gap_motors ss2vg ss2vo ss2u ss2d
|
||||
make_gap_motors ss2hg ss2ho ss2r ss2l
|
||||
make_gap_motors ss2vg gap ss2vo offset ss2u ss2d mm $slit2VGroup
|
||||
make_gap_motors ss2hg gap ss2ho offset ss2r ss2l mm $slit2HGroup
|
||||
|
||||
proc motor_set_sobj_attributes {} {
|
||||
}
|
||||
# END MOTOR CONFIGURATION
|
||||
|
||||
Reference in New Issue
Block a user