Compare commits
89 Commits
Author | SHA1 | Date | |
---|---|---|---|
b88750ae2b | |||
9c68f582b7 | |||
c89b4a44bb | |||
330aa15400 | |||
3435107948 | |||
7c0101f6bd | |||
6ea97b0012 | |||
3dc159a9a4 | |||
bd14e0a0e5 | |||
4922f0d664 | |||
9b71d3621d | |||
bec3359069 | |||
04692bd1aa | |||
ffafd7344c | |||
b1bf5e866d | |||
e4748ef9c9 | |||
b4bb172ada | |||
4fd9c17bcb | |||
76c6ebe92c | |||
12b0549cc0 | |||
3aa99e2268 | |||
72eaeac698 | |||
d3831b3974 | |||
f861701fc2 | |||
452eb00417 | |||
52472acae9 | |||
fee7c4904b | |||
3141e22894 | |||
fbccd0f9b7 | |||
9071a5bcf7 | |||
1588703f99 | |||
fe041bac0a | |||
07b758c3dd | |||
f9a2152883 | |||
25891f296d | |||
0d1c7ba76f | |||
9afcc49430 | |||
7895470301 | |||
9df43bb940 | |||
ab558b3390 | |||
fad330b71d | |||
3cc8db881e | |||
fa71b8ee25 | |||
dbc6f17e5e | |||
0c23ee46a1 | |||
d6cf1f7629 | |||
41baf5805f | |||
bc5edec06f | |||
e411ded55b | |||
ad9defab0f | |||
fbb0d10c55 | |||
bc33933a1a | |||
2d310bc612 | |||
e0f9b4a858 | |||
16834f8802 | |||
d9650d7fc7 | |||
569c0a3399 | |||
cab2bb85ba | |||
2fb05b37f8 | |||
ad2a79c312 | |||
82b4af4faa | |||
ad07ecdd69 | |||
cf24bbc3c3 | |||
29c66fa19a | |||
25a887dcab | |||
36ffb0a31f | |||
b544d2af98 | |||
5db1acb07c | |||
880327c544 | |||
4f1883ba27 | |||
3043200012 | |||
1b4865c608 | |||
f7576cf541 | |||
587b170f6a | |||
1c42859466 | |||
1f832388d7 | |||
5f9344109d | |||
99bdafdd0c | |||
ab21bb5e3f | |||
99e32065b1 | |||
c1ffc160a2 | |||
89bf080dab | |||
047f3a7606 | |||
7f7c1a85ab | |||
5aff4b9dab | |||
2bd30c4423 | |||
0641968715 | |||
d9a2045fca | |||
ab00c45db0 |
@ -1,2 +1,2 @@
|
||||
Frappy framework for implementing SEC-nodes (see SECoP protocol on github).
|
||||
SECoP playground for creating specification and testing one implementation.
|
||||
|
||||
|
25
.pylintrc
25
.pylintrc
@ -38,21 +38,27 @@ confidence=
|
||||
# multiple time.
|
||||
disable=missing-docstring
|
||||
,locally-disabled
|
||||
,locally-enabled
|
||||
,fixme
|
||||
,no-member
|
||||
,bad-whitespace
|
||||
,wrong-import-position
|
||||
,ungrouped-imports
|
||||
,import-self
|
||||
,bad-continuation
|
||||
,protected-access
|
||||
,unused-argument
|
||||
,duplicate-code
|
||||
,attribute-defined-outside-init
|
||||
,access-member-before-definition
|
||||
,no-self-use
|
||||
,broad-except
|
||||
,unneeded-not
|
||||
,unidiomatic-typecheck
|
||||
,undefined-loop-variable
|
||||
,consider-using-f-string
|
||||
,redefined-variable-type
|
||||
,deprecated-lambda
|
||||
|
||||
[REPORTS]
|
||||
|
||||
# Set the output format. Available formats are text, parseable, colorized, msvs
|
||||
@ -61,6 +67,10 @@ disable=missing-docstring
|
||||
|
||||
msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg}
|
||||
|
||||
# Put messages in a separate file for each module / package specified on the
|
||||
# command line instead of printing them on stdout. Reports (if any) will be
|
||||
# written in a file name "pylint_global.[txt|html]".
|
||||
files-output=no
|
||||
|
||||
# Tells whether to display a full report or only the messages
|
||||
reports=no
|
||||
@ -83,11 +93,14 @@ dummy-variables-rgx=_|dummy
|
||||
|
||||
# List of additional names supposed to be defined in builtins. Remember that
|
||||
# you should avoid to define new builtins when possible.
|
||||
additional-builtins=Node,Mod,Param,Command,Group
|
||||
additional-builtins=
|
||||
|
||||
|
||||
[BASIC]
|
||||
|
||||
# List of builtins function names that should not be used, separated by a comma
|
||||
#bad-functions=map,filter,apply,input
|
||||
bad-functions=apply,input
|
||||
|
||||
# Regular expression which should only match correct module names
|
||||
module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9_]+))$
|
||||
@ -142,8 +155,14 @@ notes=FIXME,XXX,TODO
|
||||
# Maximum number of characters on a single line.
|
||||
max-line-length=132
|
||||
|
||||
# List of optional constructs for which whitespace checking is disabled. `dict-
|
||||
# separator` is used to allow tabulation in dicts, etc.: {1 : 1,\n222: 2}.
|
||||
# `trailing-comma` allows a space between comma and closing bracket: (a, ).
|
||||
# `empty-line` allows space-only lines.
|
||||
no-space-check=trailing-comma,dict-separator
|
||||
|
||||
# Maximum number of lines in a module
|
||||
max-module-lines=1000
|
||||
max-module-lines=1200
|
||||
|
||||
# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1
|
||||
# tab).
|
||||
|
28
Makefile
28
Makefile
@ -3,18 +3,12 @@
|
||||
|
||||
all: clean doc
|
||||
|
||||
# Make spawns a new shell for each command.
|
||||
# Save each PID in temporary file
|
||||
# sleep in order for "test" to have started reliably
|
||||
demo:
|
||||
@rm -f frappydemo.PID || true
|
||||
@{ bin/frappy-server -q demo & echo $$! >> frappydemo.PID; }
|
||||
@{ bin/frappy-server -q test & echo $$! >> frappydemo.PID; }
|
||||
@{ bin/frappy-server -q cryo & echo $$! >> frappydemo.PID; }
|
||||
@sleep 0.2
|
||||
@bin/frappy-gui localhost:10767 localhost:10768 localhost:10769
|
||||
@cat frappydemo.PID | xargs kill || true
|
||||
@rm frappydemo.PID
|
||||
@bin/secop-server -q demo &
|
||||
@bin/secop-server -q test &
|
||||
@bin/secop-server -q cryo &
|
||||
@bin/secop-gui localhost:10767 localhost:10768 localhost:10769
|
||||
@ps aux|grep [s]ecop-server|awk '{print $$2}'|xargs kill
|
||||
|
||||
build:
|
||||
python3 setup.py build
|
||||
@ -38,18 +32,18 @@ test-verbose:
|
||||
python3 $(shell which pytest) -v test -s
|
||||
|
||||
test-coverage:
|
||||
python3 $(shell which pytest) -v test --cov=frappy
|
||||
python3 $(shell which pytest) -v test --cov=secop
|
||||
|
||||
doc:
|
||||
$(MAKE) -C doc html
|
||||
|
||||
lint:
|
||||
pylint -f colorized -r n --rcfile=.pylintrc frappy frappy_* test
|
||||
pylint -j 0 -f colorized -r n --rcfile=.pylintrc secop secop_* test
|
||||
|
||||
isort:
|
||||
@find test -name '*.py' -print0 | xargs -0 isort -e -m 2 -w 80 -ns __init__.py
|
||||
@find frappy -name '*.py' -print0 | xargs -0 isort -e -m 2 -w 80 -ns __init__.py
|
||||
@find . -wholename './frappy_*.py' -print0 | xargs -0 isort -e -m 2 -w 80 -ns __init__.py
|
||||
@find secop -name '*.py' -print0 | xargs -0 isort -e -m 2 -w 80 -ns __init__.py
|
||||
@find . -wholename './secop_*.py' -print0 | xargs -0 isort -e -m 2 -w 80 -ns __init__.py
|
||||
|
||||
release-patch:
|
||||
MODE="patch" $(MAKE) release
|
||||
@ -61,8 +55,8 @@ release-major:
|
||||
MODE="major" $(MAKE) release
|
||||
|
||||
release:
|
||||
ssh jenkins.admin.frm2.tum.de -p 29417 build -v -s -p GERRIT_PROJECT=$(shell git config --get remote.origin.url | rev | cut -d '/' -f -2 | rev) -p ARCH=all -p MODE=$(MODE) ReleasePipeline
|
||||
ssh jenkinsng.admin.frm2 -p 29417 build -v -s -p GERRIT_PROJECT=$(shell git config --get remote.origin.url | rev | cut -d '/' -f -3 | rev) -p ARCH=all -p MODE=$(MODE) ReleasePipeline
|
||||
|
||||
|
||||
build-pkg:
|
||||
debocker build --image docker.ictrl.frm2.tum.de:5443/mlzbase/buster
|
||||
debocker build --image jenkinsng.admin.frm2:5000/mlzbase/buster
|
||||
|
62
README.md
Normal file
62
README.md
Normal file
@ -0,0 +1,62 @@
|
||||
# Frappy Framework
|
||||
|
||||
current running code at SINQ, with newest changes not yet pushed
|
||||
through the Gerrit workflow at MLZ
|
||||
|
||||
## Branches
|
||||
|
||||
branches:
|
||||
|
||||
- mlz: master from forge.frm2.tum.de:29418/sine2020/secop/playground
|
||||
this is not present at git.psi.ch:sinqdev/frappy.git!
|
||||
- master: the last synced state between mlz and wip/work, except an added README.md
|
||||
(this does NOT contain local repo files only, however, all common files work/mlz should match)
|
||||
- core: the modifications of the core frappy parts (to be going through gerrit)
|
||||
- work: current working version, usually in use on /home/l_samenv/frappy (and on neutron instruments)
|
||||
this should be a copy of an earlier state of the wip branch
|
||||
- wip: current test version, usually in use on /home/l_samenv/frappy_wip
|
||||
IMPORTANT: make commits containing either only files to be pushed to Gerrit or only
|
||||
PSI internal files, not mixed. Mark local commits with '[PSI]' in the commit message.
|
||||
|
||||
|
||||
master --> mlz # these branches match after a sync step, but they might have a different history
|
||||
master --> work --> wip
|
||||
|
||||
apply commits from mlz to master: (rebase ?) or use cherry-pick:
|
||||
|
||||
git cherry-pick <sha1>..<sha2>
|
||||
|
||||
where sha1 is the last commit already in wip, and sha2 ist the last commit to be applied
|
||||
(for a single commit <sha1>.. may be omitted)
|
||||
|
||||
the wip branch is also present in an other directory (currently zolliker/switchdrive/gitmlz/frappy),
|
||||
where commits may be cherry picked for input to Gerrit. As generally in the review process some additional
|
||||
changes are done, eventually a sync step should happen:
|
||||
|
||||
1) ideally, this is done when work and wip match
|
||||
2) make sure branches mlz, master, wip and work are in syns with remote, push/pull otherwise
|
||||
3) cherry-pick commits from mlz to master
|
||||
4) make sure master and mlz branches match (git diff --name-only master..wip should only return README.md)
|
||||
5) create branch new_work from master
|
||||
6) go through commits in wip and sort out:
|
||||
- core commits already pushed through gerrit are skipped
|
||||
- all other commits are to be cherry-picked
|
||||
7) when arrived at the point where the new working version should be,
|
||||
copy new_wip branch to work with 'git checkout work;git checkout new_wip .'
|
||||
(note the dot!) and then commit this.
|
||||
8) continue with (6) if wip and work should differ
|
||||
9) do like (7), but for wip branch
|
||||
10) delete new_wip branch, push master, wip and work branches
|
||||
|
||||
|
||||
## Procedure to update PPMS
|
||||
|
||||
1) git checkout wip (or work, whatever state to copy to ppms)
|
||||
2) git checkout -B ppms # local branch ?
|
||||
3) assume PPMSData is mounted on /Volumes/PPMSData
|
||||
|
||||
cp -r secop_psi /Volumes/PPMSData/zolliker/frappy/secop_psi
|
||||
cp -r secop /Volumes/PPMSData/zolliker/frappy/secop
|
||||
|
||||
it may be that additional folder have to copied ...
|
||||
|
@ -29,8 +29,8 @@ from os import path
|
||||
# Add import path for inplace usage
|
||||
sys.path.insert(0, path.abspath(path.join(path.dirname(__file__), '..')))
|
||||
|
||||
from frappy.gui.qt import QApplication
|
||||
from frappy.gui.cfg_editor.mainwindow import MainWindow
|
||||
from secop.gui.qt import QApplication
|
||||
from secop.gui.cfg_editor.mainwindow import MainWindow
|
||||
|
||||
|
||||
def main(argv=None):
|
@ -26,49 +26,42 @@
|
||||
from __future__ import print_function
|
||||
|
||||
import sys
|
||||
import argparse
|
||||
from os import path
|
||||
|
||||
# Add import path for inplace usage
|
||||
sys.path.insert(0, path.abspath(path.join(path.dirname(__file__), '..')))
|
||||
|
||||
import logging
|
||||
from mlzlog import ColoredConsoleHandler
|
||||
import mlzlog
|
||||
|
||||
from frappy.gui.qt import QApplication
|
||||
from frappy.gui.mainwindow import MainWindow
|
||||
|
||||
def parseArgv(argv):
|
||||
parser = argparse.ArgumentParser()
|
||||
loggroup = parser.add_mutually_exclusive_group()
|
||||
loggroup.add_argument('-d', '--debug',
|
||||
help='Enable debug output',
|
||||
action='store_true', default=False)
|
||||
loggroup.add_argument('-q', '--quiet',
|
||||
help='Supress everything but errors',
|
||||
action='store_true', default=False)
|
||||
parser.add_argument('node',
|
||||
help='Nodes the Gui should connect to.\n', metavar='host[:port]',
|
||||
nargs='*', type=str, default=['localhost:10767'])
|
||||
return parser.parse_args(argv)
|
||||
from secop.gui.qt import QApplication
|
||||
from secop.gui.mainwindow import MainWindow
|
||||
|
||||
|
||||
def main(argv=None):
|
||||
if argv is None:
|
||||
argv = sys.argv
|
||||
|
||||
args = parseArgv(argv[1:])
|
||||
if '-h' in argv or '--help' in argv:
|
||||
print("Usage: secop-gui [-d] [-h] [host:[port]]")
|
||||
print()
|
||||
print("Option GNU long option Meaning")
|
||||
print("-h --help Show this message")
|
||||
print("-d --debug Enable debug output")
|
||||
print()
|
||||
print("if not given, host defaults to 'localhost' and port to 10767")
|
||||
sys.exit(0)
|
||||
|
||||
loglevel = logging.DEBUG if args.debug else (logging.ERROR if args.quiet else logging.INFO)
|
||||
logger = logging.getLogger('gui')
|
||||
logger.setLevel(logging.DEBUG)
|
||||
console = ColoredConsoleHandler()
|
||||
console.setLevel(loglevel)
|
||||
logger.addHandler(console)
|
||||
if '-d' in argv or '--debug' in argv:
|
||||
mlzlog.initLogging('gui', 'debug')
|
||||
else:
|
||||
mlzlog.initLogging('gui', 'info')
|
||||
|
||||
app = QApplication(argv)
|
||||
|
||||
win = MainWindow(args.node, logger)
|
||||
hosts = [host for host in argv[1:] if not host.startswith('-')]
|
||||
if not hosts:
|
||||
hosts = ['localhost:10767']
|
||||
win = MainWindow(hosts)
|
||||
win.show()
|
||||
|
||||
return app.exec_()
|
@ -27,12 +27,13 @@ import sys
|
||||
import argparse
|
||||
from os import path
|
||||
|
||||
import mlzlog
|
||||
|
||||
# Add import path for inplace usage
|
||||
sys.path.insert(0, path.abspath(path.join(path.dirname(__file__), '..')))
|
||||
|
||||
from frappy.lib import generalConfig
|
||||
from frappy.logging import logger
|
||||
from frappy.server import Server
|
||||
from secop.lib import getGeneralConfig
|
||||
from secop.server import Server
|
||||
|
||||
|
||||
def parseArgv(argv):
|
||||
@ -59,26 +60,15 @@ def parseArgv(argv):
|
||||
parser.add_argument('-c',
|
||||
'--cfgfiles',
|
||||
action='store',
|
||||
help="comma separated list of cfg files,\n"
|
||||
"defaults to <name_of_the_instance>.\n"
|
||||
"cfgfiles given without '.cfg' extension are searched in the configuration directory, "
|
||||
help="comma separated list of cfg files\n"
|
||||
"defaults to <name_of_the_instance>\n"
|
||||
"cfgfiles given without '.cfg' extension are searched in the configuration directory,"
|
||||
"else they are treated as path names",
|
||||
default=None)
|
||||
parser.add_argument('-g',
|
||||
'--gencfg',
|
||||
action='store',
|
||||
help="full path of general config file,\n"
|
||||
"defaults to env. variable FRAPPY_CONFIG_FILE\n",
|
||||
default=None)
|
||||
parser.add_argument('-t',
|
||||
'--test',
|
||||
action='store_true',
|
||||
help='check cfg files only',
|
||||
default=False)
|
||||
parser.add_argument('-r',
|
||||
'--relaxed',
|
||||
action='store_true',
|
||||
help='no checking of problematic behaviour',
|
||||
help='Check cfg files only',
|
||||
default=False)
|
||||
return parser.parse_args(argv)
|
||||
|
||||
@ -90,12 +80,9 @@ def main(argv=None):
|
||||
args = parseArgv(argv[1:])
|
||||
|
||||
loglevel = 'debug' if args.verbose else ('error' if args.quiet else 'info')
|
||||
generalConfig.defaults = {k: args.relaxed for k in (
|
||||
'lazy_number_validation', 'disable_value_range_check', 'legacy_hasiodev', 'tolerate_poll_property')}
|
||||
generalConfig.init(args.gencfg)
|
||||
logger.init(loglevel)
|
||||
mlzlog.initLogging('secop', loglevel, getGeneralConfig()['logdir'])
|
||||
|
||||
srv = Server(args.name, logger.log, cfgfiles=args.cfgfiles, interface=args.port, testonly=args.test)
|
||||
srv = Server(args.name, mlzlog.log, cfgfiles=args.cfgfiles, interface=args.port, testonly=args.test)
|
||||
|
||||
if args.daemonize:
|
||||
srv.start()
|
@ -42,7 +42,7 @@ import ast
|
||||
# Add import path for inplace usage
|
||||
sys.path.insert(0, path.abspath(path.join(path.dirname(__file__), '..')))
|
||||
|
||||
from frappy.lib import get_class, formatException
|
||||
from secop.lib import get_class, formatException
|
||||
|
||||
class LineHandler(asyncore.dispatcher_with_send):
|
||||
|
||||
@ -136,7 +136,7 @@ for arg in sys.argv[1:]:
|
||||
pass
|
||||
opts[k] = v
|
||||
verbose = opts.pop('verbose', False)
|
||||
opts['cls'] = 'frappy_psi.ls370sim.Ls370Sim'
|
||||
opts['cls'] = 'secop_psi.ls370sim.Ls370Sim'
|
||||
opts['port'] = 4567
|
||||
if len(args) > 2:
|
||||
raise ValueError('do not know about: %s' % ' '.join(args[2:]))
|
||||
|
@ -7,11 +7,11 @@ bindto = 0.0.0.0
|
||||
bindport = 5000
|
||||
|
||||
[module cap]
|
||||
class = frappy_psi.ah2700.Capacitance
|
||||
class = secop_psi.ah2700.Capacitance
|
||||
description = capacitance
|
||||
uri=ldmse3-ts:3015
|
||||
|
||||
#[module ahcom]
|
||||
#class = frappy_psi.ah2700.StringIO
|
||||
#class = secop_psi.ah2700.StringIO
|
||||
#uri=ldmse3-ts:3015
|
||||
#description = serial communicator to an AH2700
|
||||
|
@ -19,7 +19,7 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module enable]
|
||||
class=frappy_mlz.entangle.NamedDigitalOutput
|
||||
class=secop_mlz.entangle.NamedDigitalOutput
|
||||
tangodevice='tango://localhost:10000/box/plc/_enable'
|
||||
value.datatype=["enum", {'On':1,'Off':0}]
|
||||
target.datatype=["enum", {'On':1,'Off':0}]
|
||||
@ -27,7 +27,7 @@ target.datatype=["enum", {'On':1,'Off':0}]
|
||||
.visibility='advanced'
|
||||
|
||||
[module polarity]
|
||||
class=frappy_mlz.entangle.NamedDigitalOutput
|
||||
class=secop_mlz.entangle.NamedDigitalOutput
|
||||
tangodevice=tango://localhost:10000/box/plc/_polarity
|
||||
value.datatype=["enum", {'+1':1,'0':0,'-1':-1}]
|
||||
target.datatype=["enum", {'+1':1,'0':0,'-1':-1}]
|
||||
@ -41,7 +41,7 @@ comtries=50
|
||||
|
||||
|
||||
[module symmetry]
|
||||
class=frappy_mlz.entangle.NamedDigitalOutput
|
||||
class=secop_mlz.entangle.NamedDigitalOutput
|
||||
tangodevice=tango://localhost:10000/box/plc/_symmetric
|
||||
value.datatype=["enum",{'symmetric':1,'short':0, 'asymmetric':-1}]
|
||||
target.datatype=["enum",{'symmetric':1,'short':0, 'asymmetric':-1}]
|
||||
@ -51,35 +51,35 @@ target.datatype=["enum",{'symmetric':1,'short':0, 'asymmetric':-1}]
|
||||
.visibility=advanced
|
||||
|
||||
[module T1]
|
||||
class=frappy_mlz.entangle.AnalogInput
|
||||
class=secop_mlz.entangle.AnalogInput
|
||||
tangodevice=tango://localhost:10000/box/plc/_t1
|
||||
.description=Temperature1 of the coils system
|
||||
#warnlimits=(0, 50)
|
||||
value.unit='degC'
|
||||
|
||||
[module T2]
|
||||
class=frappy_mlz.entangle.AnalogInput
|
||||
class=secop_mlz.entangle.AnalogInput
|
||||
tangodevice=tango://localhost:10000/box/plc/_t2
|
||||
.description=Temperature2 of the coils system
|
||||
#warnlimits=(0, 50)
|
||||
value.unit='degC'
|
||||
|
||||
[module T3]
|
||||
class=frappy_mlz.entangle.AnalogInput
|
||||
class=secop_mlz.entangle.AnalogInput
|
||||
tangodevice=tango://localhost:10000/box/plc/_t3
|
||||
.description=Temperature3 of the coils system
|
||||
#warnlimits=(0, 50)
|
||||
value.unit='degC'
|
||||
|
||||
[module T4]
|
||||
class=frappy_mlz.entangle.AnalogInput
|
||||
class=secop_mlz.entangle.AnalogInput
|
||||
tangodevice=tango://localhost:10000/box/plc/_t4
|
||||
.description=Temperature4 of the coils system
|
||||
#warnlimits=(0, 50)
|
||||
value.unit='degC'
|
||||
|
||||
[module currentsource]
|
||||
class=frappy_mlz.entangle.PowerSupply
|
||||
class=secop_mlz.entangle.PowerSupply
|
||||
tangodevice=tango://localhost:10000/box/lambda/curr
|
||||
.description=Device for the magnet power supply (current mode)
|
||||
abslimits=(0,200)
|
||||
@ -92,7 +92,7 @@ voltage=10
|
||||
.visibility=advanced
|
||||
|
||||
[module mf]
|
||||
class=frappy_mlz.amagnet.GarfieldMagnet
|
||||
class=secop_mlz.amagnet.GarfieldMagnet
|
||||
.description=magnetic field module, handling polarity switching and stuff
|
||||
subdev_currentsource=currentsource
|
||||
subdev_enable=enable
|
||||
|
32
cfg/ccr.cfg
32
cfg/ccr.cfg
@ -11,7 +11,7 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module automatik]
|
||||
class=frappy_mlz.entangle.NamedDigitalOutput
|
||||
class=secop_mlz.entangle.NamedDigitalOutput
|
||||
tangodevice=tango://localhost:10000/box/plc/_automatik
|
||||
mapping=dict(Off=0,p1=1,p2=2)
|
||||
description="controls the (simple) pressure regulation
|
||||
@ -19,13 +19,13 @@ description="controls the (simple) pressure regulation
|
||||
selects between off, regulate on p1 or regulate on p2 sensor"
|
||||
|
||||
[module compressor]
|
||||
class=frappy_mlz.entangle.NamedDigitalOutput
|
||||
class=secop_mlz.entangle.NamedDigitalOutput
|
||||
tangodevice=tango://localhost:10000/box/plc/_cooler_onoff
|
||||
mapping=dict(Off=0,On=1)
|
||||
description=control the compressor (on/off)
|
||||
|
||||
[module gas]
|
||||
class=frappy_mlz.entangle.NamedDigitalOutput
|
||||
class=secop_mlz.entangle.NamedDigitalOutput
|
||||
tangodevice=tango://localhost:10000/box/plc/_gas_onoff
|
||||
mapping=dict(Off=0,On=1)
|
||||
description=control the gas inlet into the ccr (on/off)
|
||||
@ -35,7 +35,7 @@ description=control the gas inlet into the ccr (on/off)
|
||||
note: if the pressure regulation is active, it enslave this device
|
||||
|
||||
[module vacuum]
|
||||
class=frappy_mlz.entangle.NamedDigitalOutput
|
||||
class=secop_mlz.entangle.NamedDigitalOutput
|
||||
tangodevice=tango://localhost:10000/box/plc/_vacuum_Onoff
|
||||
mapping=dict(Off=0,On=1)
|
||||
description=control the vacuum inlet into the ccr (on/off)
|
||||
@ -44,19 +44,19 @@ description=control the vacuum inlet into the ccr (on/off)
|
||||
note: if the pressure regulation is active, it enslave this device
|
||||
|
||||
[module p1]
|
||||
class=frappy_mlz.entangle.AnalogInput
|
||||
class=secop_mlz.entangle.AnalogInput
|
||||
tangodevice=tango://localhost:10000/box/plc/_p1
|
||||
value.unit='mbar'
|
||||
description=pressure sensor 1 (linear scale)
|
||||
|
||||
[module p2]
|
||||
class=frappy_mlz.entangle.AnalogInput
|
||||
class=secop_mlz.entangle.AnalogInput
|
||||
tangodevice=tango://localhost:10000/box/plc/_p2
|
||||
value.unit='mbar'
|
||||
description=pressure sensor 2 (selectable curve)
|
||||
|
||||
[module curve_p2]
|
||||
class=frappy_mlz.entangle.NamedDigitalInput
|
||||
class=secop_mlz.entangle.NamedDigitalInput
|
||||
tangodevice=tango://localhost:10000/box/plc/_curve
|
||||
value.default=0
|
||||
description=calibration curve for pressure sensor 2
|
||||
@ -71,25 +71,25 @@ mapping="{'0-10V':0, '0-1000mbar':1, '1-9V to 0-1 mbar':2,
|
||||
|
||||
# sensors
|
||||
[module T_sample]
|
||||
class=frappy_mlz.entangle.Sensor
|
||||
class=secop_mlz.entangle.Sensor
|
||||
tangodevice=tango://localhost:10000/box/sample/sensora
|
||||
value.unit='K'
|
||||
description=sample temperature
|
||||
|
||||
[module T_stick]
|
||||
class=frappy_mlz.entangle.Sensor
|
||||
class=secop_mlz.entangle.Sensor
|
||||
tangodevice=tango://localhost:10000/box/stick/sensorb
|
||||
value.unit='K'
|
||||
description=temperature at bottom of sample stick
|
||||
|
||||
[module T_coldhead]
|
||||
class=frappy_mlz.entangle.Sensor
|
||||
class=secop_mlz.entangle.Sensor
|
||||
tangodevice=tango://localhost:10000/box/coldhead/sensorc
|
||||
value.unit='K'
|
||||
description=temperature at coldhead
|
||||
|
||||
[module T_tube]
|
||||
class=frappy_mlz.entangle.Sensor
|
||||
class=secop_mlz.entangle.Sensor
|
||||
tangodevice=tango://localhost:10000/box/tube/sensord
|
||||
value.unit='K'
|
||||
description=temperature at thermal coupling tube <-> stick
|
||||
@ -98,7 +98,7 @@ description=temperature at thermal coupling tube <-> stick
|
||||
# regulations
|
||||
|
||||
[module T_stick_regulation]
|
||||
class=frappy_mlz.entangle.TemperatureController
|
||||
class=secop_mlz.entangle.TemperatureController
|
||||
tangodevice=tango://localhost:10000/box/stick/control2
|
||||
heateroutput.default=0
|
||||
description=regulation of stick temperature
|
||||
@ -114,7 +114,7 @@ value.unit='K'
|
||||
|
||||
# OMG! a NamedDigitalOutput, but with float'ints' 0..3
|
||||
[module T_stick_regulation_heaterrange]
|
||||
class=frappy_mlz.entangle.AnalogOutput
|
||||
class=secop_mlz.entangle.AnalogOutput
|
||||
tangodevice=tango://localhost:10000/box/stick/range2
|
||||
precision.default=1
|
||||
abslimits=(0,3)
|
||||
@ -122,7 +122,7 @@ description=heaterrange for stick regulation
|
||||
|
||||
|
||||
[module T_tube_regulation]
|
||||
class=frappy_mlz.entangle.TemperatureController
|
||||
class=secop_mlz.entangle.TemperatureController
|
||||
tangodevice=tango://localhost:10000/box/tube/control1
|
||||
description=regulation of tube temperature
|
||||
heateroutput.default=0
|
||||
@ -138,13 +138,13 @@ value.unit='K'
|
||||
|
||||
# OMG! a NamedDigitalOutput, but with float'ints' 0..3
|
||||
#[module T_tube_regulation_heaterrange]
|
||||
#class=frappy_mlz.entangle.AnalogOutput
|
||||
#class=secop_mlz.entangle.AnalogOutput
|
||||
#tangodevice=tango://localhost:10000/box/tube/range1
|
||||
#precision.default=1
|
||||
#abslimits=(0,3)
|
||||
|
||||
[module T_tube_regulation_heaterrange]
|
||||
class=frappy_mlz.entangle.NamedDigitalOutput
|
||||
class=secop_mlz.entangle.NamedDigitalOutput
|
||||
tangodevice=tango://localhost:10000/box/tube/range1
|
||||
mapping=dict(Off=0, Low=1, Medium=2, High=3)
|
||||
description=heaterrange for tube regulation
|
||||
|
50
cfg/cryo.cfg
Normal file
50
cfg/cryo.cfg
Normal file
@ -0,0 +1,50 @@
|
||||
[node cryo_7]
|
||||
# set SEC-node properties
|
||||
description = short description
|
||||
.
|
||||
This is a very long description providing all the glory details in all the glory details about the stuff we are describing
|
||||
|
||||
|
||||
[interface tcp]
|
||||
type=tcp
|
||||
bindto=0.0.0.0
|
||||
bindport=10769
|
||||
|
||||
[module cryo]
|
||||
# some (non-defaut) module properties
|
||||
.group=very important/stuff
|
||||
.description=A simulated cc cryostat with heat-load, specific heat for the sample
|
||||
and a temperature dependend heat-link between sample and regulation.
|
||||
|
||||
# class of module:
|
||||
class=secop_demo.cryo.Cryostat
|
||||
|
||||
# some parameters
|
||||
jitter=0.1
|
||||
T_start=10.0
|
||||
target=10.0
|
||||
looptime=1
|
||||
ramp=6
|
||||
maxpower=20.0
|
||||
heater=4.1
|
||||
p=40
|
||||
i=10
|
||||
d=2
|
||||
mode=pid
|
||||
tolerance=0.1
|
||||
window=30
|
||||
timeout=900
|
||||
|
||||
# some (non-default) parameter properties
|
||||
pollinterval.export=False
|
||||
|
||||
# some parameter grouping
|
||||
p.group=pid
|
||||
i.group=pid
|
||||
d.group=pid
|
||||
|
||||
value.unit=K
|
||||
|
||||
# test custom properties
|
||||
value.test=customized value
|
||||
|
@ -1,37 +0,0 @@
|
||||
#####################################################################
|
||||
# Python version of frappy config
|
||||
#####################################################################
|
||||
|
||||
Node('cryo_7.frappy.demo',
|
||||
'short description' \
|
||||
'' \
|
||||
'' \
|
||||
'This is a very long description providing all the glory details in all the ' \
|
||||
'glory details about the stuff we are describing',
|
||||
'tcp://10769',
|
||||
more="blub",
|
||||
)
|
||||
|
||||
Mod('cryo',
|
||||
'frappy_demo.cryo.Cryostat',
|
||||
'A simulated cc cryostat with heat-load, specific heat for the sample and a ' \
|
||||
'temperature dependend heat-link between sample and regulation.',
|
||||
group='very important/stuff',
|
||||
jitter=0.1,
|
||||
T_start=10.0,
|
||||
target=10.0,
|
||||
looptime=1,
|
||||
ramp=6,
|
||||
maxpower=20.0,
|
||||
heater=4.1,
|
||||
mode='pid',
|
||||
tolerance=0.1,
|
||||
window=30,
|
||||
timeout=900,
|
||||
p = Param(40, unit='%/K'), # in case 'default' is the first arg, we can omit 'default='
|
||||
i = 10,
|
||||
d = 2,
|
||||
pid = Group('p', 'i', 'd'),
|
||||
pollinterval = Param(export=False),
|
||||
value = Param(unit = 'K', test = 'customized value'),
|
||||
)
|
43
cfg/demo.cfg
Normal file
43
cfg/demo.cfg
Normal file
@ -0,0 +1,43 @@
|
||||
[node Equipment_ID_for_demonstration]
|
||||
description = virtual modules to play around with
|
||||
|
||||
[interface tcp]
|
||||
bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module heatswitch]
|
||||
class=secop_demo.modules.Switch
|
||||
switch_on_time=5
|
||||
switch_off_time=10
|
||||
.description="Heatswitch for `mf` device"
|
||||
|
||||
[module mf]
|
||||
class=secop_demo.modules.MagneticField
|
||||
heatswitch = heatswitch
|
||||
.description="simulates some cryomagnet with persistent/non-persistent switching"
|
||||
|
||||
[module ts]
|
||||
class=secop_demo.modules.SampleTemp
|
||||
sensor = 'Q1329V7R3'
|
||||
ramp = 4
|
||||
target = 10
|
||||
value = 10
|
||||
.description = "some temperature"
|
||||
|
||||
[module tc1]
|
||||
class=secop_demo.modules.CoilTemp
|
||||
sensor="X34598T7"
|
||||
.description = "some temperature"
|
||||
|
||||
[module tc2]
|
||||
class=secop_demo.modules.CoilTemp
|
||||
sensor="X39284Q8'
|
||||
.description = "some temperature"
|
||||
|
||||
[module label]
|
||||
class=secop_demo.modules.Label
|
||||
system=Cryomagnet MX15
|
||||
subdev_mf=mf
|
||||
subdev_ts=ts
|
||||
.description = "some label indicating the state of the magnet `mf`."
|
||||
|
@ -1,45 +0,0 @@
|
||||
Node('demo.frappy.demo',
|
||||
'Basic demo server for frappy',
|
||||
'tcp://10767',
|
||||
)
|
||||
|
||||
Mod('heatswitch',
|
||||
'frappy_demo.modules.Switch',
|
||||
'Heatswitch for `mf` device',
|
||||
switch_on_time = 5,
|
||||
switch_off_time = 10,
|
||||
)
|
||||
|
||||
Mod('mf',
|
||||
'frappy_demo.modules.MagneticField',
|
||||
'simulates some cryomagnet with persistent/non-persistent switching',
|
||||
heatswitch = 'heatswitch',
|
||||
)
|
||||
|
||||
Mod('ts',
|
||||
'frappy_demo.modules.SampleTemp',
|
||||
'some temperature',
|
||||
sensor = 'Q1329V7R3',
|
||||
ramp = 4,
|
||||
target = 10,
|
||||
value = 10,
|
||||
)
|
||||
|
||||
Mod('tc1',
|
||||
'frappy_demo.modules.CoilTemp',
|
||||
'some temperature',
|
||||
sensor = 'X34598T7',
|
||||
)
|
||||
|
||||
Mod('tc2',
|
||||
'frappy_demo.modules.CoilTemp',
|
||||
'some temperature',
|
||||
sensor = 'X39284Q8',
|
||||
)
|
||||
|
||||
Mod('label',
|
||||
'frappy_demo.modules.Label',
|
||||
'some label indicating the state of the magnet `,f`.',
|
||||
subdev_mf = 'mf',
|
||||
subdev_ts = 'ts',
|
||||
)
|
@ -7,23 +7,23 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module tc1]
|
||||
class=frappy_demo.modules.CoilTemp
|
||||
class=secop_demo.modules.CoilTemp
|
||||
sensor="X34598T7"
|
||||
|
||||
[module tc2]
|
||||
class=frappy_demo.modules.CoilTemp
|
||||
class=secop_demo.modules.CoilTemp
|
||||
sensor="X39284Q8'
|
||||
|
||||
|
||||
[module sensor1]
|
||||
class=frappy_ess.epics.EpicsReadable
|
||||
class=secop_ess.epics.EpicsReadable
|
||||
epics_version="v4"
|
||||
.group="Lakeshore336"
|
||||
value_pv="DEV:KRDG1"
|
||||
|
||||
|
||||
[module loop1]
|
||||
class=frappy_ess.epics.EpicsTempCtrl
|
||||
class=secop_ess.epics.EpicsTempCtrl
|
||||
epics_version="v4"
|
||||
.group="Lakeshore336"
|
||||
|
||||
@ -33,14 +33,14 @@ heaterrange_pv="DEV:RANGE_S1"
|
||||
|
||||
|
||||
[module sensor2]
|
||||
class=frappy_ess.epics.EpicsReadable
|
||||
class=secop_ess.epics.EpicsReadable
|
||||
epics_version="v4"
|
||||
.group="Lakeshore336"
|
||||
value_pv="DEV:KRDG2"
|
||||
|
||||
|
||||
[module loop2]
|
||||
class=frappy_ess.epics.EpicsTempCtrl
|
||||
class=secop_ess.epics.EpicsTempCtrl
|
||||
epics_version="v4"
|
||||
.group="Lakeshore336"
|
||||
|
||||
|
@ -1,5 +0,0 @@
|
||||
[FRAPPY]
|
||||
# general config for running in git repo
|
||||
logdir = ./log
|
||||
piddir = ./pid
|
||||
confdir = ./cfg
|
25
cfg/ls370res.cfg
Normal file
25
cfg/ls370res.cfg
Normal file
@ -0,0 +1,25 @@
|
||||
[NODE]
|
||||
id = ls370res.psi.ch
|
||||
description = Lsc370 Test
|
||||
|
||||
[INTERFACE]
|
||||
uri = tcp://5000
|
||||
|
||||
[lsmain_iodev]
|
||||
description = the communication device
|
||||
class = secop_psi.ls370res.StringIO
|
||||
uri = lollypop-ts:3001
|
||||
|
||||
[lsmain]
|
||||
class = secop_psi.ls370res.Main
|
||||
description = main control of Lsc controller
|
||||
uri = lollypop-ts:3001
|
||||
|
||||
[res]
|
||||
class = secop_psi.ls370res.ResChannel
|
||||
iexc = '1mA'
|
||||
channel = 5
|
||||
description = resistivity
|
||||
main = lsmain
|
||||
# the auto created iodev from lsmain:
|
||||
iodev = lsmain_iodev
|
@ -1,28 +1,24 @@
|
||||
[NODE]
|
||||
id = LscSIM.psi.ch
|
||||
[node LscSIM.psi.ch]
|
||||
description = Lsc Simulation at PSI
|
||||
|
||||
[INTERFACE]
|
||||
uri = tcp://5000
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindto = 0.0.0.0
|
||||
bindport = 5000
|
||||
|
||||
[lscom]
|
||||
class = frappy_psi.ls370sim.Ls370Sim
|
||||
description = simulated serial communicator to a LS 370
|
||||
visibility = 3
|
||||
[module res]
|
||||
class = secop_psi.ls370res.ResChannel
|
||||
.channel = 3
|
||||
.description = resistivity
|
||||
.main = lsmain
|
||||
.iodev = lscom
|
||||
|
||||
[sw]
|
||||
class = frappy_psi.ls370res.Switcher
|
||||
description = channel switcher for Lsc controller
|
||||
io = lscom
|
||||
[module lsmain]
|
||||
class = secop_psi.ls370res.Main
|
||||
.description = main control of Lsc controller
|
||||
.iodev = lscom
|
||||
|
||||
[a]
|
||||
class = frappy_psi.ls370res.ResChannel
|
||||
channel = 1
|
||||
description = resistivity
|
||||
switcher = sw
|
||||
|
||||
[b]
|
||||
class = frappy_psi.ls370res.ResChannel
|
||||
channel = 3
|
||||
description = resistivity
|
||||
switcher = sw
|
||||
[module lscom]
|
||||
class = secop_psi.ls370sim.Ls370Sim
|
||||
.description = simulated serial communicator to a LS 370
|
||||
.visibility = 3
|
||||
|
@ -1,20 +1,24 @@
|
||||
[node LscSIM.psi.ch]
|
||||
[NODE]
|
||||
id = ls370res.psi.ch
|
||||
description = Lsc370 Test
|
||||
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindto = 0.0.0.0
|
||||
bindport = 5000
|
||||
[INTERFACE]
|
||||
uri = tcp://5000
|
||||
|
||||
[module lsmain]
|
||||
class = frappy_psi.ls370res.Main
|
||||
description = main control of Lsc controller
|
||||
[lsmain_iodev]
|
||||
description = the communication device
|
||||
class = secop_psi.ls370res.StringIO
|
||||
uri = localhost:4567
|
||||
|
||||
[module res]
|
||||
class = frappy_psi.ls370res.ResChannel
|
||||
vexc = '2mV'
|
||||
channel = 3
|
||||
[lsmain]
|
||||
class = secop_psi.ls370res.Main
|
||||
description = main control of Lsc controller
|
||||
iodev = lsmain_iodev
|
||||
|
||||
[res]
|
||||
class = secop_psi.ls370res.ResChannel
|
||||
iexc = '1mA'
|
||||
channel = 5
|
||||
description = resistivity
|
||||
main = lsmain
|
||||
# the auto created iodev from lsmain:
|
||||
|
70
cfg/mb11.cfg
Normal file
70
cfg/mb11.cfg
Normal file
@ -0,0 +1,70 @@
|
||||
[seaconn]
|
||||
class = secop_psi.sea.SeaClient
|
||||
description = a SEA connection
|
||||
# uri will be automatic
|
||||
|
||||
[ts]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = ts.mb11.config
|
||||
remote_paths = .
|
||||
|
||||
[tvs]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tvs.mb11.config
|
||||
remote_paths = .
|
||||
|
||||
[tvd]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tvd.mb11.config
|
||||
remote_paths = .
|
||||
|
||||
[pstat]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = pstat.mb11.config
|
||||
remote_paths = .
|
||||
|
||||
[pdyn]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = pdyn.mb11.config
|
||||
remote_paths = .
|
||||
|
||||
[tneck1]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tneck1.mb11.config
|
||||
remote_paths = .
|
||||
|
||||
[tneck2]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tneck2.mb11.config
|
||||
remote_paths = .
|
||||
|
||||
[tnvs]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tnvs.mb11.config
|
||||
remote_paths = .
|
||||
|
||||
[tnvd]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tnvd.mb11.config
|
||||
remote_paths = .
|
||||
|
||||
[mf]
|
||||
class = secop_psi.sea.SeaDrivable
|
||||
iodev = seaconn
|
||||
json_descr = mf.mb11.config
|
||||
remote_paths = .
|
||||
|
||||
[tcoil]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tcoil.mb11.config
|
||||
remote_paths = .
|
5
cfg/ori.cfg
Normal file
5
cfg/ori.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
[seaconn]
|
||||
class = secop_psi.sea.SeaClient
|
||||
description = a SEA connection
|
||||
# uri = tcp://samenv.psi.ch:8642
|
||||
|
128
cfg/ppms.cfg
128
cfg/ppms.cfg
@ -6,119 +6,119 @@ description = PPMS at PSI
|
||||
uri = tcp://5000
|
||||
|
||||
[tt]
|
||||
class = frappy_psi.ppms.Temp
|
||||
class = secop_psi.ppms.Temp
|
||||
description = main temperature
|
||||
io = ppms
|
||||
iodev = ppms
|
||||
|
||||
[mf]
|
||||
class = frappy_psi.ppms.Field
|
||||
class = secop_psi.ppms.Field
|
||||
target.min = -9
|
||||
target.max = 9
|
||||
description = magnetic field
|
||||
io = ppms
|
||||
.description = magnetic field
|
||||
.iodev = ppms
|
||||
|
||||
[pos]
|
||||
class = frappy_psi.ppms.Position
|
||||
description = sample rotator
|
||||
io = ppms
|
||||
class = secop_psi.ppms.Position
|
||||
.description = sample rotator
|
||||
.iodev = ppms
|
||||
|
||||
[lev]
|
||||
class = frappy_psi.ppms.Level
|
||||
description = helium level
|
||||
io = ppms
|
||||
class = secop_psi.ppms.Level
|
||||
.description = helium level
|
||||
.iodev = ppms
|
||||
|
||||
[chamber]
|
||||
class = frappy_psi.ppms.Chamber
|
||||
description = chamber state
|
||||
io = ppms
|
||||
class = secop_psi.ppms.Chamber
|
||||
.description = chamber state
|
||||
.iodev = ppms
|
||||
|
||||
[r1]
|
||||
class = frappy_psi.ppms.BridgeChannel
|
||||
description = resistivity channel 1
|
||||
no = 1
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 1
|
||||
.no = 1
|
||||
value.unit = Ohm
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[r2]
|
||||
class = frappy_psi.ppms.BridgeChannel
|
||||
description = resistivity channel 2
|
||||
no = 2
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 2
|
||||
.no = 2
|
||||
value.unit = Ohm
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[r3]
|
||||
class = frappy_psi.ppms.BridgeChannel
|
||||
description = resistivity channel 3
|
||||
no = 3
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 3
|
||||
.no = 3
|
||||
value.unit = Ohm
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[r4]
|
||||
class = frappy_psi.ppms.BridgeChannel
|
||||
description = resistivity channel 4
|
||||
no = 4
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 4
|
||||
.no = 4
|
||||
value.unit = Ohm
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[i1]
|
||||
class = frappy_psi.ppms.Channel
|
||||
description = current channel 1
|
||||
no = 1
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 1
|
||||
.no = 1
|
||||
value.unit = uA
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[i2]
|
||||
class = frappy_psi.ppms.Channel
|
||||
description = current channel 2
|
||||
no = 2
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 2
|
||||
.no = 2
|
||||
value.unit = uA
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[i3]
|
||||
class = frappy_psi.ppms.Channel
|
||||
description = current channel 3
|
||||
no = 3
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 3
|
||||
.no = 3
|
||||
value.unit = uA
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[i4]
|
||||
class = frappy_psi.ppms.Channel
|
||||
description = current channel 4
|
||||
no = 4
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 4
|
||||
.no = 4
|
||||
value.unit = uA
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[v1]
|
||||
class = frappy_psi.ppms.DriverChannel
|
||||
description = voltage channel 1
|
||||
no = 1
|
||||
class = secop_psi.ppms.DriverChannel
|
||||
.description = voltage channel 1
|
||||
.no = 1
|
||||
value.unit = V
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[v2]
|
||||
class = frappy_psi.ppms.DriverChannel
|
||||
description = voltage channel 2
|
||||
no = 2
|
||||
class = secop_psi.ppms.DriverChannel
|
||||
.description = voltage channel 2
|
||||
.no = 2
|
||||
value.unit = V
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[tv]
|
||||
class = frappy_psi.ppms.UserChannel
|
||||
description = VTI temperature
|
||||
class = secop_psi.ppms.UserChannel
|
||||
.description = VTI temperature
|
||||
enabled = 1
|
||||
value.unit = K
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[ts]
|
||||
class = frappy_psi.ppms.UserChannel
|
||||
description = sample temperature
|
||||
class = secop_psi.ppms.UserChannel
|
||||
.description = sample temperature
|
||||
enabled = 1
|
||||
value.unit = K
|
||||
io = ppms
|
||||
.iodev = ppms
|
||||
|
||||
[ppms]
|
||||
class = frappy_psi.ppms.Main
|
||||
description = the main and poller module
|
||||
class_id = QD.MULTIVU.PPMS.1
|
||||
visibility = 3
|
||||
class = secop_psi.ppms.Main
|
||||
.description = the main and poller module
|
||||
.class_id = QD.MULTIVU.PPMS.1
|
||||
.visibility = 3
|
||||
pollinterval = 2
|
||||
|
124
cfg/ppms2.cfg
Normal file
124
cfg/ppms2.cfg
Normal file
@ -0,0 +1,124 @@
|
||||
[NODE]
|
||||
id = PPMS.psi.ch
|
||||
description = PPMS at PSI
|
||||
|
||||
[INTERFACE]
|
||||
uri = 5000
|
||||
|
||||
[tt]
|
||||
class = secop_psi.ppms.Temp
|
||||
description = main temperature
|
||||
iodev = ppms
|
||||
|
||||
[mf]
|
||||
class = secop_psi.ppms.Field
|
||||
target.min = -9
|
||||
target.max = 9
|
||||
.description = magnetic field
|
||||
.iodev = ppms
|
||||
|
||||
[pos]
|
||||
class = secop_psi.ppms.Position
|
||||
.description = sample rotator
|
||||
.iodev = ppms
|
||||
|
||||
[lev]
|
||||
class = secop_psi.ppms.Level
|
||||
.description = helium level
|
||||
.iodev = ppms
|
||||
|
||||
[chamber]
|
||||
class = secop_psi.ppms.Chamber
|
||||
.description = chamber state
|
||||
.iodev = ppms
|
||||
|
||||
[r1]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 1
|
||||
.no = 1
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[r2]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 2
|
||||
.no = 2
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[r3]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 3
|
||||
.no = 3
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[r4]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 4
|
||||
.no = 4
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[i1]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 1
|
||||
.no = 1
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[i2]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 2
|
||||
.no = 2
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[i3]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 3
|
||||
.no = 3
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[i4]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 4
|
||||
.no = 4
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[v1]
|
||||
class = secop_psi.ppms.DriverChannel
|
||||
.description = voltage channel 1
|
||||
.no = 1
|
||||
value.unit = V
|
||||
.iodev = ppms
|
||||
|
||||
[v2]
|
||||
class = secop_psi.ppms.DriverChannel
|
||||
.description = voltage channel 2
|
||||
.no = 2
|
||||
value.unit = V
|
||||
.iodev = ppms
|
||||
|
||||
[tv]
|
||||
class = secop_psi.ppms.UserChannel
|
||||
.description = VTI temperature
|
||||
enabled = 1
|
||||
value.unit = K
|
||||
.iodev = ppms
|
||||
|
||||
[ts]
|
||||
class = secop_psi.ppms.UserChannel
|
||||
.description = sample temperature
|
||||
enabled = 1
|
||||
value.unit = K
|
||||
.iodev = ppms
|
||||
|
||||
[ppms]
|
||||
class = secop_psi.ppms.Main
|
||||
.description = the main and poller module
|
||||
.class_id = QD.MULTIVU.PPMS.1
|
||||
.visibility = 3
|
||||
pollinterval = 2
|
@ -7,13 +7,13 @@ bindto = 0.0.0.0
|
||||
bindport = 5002
|
||||
|
||||
[module secnode]
|
||||
class = frappy.SecNode
|
||||
class = secop.SecNode
|
||||
description = a SEC node
|
||||
uri = tcp://localhost:5000
|
||||
|
||||
[module mf]
|
||||
class = frappy.Proxy
|
||||
remote_class = frappy_psi.ppms.Field
|
||||
class = secop.Proxy
|
||||
remote_class = secop_psi.ppms.Field
|
||||
description = magnetic field
|
||||
iodev = secnode
|
||||
value.min = -0.1
|
||||
|
124
cfg/ppmssim.cfg
Normal file
124
cfg/ppmssim.cfg
Normal file
@ -0,0 +1,124 @@
|
||||
[NODE]
|
||||
id = PPMS.psi.ch
|
||||
description = PPMS at PSI
|
||||
|
||||
[INTERFACE]
|
||||
uri = tcp://5000
|
||||
|
||||
[tt]
|
||||
class = secop_psi.ppms.Temp
|
||||
description = main temperature
|
||||
iodev = ppms
|
||||
|
||||
[mf]
|
||||
class = secop_psi.ppms.Field
|
||||
target.min = -9
|
||||
target.max = 9
|
||||
.description = magnetic field
|
||||
.iodev = ppms
|
||||
|
||||
[pos]
|
||||
class = secop_psi.ppms.Position
|
||||
.description = sample rotator
|
||||
.iodev = ppms
|
||||
|
||||
[lev]
|
||||
class = secop_psi.ppms.Level
|
||||
.description = helium level
|
||||
.iodev = ppms
|
||||
|
||||
[chamber]
|
||||
class = secop_psi.ppms.Chamber
|
||||
.description = chamber state
|
||||
.iodev = ppms
|
||||
|
||||
[r1]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 1
|
||||
.no = 1
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[r2]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 2
|
||||
.no = 2
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[r3]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 3
|
||||
.no = 3
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[r4]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 4
|
||||
.no = 4
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[i1]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 1
|
||||
.no = 1
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[i2]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 2
|
||||
.no = 2
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[i3]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 3
|
||||
.no = 3
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[i4]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 4
|
||||
.no = 4
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[v1]
|
||||
class = secop_psi.ppms.DriverChannel
|
||||
.description = voltage channel 1
|
||||
.no = 1
|
||||
value.unit = V
|
||||
.iodev = ppms
|
||||
|
||||
[v2]
|
||||
class = secop_psi.ppms.DriverChannel
|
||||
.description = voltage channel 2
|
||||
.no = 2
|
||||
value.unit = V
|
||||
.iodev = ppms
|
||||
|
||||
[tv]
|
||||
class = secop_psi.ppms.UserChannel
|
||||
.description = VTI temperature
|
||||
enabled = 1
|
||||
value.unit = K
|
||||
.iodev = ppms
|
||||
|
||||
[ts]
|
||||
class = secop_psi.ppms.UserChannel
|
||||
.description = sample temperature
|
||||
enabled = 1
|
||||
value.unit = K
|
||||
.iodev = ppms
|
||||
|
||||
[ppms]
|
||||
class = secop_psi.ppms.Main
|
||||
.description = the main and poller module
|
||||
.class_id = QD.MULTIVU.PPMS.1
|
||||
.visibility = 3
|
||||
pollinterval = 2
|
126
cfg/ppmswin.cfg
Normal file
126
cfg/ppmswin.cfg
Normal file
@ -0,0 +1,126 @@
|
||||
[NODE]
|
||||
id = PPMS.psi.ch
|
||||
description = PPMS at PSI
|
||||
|
||||
[INTERFACE]
|
||||
uri = tcp://5000
|
||||
|
||||
[tt]
|
||||
class = secop_psi.ppms.Temp
|
||||
description = main temperature
|
||||
iodev = ppms
|
||||
|
||||
[mf]
|
||||
class = secop_psi.ppms.Field
|
||||
target.min = -9
|
||||
target.max = 9
|
||||
.description = magnetic field
|
||||
.iodev = ppms
|
||||
|
||||
[pos]
|
||||
class = secop_psi.ppms.Position
|
||||
.description = sample rotator
|
||||
.iodev = ppms
|
||||
|
||||
[lev]
|
||||
class = secop_psi.ppms.Level
|
||||
.description = helium level
|
||||
.iodev = ppms
|
||||
|
||||
[chamber]
|
||||
class = secop_psi.ppms.Chamber
|
||||
.description = chamber state
|
||||
.iodev = ppms
|
||||
|
||||
[r1]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 1
|
||||
.no = 1
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[r2]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 2
|
||||
.no = 2
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[r3]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 3
|
||||
.no = 3
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[r4]
|
||||
class = secop_psi.ppms.BridgeChannel
|
||||
.description = resistivity channel 4
|
||||
.no = 4
|
||||
value.unit = Ohm
|
||||
.iodev = ppms
|
||||
|
||||
[i1]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 1
|
||||
.no = 1
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[i2]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 2
|
||||
.no = 2
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[i3]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 3
|
||||
.no = 3
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[i4]
|
||||
class = secop_psi.ppms.Channel
|
||||
.description = current channel 4
|
||||
.no = 4
|
||||
value.unit = uA
|
||||
.iodev = ppms
|
||||
|
||||
[v1]
|
||||
class = secop_psi.ppms.DriverChannel
|
||||
.description = voltage channel 1
|
||||
.no = 1
|
||||
value.unit = V
|
||||
.iodev = ppms
|
||||
|
||||
[v2]
|
||||
class = secop_psi.ppms.DriverChannel
|
||||
.description = voltage channel 2
|
||||
.no = 2
|
||||
value.unit = V
|
||||
.iodev = ppms
|
||||
|
||||
[tv]
|
||||
class = secop_psi.ppms.UserChannel
|
||||
.description = VTI temperature
|
||||
enabled = 0
|
||||
linkenable = ts
|
||||
value.unit = K
|
||||
.iodev = ppms
|
||||
|
||||
[ts]
|
||||
class = secop_psi.ppms.UserChannel
|
||||
.description = sample temperature
|
||||
enabled = 0
|
||||
linkenable = tv
|
||||
value.unit = K
|
||||
.iodev = ppms
|
||||
|
||||
[ppms]
|
||||
class = secop_psi.ppms.Main
|
||||
.description = the main and poller module
|
||||
.class_id = QD.MULTIVU.PPMS.1
|
||||
#.visibility = 3
|
||||
pollinterval = 2
|
23
cfg/prep2.cfg
Normal file
23
cfg/prep2.cfg
Normal file
@ -0,0 +1,23 @@
|
||||
[node ori1.psi.ch]
|
||||
description = ori1 over SEA
|
||||
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindport = 10767
|
||||
|
||||
[module seaconn]
|
||||
class = secop_psi.sea.SeaClient
|
||||
description = a SEA connection
|
||||
uri = tcp://samenv.psi.ch:8642
|
||||
|
||||
[module tt]
|
||||
class = secop_psi.sea.SeaDrivable
|
||||
iodev = seaconn
|
||||
json_descr = tt.ori1.config
|
||||
remote_paths = .
|
||||
|
||||
[module nv]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = nv.ori1.config
|
||||
remote_paths = .
|
119
cfg/prep5.cfg
Normal file
119
cfg/prep5.cfg
Normal file
@ -0,0 +1,119 @@
|
||||
[node ma11_dil4_ultrasound_sr.psi.ch]
|
||||
description = ma11_dil4_ultrasound_sr over SEA
|
||||
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindport = 10767
|
||||
|
||||
[module seaconn]
|
||||
class = secop_psi.sea.SeaClient
|
||||
description = a SEA connection
|
||||
uri = tcp://samenv.psi.ch:8645
|
||||
|
||||
[module tt]
|
||||
class = secop_psi.sea.SeaDrivable
|
||||
iodev = seaconn
|
||||
json_descr = tt.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module nv]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = nv.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module ln2fill]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = ln2fill.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module hefill]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = hefill.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module tcoil]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tcoil.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module table]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = table.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module lnv]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = lnv.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module lpr]
|
||||
class = secop_psi.sea.SeaDrivable
|
||||
iodev = seaconn
|
||||
json_descr = lpr.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module lambdawatch]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = lambdawatch.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module ts]
|
||||
class = secop_psi.sea.SeaDrivable
|
||||
iodev = seaconn
|
||||
json_descr = ts.dil4.stick
|
||||
remote_paths = .
|
||||
|
||||
[module treg]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = treg.dil4.stick
|
||||
remote_paths = .
|
||||
|
||||
[module tmon]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tmon.dil4.stick
|
||||
remote_paths = .
|
||||
|
||||
[module sorb]
|
||||
class = secop_psi.sea.SeaDrivable
|
||||
iodev = seaconn
|
||||
json_descr = sorb.dil4.stick
|
||||
remote_paths = .
|
||||
|
||||
[module ultrasound]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = ultrasound.ultrasound.addon
|
||||
remote_paths = .
|
||||
|
||||
[module fn]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = fn.ultrasound.addon
|
||||
remote_paths = .
|
||||
|
||||
[module mirror]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = mirror.ultrasound.addon
|
||||
remote_paths = .
|
||||
|
||||
[module f]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = f.ultrasound.addon
|
||||
remote_paths = .
|
||||
|
||||
[module pars]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = pars.ultrasound.addon
|
||||
remote_paths = .
|
65
cfg/prep6.cfg
Normal file
65
cfg/prep6.cfg
Normal file
@ -0,0 +1,65 @@
|
||||
[node varioxB_vb.psi.ch]
|
||||
description = varioxB_vb over SEA
|
||||
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindport = 10767
|
||||
|
||||
[module seaconn]
|
||||
class = secop_psi.sea.SeaClient
|
||||
description = a SEA connection
|
||||
uri = tcp://samenv.psi.ch:8646
|
||||
|
||||
[module tvs]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tvs.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tvd]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tvd.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module pstat]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = pstat.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module pdyn]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = pdyn.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tneck1]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tneck1.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tneck2]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tneck2.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tnvs]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tnvs.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tnvd]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tnvd.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module ts]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = ts.vb.stick
|
||||
remote_paths = .
|
35
cfg/sea.cfg
Normal file
35
cfg/sea.cfg
Normal file
@ -0,0 +1,35 @@
|
||||
[node seatest.psi.ch]
|
||||
description = SEA test
|
||||
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindto = 0.0.0.0
|
||||
bindport = 5002
|
||||
|
||||
[module seaconn]
|
||||
class = secop_psi.sea.SeaClient
|
||||
description = a SEA connection
|
||||
uri = tcp://samenv.psi.ch:8645
|
||||
|
||||
#[module t1]
|
||||
#class = secop_psi.sea.SeaDrivable
|
||||
#iodev = seaconn
|
||||
#json_descr = tt.flamp.config
|
||||
#remote_paths = . t1
|
||||
|
||||
#[module tw1]
|
||||
#class = secop_psi.sea.SeaReadable
|
||||
#iodev = seaconn
|
||||
#json_descr = wall.lampovenwall.addon
|
||||
#remote_paths = tw1
|
||||
|
||||
#[module pv]
|
||||
#class = secop_psi.sea.SeaReadable
|
||||
#iodev = seaconn
|
||||
#json_descr = pv.flamp.config
|
||||
|
||||
#[module mf]
|
||||
#class = secop.Proxy
|
||||
#remote_class = secop_psi.ppms.Field
|
||||
#description = magnetic field
|
||||
#iodev = secnode
|
7
cfg/sea/current.flamp.config.json
Normal file
7
cfg/sea/current.flamp.config.json
Normal file
@ -0,0 +1,7 @@
|
||||
["current", [{"path": "", "type": "float", "kids": 6},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "current send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "i1", "type": "float"},
|
||||
{"path": "i2", "type": "float"},
|
||||
{"path": "i3", "type": "float"},
|
||||
{"path": "i4", "type": "float"}]]
|
17
cfg/sea/f.ultrasound.addon.json
Normal file
17
cfg/sea/f.ultrasound.addon.json
Normal file
@ -0,0 +1,17 @@
|
||||
["f", [{"path": "", "type": "float", "description": "frequency@I,q [Hz]", "kids": 16},
|
||||
{"path": "status_text", "type": "text"},
|
||||
{"path": "status_code", "type": "enum", "enum": {"DISABLED": 0, "IDLE": 100, "WARN": 200, "UNSTABLE": 270, "ERROR": 400}, "description": "current status of the Module"},
|
||||
{"path": "basefreq", "type": "float", "readonly": false, "cmd": "f basefreq", "description": "base frequency [Hz]"},
|
||||
{"path": "nr", "type": "int", "description": "number of records"},
|
||||
{"path": "freq", "type": "float", "readonly": false, "cmd": "f freq", "description": "target frequency [Hz]"},
|
||||
{"path": "amp", "type": "float", "readonly": false, "cmd": "f amp", "description": "amplitude [dBm]"},
|
||||
{"path": "control", "type": "bool", "readonly": false, "cmd": "f control", "description": "control loop on?"},
|
||||
{"path": "time", "type": "float", "readonly": false, "cmd": "f time", "description": "pulse start time [nsec]"},
|
||||
{"path": "size", "type": "float", "readonly": false, "cmd": "f size", "description": "pulse length (starting from time) [nsec]"},
|
||||
{"path": "pulselen", "type": "float", "description": "adjusted pulse length (integer number of periods) [nsec]"},
|
||||
{"path": "maxstep", "type": "float", "readonly": false, "cmd": "f maxstep", "description": "max frequency step [Hz]"},
|
||||
{"path": "minstep", "type": "float", "readonly": false, "cmd": "f minstep", "description": "min frequency step for slope calculation [Hz]"},
|
||||
{"path": "slope", "type": "float", "readonly": false, "cmd": "f slope", "description": "inphase/frequency slope"},
|
||||
{"path": "plot", "type": "bool", "readonly": false, "cmd": "f plot", "description": "create plot images"},
|
||||
{"path": "save", "type": "bool", "readonly": false, "cmd": "f save", "description": "save data"},
|
||||
{"path": "pollinterval", "type": "float", "readonly": false, "cmd": "f pollinterval", "description": "sleeptime between polls"}]]
|
14
cfg/sea/fn.ultrasound.addon.json
Normal file
14
cfg/sea/fn.ultrasound.addon.json
Normal file
@ -0,0 +1,14 @@
|
||||
["fn", [{"path": "", "type": "float", "kids": 13},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "fn send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "remote", "type": "bool", "readonly": false, "cmd": "fn remote"},
|
||||
{"path": "waveform", "type": "text", "readonly": false, "cmd": "fn waveform"},
|
||||
{"path": "freq", "type": "float", "readonly": false, "cmd": "fn freq"},
|
||||
{"path": "volt", "type": "float", "readonly": false, "cmd": "fn volt"},
|
||||
{"path": "offset", "type": "float", "readonly": false, "cmd": "fn offset"},
|
||||
{"path": "width", "type": "float", "readonly": false, "cmd": "fn width"},
|
||||
{"path": "burstfreq", "type": "float", "readonly": false, "cmd": "fn burstfreq"},
|
||||
{"path": "burstvolt", "type": "float", "readonly": false, "cmd": "fn burstvolt"},
|
||||
{"path": "burstcycles", "type": "int", "readonly": false, "cmd": "fn burstcycles"},
|
||||
{"path": "burstperiod", "type": "float", "readonly": false, "cmd": "fn burstperiod"},
|
||||
{"path": "burst", "type": "enum", "enum": {"continuous": 0, "burst": 1, "off": 2}, "readonly": false, "cmd": "fn burst"}]]
|
17
cfg/sea/hefill.ma11.config.json
Normal file
17
cfg/sea/hefill.ma11.config.json
Normal file
@ -0,0 +1,17 @@
|
||||
["hefill", [{"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"}]]
|
7
cfg/sea/lambdawatch.ma11.config.json
Normal file
7
cfg/sea/lambdawatch.ma11.config.json
Normal file
@ -0,0 +1,7 @@
|
||||
["lambdawatch", [{"path": "", "type": "float", "kids": 6},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "lambdawatch send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "safefield", "type": "float", "readonly": false, "cmd": "lambdawatch safefield"},
|
||||
{"path": "maxfield", "type": "float", "readonly": false, "cmd": "lambdawatch maxfield"},
|
||||
{"path": "safetemp", "type": "float", "readonly": false, "cmd": "lambdawatch safetemp"},
|
||||
{"path": "coiltemp", "type": "text", "readonly": false, "cmd": "lambdawatch coiltemp"}]]
|
15
cfg/sea/ln2fill.ma11.config.json
Normal file
15
cfg/sea/ln2fill.ma11.config.json
Normal file
@ -0,0 +1,15 @@
|
||||
["ln2fill", [{"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"}]]
|
39
cfg/sea/lnv.ma11.config.json
Normal file
39
cfg/sea/lnv.ma11.config.json
Normal file
@ -0,0 +1,39 @@
|
||||
["lnv", [{"path": "", "type": "enum", "enum": {"off": 5, "fixed": 0, "controlling": 1, "close": 3, "open": 4}, "readonly": false, "cmd": "lnv", "kids": 12},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "lnv send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "lnv set"},
|
||||
{"path": "flowmax", "type": "float", "readonly": false, "cmd": "lnv flowmax"},
|
||||
{"path": "prop", "type": "float", "readonly": false, "cmd": "lnv prop"},
|
||||
{"path": "int", "type": "float", "readonly": false, "cmd": "lnv int"},
|
||||
{"path": "minpulse", "type": "enum", "enum": {"micro": 1, "short": 10, "long": 100}, "readonly": false, "cmd": "lnv minpulse", "description": "micro: 1 ms, short: 10 ms, long: 100 ms"},
|
||||
{"path": "tolerance", "type": "float", "readonly": false, "cmd": "lnv tolerance"},
|
||||
{"path": "speed", "type": "float"},
|
||||
{"path": "flow", "type": "float"},
|
||||
{"path": "pos", "type": "float", "kids": 2},
|
||||
{"path": "pos/norm", "type": "float", "readonly": false, "cmd": "lnv pos/norm"},
|
||||
{"path": "pos/max", "type": "float", "readonly": false, "cmd": "lnv pos/max"},
|
||||
{"path": "autoflow", "type": "none", "kids": 24},
|
||||
{"path": "autoflow/suspended", "type": "bool", "readonly": false, "cmd": "lnv autoflow/suspended"},
|
||||
{"path": "autoflow/prop", "type": "float", "readonly": false, "cmd": "lnv autoflow/prop"},
|
||||
{"path": "autoflow/flowstd", "type": "float", "readonly": false, "cmd": "lnv autoflow/flowstd"},
|
||||
{"path": "autoflow/flowlim", "type": "float", "readonly": false, "cmd": "lnv autoflow/flowlim"},
|
||||
{"path": "autoflow/smooth", "type": "float", "readonly": false, "cmd": "lnv autoflow/smooth"},
|
||||
{"path": "autoflow/difSize", "type": "float", "readonly": false, "cmd": "lnv autoflow/difSize"},
|
||||
{"path": "autoflow/difRange", "type": "float", "readonly": false, "cmd": "lnv autoflow/difRange"},
|
||||
{"path": "autoflow/flowSize", "type": "float", "readonly": false, "cmd": "lnv autoflow/flowSize"},
|
||||
{"path": "autoflow/convTime", "type": "float", "readonly": false, "cmd": "lnv autoflow/convTime"},
|
||||
{"path": "autoflow/Tmin", "type": "float", "readonly": false, "cmd": "lnv autoflow/Tmin"},
|
||||
{"path": "autoflow/script", "type": "text", "readonly": false, "cmd": "lnv autoflow/script"},
|
||||
{"path": "autoflow/getTemp", "type": "text", "readonly": false, "cmd": "lnv autoflow/getTemp"},
|
||||
{"path": "autoflow/getTset", "type": "text", "readonly": false, "cmd": "lnv autoflow/getTset"},
|
||||
{"path": "autoflow/getFlow", "type": "text", "readonly": false, "cmd": "lnv 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"}]]
|
29
cfg/sea/lpr.ma11.config.json
Normal file
29
cfg/sea/lpr.ma11.config.json
Normal file
@ -0,0 +1,29 @@
|
||||
["lpr", [{"path": "", "type": "float", "readonly": false, "cmd": "run lpr", "description": "lpr", "kids": 28},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "lpr send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "is_running", "type": "int", "visibility": 3},
|
||||
{"path": "mode", "type": "enum", "enum": {"off": 0, "on": 1}, "readonly": false, "cmd": "lpr mode"},
|
||||
{"path": "reg", "type": "float"},
|
||||
{"path": "output", "type": "float", "readonly": false, "cmd": "lpr output"},
|
||||
{"path": "ramptime", "type": "float", "readonly": false, "cmd": "lpr ramptime", "description": "time for ramping [sec] deltax = 1 or a factor 10"},
|
||||
{"path": "ramptol", "type": "float", "readonly": false, "cmd": "lpr ramptol", "description": "log of max. deviation when ramping"},
|
||||
{"path": "smoothtime", "type": "float", "readonly": false, "cmd": "lpr smoothtime", "description": "time for smoothing ramp near setpoint"},
|
||||
{"path": "invar", "type": "text", "readonly": false, "cmd": "lpr invar", "visibility": 3},
|
||||
{"path": "outvar", "type": "text", "readonly": false, "cmd": "lpr outvar", "visibility": 3},
|
||||
{"path": "prop", "type": "float", "readonly": false, "cmd": "lpr prop", "description": "smaller means more sensitive. a change of 'prop' on input -> a change of 100 % or a factor 10 on output"},
|
||||
{"path": "int", "type": "float", "readonly": false, "cmd": "lpr int", "description": "integration time (sec)"},
|
||||
{"path": "outmin", "type": "float", "readonly": false, "cmd": "lpr outmin", "description": "output for maximal decrease of input var."},
|
||||
{"path": "outmax", "type": "float", "readonly": false, "cmd": "lpr outmax", "description": "output for maximal increase of input var."},
|
||||
{"path": "inpfunction", "type": "enum", "enum": {"linear": 0, "logarithmic": 1}, "readonly": false, "cmd": "lpr inpfunction"},
|
||||
{"path": "inplinear", "type": "float", "readonly": false, "cmd": "lpr inplinear", "description": "function gets linear below about this value"},
|
||||
{"path": "outfunction", "type": "enum", "enum": {"linear": 0, "exponential": 1}, "readonly": false, "cmd": "lpr outfunction"},
|
||||
{"path": "outlinear", "type": "float", "readonly": false, "cmd": "lpr outlinear", "description": "function gets linear below about this value"},
|
||||
{"path": "precision", "type": "float", "readonly": false, "cmd": "lpr precision"},
|
||||
{"path": "deadband", "type": "float", "readonly": false, "cmd": "lpr deadband"},
|
||||
{"path": "maxdelta", "type": "float", "readonly": false, "cmd": "lpr maxdelta"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "lpr set"},
|
||||
{"path": "target", "type": "float"},
|
||||
{"path": "running", "type": "int"},
|
||||
{"path": "tolerance", "type": "float", "readonly": false, "cmd": "lpr tolerance"},
|
||||
{"path": "maxwait", "type": "float", "readonly": false, "cmd": "lpr maxwait"},
|
||||
{"path": "settle", "type": "float", "readonly": false, "cmd": "lpr settle"}]]
|
119
cfg/sea/ma11_dil4_ultrasound_sr.cfg
Normal file
119
cfg/sea/ma11_dil4_ultrasound_sr.cfg
Normal file
@ -0,0 +1,119 @@
|
||||
[node ma11_dil4_ultrasound_sr.psi.ch]
|
||||
description = ma11_dil4_ultrasound_sr over SEA
|
||||
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindport = 10767
|
||||
|
||||
[module seaconn]
|
||||
class = secop_psi.sea.SeaClient
|
||||
description = a SEA connection
|
||||
uri = tcp://samenv.psi.ch:8645
|
||||
|
||||
[module tt]
|
||||
class = secop_psi.sea.SeaDrivable
|
||||
iodev = seaconn
|
||||
json_descr = tt.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module nv]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = nv.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module ln2fill]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = ln2fill.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module hefill]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = hefill.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module tcoil]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tcoil.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module table]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = table.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module lnv]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = lnv.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module lpr]
|
||||
class = secop_psi.sea.SeaDrivable
|
||||
iodev = seaconn
|
||||
json_descr = lpr.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module lambdawatch]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = lambdawatch.ma11.config
|
||||
remote_paths = .
|
||||
|
||||
[module ts]
|
||||
class = secop_psi.sea.SeaDrivable
|
||||
iodev = seaconn
|
||||
json_descr = ts.dil4.stick
|
||||
remote_paths = .
|
||||
|
||||
[module treg]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = treg.dil4.stick
|
||||
remote_paths = .
|
||||
|
||||
[module tmon]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tmon.dil4.stick
|
||||
remote_paths = .
|
||||
|
||||
[module sorb]
|
||||
class = secop_psi.sea.SeaDrivable
|
||||
iodev = seaconn
|
||||
json_descr = sorb.dil4.stick
|
||||
remote_paths = .
|
||||
|
||||
[module ultrasound]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = ultrasound.ultrasound.addon
|
||||
remote_paths = .
|
||||
|
||||
[module fn]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = fn.ultrasound.addon
|
||||
remote_paths = .
|
||||
|
||||
[module mirror]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = mirror.ultrasound.addon
|
||||
remote_paths = .
|
||||
|
||||
[module f]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = f.ultrasound.addon
|
||||
remote_paths = .
|
||||
|
||||
[module pars]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = pars.ultrasound.addon
|
||||
remote_paths = .
|
35
cfg/sea/mf.mb11.config.json
Normal file
35
cfg/sea/mf.mb11.config.json
Normal file
@ -0,0 +1,35 @@
|
||||
["mf", [{"path": "", "type": "float", "readonly": false, "cmd": "run mf", "kids": 8},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "mf send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "is_running", "type": "int", "visibility": 3},
|
||||
{"path": "statustext", "type": "text"},
|
||||
{"path": "ramp", "type": "float", "readonly": false, "cmd": "mf ramp"},
|
||||
{"path": "persistent_mode", "type": "enum", "enum": {"off": 0, "on": 1}, "readonly": false, "cmd": "mf persistent_mode", "description": "hidden mode -1: completely off"},
|
||||
{"path": "gen", "type": "none", "kids": 13},
|
||||
{"path": "gen/persistent_delay", "type": "float", "readonly": false, "cmd": "mf gen/persistent_delay", "description": "timeout for going automatically into persistent mode"},
|
||||
{"path": "gen/tolerance", "type": "float", "readonly": false, "cmd": "mf gen/tolerance"},
|
||||
{"path": "gen/wait_switch_on", "type": "float", "readonly": false, "cmd": "mf gen/wait_switch_on"},
|
||||
{"path": "gen/wait_switch_off", "type": "float", "readonly": false, "cmd": "mf gen/wait_switch_off"},
|
||||
{"path": "gen/wait_stable_leads", "type": "float", "readonly": false, "cmd": "mf gen/wait_stable_leads"},
|
||||
{"path": "gen/wait_stable_field", "type": "float", "readonly": false, "cmd": "mf gen/wait_stable_field"},
|
||||
{"path": "gen/expectend", "type": "text"},
|
||||
{"path": "gen/trained_pos", "type": "float", "readonly": false, "cmd": "mf gen/trained_pos"},
|
||||
{"path": "gen/trained_neg", "type": "float", "readonly": false, "cmd": "mf gen/trained_neg"},
|
||||
{"path": "gen/profile", "type": "text", "readonly": false, "cmd": "mf gen/profile", "description": "syntax: <field1>:<ramp1> <field2>:<ramp2> ... (<ramp2> is the ramp limit from <field1> to <field2>)"},
|
||||
{"path": "gen/profile_training", "type": "text", "readonly": false, "cmd": "mf gen/profile_training", "description": "syntax: <field1>:<ramp1> <field2>:<ramp2> ... (<ramp2> is the ramp limit from <field1> to <field2>)"},
|
||||
{"path": "gen/limit", "type": "float", "readonly": false, "cmd": "mf gen/limit"},
|
||||
{"path": "gen/bipolar", "type": "bool", "readonly": false, "cmd": "mf gen/bipolar"},
|
||||
{"path": "ips", "type": "float", "kids": 13},
|
||||
{"path": "ips/ramp_slow", "type": "float", "readonly": false, "cmd": "mf ips/ramp_slow", "description": "ramp rate for coils Tesla/min."},
|
||||
{"path": "ips/ramp_fast", "type": "float", "description": "ramp rate for leads Tesla/min."},
|
||||
{"path": "ips/set_field", "type": "float", "readonly": false, "cmd": "mf ips/set_field"},
|
||||
{"path": "ips/heater", "type": "bool", "readonly": false, "cmd": "mf ips/heater"},
|
||||
{"path": "ips/ramp_state", "type": "enum", "enum": {"hold": 0, "to_zero": 1, "to_set": 2, "clamp": 3}, "readonly": false, "cmd": "mf ips/ramp_state"},
|
||||
{"path": "ips/leads_set", "type": "float", "description": "calculated current in the leads, converted to Tesla"},
|
||||
{"path": "ips/show_internals", "type": "bool", "readonly": false, "cmd": "mf ips/show_internals"},
|
||||
{"path": "ips/leads_meas", "type": "float", "description": "measured current in the leads, converted to Tesla"},
|
||||
{"path": "ips/volt", "type": "float"},
|
||||
{"path": "ips/symode", "type": "text"},
|
||||
{"path": "ips/engineering_password", "type": "text", "readonly": false, "cmd": "mf ips/engineering_password"},
|
||||
{"path": "ips/atob", "type": "float", "readonly": false, "cmd": "mf ips/atob", "description": "Amp/Tesla"},
|
||||
{"path": "ips/inductance", "type": "float", "readonly": false, "cmd": "mf ips/inductance", "description": "henries"}]]
|
3
cfg/sea/mirror.ultrasound.addon.json
Normal file
3
cfg/sea/mirror.ultrasound.addon.json
Normal file
@ -0,0 +1,3 @@
|
||||
["mirror", [{"path": "", "type": "text", "readonly": false, "cmd": "mirror", "kids": 2},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "mirror send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3}]]
|
51
cfg/sea/nv.ma11.config.json
Normal file
51
cfg/sea/nv.ma11.config.json
Normal file
@ -0,0 +1,51 @@
|
||||
["nv", [{"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"}]]
|
51
cfg/sea/nv.ori1.config.json
Normal file
51
cfg/sea/nv.ori1.config.json
Normal file
@ -0,0 +1,51 @@
|
||||
["nv", [{"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"}]]
|
23
cfg/sea/ori1.cfg
Normal file
23
cfg/sea/ori1.cfg
Normal file
@ -0,0 +1,23 @@
|
||||
[node ori1.psi.ch]
|
||||
description = ori1 over SEA
|
||||
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindport = 10767
|
||||
|
||||
[module seaconn]
|
||||
class = secop_psi.sea.SeaClient
|
||||
description = a SEA connection
|
||||
uri = tcp://samenv.psi.ch:8642
|
||||
|
||||
[module tt]
|
||||
class = secop_psi.sea.SeaDrivable
|
||||
iodev = seaconn
|
||||
json_descr = tt.ori1.config
|
||||
remote_paths = .
|
||||
|
||||
[module nv]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = nv.ori1.config
|
||||
remote_paths = .
|
5
cfg/sea/pars.ultrasound.addon.json
Normal file
5
cfg/sea/pars.ultrasound.addon.json
Normal file
@ -0,0 +1,5 @@
|
||||
["pars", [{"path": "", "type": "none", "kids": 4},
|
||||
{"path": "timestamp", "type": "text", "readonly": false, "cmd": "pars timestamp", "description": "unix timestamp"},
|
||||
{"path": "temperature", "type": "float", "readonly": false, "cmd": "pars temperature", "description": "T [K]"},
|
||||
{"path": "mf", "type": "float", "readonly": false, "cmd": "pars mf", "description": "field [T]"},
|
||||
{"path": "sr", "type": "float", "readonly": false, "cmd": "pars sr", "description": "rotaion angle [deg]"}]]
|
6
cfg/sea/pdyn.mb11.config.json
Normal file
6
cfg/sea/pdyn.mb11.config.json
Normal file
@ -0,0 +1,6 @@
|
||||
["pdyn", [{"path": "", "type": "float", "kids": 5},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "pdyn send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "pdyn set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "pdyn control"},
|
||||
{"path": "pos", "type": "float"}]]
|
6
cfg/sea/pdyn.varioxB.config.json
Normal file
6
cfg/sea/pdyn.varioxB.config.json
Normal file
@ -0,0 +1,6 @@
|
||||
["pdyn", [{"path": "", "type": "float", "kids": 5},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "pdyn send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "pdyn set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "pdyn control"},
|
||||
{"path": "pos", "type": "float"}]]
|
6
cfg/sea/pstat.mb11.config.json
Normal file
6
cfg/sea/pstat.mb11.config.json
Normal file
@ -0,0 +1,6 @@
|
||||
["pstat", [{"path": "", "type": "float", "kids": 5},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "pstat send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "pstat set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "pstat control"},
|
||||
{"path": "pos", "type": "float"}]]
|
6
cfg/sea/pstat.varioxB.config.json
Normal file
6
cfg/sea/pstat.varioxB.config.json
Normal file
@ -0,0 +1,6 @@
|
||||
["pstat", [{"path": "", "type": "float", "kids": 5},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "pstat send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "pstat set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "pstat control"},
|
||||
{"path": "pos", "type": "float"}]]
|
6
cfg/sea/pv.flamp.config.json
Normal file
6
cfg/sea/pv.flamp.config.json
Normal file
@ -0,0 +1,6 @@
|
||||
["pv", [{"path": "", "type": "float", "kids": 5},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "pv send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "sp1", "type": "text"},
|
||||
{"path": "sp2", "type": "text"},
|
||||
{"path": "sps", "type": "text"}]]
|
3
cfg/sea/secop.test_secop4.config.json
Normal file
3
cfg/sea/secop.test_secop4.config.json
Normal file
@ -0,0 +1,3 @@
|
||||
["secop", [{"path": "", "type": "text", "readonly": false, "cmd": "secop", "kids": 2},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "secop send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3}]]
|
29
cfg/sea/sorb.dil4.stick.json
Normal file
29
cfg/sea/sorb.dil4.stick.json
Normal file
@ -0,0 +1,29 @@
|
||||
["sorb", [{"path": "", "type": "float", "readonly": false, "cmd": "run sorb", "description": "sorb", "kids": 28},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "sorb send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "is_running", "type": "int", "visibility": 3},
|
||||
{"path": "mode", "type": "enum", "enum": {"off": 0, "on": 1}, "readonly": false, "cmd": "sorb mode"},
|
||||
{"path": "reg", "type": "float"},
|
||||
{"path": "output", "type": "float", "readonly": false, "cmd": "sorb output"},
|
||||
{"path": "ramptime", "type": "float", "readonly": false, "cmd": "sorb ramptime", "description": "time for ramping [sec] deltax = 1 or a factor 10"},
|
||||
{"path": "ramptol", "type": "float", "readonly": false, "cmd": "sorb ramptol", "description": "log of max. deviation when ramping"},
|
||||
{"path": "smoothtime", "type": "float", "readonly": false, "cmd": "sorb smoothtime", "description": "time for smoothing ramp near setpoint"},
|
||||
{"path": "invar", "type": "text", "readonly": false, "cmd": "sorb invar", "visibility": 3},
|
||||
{"path": "outvar", "type": "text", "readonly": false, "cmd": "sorb outvar", "visibility": 3},
|
||||
{"path": "prop", "type": "float", "readonly": false, "cmd": "sorb prop", "description": "smaller means more sensitive. a change of 'prop' on input -> a change of 100 % or a factor 10 on output"},
|
||||
{"path": "int", "type": "float", "readonly": false, "cmd": "sorb int", "description": "integration time (sec)"},
|
||||
{"path": "outmin", "type": "float", "readonly": false, "cmd": "sorb outmin", "description": "output for maximal decrease of input var."},
|
||||
{"path": "outmax", "type": "float", "readonly": false, "cmd": "sorb outmax", "description": "output for maximal increase of input var."},
|
||||
{"path": "inpfunction", "type": "enum", "enum": {"linear": 0, "logarithmic": 1}, "readonly": false, "cmd": "sorb inpfunction"},
|
||||
{"path": "inplinear", "type": "float", "readonly": false, "cmd": "sorb inplinear", "description": "function gets linear below about this value"},
|
||||
{"path": "outfunction", "type": "enum", "enum": {"linear": 0, "exponential": 1}, "readonly": false, "cmd": "sorb outfunction"},
|
||||
{"path": "outlinear", "type": "float", "readonly": false, "cmd": "sorb outlinear", "description": "function gets linear below about this value"},
|
||||
{"path": "precision", "type": "float", "readonly": false, "cmd": "sorb precision"},
|
||||
{"path": "deadband", "type": "float", "readonly": false, "cmd": "sorb deadband"},
|
||||
{"path": "maxdelta", "type": "float", "readonly": false, "cmd": "sorb maxdelta"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "sorb set"},
|
||||
{"path": "target", "type": "float"},
|
||||
{"path": "running", "type": "int"},
|
||||
{"path": "tolerance", "type": "float", "readonly": false, "cmd": "sorb tolerance"},
|
||||
{"path": "maxwait", "type": "float", "readonly": false, "cmd": "sorb maxwait"},
|
||||
{"path": "settle", "type": "float", "readonly": false, "cmd": "sorb settle"}]]
|
18
cfg/sea/table.ma11.config.json
Normal file
18
cfg/sea/table.ma11.config.json
Normal file
@ -0,0 +1,18 @@
|
||||
["table", [{"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 ..."}]]
|
42
cfg/sea/tcoil.ma11.config.json
Normal file
42
cfg/sea/tcoil.ma11.config.json
Normal file
@ -0,0 +1,42 @@
|
||||
["tcoil", [{"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": "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": "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": "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": "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": "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": "ext", "type": "float", "visibility": 3},
|
||||
{"path": "com", "type": "float", "visibility": 3},
|
||||
{"path": "gnd", "type": "float", "visibility": 3}]]
|
4
cfg/sea/tcoil.mb11.config.json
Normal file
4
cfg/sea/tcoil.mb11.config.json
Normal file
@ -0,0 +1,4 @@
|
||||
["tcoil", [{"path": "", "type": "float", "kids": 3},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tcoil send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"}]]
|
17
cfg/sea/test_secop4.cfg
Normal file
17
cfg/sea/test_secop4.cfg
Normal file
@ -0,0 +1,17 @@
|
||||
[node test_secop4.psi.ch]
|
||||
description = test_secop4 over SEA
|
||||
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindport = 10767
|
||||
|
||||
[module seaconn]
|
||||
class = secop_psi.sea.SeaClient
|
||||
description = a SEA connection
|
||||
uri = tcp://samenv.psi.ch:8642
|
||||
|
||||
[module secop]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = secop.test_secop4.config
|
||||
remote_paths = .
|
107
cfg/sea/tmon.dil4.stick.json
Normal file
107
cfg/sea/tmon.dil4.stick.json
Normal file
@ -0,0 +1,107 @@
|
||||
["tmon", [{"path": "", "type": "int", "kids": 12},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tmon send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "autoscan", "type": "bool", "readonly": false, "cmd": "tmon autoscan", "kids": 4},
|
||||
{"path": "autoscan/synchronized", "type": "bool", "readonly": false, "cmd": "tmon autoscan/synchronized"},
|
||||
{"path": "autoscan/interval", "type": "text", "readonly": false, "cmd": "tmon autoscan/interval"},
|
||||
{"path": "autoscan/pause", "type": "text", "readonly": false, "cmd": "tmon autoscan/pause"},
|
||||
{"path": "autoscan/dwell", "type": "text", "readonly": false, "cmd": "tmon autoscan/dwell"},
|
||||
{"path": "sorb", "type": "float", "kids": 14},
|
||||
{"path": "sorb/active", "type": "enum", "enum": {"inactive": 0, "active": 1}, "readonly": false, "cmd": "tmon sorb/active"},
|
||||
{"path": "sorb/autorange", "type": "bool", "readonly": false, "cmd": "tmon sorb/autorange", "description": "autorange (common for all channels)"},
|
||||
{"path": "sorb/range", "type": "text", "readonly": false, "cmd": "tmon sorb/range", "description": "resistance range in Ohm"},
|
||||
{"path": "sorb/range_num", "type": "int"},
|
||||
{"path": "sorb/excitation", "type": "text", "readonly": false, "cmd": "tmon sorb/excitation", "description": "excitation with unit, i.e. 2uV or 3pA"},
|
||||
{"path": "sorb/excitation_num", "type": "int"},
|
||||
{"path": "sorb/excitation_mode", "type": "enum", "enum": {"voltage": 0, "current": 1, "off": 2}},
|
||||
{"path": "sorb/pause", "type": "int", "readonly": false, "cmd": "tmon sorb/pause", "description": "pause time [sec] after channel change"},
|
||||
{"path": "sorb/filter", "type": "int", "readonly": false, "cmd": "tmon sorb/filter", "description": "filter average time [sec]"},
|
||||
{"path": "sorb/dwell", "type": "int", "readonly": false, "cmd": "tmon sorb/dwell", "description": "dwell time [sec]. Total time per channel: pause + filter + dwell"},
|
||||
{"path": "sorb/status", "type": "text"},
|
||||
{"path": "sorb/curve", "type": "text", "readonly": false, "cmd": "tmon sorb/curve", "kids": 1},
|
||||
{"path": "sorb/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tmon sorb/curve/points", "visibility": 3},
|
||||
{"path": "sorb/alarm", "type": "float", "readonly": false, "cmd": "tmon sorb/alarm"},
|
||||
{"path": "sorb/raw", "type": "float"},
|
||||
{"path": "onek", "type": "float", "kids": 14},
|
||||
{"path": "onek/active", "type": "enum", "enum": {"inactive": 0, "active": 1}, "readonly": false, "cmd": "tmon onek/active"},
|
||||
{"path": "onek/autorange", "type": "bool", "readonly": false, "cmd": "tmon onek/autorange", "description": "autorange (common for all channels)"},
|
||||
{"path": "onek/range", "type": "text", "readonly": false, "cmd": "tmon onek/range", "description": "resistance range in Ohm"},
|
||||
{"path": "onek/range_num", "type": "int"},
|
||||
{"path": "onek/excitation", "type": "text", "readonly": false, "cmd": "tmon onek/excitation", "description": "excitation with unit, i.e. 2uV or 3pA"},
|
||||
{"path": "onek/excitation_num", "type": "int"},
|
||||
{"path": "onek/excitation_mode", "type": "enum", "enum": {"voltage": 0, "current": 1, "off": 2}},
|
||||
{"path": "onek/pause", "type": "int", "readonly": false, "cmd": "tmon onek/pause", "description": "pause time [sec] after channel change"},
|
||||
{"path": "onek/filter", "type": "int", "readonly": false, "cmd": "tmon onek/filter", "description": "filter average time [sec]"},
|
||||
{"path": "onek/dwell", "type": "int", "readonly": false, "cmd": "tmon onek/dwell", "description": "dwell time [sec]. Total time per channel: pause + filter + dwell"},
|
||||
{"path": "onek/status", "type": "text"},
|
||||
{"path": "onek/curve", "type": "text", "readonly": false, "cmd": "tmon onek/curve", "kids": 1},
|
||||
{"path": "onek/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tmon onek/curve/points", "visibility": 3},
|
||||
{"path": "onek/alarm", "type": "float", "readonly": false, "cmd": "tmon onek/alarm"},
|
||||
{"path": "onek/raw", "type": "float"},
|
||||
{"path": "stillt", "type": "float", "kids": 14},
|
||||
{"path": "stillt/active", "type": "enum", "enum": {"inactive": 0, "active": 1}, "readonly": false, "cmd": "tmon stillt/active"},
|
||||
{"path": "stillt/autorange", "type": "bool", "readonly": false, "cmd": "tmon stillt/autorange", "description": "autorange (common for all channels)"},
|
||||
{"path": "stillt/range", "type": "text", "readonly": false, "cmd": "tmon stillt/range", "description": "resistance range in Ohm"},
|
||||
{"path": "stillt/range_num", "type": "int"},
|
||||
{"path": "stillt/excitation", "type": "text", "readonly": false, "cmd": "tmon stillt/excitation", "description": "excitation with unit, i.e. 2uV or 3pA"},
|
||||
{"path": "stillt/excitation_num", "type": "int"},
|
||||
{"path": "stillt/excitation_mode", "type": "enum", "enum": {"voltage": 0, "current": 1, "off": 2}},
|
||||
{"path": "stillt/pause", "type": "int", "readonly": false, "cmd": "tmon stillt/pause", "description": "pause time [sec] after channel change"},
|
||||
{"path": "stillt/filter", "type": "int", "readonly": false, "cmd": "tmon stillt/filter", "description": "filter average time [sec]"},
|
||||
{"path": "stillt/dwell", "type": "int", "readonly": false, "cmd": "tmon stillt/dwell", "description": "dwell time [sec]. Total time per channel: pause + filter + dwell"},
|
||||
{"path": "stillt/status", "type": "text"},
|
||||
{"path": "stillt/curve", "type": "text", "readonly": false, "cmd": "tmon stillt/curve", "kids": 1},
|
||||
{"path": "stillt/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tmon stillt/curve/points", "visibility": 3},
|
||||
{"path": "stillt/alarm", "type": "float", "readonly": false, "cmd": "tmon stillt/alarm"},
|
||||
{"path": "stillt/raw", "type": "float"},
|
||||
{"path": "sample", "type": "float", "kids": 14},
|
||||
{"path": "sample/active", "type": "enum", "enum": {"inactive": 0, "active": 1}, "readonly": false, "cmd": "tmon sample/active"},
|
||||
{"path": "sample/autorange", "type": "bool", "readonly": false, "cmd": "tmon sample/autorange", "description": "autorange (common for all channels)"},
|
||||
{"path": "sample/range", "type": "text", "readonly": false, "cmd": "tmon sample/range", "description": "resistance range in Ohm"},
|
||||
{"path": "sample/range_num", "type": "int"},
|
||||
{"path": "sample/excitation", "type": "text", "readonly": false, "cmd": "tmon sample/excitation", "description": "excitation with unit, i.e. 2uV or 3pA"},
|
||||
{"path": "sample/excitation_num", "type": "int"},
|
||||
{"path": "sample/excitation_mode", "type": "enum", "enum": {"voltage": 0, "current": 1, "off": 2}},
|
||||
{"path": "sample/pause", "type": "int", "readonly": false, "cmd": "tmon sample/pause", "description": "pause time [sec] after channel change"},
|
||||
{"path": "sample/filter", "type": "int", "readonly": false, "cmd": "tmon sample/filter", "description": "filter average time [sec]"},
|
||||
{"path": "sample/dwell", "type": "int", "readonly": false, "cmd": "tmon sample/dwell", "description": "dwell time [sec]. Total time per channel: pause + filter + dwell"},
|
||||
{"path": "sample/status", "type": "text"},
|
||||
{"path": "sample/curve", "type": "text", "readonly": false, "cmd": "tmon sample/curve", "kids": 1},
|
||||
{"path": "sample/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tmon sample/curve/points", "visibility": 3},
|
||||
{"path": "sample/alarm", "type": "float", "readonly": false, "cmd": "tmon sample/alarm"},
|
||||
{"path": "sample/raw", "type": "float"},
|
||||
{"path": "samplehtr", "type": "float", "kids": 14},
|
||||
{"path": "samplehtr/active", "type": "enum", "enum": {"inactive": 0, "active": 1}, "readonly": false, "cmd": "tmon samplehtr/active"},
|
||||
{"path": "samplehtr/autorange", "type": "bool", "readonly": false, "cmd": "tmon samplehtr/autorange", "description": "autorange (common for all channels)"},
|
||||
{"path": "samplehtr/range", "type": "text", "readonly": false, "cmd": "tmon samplehtr/range", "description": "resistance range in Ohm"},
|
||||
{"path": "samplehtr/range_num", "type": "int"},
|
||||
{"path": "samplehtr/excitation", "type": "text", "readonly": false, "cmd": "tmon samplehtr/excitation", "description": "excitation with unit, i.e. 2uV or 3pA"},
|
||||
{"path": "samplehtr/excitation_num", "type": "int"},
|
||||
{"path": "samplehtr/excitation_mode", "type": "enum", "enum": {"voltage": 0, "current": 1, "off": 2}},
|
||||
{"path": "samplehtr/pause", "type": "int", "readonly": false, "cmd": "tmon samplehtr/pause", "description": "pause time [sec] after channel change"},
|
||||
{"path": "samplehtr/filter", "type": "int", "readonly": false, "cmd": "tmon samplehtr/filter", "description": "filter average time [sec]"},
|
||||
{"path": "samplehtr/dwell", "type": "int", "readonly": false, "cmd": "tmon samplehtr/dwell", "description": "dwell time [sec]. Total time per channel: pause + filter + dwell"},
|
||||
{"path": "samplehtr/status", "type": "text"},
|
||||
{"path": "samplehtr/curve", "type": "text", "readonly": false, "cmd": "tmon samplehtr/curve", "kids": 1},
|
||||
{"path": "samplehtr/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tmon samplehtr/curve/points", "visibility": 3},
|
||||
{"path": "samplehtr/alarm", "type": "float", "readonly": false, "cmd": "tmon samplehtr/alarm"},
|
||||
{"path": "samplehtr/raw", "type": "float"},
|
||||
{"path": "mix", "type": "float", "kids": 14},
|
||||
{"path": "mix/active", "type": "enum", "enum": {"inactive": 0, "active": 1}, "readonly": false, "cmd": "tmon mix/active"},
|
||||
{"path": "mix/autorange", "type": "bool", "readonly": false, "cmd": "tmon mix/autorange", "description": "autorange (common for all channels)"},
|
||||
{"path": "mix/range", "type": "text", "readonly": false, "cmd": "tmon mix/range", "description": "resistance range in Ohm"},
|
||||
{"path": "mix/range_num", "type": "int"},
|
||||
{"path": "mix/excitation", "type": "text", "readonly": false, "cmd": "tmon mix/excitation", "description": "excitation with unit, i.e. 2uV or 3pA"},
|
||||
{"path": "mix/excitation_num", "type": "int"},
|
||||
{"path": "mix/excitation_mode", "type": "enum", "enum": {"voltage": 0, "current": 1, "off": 2}},
|
||||
{"path": "mix/pause", "type": "int", "readonly": false, "cmd": "tmon mix/pause", "description": "pause time [sec] after channel change"},
|
||||
{"path": "mix/filter", "type": "int", "readonly": false, "cmd": "tmon mix/filter", "description": "filter average time [sec]"},
|
||||
{"path": "mix/dwell", "type": "int", "readonly": false, "cmd": "tmon mix/dwell", "description": "dwell time [sec]. Total time per channel: pause + filter + dwell"},
|
||||
{"path": "mix/status", "type": "text"},
|
||||
{"path": "mix/curve", "type": "text", "readonly": false, "cmd": "tmon mix/curve", "kids": 1},
|
||||
{"path": "mix/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tmon mix/curve/points", "visibility": 3},
|
||||
{"path": "mix/alarm", "type": "float", "readonly": false, "cmd": "tmon mix/alarm"},
|
||||
{"path": "mix/raw", "type": "float"},
|
||||
{"path": "analog2", "type": "float", "readonly": false, "cmd": "tmon analog2"},
|
||||
{"path": "remote", "type": "bool"},
|
||||
{"path": "display", "type": "text", "readonly": false, "cmd": "tmon display"}]]
|
4
cfg/sea/tneck1.mb11.config.json
Normal file
4
cfg/sea/tneck1.mb11.config.json
Normal file
@ -0,0 +1,4 @@
|
||||
["tneck1", [{"path": "", "type": "float", "kids": 3},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tneck1 send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"}]]
|
8
cfg/sea/tneck1.varioxB.config.json
Normal file
8
cfg/sea/tneck1.varioxB.config.json
Normal file
@ -0,0 +1,8 @@
|
||||
["tneck1", [{"path": "", "type": "float", "kids": 7},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tneck1 send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "tneck1 set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "tneck1 control"},
|
||||
{"path": "htr", "type": "float"},
|
||||
{"path": "pow", "type": "float"}]]
|
4
cfg/sea/tneck2.mb11.config.json
Normal file
4
cfg/sea/tneck2.mb11.config.json
Normal file
@ -0,0 +1,4 @@
|
||||
["tneck2", [{"path": "", "type": "float", "kids": 3},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tneck2 send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"}]]
|
8
cfg/sea/tneck2.varioxB.config.json
Normal file
8
cfg/sea/tneck2.varioxB.config.json
Normal file
@ -0,0 +1,8 @@
|
||||
["tneck2", [{"path": "", "type": "float", "kids": 7},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tneck2 send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "tneck2 set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "tneck2 control"},
|
||||
{"path": "htr", "type": "float"},
|
||||
{"path": "pow", "type": "float"}]]
|
4
cfg/sea/tnvd.mb11.config.json
Normal file
4
cfg/sea/tnvd.mb11.config.json
Normal file
@ -0,0 +1,4 @@
|
||||
["tnvd", [{"path": "", "type": "float", "kids": 3},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tnvd send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"}]]
|
8
cfg/sea/tnvd.varioxB.config.json
Normal file
8
cfg/sea/tnvd.varioxB.config.json
Normal file
@ -0,0 +1,8 @@
|
||||
["tnvd", [{"path": "", "type": "float", "kids": 7},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tnvd send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "tnvd set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "tnvd control"},
|
||||
{"path": "htr", "type": "float"},
|
||||
{"path": "pow", "type": "float"}]]
|
4
cfg/sea/tnvs.mb11.config.json
Normal file
4
cfg/sea/tnvs.mb11.config.json
Normal file
@ -0,0 +1,4 @@
|
||||
["tnvs", [{"path": "", "type": "float", "kids": 3},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tnvs send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"}]]
|
8
cfg/sea/tnvs.varioxB.config.json
Normal file
8
cfg/sea/tnvs.varioxB.config.json
Normal file
@ -0,0 +1,8 @@
|
||||
["tnvs", [{"path": "", "type": "float", "kids": 7},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tnvs send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "tnvs set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "tnvs control"},
|
||||
{"path": "htr", "type": "float"},
|
||||
{"path": "pow", "type": "float"}]]
|
78
cfg/sea/treg.dil4.stick.json
Normal file
78
cfg/sea/treg.dil4.stick.json
Normal file
@ -0,0 +1,78 @@
|
||||
["treg", [{"path": "", "type": "int", "kids": 10},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "treg send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "autoscan", "type": "bool", "readonly": false, "cmd": "treg autoscan", "kids": 4},
|
||||
{"path": "autoscan/synchronized", "type": "bool", "readonly": false, "cmd": "treg autoscan/synchronized"},
|
||||
{"path": "autoscan/interval", "type": "text", "readonly": false, "cmd": "treg autoscan/interval"},
|
||||
{"path": "autoscan/pause", "type": "text", "readonly": false, "cmd": "treg autoscan/pause"},
|
||||
{"path": "autoscan/dwell", "type": "text", "readonly": false, "cmd": "treg autoscan/dwell"},
|
||||
{"path": "sample", "type": "float", "kids": 14},
|
||||
{"path": "sample/active", "type": "enum", "enum": {"inactive": 0, "active": 1}, "readonly": false, "cmd": "treg sample/active"},
|
||||
{"path": "sample/autorange", "type": "bool", "readonly": false, "cmd": "treg sample/autorange", "description": "autorange (common for all channels)"},
|
||||
{"path": "sample/range", "type": "text", "readonly": false, "cmd": "treg sample/range", "description": "resistance range in Ohm"},
|
||||
{"path": "sample/range_num", "type": "int"},
|
||||
{"path": "sample/excitation", "type": "text", "readonly": false, "cmd": "treg sample/excitation", "description": "excitation with unit, i.e. 2uV or 3pA"},
|
||||
{"path": "sample/excitation_num", "type": "int"},
|
||||
{"path": "sample/excitation_mode", "type": "enum", "enum": {"voltage": 0, "current": 1, "off": 2}},
|
||||
{"path": "sample/pause", "type": "int", "readonly": false, "cmd": "treg sample/pause", "description": "pause time [sec] after channel change"},
|
||||
{"path": "sample/filter", "type": "int", "readonly": false, "cmd": "treg sample/filter", "description": "filter average time [sec]"},
|
||||
{"path": "sample/dwell", "type": "int", "readonly": false, "cmd": "treg sample/dwell", "description": "dwell time [sec]. Total time per channel: pause + filter + dwell"},
|
||||
{"path": "sample/status", "type": "text"},
|
||||
{"path": "sample/curve", "type": "text", "readonly": false, "cmd": "treg sample/curve", "kids": 1},
|
||||
{"path": "sample/curve/points", "type": "floatvarar", "readonly": false, "cmd": "treg sample/curve/points", "visibility": 3},
|
||||
{"path": "sample/alarm", "type": "float", "readonly": false, "cmd": "treg sample/alarm"},
|
||||
{"path": "sample/raw", "type": "float"},
|
||||
{"path": "mix", "type": "float", "kids": 14},
|
||||
{"path": "mix/active", "type": "enum", "enum": {"inactive": 0, "active": 1}, "readonly": false, "cmd": "treg mix/active"},
|
||||
{"path": "mix/autorange", "type": "bool", "readonly": false, "cmd": "treg mix/autorange", "description": "autorange (common for all channels)"},
|
||||
{"path": "mix/range", "type": "text", "readonly": false, "cmd": "treg mix/range", "description": "resistance range in Ohm"},
|
||||
{"path": "mix/range_num", "type": "int"},
|
||||
{"path": "mix/excitation", "type": "text", "readonly": false, "cmd": "treg mix/excitation", "description": "excitation with unit, i.e. 2uV or 3pA"},
|
||||
{"path": "mix/excitation_num", "type": "int"},
|
||||
{"path": "mix/excitation_mode", "type": "enum", "enum": {"voltage": 0, "current": 1, "off": 2}},
|
||||
{"path": "mix/pause", "type": "int", "readonly": false, "cmd": "treg mix/pause", "description": "pause time [sec] after channel change"},
|
||||
{"path": "mix/filter", "type": "int", "readonly": false, "cmd": "treg mix/filter", "description": "filter average time [sec]"},
|
||||
{"path": "mix/dwell", "type": "int", "readonly": false, "cmd": "treg mix/dwell", "description": "dwell time [sec]. Total time per channel: pause + filter + dwell"},
|
||||
{"path": "mix/status", "type": "text"},
|
||||
{"path": "mix/curve", "type": "text", "readonly": false, "cmd": "treg mix/curve", "kids": 1},
|
||||
{"path": "mix/curve/points", "type": "floatvarar", "readonly": false, "cmd": "treg mix/curve/points", "visibility": 3},
|
||||
{"path": "mix/alarm", "type": "float", "readonly": false, "cmd": "treg mix/alarm"},
|
||||
{"path": "mix/raw", "type": "float"},
|
||||
{"path": "samplehtr", "type": "float", "kids": 14},
|
||||
{"path": "samplehtr/active", "type": "enum", "enum": {"inactive": 0, "active": 1}, "readonly": false, "cmd": "treg samplehtr/active"},
|
||||
{"path": "samplehtr/autorange", "type": "bool", "readonly": false, "cmd": "treg samplehtr/autorange", "description": "autorange (common for all channels)"},
|
||||
{"path": "samplehtr/range", "type": "text", "readonly": false, "cmd": "treg samplehtr/range", "description": "resistance range in Ohm"},
|
||||
{"path": "samplehtr/range_num", "type": "int"},
|
||||
{"path": "samplehtr/excitation", "type": "text", "readonly": false, "cmd": "treg samplehtr/excitation", "description": "excitation with unit, i.e. 2uV or 3pA"},
|
||||
{"path": "samplehtr/excitation_num", "type": "int"},
|
||||
{"path": "samplehtr/excitation_mode", "type": "enum", "enum": {"voltage": 0, "current": 1, "off": 2}},
|
||||
{"path": "samplehtr/pause", "type": "int", "readonly": false, "cmd": "treg samplehtr/pause", "description": "pause time [sec] after channel change"},
|
||||
{"path": "samplehtr/filter", "type": "int", "readonly": false, "cmd": "treg samplehtr/filter", "description": "filter average time [sec]"},
|
||||
{"path": "samplehtr/dwell", "type": "int", "readonly": false, "cmd": "treg samplehtr/dwell", "description": "dwell time [sec]. Total time per channel: pause + filter + dwell"},
|
||||
{"path": "samplehtr/status", "type": "text"},
|
||||
{"path": "samplehtr/curve", "type": "text", "readonly": false, "cmd": "treg samplehtr/curve", "kids": 1},
|
||||
{"path": "samplehtr/curve/points", "type": "floatvarar", "readonly": false, "cmd": "treg samplehtr/curve/points", "visibility": 3},
|
||||
{"path": "samplehtr/alarm", "type": "float", "readonly": false, "cmd": "treg samplehtr/alarm"},
|
||||
{"path": "samplehtr/raw", "type": "float"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "treg set", "kids": 18},
|
||||
{"path": "set/mode", "type": "enum", "enum": {"disabled": -1, "off": 0, "controlling": 1, "manual": 2}, "readonly": false, "cmd": "treg set/mode"},
|
||||
{"path": "set/reg", "type": "float"},
|
||||
{"path": "set/ramp", "type": "float", "readonly": false, "cmd": "treg set/ramp", "description": "maximum ramp in K/min (0: ramp off)"},
|
||||
{"path": "set/wramp", "type": "float", "readonly": false, "cmd": "treg set/wramp"},
|
||||
{"path": "set/smooth", "type": "float", "readonly": false, "cmd": "treg set/smooth", "description": "smooth time (minutes)"},
|
||||
{"path": "set/channel", "type": "text", "readonly": false, "cmd": "treg set/channel"},
|
||||
{"path": "set/limit", "type": "float", "readonly": false, "cmd": "treg set/limit"},
|
||||
{"path": "set/resist", "type": "float", "readonly": false, "cmd": "treg set/resist"},
|
||||
{"path": "set/maxheater", "type": "text", "readonly": false, "cmd": "treg set/maxheater", "description": "maximum heater limit, units should be given without space: W, mW, A, mA"},
|
||||
{"path": "set/linearpower", "type": "float", "readonly": false, "cmd": "treg 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": "treg 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": "treg set/manualpower"},
|
||||
{"path": "set/power", "type": "float"},
|
||||
{"path": "set/prop", "type": "float", "readonly": false, "cmd": "treg set/prop", "description": "bigger means more gain"},
|
||||
{"path": "set/integ", "type": "float", "readonly": false, "cmd": "treg set/integ", "description": "[sec] bigger means slower"},
|
||||
{"path": "set/deriv", "type": "float", "readonly": false, "cmd": "treg set/deriv"},
|
||||
{"path": "analog2", "type": "float", "readonly": false, "cmd": "treg analog2"},
|
||||
{"path": "remote", "type": "bool"},
|
||||
{"path": "display", "type": "text", "readonly": false, "cmd": "treg display"}]]
|
58
cfg/sea/ts.dil4.stick.json
Normal file
58
cfg/sea/ts.dil4.stick.json
Normal file
@ -0,0 +1,58 @@
|
||||
["ts", [{"path": "", "type": "float", "readonly": false, "cmd": "run ts", "description": "ts", "kids": 19},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "ts send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "is_running", "type": "int", "visibility": 3},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "ts set", "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": "ramp", "type": "float", "readonly": false, "cmd": "ts ramp", "description": "ramp [K/min]"},
|
||||
{"path": "heaterselect", "type": "enum", "enum": {"sample": 0, "mix": 1, "mix(temporarely)": 2}, "readonly": false, "cmd": "ts heaterselect"},
|
||||
{"path": "control", "type": "enum", "enum": {"off": 0, "sample": 6, "mix": 5}, "readonly": false, "cmd": "ts control", "description": "click off to reload list"},
|
||||
{"path": "heatermode", "type": "enum", "enum": {"disabled": -1, "off": 0, "on": 1}, "readonly": false, "cmd": "ts heatermode"},
|
||||
{"path": "heaterrange", "type": "enum", "enum": {"2uW": 1, "20uW": 2, "200uW": 3, "2mW": 4, "20mW": 5}, "readonly": false, "cmd": "ts heaterrange"},
|
||||
{"path": "autoheater", "type": "bool", "readonly": false, "cmd": "ts autoheater", "description": "automatic heater range", "kids": 12},
|
||||
{"path": "autoheater/wlp0", "type": "float", "readonly": false, "cmd": "ts autoheater/wlp0", "description": "weak link base temperature (used for auto heater)", "visibility": 3},
|
||||
{"path": "autoheater/wlp1", "type": "float", "readonly": false, "cmd": "ts autoheater/wlp1", "description": "weak link temperature at 1 uW (used for auto heater)", "visibility": 3},
|
||||
{"path": "autoheater/wlp2", "type": "float", "readonly": false, "cmd": "ts autoheater/wlp2", "description": "weak link temperature at 10 uW (used for auto heater)", "visibility": 3},
|
||||
{"path": "autoheater/wlp3", "type": "float", "readonly": false, "cmd": "ts autoheater/wlp3", "description": "weak link temperature at 100 uW (used for auto heater)", "visibility": 3},
|
||||
{"path": "autoheater/wlp4", "type": "float", "readonly": false, "cmd": "ts autoheater/wlp4", "description": "weak link temperature at 1 mW (used for auto heater)", "visibility": 3},
|
||||
{"path": "autoheater/mxp0", "type": "float", "readonly": false, "cmd": "ts autoheater/mxp0", "description": "weak link base temperature (used for auto heater)"},
|
||||
{"path": "autoheater/mxp1", "type": "float", "readonly": false, "cmd": "ts autoheater/mxp1", "description": "mix.ch. temperature at 1 uW (used for auto heater)"},
|
||||
{"path": "autoheater/mxp2", "type": "float", "readonly": false, "cmd": "ts autoheater/mxp2", "description": "mix.ch. temperature at 10 uW (used for auto heater)"},
|
||||
{"path": "autoheater/mxp3", "type": "float", "readonly": false, "cmd": "ts autoheater/mxp3", "description": "mix.ch. temperature at 100 uW (used for auto heater)"},
|
||||
{"path": "autoheater/mxp4", "type": "float", "readonly": false, "cmd": "ts autoheater/mxp4", "description": "mix.ch. temperature at 1 mW (used for auto heater)"},
|
||||
{"path": "autoheater/switchdown", "type": "float", "readonly": false, "cmd": "ts autoheater/switchdown", "description": "percentage for auto heater switch down"},
|
||||
{"path": "autoheater/switchup", "type": "float", "readonly": false, "cmd": "ts autoheater/switchup", "description": "when the calculated power is above this percentage, use higher range"},
|
||||
{"path": "autoprop", "type": "bool", "readonly": false, "cmd": "ts autoprop", "description": "change prop value depending on actual power", "kids": 2},
|
||||
{"path": "autoprop/prop", "type": "float", "readonly": false, "cmd": "ts autoprop/prop", "description": "prop value (maximum prop value when autheater is on)"},
|
||||
{"path": "autoprop/integ", "type": "float", "readonly": false, "cmd": "ts autoprop/integ", "description": "integral value [sec], deriv is set to 0 on change"},
|
||||
{"path": "instructions", "type": "text"},
|
||||
{"path": "auto", "type": "enum", "enum": {"off": 0, "cool_vti": 1, "pipe_pump": 11, "pipes_ready": 12, "ready_for_sorbpump": 2, "sorb_pump": 3, "condense": 4, "circulate": 5, "remove_only": 60, "remove_and_warmup": 62, "remove_and_condense": 61, "remove_and_sorbpump": 63, "finished": 7}, "readonly": false, "cmd": "ts auto", "kids": 20},
|
||||
{"path": "auto/usetrap", "type": "enum", "enum": {"trap_A": 0, "trap_B": 1}, "readonly": false, "cmd": "ts auto/usetrap"},
|
||||
{"path": "auto/hasturbo", "type": "bool"},
|
||||
{"path": "auto/pipes_pumped", "type": "bool", "readonly": false, "cmd": "ts auto/pipes_pumped"},
|
||||
{"path": "auto/cool_crit", "type": "text", "readonly": false, "cmd": "ts auto/cool_crit", "description": "criterium for transition to ready_for_sorbpump"},
|
||||
{"path": "auto/pumptime1", "type": "float", "readonly": false, "cmd": "ts auto/pumptime1", "description": "pump time [sec] while sorb at 40"},
|
||||
{"path": "auto/pumptime2", "type": "float", "readonly": false, "cmd": "ts auto/pumptime2", "description": "pump time [sec] while sorb cools down"},
|
||||
{"path": "auto/condensep", "type": "float", "readonly": false, "cmd": "ts auto/condensep"},
|
||||
{"path": "auto/dumptarget", "type": "float", "readonly": false, "cmd": "ts auto/dumptarget"},
|
||||
{"path": "auto/condenseflow", "type": "float", "readonly": false, "cmd": "ts auto/condenseflow", "description": "VTI flow for condensing and min. flow for cooling"},
|
||||
{"path": "auto/circulateflow", "type": "float", "readonly": false, "cmd": "ts auto/circulateflow", "description": "VTI flow for circulating (may be changed during circulation)"},
|
||||
{"path": "auto/onekstate", "type": "enum", "enum": {"normal": 0, "fill": 1, "optimize": 2}, "readonly": false, "cmd": "ts auto/onekstate"},
|
||||
{"path": "auto/oneklimit", "type": "float", "readonly": false, "cmd": "ts auto/oneklimit"},
|
||||
{"path": "auto/minflow", "type": "float", "readonly": false, "cmd": "ts auto/minflow", "description": "minimum VTI flow (optimize stops at this value)"},
|
||||
{"path": "auto/p1low", "type": "float", "readonly": false, "cmd": "ts auto/p1low", "description": "p1 value indicating a negligible mixture amount"},
|
||||
{"path": "auto/p2low", "type": "float", "readonly": false, "cmd": "ts auto/p2low", "description": "p2 value indicating a good vacuum"},
|
||||
{"path": "auto/warmup_t", "type": "float", "readonly": false, "cmd": "ts auto/warmup_t", "description": "VTI temperature to reach when remove_and_warmup"},
|
||||
{"path": "auto/vti_t", "type": "float", "readonly": false, "cmd": "ts auto/vti_t", "description": "VTI temperature to reach when remove_only"},
|
||||
{"path": "auto/xgas", "type": "enum", "enum": {"pump": 0, "add": 1, "empty": 2}, "readonly": false, "cmd": "ts auto/xgas"},
|
||||
{"path": "auto/xgas_pulse", "type": "float", "readonly": false, "cmd": "ts auto/xgas_pulse", "description": "opening time for xgas capillary [sec]"},
|
||||
{"path": "auto/removephase", "type": "enum", "enum": {"raw_remove": 0, "wait_p1_low": 1, "wait_v6_open": 2, "wait_a_little": 3, "wait_v6_closed": 4, "wait_t_warmup": 5}, "readonly": false, "cmd": "ts auto/removephase"}]]
|
8
cfg/sea/ts.mb11.config.json
Normal file
8
cfg/sea/ts.mb11.config.json
Normal file
@ -0,0 +1,8 @@
|
||||
["ts", [{"path": "", "type": "float", "kids": 7},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "ts send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "ts set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "ts control"},
|
||||
{"path": "htr", "type": "float"},
|
||||
{"path": "pow", "type": "float"}]]
|
8
cfg/sea/ts.vb.stick.json
Normal file
8
cfg/sea/ts.vb.stick.json
Normal file
@ -0,0 +1,8 @@
|
||||
["ts", [{"path": "", "type": "float", "kids": 7},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "ts send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "ts set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "ts control"},
|
||||
{"path": "htr", "type": "float"},
|
||||
{"path": "pow", "type": "float"}]]
|
58
cfg/sea/tt.flamp.config.json
Normal file
58
cfg/sea/tt.flamp.config.json
Normal file
@ -0,0 +1,58 @@
|
||||
["tt", [{"path": "", "type": "float", "readonly": false, "cmd": "run tt", "description": "tt", "kids": 37},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tt send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "is_running", "type": "int", "visibility": 3},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "tt set"},
|
||||
{"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": "t1", "type": "float", "kids": 3},
|
||||
{"path": "t1/raw", "type": "float"},
|
||||
{"path": "t1/curve", "type": "text", "readonly": false, "cmd": "tt t1/curve", "kids": 1},
|
||||
{"path": "t1/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tt t1/curve/points"},
|
||||
{"path": "t1/valid", "type": "bool"},
|
||||
{"path": "t2", "type": "float", "kids": 3},
|
||||
{"path": "t2/raw", "type": "float"},
|
||||
{"path": "t2/curve", "type": "text", "readonly": false, "cmd": "tt t2/curve", "kids": 1},
|
||||
{"path": "t2/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tt t2/curve/points"},
|
||||
{"path": "t2/valid", "type": "bool"},
|
||||
{"path": "t3", "type": "float", "kids": 3},
|
||||
{"path": "t3/raw", "type": "float"},
|
||||
{"path": "t3/curve", "type": "text", "readonly": false, "cmd": "tt t3/curve", "kids": 1},
|
||||
{"path": "t3/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tt t3/curve/points"},
|
||||
{"path": "t3/valid", "type": "bool"},
|
||||
{"path": "t4", "type": "float", "kids": 3},
|
||||
{"path": "t4/raw", "type": "float"},
|
||||
{"path": "t4/curve", "type": "text", "readonly": false, "cmd": "tt t4/curve", "kids": 1},
|
||||
{"path": "t4/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tt t4/curve/points"},
|
||||
{"path": "t4/valid", "type": "bool"},
|
||||
{"path": "tref", "type": "float"},
|
||||
{"path": "tout", "type": "float"},
|
||||
{"path": "ctrlmode", "type": "enum", "enum": {"ok": 0, "off": 1, "illegal_channel": 2, "no_sensor": 3, "no_flow": 4, "above_alarm": 5, "bad_vacuum": 6}, "readonly": false, "cmd": "tt ctrlmode"},
|
||||
{"path": "ramp", "type": "float", "readonly": false, "cmd": "tt ramp"},
|
||||
{"path": "smooth", "type": "float", "readonly": false, "cmd": "tt smooth"},
|
||||
{"path": "prop", "type": "float", "readonly": false, "cmd": "tt prop"},
|
||||
{"path": "int", "type": "float", "readonly": false, "cmd": "tt int"},
|
||||
{"path": "powerset", "type": "float", "readonly": false, "cmd": "tt powerset"},
|
||||
{"path": "power", "type": "float"},
|
||||
{"path": "resist", "type": "float"},
|
||||
{"path": "maxpower", "type": "float", "readonly": false, "cmd": "tt maxpower"},
|
||||
{"path": "maxheater", "type": "float", "readonly": false, "cmd": "tt maxheater"},
|
||||
{"path": "output", "type": "float", "readonly": false, "cmd": "tt output"},
|
||||
{"path": "manualpower", "type": "bool", "readonly": false, "cmd": "tt manualpower"},
|
||||
{"path": "ctrlchan", "type": "int", "readonly": false, "cmd": "tt ctrlchan"},
|
||||
{"path": "interlock_state", "type": "enum", "enum": {"ok": 0, "no_waterflow": 1, "no_vacuum": 2, "no_water_no_vacuum": 3}},
|
||||
{"path": "interlock_mask", "type": "enum", "enum": {"no_check": 0, "check_water_only": 1, "check_vacuum_only": 2, "check_all": 3}, "readonly": false, "cmd": "tt interlock_mask"},
|
||||
{"path": "sramp", "type": "float"},
|
||||
{"path": "slope", "type": "float"},
|
||||
{"path": "v_htr", "type": "float"},
|
||||
{"path": "i_htr", "type": "float"},
|
||||
{"path": "htr", "type": "float"},
|
||||
{"path": "powerprop", "type": "float"}]]
|
71
cfg/sea/tt.ma11.config.json
Normal file
71
cfg/sea/tt.ma11.config.json
Normal file
@ -0,0 +1,71 @@
|
||||
["tt", [{"path": "", "type": "float", "readonly": false, "cmd": "run tt", "description": "tt", "kids": 19},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tt send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "is_running", "type": "int", "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", "kids": 9},
|
||||
{"path": "dblctrl/tshift", "type": "float", "readonly": false, "cmd": "tt dblctrl/tshift"},
|
||||
{"path": "dblctrl/mode", "type": "enum", "enum": {"disabled": -1, "inactive": 0, "stable": 1, "up": 2, "down": 3}, "readonly": false, "cmd": "tt dblctrl/mode"},
|
||||
{"path": "dblctrl/shift_up", "type": "float"},
|
||||
{"path": "dblctrl/shift_lo", "type": "float"},
|
||||
{"path": "dblctrl/t_min", "type": "float"},
|
||||
{"path": "dblctrl/t_max", "type": "float"},
|
||||
{"path": "dblctrl/int2", "type": "float", "readonly": false, "cmd": "tt dblctrl/int2"},
|
||||
{"path": "dblctrl/prop_up", "type": "float", "readonly": false, "cmd": "tt dblctrl/prop_up"},
|
||||
{"path": "dblctrl/prop_lo", "type": "float", "readonly": false, "cmd": "tt dblctrl/prop_lo"},
|
||||
{"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": "ts", "type": "float", "visibility": 3, "kids": 4},
|
||||
{"path": "ts/curve", "type": "text", "readonly": false, "cmd": "tt ts/curve", "visibility": 3, "kids": 1},
|
||||
{"path": "ts/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tt ts/curve/points", "visibility": 3},
|
||||
{"path": "ts/alarm", "type": "float", "readonly": false, "cmd": "tt ts/alarm", "visibility": 3},
|
||||
{"path": "ts/stddev", "type": "float", "visibility": 3},
|
||||
{"path": "ts/raw", "type": "float", "visibility": 3},
|
||||
{"path": "tm_pt", "type": "float", "kids": 4},
|
||||
{"path": "tm_pt/curve", "type": "text", "readonly": false, "cmd": "tt tm_pt/curve", "kids": 1},
|
||||
{"path": "tm_pt/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tt tm_pt/curve/points", "visibility": 3},
|
||||
{"path": "tm_pt/alarm", "type": "float", "readonly": false, "cmd": "tt tm_pt/alarm"},
|
||||
{"path": "tm_pt/stddev", "type": "float"},
|
||||
{"path": "tm_pt/raw", "type": "float"},
|
||||
{"path": "ts_2", "type": "float", "visibility": 3, "kids": 4},
|
||||
{"path": "ts_2/curve", "type": "text", "readonly": false, "cmd": "tt ts_2/curve", "visibility": 3, "kids": 1},
|
||||
{"path": "ts_2/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tt ts_2/curve/points", "visibility": 3},
|
||||
{"path": "ts_2/alarm", "type": "float", "readonly": false, "cmd": "tt ts_2/alarm", "visibility": 3},
|
||||
{"path": "ts_2/stddev", "type": "float", "visibility": 3},
|
||||
{"path": "ts_2/raw", "type": "float", "visibility": 3},
|
||||
{"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": "dout", "type": "int", "readonly": false, "cmd": "tt dout"},
|
||||
{"path": "dinp", "type": "int"},
|
||||
{"path": "remote", "type": "bool"}]]
|
65
cfg/sea/tt.ori1.config.json
Normal file
65
cfg/sea/tt.ori1.config.json
Normal file
@ -0,0 +1,65 @@
|
||||
["tt", [{"path": "", "type": "float", "readonly": false, "cmd": "run tt", "description": "tt", "kids": 18},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tt send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "is_running", "type": "int", "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", "kids": 9},
|
||||
{"path": "dblctrl/tshift", "type": "float", "readonly": false, "cmd": "tt dblctrl/tshift"},
|
||||
{"path": "dblctrl/mode", "type": "enum", "enum": {"disabled": -1, "inactive": 0, "stable": 1, "up": 2, "down": 3}, "readonly": false, "cmd": "tt dblctrl/mode"},
|
||||
{"path": "dblctrl/shift_up", "type": "float"},
|
||||
{"path": "dblctrl/shift_lo", "type": "float"},
|
||||
{"path": "dblctrl/t_min", "type": "float"},
|
||||
{"path": "dblctrl/t_max", "type": "float"},
|
||||
{"path": "dblctrl/int2", "type": "float", "readonly": false, "cmd": "tt dblctrl/int2"},
|
||||
{"path": "dblctrl/prop_up", "type": "float", "readonly": false, "cmd": "tt dblctrl/prop_up"},
|
||||
{"path": "dblctrl/prop_lo", "type": "float", "readonly": false, "cmd": "tt dblctrl/prop_lo"},
|
||||
{"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": "ts", "type": "float", "kids": 4},
|
||||
{"path": "ts/curve", "type": "text", "readonly": false, "cmd": "tt ts/curve", "kids": 1},
|
||||
{"path": "ts/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tt ts/curve/points", "visibility": 3},
|
||||
{"path": "ts/alarm", "type": "float", "readonly": false, "cmd": "tt ts/alarm"},
|
||||
{"path": "ts/stddev", "type": "float"},
|
||||
{"path": "ts/raw", "type": "float"},
|
||||
{"path": "ts_2", "type": "float", "visibility": 3, "kids": 4},
|
||||
{"path": "ts_2/curve", "type": "text", "readonly": false, "cmd": "tt ts_2/curve", "visibility": 3, "kids": 1},
|
||||
{"path": "ts_2/curve/points", "type": "floatvarar", "readonly": false, "cmd": "tt ts_2/curve/points", "visibility": 3},
|
||||
{"path": "ts_2/alarm", "type": "float", "readonly": false, "cmd": "tt ts_2/alarm", "visibility": 3},
|
||||
{"path": "ts_2/stddev", "type": "float", "visibility": 3},
|
||||
{"path": "ts_2/raw", "type": "float", "visibility": 3},
|
||||
{"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": "dout", "type": "int", "readonly": false, "cmd": "tt dout"},
|
||||
{"path": "dinp", "type": "int"},
|
||||
{"path": "remote", "type": "bool"}]]
|
8
cfg/sea/tvd.mb11.config.json
Normal file
8
cfg/sea/tvd.mb11.config.json
Normal file
@ -0,0 +1,8 @@
|
||||
["tvd", [{"path": "", "type": "float", "kids": 7},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tvd send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "tvd set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "tvd control"},
|
||||
{"path": "htr", "type": "float"},
|
||||
{"path": "pow", "type": "float"}]]
|
8
cfg/sea/tvd.varioxB.config.json
Normal file
8
cfg/sea/tvd.varioxB.config.json
Normal file
@ -0,0 +1,8 @@
|
||||
["tvd", [{"path": "", "type": "float", "kids": 7},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tvd send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "tvd set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "tvd control"},
|
||||
{"path": "htr", "type": "float"},
|
||||
{"path": "pow", "type": "float"}]]
|
8
cfg/sea/tvs.mb11.config.json
Normal file
8
cfg/sea/tvs.mb11.config.json
Normal file
@ -0,0 +1,8 @@
|
||||
["tvs", [{"path": "", "type": "float", "kids": 7},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tvs send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "tvs set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "tvs control"},
|
||||
{"path": "htr", "type": "float"},
|
||||
{"path": "pow", "type": "float"}]]
|
8
cfg/sea/tvs.varioxB.config.json
Normal file
8
cfg/sea/tvs.varioxB.config.json
Normal file
@ -0,0 +1,8 @@
|
||||
["tvs", [{"path": "", "type": "float", "kids": 7},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "tvs send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "raw", "type": "float"},
|
||||
{"path": "set", "type": "float", "readonly": false, "cmd": "tvs set"},
|
||||
{"path": "control", "type": "enum", "enum": {"OFF": 0, "ON": 1}, "readonly": false, "cmd": "tvs control"},
|
||||
{"path": "htr", "type": "float"},
|
||||
{"path": "pow", "type": "float"}]]
|
3
cfg/sea/ultrasound.ultrasound.addon.json
Normal file
3
cfg/sea/ultrasound.ultrasound.addon.json
Normal file
@ -0,0 +1,3 @@
|
||||
["ultrasound", [{"path": "", "type": "text", "readonly": false, "cmd": "ultrasound", "kids": 2},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "ultrasound send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3}]]
|
65
cfg/sea/varioxB_vb.cfg
Normal file
65
cfg/sea/varioxB_vb.cfg
Normal file
@ -0,0 +1,65 @@
|
||||
[node varioxB_vb.psi.ch]
|
||||
description = varioxB_vb over SEA
|
||||
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindport = 10767
|
||||
|
||||
[module seaconn]
|
||||
class = secop_psi.sea.SeaClient
|
||||
description = a SEA connection
|
||||
uri = tcp://samenv.psi.ch:8646
|
||||
|
||||
[module tvs]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tvs.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tvd]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tvd.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module pstat]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = pstat.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module pdyn]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = pdyn.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tneck1]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tneck1.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tneck2]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tneck2.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tnvs]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tnvs.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tnvd]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tnvd.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module ts]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = ts.vb.stick
|
||||
remote_paths = .
|
31
cfg/sea/wall.lampovenwall.addon.json
Normal file
31
cfg/sea/wall.lampovenwall.addon.json
Normal file
@ -0,0 +1,31 @@
|
||||
["wall", [{"path": "", "type": "float", "kids": 10},
|
||||
{"path": "send", "type": "text", "readonly": false, "cmd": "wall send", "visibility": 3},
|
||||
{"path": "status", "type": "text", "visibility": 3},
|
||||
{"path": "tw1", "type": "float", "kids": 4},
|
||||
{"path": "tw1/curve", "type": "text", "readonly": false, "cmd": "wall tw1/curve", "kids": 1},
|
||||
{"path": "tw1/curve/points", "type": "floatvarar", "readonly": false, "cmd": "wall tw1/curve/points", "visibility": 3},
|
||||
{"path": "tw1/alarm", "type": "float", "readonly": false, "cmd": "wall tw1/alarm"},
|
||||
{"path": "tw1/stddev", "type": "float"},
|
||||
{"path": "tw1/raw", "type": "float"},
|
||||
{"path": "tw2", "type": "float", "kids": 4},
|
||||
{"path": "tw2/curve", "type": "text", "readonly": false, "cmd": "wall tw2/curve", "kids": 1},
|
||||
{"path": "tw2/curve/points", "type": "floatvarar", "readonly": false, "cmd": "wall tw2/curve/points", "visibility": 3},
|
||||
{"path": "tw2/alarm", "type": "float", "readonly": false, "cmd": "wall tw2/alarm"},
|
||||
{"path": "tw2/stddev", "type": "float"},
|
||||
{"path": "tw2/raw", "type": "float"},
|
||||
{"path": "tw3", "type": "float", "kids": 4},
|
||||
{"path": "tw3/curve", "type": "text", "readonly": false, "cmd": "wall tw3/curve", "kids": 1},
|
||||
{"path": "tw3/curve/points", "type": "floatvarar", "readonly": false, "cmd": "wall tw3/curve/points", "visibility": 3},
|
||||
{"path": "tw3/alarm", "type": "float", "readonly": false, "cmd": "wall tw3/alarm"},
|
||||
{"path": "tw3/stddev", "type": "float"},
|
||||
{"path": "tw3/raw", "type": "float"},
|
||||
{"path": "tw4", "type": "float", "kids": 4},
|
||||
{"path": "tw4/curve", "type": "text", "readonly": false, "cmd": "wall tw4/curve", "kids": 1},
|
||||
{"path": "tw4/curve/points", "type": "floatvarar", "readonly": false, "cmd": "wall tw4/curve/points", "visibility": 3},
|
||||
{"path": "tw4/alarm", "type": "float", "readonly": false, "cmd": "wall tw4/alarm"},
|
||||
{"path": "tw4/stddev", "type": "float"},
|
||||
{"path": "tw4/raw", "type": "float"},
|
||||
{"path": "display", "type": "text", "readonly": false, "cmd": "wall display"},
|
||||
{"path": "dout", "type": "int", "readonly": false, "cmd": "wall dout"},
|
||||
{"path": "dinp", "type": "int"},
|
||||
{"path": "remote", "type": "bool"}]]
|
19
cfg/senis3mh3.cfg
Normal file
19
cfg/senis3mh3.cfg
Normal file
@ -0,0 +1,19 @@
|
||||
[b]
|
||||
description = '3D hall sensor'
|
||||
class = secop_psi.senis.Teslameter3MH3
|
||||
usb = /dev/tty.usbserial-AI02VAD9
|
||||
x = bx
|
||||
y = by
|
||||
z = bz
|
||||
|
||||
[bx]
|
||||
description = 'x component'
|
||||
class = secop_psi.senis.Bcomp
|
||||
|
||||
[by]
|
||||
description = 'y component'
|
||||
class = secop_psi.senis.Bcomp
|
||||
|
||||
[bz]
|
||||
description = 'z component'
|
||||
class = secop_psi.senis.Bcomp
|
55
cfg/senis3mh6.cfg
Normal file
55
cfg/senis3mh6.cfg
Normal file
@ -0,0 +1,55 @@
|
||||
[b]
|
||||
description = '3D hall sensor'
|
||||
class = secop_psi.senis.Teslameter3MH6
|
||||
usb = /dev/ttyUSB0
|
||||
nsample = 100
|
||||
x = bx
|
||||
y = by
|
||||
z = bz
|
||||
probe_temp = ptemp
|
||||
box_temp = btemp
|
||||
x_direct = dbx
|
||||
y_direct = dby
|
||||
z_direct = dbz
|
||||
probe_temp_direct = dptemp
|
||||
box_temp_direct = dbtemp
|
||||
|
||||
[bx]
|
||||
description = 'x component'
|
||||
class = secop_psi.senis.Bcomp
|
||||
|
||||
[by]
|
||||
description = 'y component'
|
||||
class = secop_psi.senis.Bcomp
|
||||
|
||||
[bz]
|
||||
description = 'z component'
|
||||
class = secop_psi.senis.Bcomp
|
||||
|
||||
[ptemp]
|
||||
description = 'probe temperature'
|
||||
class = secop_psi.senis.Temperature
|
||||
|
||||
[btemp]
|
||||
description = 'box temperature'
|
||||
class = secop_psi.senis.Temperature
|
||||
|
||||
[dbx]
|
||||
description = 'x component'
|
||||
class = secop_psi.senis.Raw
|
||||
|
||||
[dby]
|
||||
description = 'y component'
|
||||
class = secop_psi.senis.Raw
|
||||
|
||||
[dbz]
|
||||
description = 'z component'
|
||||
class = secop_psi.senis.Raw
|
||||
|
||||
[dptemp]
|
||||
description = 'probe temperature'
|
||||
class = secop_psi.senis.Raw
|
||||
|
||||
[dbtemp]
|
||||
description = 'box temperature'
|
||||
class = secop_psi.senis.Temperature
|
@ -10,7 +10,7 @@ bindport=10767
|
||||
|
||||
|
||||
[module sim]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=simulation stuff
|
||||
.extra_params=param3,param4,jitter,ramp
|
||||
param3.datatype={"type":"bool"}
|
||||
|
@ -19,14 +19,14 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module enable]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
value.datatype={"type":"enum", "members":{'On':1,'Off':0}}
|
||||
target.datatype={"type":"enum", "members":{'On':1,'Off':0}}
|
||||
.description='Enables to Output of the Powersupply'
|
||||
.visibility='advanced'
|
||||
|
||||
[module polarity]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
value.datatype={"type":"enum", "members":{'+1':1,'0':0,'-1':-1}}
|
||||
target.datatype={"type":"enum", "members":{'+1':1,'0':0,'-1':-1}}
|
||||
.description=polarity (+/-) switch
|
||||
@ -38,7 +38,7 @@ target.datatype={"type":"enum", "members":{'+1':1,'0':0,'-1':-1}}
|
||||
|
||||
|
||||
[module symmetry]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
value.datatype={"type":"enum", "members":{'symmetric':1,'short':0, 'asymmetric':-1}}
|
||||
target.datatype={"type":"enum", "members":{'symmetric':1,'short':0, 'asymmetric':-1}}
|
||||
.description=par/ser switch selecting (a)symmetric mode
|
||||
@ -48,31 +48,31 @@ target.datatype={"type":"enum", "members":{'symmetric':1,'short':0, 'asymmetric'
|
||||
value.default = 'symmetric'
|
||||
|
||||
[module T1]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Temperature1 of the coils system
|
||||
value.unit='degC'
|
||||
value.default = 23.45
|
||||
|
||||
[module T2]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Temperature2 of the coils system
|
||||
value.unit='degC'
|
||||
value.default = 23.45
|
||||
|
||||
[module T3]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Temperature3 of the coils system
|
||||
value.unit='degC'
|
||||
value.default = 23.45
|
||||
|
||||
[module T4]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Temperature4 of the coils system
|
||||
value.unit='degC'
|
||||
value.default = 23.45
|
||||
|
||||
[module currentsource]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Device for the magnet power supply (current mode)
|
||||
abslimits=(0,200)
|
||||
speed=1
|
||||
@ -98,7 +98,7 @@ window.datatype = {"type":"double", "min":0, "max":120, "unit":"s"}
|
||||
window.default = 10
|
||||
|
||||
[module mf]
|
||||
class=frappy_mlz.amagnet.GarfieldMagnet
|
||||
class=secop_mlz.amagnet.GarfieldMagnet
|
||||
.description=magnetic field module, handling polarity switching and stuff
|
||||
subdev_currentsource=currentsource
|
||||
subdev_enable=enable
|
||||
|
@ -11,7 +11,7 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module T_cci3he1]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Main temperature control node of cci3he1.
|
||||
.
|
||||
Controls the regulation loop of the ls370.
|
||||
@ -26,7 +26,7 @@ ramp.default=60
|
||||
.meaning=["temperature_regulation",40]
|
||||
|
||||
[module T_cci3he1_A]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=3He pot temperature sensor. Also used for the regulation.
|
||||
.visibility=expert
|
||||
value.default=300
|
||||
@ -34,7 +34,7 @@ value.datatype={"type":"double","unit":"K"}
|
||||
.meaning=["temperature",38]
|
||||
|
||||
[module T_cci3he1_B]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=(optional) sample temperature sensor close to sample.
|
||||
.visibility=user
|
||||
value.default=300
|
||||
@ -42,49 +42,49 @@ value.datatype={"type":"double","unit":"K"}
|
||||
.meaning=["temperature",39]
|
||||
|
||||
[module cci3he1_p1]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure at turbo pump inlet.
|
||||
.visibility=expert
|
||||
value.default=2e-3
|
||||
value.datatype={"type":"double","unit":"mbar"}
|
||||
|
||||
[module cci3he1_p2]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure at turbo pump outlet.
|
||||
.visibility=expert
|
||||
value.default=9.87
|
||||
value.datatype={"type":"double","unit":"mbar"}
|
||||
|
||||
[module cci3he1_p3]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure at compressor inlet.
|
||||
.visibility=expert
|
||||
value.default=19.99
|
||||
value.datatype={"type":"double","unit":"mbar"}
|
||||
|
||||
[module cci3he1_p4]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure at compressor outlet.
|
||||
.visibility=expert
|
||||
value.default=999
|
||||
value.datatype={"type":"double","unit":"mbar"}
|
||||
|
||||
[module cci3he1_p5]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure in dump tank.
|
||||
.visibility=expert
|
||||
value.default=567
|
||||
value.datatype={"type":"double","unit":"mbar"}
|
||||
|
||||
[module cci3he1_p6]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure in the vacuum dewar (ivc).
|
||||
.visibility=expert
|
||||
value.default=1e-3
|
||||
value.datatype={"type":"double","unit":"mbar"}
|
||||
|
||||
[module cci3he1_flow]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Gas Flow (condensing line).
|
||||
.visibility=expert
|
||||
value.default=12.34
|
||||
|
@ -11,7 +11,7 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module T_ccidu1]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Main temperature control node of ccidu1.
|
||||
.
|
||||
Controls the regulation loop of the ls372.
|
||||
@ -26,7 +26,7 @@ ramp.default=60
|
||||
.meaning=["temperature_regulation",40]
|
||||
|
||||
[module T_ccidu1_A]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=mixing chamber temperature sensor. Also used for the regulation.
|
||||
.visibility=expert
|
||||
value.default=300
|
||||
@ -34,7 +34,7 @@ value.datatype={"type":"double", "unit":"K"}
|
||||
.meaning=["temperature",38]
|
||||
|
||||
[module T_ccidu1_B]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=(optional) sample temperature sensor close to sample.
|
||||
.visibility=user
|
||||
value.default=300
|
||||
@ -42,49 +42,49 @@ value.datatype={"type":"double", "unit":"K"}
|
||||
.meaning=["temperature",39]
|
||||
|
||||
[module ccidu1_pstill]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure at the still/turbo pump inlet.
|
||||
.visibility=expert
|
||||
value.default=999
|
||||
value.datatype={"type":"double", "unit":"mbar"}
|
||||
|
||||
[module ccidu1_pinlet]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure at forepump inlet/turbo pump outlet.
|
||||
.visibility=expert
|
||||
value.default=999
|
||||
value.datatype={"type":"double", "unit":"mbar"}
|
||||
|
||||
[module ccidu1_poutlet]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure at forepump outlet/compressor inlet.
|
||||
.visibility=expert
|
||||
value.default=999
|
||||
value.datatype={"type":"double", "unit":"mbar"}
|
||||
|
||||
[module ccidu1_pkond]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure at condensing line/compressor outlet.
|
||||
.visibility=expert
|
||||
value.default=999
|
||||
value.datatype={"type":"double", "unit":"mbar"}
|
||||
|
||||
[module ccidu1_ptank]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure in dump tank.
|
||||
.visibility=expert
|
||||
value.default=999
|
||||
value.datatype={"type":"double", "unit":"mbar"}
|
||||
|
||||
[module ccidu1_pvac]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure in the vacuum dewar (ivc).
|
||||
.visibility=expert
|
||||
value.default=999
|
||||
value.datatype={"type":"double", "unit":"mbar"}
|
||||
|
||||
[module ccidu1_flow]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Gas Flow (condensing line).
|
||||
.visibility=expert
|
||||
value.default=999
|
||||
@ -92,14 +92,14 @@ value.datatype={"type":"double", "unit":"mbar"}
|
||||
|
||||
# note: all valves and switches are missing: use VNC to control them
|
||||
[module ccidu1_V6]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Needle valve
|
||||
.visibility=expert
|
||||
value.default=99
|
||||
value.datatype={"type":"double", "min":0, "max":100, "unit":"%%"}
|
||||
|
||||
[module ccidu1_V3]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Dump Valve
|
||||
.visibility=expert
|
||||
value.default="OFF"
|
||||
|
@ -12,7 +12,7 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module T_ccr12]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Main temperature control node of CCR12.
|
||||
.
|
||||
Switches between regulation on stick and regulation on tube depending on temperature requested.
|
||||
@ -30,7 +30,7 @@ target.default=300
|
||||
.meaning=["temperature_regulation", 20]
|
||||
|
||||
[module T_ccr12_stick]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Temperature regulation for the sample stick in ccr12.
|
||||
.extra_params=ramp
|
||||
ramp.datatype={"type":"double", "min":0,"max":60, "unit":"K/min"}
|
||||
@ -42,7 +42,7 @@ target.default=300
|
||||
.meaning=["temperature_regulation", 15]
|
||||
|
||||
[module T_ccr12_tube]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Temperature regulation for the tube of ccr12.
|
||||
.extra_params=ramp
|
||||
ramp.datatype={"type":"double", "min":0,"max":60, "unit":"K/min"}
|
||||
@ -54,28 +54,28 @@ target.default=300
|
||||
.meaning=["temperature_regulation", 10]
|
||||
|
||||
[module T_ccr12_A]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=(optional) Sample temperature sensor.
|
||||
value.datatype={"type":"double", "unit":"K"}
|
||||
value.default=300
|
||||
.meaning=["temperature", 9]
|
||||
|
||||
[module T_ccr12_B]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=(regulation) temperature sensor on stick.
|
||||
value.datatype={"type":"double", "unit":"K"}
|
||||
value.default=300
|
||||
.meaning=["temperature", 10]
|
||||
|
||||
[module T_ccr12_C]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Temperature at the coldhead.
|
||||
value.datatype={"type":"double", "unit":"K"}
|
||||
value.default=70
|
||||
.meaning=["temperature", 1]
|
||||
|
||||
[module T_ccr12_D]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=(regulation) temperature at coupling to stick.
|
||||
value.datatype={"type":"double", "unit":"K"}
|
||||
value.default=80
|
||||
@ -84,7 +84,7 @@ value.default=80
|
||||
|
||||
|
||||
[module ccr12_pressure_regulate]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Selects on which Sensor the pressure regulation works, or switches it off.
|
||||
.visibility=expert
|
||||
value.datatype={"type":"enum", "members":{'off':0,'p1':1,'p2':2}}
|
||||
@ -93,7 +93,7 @@ target.datatype={"type":"enum", "members":{'off':0,'p1':1,'p2':2}}
|
||||
target.default='off'
|
||||
|
||||
[module ccr12_compressor]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Switches the compressor for the cooling stage on or off.
|
||||
.
|
||||
Note: This should always be on, except for fast heatup for sample change.
|
||||
@ -103,7 +103,7 @@ target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
target.default='on'
|
||||
|
||||
[module ccr12_gas_switch]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Switches the gas inlet on or off.
|
||||
.
|
||||
note: in reality this switches itself off after 15min.
|
||||
@ -115,7 +115,7 @@ target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
target.default='off'
|
||||
|
||||
[module ccr12_vacuum_switch]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Switches the vacuum pumping valve on or off.
|
||||
.
|
||||
note: in reality this is interlocked with ccr12_gas_switch, only one can be on!
|
||||
@ -126,19 +126,19 @@ target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
target.default='off'
|
||||
|
||||
[module ccr12_p1]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Default pressure Sensor, linear scale 0..1000mbar
|
||||
value.datatype={"type":"double", "unit":"mbar"}
|
||||
value.default=999
|
||||
|
||||
[module ccr12_p2]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Auxillary pressure Sensor.
|
||||
value.datatype={"type":"double", "unit":"mbar"}
|
||||
value.default=1e-6
|
||||
|
||||
[module ccr12_curve_p2]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Curve for Aux pressure Sensor p2
|
||||
.visibility=expert
|
||||
value.default='TTR100'
|
||||
@ -146,7 +146,7 @@ value.datatype={"type":"enum", "members":{'0..10V':0,'default':1,'0..9V':2,'DI20
|
||||
target.datatype={"type":"enum", "members":{'0..10V':0,'default':1,'0..9V':2,'DI200':3,'DI2000':4,'TTR100':7,'PTR90':8,'PTR225/PTR237':9,'ITR90':10,'ITR100 curve D':11, 'ITR100 curve 2':12, 'ITR100 curve 3':13,'ITR100 curve 4':14,'ITR100 curve 5':15, 'ITR100 curve 6':16, 'ITR100 curve 7':17, 'ITR100 curve 8':18, 'ITR100 curve 9':19, 'ITR100 curve A':20,'CMR361':21, 'CMR362':22, 'CMR363':23, 'CMR364':24, 'CMR365':25}}
|
||||
|
||||
[module ccr12_p1_limits]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Limits for pressure regulation in P1.
|
||||
.visibility=expert
|
||||
value.datatype={"type":"limit","members":{"type":"double", "min":0,"max":1000, "unit":"mbar"}}
|
||||
@ -155,7 +155,7 @@ target.datatype={"type":"limit","members":{"type":"double", "min":0,"max":1000,
|
||||
target.default=[0,10]
|
||||
|
||||
[module ccr12_p2_limits]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Limits for pressure regulation in P2.
|
||||
.visibility=expert
|
||||
value.datatype={"type":"limit","members":{"type":"double", "min":0,"max":1000, "unit":"mbar"}}
|
||||
|
@ -12,7 +12,7 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module T_ccr12]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Main temperature control node of CCR12.
|
||||
.
|
||||
Switches between regulation on stick and regulation on tube depending on temperature requested.
|
||||
@ -41,7 +41,7 @@ userlimits.readonly=False
|
||||
.meaning=["temperature_regulation", 20]
|
||||
|
||||
[module T_ccr12_A]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=(optional) Sample temperature sensor.
|
||||
.visibility=expert
|
||||
value.datatype={"type":"double", "min":0, "unit":"K"}
|
||||
@ -49,7 +49,7 @@ value.default=300
|
||||
.meaning=["temperature", 9]
|
||||
|
||||
[module T_ccr12_B]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=(regulation) temperature sensor on stick.
|
||||
.visibility=expert
|
||||
value.datatype={"type":"double", "min":0, "unit":"K"}
|
||||
@ -57,7 +57,7 @@ value.default=300
|
||||
.meaning=["temperature", 10]
|
||||
|
||||
[module T_ccr12_C]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Temperature at the coldhead.
|
||||
.visibility=expert
|
||||
value.datatype={"type":"double", "min":0, "unit":"K"}
|
||||
@ -65,7 +65,7 @@ value.default=70
|
||||
.meaning=["temperature", 1]
|
||||
|
||||
[module T_ccr12_D]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=(regulation) temperature at coupling to stick.
|
||||
.visibility=expert
|
||||
value.datatype={"type":"double", "min":0, "unit":"K"}
|
||||
@ -75,7 +75,7 @@ value.default=80
|
||||
|
||||
|
||||
[module ccr12_pressure_regulation]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Simple two-point presssure regulation. the mode parameter selects the readout on which to regulate, or 'none' for no regulation.
|
||||
.visibility=user
|
||||
.extra_params=switchpoints, mode
|
||||
@ -91,7 +91,7 @@ value.datatype={"type":"double", "min":0, "max":1000, "unit":"mbar"}
|
||||
value.default = 1e-5
|
||||
|
||||
[module ccr12_compressor]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Switches the compressor for the cooling stage on or off.
|
||||
.
|
||||
Note: This should always be on, except for fast heatup for sample change.
|
||||
@ -101,7 +101,7 @@ value.default='off'
|
||||
target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
|
||||
[module ccr12_gas_switch]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Switches the gas inlet on or off.
|
||||
.
|
||||
note: in reality this switches itself off after 15min.
|
||||
@ -113,7 +113,7 @@ target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
target.default='off'
|
||||
|
||||
[module ccr12_vacuum_switch]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Switches the vacuum pumping valve on or off.
|
||||
.
|
||||
note: in reality this is interlocked with ccr12_gas_switch, only one can be on!
|
||||
@ -124,7 +124,7 @@ target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
target.default='off'
|
||||
|
||||
[module ccr12_p1]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Default pressure Sensor, linear scale 0..1000 mbar
|
||||
.
|
||||
Good candidate for a 'Sensor' Interface class!
|
||||
@ -140,7 +140,7 @@ userlimits.description=current user set limits for the pressure regulation.
|
||||
userlimits.readonly=False
|
||||
|
||||
[module ccr12_p2]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Auxillary pressure Sensor.
|
||||
value.default=1e-6
|
||||
value.unit=mbar
|
||||
|
@ -10,7 +10,7 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module T_htf02]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Main temperature control node of htf02.
|
||||
.
|
||||
Controls the regulation loop of the Eurotherm.
|
||||
@ -26,7 +26,7 @@ ramp.readonly=False
|
||||
.meaning=["temperature", 10]
|
||||
|
||||
[module htf02_p]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Pressure Sensor at sample space (ivc).
|
||||
value.datatype={"type":"double", "min":0, "unit":"mbar"}
|
||||
value.default=989
|
||||
|
@ -10,7 +10,7 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module T_stressihtf2]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Main temperature control node of Stressihtf2.
|
||||
value.datatype={"type":"double", "min":0, "unit":"degC"}
|
||||
value.default=20
|
||||
@ -30,7 +30,7 @@ userlimits.readonly=False
|
||||
.meaning=['temperature_regulation', 10]
|
||||
|
||||
[module T_stressihtf2_sample]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=(optional) Sample temperature sensor.
|
||||
.visibility=expert
|
||||
value.default=300
|
||||
@ -38,7 +38,7 @@ value.datatype={"type":"double", "min":0, "unit":"degC"}
|
||||
.meaning=["temperature", 9]
|
||||
|
||||
[module stressihtf2_n2]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Switches the N2 gas inlet on or off.
|
||||
.visibility=expert
|
||||
value.default='off'
|
||||
@ -47,7 +47,7 @@ target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
target.default='off'
|
||||
|
||||
[module stressihtf2_he]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Switches the He gas inlet on or off.
|
||||
.visibility=expert
|
||||
value.default='off'
|
||||
@ -56,7 +56,7 @@ target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
target.default='off'
|
||||
|
||||
[module stressihtf2_lamps]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Switches the heating lamps on or off.
|
||||
.visibility=expert
|
||||
value.default='on'
|
||||
@ -65,7 +65,7 @@ target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
target.default='on'
|
||||
|
||||
[module stressihtf2_water_ok]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Readout of the cooling water state.
|
||||
.visibility=expert
|
||||
value.default='ok'
|
||||
|
@ -10,7 +10,7 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module T]
|
||||
class=frappy.simulation.SimDrivable
|
||||
class=secop.simulation.SimDrivable
|
||||
.description=Main temperature control node of Stressihtf2.
|
||||
value.datatype={"type":"double", "min":0, "unit":"degC"}
|
||||
value.default=20
|
||||
@ -30,7 +30,7 @@ userlimits.readonly=False
|
||||
.meaning=['temperature_regulation', 10]
|
||||
|
||||
[module T_sample]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=(optional) Sample temperature sensor.
|
||||
.visibility=expert
|
||||
value.default=300
|
||||
@ -38,7 +38,7 @@ value.datatype={"type":"double", "min":0, "unit":"degC"}
|
||||
.meaning=["temperature", 9]
|
||||
|
||||
[module N2]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Switches the N2 gas inlet on or off.
|
||||
.visibility=expert
|
||||
value.default='off'
|
||||
@ -47,7 +47,7 @@ target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
target.default='off'
|
||||
|
||||
[module He]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Switches the He gas inlet on or off.
|
||||
.visibility=expert
|
||||
value.default='off'
|
||||
@ -56,7 +56,7 @@ target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
target.default='off'
|
||||
|
||||
[module lamps]
|
||||
class=frappy.simulation.SimWritable
|
||||
class=secop.simulation.SimWritable
|
||||
.description=Switches the heating lamps on or off.
|
||||
.visibility=expert
|
||||
value.default='on'
|
||||
@ -65,7 +65,7 @@ target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
||||
target.default='on'
|
||||
|
||||
[module water_ok]
|
||||
class=frappy.simulation.SimReadable
|
||||
class=secop.simulation.SimReadable
|
||||
.description=Readout of the cooling water state.
|
||||
.visibility=expert
|
||||
value.default='ok'
|
||||
|
@ -1,12 +1,12 @@
|
||||
[r3]
|
||||
class = frappy.core.Proxy
|
||||
remote_class = frappy.core.Readable
|
||||
class = secop.core.Proxy
|
||||
remote_class = secop.core.Readable
|
||||
description = temp sensor on 3He system
|
||||
uri = tcp://pc12694:5000
|
||||
export = False
|
||||
|
||||
[t3]
|
||||
class = frappy_psi.softcal.Sensor
|
||||
class = secop_psi.softcal.Sensor
|
||||
rawsensor = r3
|
||||
calib = X131346
|
||||
value.unit = K
|
||||
|
@ -11,7 +11,7 @@ bindto=0.0.0.0
|
||||
bindport=10767
|
||||
|
||||
[module T]
|
||||
class=frappy_mlz.entangle.TemperatureController
|
||||
class=secop_mlz.entangle.TemperatureController
|
||||
tangodevice=tango://localhost:10000/box/eurotherm/ctrl
|
||||
.description=Main temperature control node of Stressihtf2.
|
||||
value.unit='degC'
|
||||
@ -41,42 +41,42 @@ pid.default=[1,0,0]
|
||||
speed.default=0
|
||||
|
||||
[module T_sample_a]
|
||||
class=frappy_mlz.entangle.Sensor
|
||||
class=secop_mlz.entangle.Sensor
|
||||
tangodevice=tango://localhost:10000/box/eurotherm/sensora
|
||||
.description=Regulation temperature sensor.
|
||||
.visibility=user
|
||||
value.unit='degC'
|
||||
|
||||
[module T_sample_b]
|
||||
class=frappy_mlz.entangle.Sensor
|
||||
class=secop_mlz.entangle.Sensor
|
||||
tangodevice=tango://localhost:10000/box/eurotherm/sensorb
|
||||
.description=(optional) Sample temperature sensor.
|
||||
.visibility=expert
|
||||
value.unit='degC'
|
||||
|
||||
[module N2]
|
||||
class=frappy_mlz.entangle.NamedDigitalOutput
|
||||
class=secop_mlz.entangle.NamedDigitalOutput
|
||||
tangodevice=tango://localhost:10000/box/plc/_gas1
|
||||
.description=Switches the N2 gas inlet on or off.
|
||||
.visibility=expert
|
||||
mapping=dict(off=0,on=1)
|
||||
|
||||
[module He]
|
||||
class=frappy_mlz.entangle.NamedDigitalOutput
|
||||
class=secop_mlz.entangle.NamedDigitalOutput
|
||||
tangodevice=tango://localhost:10000/box/plc/_gas2
|
||||
.description=Switches the He gas inlet on or off.
|
||||
.visibility=expert
|
||||
mapping=dict(off=0,on=1)
|
||||
|
||||
[module lamps]
|
||||
class=frappy_mlz.entangle.NamedDigitalOutput
|
||||
class=secop_mlz.entangle.NamedDigitalOutput
|
||||
tangodevice=tango://localhost:10000/box/plc/_onoff
|
||||
.description=Switches the heating lamps on or off.
|
||||
.visibility=expert
|
||||
mapping=dict(off=0,on=1)
|
||||
|
||||
[module water_ok]
|
||||
class=frappy_mlz.entangle.NamedDigitalInput
|
||||
class=secop_mlz.entangle.NamedDigitalInput
|
||||
tangodevice=tango://localhost:10000/box/plc/_waterok
|
||||
.description=Readout of the cooling water state.
|
||||
.visibility=expert
|
||||
|
46
cfg/test.cfg
Normal file
46
cfg/test.cfg
Normal file
@ -0,0 +1,46 @@
|
||||
[node test config]
|
||||
description=description of the testing sec-node
|
||||
.
|
||||
Here should be the long description.
|
||||
It can be very long.
|
||||
.
|
||||
a single . on a line gets stripped so you can make paragraphs.
|
||||
.
|
||||
These texts are supposed to be possibly very long.
|
||||
|
||||
[interface tcp]
|
||||
type=tcp
|
||||
bindto=0.0.0.0
|
||||
bindport=10768
|
||||
|
||||
|
||||
[module LN2]
|
||||
class=secop_demo.test.LN2
|
||||
.description="random value between 0..100%%"
|
||||
value.unit = "%%"
|
||||
|
||||
[module heater]
|
||||
class=secop_demo.test.Heater
|
||||
maxheaterpower=10
|
||||
.description="some heater"
|
||||
|
||||
[module T1]
|
||||
class=secop_demo.test.Temp
|
||||
sensor="X34598T7"
|
||||
.description="some temperature"
|
||||
|
||||
[module T2]
|
||||
class=secop_demo.modules.CoilTemp
|
||||
sensor="X34598T8"
|
||||
.description="some temperature"
|
||||
|
||||
[module T3]
|
||||
class=secop_demo.modules.CoilTemp
|
||||
sensor="X34598T9"
|
||||
.description="some temperature"
|
||||
|
||||
|
||||
[module Lower]
|
||||
class=secop_demo.test.Lower
|
||||
.description="something else"
|
||||
|
@ -1,46 +0,0 @@
|
||||
Node('test.config.frappy.demo',
|
||||
'''short description of the testing sec-node
|
||||
|
||||
This description for the Nodecan be as long as you need if you use a multiline string.
|
||||
|
||||
Very long!
|
||||
The needed fields are Equipment id (1st argument), description (this)
|
||||
and the main interface of the node (3rd arg)
|
||||
''',
|
||||
'tcp://10768',
|
||||
)
|
||||
|
||||
Mod('LN2',
|
||||
'frappy_demo.test.LN2',
|
||||
'random value between 0..100%',
|
||||
value = Param(default = 0, unit = '%'),
|
||||
)
|
||||
|
||||
Mod('heater',
|
||||
'frappy_demo.test.Heater',
|
||||
'some heater',
|
||||
maxheaterpower = 10,
|
||||
)
|
||||
|
||||
Mod('T1',
|
||||
'frappy_demo.test.Temp',
|
||||
'some temperature',
|
||||
sensor = 'X34598T7',
|
||||
)
|
||||
|
||||
Mod('T2',
|
||||
'frappy_demo.test.Temp',
|
||||
'some temperature',
|
||||
sensor = 'X34598T8',
|
||||
)
|
||||
|
||||
Mod('T3',
|
||||
'frappy_demo.test.Temp',
|
||||
'some temperature',
|
||||
sensor = 'X34598T9',
|
||||
)
|
||||
|
||||
Mod('Lower',
|
||||
'frappy_demo.test.Lower',
|
||||
'something else',
|
||||
)
|
55
cfg/test_cryocombi.cfg
Normal file
55
cfg/test_cryocombi.cfg
Normal file
@ -0,0 +1,55 @@
|
||||
[node cryo_7]
|
||||
# set SEC-node properties
|
||||
description = short description
|
||||
.
|
||||
This is a very long description providing all the glory details in all the glory details about the stuff we are describing
|
||||
|
||||
|
||||
[remotenode x]
|
||||
connectto=localhost
|
||||
port=5000
|
||||
|
||||
[interface tcp]
|
||||
type=tcp
|
||||
bindto=0.0.0.0
|
||||
bindport=10769
|
||||
|
||||
|
||||
[module cryo]
|
||||
# some (non-defaut) module properties
|
||||
.group=very important/stuff
|
||||
.description=A simulated cc cryostat with heat-load, specific heat for the sample
|
||||
and a temperature dependend heat-link between sample and regulation.
|
||||
|
||||
# class of module:
|
||||
class=secop_demo.cryo.Cryostat
|
||||
|
||||
# some parameters
|
||||
jitter=0.1
|
||||
T_start=10.0
|
||||
target=10.0
|
||||
looptime=1
|
||||
ramp=6
|
||||
maxpower=20.0
|
||||
heater=4.1
|
||||
p=40
|
||||
i=10
|
||||
d=2
|
||||
mode=pid
|
||||
tolerance=0.1
|
||||
window=30
|
||||
timeout=900
|
||||
|
||||
# some (non-default) parameter properties
|
||||
pollinterval.export=False
|
||||
|
||||
# some parameter grouping
|
||||
p.group=pid
|
||||
i.group=pid
|
||||
d.group=pid
|
||||
|
||||
value.unit=K
|
||||
|
||||
# test custom properties
|
||||
value.test=customized value
|
||||
|
73
cfg/test_ppms_mf.cfg
Normal file
73
cfg/test_ppms_mf.cfg
Normal file
@ -0,0 +1,73 @@
|
||||
[node PPMS.psi.ch]
|
||||
description = PPMS at PSI
|
||||
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindto = 0.0.0.0
|
||||
bindport = 5000
|
||||
|
||||
#[module tt]
|
||||
#class = secop_psi.ppms.Temp
|
||||
#.description = main temperature
|
||||
#iodev = ppms
|
||||
|
||||
[module mf]
|
||||
class = secop_psi.ppms.Field
|
||||
.description = magnetic field
|
||||
iodev = ppms
|
||||
|
||||
#[module pos]
|
||||
#class = secop_psi.ppms.Position
|
||||
#.description = sample rotator
|
||||
#iodev = ppms
|
||||
|
||||
#[module lev]
|
||||
#class = secop_psi.ppms.Level
|
||||
#.description = helium level
|
||||
#iodev = ppms
|
||||
|
||||
#[module chamber]
|
||||
#class = secop_psi.ppms.Chamber
|
||||
#.description = chamber state
|
||||
#iodev = ppms
|
||||
|
||||
#[module r1]
|
||||
#class = secop_psi.ppms.BridgeChannel
|
||||
#.description = resistivity channel 1
|
||||
#no = 1
|
||||
#value.unit = Ohm
|
||||
#iodev = ppms
|
||||
|
||||
#[module i1]
|
||||
#class = secop_psi.ppms.Channel
|
||||
#.description = current channel 1
|
||||
#no = 1
|
||||
#value.unit = uA
|
||||
#iodev = ppms
|
||||
|
||||
#[module v1]
|
||||
#class = secop_psi.ppms.DriverChannel
|
||||
#.description = voltage channel 1
|
||||
#no = 1
|
||||
#value.unit = V
|
||||
#iodev = ppms
|
||||
|
||||
#[module tv]
|
||||
#class = secop_psi.ppms.UserChannel
|
||||
#.description = VTI temperature
|
||||
#enabled = 1
|
||||
#value.unit = K
|
||||
#iodev = ppms
|
||||
|
||||
#[module ts]
|
||||
#class = secop_psi.ppms.UserChannel
|
||||
#.description = sample temperature
|
||||
#enabled = 1
|
||||
#value.unit = K
|
||||
#iodev = ppms
|
||||
|
||||
[module ppms]
|
||||
class = secop_psi.ppms.Main
|
||||
.description = the main and poller module
|
||||
class_id = QD.MULTIVU.PPMS.1
|
||||
pollinterval = 2
|
3
cfg/testcmd.cfg
Normal file
3
cfg/testcmd.cfg
Normal file
@ -0,0 +1,3 @@
|
||||
[m]
|
||||
class = secop_psi.testcmd.TestCmd
|
||||
description = 'module for testing commands'
|
60
cfg/varioxb.cfg
Normal file
60
cfg/varioxb.cfg
Normal file
@ -0,0 +1,60 @@
|
||||
[node varioxB_vb.psi.ch]
|
||||
description = varioxB over SEA
|
||||
|
||||
[interface tcp]
|
||||
type = tcp
|
||||
bindport = 10767
|
||||
|
||||
[module seaconn]
|
||||
class = secop_psi.sea.SeaClient
|
||||
description = a SEA connection
|
||||
uri = tcp://samenv.psi.ch:8646
|
||||
|
||||
[module tvs]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tvs.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tvd]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tvd.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module pstat]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = pstat.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module pdyn]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = pdyn.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tneck1]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tneck1.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tneck2]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tneck2.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tnvs]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tnvs.varioxB.config
|
||||
remote_paths = .
|
||||
|
||||
[module tnvd]
|
||||
class = secop_psi.sea.SeaReadable
|
||||
iodev = seaconn
|
||||
json_descr = tnvd.varioxB.config
|
||||
remote_paths = .
|
||||
|
@ -1,4 +1,4 @@
|
||||
FROM python:3.9 AS base
|
||||
FROM python:3-buster AS base
|
||||
ARG PYVER=python3
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update && \
|
||||
@ -11,7 +11,7 @@ RUN apt-get update && \
|
||||
locales \
|
||||
python3 \
|
||||
python3-dev \
|
||||
python3-tango \
|
||||
python3-pytango \
|
||||
python3-venv python3-setuptools \
|
||||
virtualenv
|
||||
|
||||
@ -33,15 +33,14 @@ RUN virtualenv /home/jenkins/tools2 && \
|
||||
rm -rf /home/jenkins/tools2src
|
||||
|
||||
RUN virtualenv -p /usr/bin/python3 --system-site-packages /home/jenkins/secopvenv && \
|
||||
git clone https://forge.frm2.tum.de/review/secop/frappy /home/jenkins/frappy && \
|
||||
git clone https://forge.frm2.tum.de/review/sine2020/secop/playground /home/jenkins/playground && \
|
||||
. /home/jenkins/secopvenv/bin/activate && \
|
||||
pip install -U pip wheel setuptools && \
|
||||
pip install -r /home/jenkins/frappy/requirements-dev.txt -r /home/jenkins/frappy/requirements.txt pylint pytest && \
|
||||
rm -rf /home/jenkins/frappy
|
||||
pip install -r /home/jenkins/playground/requirements-dev.txt -r /home/jenkins/playground/requirements.txt pylint pytest && \
|
||||
rm -rf /home/jenkins/playground
|
||||
|
||||
|
||||
FROM base AS docs
|
||||
ARG PYVER=python3
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
USER root
|
||||
@ -51,8 +50,6 @@ RUN apt-get update && \
|
||||
texlive-latex-base \
|
||||
texlive-latex-recommended \
|
||||
texlive-fonts-recommended \
|
||||
texlive-fonts-extra \
|
||||
tex-gyre \
|
||||
texlive-base \
|
||||
texlive-binaries \
|
||||
latexmk
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user