BNMR: Custom Status page: Difference between revisions

From DaqWiki
Jump to navigation Jump to search
en>Suz
mNo edit summary
No edit summary
 
(11 intermediate revisions by 2 users not shown)
Line 2: Line 2:
== Links ==
== Links ==
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
* [[BNMR]]
* [[BNMR: Custom pages|BNMR/BNQR Custom pages]]
* [[BNMR: Experimental Modes|Experimental Modes]]
* [[BNMR: Custom Status page|Custom Status page]]
* [[BNMR: Getting Started|Getting Started]]
* [[BNMR: Custom Settings page|Custom Settings page]]
* [[BNMR: Custom Parameters page|Custom Parameters page]]
* [[BNMR: Custom Logging page|Custom Logging page]]
* [[BNMR#Nomenclature|Nomenclature]]
* [[BNMR: Custom Modes page|Custom Modes page]]
* [[BNMR: Custom Expert page|Custom Expert page]]
</div>


</div>
== Introduction ==
== Introduction ==
When the webserver is used to connect to a MIDAS experiment, the standard [https://midas.triumf.ca/MidasWiki/index.php/Status_Page MIDAS Status page] is shown, unless
The standard [https://midas.triumf.ca/MidasWiki/index.php/Status_Page MIDAS Status page] is not very useful for {{bnmqr|join=and}}, so it has been replaced by a custom version for these experiments.
it has been replaced by a '''Custom Status page'''. This is the case for the  {{bnmqr|join=and}} experiments. A  [[BNMR: Custom pages|custom page]] written specifically for the  {{bnmqr|join=and}} experiments replaces the standard MIDAS Status page. It is called the '''Custom Status page'''.


Note that the MIDAS client [https://midas.triumf.ca/MidasWiki/index.php/Mhttpd mhttpd] must be running for the webserver to be available. To connect to the Custom Status page, see  [[BNMR: Getting Started|Getting Started]].
Note that the MIDAS client [https://midas.triumf.ca/MidasWiki/index.php/Mhttpd mhttpd] must be running for the webserver to be available. To connect to the Custom Status page, see  [[BNMR: Getting Started|Getting Started]].


== Custom Status Page ==
The custom status page allows the user to
The custom status page allows users to enter experimental parameters easily, including changing  [[BNMR: Experimental Modes|Experimental Modes]] and [[BNMR: Run numbering|run type]]. A [[BNMR: Custom Parameters page|Custom Parameter page]] accessed from the custom status page allows users to enter run parameters easily.  The custom status page for {{bnmr}} and {{bnqr}} experiments is shown in Figures 1 and 2 respectively.
* view the current state of the run, including scan status, histogram counts, EPICS values and CAMP values
 
* change which experimental mode is being used
;Figure 1 BNMR Custom Status Page (Run Stopped)
* change whether a run is "real" or "test" data
[[Image:Bnmr_status_stopped.png|975px]]
* change/view the helicity and beam settings
<br clear=all>
* enable/disable the alarm system
<br>
* force neutral beam checks to be re-referenced
;Figure 2 BNQR Custom Status Page (Run Stopped)
[[Image:Bnqr_status_stopped.png|975px]]
<br clear=all>
 
== Features of the Custom Status Page ==
The Custom Status Page provides status information specific to the {{bnmqr|join=or}} experiments. The option of reverting to the MIDAS standard status page is provided via the ToggleStatusPage button.
 
=== Command and Page Buttons ===
 
[[Image:Bnqr_top_buttons2.png|Figure 3 Command and Page Buttons]]
<br clear=all>
In the middle of the top line on the Custom Status page are found the standard [https://midas.triumf.ca/MidasWiki/index.php/Status_Page#Menu_Buttons Menu buttons] to stop and start runs or to display
different MIDAS pages. These standard buttons appear on most MIDAS pages (see [https://midas.triumf.ca/MidasWiki/index.php/Status_Page MIDAS Status page] for more information).
 
Below these buttons are buttons specific to the {{bnmqr|join=and}} experiment. Some are [[BNMR: Perlscripts#Customscripts|customscript buttons]], that is, a script is run when the button is pressed. Others switch to a different custom page. The actions of these buttons are described in Table 1.
 
{|  style="text-align: left; width: 100%; background-color: rgb(255, 255, 255);" border="3" cellpadding="2" cellspacing="2"
|+ Table 1: Custom Buttons
|-
! Button !! Action
|-
| {{Button|name=Autorun}}
| toggles [[BNMR: Autoruns|Autoruns]] on or off
|-
| <span style="color: brown; background-color: #CCCCCC; font-style:italic; font-size: 90; padding:0.25em;
padding-left: 0.5em;padding-right: 0.5em;border:1px solid #808080;border-radius: 5px;margin-bottom:1px;">rf_config</span>
| runs client <span style="color:green;  font-style:italic; ">rf_config</span> to test the validity of the input parameters without actually starting a run<br>
|-
| <span style="color: brown; background-color: #CCCCCC; font-style:italic; font-size: 90; padding:0.25em;
padding-left: 0.5em;padding-right: 0.5em;border:1px solid #808080;border-radius: 5px;margin-bottom:1px;">ToggleStatusPage</span>
| runs a perlscript causing the status page to revert to the standard Midas Status Page. After pressing this button, a popup window with a message "Now refresh page" will appear. After refreshing the page, the MIDAS status page will appear.  From this page, the CustomStatus page can be reached by clicking on the custom button  <span style="color: #444444; background-color: #CCCCCC; font-style:italic; font-size: 90; padding:0.25em;
padding-left: 0.5em;padding-right: 0.5em;border:1px solid #808080;border-radius: 5px;margin-bottom:1px;">CustomStatus</span> button. This will show the Custom status page as a regular Custom page. A message can be seen at the top of the custom page in this case "Using alias link "CustomStatus&" from Midas Main Status Page".  To revert to running this page as the Custom Status Page, press the button once more and refresh the page.
|- 
| <span style="color: blue; background-color: #CCCCCC; font-style:italic; font-size: 90; padding:0.25em;
padding-left: 0.5em;padding-right: 0.5em;border:1px solid #808080;border-radius: 5px;margin-bottom:1px;">RunParams</span>
|gives access to the Custom Parameter page.
|-
|
<span style="color: green; background-color: #CCCCCC; font-style:italic; font-size: 90; padding:0.25em;
padding-left: 0.5em;padding-right: 0.5em;border:1px solid #808080;border-radius: 5px;margin-bottom:1px;">ShowWindows</span>
|button displays the help information on displaying the frontend and other client consoles.
|}
 
 
 
=== Page Update Information ===
The page update information is also visible in Figure 1. The custom status page updates completely with a full page reload every minute. In between, it updates the information using innerHTML. This is called a partial reload. The time between partial reloads can be set by the user by clicking on the link  "Page update 10 sec (min 5s)"  (Figure 1). This minimum time is 5s.  The ODB data is read each time a partial reload is done. The times of the last ODB data read, last full reload etc are also shown in Figure 1. A countdown to the next full reload is also visible.
 
=== Status Line ===
The Status lines on the Custom Status Page show the status of the run and some of the important settings (Figure 4).
<br>
; Figure 4 Status lines from the BNQR Custom Status Page
[[Image:Bnqr_status_lines.png]]
<br clear=all>
The first line shows the selected PPG Mode. This changes when the mode is changed by pressing one of the PPG Mode buttons. The run number (Table 2) is shown in different colours for a '''test''' or '''real''' run (see [[BNMR: Run numbering]]).
 
{| border="0"  cellpadding="2" cellspacing="2" style="border-collapse:collapse; color:black; background-color:white" 
|-
!Table 2: Run number
!style="color:white"| spacer
!Table 3: Run State
|-
|
{| border="1"  cellpadding="2" cellspacing="2" style="border-collapse:collapse; color:black; background-color:aliceblue" 
|rowspan="2" style="font-weight:bold"|Run number
|style="background-color:lime"| 45059
|style="font-weight:bold"| real
|-
|style="background-color:yellow"| 30102
|style="font-weight:bold"| test
|}
 
|style="color:white"| spacer
|
{| border="1"  cellpadding="2" cellspacing="2" style="border-collapse:collapse; color:black; background-color:aliceblue" 
|-
| rowspan="3"|Run Status
|style="background-color:red"| Stopped
|-
|style="background-color:yellow"| On Hold
|-
|style="background-color:lime"| Running
|}
|}
The run state is shown in different colours depending on the run state (Table 3). The time the run started is shown and, if running, the run duration, otherwise the time the run stopped.
The next line shows the Status, which may show an information message.  Below this is a line showing the directory of the saved files.
 
Next are a number of boxes showing important settings (Table 4). Most are provided with a checkbox so the user can change the values from the custom status page.
 
 
; Table 4 Status values
{| border="1" style="border-collapse:collapse; color:black; background-color:aliceblue" 
|+ Status boxes
! Parameter TRUE !! Parameter FALSE !! Checkbox
|-
|style="background-color:yellow"| Single channel mode
|style="background-color:orange"| Dual channel mode || yes
|-
|style="background-color:lime"| Alarms Active
|style="background-color:red"| Alarms Active || yes
|-
|style="background-color:lime"|Helicity Check
|style="background-color:red"| Helicty Check  || yes
|-
|style="background-color:lime"|Helicity Flip
|style="background-color:red"| Helicity Flip|| no
|-
|style="background-color:lime"|Single/Dual Mode<br>Switch Check
|style="background-color:red"| Single/Dual Mode<br>Switch Check || yes
|-
|}
;NOTE
:When '''real''' data is being taken (i.e. the run mode is set to '''real''' ), this line should
look similar to Figure 4, with Alarms Active, Helicity Check, Helicity Flip and Single/Dual Mode Switch Check all being enabled.


=== Logging/Threshold/Helicity  ===
== Implementation ==


=== Last Midas Message ===
We force Midas to use our custom status page by deleting the file <code>$MIDASSYS/resources/status.html</code> with a symlink to <code>bnxr_common/custom/status.html</code> from the bnmr repository.


===Frontend Scalers===
The page uses [https://daq00.triumf.ca/MidasWiki/index.php/Mjsonrpc Midas JRPC] calls to talk to:
* the <code>mode_changer.py</code> program for changing modes and changing between real/test runs
* the <code>rf_calculator_fe.py</code> program for visualizing the PPG and PSM settings as plots


=== Histogram Stats ===
The page uses standard [https://daq00.triumf.ca/MidasWiki/index.php/Custom_Page Midas custom page] tools for editing ODB settings. An ODB hotlink is used for the neutral beam re-referencing.


=== Select PPG and Run Mode  ===
== Example screenshot ==
This line on the Custom Status Page contains the PPG Mode change and Run Mode buttons  (Figure 5).


;Figure 5 PPG and Run Mode switch buttons
[[Image:Custom_status.png|left|thumb|800px|Figure 1:Status page during Mode 1f with run stopped]]
[[Image:Bnqr_select_mode_line.png]]
<br clear=all>
These buttons are only visible when the run is stopped. The user selects the desired PPG Mode by pressing one of the PPG Mode buttons. The buttons will then be replaced by a message as in Figure 6.
; Figure 6 PPG Mode changing
[[Image:Bnmr_ppg_mode_changing.png]]
<br clear=all>
<br clear=all>


After a short time, the PPG Mode will change to the selected mode and the PPG Mode buttons will reappear. The Custom Parameters page can be viewed by pressing the PPG Mode button again.
[[Category:BNMR]] [[Category:Webserver]]
 
The PPG Mode buttons are [[BNMR: Perlscripts#Customscripts|customscript buttons]] which call the perlscript [[BNMR: Perlscripts#change_mode.pl|change_mode.pl]]. The perlscript may take a few seconds to run, so a message is displayed to prevent the impatient user from clicking more buttons.
 
 
This line also contains the '''Run Mode''' buttons  <span style="font-size:80%">{{Button|name=TEST}}</span> and  <span style="font-size:80%">{{Button|name=REAL}}</span>. The coloured (non-grey) button indicates whether the run mode is currently TEST or REAL. The buttons are only visible when the run is stopped. When running, they are replaced by  <span style="font-size:80%">{{Button|name=TOGGLE}}</span> for Type 2 runs only. For Type 1 runs, they are replaced by a message.
 
If the run type is REAL as in Figure 5, and the TEST button is pressed, a message will appear (Figure 7), then the run type will change to TEST (Figure 8).
 
{| border="0" style="border-collapse:collapse; color:black; background-color:aliceblue" 
|+
! Figure 7 Run Mode is changing
! style="color:white;background-color:white"|spacer
! Figure 8  Run Mode has changed
|-
| [[Image:Bnmr_run_mode_changing1.png]]<br clear=all>
| style="color:white;background-color:white"|spacer
| [[Image:Bnmr_run_mode_changing.png]]<br clear=all>
|}
 
The PPG Mode buttons are [[BNMR: Perlscripts#Customscripts|customscript buttons]] which call the perlscripts [[BNMR: Perlscripts#real_run.pl|real_run.pl]] or [[BNMR: Perlscripts#test_run.pl|test_run.pl]] The perlscript may take a few seconds to run, so a message is displayed to prevent the impatient user from clicking more buttons.
 
 
 
 
== Programming Information ==
See [[BNMR: Custom pages|Custom Pages]].
 
[[Category:Webserver]]

Latest revision as of 10:50, 2 May 2022

Links

Introduction

The standard MIDAS Status page is not very useful for bnmr and bnqr, so it has been replaced by a custom version for these experiments.

Note that the MIDAS client mhttpd must be running for the webserver to be available. To connect to the Custom Status page, see Getting Started.

The custom status page allows the user to

  • view the current state of the run, including scan status, histogram counts, EPICS values and CAMP values
  • change which experimental mode is being used
  • change whether a run is "real" or "test" data
  • change/view the helicity and beam settings
  • enable/disable the alarm system
  • force neutral beam checks to be re-referenced

Implementation

We force Midas to use our custom status page by deleting the file $MIDASSYS/resources/status.html with a symlink to bnxr_common/custom/status.html from the bnmr repository.

The page uses Midas JRPC calls to talk to:

  • the mode_changer.py program for changing modes and changing between real/test runs
  • the rf_calculator_fe.py program for visualizing the PPG and PSM settings as plots

The page uses standard Midas custom page tools for editing ODB settings. An ODB hotlink is used for the neutral beam re-referencing.

Example screenshot

Figure 1:Status page during Mode 1f with run stopped