frappy/etc/sim_mlz_amagnet.cfg
Enrico Faulhaber 87261382cf remove Message objects + rewrite server startup
Change-Id: Ide72fb915c3ca93c74edadd8952853508e677de7
Reviewed-on: https://forge.frm2.tum.de/review/19199
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-10-16 08:33:07 +02:00

133 lines
3.4 KiB
INI

[node SIM_MLZ_amagnet(Garfield)]
description=MLZ-Amagnet
.
Water cooled magnet from ANTARES@MLZ.
.
Use module to control the magnetic field.
Don't forget to select symmetry first (can be moved only at zero field!).
.
Monitor T1..T4 (Coil temps), if they get to hot, field will ramp down!
.
In case of Problems, contact the ANTARES people at MLZ.
visibility=expert
foo=bar
[interface tcp]
type=tcp
bindto=0.0.0.0
bindport=10767
[module enable]
class=secop.simulation.SimWritable
value.datatype=["enum", {'On':1,'Off':0}]
target.datatype=["enum", {'On':1,'Off':0}]
.description='Enables to Output of the Powersupply'
.visibility='advanced'
[module polarity]
class=secop.simulation.SimWritable
value.datatype=["enum", {'+1':1,'0':0,'-1':-1}]
target.datatype=["enum", {'+1':1,'0':0,'-1':-1}]
.description=polarity (+/-) switch
.
there is an interlock in the plc:
if there is current, switching polarity is forbidden
if polarity is short, powersupply is disabled
.visibility=advanced
#comtries = 50
[module symmetry]
class=secop.simulation.SimWritable
value.datatype=["enum",{'symmetric':1,'short':0, 'asymmetric':-1}]
target.datatype=["enum",{'symmetric':1,'short':0, 'asymmetric':-1}]
.description=par/ser switch selecting (a)symmetric mode
.
note: on the front panel symmetric is ser, asymmetric is par
.visibility=advanced
value.default = 'symmetric'
value.value = 'symmetric'
[module T1]
class=secop.simulation.SimReadable
.description=Temperature1 of the coils system
#warnlimits=(0, 50)
value.unit='degC'
value.default = 23.45
[module T2]
class=secop.simulation.SimReadable
.description=Temperature2 of the coils system
#warnlimits=(0, 50)
value.unit='degC'
value.default = 23.45
[module T3]
class=secop.simulation.SimReadable
.description=Temperature3 of the coils system
#warnlimits=(0, 50)
value.unit='degC'
value.default = 23.45
[module T4]
class=secop.simulation.SimReadable
.description=Temperature4 of the coils system
#warnlimits=(0, 50)
value.unit='degC'
value.default = 23.45
[module currentsource]
class=secop.simulation.SimDrivable
.description=Device for the magnet power supply (current mode)
abslimits=(0,200)
speed=1
ramp=60
precision=0.02
current=0
voltage=10
#unit=A
.visibility=advanced
.extra_params = abslimits, speed, ramp, precision, current, voltage, window
abslimits.datatype = ["tuple", [["double"], ["double"]]]
abslimits.value = (0, 200)
abslimits.default = (0, 200)
abslimits.unit = 'A'
speed.datatype = ["double", 0, 10]
speed.default = 10
speed.unit = 'A/s'
ramp.datatype = ["double", 0, 600]
ramp.default = 600
ramp.unit = 'A/min'
precision.datatype = ["double"]
precision.default = 0.1
precision.unit = 'A'
current.datatype = ["double", 0, 200]
current.default = 0
current.unit = 'A'
voltage.datatype = ["double", 0, 10]
voltage.default = 0
voltage.unit = 'V'
window.datatype = ["double", 0, 120]
window.default = 10
window.unit = 's'
[module mf]
class=secop_mlz.amagnet.GarfieldMagnet
.description=magnetic field module, handling polarity switching and stuff
subdev_currentsource=currentsource
subdev_enable=enable
subdev_polswitch=polarity
subdev_symmetry=symmetry
target.unit='T'
value.unit='T'
userlimits=(-0.35, 0.35)
calibrationtable={'symmetric':[0.00186517, 0.0431937, -0.185956, 0.0599757, 0.194042],
'short': [0.0, 0.0, 0.0, 0.0, 0.0],
'asymmetric':[0.00136154, 0.027454, -0.120951, 0.0495289, 0.110689]}
.meaning=The magnetic field
.priority=100
.visibility=user
abslimits.default=-0.4,0.4