Creation Review

Type
Creation
State
Successful
End Date of the Review Period

Reviews run for a minimum of one week. The outcome of the review is decided on this date. This is the last day to make comments or ask questions about this review.

Project
Proposal

Eclipse LSAT

Monday, November 23, 2020 - 05:08 by Bas Huijbrechts
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Project
Parent Project
Proposal State
Created
Background

LSAT originates from a concept tool which was initially designed in 2016 - 2017 in a research collaboration between ASML, the ESI (Embedded Systems Innovation) joint research center of TNO (the Netherlands Organisation for Applied Scientific Research), and the TU/e (Eindhoven University of Technology). The Wafer Logistics Specification and Analysis Tool (WLSAT) is used to specify and analyze the wafer logistics in (ASML) semiconductor lithography systems. In 2019 LSAT was extracted as a generic applicable tool suite to deal with modelling and analysis of flexible manufacturing systems from both in and outside the semiconductor industry. LSAT is currently already being used by various industrial manufacturing equipment companies, including world-leading key players such as ASML, VDL-ETG and Nexperia to formally specify, validate and predict the behavior of their complex systems, and to use (formal) LSAT models as a means of communication with their technology suppliers, e.g. by specifying behavior contracts. Over time, LSAT is envisioned to evolve it into a generically applicable modelling workbench to support the development of high-tech flexible manufacturing systems.

High-tech systems companies increasingly adopt the Model-Based Systems Engineering (MBSE) paradigm. The use of (formal) models for equipment design allows validation and verification of systems long before they are implemented and integrated into the system. Early validation and verification have been shown to lead to less defects, reduced costs, higher quality and improved performance.

Scope

Eclipse LSAT creates and evolves a logistics specification and analysis modelling workbench to support the development of flexible manufacturing systems, typically mechatronics-intense equipment. It has a strong focus on industrial applicability. The toolkit includes behavioral modelling support for the development process in the early design of flexible manufacturing systems, including formal specification, design-space exploration, performance analysis, conformance checking to validate whether implemented behavior is according to specification, and code generation.

Description

The Eclipse LSAT project provides a toolkit for the early design of (mechatronics-intense) flexible manufacturing system development adhering to the MBSE paradigm. It enables the specification of the system and product flow in the system and analysis of the associated impact on system resources. The tool suite supports the early design of flexible manufacturing system development, by shortening the development time using light-weight models for logistics at an appropriate abstraction level. This provides value when dealing with unclear requirements, many design decisions, and when it is difficult to give estimates of the performance that can be achieved and / or guaranteed. Its analysis is used to give guarantees on safety and optimize performance. It includes support of formal specification for unambiguous communication, and design-space exploration and analysis techniques to assess and optimize the performance of system behavior scenarios.

The toolkit’s core feature is a set of four formal languages to model flexible manufacturing systems, providing an intuitive textual syntax combined with a graphical syntax:

  1. Machine language: modelling of system resources, peripherals, actions that the peripherals can execute, as well as the resource positions and motion trajectories;
  2. Settings language: physical settings of the system, including coordinates, execution times, and motion profile parameters;
  3. Application language; description of the system behavior at a higher level of abstraction using activities that are composed of a set of actions and their dependencies;
  4. Logistics language; order of activities to capture the possible and/or required product flows.

The semantics of the languages are captured in sound mathematical structures, that allow formal analysis. The toolkit supports:

  • Modelling to realize a consistent specification (of physical layout and allowed behavior) and design-time feedback including syntax checks and domain validation;
  • Visualizations providing human understanding including Gantt charts, activities, motion paths;
  • Timing analysis providing insights including max-plus linear model-based techniques to calculate the makespan and throughput, to identify bottlenecks and critical paths, and to support design-space exploration (impact of layout changes, scheduling);

Code generation: offline and runtime conformance checking, i.e. validation whether the existing implementation conforms to the specification.

Why Here?

The objective is, together with diverse parties interested in the use of LSAT, to create a larger community around LSAT. The aim is to make it easier for all parties to contribute together to the development of the tooling in an open setting, and to enable managed open source support by third parties. LSAT should not be longer seen as research tool but should receive more industrial focus. Therefore, TNO believes the Eclipse Foundation is an excellent fit for the future of LSAT.

Future Work

There is an extensive backlog of short-term feature extensions and improvements which is currently (planned to be) worked on:

  • Modelling and analysis extensions, including support for ‘rotation’ movements, motion synchronization, custom moves and specialized motion profiles, activity and process variability (process modelling), resource variability, handling of modular CIF specifications, dealing with feedback, dealing with distributed synthesis, including model-checking, support for multi-claim resources, multiple phases in dispatching file, machine coordinates, analysis of the worst-case makespan, settling times, modelling of software overhead, high-level configuration options, and integration of non-movement (e.g. thermal) models.
  • Improvements of existing features, including coloring of Gantt charts actions based on activities, synthesis of dispatching sequences focusing on only parts of the system, visual representations of models, white noise generation for sensibility analysis, visualization to plan trajectories, various setpoint related improvements, and extensive logistics specifications.
  • Improvements on the maturity of the industrialization, including scalability of CIF makespan and throughput synthesis, determine the achieved throughput from execution traces, usage tracking for in-the-field LSAT feature usage, code generation for conformance checking, improved documentation, worked out examples, scientific paper to illustrate the concepts and analysis techniques.
  • Integration with other tool suites, including functionality to export to GraphML, Blender 3D animations, and Microsoft Word as system design document.
  • Bug-fixes for reported issues.

