Files
hla_framework_bd/services/params/current/ioc/PARAMS.template
T
labrec_bandBenjamin Labrecque 5ea5a7e913
Deploy / deploy (push) Failing after 7s
feat: add params ioc (#45)
Co-authored-by: Benjamin Labrecque <labrecque.benji@gmail.com>
Reviewed-on: #45
2026-07-30 13:47:00 +02:00

84 lines
2.8 KiB
Plaintext

record(calcout, "$(DEVICE):CURRENTLIMIT"){
field(DESC, "Current Limit")
field(ASG, "READONLY")
field(PREC, "3")
field(EGU, "mA")
field(VAL, "25")
field(CALC, "A ? 25 : 410 ")
field(SCAN, "Passive")
field(INPA, "AGEBD-INJECTIONGUARD:CONTROL-BRIDGE-CHECK-01 CPP")
}
record(calcout, "$(DEVICE):CURRENT"){
field(DESC, "Current reading")
field(PREC, "3")
field(EGU, "mA")
field(VAL, "0")
field(CALC, "A > 300 ? A : B ")
field(SCAN, "Passive")
field(INPA, "ARS07-DPCT-0000:CURR CPP")
field(INPB, "AGEBD-DBPM3CURR:CURRENT-AVG")
}
record(calcout, "$(DEVICE):INJECTION-RATE"){
field(DESC, "Rate der Akkumulation im Speicherring")
field(FLNK, "$(DEVICE):TRANSMISSION")
field(PREC, "4")
field(EGU, "mA/min")
field(VAL, "0")
field(CALC, "A > 300 ? C : B ")
field(SCAN, "Passive")
field(INPA, "ARS07-DPCT-0000:CURR CPP")
field(INPB, "AGEBD-TAUBPM:INJRATE CPP")
field(INPC, "AGEBD-TAUPCT:INJRATE CPP")
}
record(calcout, "$(DEVICE):TRANSMISSION"){
field(DESC, "Transmission Booster PCT to Ring")
field(PREC, "3")
field(EGU, "%")
field(VAL, "0")
# mA/min / 60 = mA/s
# mA/s / 3.125 = mA/shot
# A = C/s --> mA/shot = (mC/s)/shot = (nC/us)/shot
# 288 m / c = 0.96 us
# mA/shot * 0.96 us = nC / shot
# ABODI-DPCT:EXT-CURR.EGU "nC"
field(CALC, "A ? (B/60/3.125*0.96 / C * 100) : D")
field(SCAN, "Passive")
field(INPA, "$(DEVICE):INJECTION-ACTIVE")
field(INPB, "$(DEVICE):INJECTION-RATE")
field(INPC, "ABODI-DPCT:EXT-CURR")
field(INPD, "$(DEVICE):TRANSMISSION.LD")
}
record(calcout, "$(DEVICE):LIFETIME"){
field(DESC, "Lifetime calculation")
field(PREC, "3")
field(EGU, "hours")
field(VAL, "0")
field(CALC, "A > 300 ? C : B")
field(SCAN, "Passive")
field(INPA, "ARS07-DPCT-0000:CURR CPP")
field(INPB, "AGEBD-TAUBPM:TAU CPP")
field(INPC, "AGEBD-TAUPCT:TAU CPP")
}
record(calcout, "$(DEVICE):INJECTION-ACTIVE"){
field(DESC, "Injection active")
field(VAL, "0")
field(CALC, "A & B & !!C & D & E & F & G & H & I & !J & K & L")
field(INPA, "AGETI-CVME-MASTER-TMA:SR-Inj-Guard-Status-I CP")
field(INPB, "AGETI-CVME-MASTER-TMA:SR-Inj-Status-Sel CP")
field(INPC, "ALIRF-VME-A-GUN:CH1-MODE CP")
field(INPD, "AGETI-CVME-MASTER-TMA:Evt-LI-Gun-Ena-Sel CP")
field(INPE, "AGETI-CVME-MASTER-TMA:Evt-BO-Inj-Ena-Sel CP")
field(INPF, "AGETI-CVME-MASTER-TMA:Evt-BO-MA-B-Ena-Sel CP")
field(INPG, "AGETI-CVME-MASTER-TMA:Evt-BO-Ramp-Ena-Sel CP")
field(INPH, "AGETI-CVME-MASTER-TMA:Evt-BO-Ext-Ena-Sel CP")
field(INPI, "AGETI-CVME-MASTER-TMA:Evt-SR-Inj-Ena-Sel CP")
field(INPJ, "AGESA-SBDC-0000:SUM_INPUT_NOT_OK_LATCHED CP")
field(INPK, "AGETI-CVME-MASTER-TMA:SR-Inj-Trigger-I CP")
field(INPL, "AGEBD-TIMING:GO CP")
}