Advanced Synthetic Parameter Expression Language SPEL SCOS2000 Reference Implementation - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

Advanced Synthetic Parameter Expression Language SPEL SCOS2000 Reference Implementation

Description:

'Ground systems and operations Monitoring and control data definition' (ECSS-70 ... abs, acos, asin,..ln, log,..tan, tanh, truncate ... – PowerPoint PPT presentation

Number of Views:56
Avg rating:3.0/5.0
Slides: 13
Provided by: gkra9
Category:

less

Transcript and Presenter's Notes

Title: Advanced Synthetic Parameter Expression Language SPEL SCOS2000 Reference Implementation


1
Advanced Synthetic Parameter Expression Language
- SPELSCOS-2000 Reference Implementation
2
Background
  • Ground systems and operations Monitoring and
    control data definition (ECSS-70-31- draft 18
    onwards) comprises
  • Expression Language (EXPL)
  • Synthetic Parameters Expression Language (SPEL)
  • Interpretation Function Language (IFL)
  • ? All these languages are consistent with the
    Procedure Language Standard (ECSS-70-32, PLUTO)
  • Siemens contributed to ECSS-70-31, in particular
    to the SPEL language definition.

3
Advanced SPEL Reference Implementation
  • SCOS-2000 3.1 supports synthetic parameters
    defined in its operations language (OL).
  • Objective of the SPEL Activity
  • Provide an implementation of the SPEL standard
    language for the SCOS-2000 3.1 EGSE version.
  • Identify the subset of SPEL that can be
    implemented within SCOS 3.1 (some limitations,
    e.g. No multi-domain capability, no variable
    packet parameters access, no SSM, no triggering
    on events)
  • Verify the SPEL specification

4
A brief tour of SPEL (1)
  • Highlights of SPEL
  • Type-safe SPEL uses a strict type system,
    emphasising consistency checks
  • Powerful
  • Exhaustive set of predefined functions including
    mathematical, string, date/time, and bit
    manipulation.
  • Access to parameter properties (value,
    validity,..)
  • Readable SPEL is closer to human language than
    many other languages
  • Strictly block-oriented e.g. if .. then .. end
    if

5
A brief tour of SPEL (2)
  • Advanced features
  • Advanced Operators for range check and set
    membership.
  • Powerful case construct, eliminating need for
    complex if/else cascades.
  • Triggers Control of the events triggering the
    synthetic parameters update cycle.
  • Persistency Variables can be persistent.
  • Engineering Units Variable declarations and
    constant expressions are augmented with an
    engineering unit, allowing consistency check and
    automatic conversion.

6
A brief tour of SPEL (3)
  • Large Set of Predefined Functions
  • 25 arithmetic standard functions, e.g.
  • abs, acos, asin,..ln, log,..tan, tanh, truncate
  • Statistics functions taking n arguments average,
    min, max, e.g. min(P1, P2, P3)
  • 13 time functions current_time, year, month,
    day_of_month,..
  • 15 string functions for manipulation (e.g.
    capitalize, length_of) and conversion
    (to_integer, to_real,..).

7
SPEL Examples (1)
  • / Ex. 1 Simple /
  • set raw value with G123 1 end with
  • / Ex. 2 using if and local variable /
  • declare
  • x of type real
  • end declare
  • main
  • x get engineering value of PE01
  • if x between -1.0 and 1.0 then
  • set raw value with arcsin(x)
  • end if
  • end main

8
SPEL Examples (2)
  • / Ex. 3 Check limit check state /
  • declare
  • lck of type limit check status
  • end declare
  • main
  • lck get limit check status of P001
  • in case lck
  • is in (warning low, warning high)
  • set raw value with warning
  • or is in (danger low, danger high)
  • set raw value with DANGER
  • otherwise
  • set raw value with nominal
  • end case
  • end main

9
SPEL Examples (3)
  • / Ex. 4 Using trigger /
  • trigger on update of
  • P001, P001
  • end trigger
  • main
  • set raw value with P001P002P003 end with
  • end main
  • This SPEL parameters update will be triggered by
    P001 or P002, but not P003.
  • By default (no trigger clause) all contributing
    (source) parameters will trigger the update.

10
SPEL Implementation in SCOS
  • Consistent extension of the SCOS TM parameter
    processing model (new class VIEWspel) ? existing
    applications run as before
  • Technology
  • SPEL parser uses Open Source tools (flex/bison)
    that are already adopted by SCOS (i.e. no new
    tools required!).
  • SPEL parser builds Abstract Syntax Tree (AST).
    With every parameter update, the AST is executed.
  • Online editing (edit/broadcast) supported?
    required for EGSE and nice for experimenting.

11
Status Summary
  • SPEL implementation is now part of the SCOS-2000
    3.1-based EGSE system at ESTEC.
  • Envisaged future activities
  • migrate to SCOS 3.1 H-P-Repatriation release.
  • extend coverage of SPEL standard (delta check
    support, engineering units)
  • implement IFL, EXPL inside SCOS-2000
  • putback to SCOS-2000 mainline

12
Conclusion
  • Questions and Comments?
  • ? Life demo

SCOS TQD showing SPEL parameter details
Write a Comment
User Comments (0)
About PowerShow.com