From d112ab1035f42d7ef7c50ba15881475dc30ab961 Mon Sep 17 00:00:00 2001 From: Ollie Copping Date: Wed, 5 Aug 2026 13:32:05 +0100 Subject: [PATCH 1/2] Add generic BPM screens --- bob/bpm/bpm_embed.bob | 225 +++++++++++++++++ bob/bpm/bpm_setup.bob | 561 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 786 insertions(+) create mode 100644 bob/bpm/bpm_embed.bob create mode 100644 bob/bpm/bpm_setup.bob diff --git a/bob/bpm/bpm_embed.bob b/bob/bpm/bpm_embed.bob new file mode 100644 index 0000000..d3ff407 --- /dev/null +++ b/bob/bpm/bpm_embed.bob @@ -0,0 +1,225 @@ + + + + bpm_embed + 220 + 120 + + + + + + + + + + $(label) + 220 + 120 + + + + + + + + + + + + + + Open PVI + + + Open Display + bpm_setup.bob + + $(bpm) + + tab + + + More + 20 + 60 + 70 + 20 + + + + + + + + + + + + + $(actions) + + + Readback PV + $(bpm):INTEN + 20 + 70 + 15 + + + + + + + + + 1 + 1 + + + + + + + X/Y Plot + 100 + 80 + 80 + + + + + false + + + false + false + -3.0 + 3.0 + false + + + + + + + + + true + + + + + false + false + -3.0 + 3.0 + false + + + + + + + + + false + true + + + + + + + + + + $(bpm):XPOS + $(bpm):YPOS + + 0 + 0 + + + + + 0 + 0 + 2 + 1 + false + + + + + Readback PV_1 + $(bpm):XPOS + 20 + 20 + 70 + 15 + + + + + + + + + 1 + 1 + + + + + + + Readback PV_2 + $(bpm):YPOS + 20 + 40 + 70 + 15 + + + + + + + + + 1 + 1 + + + + + + + Label + I + 15 + 15 + 1 + 1 + + + Label_1 + X + 20 + 15 + 15 + 1 + 1 + + + Label_2 + Y# + 40 + 15 + 15 + 1 + 1 + + + diff --git a/bob/bpm/bpm_setup.bob b/bob/bpm/bpm_setup.bob new file mode 100644 index 0000000..117b348 --- /dev/null +++ b/bob/bpm/bpm_setup.bob @@ -0,0 +1,561 @@ + + + + bpm_setup + 510 + 265 + + + + + + + + + 5 + 5 + + Inputs + 260 + 135 + + + + + + + + + + + + + + Readback PV + $(bpm):BPMI1 + 140 + 80 + + + + + + + + + 1 + 1 + + + + + + + Readback PV_1 + $(bpm):BPMI2 + 140 + 25 + 80 + + + + + + + + + 1 + 1 + + + + + + + Readback PV_2 + $(bpm):BPMI3 + 140 + 50 + 80 + + + + + + + + + 1 + 1 + + + + + + + Readback PV_3 + $(bpm):BPMI4 + 140 + 75 + 80 + + + + + + + + + 1 + 1 + + + + + + + Label + A + 120 + 20 + 1 + 1 + + + Label_1 + B + 120 + 25 + 20 + 1 + 1 + + + Label_2 + C + 120 + 50 + 20 + 1 + 1 + + + Label_3 + D + 120 + 75 + 20 + 1 + 1 + + + Group + 10 + 115 + 80 + + true + + Ellipse + 50 + 65 + 65 + 2 + + + + + + + + + + + Polyline + 50 + 33 + 63 + 1 + + + + + + + 2 + + + + + + + Polyline_1 + 82 + 1 + 63 + + + + + + + 2 + + + + + + + Label_4 + X+ + 30 + 20 + 20 + 1 + 1 + + + Label_5 + A + 65 + 15 + 20 + 1 + 1 + + + Label_6 + B + 80 + 15 + 20 + 1 + 1 + + + Label_7 + C + 80 + 30 + 20 + 1 + 1 + + + Label_8 + D + 65 + 30 + 20 + 1 + 1 + + + Polygon + 35 + 45 + 35 + 35 + + + + + + + + + + + + + + + + + 2 + + + + + + + Label_9 + Beam + 50 + 40 + 1 + 1 + + + + + Parameters + 250 + 260 + 135 + + + + + + + + + + + + + + Label_10 + A + 20 + 1 + 1 + + + Label_11 + B + 25 + 20 + 1 + 1 + + + Label_12 + C + 50 + 20 + 1 + 1 + + + Label_13 + D + 75 + 20 + 1 + 1 + + + Text Entry + $(bpm):DA + 20 + 80 + + + Text Entry_1 + $(bpm):DA + 20 + 25 + 80 + + + Text Entry_2 + $(bpm):DA + 20 + 50 + 80 + + + Text Entry_3 + $(bpm):DA + 20 + 75 + 80 + + + Label_20 + KX + 110 + 25 + 1 + 1 + + + Text Entry_4 + $(bpm):KX + 135 + 80 + + + Label_21 + KY + 110 + 25 + 25 + 1 + 1 + + + Text Entry_5 + $(bpm):KY + 135 + 25 + 80 + + + Label_22 + Update rate: + 110 + 50 + 105 + 1 + 1 + + + Combo Box + $(bpm):POSSCAN.SCAN + 115 + 75 + 20 + + + + Calculations + 130 + 400 + 135 + + + + + + + + + + + + + + Label_23 + I = (A-DA)+(B-DB)+(C-DC)+(D-DD) = + 270 + 1 + 1 + + + Label_24 + X = KX*((D-DD)-(B-DB))/((D-DD)+(B-DB)) = + 25 + 270 + 1 + 1 + + + + X = KX*((A-DA)-(B-DB)-(C-DC)+(D-DD))/I = + + $(bpm):ORIENT + + + + + Label_25 + Y = KY*((A-DA)-(C-DC))/((A-DA)+(C-DC)) = + 50 + 270 + 1 + 1 + + + + Y = KY*((A-DA)+(B-DB)-(C-DC)-(D-DD))/I = + + $(bpm):ORIENT + + + + + Label_26 + Q = ((A-DA)-(B-DB)+(C-DC)-(D-DD))/I = + 75 + 270 + 1 + 1 + + + Readback PV_8 + $(bpm):INTEN + 280 + 80 + + + + + + + + + 1 + 1 + + + + + + + Readback PV_9 + $(bpm):XPOS + 280 + 25 + 80 + + + + + + + + + 1 + 1 + + + + + + + Readback PV_10 + $(bpm):YPOS + 280 + 50 + 80 + + + + + + + + + 1 + 1 + + + + + + + Readback PV_11 + $(bpm):Q + 280 + 75 + 80 + + + + + + + + + 1 + 1 + + + + + + + From 49196a9edd42a906c13b5599099fe77dfcdbf06f Mon Sep 17 00:00:00 2001 From: Ollie Copping Date: Wed, 5 Aug 2026 13:46:55 +0100 Subject: [PATCH 2/2] Increase size of embedded BPM screen and increase calculation box on BPM setup --- bob/bpm/bpm_embed.bob | 204 +++++++++++++++++++++--------------------- bob/bpm/bpm_setup.bob | 20 ++--- 2 files changed, 110 insertions(+), 114 deletions(-) diff --git a/bob/bpm/bpm_embed.bob b/bob/bpm/bpm_embed.bob index d3ff407..a9bbaed 100644 --- a/bob/bpm/bpm_embed.bob +++ b/bob/bpm/bpm_embed.bob @@ -1,9 +1,9 @@ - + bpm_embed - 220 - 120 + 280 + 160 @@ -14,8 +14,8 @@ $(label) - 220 - 120 + 280 + 160 @@ -28,6 +28,93 @@ + + Label + I + 10 + 20 + 1 + 1 + + + Label_1 + X + 40 + 20 + 1 + 1 + + + Label_2 + Y + 70 + 20 + 1 + 1 + + + Readback PV_2 + $(bpm):YPOS + 30 + 70 + 80 + + + + + + + + + 1 + 1 + + + + + + + Readback PV_1 + $(bpm):XPOS + 30 + 40 + 80 + + + + + + + + + 1 + 1 + + + + + + + Readback PV + $(bpm):INTEN + 30 + 10 + 80 + + + + + + + + + 1 + 1 + + + + + Open PVI @@ -42,8 +129,8 @@ More 20 - 60 - 70 + 100 + 80 20 @@ -59,32 +146,11 @@ $(actions) - - Readback PV - $(bpm):INTEN - 20 - 70 - 15 - - - - - - - - - 1 - 1 - - - - - X/Y Plot - 100 - 80 - 80 + 110 + 130 + 120 @@ -143,83 +209,13 @@ - 0 + 1 0 2 - 1 - false + 8 + true - - Readback PV_1 - $(bpm):XPOS - 20 - 20 - 70 - 15 - - - - - - - - - 1 - 1 - - - - - - - Readback PV_2 - $(bpm):YPOS - 20 - 40 - 70 - 15 - - - - - - - - - 1 - 1 - - - - - - - Label - I - 15 - 15 - 1 - 1 - - - Label_1 - X - 20 - 15 - 15 - 1 - 1 - - - Label_2 - Y# - 40 - 15 - 15 - 1 - 1 - diff --git a/bob/bpm/bpm_setup.bob b/bob/bpm/bpm_setup.bob index 117b348..d93e09f 100644 --- a/bob/bpm/bpm_setup.bob +++ b/bob/bpm/bpm_setup.bob @@ -1,5 +1,5 @@ - + bpm_setup 510 @@ -413,7 +413,7 @@ Calculations 130 - 400 + 420 135 @@ -430,7 +430,7 @@ Label_23 I = (A-DA)+(B-DB)+(C-DC)+(D-DD) = - 270 + 290 1 1 @@ -438,7 +438,7 @@ Label_24 X = KX*((D-DD)-(B-DB))/((D-DD)+(B-DB)) = 25 - 270 + 290 1 1 @@ -454,7 +454,7 @@ Label_25 Y = KY*((A-DA)-(C-DC))/((A-DA)+(C-DC)) = 50 - 270 + 290 1 1 @@ -470,14 +470,14 @@ Label_26 Q = ((A-DA)-(B-DB)+(C-DC)-(D-DD))/I = 75 - 270 + 290 1 1 Readback PV_8 $(bpm):INTEN - 280 + 300 80 @@ -497,7 +497,7 @@ Readback PV_9 $(bpm):XPOS - 280 + 300 25 80 @@ -518,7 +518,7 @@ Readback PV_10 $(bpm):YPOS - 280 + 300 50 80 @@ -539,7 +539,7 @@ Readback PV_11 $(bpm):Q - 280 + 300 75 80