Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ditto-dev] Small Example of a digital twin of a Siemens S7 using PLC4X and Ditto
  • From: Julian Feinauer <j.feinauer@xxxxxxxxxxxxxxxxx>
  • Date: Wed, 15 Jan 2020 07:12:38 +0000
  • Accept-language: de-DE, en-US
  • Arc-authentication-results: i=1; 1; spf=pass; dmarc=pass action=none; dkim=pass; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed;; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MZVUkv78GDpDOVTH00kCw3595LOqtaSuhsSe1mV1P/A=; b=g5fx2yKd/r+YNMpNu89bWlfqx0zy7kCpqzOSIC+DuzM7J/3SM8W747nEi7IX+7Rky6/qxkhSVn8KmCTZ8CJpV4/TgifFR5L/DBjsmwuFXTm6LQg0q1BW8STsCuXYUAvqZm/UGZvJNMcA6/9nUPHr0Nl3ZZGVqRGVSmB/KvuKc66pBCoLFBWPKYNZeEqZWOaFCF5bYFnr3CGTO668uByUe4Tov9KURd+qc5yIWf6IVg13aem/fz6xb+exJ9BTDrucYYwYwHJOlSwhUudcSxyJUBELA2PxkD7dl4TzO6lfwSkHh5FPCtUcuciwesjnk/K2Tp40pt0pF/Gt476/R8ni+A==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901;; cv=none; b=ZEbe4oMiCwM0GjNZTXsv/2ikt0lwlpI1rEA4pgpcXvXMVx8l11n+04VMqH7MhGM01KQZ24ETN/kRgfEr51/fckuIJISz92fVUeudZxcaWXJcKSZnzrdtRWr8+dr4kuFJbPl0w7CywQilC7vqgwZpPCQYYQmJG4RgCqTx1V+MSwWkGbYrgZ9DhfbhOBbp8xLcfr2byA9kDB06At541ltel88dbR1Pp01jch1fflYPPoU7DSJxFr6RshLfGz2EBQl27UQcJQNQV/xu6Z528xB7Bai9wlSYVyv4YBlHAn0aBnGPaCOPSUzxU0FdE+sDzeoTtpVeK8p96UnQRS8BQFihAA==
  • Delivered-to: ditto-dev@xxxxxxxxxxx
  • List-archive: <>
  • List-help: <>
  • List-subscribe: <>, <>
  • List-unsubscribe: <>, <>
  • Thread-index: AQHVy3MrCBaOhSNRwkGloya94x/Vbw==
  • Thread-topic: [ditto-dev] Small Example of a digital twin of a Siemens S7 using PLC4X and Ditto
  • User-agent: Microsoft-MacOutlook/

Hi Thomas,


thanks for the feedback.

PLC4X has such an API (its called subscriptions) but not every PLC supports it, thus we in our company we mostly use a tool called the “scraper” which emulates that (we have PLCs in the field which are > 20 years old…).


But we could e.g. add an OPC UA Example (which supports Subscriptions) in the next days.

@Matthias Strljic interested in doing it? 😝


And regarding your other questions:

Yes, of course you can add it and I can prepare a PR for you.

On the other hand I also would like to add it to the “integrations” section for PLC4X but for that I need a Release of ditto-clients, so hurry up : )





Von: <ditto-dev-bounces@xxxxxxxxxxx> im Auftrag von "Jaeckle Thomas (INST/ECS1)" <Thomas.Jaeckle@xxxxxxxx>
Antworten an: ditto developer discussions <ditto-dev@xxxxxxxxxxx>
Datum: Dienstag, 14. Januar 2020 um 19:27
An: ditto developer discussions <ditto-dev@xxxxxxxxxxx>
Betreff: Re: [ditto-dev] Small Example of a digital twin of a Siemens S7 using PLC4X and Ditto


Hi Julian.


That’s awesome, thanks for sharing.

The integration of both PLC4X and Ditto Java client looks straight forward.


Does PLC4X also provide a “noticfication” API style?

So that one does not have to poll each 100ms, but register for changes and directly change the Ditto twin as a result.

I’m not at all familiar with PLC programming, so excuse me if that is a stupid question J


Could we add this example to the “ditto-examples” repo?


That way it would – from a Ditto side – be more prominent and cross-reference to the PLC4X project.

If yes, a PullRequest would be awesome J



Mit freundlichen Grüßen / Best regards

Thomas Jaeckle

Engineering Cloud Services 1 Bosch IoT Things (INST/ECS1)
Bosch.IO GmbH | Ziegelei 7 | 88090 Immenstaad | GERMANY

Sitz: Berlin, Registergericht: Amtsgericht Charlottenburg; HRB 148411 B
Aufsichtsratsvorsitzender: Dr.-Ing. Thorsten Lücke; Geschäftsführung: Dr. Stefan Ferber, Dr. Aleksandar Mitrovic, Yvonne Reckling

From: ditto-dev-bounces@xxxxxxxxxxx <ditto-dev-bounces@xxxxxxxxxxx> On Behalf Of Julian Feinauer
Sent: Dienstag, 14. Januar 2020 18:30
To: ditto-dev@xxxxxxxxxxx
Subject: [ditto-dev] Small Example of a digital twin of a Siemens S7 using PLC4X and Ditto


Hi folks,


I cross post this on both list, as I think these two projects are a perfect fit together.

I made a small example outlining how one could create a digital twin for a (real) PLC using Eclipse Ditto and Apache PLC4X.

Please feel free to ask questions or discuss your ideaas around that : )


Link (Twitter with Proof images from a REAL Simens S7):

Github Repo: (Apache Licensed, sorry Eclipse people, my heart simply belongs to Apache <3) : )




Back to the top