Shades of Digital Twinning
The Device Shell
The Device Twin
The device shell provides a means of
managing the life-cycle of the code running
on an edge device. With it, one can install
new software and upgrade existing
software, as well as control what software is
running at any given time. One can also
monitor the current state of the system and
know what versions of each component are
running on the system. Version compatibility
checking and admission control for new
software are essential parts of these
services. Other services, such as system
logging, watchdog management and
intrusion detection, may also be provided.
Secure system identity is also a key part of
the device shell. Remote administration can
be provided over a remote device shell.
The device twin provides device visual and
physical simulation. Whether visual or
physical, a twin is a model and thus an
approximation of the physical device. By its
very nature, it is incomplete, but it should be
fully accurate for the attribute under
observation. For instance, a visualization
model need not have all the CAD
information used to build the model. In fact,
it is desirable to have a simplified version
thereof so the visual simulation can keep
pace with the actual device. Any information
about aspects of the model that are too
small to see at the rendering resolution are
irrelevant for the visual simulation and
should rather be left out. A different model
might be used for modeling the effect of
wear and tear on parts of the device. Adding
visual information would slow down the
simulation with no benefit. For this reason,
several twins may be used for a single
physical device depending on what aspect is
important for that simulation.
The Device Proxy
The device proxy bridges the gap between
the device shell and its device twins. There
are two aspects to this: a stand-in for a non-
connected device and a latest device state
keeper, sometimes known as a device
shadow, for covering the time when a
connected device is not reachable—either
because it is off or because of sporadic
connectivity. Additionally, it can enable
processes such as scheduling updates, and
sending out update code modules.
It would be useful to have methods for
distilling various models from the original
CAD data for a device, or rather a machine.
Simulation using the full CAD data, where
possible, would run quite slowly.
Particularly, simulations that look at the
interaction of machines are vulnerable to a
problem of too much data. Common data
exchange formats would be helpful, as well.
- 90 -
November 2019