Pull back Platypus Command changes

This commit is contained in:
Douglas Clowes
2014-06-24 12:36:53 +10:00
parent 3ea1f3bf5f
commit e9191c1d62

View File

@ -87,7 +87,12 @@ proc ::exp_mode::omega_2theta { arg1 arg2 {s1vg 0} {s2vg 0} {s3vg 0} {s4vg 0}} {
if {![string is double $s1vg] || ![string is double $s2vg] || ![string is double $s3vg] || ![string is double $s4vg]} {
return -code error "ERROR: all the slit openings need to be numbers"
}
drive ss1u [expr 0.5 * $s1vg] ss1d [expr -0.5 * $s1vg] ss2u [expr 0.5 * $s2vg] ss2d [expr -0.5 * $s2vg] ss3u [expr 0.5 * $s3vg] ss3d [expr -0.5 * $s3vg] ss4u [expr 0.5 * $s4vg] ss4d [expr -0.5*$s4vg]
# drive ss1u [expr 0.5 * $s1vg] ss1d [expr -0.5 * $s1vg] ss2u [expr 0.5 * $s2vg] ss2d [expr -0.5 * $s2vg] ss3u [expr 0.5 * $s3vg] ss3d [expr -0.5 * $s3vg] ss4u [expr 0.5 * $s4vg] ss4d [expr -0.5*$s4vg]
drive ss1u [expr 0.5 * $s1vg] ss1d [expr -0.5 * $s1vg] ss2d [expr -0.5 * $s2vg] ss3u [expr 0.5 * $s3vg] ss4d [expr -0.5*$s4vg]
drive ss2u [expr 0.5 * $s2vg] ss3d [expr -0.5 * $s3vg] ss4u [expr 0.5 * $s4vg]
statemon stop om2th
return -code ok
}
@ -102,7 +107,10 @@ proc ::exp_mode::set_guide_element { arg } {
global ::exp_mode::c1ht_pos
global ::exp_mode::valid_modes
drive ss1u 0 ss1d 0 ss2u 0 ss2d 0 ss3u 0 ss3d 0 ss4u 0 ss4d 0
# drive ss1u 0 ss1d 0 ss2u 0 ss2d 0 ss3u 0 ss3d 0 ss4u 0 ss4d 0
drive ss1u 0 ss1d 0 ss2d 0 ss3u 0 ss4d 0
drive ss2u 0 ss3d 0 ss4u 0
if {[lsearch $::exp_mode::valid_modes $arg] == -1} {
Clientput "Mode is: $::exp_mode::valid_modes - (polarisation, polarisation and analysis, mt, focussing, DB, single)"
return -code error "Mode is: $::exp_mode::valid_modes - (polarisation,polarisation and analysis, mt, focussing, DB, single)"
@ -145,9 +153,14 @@ proc ::exp_mode::set_omega { arg } {
set h1 [expr -1. * $d1 * tan($argrad)]
set h2 [expr -1. * $d2 * tan($argrad)]
if {[catch {checkMotionAndDrive st3vt $h1} errMsg]} {return -code error $errMsg}
if {[catch {isszst4vtsafe sz $h2} errMsg]} {return -code error $errMsg}
if {[catch {checkMotionAndDrive sz $h2} errMsg]} {return -code error $errMsg}
if { [catch {
checkMotion st3vt $h1
checkMotion sz $h2
} errMsg ] } {
return -code error $errMsg
}
drive st3vt $h1 sz $h2
}
DB { ;#checked ARJN on 081231
set temp [deg2rad 2.4]
@ -161,15 +174,21 @@ proc ::exp_mode::set_omega { arg } {
set offset [expr 599.868*sin($temp)]
set arg 4.8 ;#fixed angle
set argrad [deg2rad $arg]
set d1 [expr [SplitReply [slit3_distance]] - [SplitReply [guide2_distance]]]
set d2 [expr [SplitReply [sample_distance]] - [SplitReply [guide2_distance]]]
set h1 [expr -1. * $d1 * tan($argrad) - $offset]
set h2 [expr -1. * $d2 * tan($argrad) - $offset]
if { [catch {checkMotionAndDrive st3vt $h1} errMsg]} {return -code error $errMsg}
if { [catch {isszst4vtsafe sz $h2} errMsg]} {return -code error $errMsg}
if { [catch {checkMotionAndDrive sz $h2} errMsg]} {return -code error $errMsg}
if { [catch {
checkMotion st3vt $h1
checkMotion sz $h2
} errMsg ] } {
return -code error $errMsg
}
drive st3vt $h1 sz $h2
}
FOC {
if { [catch {
@ -250,8 +269,13 @@ proc ::exp_mode::set_two_theta { arg } {
set c [expr $d3 / cos($argrad-$omegarad)]
set h4 [expr sqrt(pow($b,2) + pow($c,2) - 2*$b*$c*cos($argrad))]
if { [catch {isszst4vtsafe st4vt [expr $h2 + $h1]} errMsg]} {return -code error $errMsg}
if { [catch {checkMotionAndDrive st4vt [expr $h2 + $h1]} errMsg]} {return -code error $errMsg}
if { [catch {checkMotionAndDrive dz [expr $h3 + $h4]} errMsg]} {return -code error $errMsg}
if { [catch {
checkMotion st4vt [expr $h2 + $h1]
checkMotion dz [expr $h3 + $h4]
} errMsg ] } {
return -code error $errMsg
}
drive st4vt [expr $h2 + $h1] dz [expr $h3 + $h4]
}
DB { ;#checked ARJN 081231
set temp [deg2rad 2.4]
@ -274,8 +298,13 @@ proc ::exp_mode::set_two_theta { arg } {
set c [expr $d3 / cos($argrad-$omegarad)]
set h4 [expr sqrt(pow($b,2) + pow($c,2) - 2*$b*$c*cos($argrad))]
if { [catch {isszst4vtsafe st4vt [expr $h2 + $h1]} errMsg]} {return -code error $errMsg}
if { [catch {checkMotionAndDrive st4vt [expr $h2 + $h1]} errMsg]} {return -code error $errMsg}
if { [catch {checkMotionAndDrive dz [expr $h3 + $h4]} errMsg]} {return -code error $errMsg}
if { [catch {
checkMotion st4vt [expr $h2 + $h1]
checkMotion dz [expr $h3 + $h4]
} errMsg ] } {
return -code error $errMsg
}
drive st4vt [expr $h2 + $h1] dz [expr $h3 + $h4]
}
FOC {
set d1 [SplitReply [dy]]