SlideShare a Scribd company logo
1 of 43
Download to read offline
IIOT
WARS
Christofer Dutz < >
FIR I4.0 Demo Factory (29.10.2019)
christofer.dutz@codecentric.de
1
WHO AM I?WHO AM I?
Christofer Dutz
Senior IT Consultant
codecentric AG
Open-Source Enthusiast
Committer of 10 Apache projects
Member of the Apache Foundation
VP of Apache PLC4X
Son of an electroengineer
Twitter: @ChristoferDutz
2 . 1
NO §13 CRAPNO §13 CRAP
2 . 2
THE CURRENT SITUATION IN THETHE CURRENT SITUATION IN THE
INDUSTRYINDUSTRY
Industry 4.0 is everywhere
The industry is adopting more and more:
IoT technology
Cloud technology
Big Data technology
Machine learning and AI technology
3
THE FUTURE SITUATION IN THETHE FUTURE SITUATION IN THE
INDUSTRYINDUSTRY
2017 2018 2019 2020 2021
0
50
100
150
200
250
300
350
400
450
500
550
600
650
700
IoT Market in Billions of $
4 . 1
ALL CHARTS SORT OF LOOK THE SAMEALL CHARTS SORT OF LOOK THE SAME
4 . 2
BUTBUT
These topics are completely new to the industry
There is usually no know-how in the company
Customers turn to their established vendors
These try to close the gap
5
BUUTBUUT
These topics are completely new to the vendors
There is usually no know-how at the vendor
Vendors start buying companies that have the necessary
know-how
Additionally they start hiring talented people to close the
gap
6
BUUUTBUUUT
Unfortunately they’re doing it the same way they have been
doing it for the last 20 years
Closed-Source
Restrictive-Licenses
Insanely expensive
Restricted connectivity
7
COMPARISONCOMPARISON
8
BUUUUTBUUUUT
These topics are what we’ve been doing for almost a decade
Modern IT has plenty of great tools to use
Modern IT has plenty of skilled people to take on the fight
All the industry needs to do, is start asking us instead
9
MOST SIGNIFICANT BARRIERSMOST SIGNIFICANT BARRIERS
Source: Bain IoT Customer Survey 2018
Security
IT/OT Integration
Unclear ROI
Technical Expertise
Interoperability
Data Portability
Vendor Risk
Transition Risk
Legal/regulatory
issues
Network constraints
Vendor lock-in
0 5 10 15 20 25 30 35 40 45
%
10
BARRIER: CONNECTIVITYBARRIER: CONNECTIVITY
Source: Bain IoT Customer Survey 2018
Security
IT/OT Integration
Unclear ROI
Technical Expertise
Interoperability
Data Portability
Vendor Risk
Transition Risk
Legal/regulatory
issues
Network constraints
Vendor lock-in
0 5 10 15 20 25 30 35 40 45
%
11
BARRIER: CONNECTIVITYBARRIER: CONNECTIVITY
Most major vendors of industrial hardware defined their own
proprietary protocols for communication
These protocols are usually always incompatible with each
other
Some standards (Modbus, EtherNet/IP, OPC)
PLCs usually provide multiple protocols
but full functionality usually only via the proprietary
one
No universal way to communicate with (open-source) SW
New protocol: OPC-UA aiming at becoming the standard
12
BARRIER: CONNECTIVITYBARRIER: CONNECTIVITY
13
OPC-UAOPC-UA
OPC-UA is a standard for inter-machine communication
Defined by OPC Foundation
It’s members come from almost all major Vendors
Been working on it for about 10 Years
Defines how to transport machine data
But also the semantics of this data
14
OPC-UA IS (CURRENTLY) NOT AOPC-UA IS (CURRENTLY) NOT A
SOLUTIONSOLUTION
OPC-UA support by adding application server to the PLC
Performance is currently less than ideal
In my opinion highly over-engineered for most current use-
cases
Usable version released last year
15
OPC-UA IS (CURRENTLY) NOT AOPC-UA IS (CURRENTLY) NOT A
SOLUTIONSOLUTION
Figure 1. fromHiding among enemies http://starwars.fandom.com 16
EXAMPLE NUMBERSEXAMPLE NUMBERS
In field tests we were able to collect from a single PLC
200 data points
Every 2 seconds
PLC was overloaded if collecting more or doing it faster
Test-Server was overloaded when processing more than 20
PLCs
Expensive
17
WHAT’S MISSING?WHAT’S MISSING?
18
APACHE PLC4XAPACHE PLC4X
— Apache PLC4X Project Statement
PLC4X is a set of libraries for communicating
with industrial programmable logic controllers
(PLCs) using a variety of protocols but with a
shared API.
19
APACHE PLC4XAPACHE PLC4X
20
APACHE PLC4XAPACHE PLC4X
Applications only use API module
Integration modules available for multiple frameworks
Generally available for Java
Working on C++, C#, Python
Scala, C, JavaScript, … will follow
Ability to write software (almost) independent of the actual
PLC used
21
PLC4X SUPPORTED OPERATIONSPLC4X SUPPORTED OPERATIONS
Read
Write
Publish-Subscribe
Call Functions
Browse Resources



22
PLC4X SUPPORTED PROTOCOLSPLC4X SUPPORTED PROTOCOLS
Siemens S7 (Step7)
Beckhoff ADS
Modbus (TCP/Serial)
EtherNet/IP
OPC-UA
Allen-Bradley AB-ETH
Allen-Bradley DF1
BacNet
Emerson DeltaV
KnxNet/IP
Siemens S7 (TIA)
ProfiNet
…












23
MOST SIGNIFICANT BARRIERSMOST SIGNIFICANT BARRIERS
Security
IT/OT Integration
Unclear ROI
Technical Expertise
Interoperability
Data Portability
Vendor Risk
Transition Risk
Legal/regulatory
issues
Network constraints
Vendor lock-in
0 5 10 15 20 25 30 35 40 45
%
24
INTEGRATION TO OTHER PROJECTSINTEGRATION TO OTHER PROJECTS
Apache Calcite
Apache Camel
Apache Edgent
Apache Kafka Connect
Apache NiFi
Logstash
StreamPipes
Apache MyNewt
Eclipse Kura
EdgeX Foundry
OpenHAB











25
PLC4X ARCHITECTUREPLC4X ARCHITECTURE
26
CODE EXAMPLECODE EXAMPLE
try (PlcConnection plcConnection =
new PlcDriverManager().getConnection("s7://10.10.64.20/1/1")) {
Optional<PlcReadRequest.Builder> builderOptional =
plcConnection.readRequestBuilder();
if (!builderOptional.isPresent()) {
logger.info("This connection doesn't support reading.");
} else {
PlcReadRequest.Builder builder = builderOptional.get();
PlcReadRequest readRequest = builder
.addItem("somefield", "%Q0.0:BOOL")
.addItem("anotherfield", "%Q0:BYTE")
.build();
CompletableFuture<? extends PlcReadResponse> responseFuture =
readRequest.execute();
27
MOST SIGNIFICANT BARRIERSMOST SIGNIFICANT BARRIERS
Security
IT/OT Integration
Unclear ROI
Technical Expertise
Interoperability
Data Portability
Vendor Risk
Transition Risk
Legal/regulatory
issues
Network constraints
Vendor lock-in
0 5 10 15 20 25 30 35 40 45
%
28
BARRIER: SECURITYBARRIER: SECURITY
Aspect the industry is most parnoid about
Industrial Espionage
Compliance Rules
Regulations
Very difficult to any data-science technology
"Solution": Validated Software
Reading still has impact on the PLC performance
29
TYPICAL DATA SCIENCE SETUPTYPICAL DATA SCIENCE SETUP
30
SECURITY BY DESIGN: PASSIVE MODESECURITY BY DESIGN: PASSIVE MODE
DRIVERSDRIVERS
Drivers that only passively monitor network traffic
Capture Request & Response
Know what Value X on Device Y is at a given time
Absolutely no impact on the PLC device
Extremely cheap
31
IF YOU DON’T TRUST YOUR SWITCHIF YOU DON’T TRUST YOUR SWITCH
PROVIDERPROVIDER
32
100% SECURE PASSIVE MODE SETUP100% SECURE PASSIVE MODE SETUP
33
MOST SIGNIFICANT BARRIERSMOST SIGNIFICANT BARRIERS
Security
IT/OT Integration
Unclear ROI
Technical Expertise
Interoperability
Data Portability
Vendor Risk
Transition Risk
Legal/regulatory
issues
Network constraints
Vendor lock-in
0 5 10 15 20 25 30 35 40 45
%
34
SO WHAT’S NEW?SO WHAT’S NEW?
We graduated to a TLP of the Apache Software Foundation
on 23rd April 2019
Driver specification in machine readable format
Generates at least model, parser and serializer for any
language
In order to support new language, all you need to provide is:
Language Template
In oder to support new protocol, all you need to provide is:
Protocol Module
Generated server (Plc Mock)
35
SO WHAT’S NEXT?SO WHAT’S NEXT?
36
COMING BACK TO THAT CHART FROMCOMING BACK TO THAT CHART FROM
THE STARTTHE START
37
38
HOW TO HELPHOW TO HELP
Sign up to our mailing-list:
Follow us on twitter:
Start using PLC4X
File bugs:
Submit PRs:
Join the discussions on our mailing list
Spread the word
Help up color the last two bars
dev@plc4x.apache.org
@ApachePLC4X
https://issues.apache.org/jira/projects/PLC4X
https://github.com/apache/plc4x
39
THANKS FOR LISTENINGTHANKS FOR LISTENING
That's all folks!
___ /
,-'___'-. /
,' [(_)] './
|_]||[][O]o[][|
_ |_____________| _
| [] _______ [] |
| [] _______ [] |
[| || _ || |]
|_|| = [=] ||_|
| || = [|] || |
| || _ || |
| |||| (+) (|| |
| ||_____________|| |
|_| ___________/ |_|
/  | | / 
/___ /___ /___
#######################################################################
40

More Related Content

What's hot

webMethods Integration Cloud Deep Dive
webMethods Integration Cloud Deep DivewebMethods Integration Cloud Deep Dive
webMethods Integration Cloud Deep DiveSoftware AG
 
Dell OEM/IoT Solutions for Industrial Automation and Smart Manufacturing v3a ...
Dell OEM/IoT Solutions for Industrial Automation and Smart Manufacturing v3a ...Dell OEM/IoT Solutions for Industrial Automation and Smart Manufacturing v3a ...
Dell OEM/IoT Solutions for Industrial Automation and Smart Manufacturing v3a ...Dell Technologies
 
SharePoint Online (365) vs SharePoint On-Premises
SharePoint Online (365) vs SharePoint On-PremisesSharePoint Online (365) vs SharePoint On-Premises
SharePoint Online (365) vs SharePoint On-PremisesLior Zamir
 
IoT Architectures for a Digital Twin with Apache Kafka, IoT Platforms and Mac...
IoT Architectures for a Digital Twin with Apache Kafka, IoT Platforms and Mac...IoT Architectures for a Digital Twin with Apache Kafka, IoT Platforms and Mac...
IoT Architectures for a Digital Twin with Apache Kafka, IoT Platforms and Mac...Kai Wähner
 
Power Platform Presentation.pptx
Power Platform Presentation.pptxPower Platform Presentation.pptx
Power Platform Presentation.pptxShadrackLangat1
 
MuleSoft Surat Meetup#54 - MuleSoft Automation
MuleSoft Surat Meetup#54 - MuleSoft AutomationMuleSoft Surat Meetup#54 - MuleSoft Automation
MuleSoft Surat Meetup#54 - MuleSoft AutomationJitendra Bafna
 
Platform & Application Modernization
Platform & Application ModernizationPlatform & Application Modernization
Platform & Application ModernizationJK Tech
 
OPC .NET 3.0 Simplifies Client Access to DeltaV
OPC .NET 3.0 Simplifies Client Access to DeltaVOPC .NET 3.0 Simplifies Client Access to DeltaV
OPC .NET 3.0 Simplifies Client Access to DeltaVEmerson Exchange
 
Vertex AI Presentation
Vertex AI PresentationVertex AI Presentation
Vertex AI PresentationKnoldus Inc.
 
Melbourne UG Presentation - UI Flow for Power Automate
Melbourne UG Presentation - UI Flow for Power AutomateMelbourne UG Presentation - UI Flow for Power Automate
Melbourne UG Presentation - UI Flow for Power AutomateAndre Margono
 
Agile Integration with APIs and Containers Workshop
Agile Integration with APIs and Containers Workshop Agile Integration with APIs and Containers Workshop
Agile Integration with APIs and Containers Workshop Nicole Maselli
 
The Event Mesh: real-time, event-driven, responsive APIs and beyond
The Event Mesh: real-time, event-driven, responsive APIs and beyondThe Event Mesh: real-time, event-driven, responsive APIs and beyond
The Event Mesh: real-time, event-driven, responsive APIs and beyondSolace
 
Intro to the Office 365 Admin Center
Intro to the Office 365 Admin CenterIntro to the Office 365 Admin Center
Intro to the Office 365 Admin CenterNikkia Carter
 
Being more secure using Microsoft 365 Business
Being more secure using Microsoft 365 BusinessBeing more secure using Microsoft 365 Business
Being more secure using Microsoft 365 BusinessRobert Crane
 
Orchestrator - Practical Approach to host UiPath Orchestrator
Orchestrator - Practical Approach to host UiPath OrchestratorOrchestrator - Practical Approach to host UiPath Orchestrator
Orchestrator - Practical Approach to host UiPath OrchestratorVibhor Shrivastava
 
20201107 Putting the DEV in Citizen DEVeloper with the Microsoft Power Platform
20201107 Putting the DEV in Citizen DEVeloper with the Microsoft Power Platform20201107 Putting the DEV in Citizen DEVeloper with the Microsoft Power Platform
20201107 Putting the DEV in Citizen DEVeloper with the Microsoft Power PlatformTracy Van der Schyff
 
DeltaV Electronic Marshalling
DeltaV Electronic MarshallingDeltaV Electronic Marshalling
DeltaV Electronic MarshallingSumeet Goel
 

What's hot (20)

webMethods Integration Cloud Deep Dive
webMethods Integration Cloud Deep DivewebMethods Integration Cloud Deep Dive
webMethods Integration Cloud Deep Dive
 
Dell OEM/IoT Solutions for Industrial Automation and Smart Manufacturing v3a ...
Dell OEM/IoT Solutions for Industrial Automation and Smart Manufacturing v3a ...Dell OEM/IoT Solutions for Industrial Automation and Smart Manufacturing v3a ...
Dell OEM/IoT Solutions for Industrial Automation and Smart Manufacturing v3a ...
 
SharePoint Online (365) vs SharePoint On-Premises
SharePoint Online (365) vs SharePoint On-PremisesSharePoint Online (365) vs SharePoint On-Premises
SharePoint Online (365) vs SharePoint On-Premises
 
Managing APIs with MuleSoft
Managing APIs with MuleSoftManaging APIs with MuleSoft
Managing APIs with MuleSoft
 
IoT Architectures for a Digital Twin with Apache Kafka, IoT Platforms and Mac...
IoT Architectures for a Digital Twin with Apache Kafka, IoT Platforms and Mac...IoT Architectures for a Digital Twin with Apache Kafka, IoT Platforms and Mac...
IoT Architectures for a Digital Twin with Apache Kafka, IoT Platforms and Mac...
 
Power Platform Presentation.pptx
Power Platform Presentation.pptxPower Platform Presentation.pptx
Power Platform Presentation.pptx
 
MuleSoft Surat Meetup#54 - MuleSoft Automation
MuleSoft Surat Meetup#54 - MuleSoft AutomationMuleSoft Surat Meetup#54 - MuleSoft Automation
MuleSoft Surat Meetup#54 - MuleSoft Automation
 
Platform & Application Modernization
Platform & Application ModernizationPlatform & Application Modernization
Platform & Application Modernization
 
OPC .NET 3.0 Simplifies Client Access to DeltaV
OPC .NET 3.0 Simplifies Client Access to DeltaVOPC .NET 3.0 Simplifies Client Access to DeltaV
OPC .NET 3.0 Simplifies Client Access to DeltaV
 
Vertex AI Presentation
Vertex AI PresentationVertex AI Presentation
Vertex AI Presentation
 
Melbourne UG Presentation - UI Flow for Power Automate
Melbourne UG Presentation - UI Flow for Power AutomateMelbourne UG Presentation - UI Flow for Power Automate
Melbourne UG Presentation - UI Flow for Power Automate
 
Microsoft power apps
Microsoft power appsMicrosoft power apps
Microsoft power apps
 
Agile Integration with APIs and Containers Workshop
Agile Integration with APIs and Containers Workshop Agile Integration with APIs and Containers Workshop
Agile Integration with APIs and Containers Workshop
 
The Event Mesh: real-time, event-driven, responsive APIs and beyond
The Event Mesh: real-time, event-driven, responsive APIs and beyondThe Event Mesh: real-time, event-driven, responsive APIs and beyond
The Event Mesh: real-time, event-driven, responsive APIs and beyond
 
Intro to the Office 365 Admin Center
Intro to the Office 365 Admin CenterIntro to the Office 365 Admin Center
Intro to the Office 365 Admin Center
 
Being more secure using Microsoft 365 Business
Being more secure using Microsoft 365 BusinessBeing more secure using Microsoft 365 Business
Being more secure using Microsoft 365 Business
 
Microsoft power virtual agents
Microsoft power virtual agentsMicrosoft power virtual agents
Microsoft power virtual agents
 
Orchestrator - Practical Approach to host UiPath Orchestrator
Orchestrator - Practical Approach to host UiPath OrchestratorOrchestrator - Practical Approach to host UiPath Orchestrator
Orchestrator - Practical Approach to host UiPath Orchestrator
 
20201107 Putting the DEV in Citizen DEVeloper with the Microsoft Power Platform
20201107 Putting the DEV in Citizen DEVeloper with the Microsoft Power Platform20201107 Putting the DEV in Citizen DEVeloper with the Microsoft Power Platform
20201107 Putting the DEV in Citizen DEVeloper with the Microsoft Power Platform
 
DeltaV Electronic Marshalling
DeltaV Electronic MarshallingDeltaV Electronic Marshalling
DeltaV Electronic Marshalling
 

Similar to Episode iv a new hope

From idea to the field - Simplify Your IoT project (Acal BFi Nordic & Sierra ...
From idea to the field - Simplify Your IoT project (Acal BFi Nordic & Sierra ...From idea to the field - Simplify Your IoT project (Acal BFi Nordic & Sierra ...
From idea to the field - Simplify Your IoT project (Acal BFi Nordic & Sierra ...Hans Andersson
 
Webinar: Desenvolvendo Projetos com soluções Wi-Fi e Bluetooth da Infineon
Webinar: Desenvolvendo Projetos com soluções Wi-Fi e Bluetooth da InfineonWebinar: Desenvolvendo Projetos com soluções Wi-Fi e Bluetooth da Infineon
Webinar: Desenvolvendo Projetos com soluções Wi-Fi e Bluetooth da InfineonEmbarcados
 
Catching the Internet of Things (IoT) Wave
Catching the Internet of Things (IoT) WaveCatching the Internet of Things (IoT) Wave
Catching the Internet of Things (IoT) WaveChuck Petras
 
Industrial transformation-simplified-with-mqtt-and-sparkplug
Industrial transformation-simplified-with-mqtt-and-sparkplugIndustrial transformation-simplified-with-mqtt-and-sparkplug
Industrial transformation-simplified-with-mqtt-and-sparkplugHugoMller5
 
HPC the new normal: from HPC to HPEC
HPC the new normal: from HPC to HPECHPC the new normal: from HPC to HPEC
HPC the new normal: from HPC to HPECRoberto Siagri
 
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...confluent
 
Track 4 session 6 - st dev con 2016 - samsung artik
Track 4   session 6 - st dev con 2016 - samsung artikTrack 4   session 6 - st dev con 2016 - samsung artik
Track 4 session 6 - st dev con 2016 - samsung artikST_World
 
IoT and the Role of Platforms
IoT and the Role of PlatformsIoT and the Role of Platforms
IoT and the Role of PlatformsTiE Bangalore
 
IBM Bluemix Paris Meetup #21-20170131 Meetup @Ingima - MangOH to AirVantage t...
IBM Bluemix Paris Meetup #21-20170131 Meetup @Ingima - MangOH to AirVantage t...IBM Bluemix Paris Meetup #21-20170131 Meetup @Ingima - MangOH to AirVantage t...
IBM Bluemix Paris Meetup #21-20170131 Meetup @Ingima - MangOH to AirVantage t...IBM France Lab
 
OPC UA: Ready for realtime
OPC UA: Ready for realtimeOPC UA: Ready for realtime
OPC UA: Ready for realtimeMiodrag Veselic
 
IIB Manufacturing Pack v1001
IIB Manufacturing Pack v1001IIB Manufacturing Pack v1001
IIB Manufacturing Pack v1001Dominic Storey
 
The Role of a SIP Softswitch in the Enterprise
The Role of a SIP Softswitch in the EnterpriseThe Role of a SIP Softswitch in the Enterprise
The Role of a SIP Softswitch in the EnterpriseAlok Vasudeva
 
OPC UA Inside Out Part 5 - Cloud Connectivity
OPC UA Inside Out Part 5 - Cloud ConnectivityOPC UA Inside Out Part 5 - Cloud Connectivity
OPC UA Inside Out Part 5 - Cloud ConnectivitySadatulla Zishan
 
Open platform communication
Open platform communicationOpen platform communication
Open platform communicationRasika Joshi
 

Similar to Episode iv a new hope (20)

From idea to the field - Simplify Your IoT project (Acal BFi Nordic & Sierra ...
From idea to the field - Simplify Your IoT project (Acal BFi Nordic & Sierra ...From idea to the field - Simplify Your IoT project (Acal BFi Nordic & Sierra ...
From idea to the field - Simplify Your IoT project (Acal BFi Nordic & Sierra ...
 
Webinar: Desenvolvendo Projetos com soluções Wi-Fi e Bluetooth da Infineon
Webinar: Desenvolvendo Projetos com soluções Wi-Fi e Bluetooth da InfineonWebinar: Desenvolvendo Projetos com soluções Wi-Fi e Bluetooth da Infineon
Webinar: Desenvolvendo Projetos com soluções Wi-Fi e Bluetooth da Infineon
 
Catching the Internet of Things (IoT) Wave
Catching the Internet of Things (IoT) WaveCatching the Internet of Things (IoT) Wave
Catching the Internet of Things (IoT) Wave
 
Industrial transformation-simplified-with-mqtt-and-sparkplug
Industrial transformation-simplified-with-mqtt-and-sparkplugIndustrial transformation-simplified-with-mqtt-and-sparkplug
Industrial transformation-simplified-with-mqtt-and-sparkplug
 
987650-6032
987650-6032987650-6032
987650-6032
 
HPC the new normal: from HPC to HPEC
HPC the new normal: from HPC to HPECHPC the new normal: from HPC to HPEC
HPC the new normal: from HPC to HPEC
 
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
 
Track 4 session 6 - st dev con 2016 - samsung artik
Track 4   session 6 - st dev con 2016 - samsung artikTrack 4   session 6 - st dev con 2016 - samsung artik
Track 4 session 6 - st dev con 2016 - samsung artik
 
IoT and the Role of Platforms
IoT and the Role of PlatformsIoT and the Role of Platforms
IoT and the Role of Platforms
 
IBM Bluemix Paris Meetup #21-20170131 Meetup @Ingima - MangOH to AirVantage t...
IBM Bluemix Paris Meetup #21-20170131 Meetup @Ingima - MangOH to AirVantage t...IBM Bluemix Paris Meetup #21-20170131 Meetup @Ingima - MangOH to AirVantage t...
IBM Bluemix Paris Meetup #21-20170131 Meetup @Ingima - MangOH to AirVantage t...
 
OPC UA: Ready for realtime
OPC UA: Ready for realtimeOPC UA: Ready for realtime
OPC UA: Ready for realtime
 
OPC -Connectivity using Java
OPC -Connectivity using JavaOPC -Connectivity using Java
OPC -Connectivity using Java
 
Fundamentals of ether netip i iot network technology
Fundamentals of ether netip i iot network technologyFundamentals of ether netip i iot network technology
Fundamentals of ether netip i iot network technology
 
Sa*ple
Sa*pleSa*ple
Sa*ple
 
IIB Manufacturing Pack v1001
IIB Manufacturing Pack v1001IIB Manufacturing Pack v1001
IIB Manufacturing Pack v1001
 
The Role of a SIP Softswitch in the Enterprise
The Role of a SIP Softswitch in the EnterpriseThe Role of a SIP Softswitch in the Enterprise
The Role of a SIP Softswitch in the Enterprise
 
OPC UA Inside Out Part 5 - Cloud Connectivity
OPC UA Inside Out Part 5 - Cloud ConnectivityOPC UA Inside Out Part 5 - Cloud Connectivity
OPC UA Inside Out Part 5 - Cloud Connectivity
 
Resume_Pratik
Resume_PratikResume_Pratik
Resume_Pratik
 
11. PI_Ford_Dunton_IOLINK_Safety.pdf
11. PI_Ford_Dunton_IOLINK_Safety.pdf11. PI_Ford_Dunton_IOLINK_Safety.pdf
11. PI_Ford_Dunton_IOLINK_Safety.pdf
 
Open platform communication
Open platform communicationOpen platform communication
Open platform communication
 

Recently uploaded

Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedDelhi Call girls
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfayushiqss
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 

Recently uploaded (20)

Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 

Episode iv a new hope

  • 1. IIOT WARS Christofer Dutz < > FIR I4.0 Demo Factory (29.10.2019) christofer.dutz@codecentric.de 1
  • 2. WHO AM I?WHO AM I? Christofer Dutz Senior IT Consultant codecentric AG Open-Source Enthusiast Committer of 10 Apache projects Member of the Apache Foundation VP of Apache PLC4X Son of an electroengineer Twitter: @ChristoferDutz 2 . 1
  • 3. NO §13 CRAPNO §13 CRAP 2 . 2
  • 4. THE CURRENT SITUATION IN THETHE CURRENT SITUATION IN THE INDUSTRYINDUSTRY Industry 4.0 is everywhere The industry is adopting more and more: IoT technology Cloud technology Big Data technology Machine learning and AI technology 3
  • 5. THE FUTURE SITUATION IN THETHE FUTURE SITUATION IN THE INDUSTRYINDUSTRY 2017 2018 2019 2020 2021 0 50 100 150 200 250 300 350 400 450 500 550 600 650 700 IoT Market in Billions of $ 4 . 1
  • 6. ALL CHARTS SORT OF LOOK THE SAMEALL CHARTS SORT OF LOOK THE SAME 4 . 2
  • 7. BUTBUT These topics are completely new to the industry There is usually no know-how in the company Customers turn to their established vendors These try to close the gap 5
  • 8. BUUTBUUT These topics are completely new to the vendors There is usually no know-how at the vendor Vendors start buying companies that have the necessary know-how Additionally they start hiring talented people to close the gap 6
  • 9. BUUUTBUUUT Unfortunately they’re doing it the same way they have been doing it for the last 20 years Closed-Source Restrictive-Licenses Insanely expensive Restricted connectivity 7
  • 11. BUUUUTBUUUUT These topics are what we’ve been doing for almost a decade Modern IT has plenty of great tools to use Modern IT has plenty of skilled people to take on the fight All the industry needs to do, is start asking us instead 9
  • 12. MOST SIGNIFICANT BARRIERSMOST SIGNIFICANT BARRIERS Source: Bain IoT Customer Survey 2018 Security IT/OT Integration Unclear ROI Technical Expertise Interoperability Data Portability Vendor Risk Transition Risk Legal/regulatory issues Network constraints Vendor lock-in 0 5 10 15 20 25 30 35 40 45 % 10
  • 13. BARRIER: CONNECTIVITYBARRIER: CONNECTIVITY Source: Bain IoT Customer Survey 2018 Security IT/OT Integration Unclear ROI Technical Expertise Interoperability Data Portability Vendor Risk Transition Risk Legal/regulatory issues Network constraints Vendor lock-in 0 5 10 15 20 25 30 35 40 45 % 11
  • 14. BARRIER: CONNECTIVITYBARRIER: CONNECTIVITY Most major vendors of industrial hardware defined their own proprietary protocols for communication These protocols are usually always incompatible with each other Some standards (Modbus, EtherNet/IP, OPC) PLCs usually provide multiple protocols but full functionality usually only via the proprietary one No universal way to communicate with (open-source) SW New protocol: OPC-UA aiming at becoming the standard 12
  • 16. OPC-UAOPC-UA OPC-UA is a standard for inter-machine communication Defined by OPC Foundation It’s members come from almost all major Vendors Been working on it for about 10 Years Defines how to transport machine data But also the semantics of this data 14
  • 17. OPC-UA IS (CURRENTLY) NOT AOPC-UA IS (CURRENTLY) NOT A SOLUTIONSOLUTION OPC-UA support by adding application server to the PLC Performance is currently less than ideal In my opinion highly over-engineered for most current use- cases Usable version released last year 15
  • 18. OPC-UA IS (CURRENTLY) NOT AOPC-UA IS (CURRENTLY) NOT A SOLUTIONSOLUTION Figure 1. fromHiding among enemies http://starwars.fandom.com 16
  • 19. EXAMPLE NUMBERSEXAMPLE NUMBERS In field tests we were able to collect from a single PLC 200 data points Every 2 seconds PLC was overloaded if collecting more or doing it faster Test-Server was overloaded when processing more than 20 PLCs Expensive 17
  • 21. APACHE PLC4XAPACHE PLC4X — Apache PLC4X Project Statement PLC4X is a set of libraries for communicating with industrial programmable logic controllers (PLCs) using a variety of protocols but with a shared API. 19
  • 23. 20
  • 24. APACHE PLC4XAPACHE PLC4X Applications only use API module Integration modules available for multiple frameworks Generally available for Java Working on C++, C#, Python Scala, C, JavaScript, … will follow Ability to write software (almost) independent of the actual PLC used 21
  • 25. PLC4X SUPPORTED OPERATIONSPLC4X SUPPORTED OPERATIONS Read Write Publish-Subscribe Call Functions Browse Resources    22
  • 26. PLC4X SUPPORTED PROTOCOLSPLC4X SUPPORTED PROTOCOLS Siemens S7 (Step7) Beckhoff ADS Modbus (TCP/Serial) EtherNet/IP OPC-UA Allen-Bradley AB-ETH Allen-Bradley DF1 BacNet Emerson DeltaV KnxNet/IP Siemens S7 (TIA) ProfiNet …             23
  • 27. MOST SIGNIFICANT BARRIERSMOST SIGNIFICANT BARRIERS Security IT/OT Integration Unclear ROI Technical Expertise Interoperability Data Portability Vendor Risk Transition Risk Legal/regulatory issues Network constraints Vendor lock-in 0 5 10 15 20 25 30 35 40 45 % 24
  • 28. INTEGRATION TO OTHER PROJECTSINTEGRATION TO OTHER PROJECTS Apache Calcite Apache Camel Apache Edgent Apache Kafka Connect Apache NiFi Logstash StreamPipes Apache MyNewt Eclipse Kura EdgeX Foundry OpenHAB            25
  • 30. CODE EXAMPLECODE EXAMPLE try (PlcConnection plcConnection = new PlcDriverManager().getConnection("s7://10.10.64.20/1/1")) { Optional<PlcReadRequest.Builder> builderOptional = plcConnection.readRequestBuilder(); if (!builderOptional.isPresent()) { logger.info("This connection doesn't support reading."); } else { PlcReadRequest.Builder builder = builderOptional.get(); PlcReadRequest readRequest = builder .addItem("somefield", "%Q0.0:BOOL") .addItem("anotherfield", "%Q0:BYTE") .build(); CompletableFuture<? extends PlcReadResponse> responseFuture = readRequest.execute(); 27
  • 31. MOST SIGNIFICANT BARRIERSMOST SIGNIFICANT BARRIERS Security IT/OT Integration Unclear ROI Technical Expertise Interoperability Data Portability Vendor Risk Transition Risk Legal/regulatory issues Network constraints Vendor lock-in 0 5 10 15 20 25 30 35 40 45 % 28
  • 32. BARRIER: SECURITYBARRIER: SECURITY Aspect the industry is most parnoid about Industrial Espionage Compliance Rules Regulations Very difficult to any data-science technology "Solution": Validated Software Reading still has impact on the PLC performance 29
  • 33. TYPICAL DATA SCIENCE SETUPTYPICAL DATA SCIENCE SETUP 30
  • 34. SECURITY BY DESIGN: PASSIVE MODESECURITY BY DESIGN: PASSIVE MODE DRIVERSDRIVERS Drivers that only passively monitor network traffic Capture Request & Response Know what Value X on Device Y is at a given time Absolutely no impact on the PLC device Extremely cheap 31
  • 35. IF YOU DON’T TRUST YOUR SWITCHIF YOU DON’T TRUST YOUR SWITCH PROVIDERPROVIDER 32
  • 36. 100% SECURE PASSIVE MODE SETUP100% SECURE PASSIVE MODE SETUP 33
  • 37. MOST SIGNIFICANT BARRIERSMOST SIGNIFICANT BARRIERS Security IT/OT Integration Unclear ROI Technical Expertise Interoperability Data Portability Vendor Risk Transition Risk Legal/regulatory issues Network constraints Vendor lock-in 0 5 10 15 20 25 30 35 40 45 % 34
  • 38. SO WHAT’S NEW?SO WHAT’S NEW? We graduated to a TLP of the Apache Software Foundation on 23rd April 2019 Driver specification in machine readable format Generates at least model, parser and serializer for any language In order to support new language, all you need to provide is: Language Template In oder to support new protocol, all you need to provide is: Protocol Module Generated server (Plc Mock) 35
  • 39. SO WHAT’S NEXT?SO WHAT’S NEXT? 36
  • 40. COMING BACK TO THAT CHART FROMCOMING BACK TO THAT CHART FROM THE STARTTHE START 37
  • 41. 38
  • 42. HOW TO HELPHOW TO HELP Sign up to our mailing-list: Follow us on twitter: Start using PLC4X File bugs: Submit PRs: Join the discussions on our mailing list Spread the word Help up color the last two bars dev@plc4x.apache.org @ApachePLC4X https://issues.apache.org/jira/projects/PLC4X https://github.com/apache/plc4x 39
  • 43. THANKS FOR LISTENINGTHANKS FOR LISTENING That's all folks! ___ / ,-'___'-. / ,' [(_)] './ |_]||[][O]o[][| _ |_____________| _ | [] _______ [] | | [] _______ [] | [| || _ || |] |_|| = [=] ||_| | || = [|] || | | || _ || | | |||| (+) (|| | | ||_____________|| | |_| ___________/ |_| / | | / /___ /___ /___ ####################################################################### 40