From d133fd156e601f1f30a8976d38e165ee148d3e01 Mon Sep 17 00:00:00 2001 From: Edward Wall Date: Thu, 19 Mar 2026 11:55:24 +0100 Subject: [PATCH] adds some delays and a reset --- db/sans_llb_beamstop.db | 12 +++++++++++- db/shutter.db | 28 +++++++++++++++++++++++----- 2 files changed, 34 insertions(+), 6 deletions(-) diff --git a/db/sans_llb_beamstop.db b/db/sans_llb_beamstop.db index 62b4900..39011e3 100644 --- a/db/sans_llb_beamstop.db +++ b/db/sans_llb_beamstop.db @@ -15,7 +15,17 @@ record(longout, "$(INSTR)$(SPS_REGISTER_NAME):BEAMSTOP") field(DRVL, 1) field(DRVH, 3) field(PINI, "NO") - field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):TRIGGER PP") + field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):TRIGGER-DELAY PP") +} + +record(seq, "$(INSTR)$(SPS_REGISTER_NAME):TRIGGER-DELAY") +{ + field(DESC, "Delays Internal Trigger as SPS too slow") + field(DOL0, 1) + field(LNK0, "$(INSTR)$(SPS_REGISTER_NAME):TRIGGER PP") + field(DLY0, 0.5) + field(SELM, "All") + field(PINI, "NO") } record(longout, "$(INSTR)$(SPS_REGISTER_NAME):TRIGGER") diff --git a/db/shutter.db b/db/shutter.db index 529009c..65df2bf 100644 --- a/db/shutter.db +++ b/db/shutter.db @@ -14,14 +14,22 @@ record(bo, "$(INSTR)$(SPS_REGISTER_NAME):SHUTTER") field(OMSL, "supervisory") field(ZNAM, "Closed") field(ONAM, "Open") - # field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):CLEAR-CONTROL PP") field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):SET-BUSY PP") } -record(bo, "$(INSTR)$(SPS_REGISTER_NAME):RESET") +record(seq, "$(INSTR)$(SPS_REGISTER_NAME):RESET") +{ + field(DESC, "NICOS can't write to PROC field") + field(DOL0, 1) + field(LNK0, "$(INSTR)$(SPS_REGISTER_NAME):RESETTER.PROC") + field(SELM, "All") + field(PINI, "NO") +} + +record(bo, "$(INSTR)$(SPS_REGISTER_NAME):RESETTER") { field(DESC, "PV For Resetting internal state") - field(VAL, 0) + field(DOL, 0) field(OUT, "$(INSTR)$(SPS_REGISTER_NAME):BUSY PP") } @@ -61,10 +69,20 @@ record(dfanout, "$(INSTR)$(SPS_REGISTER_NAME):CLEAR-CONTROL") field(DOL, 0) field(OUTA, "$(INSTR)$(SPS_REGISTER_NAME):CLOSE-SHUTTER PP") field(OUTB, "$(INSTR)$(SPS_REGISTER_NAME):OPEN-SHUTTER PP") - field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):SHUTTER-CONTROL PP") + field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):SHUTTER-DELAY PP") field(SELM, "All") } +record(seq, "$(INSTR)$(SPS_REGISTER_NAME):SHUTTER-DELAY") +{ + field(DESC, "Delays Internal Trigger as SPS too slow") + field(DOL0, 1) + field(LNK0, "$(INSTR)$(SPS_REGISTER_NAME):SHUTTER-CONTROL.PROC PP") + field(DLY0, 0.5) + field(SELM, "All") + field(PINI, "NO") +} + record(seq, "$(INSTR)$(SPS_REGISTER_NAME):SHUTTER-CONTROL") { field(SELM, "Specified") @@ -73,7 +91,7 @@ record(seq, "$(INSTR)$(SPS_REGISTER_NAME):SHUTTER-CONTROL") field(DO1, 1) field(LNK0, "$(INSTR)$(SPS_REGISTER_NAME):CLOSE-SHUTTER PP") field(LNK1, "$(INSTR)$(SPS_REGISTER_NAME):OPEN-SHUTTER PP") - field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):MAP-STATUS PP") + field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):MAP-STATUS.PROC PP") } # We can't just compare the Write and Readback values, as the readback