
+ make 'limit' usable as type in cfg files + minor fixes Change-Id: Ib94b2645c7a0d978d64d4c86c4415d4b5b0d485f Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21485 Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de> Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de> Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
74 lines
2.5 KiB
INI
74 lines
2.5 KiB
INI
[node stressihtf2_v2]
|
|
description = [sim] Stressihtf2 box of MLZ Sample environment group
|
|
.
|
|
Controls an High Temperature Furnace with an Eurotherm and an PLC controlling some valves and checking cooling water.
|
|
|
|
|
|
[interface tcp]
|
|
type=tcp
|
|
bindto=0.0.0.0
|
|
bindport=10767
|
|
|
|
[module T]
|
|
class=secop.simulation.SimDrivable
|
|
.description=Main temperature control node of Stressihtf2.
|
|
value.datatype={"type":"double", "min":0, "unit":"degC"}
|
|
value.default=20
|
|
target.datatype={"type":"double", "min":0, "max":2000, "unit":"degC"}
|
|
target.default=20
|
|
.extra_params=ramp,regulationmode,abslimits,userlimits
|
|
ramp.datatype={"type":"double", "min":0, "max":600, "unit":"K/min"}
|
|
ramp.description=target ramping speed in K/min.
|
|
ramp.default=60
|
|
abslimits.datatype={"type":"limit", "members":{"type":"double", "min":0, "max":2000, "unit":"degC"}}
|
|
abslimits.default=[0,2000]
|
|
abslimits.description=currently active absolute limits for the setpoint. depend on the regulationmode parameter (both/stick->0..600, tube->0..300K).
|
|
userlimits.datatype={"type":"limit", "members":{"type":"double", "min":0, "max":2000, "unit":"degC"}}
|
|
userlimits.default=[0,300]
|
|
userlimits.description=current user set limits for the setpoint. must be inside abslimits.
|
|
userlimits.readonly=False
|
|
.meaning=['temperature_regulation', 10]
|
|
|
|
[module T_sample]
|
|
class=secop.simulation.SimReadable
|
|
.description=(optional) Sample temperature sensor.
|
|
.visibility=expert
|
|
value.default=300
|
|
value.datatype={"type":"double", "min":0, "unit":"degC"}
|
|
.meaning=["temperature", 9]
|
|
|
|
[module N2]
|
|
class=secop.simulation.SimWritable
|
|
.description=Switches the N2 gas inlet on or off.
|
|
.visibility=expert
|
|
value.default='off'
|
|
value.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
|
target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
|
target.default='off'
|
|
|
|
[module He]
|
|
class=secop.simulation.SimWritable
|
|
.description=Switches the He gas inlet on or off.
|
|
.visibility=expert
|
|
value.default='off'
|
|
value.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
|
target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
|
target.default='off'
|
|
|
|
[module lamps]
|
|
class=secop.simulation.SimWritable
|
|
.description=Switches the heating lamps on or off.
|
|
.visibility=expert
|
|
value.default='on'
|
|
value.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
|
target.datatype={"type":"enum", "members":{'off':0,'on':1}}
|
|
target.default='on'
|
|
|
|
[module water_ok]
|
|
class=secop.simulation.SimReadable
|
|
.description=Readout of the cooling water state.
|
|
.visibility=expert
|
|
value.default='ok'
|
|
value.datatype={"type":"enum", "members":{'failed':0,'ok':1}}
|
|
|