diff --git a/etc/amagnet.cfg b/etc/amagnet.cfg index 344a588..df164a5 100644 --- a/etc/amagnet.cfg +++ b/etc/amagnet.cfg @@ -21,17 +21,17 @@ bindport=10767 framing=eol encoding=secop -[device enable] +[module enable] class=secop_mlz.entangle.NamedDigitalOutput -tangodevice='tango://localhost:10000/box/plc/_enable' +tangomodule='tango://localhost:10000/box/plc/_enable' value.datatype=["enum", {'On':1,'Off':0}] target.datatype=["enum", {'On':1,'Off':0}] .description='Enables to Output of the Powersupply' .visibility='advanced' -[device polarity] +[module polarity] class=secop_mlz.entangle.NamedDigitalOutput -tangodevice=tango://localhost:10000/box/plc/_polarity +tangomodule=tango://localhost:10000/box/plc/_polarity value.datatype=["enum", {'+1':1,'0':0,'-1':-1}] target.datatype=["enum", {'+1':1,'0':0,'-1':-1}] .description=polarity (+/-) switch @@ -43,9 +43,9 @@ target.datatype=["enum", {'+1':1,'0':0,'-1':-1}] comtries=50 -[device symmetry] +[module symmetry] class=secop_mlz.entangle.NamedDigitalOutput -tangodevice=tango://localhost:10000/box/plc/_symmetric +tangomodule=tango://localhost:10000/box/plc/_symmetric 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 @@ -53,37 +53,37 @@ target.datatype=["enum",{'symmetric':1,'short':0, 'asymmetric':-1}] symmetric is ser, asymmetric is par .visibility=advanced -[device T1] +[module T1] class=secop_mlz.entangle.AnalogInput -tangodevice=tango://localhost:10000/box/plc/_t1 +tangomodule=tango://localhost:10000/box/plc/_t1 .description=Temperature1 of the coils system #warnlimits=(0, 50) value.unit='degC' -[device T2] +[module T2] class=secop_mlz.entangle.AnalogInput -tangodevice=tango://localhost:10000/box/plc/_t2 +tangomodule=tango://localhost:10000/box/plc/_t2 .description=Temperature2 of the coils system #warnlimits=(0, 50) value.unit='degC' -[device T3] +[module T3] class=secop_mlz.entangle.AnalogInput -tangodevice=tango://localhost:10000/box/plc/_t3 +tangomodule=tango://localhost:10000/box/plc/_t3 .description=Temperature3 of the coils system #warnlimits=(0, 50) value.unit='degC' -[device T4] +[module T4] class=secop_mlz.entangle.AnalogInput -tangodevice=tango://localhost:10000/box/plc/_t4 +tangomodule=tango://localhost:10000/box/plc/_t4 .description=Temperature4 of the coils system #warnlimits=(0, 50) value.unit='degC' -[device currentsource] +[module currentsource] class=secop_mlz.entangle.PowerSupply -tangodevice=tango://localhost:10000/box/lambda/curr +tangomodule=tango://localhost:10000/box/lambda/curr .description=Device for the magnet power supply (current mode) abslimits=(0,200) speed=1 @@ -94,9 +94,9 @@ voltage=10 #unit=A .visibility=advanced -[device mf] +[module mf] class=secop_mlz.amagnet.GarfieldMagnet -.description=magnetic field device, handling polarity switching and stuff +.description=magnetic field module, handling polarity switching and stuff subdev_currentsource=currentsource subdev_enable=enable subdev_polswitch=polarity diff --git a/etc/ccr12.cfg b/etc/ccr12.cfg index 04753a6..68211e2 100644 --- a/etc/ccr12.cfg +++ b/etc/ccr12.cfg @@ -13,37 +13,37 @@ bindport=10767 framing=eol encoding=secop -[device automatik] +[module automatik] class=secop_mlz.entangle.NamedDigitalOutput -tangodevice=tango://ccr12:10000/box/plc/_automatik +tangomodule=tango://ccr12:10000/box/plc/_automatik mapping=dict(Off=0,p1=1,p2=2) -[device compressor] +[module compressor] class=secop_mlz.entangle.NamedDigitalOutput -tangodevice=tango://ccr12:10000/box/plc/_cooler_onoff +tangomodule=tango://ccr12:10000/box/plc/_cooler_onoff mapping=dict(Off=0,On=1) -[device gas] +[module gas] class=secop_mlz.entangle.NamedDigitalOutput -tangodevice=tango://ccr12:10000/box/plc/_gas_onoff +tangomodule=tango://ccr12:10000/box/plc/_gas_onoff mapping=dict(Off=0,On=1) -[device vacuum] +[module vacuum] class=secop_mlz.entangle.NamedDigitalOutput -tangodevice=tango://ccr12:10000/box/plc/_vacuum_onoff +tangomodule=tango://ccr12:10000/box/plc/_vacuum_onoff mapping=dict(Off=0,On=1) -[device p1] +[module p1] class=secop_mlz.entangle.AnalogInput -tangodevice=tango://ccr12:10000/box/plc/_p1 +tangomodule=tango://ccr12:10000/box/plc/_p1 -[device p2] +[module p2] class=secop_mlz.entangle.AnalogInput -tangodevice=tango://ccr12:10000/box/plc/_p2 +tangomodule=tango://ccr12:10000/box/plc/_p2 -[device curve_p2] +[module curve_p2] class=secop_mlz.entangle.NamedDigitalInput -tangodevice=tango://ccr12:10000/box/plc/_curve +tangomodule=tango://ccr12:10000/box/plc/_curve value.default='undefined' mapping=dict(curve1=1,curve2=2,curve3=3) diff --git a/etc/cryo.cfg b/etc/cryo.cfg index d8aaecf..26d2e4d 100644 --- a/etc/cryo.cfg +++ b/etc/cryo.cfg @@ -14,7 +14,7 @@ framing=eol encoding=secop -[device cryo] +[module cryo] # some (non-defaut) module properties .group=very important/stuff .description=A simulated cc cryostat with heat-load, specific heat for the sample diff --git a/etc/demo.cfg b/etc/demo.cfg index e86ff4d..c39504e 100644 --- a/etc/demo.cfg +++ b/etc/demo.cfg @@ -9,35 +9,35 @@ bindport=10767 framing=eol encoding=secop -[device heatswitch] +[module heatswitch] class=secop_demo.modules.Switch switch_on_time=5 switch_off_time=10 -[device mf] +[module mf] class=secop_demo.modules.MagneticField heatswitch = heatswitch -[device ts] +[module ts] class=secop_demo.modules.SampleTemp sensor = 'Q1329V7R3' ramp = 4 target = 10 default = 10 -[device tc1] +[module tc1] class=secop_demo.modules.CoilTemp sensor="X34598T7" -[device tc2] +[module tc2] class=secop_demo.modules.CoilTemp sensor="X39284Q8' -[device label] +[module label] class=secop_demo.modules.Label system=Cryomagnet MX15 subdev_mf=mf subdev_ts=ts -#[device vt] +#[module vt] #class=secop_demo.modules.ValidatorTest diff --git a/etc/epics.cfg b/etc/epics.cfg index 762903f..fb9616f 100644 --- a/etc/epics.cfg +++ b/etc/epics.cfg @@ -16,23 +16,23 @@ bindport=10767 framing=eol encoding=secop -[device tc1] +[module tc1] class=secop_demo.demo.CoilTemp sensor="X34598T7" -[device tc2] +[module tc2] class=secop_demo.demo.CoilTemp sensor="X39284Q8' -[device sensor1] +[module sensor1] class=secop_ess.epics.EpicsReadable epics_version="v4" .group="Lakeshore336" value_pv="DEV:KRDG1" -[device loop1] +[module loop1] class=secop_ess.epics.EpicsTempCtrl epics_version="v4" .group="Lakeshore336" @@ -42,14 +42,14 @@ target_pv="DEV:SETP_S1" heaterrange_pv="DEV:RANGE_S1" -[device sensor2] +[module sensor2] class=secop_ess.epics.EpicsReadable epics_version="v4" .group="Lakeshore336" value_pv="DEV:KRDG2" -[device loop2] +[module loop2] class=secop_ess.epics.EpicsTempCtrl epics_version="v4" .group="Lakeshore336" diff --git a/etc/sim.cfg b/etc/sim.cfg index 21cd177..60149ea 100644 --- a/etc/sim.cfg +++ b/etc/sim.cfg @@ -12,7 +12,7 @@ framing=eol encoding=secop -[device sim] +[module sim] class=secop.simulation.SimDrivable .description=simulation stuff .extra_params=param3,param4,jitter,ramp diff --git a/etc/sim_mlz_stressihtf2_v2.cfg b/etc/sim_mlz_stressihtf2_v2.cfg new file mode 100644 index 0000000..8d3595d --- /dev/null +++ b/etc/sim_mlz_stressihtf2_v2.cfg @@ -0,0 +1,79 @@ +[node stressihtf2] +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. + +meaning={'T_regulation':{'T':100}, 'T_sample':{'T_sample':100}} + +[interface tcp] +interface=tcp +bindto=0.0.0.0 +bindport=10767 +# protocol to use for this interface +framing=eol +encoding=secop + +[module T] +class=secop.simulation.SimDrivable +.description=Main temperature control node of Stressihtf2. +value.unit='degC' +value.default=20 +target.datatype=["double", 0, 2000] +target.default=20 +target.unit='degC' +.extra_params=ramp,regulationmode,abslimits,userlimits +ramp.datatype=["double",0,600] +ramp.description=target ramping speed in K/min. +ramp.default=60 +ramp.unit=K/min +abslimits.datatype=["tuple",[["double"],["double"]]] +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). +abslimits.unit='degC' +abslimits.readonly=True +userlimits.datatype=["tuple",[["double"],["double"]]] +userlimits.default=[0,300] +userlimits.description=current user set limits for the setpoint. must be inside abslimits. +userlimits.unit='degC' + +[module T_sample] +class=secop.simulation.SimReadable +.description=(optional) Sample temperature sensor. +.visibility=expert +value.default=300 +value.unit='degC' + +[module N2] +class=secop.simulation.SimWritable +.description=Switches the N2 gas inlet on or off. +.visibility=expert +value.default='off' +value.datatype=["enum", {'off':0,'on':1}] +target.datatype=["enum", {'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=["enum", {'off':0,'on':1}] +target.datatype=["enum", {'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=["enum", {'off':0,'on':1}] +target.datatype=["enum", {'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=["enum", {'failed':0,'ok':1}] + diff --git a/etc/test.cfg b/etc/test.cfg index bfb2cf2..04b29aa 100644 --- a/etc/test.cfg +++ b/etc/test.cfg @@ -17,26 +17,26 @@ framing=eol encoding=secop -[device LN2] +[module LN2] class=secop_demo.test.LN2 -[device heater] +[module heater] class=secop_demo.test.Heater maxheaterpower=10 -[device T1] +[module T1] class=secop_demo.test.Temp sensor="X34598T7" -[device T2] +[module T2] class=secop_demo.modules.CoilTemp sensor="X34598T8" -[device T3] +[module T3] class=secop_demo.modules.CoilTemp sensor="X34598T9" -[device Lower] +[module Lower] class=secop_demo.test.Lower