From b55af7b20bee83a1fab9ff374043bdac27c166c7 Mon Sep 17 00:00:00 2001 From: sans Date: Tue, 2 May 2023 16:31:28 +0200 Subject: [PATCH] add ma7two, oventwo and ovenstick (sans) --- cfg/main/ma7two_cfg.py | 105 ++++++++++ cfg/sea/ma7two.config.json | 387 +++++++++++++++++++++++++++++++++++++ cfg/sea/oventwo.stick.json | 59 ++++++ cfg/stick/ovenstick_cfg.py | 20 ++ cfg/stick/oventwo_cfg.py | 18 ++ 5 files changed, 589 insertions(+) create mode 100644 cfg/main/ma7two_cfg.py create mode 100644 cfg/sea/ma7two.config.json create mode 100644 cfg/sea/oventwo.stick.json create mode 100644 cfg/stick/ovenstick_cfg.py create mode 100644 cfg/stick/oventwo_cfg.py diff --git a/cfg/main/ma7two_cfg.py b/cfg/main/ma7two_cfg.py new file mode 100644 index 0000000..82e710d --- /dev/null +++ b/cfg/main/ma7two_cfg.py @@ -0,0 +1,105 @@ +Node('cfg/main/ma7two.cfg', + '6.8 Tesla horizontal cryomagnet with two heater loops', + interface='5000', + name='ma7two', +) + +Mod('sea_main', + 'secop_psi.sea.SeaClient', + 'main sea connection for ma7two.config', + config='ma7two.config', + service='main', +) + +Mod('tt', + 'secop_psi.sea.SeaDrivable', + io='sea_main', + sea_object='tt', +) + +Mod('cc', + 'secop_psi.sea.SeaReadable', + io='sea_main', + sea_object='cc', +) + +Mod('nv', + 'secop_psi.sea.SeaWritable', + io='sea_main', + sea_object='nv', +) + +Mod('hefill', + 'secop_psi.sea.SeaWritable', + io='sea_main', + sea_object='hefill', +) + +Mod('hepump', + 'secop_psi.sea.SeaWritable', + io='sea_main', + sea_object='hepump', +) + +Mod('hemot', + 'secop_psi.sea.SeaDrivable', + io='sea_main', + sea_object='hemot', +) + +Mod('nvflow', + 'secop_psi.sea.SeaReadable', + io='sea_main', + sea_object='nvflow', +) + +Mod('ln2fill', + 'secop_psi.sea.SeaWritable', + io='sea_main', + sea_object='ln2fill', +) + +Mod('mf', + 'secop_psi.sea.SeaReadable', + io='sea_main', + sea_object='mf', +) + +Mod('lev', + 'secop_psi.sea.SeaReadable', + io='sea_main', + sea_object='lev', +) + +Mod('tcoil1', + 'secop_psi.sea.SeaReadable', + io='sea_main', + sea_object='tcoil', + rel_paths=['ta'], +) + +Mod('tcoil2', + 'secop_psi.sea.SeaReadable', + io='sea_main', + sea_object='tcoil', + rel_paths=['tb'], +) + +Mod('table', + 'secop_psi.sea.SeaReadable', + io='sea_main', + sea_object='table', +) + +Mod('om_io', + 'secop_psi.phytron.PhytronIO', + 'dom motor IO', + uri='ma7-ts.psi.ch:3007', +) + +Mod('om', + 'secop_psi.phytron.Motor', + 'stick rotation', + io='om_io', + encoder_mode='CHECK', +) diff --git a/cfg/sea/ma7two.config.json b/cfg/sea/ma7two.config.json new file mode 100644 index 0000000..f2bd933 --- /dev/null +++ b/cfg/sea/ma7two.config.json @@ -0,0 +1,387 @@ +{"tt": {"base": "/tt", "params": [ +{"path": "", "type": "float", "readonly": false, "cmd": "run tt", "description": "tt", "kids": 15}, +{"path": "send", "type": "text", "readonly": false, "cmd": "tt send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "is_running", "type": "int", "readonly": false, "cmd": "tt is_running", "visibility": 3}, +{"path": "mainloop", "type": "text", "readonly": false, "cmd": "tt mainloop", "visibility": 3}, +{"path": "target", "type": "float"}, +{"path": "running", "type": "int"}, +{"path": "tolerance", "type": "float", "readonly": false, "cmd": "tt tolerance"}, +{"path": "maxwait", "type": "float", "readonly": false, "cmd": "tt maxwait"}, +{"path": "settle", "type": "float", "readonly": false, "cmd": "tt settle"}, +{"path": "log", "type": "text", "readonly": false, "cmd": "tt log", "visibility": 3, "kids": 4}, +{"path": "log/mean", "type": "float", "visibility": 3}, +{"path": "log/m2", "type": "float", "visibility": 3}, +{"path": "log/stddev", "type": "float", "visibility": 3}, +{"path": "log/n", "type": "float", "visibility": 3}, +{"path": "dblctrl", "type": "bool", "readonly": false, "cmd": "tt dblctrl", "visibility": 3, "kids": 9}, +{"path": "dblctrl/tshift", "type": "float", "readonly": false, "cmd": "tt dblctrl/tshift", "visibility": 3}, +{"path": "dblctrl/mode", "type": "enum", "enum": {"disabled": -1, "inactive": 0, "stable": 1, "up": 2, "down": 3}, "readonly": false, "cmd": "tt dblctrl/mode", "visibility": 3}, +{"path": "dblctrl/shift_up", "type": "float", "visibility": 3}, +{"path": "dblctrl/shift_lo", "type": "float", "visibility": 3}, +{"path": "dblctrl/t_min", "type": "float", "visibility": 3}, +{"path": "dblctrl/t_max", "type": "float", "visibility": 3}, +{"path": "dblctrl/int2", "type": "float", "readonly": false, "cmd": "tt dblctrl/int2", "visibility": 3}, +{"path": "dblctrl/prop_up", "type": "float", "readonly": false, "cmd": "tt dblctrl/prop_up", "visibility": 3}, +{"path": "dblctrl/prop_lo", "type": "float", "readonly": false, "cmd": "tt dblctrl/prop_lo", "visibility": 3}, +{"path": "tm", "type": "float", "kids": 4}, +{"path": "tm/curve", "type": "text", "readonly": false, "cmd": "tt tm/curve", "kids": 1}, +{"path": "tm/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tt tm/curve/points", "visibility": 3}, +{"path": "tm/alarm", "type": "float", "readonly": false, "cmd": "tt tm/alarm"}, +{"path": "tm/stddev", "type": "float"}, +{"path": "tm/raw", "type": "float"}, +{"path": "set", "type": "float", "readonly": false, "cmd": "tt set", "kids": 18}, +{"path": "set/mode", "type": "enum", "enum": {"disabled": -1, "off": 0, "controlling": 1, "manual": 2}, "readonly": false, "cmd": "tt set/mode"}, +{"path": "set/reg", "type": "float"}, +{"path": "set/ramp", "type": "float", "readonly": false, "cmd": "tt set/ramp", "description": "maximum ramp in K/min (0: ramp off)"}, +{"path": "set/wramp", "type": "float", "readonly": false, "cmd": "tt set/wramp"}, +{"path": "set/smooth", "type": "float", "readonly": false, "cmd": "tt set/smooth", "description": "smooth time (minutes)"}, +{"path": "set/channel", "type": "text", "readonly": false, "cmd": "tt set/channel"}, +{"path": "set/limit", "type": "float", "readonly": false, "cmd": "tt set/limit"}, +{"path": "set/resist", "type": "float", "readonly": false, "cmd": "tt set/resist"}, +{"path": "set/maxheater", "type": "text", "readonly": false, "cmd": "tt set/maxheater", "description": "maximum heater limit, units should be given without space: W, mW, A, mA"}, +{"path": "set/linearpower", "type": "float", "readonly": false, "cmd": "tt set/linearpower", "description": "when not 0, it is the maximum effective power, and the power is linear to the heater output"}, +{"path": "set/maxpowerlim", "type": "float", "description": "the maximum power limit (before any booster or converter)"}, +{"path": "set/maxpower", "type": "float", "readonly": false, "cmd": "tt set/maxpower", "description": "maximum power [W]"}, +{"path": "set/maxcurrent", "type": "float", "description": "the maximum current before any booster or converter"}, +{"path": "set/manualpower", "type": "float", "readonly": false, "cmd": "tt set/manualpower"}, +{"path": "set/power", "type": "float"}, +{"path": "set/prop", "type": "float", "readonly": false, "cmd": "tt set/prop", "description": "bigger means more gain"}, +{"path": "set/integ", "type": "float", "readonly": false, "cmd": "tt set/integ", "description": "bigger means faster"}, +{"path": "set/deriv", "type": "float", "readonly": false, "cmd": "tt set/deriv"}, +{"path": "display", "type": "text", "readonly": false, "cmd": "tt display"}, +{"path": "remote", "type": "bool"}]}, + +"cc": {"base": "/cc", "params": [ +{"path": "", "type": "bool", "kids": 87}, +{"path": "send", "type": "text", "readonly": false, "cmd": "cc send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "autodevice", "type": "bool", "readonly": false, "cmd": "cc autodevice"}, +{"path": "f", "type": "float"}, +{"path": "fav", "type": "bool", "readonly": false, "cmd": "cc fav"}, +{"path": "fs", "type": "enum", "enum": {"ok": 0, "no_sens": 1}, "readonly": false, "cmd": "cc fs"}, +{"path": "fm", "type": "enum", "enum": {"idle": 0, "opening": 1, "closing": 2, "opened": 3, "closed": 4, "no_motor": 5}}, +{"path": "fa", "type": "enum", "enum": {"fixed": 0, "controlled": 1, "automatic": 2}, "readonly": false, "cmd": "cc fa"}, +{"path": "mav", "type": "bool", "readonly": false, "cmd": "cc mav"}, +{"path": "mp", "type": "float", "readonly": false, "cmd": "cc mp"}, +{"path": "mc", "type": "float", "readonly": false, "cmd": "cc mc"}, +{"path": "mfc", "type": "float", "readonly": false, "cmd": "cc mfc"}, +{"path": "moc", "type": "float", "readonly": false, "cmd": "cc moc"}, +{"path": "mtc", "type": "float", "readonly": false, "cmd": "cc mtc"}, +{"path": "mtl", "type": "float"}, +{"path": "mft", "type": "float", "readonly": false, "cmd": "cc mft"}, +{"path": "mt", "type": "float"}, +{"path": "mo", "type": "float"}, +{"path": "mcr", "type": "float"}, +{"path": "mot", "type": "float"}, +{"path": "mw", "type": "float", "readonly": false, "cmd": "cc mw"}, +{"path": "h", "type": "float"}, +{"path": "hr", "type": "float"}, +{"path": "hav", "type": "bool", "readonly": false, "cmd": "cc hav"}, +{"path": "hc", "type": "float"}, +{"path": "hu", "type": "float"}, +{"path": "hh", "type": "float", "readonly": false, "cmd": "cc hh"}, +{"path": "hl", "type": "float", "readonly": false, "cmd": "cc hl"}, +{"path": "htf", "type": "float", "readonly": false, "cmd": "cc htf", "description": "meas. period in fast mode"}, +{"path": "hts", "type": "float", "readonly": false, "cmd": "cc hts", "description": "meas. period in slow mode"}, +{"path": "hd", "type": "float", "readonly": false, "cmd": "cc hd"}, +{"path": "hwr", "type": "float", "readonly": false, "cmd": "cc hwr"}, +{"path": "hem", "type": "float", "readonly": false, "cmd": "cc hem", "description": "sensor length in mm from top to empty pos."}, +{"path": "hfu", "type": "float", "readonly": false, "cmd": "cc hfu", "description": "sensor length in mm from top to full pos."}, +{"path": "hcd", "type": "enum", "enum": {"stop": 0, "fill": 1, "off": 2, "auto": 3}, "readonly": false, "cmd": "cc hcd"}, +{"path": "hv", "type": "enum", "enum": {"fill_valve_off": 0, "filling": 1, "no_fill_valve": 2, "timeout": 3, "timeout1": 4}}, +{"path": "hsf", "type": "enum", "enum": {"sens_ok": 0, "sens_warm": 1, "no_sens": 2, "timeout": 3, "not_yet_read": 4, "disabled": 5}}, +{"path": "ha", "type": "bool", "readonly": false, "cmd": "cc ha"}, +{"path": "hm", "type": "bool"}, +{"path": "hf", "type": "enum", "enum": {"slow": 0, "fast": 1}, "readonly": false, "cmd": "cc hf"}, +{"path": "hbe", "type": "bool", "readonly": false, "cmd": "cc hbe"}, +{"path": "hmf", "type": "float"}, +{"path": "hms", "type": "float"}, +{"path": "hit", "type": "float", "readonly": false, "cmd": "cc hit"}, +{"path": "hft", "type": "int", "readonly": false, "cmd": "cc hft"}, +{"path": "hea", "type": "float", "readonly": false, "cmd": "cc hea"}, +{"path": "hch", "type": "int", "readonly": false, "cmd": "cc hch"}, +{"path": "h0", "type": "float"}, +{"path": "hs0", "type": "enum", "enum": {"sens_ok": 0, "sens_warm": 1, "no_sens": 2, "timeout": 3, "not_yet_read": 4, "disabled": 5}}, +{"path": "h1", "type": "float"}, +{"path": "hs1", "type": "enum", "enum": {"sens_ok": 0, "sens_warm": 1, "no_sens": 2, "timeout": 3, "not_yet_read": 4, "disabled": 5}}, +{"path": "h2", "type": "float"}, +{"path": "hs2", "type": "enum", "enum": {"sens_ok": 0, "sens_warm": 1, "no_sens": 2, "timeout": 3, "not_yet_read": 4, "disabled": 5}}, +{"path": "h3", "type": "float"}, +{"path": "hs3", "type": "enum", "enum": {"sens_ok": 0, "sens_warm": 1, "no_sens": 2, "timeout": 3, "not_yet_read": 4, "disabled": 5}}, +{"path": "h4", "type": "float"}, +{"path": "hs4", "type": "enum", "enum": {"sens_ok": 0, "sens_warm": 1, "no_sens": 2, "timeout": 3, "not_yet_read": 4, "disabled": 5}}, +{"path": "h5", "type": "float"}, +{"path": "hs5", "type": "enum", "enum": {"sens_ok": 0, "sens_warm": 1, "no_sens": 2, "timeout": 3, "not_yet_read": 4, "disabled": 5}}, +{"path": "nav", "type": "bool", "readonly": false, "cmd": "cc nav"}, +{"path": "nu", "type": "float"}, +{"path": "nl", "type": "float"}, +{"path": "nth", "type": "float", "readonly": false, "cmd": "cc nth"}, +{"path": "ntc", "type": "float", "readonly": false, "cmd": "cc ntc"}, +{"path": "ntm", "type": "float", "readonly": false, "cmd": "cc ntm"}, +{"path": "ns", "type": "enum", "enum": {"sens_ok": 0, "no_sens": 1, "short_circuit": 2, "upside_down": 3, "sens_warm": 4, "empty": 5}}, +{"path": "na", "type": "bool", "readonly": false, "cmd": "cc na"}, +{"path": "nv", "type": "enum", "enum": {"fill_valve_off": 0, "filling": 1, "no_fill_valve": 2, "timeout": 3, "timeout1": 4}}, +{"path": "nc", "type": "enum", "enum": {"stop": 0, "fill": 1, "off": 2, "auto": 3}, "readonly": false, "cmd": "cc nc"}, +{"path": "cda", "type": "float"}, +{"path": "cdb", "type": "float"}, +{"path": "cba", "type": "float"}, +{"path": "cbb", "type": "float"}, +{"path": "cvs", "type": "int"}, +{"path": "csp", "type": "int"}, +{"path": "cdv", "type": "text", "readonly": false, "cmd": "cc cdv"}, +{"path": "cds", "type": "enum", "enum": {"local": 0, "remote": 1, "loading": 2, "by_code": 3, "by_touch": 4}, "readonly": false, "cmd": "cc cds"}, +{"path": "tc", "type": "float"}, +{"path": "tn", "type": "float"}, +{"path": "th", "type": "float"}, +{"path": "tf", "type": "float"}, +{"path": "tm", "type": "float"}, +{"path": "tv", "type": "float"}, +{"path": "tq", "type": "float"}, +{"path": "hfb", "type": "float"}, +{"path": "nfb", "type": "float"}, +{"path": "bdl", "type": "float", "readonly": false, "cmd": "cc bdl"}]}, + +"nv": {"base": "/nv", "params": [ +{"path": "", "type": "enum", "enum": {"fixed": 0, "controlled": 1, "automatic": 2, "close": 3, "open": 4}, "readonly": false, "cmd": "nv", "kids": 11}, +{"path": "send", "type": "text", "readonly": false, "cmd": "nv send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "motstat", "type": "enum", "enum": {"idle": 0, "opening": 1, "closing": 2, "opened": 3, "closed": 4, "no_motor": 5}}, +{"path": "flow", "type": "float"}, +{"path": "set", "type": "float", "readonly": false, "cmd": "nv set"}, +{"path": "flowmax", "type": "float", "readonly": false, "cmd": "nv flowmax"}, +{"path": "flowp", "type": "float"}, +{"path": "span", "type": "float"}, +{"path": "ctrl", "type": "none", "kids": 13}, +{"path": "ctrl/regtext", "type": "text"}, +{"path": "ctrl/prop_o", "type": "float", "readonly": false, "cmd": "nv ctrl/prop_o", "description": "prop [sec/mbar] when opening. above 4 mbar a 10 times lower value is used"}, +{"path": "ctrl/prop_c", "type": "float", "readonly": false, "cmd": "nv ctrl/prop_c", "description": "prop [sec/mbar] when closing. above 4 mbar a 10 times lower value is used"}, +{"path": "ctrl/deriv_o", "type": "float", "readonly": false, "cmd": "nv ctrl/deriv_o", "description": "convergence target time [sec] when opening"}, +{"path": "ctrl/deriv_c", "type": "float", "readonly": false, "cmd": "nv ctrl/deriv_c", "description": "convergence target time [sec] when closing"}, +{"path": "ctrl/minpulse_o", "type": "float", "readonly": false, "cmd": "nv ctrl/minpulse_o", "description": "minimum close pulse [sec]"}, +{"path": "ctrl/minpulse_c", "type": "float", "readonly": false, "cmd": "nv ctrl/minpulse_c", "description": "standard close pulse [sec]"}, +{"path": "ctrl/hystpulse_o", "type": "float", "readonly": false, "cmd": "nv ctrl/hystpulse_o", "description": "motor pulse to overcome hysteresis when opening"}, +{"path": "ctrl/hystpulse_c", "type": "float", "readonly": false, "cmd": "nv ctrl/hystpulse_c", "description": "motor pulse to overcome hysteresis when closing"}, +{"path": "ctrl/tol", "type": "float", "readonly": false, "cmd": "nv ctrl/tol", "description": "valid below 3 mbar"}, +{"path": "ctrl/tolhigh", "type": "float", "readonly": false, "cmd": "nv ctrl/tolhigh", "description": "valid above 4 mbar"}, +{"path": "ctrl/openpulse", "type": "float", "readonly": false, "cmd": "nv ctrl/openpulse", "description": "time to open from completely closed to a significant opening"}, +{"path": "ctrl/adjust_minpulse", "type": "bool", "readonly": false, "cmd": "nv ctrl/adjust_minpulse", "description": "adjust minpulse automatically"}, +{"path": "autoflow", "type": "none", "kids": 24}, +{"path": "autoflow/suspended", "type": "bool", "readonly": false, "cmd": "nv autoflow/suspended"}, +{"path": "autoflow/prop", "type": "float", "readonly": false, "cmd": "nv autoflow/prop"}, +{"path": "autoflow/flowstd", "type": "float", "readonly": false, "cmd": "nv autoflow/flowstd"}, +{"path": "autoflow/flowlim", "type": "float", "readonly": false, "cmd": "nv autoflow/flowlim"}, +{"path": "autoflow/smooth", "type": "float", "readonly": false, "cmd": "nv autoflow/smooth"}, +{"path": "autoflow/difSize", "type": "float", "readonly": false, "cmd": "nv autoflow/difSize"}, +{"path": "autoflow/difRange", "type": "float", "readonly": false, "cmd": "nv autoflow/difRange"}, +{"path": "autoflow/flowSize", "type": "float", "readonly": false, "cmd": "nv autoflow/flowSize"}, +{"path": "autoflow/convTime", "type": "float", "readonly": false, "cmd": "nv autoflow/convTime"}, +{"path": "autoflow/Tmin", "type": "float", "readonly": false, "cmd": "nv autoflow/Tmin"}, +{"path": "autoflow/script", "type": "text", "readonly": false, "cmd": "nv autoflow/script"}, +{"path": "autoflow/getTemp", "type": "text", "readonly": false, "cmd": "nv autoflow/getTemp"}, +{"path": "autoflow/getTset", "type": "text", "readonly": false, "cmd": "nv autoflow/getTset"}, +{"path": "autoflow/getFlow", "type": "text", "readonly": false, "cmd": "nv autoflow/getFlow"}, +{"path": "autoflow/difBuf", "type": "text"}, +{"path": "autoflow/flowBuf", "type": "text"}, +{"path": "autoflow/flowset", "type": "float"}, +{"path": "autoflow/flowmin", "type": "float"}, +{"path": "autoflow/flowmax", "type": "float"}, +{"path": "autoflow/difmin", "type": "float"}, +{"path": "autoflow/difmax", "type": "float"}, +{"path": "autoflow/setmin", "type": "float"}, +{"path": "autoflow/setmax", "type": "float"}, +{"path": "autoflow/flowtarget", "type": "float"}, +{"path": "calib", "type": "none", "kids": 2}, +{"path": "calib/ln_per_min_per_mbar", "type": "float", "readonly": false, "cmd": "nv calib/ln_per_min_per_mbar"}, +{"path": "calib/mbar_offset", "type": "float", "readonly": false, "cmd": "nv calib/mbar_offset"}]}, + +"hefill": {"base": "/hefill", "params": [ +{"path": "", "type": "enum", "enum": {"watching": 0, "fill": 1, "inactive": 2}, "readonly": false, "cmd": "hefill", "kids": 16}, +{"path": "send", "type": "text", "readonly": false, "cmd": "hefill send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "state", "type": "text"}, +{"path": "readlevel", "type": "text", "readonly": false, "cmd": "hefill readlevel", "visibility": 3}, +{"path": "lowlevel", "type": "float", "readonly": false, "cmd": "hefill lowlevel"}, +{"path": "highlevel", "type": "float", "readonly": false, "cmd": "hefill highlevel"}, +{"path": "smooth", "type": "float"}, +{"path": "minfillminutes", "type": "float", "readonly": false, "cmd": "hefill minfillminutes"}, +{"path": "maxfillminutes", "type": "float", "readonly": false, "cmd": "hefill maxfillminutes"}, +{"path": "minholdhours", "type": "float", "readonly": false, "cmd": "hefill minholdhours"}, +{"path": "maxholdhours", "type": "float", "readonly": false, "cmd": "hefill maxholdhours"}, +{"path": "tolerance", "type": "float", "readonly": false, "cmd": "hefill tolerance"}, +{"path": "badreadingminutes", "type": "float", "readonly": false, "cmd": "hefill badreadingminutes"}, +{"path": "tubecoolingminutes", "type": "float", "readonly": false, "cmd": "hefill tubecoolingminutes"}, +{"path": "vessellimit", "type": "float", "readonly": false, "cmd": "hefill vessellimit"}, +{"path": "vext", "type": "float"}]}, + +"hepump": {"base": "/hepump", "params": [ +{"path": "", "type": "enum", "enum": {"xds35_auto": 0, "xds35_manual": 1, "sv65": 2, "other": 3, "no": -1}, "readonly": false, "cmd": "hepump", "description": "xds35: scroll pump, sv65: leybold", "kids": 10}, +{"path": "send", "type": "text", "readonly": false, "cmd": "hepump send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "running", "type": "bool", "readonly": false, "cmd": "hepump running", "visibility": 3}, +{"path": "eco", "type": "bool", "readonly": false, "cmd": "hepump eco", "visibility": 3}, +{"path": "auto", "type": "bool", "readonly": false, "cmd": "hepump auto", "visibility": 3}, +{"path": "valve", "type": "enum", "enum": {"closed": 0, "closing": 1, "opening": 2, "opened": 3, "undefined": 4}, "readonly": false, "cmd": "hepump valve", "visibility": 3}, +{"path": "eco_t_lim", "type": "float", "readonly": false, "cmd": "hepump eco_t_lim", "description": "switch off eco mode when T_set < eco_t_lim and T < eco_t_lim * 2", "visibility": 3}, +{"path": "calib", "type": "float", "readonly": false, "cmd": "hepump calib", "visibility": 3}, +{"path": "health", "type": "float"}]}, + +"hemot": {"base": "/hepump/hemot", "params": [ +{"path": "", "type": "float", "readonly": false, "cmd": "run hemot", "visibility": 3, "kids": 30}, +{"path": "send", "type": "text", "readonly": false, "cmd": "hemot send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "is_running", "type": "int", "readonly": false, "cmd": "hemot is_running", "visibility": 3}, +{"path": "pos", "type": "float"}, +{"path": "encoder", "type": "float"}, +{"path": "zero", "type": "float", "readonly": false, "cmd": "hemot zero"}, +{"path": "lowerlimit", "type": "float", "readonly": false, "cmd": "hemot lowerlimit"}, +{"path": "upperlimit", "type": "float", "readonly": false, "cmd": "hemot upperlimit"}, +{"path": "disablelimits", "type": "bool", "readonly": false, "cmd": "hemot disablelimits"}, +{"path": "verbose", "type": "bool", "readonly": false, "cmd": "hemot verbose"}, +{"path": "target", "type": "float"}, +{"path": "runstate", "type": "enum", "enum": {"idle": 0, "running": 1, "finished": 2, "error": 3}}, +{"path": "precision", "type": "float", "readonly": false, "cmd": "hemot precision"}, +{"path": "maxencdif", "type": "float", "readonly": false, "cmd": "hemot maxencdif"}, +{"path": "id", "type": "float", "readonly": false, "cmd": "hemot id"}, +{"path": "pump_number", "type": "float", "readonly": false, "cmd": "hemot pump_number"}, +{"path": "init", "type": "float", "readonly": false, "cmd": "hemot init"}, +{"path": "maxspeed", "type": "float", "readonly": false, "cmd": "hemot maxspeed"}, +{"path": "acceleration", "type": "float", "readonly": false, "cmd": "hemot acceleration"}, +{"path": "maxcurrent", "type": "float", "readonly": false, "cmd": "hemot maxcurrent"}, +{"path": "standbycurrent", "type": "float", "readonly": false, "cmd": "hemot standbycurrent"}, +{"path": "freewheeling", "type": "bool", "readonly": false, "cmd": "hemot freewheeling"}, +{"path": "output0", "type": "bool", "readonly": false, "cmd": "hemot output0"}, +{"path": "output1", "type": "bool", "readonly": false, "cmd": "hemot output1"}, +{"path": "input3", "type": "bool"}, +{"path": "pullup", "type": "float", "readonly": false, "cmd": "hemot pullup"}, +{"path": "nopumpfeedback", "type": "bool", "readonly": false, "cmd": "hemot nopumpfeedback"}, +{"path": "eeprom", "type": "enum", "enum": {"ok": 0, "dirty": 1, "save": 2, "load": 3}, "readonly": false, "cmd": "hemot eeprom"}, +{"path": "customadr", "type": "text", "readonly": false, "cmd": "hemot customadr"}, +{"path": "custompar", "type": "float", "readonly": false, "cmd": "hemot custompar"}]}, + +"nvflow": {"base": "/nvflow", "params": [ +{"path": "", "type": "float", "kids": 7}, +{"path": "send", "type": "text", "readonly": false, "cmd": "nvflow send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "stddev", "type": "float"}, +{"path": "nsamples", "type": "int", "readonly": false, "cmd": "nvflow nsamples"}, +{"path": "offset", "type": "float", "readonly": false, "cmd": "nvflow offset"}, +{"path": "scale", "type": "float", "readonly": false, "cmd": "nvflow scale"}, +{"path": "save", "type": "bool", "readonly": false, "cmd": "nvflow save", "description": "unchecked: current calib is not saved. set checked: save calib"}]}, + +"ln2fill": {"base": "/ln2fill", "params": [ +{"path": "", "type": "enum", "enum": {"watching": 0, "fill": 1, "inactive": 2}, "readonly": false, "cmd": "ln2fill", "kids": 14}, +{"path": "send", "type": "text", "readonly": false, "cmd": "ln2fill send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "state", "type": "text"}, +{"path": "readlevel", "type": "text", "readonly": false, "cmd": "ln2fill readlevel", "visibility": 3}, +{"path": "lowlevel", "type": "float", "readonly": false, "cmd": "ln2fill lowlevel"}, +{"path": "highlevel", "type": "float", "readonly": false, "cmd": "ln2fill highlevel"}, +{"path": "smooth", "type": "float"}, +{"path": "minfillminutes", "type": "float", "readonly": false, "cmd": "ln2fill minfillminutes"}, +{"path": "maxfillminutes", "type": "float", "readonly": false, "cmd": "ln2fill maxfillminutes"}, +{"path": "minholdhours", "type": "float", "readonly": false, "cmd": "ln2fill minholdhours"}, +{"path": "maxholdhours", "type": "float", "readonly": false, "cmd": "ln2fill maxholdhours"}, +{"path": "tolerance", "type": "float", "readonly": false, "cmd": "ln2fill tolerance"}, +{"path": "badreadingminutes", "type": "float", "readonly": false, "cmd": "ln2fill badreadingminutes"}, +{"path": "tubecoolingminutes", "type": "float", "readonly": false, "cmd": "ln2fill tubecoolingminutes"}]}, + +"mf": {"base": "/mf", "params": [ +{"path": "", "type": "float", "kids": 26}, +{"path": "persmode", "type": "int", "readonly": false, "cmd": "mf persmode"}, +{"path": "perswitch", "type": "int"}, +{"path": "nowait", "type": "int", "readonly": false, "cmd": "mf nowait"}, +{"path": "maxlimit", "type": "float", "visibility": 3}, +{"path": "limit", "type": "float", "readonly": false, "cmd": "mf limit"}, +{"path": "ramp", "type": "float", "readonly": false, "cmd": "mf ramp"}, +{"path": "perscurrent", "type": "float", "readonly": false, "cmd": "mf perscurrent"}, +{"path": "perslimit", "type": "float", "readonly": false, "cmd": "mf perslimit"}, +{"path": "perswait", "type": "int", "readonly": false, "cmd": "mf perswait"}, +{"path": "persdelay", "type": "int", "readonly": false, "cmd": "mf persdelay"}, +{"path": "current", "type": "float"}, +{"path": "measured", "type": "float"}, +{"path": "voltage", "type": "float"}, +{"path": "lastfield", "type": "float", "visibility": 3}, +{"path": "ampRamp", "type": "float", "visibility": 3}, +{"path": "inductance", "type": "float", "visibility": 3}, +{"path": "trainedTo", "type": "float", "readonly": false, "cmd": "mf trainedTo"}, +{"path": "trainMode", "type": "int"}, +{"path": "external", "type": "int", "readonly": false, "cmd": "mf external"}, +{"path": "startScript", "type": "text", "readonly": false, "cmd": "mf startScript", "visibility": 3}, +{"path": "is_running", "type": "int", "visibility": 3}, +{"path": "verbose", "type": "int", "readonly": false, "cmd": "mf verbose", "visibility": 3}, +{"path": "driver", "type": "text", "visibility": 3}, +{"path": "creationCmd", "type": "text", "visibility": 3}, +{"path": "targetValue", "type": "float"}, +{"path": "status", "type": "text", "readonly": false, "cmd": "mf status"}]}, + +"lev": {"base": "/lev", "params": [ +{"path": "", "type": "float", "kids": 4}, +{"path": "send", "type": "text", "readonly": false, "cmd": "lev send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "mode", "type": "enum", "enum": {"slow": 0, "fast (switches to slow automatically after filling)": 1}, "readonly": false, "cmd": "lev mode"}, +{"path": "n2", "type": "float"}]}, + +"tcoil": {"base": "/tcoil", "params": [ +{"path": "", "type": "float", "kids": 11}, +{"path": "send", "type": "text", "readonly": false, "cmd": "tcoil send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "excitation", "type": "float", "readonly": false, "cmd": "tcoil excitation", "visibility": 3}, +{"path": "ta", "type": "float", "visibility": 3, "kids": 3}, +{"path": "ta/enable", "type": "bool", "readonly": false, "cmd": "tcoil ta/enable"}, +{"path": "ta/r", "type": "float"}, +{"path": "ta/curve", "type": "text", "readonly": false, "cmd": "tcoil ta/curve", "kids": 3}, +{"path": "ta/curve/adjust", "type": "text", "readonly": false, "cmd": "tcoil ta/curve/adjust"}, +{"path": "ta/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tcoil ta/curve/points"}, +{"path": "ta/curve/cpoints", "type": "floatvarar", "readonly": false, "cmd": "tcoil ta/curve/cpoints"}, +{"path": "tb", "type": "float", "visibility": 3, "kids": 3}, +{"path": "tb/enable", "type": "bool", "readonly": false, "cmd": "tcoil tb/enable"}, +{"path": "tb/r", "type": "float"}, +{"path": "tb/curve", "type": "text", "readonly": false, "cmd": "tcoil tb/curve", "kids": 3}, +{"path": "tb/curve/adjust", "type": "text", "readonly": false, "cmd": "tcoil tb/curve/adjust"}, +{"path": "tb/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tcoil tb/curve/points"}, +{"path": "tb/curve/cpoints", "type": "floatvarar", "readonly": false, "cmd": "tcoil tb/curve/cpoints"}, +{"path": "td", "type": "float", "visibility": 3, "kids": 3}, +{"path": "td/enable", "type": "bool", "readonly": false, "cmd": "tcoil td/enable"}, +{"path": "td/r", "type": "float"}, +{"path": "td/curve", "type": "text", "readonly": false, "cmd": "tcoil td/curve", "kids": 3}, +{"path": "td/curve/adjust", "type": "text", "readonly": false, "cmd": "tcoil td/curve/adjust"}, +{"path": "td/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tcoil td/curve/points"}, +{"path": "td/curve/cpoints", "type": "floatvarar", "readonly": false, "cmd": "tcoil td/curve/cpoints"}, +{"path": "ref", "type": "float", "visibility": 3, "kids": 3}, +{"path": "ref/enable", "type": "bool", "readonly": false, "cmd": "tcoil ref/enable"}, +{"path": "ref/r", "type": "float"}, +{"path": "ref/curve", "type": "text", "readonly": false, "cmd": "tcoil ref/curve", "kids": 3}, +{"path": "ref/curve/adjust", "type": "text", "readonly": false, "cmd": "tcoil ref/curve/adjust"}, +{"path": "ref/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tcoil ref/curve/points"}, +{"path": "ref/curve/cpoints", "type": "floatvarar", "readonly": false, "cmd": "tcoil ref/curve/cpoints"}, +{"path": "tc", "type": "float", "visibility": 3, "kids": 3}, +{"path": "tc/enable", "type": "bool", "readonly": false, "cmd": "tcoil tc/enable"}, +{"path": "tc/r", "type": "float"}, +{"path": "tc/curve", "type": "text", "readonly": false, "cmd": "tcoil tc/curve", "kids": 3}, +{"path": "tc/curve/adjust", "type": "text", "readonly": false, "cmd": "tcoil tc/curve/adjust"}, +{"path": "tc/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tcoil tc/curve/points"}, +{"path": "tc/curve/cpoints", "type": "floatvarar", "readonly": false, "cmd": "tcoil tc/curve/cpoints"}, +{"path": "ext", "type": "float", "visibility": 3}, +{"path": "com", "type": "float", "visibility": 3}, +{"path": "gnd", "type": "float", "visibility": 3}]}, + +"table": {"base": "/table", "params": [ +{"path": "", "type": "none", "kids": 17}, +{"path": "send", "type": "text", "readonly": false, "cmd": "table send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "fix_tt_set_prop", "type": "bool", "readonly": false, "cmd": "table fix_tt_set_prop"}, +{"path": "val_tt_set_prop", "type": "float"}, +{"path": "tbl_tt_set_prop", "type": "text", "readonly": false, "cmd": "table tbl_tt_set_prop", "description": "enter value pair separated with colon T1:par1 T2:par2 ..."}, +{"path": "fix_tt_set_integ", "type": "bool", "readonly": false, "cmd": "table fix_tt_set_integ"}, +{"path": "val_tt_set_integ", "type": "float"}, +{"path": "tbl_tt_set_integ", "type": "text", "readonly": false, "cmd": "table tbl_tt_set_integ", "description": "enter value pair separated with colon T1:par1 T2:par2 ..."}, +{"path": "fix_tt_dblctrl_int2", "type": "bool", "readonly": false, "cmd": "table fix_tt_dblctrl_int2"}, +{"path": "val_tt_dblctrl_int2", "type": "float"}, +{"path": "tbl_tt_dblctrl_int2", "type": "text", "readonly": false, "cmd": "table tbl_tt_dblctrl_int2", "description": "enter value pair separated with colon T1:par1 T2:par2 ..."}, +{"path": "fix_tt_dblctrl_prop_up", "type": "bool", "readonly": false, "cmd": "table fix_tt_dblctrl_prop_up"}, +{"path": "val_tt_dblctrl_prop_up", "type": "float"}, +{"path": "tbl_tt_dblctrl_prop_up", "type": "text", "readonly": false, "cmd": "table tbl_tt_dblctrl_prop_up", "description": "enter value pair separated with colon T1:par1 T2:par2 ..."}, +{"path": "fix_tt_dblctrl_prop_lo", "type": "bool", "readonly": false, "cmd": "table fix_tt_dblctrl_prop_lo"}, +{"path": "val_tt_dblctrl_prop_lo", "type": "float"}, +{"path": "tbl_tt_dblctrl_prop_lo", "type": "text", "readonly": false, "cmd": "table tbl_tt_dblctrl_prop_lo", "description": "enter value pair separated with colon T1:par1 T2:par2 ..."}]}} diff --git a/cfg/sea/oventwo.stick.json b/cfg/sea/oventwo.stick.json new file mode 100644 index 0000000..5a20ca4 --- /dev/null +++ b/cfg/sea/oventwo.stick.json @@ -0,0 +1,59 @@ +{"ts": {"base": "/ts", "params": [ +{"path": "", "type": "float", "readonly": false, "cmd": "run ts", "description": "ts", "kids": 16}, +{"path": "send", "type": "text", "readonly": false, "cmd": "ts send", "visibility": 3}, +{"path": "status", "type": "text", "visibility": 3}, +{"path": "is_running", "type": "int", "readonly": false, "cmd": "ts is_running", "visibility": 3}, +{"path": "mainloop", "type": "text", "readonly": false, "cmd": "ts mainloop", "visibility": 3}, +{"path": "target", "type": "float"}, +{"path": "running", "type": "int"}, +{"path": "tolerance", "type": "float", "readonly": false, "cmd": "ts tolerance"}, +{"path": "maxwait", "type": "float", "readonly": false, "cmd": "ts maxwait"}, +{"path": "settle", "type": "float", "readonly": false, "cmd": "ts settle"}, +{"path": "log", "type": "text", "readonly": false, "cmd": "ts log", "visibility": 3, "kids": 4}, +{"path": "log/mean", "type": "float", "visibility": 3}, +{"path": "log/m2", "type": "float", "visibility": 3}, +{"path": "log/stddev", "type": "float", "visibility": 3}, +{"path": "log/n", "type": "float", "visibility": 3}, +{"path": "dblctrl", "type": "bool", "readonly": false, "cmd": "ts dblctrl", "visibility": 3, "kids": 9}, +{"path": "dblctrl/tshift", "type": "float", "readonly": false, "cmd": "ts dblctrl/tshift", "visibility": 3}, +{"path": "dblctrl/mode", "type": "enum", "enum": {"disabled": -1, "inactive": 0, "stable": 1, "up": 2, "down": 3}, "readonly": false, "cmd": "ts dblctrl/mode", "visibility": 3}, +{"path": "dblctrl/shift_up", "type": "float", "visibility": 3}, +{"path": "dblctrl/shift_lo", "type": "float", "visibility": 3}, +{"path": "dblctrl/t_min", "type": "float", "visibility": 3}, +{"path": "dblctrl/t_max", "type": "float", "visibility": 3}, +{"path": "dblctrl/int2", "type": "float", "readonly": false, "cmd": "ts dblctrl/int2", "visibility": 3}, +{"path": "dblctrl/prop_up", "type": "float", "readonly": false, "cmd": "ts dblctrl/prop_up", "visibility": 3}, +{"path": "dblctrl/prop_lo", "type": "float", "readonly": false, "cmd": "ts dblctrl/prop_lo", "visibility": 3}, +{"path": "ts", "type": "float", "kids": 4}, +{"path": "ts/curve", "type": "text", "readonly": false, "cmd": "ts ts/curve", "kids": 1}, +{"path": "ts/curve/points", "type": "floatvarar", "readonly": false, "cmd": "ts ts/curve/points", "visibility": 3}, +{"path": "ts/alarm", "type": "float", "readonly": false, "cmd": "ts ts/alarm"}, +{"path": "ts/stddev", "type": "float"}, +{"path": "ts/raw", "type": "float"}, +{"path": "ts_2", "type": "float", "kids": 4}, +{"path": "ts_2/curve", "type": "text", "readonly": false, "cmd": "ts ts_2/curve", "kids": 1}, +{"path": "ts_2/curve/points", "type": "floatvarar", "readonly": false, "cmd": "ts ts_2/curve/points", "visibility": 3}, +{"path": "ts_2/alarm", "type": "float", "readonly": false, "cmd": "ts ts_2/alarm"}, +{"path": "ts_2/stddev", "type": "float"}, +{"path": "ts_2/raw", "type": "float"}, +{"path": "set", "type": "float", "readonly": false, "cmd": "ts set", "kids": 18}, +{"path": "set/mode", "type": "enum", "enum": {"disabled": -1, "off": 0, "controlling": 1, "manual": 2}, "readonly": false, "cmd": "ts set/mode"}, +{"path": "set/reg", "type": "float"}, +{"path": "set/ramp", "type": "float", "readonly": false, "cmd": "ts set/ramp", "description": "maximum ramp in K/min (0: ramp off)"}, +{"path": "set/wramp", "type": "float", "readonly": false, "cmd": "ts set/wramp"}, +{"path": "set/smooth", "type": "float", "readonly": false, "cmd": "ts set/smooth", "description": "smooth time (minutes)"}, +{"path": "set/channel", "type": "text", "readonly": false, "cmd": "ts set/channel"}, +{"path": "set/limit", "type": "float", "readonly": false, "cmd": "ts set/limit"}, +{"path": "set/resist", "type": "float", "readonly": false, "cmd": "ts set/resist"}, +{"path": "set/maxheater", "type": "text", "readonly": false, "cmd": "ts set/maxheater", "description": "maximum heater limit, units should be given without space: W, mW, A, mA"}, +{"path": "set/linearpower", "type": "float", "readonly": false, "cmd": "ts set/linearpower", "description": "when not 0, it is the maximum effective power, and the power is linear to the heater output"}, +{"path": "set/maxpowerlim", "type": "float", "description": "the maximum power limit (before any booster or converter)"}, +{"path": "set/maxpower", "type": "float", "readonly": false, "cmd": "ts set/maxpower", "description": "maximum power [W]"}, +{"path": "set/maxcurrent", "type": "float", "description": "the maximum current before any booster or converter"}, +{"path": "set/manualpower", "type": "float", "readonly": false, "cmd": "ts set/manualpower"}, +{"path": "set/power", "type": "float"}, +{"path": "set/prop", "type": "float", "readonly": false, "cmd": "ts set/prop", "description": "bigger means more gain"}, +{"path": "set/integ", "type": "float", "readonly": false, "cmd": "ts set/integ", "description": "bigger means faster"}, +{"path": "set/deriv", "type": "float", "readonly": false, "cmd": "ts set/deriv"}, +{"path": "display", "type": "text", "readonly": false, "cmd": "ts display"}, +{"path": "remote", "type": "bool"}]}} diff --git a/cfg/stick/ovenstick_cfg.py b/cfg/stick/ovenstick_cfg.py new file mode 100644 index 0000000..59988d7 --- /dev/null +++ b/cfg/stick/ovenstick_cfg.py @@ -0,0 +1,20 @@ +Node('cfg/stick/ovenstick.cfg', + 'oven stick for sans', + interface='5000', + name='ovenstick', +) + +Mod('sea_stick', + 'secop_psi.sea.SeaClient', + 'SEA stick connection', + config='oven.stick', + service='stick', +) + +Mod('ts', + 'secop_psi.sea.SeaReadable', + io='sea_stick', + sea_object='tt', + json_file=['ma7.config.json'], + rel_paths=['ts'], +) diff --git a/cfg/stick/oventwo_cfg.py b/cfg/stick/oventwo_cfg.py new file mode 100644 index 0000000..0dda00b --- /dev/null +++ b/cfg/stick/oventwo_cfg.py @@ -0,0 +1,18 @@ +Node('cfg/stick/oventwo.cfg', + 'oven stick for SANS', + interface='5000', + name='oventwo', +) + +Mod('sea_stick', + 'secop_psi.sea.SeaClient', + 'stick sea connection for oventwo.stick', + config='oventwo.stick', + service='stick', +) + +Mod('ts', + 'secop_psi.sea.SeaDrivable', + io='sea_stick', + sea_object='ts', +)