Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Digitizing your factory the open source way

Talk about how to use Open-Source and especially Apache PLC4X to access industry machinery data and to use open-source to build the next generation of industrial software

  • Be the first to comment

Digitizing your factory the open source way

  1. 1. DIGITIZING YOUR FACTORY THE OPENDIGITIZING YOUR FACTORY THE OPEN SOURCE WAYSOURCE WAY 05.02.2020: OOP 2020 Christofer Dutz @ChristoferDutz codecentric AG 1
  2. 2. AGENDAAGENDA Current Situation in the (production) Industry Introduction Apache PLC4X Open software can outperform an expensive proprietary product by far Community development and commercial support work together nicely Innovation cycles of weeks instead of years can help you get the most out of your invest What is to come? 2
  3. 3. THE CURRENT SITUATION IN THETHE CURRENT SITUATION IN THE INDUSTRYINDUSTRY
  4. 4. 3
  5. 5. 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 4
  6. 6. 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 $ 5 . 1
  7. 7. ALL CHARTS SORT OF LOOK THE SAMEALL CHARTS SORT OF LOOK THE SAME 5 . 2
  8. 8. 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 6
  9. 9. 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 7
  10. 10. 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 8
  11. 11. BUUUUTBUUUUT 9
  12. 12. 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 10
  13. 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. 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 No universal way to communicate with (open-source) SW New protocol: OPC-UA aiming at becoming the standard 12
  15. 15. OPC-UAOPC-UA OPC-UA is a standard for inter-machine communication Defined by OPC Foundation It’s members come from almost all major automation vendors Been working on it for about 10 Years Defines how to transport machine data But also the semantics of this data 13
  16. 16. 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 end of 2018 Availability probably somewhere around 2% - 7% 14
  17. 17. OTHER ALTERNATIVE: MQTTOTHER ALTERNATIVE: MQTT A number of new PLCs support MQTT directly Been available for the last 1-2 years Gut feeling says, number of MQTT enabled devices is less than OPC-UA Same Problem as with OPC-UA → It will take years for reasonable coverage 15
  18. 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. 16
  19. 19. 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 17
  20. 20. PLC4X SUPPORTED OPERATIONSPLC4X SUPPORTED OPERATIONS Read Write Publish-Subscribe Call Functions Browse Resources    18
  21. 21. 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 …             19
  22. 22. INTEGRATION TO OTHER PROJECTSINTEGRATION TO OTHER PROJECTS Apache Calcite Apache Camel Apache Edgent Apache Kafka Connect Apache NiFi Apache StreamPipes Logstash Apache IoTDB Eclipse Ditto Apache MyNewt Eclipse Kura EdgeX Foundry OpenHAB …              20
  23. 23. OPEN SOFTWARE CAN OUTPERFORMOPEN SOFTWARE CAN OUTPERFORM AN EXPENSIVE PROPRIETARYAN EXPENSIVE PROPRIETARY PRODUCT BY FARPRODUCT BY FAR 21
  24. 24. EXAMPLE 1: MAKING TBS OF MACHINEEXAMPLE 1: MAKING TBS OF MACHINE DATA AVAILABLE IN KAFKADATA AVAILABLE IN KAFKA
  25. 25. 22
  26. 26. EXAMPLE 1: MAKING TBS OF MACHINEEXAMPLE 1: MAKING TBS OF MACHINE DATA AVAILABLE IN KAFKADATA AVAILABLE IN KAFKA Challenge: 2600 data points Every 2 seconds On 26000 PLCs From 13 factories from all over the world Making that data available in Apache Kafka 23
  27. 27. EXAMPLE 1: MAKING TBS OF MACHINEEXAMPLE 1: MAKING TBS OF MACHINE DATA AVAILABLE IN KAFKADATA AVAILABLE IN KAFKA 24
  28. 28. EXAMPLE 1: MAKING TBS OF MACHINEEXAMPLE 1: MAKING TBS OF MACHINE DATA AVAILABLE IN KAFKADATA AVAILABLE IN KAFKA Open-Source Solution: Apache Kafka Connect Apache PLC4X Kafka Connect Source Apache Kafka 2600 data points Every 2 seconds (200ms would be possible) 600 PLCs per Kafka Connect Node Additional Kafka Cluster 25
  29. 29. EXAMPLE 2: SECURE PRODUCTIONEXAMPLE 2: SECURE PRODUCTION DATA AVAILABILITYDATA AVAILABILITY
  30. 30. 26
  31. 31. EXAMPLE 2: SECURE PRODUCTIONEXAMPLE 2: SECURE PRODUCTION DATA AVAILABILITYDATA AVAILABILITY Large pharmaceutical company wants to optimize production using data science Data scientists need production data Compliance rules and regulations make it difficult to get the data 27
  32. 32. EXAMPLE 2: SECURE PRODUCTIONEXAMPLE 2: SECURE PRODUCTION DATA AVAILABILITYDATA AVAILABILITY Industry solution: OSIsoft PI Validated Software for making data available outside 28
  33. 33. EXAMPLE 2: SECURE PRODUCTIONEXAMPLE 2: SECURE PRODUCTION DATA AVAILABILITYDATA AVAILABILITY Open-Source solution: Raspberry PI Apache PLC4X passive mode driver Data-Diode 29
  34. 34. EXAMPLE 2: SECURE PRODUCTIONEXAMPLE 2: SECURE PRODUCTION DATA AVAILABILITYDATA AVAILABILITY 30
  35. 35. COMMERCIAL SUPPORTCOMMERCIAL SUPPORT In general with Open-Source: No right for instant support But usually around open-source projects companies offer commercial support offerings Ideally supporting companies also involved in the community get patches, fixes and improvements into the project Commercial industry support usually just expensive Guaranteed reaction times usually just for creating an issue, not for delivering a fix Hot-Fixes cost (a lot!!!) extra 31
  36. 36. INNOVATION CYCLES OF YEARS IN THEINNOVATION CYCLES OF YEARS IN THE INDUSTRYINDUSTRY Industrial Products: usually release cycles measured in years Available solutions usually represent "state of the art" at inception-time Often already deprecated on market entry Reaction-Time on bugs and issues usually also measured in months or even years 32
  37. 37. INNOVATION CYCLES OF DAYS ANDINNOVATION CYCLES OF DAYS AND WEEKS IN OPEN-SOURCEWEEKS IN OPEN-SOURCE Open-Source projects usually have release cycles of weeks if not even days Foundations even demand fast reaction on security issues New ideas and concepts can be adopted within weeks Short cycles allow fast adoption to new needs and situations Extremely fast feedback loops 33
  38. 38. WHAT IS TO COME (APACHE PLC4X)?WHAT IS TO COME (APACHE PLC4X)? C-type drivers for running Apache PLC4X on: Embedded devices Integration into Apache MyNewt Apache MiNiFi (Edge Gateways) EdgeX Foundry 34
  39. 39. EMBEDDED PLC4XEMBEDDED PLC4X
  40. 40. 35
  41. 41. THAT’S ALL FOLKS (… FOR NOW)THAT’S ALL FOLKS (… FOR NOW) Please join our mailing list: Apache IoT mailing list Twitter @ApachePLC4X dev@plc4x.apache.org iot@apache.org 36

×