MATLAB and Simulink for IoT Applications

MATLAB® and Simulink® can help you design, prototype, and deploy IoT applications such as predictive maintenance, operations optimization, supervisory control, and more.

  • Access and preprocess streaming and archived data using built-in interfaces to cloud storage, relational and nonrelational databases, and protocols such as REST, MQTT, and OPC UA.
  • Design custom IoT analytics and algorithms quickly from thousands of proven, prebuilt functions for topics such as data cleaning, machine and deep learning, computer vision, controls, and optimization. Use existing functions, customize them, or create your own.
  • Develop data-driven and physics-based models to understand, control, and optimize your connected things and create digital twins.
  • Deploy MATLAB analytics and Simulink models to your choice of asset, edge, or cloud by automatically generating C/C++, HDL, PLC, GPU, .NET, or Java® based software components.
  • Use ThingSpeak™, a ready-to-run IoT platform with MATLAB analytics, to prototype and operationalize smaller-scale systems.

“We record frequencies on the grid, inject them into our Simulink model, and compare the simulation results to the actual system response. With Simulink we can continually calibrate and improve our model, and ultimately improve the accuracy of our reserve estimates.”

Heidi Heath, Transpower

Access Streaming and Archived Data

Use MATLAB with big data to develop your algorithms. MATLAB supports time-stamped and unstructured data from many sources including cloud storage services (e.g., AWS S3, Azure Blob), OPC UA, RESTful web services, and databases. Work with live data from connected assets by integrating MATLAB with message brokers like MQTT and streaming protocols such as Kafka.  

You can easily perform data munging and cleaning using built-in features to replace missing or erroneous values, smooth data, and align data sets that use different timestamp formats.

Learn More: 

Develop Analytics, Control, and Optimization Algorithms

MATLAB provides thousands of functions for IoT application development, including for predictive maintenance, signal and image processing, feedback and supervisory control, optimization, and machine learning.

Develop algorithms much faster with MATLAB than with traditional programming languages by using existing functions, customizing them, or creating your own. The same algorithm can operate across many common IoT scenarios, including streaming or big data.

Learn More: 

Build Data-Driven and Physics-Based Digital Twins

With MATLAB, you can define a model using data from your industrial smart machine. 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. These digital twins can be used for prediction, what-if simulations, anomaly detection, fault isolation, and more.

Learn More: 

Automate Deployment to the Edge, Asset, or Cloud

MATLAB programs or Simulink models can be deployed on the edge, asset, or cloud. For desktop, server, on-premise, or cloud applications, you can generate run-time executables, components, or containers. For embedded devices, you can automatically generate C/C++, Verilog/VHDL, or GPU code. Explore and test where the algorithms of your IoT system should run – whether it is a time-critical control loop that should run at the asset or edge, or a big data analytic that should run at an on-premises data center or the cloud.

Learn More: 

ThingSpeak: A MATLAB Enabled IoT Platform

ThingSpeak is an easy-to-use cloud-based IoT platform for prototyping and small-scale productions applications.   Send data to ThingSpeak from your devices using MQTT or REST APIs. View instant visualizations of your live data from any Internet-connected web browser. With ThingSpeak, you can schedule MATLAB code to run live analyses and visualizations as new data arrives. Act on your data by creating alerts and triggering reactions.

Learn More: