Industrial Manufacturing
Model new manufacturing processes prior to implementation or existing ones in order to diagnose problems. Use Mathematica for analyses including pre- and post-processing of models, simulations, and results.
OPC UA Tank System
This example will demonstrate the usage of OPC UA communication in a System Modeler model over a simple tank system. OPC UA is a secure, robust and scalable communications protocol used in many different industries over the world. See the OPC Foundation website for more information.
To run this example, you'll need
The latest versions of System Modeler and Mathematica.
Please make a selection:
Get afree trial Continue
with download
Why Is OPC UA Useful Together with System Modeler?
To be able to integrate System Modeler’s modeling capabilities with real-world objects in real time is very powerful. Using OPC UA, safe communication between hardware, such as a Raspberry Pi or a PLC, and simulation models becomes possible.
Communication Using the OPC UA Library
The example model consists of a simple tank system that can communicate through the OPC UA protocol. The measurement of the liquid level of the first tank is written to a real-valued node on the OPC UA server. This value is then read by another component, to be used as a reference for the liquid level of the second tank.
Integrating OPC UA communication in System Modeler models lets industries using OPC UA connect signals directly into a model with live data. That opens up many possibilities when it comes to control theory, signal processing and much more.
How Does It Work?
The System Modeler components defined in the OPC UA Modelica library are using external C code to call functions to an implementation of the OPC UA Library in C code. Through the OPC UA components in System Modeler, values can be both written and read to nodes on an OPC UA server. Since OPC UA is multiplatform, compared to OPC Classic, the OPC UA server can also run on small chips or on a Raspberry Pi, for example.
External C Code
Connecting System Modeler to Hardware
It is of course also possible to replace the models of the tanks with values coming from sensors of real liquid tanks, or to just connect some hardware to control the reference signals to the tanks in the model. We are going to show you how to do the latter. To get these signals into the model, you could either use Model Plug, as in this example, or use Mathematica to connect hardware with a running simulation. To be able to run a model like this, you would of course have to have access to an Arduino or something similar.
If you actually had real tanks with liquid and sensors, you could replace the tank models in the model above with only sensor data. In that case, inputs and outputs from the tanks using Arduinos to connect to System Modeler could be used, as well as OPC UA to transfer the sensor data between the tanks. For more use cases, see also how OPC Classic can be used.
Wolfram System Modeler
Try
Buy
System Modeler is available in English
and Japanese
on Windows, macOS & Linux »
Questions? Comments? Contact a Wolfram expert »