Difference between revisions of "How to Create an IOR"

From stix
Jump to: navigation, search
 
(17 intermediate revisions by 2 users not shown)
Line 8: Line 8:
 
== Generate an IOR ==
 
== Generate an IOR ==
 
=== Required Software ===
 
=== Required Software ===
We suggest using STIX virtual server to generate IORs. The tutorial for logging onto the server can be found at
+
We suggest using STIX virtual server to generate IORs.  
 +
The tutorial for logging onto the server can be found at
 +
 
 
https://v000658.fhnw.ch/index.php/s/7ADcnSNExFNPCyF
 
https://v000658.fhnw.ch/index.php/s/7ADcnSNExFNPCyF
  
Line 28: Line 30:
 
*** Ctrl+F the version number on the above pub023 web address and download.
 
*** Ctrl+F the version number on the above pub023 web address and download.
 
*** Unzip the file.
 
*** Unzip the file.
** TMC:
+
** LTP timeline JSON file
*** Provides constraints on data volume.
 
*** Filename prefixed by TMC_ and suffixed by .xml.
 
*** The filename will also contains "MXX" where XX is the number of the LTP.  The TMC file for the correct LTP must be used otherwise Startlet will throw an error.
 
*** There is one TMC per LTP, but the version is often updated by ESA.  So always get the latest version for the relevant LTP from pub023 address above.
 
*** Currently, although this file is required, STIX-Starlet does not extract information from this file.  So we must check manually that the telemetry used by the IOR is within the telemetry allowance of the TMC file.  Check this in SOOP Kitchen.
 
** E-FECS
 
*** Provides constraints on EMC
 
*** Filename prefixed with EFECS_ and suffixed with .xml
 
*** The filename will also contains "MXX" where XX is the number of the LTP.  The EFECS file for the correct LTP must be used otherwise Startlet will throw an error.
 
*** There is one EFECS per LTP, but the version is often updated by ESA.  So always get the latest version for the relevant LTP from pub023 address above.
 
*** Currently, STIX-Starlet does not extract information from this file.  So we must check manually whether STIX must be in quiet mode any time during this IOR, i.e. must not use the motors.  Check this in SOOP Kitchen.
 
** JSON
 
 
*** The JSON file contains certain info on the STP, e.g. the start and end time.
 
*** The JSON file contains certain info on the STP, e.g. the start and end time.
 
*** The filename will also contains "MXX" where XX is the number of the LTP.  The json file for the correct LTP must be used otherwise Startlet will not process the IOR correctly.
 
*** The filename will also contains "MXX" where XX is the number of the LTP.  The json file for the correct LTP must be used otherwise Startlet will not process the IOR correctly.
 
*** There is one json per LTP, but the version is often updated by ESA.  So always get the latest version for the relevant LTP from pub023 address above.
 
*** There is one json per LTP, but the version is often updated by ESA.  So always get the latest version for the relevant LTP from pub023 address above.
 
*** Download latest version from the above pub023 URL.  (The version here is usually the latest.)
 
*** Download latest version from the above pub023 URL.  (The version here is usually the latest.)
 +
 
* Open [[STIX-Starlet]] and enter IOR metadata.
 
* Open [[STIX-Starlet]] and enter IOR metadata.
 
** Set directory where IOR will be generated.  Settings -> Set storage directory
 
** Set directory where IOR will be generated.  Settings -> Set storage directory
 
** Set Starlet to STIX format.  Settings -> Instrument -> STIX
 
** Set Starlet to STIX format.  Settings -> Instrument -> STIX
 +
** Make sure in IOR creation mode:  Menu "Request" -> "Mode" -> "IOR" 
 
** Enter the STP number from STP schedule into STP cycle field
 
** Enter the STP number from STP schedule into STP cycle field
 
** Add your name in author field.
 
** Add your name in author field.
 
** Add onboard start time from the STP schedule in the start time field.
 
