Strategy, Developments & Outlook SESP 2010 28-30 September 2010 ESTEC, Noordwijk, The Netherlands
Overview Introduction Strategy Upgraded courses New 4.2 features EuroSim 4.3 outlook EuroSim on a stick Slide 2
Introduction: Product charateristics EuroSim real-time simulation infrastructure Available since 1994, now in 4 th generation is a configurable simulator platform developed in close cooperation with ESA designed to support all phases of the Engineering and Support process capable of real-time simulations, with man- and/or hardware-in-the-loop re-using existing model software Applied in projects as ERA, ATV, Herschell-Planck, Gaia, Feasibility Engineering Prototype Production/ Testing Operations/ Training Slide 3
Introduction: Product overview Extensive graphical support throughout the phases of a simulation Project Management Model Integration Scheduling Preparation Execution Analysis Slide 4
Introduction: The team Management & marketing team Coen Claassens (DS) Tonny ten Dam (NLR) Erik Roekens (Task24) Technical team Leon Bremer, design leader DS Jeroen Moelands, design leader NLR Erwin Scheutelkamp, design leader Task24 Jose Fernandez, The EuroSim maintainer, helpdesk and more André Glas, kernel & driver expert Slide 5
Strategy: Our market The domain in which EuroSim is used We are in a niche market with 150 active licenses We are a commercial tool and have to 'live' from license fees and support contracts We have Customers with long-duration contracts (>25 years) and will support them to the end. We are in the most challenging technical domain: real-time applications with hardware in the loop very dependent on hardware and operating environments. Maintaining performance and reliability is a real challenge!! Slide 6
Strategy: Our approach Be very conservative with changing EuroSim's architecture or core, and introduction of new technologies. Projects drive and fund new developments Sometimes by contracting EuroSim to add features Sometimes by own developments handed over to EuroSim Sometimes EuroSim generalizes on their development Slide 7
Strategy: Benefits Benefits of our approach Conservative approach helps in maintaining our performance and reliability Project driven features have immediate need, experience and maturity Features in the end come available to all EuroSim users. We thus share and gain. When accepted as part of the EuroSim product, EuroSim will maintain the new features. Slide 8
Strategy: License fees What about EuroSim's license fees? The fees pay for the maintenance of Eurosim and the helpdesk We maintain many distributions for Linux, as well as Windows and Irix New OS releases come out frequently, requiring update and certification We have an infrastructure of servers for nightly build and test and new feature addition We answer questions and handle SPRs with procedure and tools in place, and provide patch releases when needed Slide 9
Strategy: Maintenance So what is currently happening in maintenance? We are in the process of establishing verified hardware and software distribution baselines. First baseline expected this year with Concurrent RedHawk computer, EuroSim 4.2 and AIM MIL1553 card We are in the process of upgrading our infrastructures for distribution and support. We have upgraded and expanded our courseware And our helpdesk is working on your questions, release distributions etc. Slide 10
Strategy: Roadmap What about a roadmap? A high priority (unfunded) wish will always have lower priority than a project (paid) requirement But we are interested in your needs and suggestions and maintain a list of 'good ideas' In the upgrade of our website we will publish that list When time is available, non critical SPRs, ideas and suggestions are handled and integrated. Slide 11
EuroSim Courses: Upgrade In 2010 we upgraded and extended our Courseware The courses we are now providing with EuroSim 4.2 Foundation (1 day) Learn to code and click your way through classic EuroSim Developer (3 day) Learn and experience how to design a EuroSim simulator for your project Hardware-in-the-Loop (1 day) Become a specialist in EuroSim hardware in the Loop features Slide 12
EuroSim Course: Foundation Foundation (1 day, max 8 persons) 1 day, up to 8 persons Less deep, more overview and practical Classic EuroSim API (C, Fortran code parsers) Covers all user interfaces Now also teaching you some practical skills on handling common problems and code issues Slide 13
EuroSim Courses: Developer Developer (3 days, max 4 x 2) Additional APIs like C++, SMP2, JAVA, Matlab Integration of models Advanced real-time concepts and scheduling External applications Scripting in and outside EuroSim Examples of various projects Slide 14
EuroSim Courses: HIL Hardware-in-the-Loop (1 day, small group) Courseware created on demand Focus on drivers, interrupts Always tailored to customer needs Typically on customer premises and hardware Best performed with or after delivery of system Slide 15
New features in Mk4.2 The new features in EuroSim 4.2: C++ API Embedded EuroSim Improved SMP2 support Slide 16
C++ API: Project Requirements Driven by project need for support of C++ and toolchain Like C API but then C++ and supporting OO concepts Easy to learn, quick to program Preferably fitting in code generation from UML models contained in Enterprise Architect Severe restrictions on coding due to specific compiler and libraries used in the project Hard real-time execution on various platforms guaranteed Slide 17
C++ API: Project tool chain Enterprise Architect EA UML models C++ Eclipse Source Code EuroSim Specification Make Process Target Configuration TargetExecutable ethernet HostInterface Application Host Simulator Simulation Controller Host Configuration Documentation Slide 18
C++ API: UML diagam Start with UML model in Enterprise architect Slide 19
C++ API: Generate class The enhanced Enterprise Architect code generator automatically adds documentation Add a EuroSim publication method to the class definition Slide 20
C++ API: Generate implementation In the implementation file it generates the implementation of this method, which publishes all the class attributes, methods and associations You enhance this with Min, Max, Unit, Description etc. Slide 21
C++ API: Add model implementation Using eclipse, the developers add their model implementation to the generated empty methods Slide 22
C++ API: Specify the model build The Model Editor is merely used to specify the simulator build. Slide 23
C++ API: Define the task schedule You can schedule tasks and hook in your entrypoints at runtime from the model code. Esim::addEntryToTask(taskname, entryname); Slide 24
C++ API: Build the simulator The build process creates a simulator with the following dictionary 3 Sat s Slide 25
C++ API: And run it Here we have three identical instances running of the satellite Slide 26
C++ API: Generate the documentation The detailed design documentation is automatically created Slide 27
C++ API: Delivery With the EuroSim 4.2 distribution you get The C++ API support The Satellite++ example used in this presentation The EAP database with UML models for the Satellite++ The modified code generator template (in the EAP database) C++ API compliant code generation With Doxygen make up Slide 28
Embedded EuroSim: Project tool chain Enterprise Architect EA UML models C++ Eclipse Source Code EuroSim Specification Make Process Target Configuration TargetExecutable ethernet HostInterface Application Host Simulator Simulation Controller Host Configuration Documentation Slide 29
Embedded EuroSim Why? Development driven by project need for executing a EuroSim simulator in an embedded environment HIL Primarily used for simulation but also suited for real-time control purposes System Services Is an extension to the standard development process Client GUI Batch Server Scheduler Models Dictionary Not part of standard delivery Tailor made for customer (target) Recorder Stimulator Script Engine File System Slide 30
Embedded EuroSim What is it? Generic Features: No User Interface turn key system Specialized Target platform HIL Limited and/or specialized IO System Services No disk, serial or network, just shared memory Other restrictions due to target specific tooling IO adapter Recorder Scheduler Models Script Engine Dictionary Stimulat or Embedded Files Slide 31
Embedded EuroSim First Use SHM PowerPC Target with limited memory and processor power running Integrity178B mission critical qualified OS Needs real-time execution of (unchanged) EuroSim models that are also developed on host simulator No disk, serial or network, just shared memory to other systems Severe restrictions on coding due to specific compiler and libraries used in the project IO adapter Scheduler Models Schedule Dictionary Dict Embedded Files Slide 32
Embedded EuroSim Build Process Developer starts development on normal EuroSim on host machine Standard EuroSim Build.dict +.sched file Esim_embed _files Application Models are re-used Schedule file and (generated) Dictionary file are converted to embedded code Model sources Embedded Files Embedded EuroSim is delivered as a library Target tooling is used to generate target executable Embedded EuroSim Core Target compiler + Linker Target Exeutable Slide 33
EuroSim 4.2 SMP2 generic tool chain SMP2 Artefact Editors.sed EGOS UMF.cat.ass.pkg ModelEditor ScheduleEditor SMP2 Model Implementation C++ IDE..a.so Generate C++ C++ IDE Build All Dictionary Schedules Simulator Simulation Controller EuroSim SMP2 Support Scope Simulations Slide 34
EuroSim 4.2 SMP2 support (1) EuroSim is SMP2 1.2 compliant EuroSim 4.2 supports all SMP2 1.2 artifacts except Workspace Not all features supported EuroSim 4.1 supported SMP2 in a very limited way EuroSim offers user-friendly SMP2 development tools Integrated in EuroSim GUI Command-line versions available No artefact editors available Slide 35
EuroSim 4.2 SMP2 support (2) EuroSim SMP2 support compared to EuroSim 4.1 Catalogues: small improvements & fixes Still missing some features (notably Values) Catalogue editor no longer supported Third-party SMP2 IDEs have emerged (EGOS_MF) or are emerging (UMF) Assembly support added Assembly code generator integrated in Model Editor Schedule support added SMP2-to-EuroSim schedule conversion integrated in Schedule Editor Slide 36
EuroSim 4.2 SMP2 support (3) Package support added Default package generator integrated in Model Editor Component Model: small improvements & fixes Still missing some features C++ Mapping: improved code generation Automatic code merging for iterative development Still missing some features (notably Values) Model Development Kit: still supported Slide 37
EuroSim features beyond SMP2 EuroSim offers better support for real-time simulators compared with what is possible with the current SMP2 features. EuroSim offers features to build real-time simulators that have been proven in large real-time simulator projects. Galileo Planck ATV Herschel GAIA Slide 38
EuroSim real-time features not present in SMP2 Support for hardware-in-the-loop events triggered from interrupts, signals, semaphores etc. low-latency asynchronous event handling Advanced scheduling primitives tasks priorities mutexes frequency dividers/multipliers non-real-time tasks in real-time context Scalability over multiple processors Model access to OS functions from r/t domain Infrastructure functions take O(1) time Slide 39
EuroSim 4.2 ECSS-E-TN-40-07 support ECSS-E-TN-40-07 not yet supported Further update to full standard compliance planned in the frame of the GSTP contract Standard Compliance EuroSim SMP2 standard run-time ECSS-E-TN-40-07 Slide 40
EuroSim 4.3 outlook GSTP-contract Standard compliant EuroSim (ESA) main objectives Support of the SMP2 v1.2 standard. The run-time features shall be fully supported. Design-time features support: trade-off analysis. Binary compatibility with an SMP2 IDE to be selected (UMF, EGOS_MF) Possible partial support of the ECSS-E-TN-40-07. Focus on the run-time features. While keeping EuroSim s hard real-time performance, EuroSim 4.3 will contain the additional standard support features Project time schedule Duration 12 months Slide 41
New ideas: EuroSim as a utility Dutch Space infrastructure can host a project in an area secured from all others including DS network Providing exclusive secure access to a hosted EuroSim setup, with specialized HIL, and collaborative environment features Use the simulator setup via a remote desktop, Sharepoint for secured document and data sharing, Configured DOORS, Enterprise Architect, C++ test, Cantata, Eclipse, Secure net meeting services including desktop sharing Established and applied successfully with partners in shared project, But is this a future direction for EuroSim customers? Example: Suppose we host a VSRF setup, would there be customer that want to 'rent' time on it. Slide 42
EuroSim on a Stick EuroSim is handing out 4.2 on a bootable USB stick Boot your computer from USB and try EuroSim 4.2 features Resulted from our need to demonstrate EuroSim Does not use your disk in any way, completely runs from the stick. Save your project on the free space on the stick, otherwise lost SEE OUR USB STICK DEMO Slide 43
EuroSim Ice-breaker Do you feel any of the following applies? Like to hear more about the new 4.2 features Have an opinion or comment you like to share with the EuroSim team Meet the EuroSim team members Have a chat with other symposium members Get your EuroSim on a stick Could seriously use a drink and a snack Then join us at the EuroSim Ice-breaker Slide 44