From 7ca6200aefc35efbe0979ca7b23f027d47ca7b77 Mon Sep 17 00:00:00 2001 From: Markus Zolliker Date: Tue, 26 May 2026 08:38:54 +0200 Subject: [PATCH] fixes with fftf, the amor oven --- tcl/drivers/amoroven.tcl | 13 +++++++++---- tcl/drivers/lsc.tcl | 9 +++++---- tcl/fftf.config | 11 +++-------- 3 files changed, 17 insertions(+), 16 deletions(-) diff --git a/tcl/drivers/amoroven.tcl b/tcl/drivers/amoroven.tcl index 87aef79..47e708e 100644 --- a/tcl/drivers/amoroven.tcl +++ b/tcl/drivers/amoroven.tcl @@ -104,18 +104,23 @@ proc amoroven::write_mode {} { if {[sct target]} { tt set/maxheater 0.05A tt set/linearpower 75 - tt set/manualpower 11.3 + # tt set/manualpower 20 tt set/resist 100 + # 44.2 is a little less than sqrt(0.2) * 100 + hsetprop /tt/set @manual_out 44.2 tt set/maxpower 75 - hsetprop /tt @manual_out 15 + table tbl_tt_set_prop 400:0.5 550:2 + table tbl_tt_set_integ 400:10 550:20 sct update 1 } else { tt set/maxheater 2A tt set/linearpower 0 - tt set/manualpower 0 + # tt set/manualpower 0 tt set/resist 10 + hsetprop /tt/set @manual_out 0 tt set/maxpower 40 - hsetprop /tt @manual_out 0 + table tbl_tt_set_prop 400:5 550:5 + table tbl_tt_set_integ 400:20 550:20 sct update 0 } return idle diff --git a/tcl/drivers/lsc.tcl b/tcl/drivers/lsc.tcl index 9f5a3a9..b428396 100644 --- a/tcl/drivers/lsc.tcl +++ b/tcl/drivers/lsc.tcl @@ -2463,8 +2463,9 @@ proc lsc::setloop_new {} { if {$cmd ne ""} { if {$dohtrset} { append cmd $rangecmd - if {$mode <= 0} { - append cmd "MOUT [sct @loop],[silent 0 sct @manual_out];" + set mout [silent "" sct @manual_out] + if {"$mout" ne "" && $mode > 0} { + append cmd "MOUT [sct @loop],$mout;" } } sct send "${cmd}*OPC?" @@ -3338,7 +3339,7 @@ proc lsc::updatepower {} { sct htr $htr set mout [silent 0 sct @manual_out] if {$mout} { - set htr [expr ($htr - [silent 0 sct @manual_out]) / (1 - $mout * 0.01)] + set htr [expr ($htr - $mout) / (1 - $mout * 0.01)] } update_working_ramp [sct parent] set maxpower [hvali [sct parent]/maxpower] @@ -4063,7 +4064,7 @@ proc stdConfig::lsc_loop args { variable lsc_kinkscale scanargs $args var -relpath -channel -maxheater -resist -loop 1 \ - -linearpower 0 -color auto -loopname "" -mout 0 -is 0 + -linearpower 0 -color auto -loopname "" -mout "" -is 0 node $relpath wr default 0 diff --git a/tcl/fftf.config b/tcl/fftf.config index bc64eb5..f1f920b 100644 --- a/tcl/fftf.config +++ b/tcl/fftf.config @@ -5,7 +5,7 @@ defineTemperature tt makenv tt -driver [lsdriver] { lsc_sensor ts A -sensor pt100e -sensorname sample -alarm 700 lsc_sensor tm B -sensor pt1000e -sensorname body -alarm 320 - lsc_loop set -loop 1 -channel A -maxheater 0.05A -resist 100Ohm -linearpower 75 -mout 15 + lsc_loop set -loop 1 -channel A -maxheater 0.05A -resist 100Ohm -linearpower 75 -mout 20 } GraphAdd tt.set.reg K T_reg auto @@ -20,20 +20,15 @@ makeCCU4 fftf makenv p -driver amoroven p tlimit_without_vacuum 350 p tlimit 870 +p highpower 1 GraphAdd p mbar pressure auto GraphAdd p.vacuumpump S pump auto GraphAdd p.gasflow S valve auto -# for PWM setting +# these values are overridden in amoroven.tcl, depending on highpower mode makenv table -driver table /tt/set { "tt set/prop" "400:0.5 550:2" "tt set/integ" "400:10 550:20" } - -# for low power mode -#makenv table -driver table /tt/set { -# "tt set/prop" "400:5 550:5" -# "tt set/integ" "400:20 550:20" -#}