diff --git a/db/sans_llb_beamstop.db b/db/sans_llb_beamstop.db index 1cf4bbb..f2651b7 100644 --- a/db/sans_llb_beamstop.db +++ b/db/sans_llb_beamstop.db @@ -9,32 +9,11 @@ record(longout, "$(INSTR)$(SPS_REGISTER_NAME):BEAMSTOP-INIT") record(longout, "$(INSTR)$(SPS_REGISTER_NAME):BEAMSTOP") { - field(DESC, "Move to new Beamstop") - field(OUT, "$(INSTR)$(SPS_REGISTER_NAME):BEAMSTOP-RAW PP") - field(OMSL, "supervisory") + field(DESC, "Select new Beamstop") field(DRVL, 1) field(DRVH, 3) field(PINI, "NO") - 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):SET-BUSY.PROC PP") - field(DLY0, 0.5) - field(SELM, "All") - field(PINI, "NO") -} - -record(longout, "$(INSTR)$(SPS_REGISTER_NAME):SET-BUSY") -{ - field(DESC, "Trigger Internal Busy Status") - # This determines the number of max retry ticks - field(VAL, 5) - field(OUT, "$(INSTR)$(SPS_REGISTER_NAME):BUSY PP") - field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):TRIGGER") + field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):SET-BUSY.PROC PP") } # Reset status @@ -58,6 +37,37 @@ record(bi, "$(INSTR)$(SPS_REGISTER_NAME):BUSY") field(ONAM, "Busy") } +record(longout, "$(INSTR)$(SPS_REGISTER_NAME):SET-BUSY") +{ + field(DESC, "Trigger Internal Busy Status") + # This determines the number of max retry ticks + field(VAL, 5) + field(OUT, "$(INSTR)$(SPS_REGISTER_NAME):BUSY PP") + field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):BEAMSTOP-OUT") +} + +record(longout, "$(INSTR)$(SPS_REGISTER_NAME):BEAMSTOP-OUT") +{ + field(DESC, "Send new selection to SPS") + field(DOL, "$(INSTR)$(SPS_REGISTER_NAME):BEAMSTOP NPP") + field(OUT, "$(INSTR)$(SPS_REGISTER_NAME):BEAMSTOP-RAW PP") + field(OMSL, "closed_loop") + field(DRVL, 1) + field(DRVH, 3) + field(PINI, "NO") + field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):TRIGGER-DELAY") +} + +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.PROC PP") + field(DLY0, 0.5) + field(SELM, "All") + field(PINI, "NO") +} + record(longout, "$(INSTR)$(SPS_REGISTER_NAME):TRIGGER") { field(DESC, "Internal Trigger") @@ -81,8 +91,8 @@ record(calcout, "$(INSTR)$(SPS_REGISTER_NAME):RETRY") field(CALC, "A#B&&C#0&&D=0&&E=0?1:0") field(DOPT, "Use CALC") field(OOPT, "When Non-zero") - field(OUT, "$(INSTR)$(SPS_REGISTER_NAME):TRIGGER.PROC PP") - field(SCAN, "1 second") + field(OUT, "$(INSTR)$(SPS_REGISTER_NAME):BEAMSTOP-OUT.PROC PP") + field(SCAN, "2 second") field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):DECREASE-BUSY-TICK") } @@ -104,7 +114,7 @@ record(seq, "$(INSTR)$(SPS_REGISTER_NAME):DELAY-RETRY-ERROR") field(DESC, "Delays checking if retry error occurred") field(DOL0, 1) field(LNK0, "$(INSTR)$(SPS_REGISTER_NAME):RETRY-ERROR.PROC PP") - field(DLY0, 0.5) + field(DLY0, 1) field(SELM, "All") } @@ -178,33 +188,26 @@ record(calcout, "$(INSTR)$(SPS_REGISTER_NAME):SET-READY") field(DOPT, "Use OCAL") field(OCAL, "0") field(OUT, "$(INSTR)$(SPS_REGISTER_NAME):BUSY PP") - field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):SHOULD-BLOCK-BSX") + field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):BLOCK-BSX") } -record(calc, "$(INSTR)$(SPS_REGISTER_NAME):SHOULD-BLOCK-BSX") +record(calcout, "$(INSTR)$(SPS_REGISTER_NAME):BLOCK-BSX") { - field(DESC, "Whether to block bsx and bsy") + field(DESC, "Disable BSX during change") field(INPA, "$(INSTR)$(SPS_REGISTER_NAME):STATUS NPP") field(INPB, "$(BSX_MOT).DISA NPP") field(CALC, "A=0?!B:B") - field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):SHOULD-BLOCK-BSY PP") + field(DOPT, "Use CALC") + field(OUT, "$(BSX_MOT).DISV PP") + field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):BLOCK-BSY") } -record(calc, "$(INSTR)$(SPS_REGISTER_NAME):SHOULD-BLOCK-BSY") +record(calcout, "$(INSTR)$(SPS_REGISTER_NAME):BLOCK-BSY") { - field(DESC, "Whether to block bsx and bsy") + field(DESC, "Disable BSY during change") field(INPA, "$(INSTR)$(SPS_REGISTER_NAME):STATUS NPP") field(INPB, "$(BSY_MOT).DISA NPP") field(CALC, "A=0?!B:B") - field(FLNK, "$(INSTR)$(SPS_REGISTER_NAME):BEAMSTOP-MOTOR-BLOCK PP") -} - -record(seq, "$(INSTR)$(SPS_REGISTER_NAME):BEAMSTOP-MOTOR-BLOCK") -{ - field(DESC, "Block moving bsx and bsy") - field(DOL0, "$(INSTR)$(SPS_REGISTER_NAME):SHOULD-BLOCK-BSX NPP") - field(LNK0, "$(BSX_MOT).DISV PP") - field(DOL1, "$(INSTR)$(SPS_REGISTER_NAME):SHOULD-BLOCK-BSY NPP") - field(LNK1, "$(BSY_MOT).DISV PP") - field(SELM, "All") + field(DOPT, "Use CALC") + field(OUT, "$(BSY_MOT).DISV PP") }