Post on 21-Jan-2017
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)
Vorto
Eclipse Vorto
Public Material
1
2
3
Eclipse Vorto Overview
Use Case: Automotive Cloud Communication
Summary
Agenda
1
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
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.
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.
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.
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
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
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.
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
Vorto
Eclipse Vorto
Public Material
1
2
3
Eclipse Vorto Overview
Use Case: Automotive Cloud Communication
Summary
Agenda
2
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
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
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
Vorto
Eclipse Vorto
Public Material
Example Workflow (1/3)
Vorto
Eclipse Vorto
Public Material
Example Workflow (2/3)
Vorto
Eclipse Vorto
Public Material
Example Workflow (3/3)
Client
Server
Vorto
Eclipse Vorto
Public Material
1
2
3
Eclipse Vorto Overview
Use Case: Automotive Cloud Communication
Summary
Agenda
3
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
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/>
Vorto
Eclipse Vorto
Public Material
Vorto Describe. Share. Integrate.
Info
Model
Info
Model
Info
Model
Info
Model
Contact Details
Alexander.Edelmann@bosch-si.com
www.eclipse.org/vorto