Sequencer Page: Difference between revisions

From MidasWiki
Jump to navigation Jump to search
No edit summary
(The midas documentation has moved to https://midas.triumf.ca/docs/)
Tag: Replaced
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Pagelinks}}
The midas documentation has moved. See [https://midas.triumf.ca/docs/develop/reference/reference/web_pages/#sequencer-page Sequencer page] in Built-in web pages and [https://midas.triumf.ca/docs/develop/features/monitoring_and_control/sequencer/#web-interface Web interface] in Sequencer: overview for the new documentation about the Sequencer web page.
 
 
= Links =
{{mhttpdpages3|[[Sequencer]]|[[/Sequencer ODB tree]]|[[Edit-on-Sequence Parameters]]}}
 
= Purpose =
The purpose of the [[mhttpd]] Sequencer Web Page to provide a visual display for the [[Sequencer]]. Using the Sequencer Page, [[Sequencer|Sequencer scripts]] can be loaded, edited and run.
 
 
= Access to the Sequencer Page =
The Sequencer Page is displayed by clicking on  {{Button|name=Sequencer}} button on the mhttpd [[Status Page]] or other [[mhttpd]] web page.
 
;Note
:If the Sequencer button is not present on the Status Page, it may have been [[Status Page#page-switch-buttons|suppressed]].
 
= Features of the Sequencer Page =
* The Sequencer Page takes its parameters from the [[/Sequencer ODB tree]].
* Sequencer scripts can be loaded and run from the Sequencer Page.
* A '''visual editor''' is provided to edit scripts.
* If [[Edit-on-Sequence Parameters]] are defined, these will be displayed when a sequence is started. 
* A '''progress display''' is provided showing the progress of a running script, and the last few Midas messages are also shown (Figure 5).
 
= How to input and run a Sequencer Script =
; Note
: A Sequencer Script is written using commands recognized by the Sequencer.''' See [[Sequencer|Sequencer Commands]] for the list of sequencer commands.
<ol>
<li>Press the {{Button|name=Sequencer}} on the [[Status Page]] to display the Sequencer Page.
: The first time the button is pressed, the Sequencer Page will appear as in Figure 1, where no load file has been specified.
<li>Load or create a script file
:  A new script file can be created by entering sequencer commands using the [[#Edit or Create a Sequencer Script|visual editor]] on the Sequencer Page, or an existing sequencer script file can be [[#To load and existing Sequencer Script|loaded]].  
<li> [[#Start a Sequencer Script|Start]] the sequencer script
</ol>
 
 
==  To Create a Sequencer Script ==
A new sequencer script can be created using the visual editor by typing in [[Sequencer|Sequencer Commands]], or by pasting in an example file (e.g. [[#Sequence test file]] or one of [[Sequencer#MSL Example|MSL Example file]] or [[Sequencer#XML Example|MSL Example file]] ) as in Figure 2.
 
The new script is then saved by pressing {{Button|name=Save}}. You will be asked for a file name.
 
;Note
:The directory path where the sequencer files will be saved is set by the ODB parameter [[/Sequencer ODB tree#Path|/Sequencer/State/Path]].
 
 
== To Load an existing Sequencer Script ==
An existing sequencer script file can be loaded using {{Button|name=Load Script}} as in Figure 3. If there is no existing file, use the  [[#Edit a Sequencer Script|visual editor]] to create one.
 
;Note
:The directory path where the sequencer looks for saved files is set by the ODB parameter [[/Sequencer ODB tree#Path|/Sequencer/State/Path]].
 
== To Edit a Sequencer Script ==
A sequencer script can be edited on the Sequencer Page by pressing  {{Button|name=Edit Script}} (see Fugure 2). The '''visual editor''' allows changes to be made to the script.
The sequencer script must first be [[#To Create a Sequencer Script|created]]  or [[#Load an existing Sequencer Script|loaded]] from a file.
 
 
{|  style="text-align: left; width: 100%; background-color: rgb(255, 255, 255);" border="1" cellpadding="2" cellspacing="2"
|+ Table 1
|-
| rowspan="1"  style="background-color:lemonchiffon; font-weight:bold" | Figure 1:  Initial Sequencer page
| rowspan="1" style="background-color:lemonchiffon; font-weight:bold"  | Figure 2: Display and/or Edit a Sequencer script
| rowspan="1" style="background-color:lemonchiffon; font-weight:bold" |Figure 3: Select a Sequencer file
|-
| rowspan="1" | [[File:sequencer_noscript.png|Figure 1: Initial Sequencer page]]
| rowspan="3"| [[File:sequencer_scripteditor.png|500px|Figure 2: Editing a Sequencer script]]
| rowspan="3"| [[File:sequencer_filelist.png|Figure 3: Select a Sequencer file]]
|-
| rowspan="1"  style="background-color:lemonchiffon; font-weight:bold" | Figure 4: Start a Sequencer script
|-
| rowspan="1" | [[File:sequencer_startscript.png|Figure 4: Start a Sequencer script]]
|-
|}
 
== Start a Sequencer Script ==
After a sequencer script has been [[#Load a Sequencer Script|loaded]], start the script by pressing
the {{Button|name=Start Script}} button.
 
If there are errors in the script that prevents the script from running, the line(s) in error will be highlighted (Figure 5).
In this case, [[#Edit a Sequencer Script|edit the script]] and fix the errors.
 
Once all errors are corrected and the script runs, the user will be asked to input any required parameters as in Figure 4 (in this case the number of runs, see [[#Sequence test file|test_seq.msl]]). If [[Edit-on-Sequence Parameters]] are defined, these will be displayed in addition to any required parameters.  Note that [[Edit-on-start Parameters]] will not be displayed (parameters that change between runs should be set by the sequencer script).
 
When the sequencer is running, a '''visual status''' is displayed in the Progress window, and the '''current position''' in the sequence file is also highlighted (Figure 6).
The sequencer can be paused by pressing  {{Button|name=Pause Script}}  (Figure 7).
<br>
The progress window will indicate when the sequencer is finished  (Figure 8).
 
 
{|  style="text-align: left; width: 100%; background-color: rgb(255, 255, 255);" border="1" cellpadding="2" cellspacing="2"
| rowspan="1"  style="background-color:lemonchiffon; font-weight:bold" | Figure 5: There is an error in the script
| rowspan="1" style="background-color:lemonchiffon; font-weight:bold"  | Figure 6: Sequencer is running
|-
| rowspan="1" | [[File:sequencer_error.png|500px|Figure 5: There is an error in the script]]
| rowspan="1" | [[File:sequencer_running.png|500px|Figure 6: Sequencer is running]]
|-
|}
 
<br clear=all>
{| style="text-align: left; width: 100%; background-color: rgb(255, 255, 255);" border="1" cellpadding="2" cellspacing="2"
| rowspan="1" style="background-color:lemonchiffon; font-weight:bold" |  Figure 7: Sequencer is paused
| rowspan="1" style="background-color:lemonchiffon; font-weight:bold" |Figure 8: Sequencer is finished
|-
| rowspan="1" | [[File:sequencer_paused.png|500px|Figure 7: Sequencer is paused]]
| rowspan="1" | [[File:sequencer_finished.png|500px|thumb|Figure 8: Sequencer is finished]]
|-
|}
<br clear=all>
 
= Sequence test file  =
The following is the contents of the sequence file used for testing ''test_seq.msl'' in the example [[#How to input and run a Sequencer Script|above]].
<pre>
COMMENT "This is a MSL test file"
RUNDESCRIPTION "Test run"
PARAM runs
 
LOOP $runs
    TRANSITION START
    WAIT ODBvalue "/Equipment/FIFO_acq/Statistics/Events sent" >= 25
    TRANSITION STOP
    WAIT seconds 5
ENDLOOP
</pre>
 
 
 
[[Category: mhttpd Pages]] [[Category: Sequencer]]
 
 
 
{{Pagelinks}}

Latest revision as of 22:01, 30 October 2026

The midas documentation has moved. See Sequencer page in Built-in web pages and Web interface in Sequencer: overview for the new documentation about the Sequencer web page.