A digital twin is an up-to-date representation, a model, of an actual physical asset in operation. It reflects the current asset condition and includes relevant historical data about the asset. Digital twins can be used to evaluate the current condition of the asset, and more importantly, predict future behavior, refine the control, or optimize operation.
A digital twin can be a model of a component, a system of components, or a system of systems - such as pumps, engines, power plants, manufacturing lines, or a fleet of vehicles. Digital twin models can include physics-based approaches or statistical approaches. The models reflect the operating asset’s current environment, age, and configuration, which typically involves direct streaming of asset data into tuning algorithms.
Creating and using digital twins increases intelligence as part of the operational system. Having an up-to-date representation of real operating assets lets you control or optimize the assets and the wider system. The representation not only captures the current state, but often the operating history of the asset. Digital twins enable you to optimize, improve efficiencies, automate, and evaluate future performance. You can use the models for other purposes such as virtual commissioning or to influence next-generation designs.
Digital twin models are commonly used in several areas:
The IoT application drives what you need to model as part of a digital twin. A digital twin model will include the required components, behaviors, and dynamics of the IoT asset.
Modeling methods generally can be grouped into two types – first principles or physics-based methods (e.g., mechanical modeling) and data-driven methods (e.g., deep learning). A digital twin can also be a composite of various modeled behaviors and modeling methods and is likely to be elaborated on over time as more uses are identified.
The models must be kept up-to-date and tuned to the assets that are in operation, which typically involves direct streaming of data from the assets into algorithms that tune the digital twin. This allows you to consider aspects like asset environment, age, and configuration.
Once the digital twin is available and up-to-date, you can use it for any number of ways to predict future behavior, refine the control, or optimize operation of the asset. Some examples include simulating sensors that are not present on the real asset, simulating future scenarios to inform current and future operations, or using the digital twin to extract current operational state by sending in current real inputs.
With MATLAB, you can define a model using data from your connected asset. You can also use Simulink to create a physics-based model using multi-domain modeling tools. Both data-driven and physics-based models can be tuned with data from the operating asset to act as a digital twin. You can use these digital twins for prediction, what-if simulations, anomaly detection, fault isolation, and more.
Data-driven methods available with MATLAB include machine learning, deep learning, neural networks, and system identification. You typically use a set of data to train or extract a model, and a separate set of validation data to qualify or test the models. With MATLAB apps, you can explore these modeling methods to find the most accurate method for your application.
Physics-based modeling with Simulink involves designing the system from first principles. Models can include mechanical, hydraulic, and electrical components. Models can also come from upstream design work that uses Model-Based Design with Simulink.
Through optimization methods, you can tune digital twin models and keep them up to date using standard protocols like MQTT for incoming streams of data.
You can implement your digital twin wherever it makes sense for your application – at edge computing nodes, operational technology infrastructure, or IT systems. Integrate on commercially available systems such as Azure IoT Hub or AWS IoT, or implement custom integration as needed through APIs and other common integration methods such as shared libraries and RESTFul calls.