Reports 1-1 of 1 Clear search Modify search
VAC (General)
takahiro.yamamoto - 3:21 Wednesday 13 November 2024 (31608) Print this report
Preparation of DAQ for the gate valve readout

Abstract

EPICS gateway for the vacuum network was prepared.
It's available as /kagra/apps/epics-deb12/extensions/bin/linux-x86_64/gateway from Debian12 system.
It was also confirmed that vacuum-related channels that do not follow the DAQ definition due to technical issues can be obtained using the alias function.
We can start taking data by DAQ soon after VAC group decides a channel name for KAGRA DAQ system for each readout value.
 

Details

In vacuum network, some EPICS IOCs were installed for reading CC-10 readout and gate valve status. Because of the problem on a number of IP address, it's difficult to assign IP address for each IOC. So we decided to use one EPICS gateway for the vacuum network and only EPICS gateway would have an IP address for DGS network.

Built EPICS gateway for Gentoo and Debian10 system already exists in /opt/rtapps and /kagra/apps, respectively. But constructing EPICS gateway server as Gentoo system is not so good from the view point of maintainability and Debian10 system is already expired in the KAGRA system. So I newly built the EPICS gateway for the Debian12 system in /kagra/apps/epics-deb12 (it should also work well on RL9 system).

Because of the technical problem, EPICS channels in vacuum network are named as KGRVAC:FOO_BAR:BAZ. Though these channels can be seen on EPICS native tools such as MEDM, StripTool, etc., naming convention doesn't follow one on KAGRA DAQ system. We decided to solve this issue by using the ALIAS function on the EPICS gateway server. The ALIAS function can be used by setting by PV list file as follows.
----------
K1:HOGE-FUGA_PIYO ALIAS KGRVAC:FOO_BAR:BAZ
----------

The first and third column is alias name for DAQ and original name in vacuum network, respectively.

Fig.1 shows the test result of ALIAS function and it works well. Because the test server is not in vacuum network, I used K1:VAC-PRESSURE_CS_SRM as original channels instead of KGRVAC:... and alias name is set as X1:... in order to avoid any conflict.

Construction Memo
On Debian12 system, the version of libreadline is different from Gentoo and Debian10 system. So binary file for Gentoo and Debian10 cannot be executed on Debian12 system. In fact, creating libreadline.so.6 as an alias to libreadline.so.8 allowed to use old binary on Debian12 system. But it's not so good manner, so I newly built.

Building EPICS base and gateway with gcc v12 which is available on Debian12 has two compile errors and a code modification was required.
The first problem is related to the difference between ULong and size_t on base/src/libCom/test/epicsExceptionTest.cpp (https://github.com/cms-sw/cmssw/issues/41795).
The 2nd one is related to the scope of class variable (https://github.com/epics-modules/pcas/commit/56403e8e4774dccc3819cab27bc975f48ab5f988).
Both two problems didn't occur on Debian10 (gcc v10) and Debian8 (gcc v4), so it seems to be related to the compatibility between gcc v12 and epics codes.

Images attached to this report
Search Help
×

Warning

×