46f815af38
[WIP] work on CCU4
...
- nv control
Change-Id: I34e634d1e167f0a60d55b014c7117c9274d83c50
2024-07-02 11:11:40 +02:00
09f4f1d192
frappy_psi.sea: use ReadFailedError
...
change error class on reading parameters in SEA from HardwareError
to ReadFailed. This is in most cases more appropriate.
TODO: find errors in SEA that should be should be HardwareErrors
and a mechanism to indicate this
+ for errors related to disabled modules use the DISABLED status
Change-Id: I0342a34185a66dcf874c6ca034b7cefc98bf9c8a
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/34022
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2024-06-24 13:43:06 +02:00
15fc9ca16c
add sim for ls372
...
+ fix bin/sim-server
Change-Id: I6cad963d9e37faea172ca51a327474406ecafa4a
2024-06-19 17:19:19 +02:00
c6056ad1de
[WIP] frappy_psi:ccu4: add HeLevel, N2
...
Change-Id: Ib31ec440ecc51b01035d783065cb805b942b61b1
2024-06-19 17:19:19 +02:00
4da6aa95d7
frappy_psi/ls372: add changing pid
...
Change-Id: I8768b1e6609a42553b8e98866540fe33d1b5cd89
2024-06-19 17:19:19 +02:00
9cd38375c0
frappy_psi.sea: various improvments
...
- always open asynio and syncio connections (conenctions for
update and command)
- better synchronization when reconnecting using threading.Event
- nicer error messages
Change-Id: Ia435c3ccfa2732be4aa9f24a3b6e8484fab715a3
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/33909
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2024-06-19 17:19:19 +02:00
20596744f9
frappy_psi.triton: fix heater output issue
...
when output_module is not HeaterOutputWith range, the heater limit
can not be changed
Change-Id: If25a609e9f9667dc111cb220024388a51df993ec
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/33913
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2024-06-17 15:20:21 +02:00
0a98776e27
frappy_psi.triton: bug fixes
...
- fix channel numbers
- make sure some channels are selected
Change-Id: I11c553805ed5ee6235e54ce56a5ea68160d1d212
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/33911
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
2024-06-17 15:20:21 +02:00
f5667a9267
frappy_psi.picontrol: software control loop
...
example usage: use a temperature controller without changing
the calibration setting:
reading the raw sensor, calibrate by software and use 'manual'
heater output
Change-Id: I3dbcf37e7726b48a0516d7aa30758be52b80fe58
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/33910
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2024-06-17 15:20:21 +02:00
8b27e4012c
frappy_psi.ah2700: auto create loss module with Pinata
...
the loss angle is a separate quantity, which is preferred to
be an extra module. create this automatically.
Change-Id: I97f6be48f3411d8143f2ff85c2c61711fc71e8d6
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/33908
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2024-06-17 15:20:21 +02:00
e093bdae96
bug fix in frappy_psi.convergence
...
+ various doc improvements
Change-Id: I8ce2a1f006a5e4870285ce1f6015510e21d01a13
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/33906
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2024-06-17 15:20:21 +02:00
8bc0671f73
fs furnace: move PI with relais to frappy_psi/furnace.py
...
Change-Id: Ia8bec296035b3ae23a698f041fe8be39d925d996
2024-06-12 11:25:22 +02:00
69938f7ce8
frappy_psi.ah2700: create loss module automatically
...
using the Pinata mechanism
Change-Id: I07b06b2563241600fbe454366089717a59d55bdc
2024-06-12 11:25:22 +02:00
67fa50a9e0
[WIP] fixes for gas10ka / varioxB
...
treat proxy for io correctly
2024-06-10 10:11:03 +02:00
d492f7326f
frappy_psi.parmod: make async
2024-05-07 10:25:02 +02:00
7929c37027
frappy_psi.sea: better timeout behaviour
...
timeout parameter not only for requests but also for connects
this might avoid blocking situations
2024-05-07 10:23:21 +02:00
9467f5233c
increase mercury timeout
...
+ set try_cnt for IPS to 0 (do no longer know why)
2024-05-02 14:54:52 +02:00
17a44ef42a
fixed dilsc, fist try before tests
...
Change-Id: Iaac5f07c27879c7c17be2e25defde19e9ddd1566
2024-04-29 12:18:12 +02:00
adfb561308
add cetoni pump for flowsas project
2024-04-03 11:31:38 +02:00
70a31b5cae
attocube: remove seperate pyanc350 python module
...
- implement positioner as an io class
- proper shut down behaviour
Change-Id: If04176f779809fd5b08f586556cac668cf188479
2024-03-28 10:12:18 +01:00
1715f95dd4
frappy_psi.attocube: add lock protection to hw access
...
in order to avoid sporadic timeout problems
Change-Id: I36f67ae72b65e9c1f3179cae942b0a7d94584e55
2024-03-27 17:08:24 +01:00
db29776dd5
reworked attocube
...
- step_mode: soft closed loop, stepwise, reading encoder after a delay
- calib_steps command to determine step size
Change-Id: I27bdffb4d564ac9c55a6473704ac2de6ad92bac8
2024-03-25 16:47:13 +01:00
a2905d9fbc
improve attocube driver
...
- driving in an extra thread, hoping not to miss end of travel
status bits (does not work always)
- maxtry parameter for trying several times
TODO: move by step (in an other thread)
Change-Id: I89b51d1f6926f2fd26ec22d43aede377b5231583
2024-03-22 14:38:23 +01:00
16b826394f
fixes for attocube
...
Change-Id: Id5eeb749ba010fec59d1c2f8a3258ee34a47e246
2024-03-20 16:59:04 +01:00
ea8570d422
wip: fix attocube
2024-03-20 16:12:03 +01:00
1169e0cd09
improve sea interface
...
Change-Id: I58fb4b10ef9466f90e4cd58b6c67bcfb11c493e3
2024-03-08 15:59:16 +01:00
7d02498b3d
improve async behaviour of parmod.Driv
...
Change-Id: I3889614a0deaba4ef13b86c6600b6f96bc502a39
2024-03-08 15:58:17 +01:00
694b121c01
fix more stop doc strings
...
Change-Id: Id7ea0a6d0c959e980beee8fbea73932c701977d7
2024-03-08 15:38:34 +01:00
0f50de9a7f
fix command doc string handling and change default stop doc string
...
- fix inheritance of command description
- when no stop method is given, then the description should indicate
that stop is a no-op -> add missing doc strings to stop methods
- add test to make sure stop command doc strings are given
when implemented
Change-Id: If891359350e8dcdec39a706841d61d4f8ec8926f
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/33266
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Alexander Zaft <a.zaft@fz-juelich.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2024-03-08 15:34:08 +01:00
6e7be6b4c7
simplify callbacks
...
on Module, use one single callback list 'paramsCallback' instead of
'valueCallbacks', 'errorCallbacks'. Redesign the mechanism to
avoid most of the closures.
Change-Id: Ie7f68f6bf97ab3f3cd961faa20b0e77730e5b37d
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/33118
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
2024-03-08 15:33:52 +01:00
2b42e3fa0a
flamesample: improve comments to parmod.SwitchDriv
2024-02-23 10:13:31 +01:00
5b0da3ba98
fixes on 2023-11-27
...
- ls372 autorange: wait one sec. more for switching
- keep only one channel, even after target is reached
- intermediate target only when T is raise, but not when lowered
2024-02-23 10:13:05 +01:00
c80b4ac5fb
fixes for flamesample
...
- fixes in SwitchDrive
- increase range when reading is zero in autorange
- add debugging log msgs
2024-02-23 10:10:38 +01:00
ffaa9c83bd
introduce FrozenParam
...
For the case when the readback of a parameter does not reflect the
change immediately.
May also be used on Writable.target or Drivable.target with a short
BUSY period.
+ bug fix in an error message in frappy.datatypes.IntRange
Change-Id: I5e1c871629f9e3940ae80f35cb6307f404202b4a
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/31981
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2024-02-02 14:11:25 +01:00
f9a0fdf7e4
add frappy_psi/calcurve.py and calibtest.py
...
Change-Id: I5b9aae0ac3bcd76d846c08717201e6c32df4b675
2024-01-31 17:09:17 +01:00
4cdd3b0709
remove more coding cookies
...
mainly from frappy_psi
Change-Id: I192811459aebe97f3076888cd31a308a51e6aa49
2024-01-29 14:14:09 +01:00
15d38d7cc1
all: remove coding cookies
...
Change-Id: I53a4d79c3ebc50b8aed43a5ef1fa6538f8059a47
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/32251
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Alexander Zaft <a.zaft@fz-juelich.de >
2024-01-29 14:06:06 +01:00
0004dc7620
implement pfeiffer TPG vacuum reading
...
this is an example where StringIO.communicate has to be extended
Change-Id: Iff6bb426ee7960904993574531de84793152e21d
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/32385
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2024-01-29 13:36:18 +01:00
777a2cb6a9
core: move module handling out of dispatcher
...
Split module handling code from the dispatcher.
The new class for managing Modules is called SecNode.
* change logging to no longer need a reference to modobj
* modules get a reference to the secnode obj instead of the
dispatcher
* intermediate usage fixes for frappy_psi/sea
Change-Id: Ifee4bb47aa7a4508bb4a47c9a5873b7e2d5faf67
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/32249
Reviewed-by: Alexander Zaft <a.zaft@fz-juelich.de >
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
2024-01-29 13:33:47 +01:00
36c512d50b
frappy_psi/SR.py: got changes from develop branch
...
+ move soft auto range from read_value to doPoll
Change-Id: I0bf8ac15f8515e55cd9131be33615908ffc99c12
2024-01-29 10:29:33 +01:00
17b7a01ce1
Driver for ThermoHaake Phoenix P1 Circulator
...
Change-Id: I0573eeac2e40b4715072661c819701186733bf94
2024-01-29 10:29:33 +01:00
be66faa591
frappy_psi/thermofisher: version through gerrit
...
Change-Id: I6999e84d1c5efd0625c6df89e97dad46e5a8cd59
2024-01-29 10:29:33 +01:00
e27b4f72b5
newset version of oksanas drivers
...
Change-Id: Ia6d8b727e48e96a14b75feeef5d3e6c002cb82a0
2024-01-29 10:29:33 +01:00
bc7922f5c8
iono pi max demo (drums)
...
+ fix spacing in ionopimax.py
2024-01-25 09:40:10 +01:00
99a58933ec
ionopimax: Add LogVoltageInput
2024-01-18 08:40:33 +01:00
4a2ce62dd8
added drivers for small furnace
2024-01-11 16:28:06 +01:00
9e6699dd1e
more robust calculation for heater resistivity
...
and check is is in the allowed range 10 .. 100 Ohm
Change-Id: If485480c0974d953165c37f7354dc2818f68b30b
2023-12-15 16:00:26 +01:00
416cdd5a88
Autogain function for SR830 lock-in driver
...
Change-Id: If07ec9182e5153e1237b9818ce555162f54e0ae5
2023-12-11 08:31:43 +01:00
1bd188e326
For the lockin830 get_par/set_par are implemented.
...
Change-Id: I5b6707a07d936d24528173a2edae49a148081ff9
2023-12-11 08:31:36 +01:00
f7b29ee959
SR830: moved dicts out of class
...
Change-Id: If056b1bf4e81c3b609ded087dff2b40c7119903f
2023-12-11 08:31:29 +01:00