Hi Marco,
I think you can try to set up a stringout record with OUT pointing to the EGU field of the pressure reading and DOL pointing to the pressureUnit.
Let the pressure reading FLNK be the pressureUnit, and FLNK of pressureUnit be the strinout record. If it goes well, reading the pressure will trigger the reading of pressureUnit and then trigger the update EGU of pressureReading.
I did not tried anything like this before, so I’m not sure if updating the EGU field of the pressure reading will or will not trigger the process of the pressure reading and take you into an infinite loop.
Good luck.
Wanming Liu
L120B, Bldg 360
HEP,ANL
From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of
Marco A. Barra Montevechi Filho via Tech-talk
Sent: Monday, March 14, 2022 12:31 PM
To: tech-talk at aps.anl.gov
Subject: Linking PVs to EGU field
Hello all.
I have an IOC that controls a mvc3 pressure gauge controller and retrieves its information. Between many PVs, the IOC has one that is responsible for taking the pressure values and one that is responsible for taking the units in which these pressures are expressed.
Both use the stream module to send commands to the gauge and retrieve its response. I want to make the units end up automatically in the _Pressure.EGU field, but i dont know how.
I've tried:
record(mbbi, "$(BEAMLINE):$(DEVICE_NAME):PressureUnit") {
field(DESC, "Vacuum measurement unit")
field(INP, "@mvc3.proto PressureUnit $(PORT)")
record(ai, "$(BEAMLINE):$(DEVICE_NAME):_Pressure") {
field(DESC, "Get device pressure")
field(EGU, "$(BEAMLINE):$(DEVICE_NAME):PressureUnit")
field(INP, "@mvc3.proto RPV$(CHAN_NUM) $(PORT)")
}
But, although cagets to PressureUnit and to _Pressure do return their values, any call to $(BEAMLINE):$(DEVICE_NAME):_Pressure.EGU returns no actual value.
Are there any suggestions? I also tried FLNK or DOL but im not sure if im using them correctly. Thanks in advance.
Aviso Legal: Esta mensagem e seus anexos podem conter informações confidenciais e/ou de uso restrito. Observe atentamente seu conteúdo e considere eventual consulta ao remetente antes
de copiá-la, divulgá-la ou distribuí-la. Se você recebeu esta mensagem por engano, por favor avise o remetente e apague-a imediatamente.
Disclaimer: This email and its attachments may contain confidential and/or privileged information. Observe its content carefully and consider possible querying to the sender before
copying, disclosing or distributing it. If you have received this email by mistake, please notify the sender and delete it immediately.