diff --git a/site_ansto/instrument/config/counter/counter_common_1.tcl b/site_ansto/instrument/config/counter/counter_common_1.tcl index 9ad2782c..9d11a570 100644 --- a/site_ansto/instrument/config/counter/counter_common_1.tcl +++ b/site_ansto/instrument/config/counter/counter_common_1.tcl @@ -35,8 +35,8 @@ proc ::counter::ic_initialize {} { # This must be sourced before the hmm_configuration.tcl until we separate the scan setup from the hmm setup for {set i 0; set n 1} {$i < $isc_numchannels} {incr i; incr n} { MakeCounter bm$n anstomonitor [ params host $isc_monitor_address port [lindex $isc_portlist $i] ] - bm$n send scan=1 - bm$n send sample=10 + bm$n send set scan=1 + bm$n send set sample=10 append bm_list "bm$n " } } diff --git a/site_ansto/instrument/tas/config/motors/motor_configuration.tcl b/site_ansto/instrument/tas/config/motors/motor_configuration.tcl index 6e89389b..b8f46acd 100644 --- a/site_ansto/instrument/tas/config/motors/motor_configuration.tcl +++ b/site_ansto/instrument/tas/config/motors/motor_configuration.tcl @@ -104,25 +104,58 @@ if { [ info exists ::config_dict ] } { set axis_config 0 } elseif {$implementation == "12tmagnet_sample_insert"} { set axis_config 1 + } elseif {$implementation == "eulerian_cradle"} { + set axis_config 2 } else { set axis_config 0 } } + if { [ dict exists $::config_dict m2s2 implementation ] } { + set implementation [ dict get $::config_dict m2s2 implementation ] + if {$implementation == "normal_m2s2"} { + set m2_speed 0.4 + set m2_accel 0.04 + set m2_decel 0.04 + set s2_speed 0.8 + set s2_accel 0.2 + set s2_decel 0.2 + } elseif {$implementation == "extended_m2s2"} { + set m2_speed 0.1 + set m2_accel 0.025 + set m2_decel 0.025 + set s2_speed 0.4 + set s2_accel 0.1 + set s2_decel 0.1 + } else { + set m2_speed 0.4 + set m2_accel 0.04 + set m2_decel 0.04 + set s2_speed 0.8 + set s2_accel 0.2 + set s2_decel 0.2 + } + } } switch $axis_config { 0 { - set use_normal_config "true" + set use_s1_stage "true" set tilt_motor_driver_type $motor_driver_type + fileeval $cfPath(motors)/tilt_configuration.tcl } 1 { set magmot s1 set magmot_aq "mc2" set magmot_axis "A" - set use_normal_config "false" + set use_s1_stage "false" set tilt_motor_driver_type asim + fileeval $cfPath(motors)/tilt_configuration.tcl fileeval $cfPath(motors)/magnet_configuration.tcl } + 2 { + set use_s1_stage "true" + fileeval $cfPath(motors)/euler_configuration.tcl + } } @@ -250,9 +283,9 @@ m2 motOffDelay 0 m2 backlash_offset -0.5 m2 creep_offset 0.1 m2 creep_precision 0.0 -m2 speed 0.4 -m2 accel 0.04 -m2 decel 0.04 +m2 speed $m2_speed +m2 accel $m2_accel +m2 decel $m2_decel # mc1: Detector Rotate Motor a2 $motor_driver_type [params \ @@ -292,100 +325,8 @@ a2 decel 0.2 ############################ # -# mc2: Sample Tilt 1 -Motor sgu $tilt_motor_driver_type [params \ - asyncqueue mc2\ - host mc2-taipan\ - port pmc2-taipan\ - axis A\ - units degrees\ - hardlowerlim -13\ - hardupperlim 16.5\ - maxSpeed 2\ - maxAccel 1\ - maxDecel 1\ - stepsPerX 25000\ - absEnc 1\ - absEncHome 7745478\ - cntsPerX 8192] -sgu part sample -sgu long_name sgu -sgu softlowerlim -13 -sgu softupperlim 16.5 -sgu home 0 -sgu backlash_offset -0.2 - -# mc2: Sample Tilt 2 -Motor sgl $tilt_motor_driver_type [params \ - asyncqueue mc2\ - host mc2-taipan\ - port pmc2-taipan\ - axis B\ - units degrees\ - hardlowerlim -16.5\ - hardupperlim 17.5\ - maxSpeed 2\ - maxAccel 1\ - maxDecel 1\ - stepsPerX 25000\ - absEnc 1\ - absEncHome 7499135\ - cntsPerX 8192] -sgl part sample -sgl long_name sgl -sgl softlowerlim -16.5 -sgl softupperlim 17.5 -sgl home 0 -sgl backlash_offset -0.2 - -# mc2: Sample Up Tanslation -Motor stu $motor_driver_type [params \ - asyncqueue mc2\ - host mc2-taipan\ - port pmc2-taipan\ - axis C\ - units mm\ - hardlowerlim -15\ - hardupperlim 15\ - maxSpeed 2\ - maxAccel 1\ - maxDecel 1\ - stepsPerX -25000\ - absEnc 1\ - absEncHome 7392933\ - cntsPerX -8192] -stu part sample -stu long_name stu -stu softlowerlim -15 -stu softupperlim 15 -stu home 0.0 -stu backlash_offset -0.2 - -# mc2: Sample Lower Tanslation -Motor stl $motor_driver_type [params \ - asyncqueue mc2\ - host mc2-taipan\ - port pmc2-taipan\ - axis D\ - units mm\ - hardlowerlim -15\ - hardupperlim 15\ - maxSpeed 2\ - maxAccel 1\ - maxDecel 1\ - stepsPerX 25000\ - absEnc 1\ - absEncHome 7582773\ - cntsPerX 8192] -stl part sample -stl long_name stl -stl softlowerlim -15 -stl softupperlim 15 -stl home 0.0 -stl backlash_offset -0.2 - # mc2: Sample Rotate -if {$use_normal_config == "true"} { +if {$use_s1_stage == "true"} { Motor s1 $motor_driver_type [params \ asyncqueue mc2\ host mc2-taipan\ @@ -409,6 +350,7 @@ if {$use_normal_config == "true"} { s1 backlash_offset -0.2 } + # mc2: Analyser Detector Rotate -- Sample Scattering Angle # absEncHome 20728908\ at -50 Motor s2 $motor_driver_type [params \ @@ -440,9 +382,9 @@ s2 backlash_offset 0.5 s2 blockage_thresh 1 s2 creep_offset 0.015 s2 creep_precision 0.005 -s2 speed 0.8 -s2 accel 0.2 -s2 decel 0.2 +s2 speed $s2_speed +s2 accel $s2_accel +s2 decel $s2_decel # mc2: Analyser Horizontal Focus Motor ahfocus $motor_driver_type [params \ @@ -520,9 +462,10 @@ mvfocus long_name mvfocus mvfocus softlowerlim 0 mvfocus softupperlim 300 mvfocus home 0.0 -mvfocus Blockage_Thresh 2 +mvfocus Blockage_Thresh 4 mvfocus Blockage_Check_Interval 2 mvfocus creep_offset 0.2 +mvfocus backlash_offset -4 # mc3: Monochromator Horizontal Focus Motor mhfocus $motor_driver_type [params \ asyncqueue mc3\ @@ -531,25 +474,26 @@ Motor mhfocus $motor_driver_type [params \ axis B\ units degrees\ precision 0.2\ - hardlowerlim -80\ - hardupperlim 240\ + hardlowerlim -10\ + hardupperlim 280\ maxSpeed 3.6\ maxAccel 1.728\ maxDecel 1.728\ - stepsPerX [expr -25000.0 * 50.0 / 360.0]\ + stepsPerX [expr 25000.0 * 50.0 / 360.0]\ absEnc 1\ bias_bits 12\ - bias_bias 1540\ - absEncHome 2788\ - cntsPerX [expr -4096.0 / 360.0]] + bias_bias 1300\ + absEncHome 243\ + cntsPerX [expr 4096.0 / 360.0]] mhfocus part crystal mhfocus long_name mhfocus -mhfocus softlowerlim -75 -mhfocus softupperlim 235 +mhfocus softlowerlim -10 +mhfocus softupperlim 280 mhfocus home 0 -mhfocus Blockage_Thresh 2 +mhfocus Blockage_Thresh 4 mhfocus Blockage_Check_Interval 2 mhfocus creep_offset 0.2 +mhfocus backlash_offset -4 # mc3: Monochromator Rotate Motor m1 $motor_driver_type [params \ diff --git a/site_ansto/instrument/tas/config/motors/tilt_configuration.tcl b/site_ansto/instrument/tas/config/motors/tilt_configuration.tcl new file mode 100644 index 00000000..40da9973 --- /dev/null +++ b/site_ansto/instrument/tas/config/motors/tilt_configuration.tcl @@ -0,0 +1,92 @@ +# mc2: Sample Tilt 1 +Motor sgu $tilt_motor_driver_type [params \ + asyncqueue mc2\ + host mc2-taipan\ + port pmc2-taipan\ + axis A\ + units degrees\ + hardlowerlim -13\ + hardupperlim 16.5\ + maxSpeed 2\ + maxAccel 1\ + maxDecel 1\ + stepsPerX 25000\ + absEnc 1\ + absEncHome 7745478\ + cntsPerX 8192] +sgu part sample +sgu long_name sgu +sgu softlowerlim -13 +sgu softupperlim 16.5 +sgu home 0 +sgu backlash_offset -0.2 + +# mc2: Sample Tilt 2 +Motor sgl $tilt_motor_driver_type [params \ + asyncqueue mc2\ + host mc2-taipan\ + port pmc2-taipan\ + axis B\ + units degrees\ + hardlowerlim -16.5\ + hardupperlim 17.5\ + maxSpeed 2\ + maxAccel 1\ + maxDecel 1\ + stepsPerX 25000\ + absEnc 1\ + absEncHome 7499135\ + cntsPerX 8192] +sgl part sample +sgl long_name sgl +sgl softlowerlim -16.5 +sgl softupperlim 17.5 +sgl home 0 +sgl backlash_offset -0.2 + +# mc2: Sample Up Tanslation +Motor stu $motor_driver_type [params \ + asyncqueue mc2\ + host mc2-taipan\ + port pmc2-taipan\ + axis C\ + units mm\ + hardlowerlim -15\ + hardupperlim 15\ + maxSpeed 2\ + maxAccel 1\ + maxDecel 1\ + stepsPerX -25000\ + absEnc 1\ + absEncHome 7392933\ + cntsPerX -8192] +stu part sample +stu long_name stu +stu softlowerlim -15 +stu softupperlim 15 +stu home 0.0 +stu backlash_offset -0.2 + +# mc2: Sample Lower Tanslation +Motor stl $motor_driver_type [params \ + asyncqueue mc2\ + host mc2-taipan\ + port pmc2-taipan\ + axis D\ + units mm\ + hardlowerlim -15\ + hardupperlim 15\ + maxSpeed 2\ + maxAccel 1\ + maxDecel 1\ + stepsPerX 25000\ + absEnc 1\ + absEncHome 7582773\ + cntsPerX 8192] +stl part sample +stl long_name stl +stl softlowerlim -15 +stl softupperlim 15 +stl home 0.0 +stl backlash_offset -0.2 + diff --git a/site_ansto/instrument/tas/taipan_configuration.tcl b/site_ansto/instrument/tas/taipan_configuration.tcl index 68b2b2aa..c605b795 100644 --- a/site_ansto/instrument/tas/taipan_configuration.tcl +++ b/site_ansto/instrument/tas/taipan_configuration.tcl @@ -40,18 +40,22 @@ fileeval $cfPath(environment)/sct_agilent_33220A.tcl fileeval $cfPath(environment)/sct_protek_common.tcl fileeval $cfPath(environment)/sct_protekmm.tcl fileeval $cfPath(environment)/temperature/sct_eurotherm_2000.tcl +fileeval $cfPath(environment)/temperature/sct_eurotherm_3200.tcl fileeval $cfPath(environment)/temperature/sct_julabo_lh45.tcl fileeval $cfPath(environment)/temperature/sct_lakeshore_336.tcl fileeval $cfPath(environment)/temperature/sct_ls336.tcl fileeval $cfPath(environment)/temperature/sct_lakeshore_340.tcl fileeval $cfPath(environment)/temperature/sct_ls340.tcl fileeval $cfPath(environment)/temperature/sct_lakeshore_370.tcl +fileeval $cfPath(environment)/temperature/sct_lakeshore_m370.tcl fileeval $cfPath(environment)/temperature/sct_oxford_itc.tcl fileeval $cfPath(environment)/temperature/sct_oxford_mercury.tcl fileeval $cfPath(environment)/temperature/west400.tcl +fileeval $cfPath(environment)/temperature/sct_west_6100.tcl +fileeval $cfPath(environment)/he3/sct_he3.tcl fileeval $cfPath(environment)/magneticField/oxford_labview.tcl fileeval $cfPath(environment)/magneticField/sct_oxford12tlv.tcl -fileeval $cfPath(environment)/he3/sct_he3.tcl +fileeval $cfPath(beamline)/sct_he3_polanal.tcl fileeval config/load_setup.tcl fileeval log.tcl publish logbook spy @@ -60,18 +64,36 @@ source gumxml.tcl ::utility::mkVar ::anticollider::protect_detector text manager protect_detector false detector true false ::anticollider::protect_detector "true" +if { [ dict exists $::config_dict sample_stage implementation ] } { + set sample_stage [ dict get $::config_dict sample_stage implementation ] +} else { + set sample_stage "normal_sample_stage" +} +switch $sample_stage { + "eulerian_cradle" { + # s1-> eom, sgu -> ephi, sgl -> echi + set OMEGA s1 + set PHI ephi + set CHI echi + } + "normal_sample_stage" - default { + set OMEGA s1 + set PHI sgu + set CHI sgl + } +} # init for the tasUB #make mcv mch acv ach into mvfocus mhfocus avfocus ahfocus when it works puts "doing tasub" -MakeTasUB tasub m1 m2 mvfocus mhfocus s1 s2 sgu sgl a1 a2 avfocus ahfocus +MakeTasUB tasub m1 m2 mvfocus mhfocus $OMEGA s2 $PHI $CHI a1 a2 avfocus ahfocus tasub mono dd 3.35416 tasub ana dd 3.35416 -# NOTE Autofocussing parameters persist in status.tcl -# You must set them in extraconfig.tcl to override this behaviour +# NOTE Autofocussing parameters (vbn, hbn) persist in status.tcl +# To override this behaviour you can set them in extraconfig.tcl tasub mono vb1 102.2 tasub mono vb2 1.78 -tasub mono hb1 184.42 -tasub mono hb2 -60.1 +tasub mono hb1 18.28 +tasub mono hb2 60.1 tasub mono hb3 0.951 tasub ana vb1 115 tasub ana vb2 2.13 @@ -90,6 +112,16 @@ server_init ########################################### # WARNING: Do not add any code below server_init, if you do SICS may fail to initialise properly. +puts "Making hkl command" +MakeMono mono PG m1 m2 +mono dd 3.35416 +MakeWaveLength lambda mono +MakeEnergy energy mono +#MakeSingleX singlex +#MakeHKL s2 $OMEGA $PHI $CHI +#MakeHKLMot hkl +#MakeUBcalc ubcalc hkl + # Provide tasmot notifications to GumTree when real motors move proc m2tasupdate {} { tasub update @@ -125,7 +157,7 @@ proc a2tasupdate {} { publish a2tasupdate user scriptcallback connect m2 MOTEND m2tasupdate -scriptcallback connect s1 MOTEND s1s2tasupdate +scriptcallback connect $OMEGA MOTEND s1s2tasupdate scriptcallback connect s2 MOTEND s1s2tasupdate scriptcallback connect a2 MOTEND a2tasupdate