This proposal has been approved and the Eclipse Arrowhead project has been created.
Visit the project page for the latest information and development.

Eclipse Arrowhead

Tuesday, March 31, 2020 - 07:44 by Szvetlin Tanyi
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.
Parent Project
Proposal State
Created
Background

The consortia of Artemis Arrowhead and the ECSEL Arrowhead Tools projects have brought together European experts from the Industrial IoT domain – from industry as well as academia. The Arrowhead Core systems and services matured well, as well as corresponding concepts throughout the value chain of System of Systems design, development, operation, maintenance, evolution and training. The interested parties wish to keep the momentum going with a clear governance on development and maintenance of these manifested elements of the Arrowhead concepts. They further want to ensure sustainability and clear licensing which are among further topics exactly challenges to which the Eclipse Foundation provides guidelines and support for. Therefore, the partners around the Arrowhead framework want to start a corresponding project within the Eclipse Foundation.

Scope

The Eclipse Arrowhead provides a Service Oriented Architecture-based interoperability and integrability framework for the design and operation of complex systems of systems in the industrial automation domain. Through a service oriented architecture enabling the loose coupling of relevant services, Eclipse Arrowhead provide the concepts and tooling for such a framework. The actual implementation of services relevant for a specific production ready use cases is beyond the scope this project.

The project covers architecture, software systems, and services originated from multiple European and national projects e.g., Arrowhead and Arrowhead Tools [1], EMC2 [2], Productive4.0 [3], FAR-EDGE [4]. The architecture is summarised in multiple papers [5, 6] and a book [7]. The architecture is built on a concept called local clouds [8, 9]. Local clouds are self contained and are populated with at least 3 mandatory core system and a selection of support core systems. Currently available core systems and are:  

  • Mandatory core systems: Service Registry, Orchestrator, Authorization.
  • Supporting core systems: Event Handler, Gateway, Gatekeeper, Translator, QoS Manager, QoS Monitor, DataManager, etc. The currently released support systems and release candidate systems are currently located at https://github.com/arrowhead-f

All these systems and their services are open-source and keep the Eclipse licensing scheme or should be transfered to the Eclipse licensing schema.

On the other hand, legacy application systems or services that have Eclipse Arrowhead compatible APIs, but do not belong the above category - simply do not belong to the scope.

References:

[1] Arrowhead and Arrowhead Tools Projects - https://www.arrowhead.eu/

[2] EMC2 project - http://www.emc2-project.eu/

[3] Productive4.0 project - https://productive40.eu/

[4] FAR-EDGE project - http://www.faredge.eu

[5] . P. Varga, F.  Blomstedt, L. L. Ferreira, J. Eliasson, M. Johansson, J. Delsing, and I. M. de Soria, “Making System of Systems Interoperable - the Core Components of the Arrowhead Framework,” Journal of Network and Computer Applications, Special Issue on Engineering Future Interoperable and Open IoT Systems, 2016.

[6] Cs. Hegedus, D. Kozma, G. Soos, and  P. Varga, “Enhancements of the Arrowhead Framework to Refine Intcloud Service Interactions,” in 42nd Annual Conference of IEEE Industrial Electronics Society (IECON), Florence, Italy, 2016

[7] J. Delsing (ed.), “IoT Automation: Arrowhead Framework,” CRC Press, 2017

[8] J. Delsing, J. Eliasson, J. van  Deventer, H. Derhamy, and  P. Varga, “Enabling IoT Automation using Local Clouds,” 2016 IEEE 3rd World Forum on Internet of Things (WF-IoT), pp. 502–507, 2016.

[9] J. Delsing, “Local Cloud Internet of Things Automation: Technology and Business Model Features of Distributed Internet of Things Automation Solutions,” IEEE Industrial Electronics Magazine, vol.11, pp. 8–21, 2017.

Description

The Eclipse Arrowhead project consists of systems and services that are needed for anyone to design, implement and deploy Arrowhead-compliant System of Systems. The generic concept of the Arrowhead Framework is based on the concept of Service Oriented Architectures, and aims at enabling all of its users to work in a common and unified approach – leading towards high levels of interoperability.

The Arrowhead Framework is addressing IoT based automation and digitalisation. The approach taken is that the information exchange of elements in the Internet of Things is abstracted to services. This is to enable IoT interoperability in-between almost any IoT elements . The creation of automation is based on the idea of self-contained Local Clouds. Compared to the well-known concept of global clouds, in Arrowhead a local cloud can provide improvements and guarantees regarding:

  • Real time data handling
  • Data and system security
  • Automation system engineering
  • Scalability of automation systems

 

The Arrowhead Framework provides support for building system of systems (SoS) based on service-oriented architecture patterns. Each SoS consists of various Application systems already existing or under development. These Application systems then utilize the Core Systems developed as part of the Arrowhead project and their Services that provide support in addressing fundamental issues related to governance, operational management and security, for example:

  • How does a service provider system make its possible consumers aware of its available service instance(s)?
  • How can a service consumer find (discover) what service instance(s) it might be interested in and allowed to consume?
  • How do we remotely control (i.e. orchestrate) which service instances a consumer shall consume?
  • How does a service provider determine what consumer(s) to accept?

The smallest unit of governance within the Arrowhead Framework is hence related to a Local Cloud (LC), which in general is a closed, local industrial network. Each Local Cloud must at least host the mandatory core systems within its network: creating the minimal supported functionality needed to enable collaboration and information exchange between the various systems within the local cloud. The three mandatory systems for each Local Cloud are:

  • Service Registry,
  • Orchestrator,
  • Authorization.

 

 

In addition to the mandatory core systems, a number of additional, supporting core systems and services are provided to enable the design, engineering, operation and maintenance of IoT-based automation system of systems. Such supporting core systems are:

  • Gatekeeper and Gateway systems
  • Event Handler system
  • SystemRegistry system
  • DeviceRegistry system
  • Data Manager system
  • Quality of Service (QoS) Manager and Monitor systems
  • Translation system
  • Plant Description system
  • System Configuration system,
  • ...and many more.

Inter-cloud information exchange is supported by Gatekeeper (control plane) and Gateway Systems (data plane) together with Arrowhead Relays, whereas security issues are covered through various measures, including AAA functions (Authentication, Authorization, Accounting), certificate handling or data encryption.

 

Why Here?

The Eclipse Foundation licensing scheme was considered already within the Artemis Arrowhead project as a good candidate for future developmemt. The Eclipse Foundation was chosen as a partner for the open-source efforts of the Arrowhead Tools project, being involved already in the proposal phase of the project. One reason is the abundance of existing IoT projects at the Eclipse Foundation, which we hope to profit from, with all related aspects of Industry 4.0 and Industrial IoT. There are several Eclipse projects we wish to cooperate with, including Eclipse 4diac, Eclipse BaSyx, Eclipse Bridge.IoT, Eclipse hawkBit, Eclipse Hono or Eclipse Vorto among others.

Project Scheduling

The project is in its Release Version 4.1.3 at the moment. All mandatory core systems and services are in good shape, coherent, and documented. Further systems, including the Gatekeeper, the Gateway and the Event Handler are at the same level of coherence and documentation.

Further release candidates include the Data Management System, the Translator System, the System Registry System, the Device Registry System, the Workflow Manager, the Workflow Executor, the Choreographer, are expected to be released by the end of 2020.

A second milestone will be released in November 2020 with further systems and services and, OPC-UA capability by the mandatory core systems. In May 2021 we aim to release a more mature version of the inter-cloud infrastructure with full Arrowhead relay support. For May 2022 we plan the release of a matured version of all supporting core systems.

Project Leads
Interested Parties

Productive4.0, www.productive40.net

Arrowhead Tools, www.arrowhead.eu

Multiple national project in Sweden, Austria, Hungary, Spain, Denmark, Norway.

Initial Contribution

The existing code is currently available under:

https://github.com/arrowhead-f

The Core Java spring implementation is available in:

https://github.com/arrowhead-f/core-java-spring

Basic description of the code is available within the repositories as well.

Source Repository Type