21
Vorto Public Material Vorto Describe. Share. Integrate. Info Model Info Model Info Model Info Model Eclipse Vorto A Smart Approach to Connecting Industrial Products Alexander Edelmann (Bosch Software Innovations)

IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Embed Size (px)

Citation preview

Page 1: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Vorto Describe. Share. Integrate.

Info

Model

Info

Model

Info

Model

Info

Model

Eclipse Vorto

A Smart Approach to Connecting Industrial Products Alexander Edelmann (Bosch Software Innovations)

Page 2: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

1

2

3

Eclipse Vorto Overview

Use Case: Automotive Cloud Communication

Summary

Agenda

1

Page 3: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

What is Eclipse Vorto ?

Vorto is an open source tool to

Create and share technology agnostic device descriptions (Information Models)

Generate source code, documentation, or standard compliant representations out of Information

Models

Manage Information Models in the Vorto Repository

IoT Toolset

Meta Model

Repository

Code

Generators

Page 4: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Information models – Abstract representations of real objects

Vorto Repository

Information

Model Information

Model

Information

Model

Information

Model

Information

Model

Information

Model

Information

Model

Eclipse Vorto

is a technical approach to

standardization at the semantic

abstraction layer by means of

generic, technology agnostic

Information Models.

Vorto Information Models

are detailed representations of

real objects following the Vorto

Meta Information Model.

Vorto Repository

The Vorto Repository allows to

manage and share Information

Models.

Vorto IoT Toolset

The Vorto IoT Toolset allows to

easily create Information

Models.

Page 5: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Information models – Abstract representations of real objects

Camera

Information Model

Functionblock: Location

Functionblock: Camera

Functionblock: Motion Detector

Functionblock: … Functionblocks

are reusable components that

are referenced by Information

Models. Functionblocks are also

managed in the Vorto

Repository.

Page 6: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Information models – Abstract representations of real objects

Car Interface

Information Model

Functionblock: Location

Functionblock: Battery Status

Functionblock: Running Status

Functionblock: … Functionblocks

are reusable components that

are referenced by Information

Models. Functionblocks are also

managed in the Vorto

Repository.

Page 7: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Information Models, Functionblocks, Entities and their relations

IM

FB FB FB

DT DT

EN

DT

Information Models group

Functionblocks.

Functionblocks describe a

reusable set of functionalities.

They can reuse data types

and enums.

Data types and enums are

reusable components that

describe specific data. Data

types can reference other

data types or enums. DT

Page 8: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

The Vorto DSL – An easy to use language for describing devices and related

data types.

Add descriptions on property level.

Define Constraints on property level.

Specify a measurement unit for properties.

Specify the data type for every property. The be simple and also complex.

Specify the name of the property.

Specify if the property is mandatory or optional.

Example

Page 9: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Importers Code Generators Eclipse Vorto

Vorto Repo

Ok, but… I’ve already chosen a standard for my device descriptions. And

now?

Vorto Repo

XML / XSD

SDT 2.0

IPSO Smart Objects IPSO Smart Objects

OSGI-DAL

Java

Meta

Model

Using specific importers and code generators you can benefit from

Eclipse Vorto without changing the format of your device descriptions.

Page 10: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Vorto Repository – Manage your Information Models

Model Access

API

Generation

API

Maven Continuous

Integration

Optional

• Find your Information

Model

• Share your

Information Model

• Generate Source

Code

Cloud Integrate Vorto Code

Generation in your CI with

Vorto Maven Plugin(s)

Integrate Vorto with your

toolchain or platform

Page 11: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

1

2

3

Eclipse Vorto Overview

Use Case: Automotive Cloud Communication

Summary

Agenda

2

Page 12: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Vehicle Speed

150.1 Km/h 0.0 160.0

CoAP-Server

SOME/IP

Client

Service Service

Service

SOME/IP

Server

Use Case: Automotive-Cloud Communication

Service Service

Service

CoAP-Client

Cloud

Gateway

Electronic Control Unit

Page 13: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Use Case: Automotive-Cloud Communication

Vorto describes services

in vehicle and cloud and

the mappings for the

corresponding protocols

Vorto generates

configuration Files

Vorto generates

CoAP Client + Server

configuration and the

corresponding

resources

Vorto generates the

protocol mappings

The data are

described by

Vorto and thus

interoperability

is ensured.

Vehicle Speed

150.1 Km/h 0.0 160.0

Vorto

bootstraps IoT

backend +

generates UI

Components

Bosch IoT Things

Page 14: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Use Case: Describing services with Vorto and Generate Code

Tool Set

Service

+ Methods

+ Events

Service

+ Methods

+ Events

Service

+ Methods

+ Events

Service

+ Methods

+ Events

Code Generators

CoAP Client & Server

Bundles for vehicle

communication Client

Server

Service and vehicle

description schemes

Vehicle Speed

150.1 Km/h 0.0 160.0

Bosch IoT Things

UI Components to

visualize vehicle status

Thing representation to

persist vehicle data

Page 15: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Example Workflow (1/3)

Page 16: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Example Workflow (2/3)

Page 17: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Example Workflow (3/3)

Client

Server

Page 18: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

1

2

3

Eclipse Vorto Overview

Use Case: Automotive Cloud Communication

Summary

Agenda

3

Page 19: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Eclipse Vorto at a glance

API

Code Generators Tool Set

Describe a device Share & Manage descriptions Generate for device integration

Repository

Page 20: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

What are the benefits ?

Vorto enables interoperability for the Internet of Things (IoT)

The Vorto OSS approach enables collaboration between IoT players

Vorto is easy to use and requires little technical knowledge

Vorto reduces development efforts when integrating IoT devices into IoT platforms or IoT

applications

Vorto supports implementing consistent interfaces across various device classes

<open source/>

Page 21: IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore

Vorto

Eclipse Vorto

Public Material

Vorto Describe. Share. Integrate.

Info

Model

Info

Model

Info

Model

Info

Model

Contact Details

[email protected]

www.eclipse.org/vorto