** Add onboard start time from the STP schedule in the start time field.
** End time must be before next STP starts and after all telecommands have been executed.  A typical value would be 24 hours after the IOR start time.
+
** End time must be before the next STP and next IOR starts (whichever is earliest), and after all telecommands have been executed.  A typical value would be 24 hours after the IOR start time.
 
** If this is the first IOR for the current STP, set the file and version numbers to 1.
 
** If this is the first IOR for the current STP, set the file and version numbers to 1.
 
*** If an IOR has to be recreated due to an issue found in review, iterate version number.
 
*** If an IOR has to be recreated due to an issue found in review, iterate version number.
Line 57: Line 49:
 
* Enter the paths of the required files:
 
* Enter the paths of the required files:
 
** MiB: Settings -> Set instrument Database.  Then select the unzipped MIB directory.
 
** MiB: Settings -> Set instrument Database.  Then select the unzipped MIB directory.
** E-FECS & TMC: Click folder icon on the right of the value fields and select the relevant files.
+
** Timeline JSON: In the JSON file input, load the timeline json file. DO NOT click "Load JSON" at this stage.
** JSON: Do the same as for E-FECS and TMC. DO NOT click "Load JSON" at this stage.
+
** If the IOR only contains data requests, follow the steps at[https://datacenter.stix.i4ds.net/wiki/index.php?title=How_to_Create_a_Data_Request_IOR]
* Add telecommands via the "Add Sequence".
+
** If there are other TCs to be included,  Add telecommands via the "Add Sequence".
 
** STIX commands are prefixed at "AIX".  Enter this is in the search field at the top to filter out non-STIX sequences.
 
** STIX commands are prefixed at "AIX".  Enter this is in the search field at the top to filter out non-STIX sequences.
 
** See [[IOR Tips and Tricks]] for more advice.
 
** See [[IOR Tips and Tricks]] for more advice.
 
** In particular, see [[IOR Tips and Tricks#Time of First Telecommand|Time of First Telecommand]] for when to start the first telecommand of the IOR.
 
** In particular, see [[IOR Tips and Tricks#Time of First Telecommand|Time of First Telecommand]] for when to start the first telecommand of the IOR.
 
** To include data requests in the IOR, see the section below on [[#Including a Data Request in an IOR|Including a Data Request in an IOR]]
 
** To include data requests in the IOR, see the section below on [[#Including a Data Request in an IOR|Including a Data Request in an IOR]]
* Once all sequences are added, click "Load JSON" button.  This will assign OBS ID to all telecommands.  These should all be the same for a given STP.
+
* Once all sequences are added, click "Load JSON" button.  This will assign OBS ID to all telecommands.  
 
* Generate IOR by clicking "Generate" button.  This will create a .SOL file in the "storage directory" set above.
 
* Generate IOR by clicking "Generate" button.  This will create a .SOL file in the "storage directory" set above.
  
== Test IOR on Ground Unit ==
+
== Test IOR on Ground Unit (Optional) ==
 +
 
 
* If you still have the IOR open in STIX-Starlet, save the IOR to as a <code>.tcl</code> by clicking the <code>.tcl</code> button in the toolbar.
 
* If you still have the IOR open in STIX-Starlet, save the IOR to as a <code>.tcl</code> by clicking the <code>.tcl</code> button in the toolbar.
  
 
See [[Using the STIX Ground Unit#Testing an IOR with the Ground Unit|Testing an IOR with the Ground Unit]].
 
See [[Using the STIX Ground Unit#Testing an IOR with the Ground Unit|Testing an IOR with the Ground Unit]].
  
== Submit IOR for Internal Review ==
+
== Submit IOR to the platform==
* Upload IOR .SOL file by clicking the "Upload IOR" button at https://pub023.cs.technik.fhnw.ch/view/operations
+
* <b>IMPORTANT</b> Upload the IOR .SOL file by clicking the "Upload" button at https://datacenter.stix.i4ds.net/view/ior/list
* Email the link to the IOR overview to the STIX ops team.
+
* If more IORs need to be created, Go back to the data request page and click "load pending requests". Follow the same procedure to generate the next IOR. Requests included the IOR will no longer appear in the pending list.
 +
 
 +
* Once all IORs are created and uploaded on the platform, Email the link to the IOR overview to the STIX ops team.
 
** The IOR overview URL can be found by locating the IOR at the [https://pub023.cs.technik.fhnw.ch/view/ior/list Operation Requests List] and clicking the green button in the "Overview" column.
 
** The IOR overview URL can be found by locating the IOR at the [https://pub023.cs.technik.fhnw.ch/view/ior/list Operation Requests List] and clicking the green button in the "Overview" column.
  
 
== Submit IOR to SOC ==
 
== Submit IOR to SOC ==
Once the STIX team is happy with the IOR, submit it to the SOC by doing the following:
+
Once the STIX team is happy with the IOR, submit it to the SOC by doing the following before the <b>IOR delivery deadline</b>:
 
* Generate and download an IORG zip file corresponding to the IOR to be submitted.
 
* Generate and download an IORG zip file corresponding to the IOR to be submitted.
 
** Find the ID of the IOR from the [https://pub023.cs.technik.fhnw.ch/view/ior/list Operation Requests List] on the STIX server.
 
** Find the ID of the IOR from the [https://pub023.cs.technik.fhnw.ch/view/ior/list Operation Requests List] on the STIX server.
** Go to https://pub023.cs.technik.fhnw.ch/view/operations and click the button marked "Create IORG File".
+
** Go to https://datacenter.stix.i4ds.net/view/ior/list  and click the button marked "Download" on the top right of the page.
 
** Enter the ID of the first IOR into the start field and the ID of the last IOR to be included in the end field.  Also enter the STP number and the IOR number (in most cases this is 1).  Then click "Create and Download".
 
** Enter the ID of the first IOR into the start field and the ID of the last IOR to be included in the end field.  Also enter the STP number and the IOR number (in most cases this is 1).  Then click "Create and Download".
 
* Send the IORG file to the SOC
 
* Send the IORG file to the SOC
 
** You will need a server account write permissions.  To get an account email Hualin at hualin.xiao@fhnw.ch or Dan Ryan at daniel.ryan@fhnw.ch
 
** You will need a server account write permissions.  To get an account email Hualin at hualin.xiao@fhnw.ch or Dan Ryan at daniel.ryan@fhnw.ch
 
** If you are not on the FHNW network, you will have to [[Connect to the FHNW VPN]].
 
** If you are not on the FHNW network, you will have to [[Connect to the FHNW VPN]].
** Copy the IORG zip file to [https://issues.cosmos.esa.int/solarorbiterwiki/pages/viewpage.action?pageId=41949048 ESA's STIX GFTS server] by opening a terminal and <code>cd</code> to the directory where you saved the IORG file above.  Then type <code>sudo scp <IORG filename> <username>@147.86.8.26:~</code> where <code><IORG filename></code> is the name of the IORG file and <code><username></code> is the username of your account on the STIX GFTS server.
+
** Copy the IORG zip file to [https://issues.cosmos.esa.int/solarorbiterwiki/pages/viewpage.action?pageId=41949048 ESA's STIX GFTS server] by opening a terminal and <code>cd</code> to the directory where you saved the IORG file above.  Then type <code>scp <IORG filename> <username>@147.86.8.26:~</code> where <code><IORG filename></code> is the name of the IORG file and <code><username></code> is the username of your account on the STIX GFTS server.
 
** Login into the [https://issues.cosmos.esa.int/solarorbiterwiki/pages/viewpage.action?pageId=41949048 ESA's STIX GFTS server] by typing <code>ssh <username>@147.86.8.26</code>
 
** Login into the [https://issues.cosmos.esa.int/solarorbiterwiki/pages/viewpage.action?pageId=41949048 ESA's STIX GFTS server] by typing <code>ssh <username>@147.86.8.26</code>
 
*** If you are not on the FHNW network, you will have to [[Connect to the FHNW VPN]].
 
*** If you are not on the FHNW network, you will have to [[Connect to the FHNW VPN]].

Latest revision as of 07:57, 20 June 2024

An IOR (Instrument Operations Response) is a series of instructions (telecommands) telling STIX what to do. An IOR is uploaded to STIX each STP cycle which is typically a week long. The process for uploading an IOR is as follows:

  1. Generate an IOR;
  2. Test IOR on Ground Unit;
  3. Submit IOR for Internal Review
  4. Submit IOR to SOC

Below focuses on article will focus on the first step, creating an IOR. For definitions of acronyms used in this page, see Acronyms & Definitions.

1 Generate an IOR

1.1 Required Software

We suggest using STIX virtual server to generate IORs. The tutorial for logging onto the server can be found at

https://v000658.fhnw.ch/index.php/s/7ADcnSNExFNPCyF

If you create IORs with your local machine, you need to install starlet.

For instructions installing these packages, click on the package link above.

1.2 How To Generate an IOR

  • Check the STP schedule on the Solar Orbiter wiki. GIVE BETTER INSTRUCTIONS ON HOW TO FIND THE RELEVANT INFO FROM THIS LINK. Take note of:
    • The STP number/cycle;
    • The deadline for IOR submission deadline to the Solar Orbiter SOC; GIVE INSTRUCTIONS ON HOW TO FIND THIS INFO IN THE TABLE VIA THE ABOVE LINK.
    • The onboard IOR start time (equivalent to the STP start time).
  • Log into SOOP KITCHEN and check whether there is an "analysis window" in the current STP. If there is an analysis window, we must include data requests as part of the IOR.
    • The start time, duration and end time of the STP/IOR can also be confirmed via SOOP KITCHEN.
  • Download necessary input files. See nested bullets below. All can be found at https://pub023.cs.technik.fhnw.ch/gfts/solsoc/from_soc/ (This page is password protected. Contact Hualin at hualin.xiao@fhnw.ch to get access):
    • MIB:
      • Check the current version number on Solar Orbiter wiki. It is given by the "MIB Name" column.
      • Ctrl+F the version number on the above pub023 web address and download.
      • Unzip the file.
    • LTP timeline JSON file
      • The JSON file contains certain info on the STP, e.g. the start and end time.
      • The filename will also contains "MXX" where XX is the number of the LTP. The json file for the correct LTP must be used otherwise Startlet will not process the IOR correctly.
      • There is one json per LTP, but the version is often updated by ESA. So always get the latest version for the relevant LTP from pub023 address above.
      • Download latest version from the above pub023 URL. (The version here is usually the latest.)
  • Open STIX-Starlet and enter IOR metadata.
    • Set directory where IOR will be generated. Settings -> Set storage directory
    • Set Starlet to STIX format. Settings -> Instrument -> STIX
    • Make sure in IOR creation mode: Menu "Request" -> "Mode" -> "IOR"
    • Enter the STP number from STP schedule into STP cycle field
    • Add your name in author field.
    • Add onboard start time from the STP schedule in the start time field.
    • End time must be before the next STP and next IOR starts (whichever is earliest), and after all telecommands have been executed. A typical value would be 24 hours after the IOR start time.
    • If this is the first IOR for the current STP, set the file and version numbers to 1.
      • If an IOR has to be recreated due to an issue found in review, iterate version number.
      • If more the STP requires more than one distinct IOR, iterate the file number
  • Enter the paths of the required files:
    • MiB: Settings -> Set instrument Database. Then select the unzipped MIB directory.
    • Timeline JSON: In the JSON file input, load the timeline json file. DO NOT click "Load JSON" at this stage.
    • If the IOR only contains data requests, follow the steps at[1]
    • If there are other TCs to be included, Add telecommands via the "Add Sequence".
    • STIX commands are prefixed at "AIX". Enter this is in the search field at the top to filter out non-STIX sequences.
    • See IOR Tips and Tricks for more advice.
    • In particular, see Time of First Telecommand for when to start the first telecommand of the IOR.
    • To include data requests in the IOR, see the section below on Including a Data Request in an IOR
  • Once all sequences are added, click "Load JSON" button. This will assign OBS ID to all telecommands.
  • Generate IOR by clicking "Generate" button. This will create a .SOL file in the "storage directory" set above.

2 Test IOR on Ground Unit (Optional)

  • If you still have the IOR open in STIX-Starlet, save the IOR to as a .tcl by clicking the .tcl button in the toolbar.

See Testing an IOR with the Ground Unit.

3 Submit IOR to the platform

  • IMPORTANT Upload the IOR .SOL file by clicking the "Upload" button at https://datacenter.stix.i4ds.net/view/ior/list
  • If more IORs need to be created, Go back to the data request page and click "load pending requests". Follow the same procedure to generate the next IOR. Requests included the IOR will no longer appear in the pending list.
  • Once all IORs are created and uploaded on the platform, Email the link to the IOR overview to the STIX ops team.
    • The IOR overview URL can be found by locating the IOR at the Operation Requests List and clicking the green button in the "Overview" column.

4 Submit IOR to SOC

Once the STIX team is happy with the IOR, submit it to the SOC by doing the following before the IOR delivery deadline:

  • Generate and download an IORG zip file corresponding to the IOR to be submitted.
    • Find the ID of the IOR from the Operation Requests List on the STIX server.
    • Go to https://datacenter.stix.i4ds.net/view/ior/list and click the button marked "Download" on the top right of the page.
    • Enter the ID of the first IOR into the start field and the ID of the last IOR to be included in the end field. Also enter the STP number and the IOR number (in most cases this is 1). Then click "Create and Download".
  • Send the IORG file to the SOC
    • You will need a server account write permissions. To get an account email Hualin at hualin.xiao@fhnw.ch or Dan Ryan at daniel.ryan@fhnw.ch
    • If you are not on the FHNW network, you will have to Connect to the FHNW VPN.
    • Copy the IORG zip file to ESA's STIX GFTS server by opening a terminal and cd to the directory where you saved the IORG file above. Then type scp <IORG filename> <username>@147.86.8.26:~ where <IORG filename> is the name of the IORG file and <username> is the username of your account on the STIX GFTS server.
    • Login into the ESA's STIX GFTS server by typing ssh <username>@147.86.8.26
    • Change permissions on the IORG file: sudo chmod 777 <IORG filename>
    • Move the IORG file from the home directory (where we copied it to above) to the to_soc directory by typing sudo cp ~/<IORG filename> /home/solsoc/to_soc/
  • Confirm the SOC has validated the IOR
    • The SOC will copy the file from the to_soc and then delete it. This can happen straight away. The SOC will then run an automatically verify the IOR and then return a .CRR back to the /home/solsoc/from_soc directory within 10 minutes.
    • cd to the home/solsoc/from_soc and wait for the .CRR to appear. It will have the same filename as the submitted IORG file, but with a .CRR extension.
    • Once the file has arrived, log out of the server.
    • Copy the .CRR file to your local machine by typing: scp <username>@147.86.8.26:/home/solsoc/from_soc/<IORG filename> /local/folder/ where /local/folder/ is the location on your local machine where the file should be copied.
    • Unzip the .CRR and open it with a text editor.
    • Search for the <validity> tag and confirm the message says "Valid".
      • If the .CRR file reports "Valid", then we are done!
      • If it is not valid, more details of the errors will be listed. Create a new version of the IOR (remembering to iterate the version number) that fixes those errors and resubmit.

5 Including a Data Request in an IOR

See How to Create a Data Request IOR