We foresee that, in the future, LSAT will be extended to support more diverse industry applications. By extending to more diverse domains, the toolkit will become more generically applicable and thereby more appealing. To build up a growing user community, LSAT will be applied in projects together with industrial partners, closely aligning with addressing their daily development challenges. Furthermore, knowledge institute ESI (TNO) will actively disseminate the toolkit and its benefits with the high-tech systems eco-system, and the TU/e will use LSAT in their Embedded Systems and Electrical Engineering Master programs.

Finally, the project aims to realize a support platform for the toolkit addressing bug-fixing, regular builds following the Eclipse release cycle, manuals and instruction material. The grand idea is that this platform will enable commercial users (industry, high-tech companies) to commission proprietary software partners (e.g. software houses) to support, extend and improve LSAT.

Project Scheduling

The initial contribution is scheduled for 2021 Q2. It will include a fully compiling and tested version of the LSAT product. The first release as an Eclipse project is foreseen for 2021 Q4.

Mentors
Interested Parties

An LSAT user community already exists consisting of the following companies and organizations:

  • TNO;
  • ASML;
  • VDL-ETG;
  • TU/e.

We expect on short term to extend the LSAT user community with following interested companies and organizations:

  • Nexperia;
  • Altran;
  • ICT;
  • Additive Industries;
  • Cordis Automation.
Initial Contribution

The initial contribution of the LSAT project is the full LSAT source, including source code (Java) and documentation, more specifically:

  • LSAT (EMF) languages, parsers, and validators;
  • LSAT Eclipse Platform IDE-based textual (Xtext) and graphical (Sirius) editors;
  • Common (EMF) languages like graph, resource, schedule, trace-log and petri-net;
  • Common libraries, a collection of various reusable Java libraries for various purposes;
  • Analysis library for scheduling timed graphs onto multiple resources;
  • Analysis library for performance analysis and optimization, based on max-plus algebra;
  • Analysis library for conformance analysis, based on petri-net and trace-log;
  • LSAT examples;
  • LSAT user documentation;
  • LSAT design documentation;
  • RCPTT based functional regression test.

TNO is the copyright holder of the code and the other artifacts.

LSAT requires the following other toolsets, to be downloaded separately from their original download location:

  • Eclipse Modeling Framework (EMF);
  • Xtext;
  • Sirius;
  • Eclipse Layout Kernel (ELK);
  • QVTo;
  • OCL;
  • Xtend.

LSAT can be extended with various optional Eclipse features, to be downloaded separately from their original download location:

  • CIF, part of the Eclipse Supervisory Control Engineering Toolkit (ESCET) project;
  • TRACE, a tool which helps us to understand complicated behavior over time for all kinds of systems through its domain-independent capabilities for visualizing and analyzing concurrent activities which are encoded in execution traces. TRACE is currently closed source and owned by TNO but will be due time made open source as another Eclipse Foundation open source project and distributed under Eclipse Public License 2.0.

We used the Eclipse Dash License Tool (github.com/eclipse/dash-licenses) to analyze the dependencies of LSAT. The list below excludes all approved dependencies and only lists the dependencies that require investigation.

JFreeChart (LGPL, www.jfree.org/jfreechart):

  • maven/mavencentral/org.jfree/jfreechart/1.0.19
  • maven/mavencentral/org.jfree/jcommon/1.0.23

JGraphT (EPL-2.0 / LGPL-2.1 / Apache-2.0, jgrapht.org):

  • maven/mavencentral/org.jgrapht/jgrapht-core/1.4.0 (EPL-2.0 / LGPL-2.1)
  • maven/mavencentral/org.jheaps/jheaps/0.11 (Apache-2.0)

TRACE (EPL-2.0; to-be contributed to Eclipse Foundation separately from Eclipse LSAT, website trace.esi.nl):

  • p2/orbit/p2.eclipse-feature/nl.esi.trace.feature/0.6.4
  • p2/orbit/p2.eclipse-plugin/nl.esi.trace.jfree/0.6.4
  • p2/orbit/p2.eclipse-plugin/nl.esi.trace.opengl/0.6.4
  • p2/orbit/p2.eclipse-plugin/nl.esi.trace/0.6.4

The community around developing the code consists of:

  • scientific programmers working for ESI (TNO);
  • software programmers working for Altran, ICT (software houses);
  • students and PhD candidates from the TU/e.
Source Repository Type