several improvements and bugfixes

+ rework GUI
  - include a combobox for selection of visibility
  - include a checkbox wether validation should be done in the client
  - remove unused lineEdit
+ improve datatypes
+ improve tests for new descriptive data
+ metaclasse: fix overlooked read_* or write_* func's
+ improve polling
+ Introduce new ErrorClasses
+ dispatcher: use new features of datatypes + PARAMS
+ improve lib
+ autopep8
+ first working version of MLZ_entangle integration
+ split specific stuff into it's own package (MLZ,demo,ess)

Change-Id: I8ac3ce871b28f44afecbba6332ca741095426712
This commit is contained in:
Enrico Faulhaber
2017-07-09 22:18:01 +02:00
committed by Alexander Lenz
parent 8a63a6c63f
commit 29ee07c5b3
25 changed files with 1830 additions and 220 deletions

45
etc/ccr12.cfg Normal file
View File

@ -0,0 +1,45 @@
[equipment]
id=ccr12
[interface tcp]
interface=tcp
bindto=0.0.0.0
bindport=10767
# protocol to use for this interface
framing=eol
encoding=demo
[device automatik]
class=secop_mlz.entangle.NamedDigitalOutput
tangodevice=tango://ccr12:10000/box/plc/_automatik
mapping=dict(Off=0,p1=1,p2=2)
[device compressor]
class=secop_mlz.entangle.NamedDigitalOutput
tangodevice=tango://ccr12:10000/box/plc/_cooler_onoff
mapping=dict(Off=0,On=1)
[device gas]
class=secop_mlz.entangle.NamedDigitalOutput
tangodevice=tango://ccr12:10000/box/plc/_gas_onoff
mapping=dict(Off=0,On=1)
[device vacuum]
class=secop_mlz.entangle.NamedDigitalOutput
tangodevice=tango://ccr12:10000/box/plc/_vacuum_onoff
mapping=dict(Off=0,On=1)
[device p1]
class=secop_mlz.entangle.AnalogInput
tangodevice=tango://ccr12:10000/box/plc/_p1
[device p2]
class=secop_mlz.entangle.AnalogInput
tangodevice=tango://ccr12:10000/box/plc/_p2
[device curve_p2]
class=secop_mlz.entangle.NamedDigitalInput
tangodevice=tango://ccr12:10000/box/plc/_curve
value.default='undefined'
mapping=dict(curve1=1,curve2=2,curve3=3)

View File

@ -5,6 +5,7 @@ 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]
interface=tcp
bindto=0.0.0.0
@ -18,7 +19,7 @@ encoding=demo
# some (non-defaut) module properties
.group=very important/stuff
# class of module:
class=devices.cryo.Cryostat
class=secop_demo.cryo.Cryostat
# some parameters
jitter=0.1

View File

@ -10,34 +10,34 @@ framing=eol
encoding=demo
[device heatswitch]
class=devices.demo.Switch
class=secop_demo.demo.Switch
switch_on_time=5
switch_off_time=10
[device mf]
class=devices.demo.MagneticField
class=secop_demo.demo.MagneticField
heatswitch = heatswitch
[device ts]
class=devices.demo.SampleTemp
class=secop_demo.demo.SampleTemp
sensor = 'Q1329V7R3'
ramp = 4
target = 10
default = 10
[device tc1]
class=devices.demo.CoilTemp
class=secop_demo.demo.CoilTemp
sensor="X34598T7"
[device tc2]
class=devices.demo.CoilTemp
class=secop_demo.demo.CoilTemp
sensor="X39284Q8'
[device label]
class=devices.demo.Label
class=secop_demo.demo.Label
system=Cryomagnet MX15
subdev_mf=mf
subdev_ts=ts
#[device vt]
#class=devices.demo.ValidatorTest
#class=secop_demo.demo.ValidatorTest

View File

@ -17,23 +17,23 @@ framing=eol
encoding=demo
[device tc1]
class=devices.demo.CoilTemp
class=secop_demo.demo.CoilTemp
sensor="X34598T7"
[device tc2]
class=devices.demo.CoilTemp
class=secop_demo.demo.CoilTemp
sensor="X39284Q8'
[device sensor1]
class=devices.epics.EpicsReadable
class=secop_ess.epics.EpicsReadable
epics_version="v4"
.group="Lakeshore336"
value_pv="DEV:KRDG1"
[device loop1]
class=devices.epics.EpicsTempCtrl
class=secop_ess.epics.EpicsTempCtrl
epics_version="v4"
.group="Lakeshore336"
@ -43,14 +43,14 @@ heaterrange_pv="DEV:RANGE_S1"
[device sensor2]
class=devices.epics.EpicsReadable
class=secop_ess.epics.EpicsReadable
epics_version="v4"
.group="Lakeshore336"
value_pv="DEV:KRDG2"
[device loop2]
class=devices.epics.EpicsTempCtrl
class=secop_ess.epics.EpicsTempCtrl
epics_version="v4"
.group="Lakeshore336"

View File

@ -11,21 +11,21 @@ encoding=demo
[device LN2]
class=devices.test.LN2
class=secop_demo.test.LN2
[device heater]
class=devices.test.Heater
class=secop_demo.test.Heater
maxheaterpower=10
[device T1]
class=devices.test.Temp
class=secop_demo.test.Temp
sensor="X34598T7"
[device T2]
class=devices.demo.CoilTemp
class=secop_demo.demo.CoilTemp
sensor="X34598T8"
[device T3]
class=devices.demo.CoilTemp
class=secop_demo.demo.CoilTemp
sensor="X34598T9"