AI and machine learning · Free

Industrial Data with Python

The plumbing nobody teaches: values out of PLCs and meters over Modbus and OPC UA from Python, published over MQTT, stored as time series, cleaned and gridded, forecast and scored for anomalies, and wired to a dashboard — every stage built against a simulator on your own laptop, so no plant is needed and nothing you break matters.

12 modules 10h 21m of video English · self-paced

Inside the course

Industrial Data with Python: Syllabus at a glanceIndustrial Data with Python: What you will be able to doIndustrial Data with Python: Tools and credits

From the lessons

  • Data Transfer with Modbus, OPC, and SQL

    Where plant data lives, and where Python fits

    APMonitor.com

  • Software Installation | Modbus Slave | Python | Modscan | VSPD | pymodbus | pymodbusTCP |

    Modbus TCP from Python

    Fusion Automate

  • Read & Write Holding Register Values of Modbus Serial/RTU/RS485 Device from Python using Pymodbus |

    Modbus RTU and serial devices

    Fusion Automate

  • How to Create Simple OPCUA Server in Python with Variable Simulation | OPCUA | IoT | IIoT |

    OPC UA from Python

    Fusion Automate

  • Create a Secure OPCUA Server in Python with Simulated Variables and Username/Password Authentication

    OPC UA security, and a Pi as a server

    Fusion Automate

  • What is MQTT Protocol ? How it works ? | 2022

    MQTT: publish once, subscribe anywhere

    IT and Automation Academy

Lesson frames belong to the creators named in the Credits below and are shown from YouTube.

What you will learn

Read Modbus TCP and RTU devices and OPC UA servers from Python and run simulators of both; subscribe rather than poll; publish on well-designed MQTT topics with quality and timestamps; store in SQLite or InfluxDB with Grafana; clean and grid live process data honestly; forecast day-ahead load and beat the seasonal-naive baseline; detect anomaly episodes on process tags; and assemble the whole pipeline with Node-RED and a model served over HTTP, run as services with security and documentation.

  • Read holding registers over Modbus TCP and RTU from Python and decode floats, offsets and scaling correctly
  • Run an OPC UA server and client in Python, subscribe to changes and log value, quality and source timestamp
  • Design MQTT topics and payloads and bridge OPC UA to a broker with retain and last will
  • Store time series in SQLite or InfluxDB, downsample honestly and dashboard with Grafana
  • Clean live process data: quality masks, grids, frozen sensors, coverage, joins by time
  • Forecast day-ahead load against a seasonal-naive baseline and detect anomaly episodes on process tags

For you

Taking Industrial Data with Python from the United States

The course project · about 8 hours

A simulated PLC to a dashboard: OPC UA → MQTT → store → clean → anomaly episodes

Run an OPC UA server in Python that simulates a compressor with an injected fault, subscribe to it, publish over MQTT, log to SQLite, clean and grid the data, detect anomaly episodes with a baseline and persistence, publish the episodes back, and show it all on a Node-RED or Grafana dashboard — the whole pipeline on one laptop.

The course project · about 5 hours

Day-ahead compressor-house load forecast that beats seasonal naive

A year of 15-minute kW data. Clean it, build hourly lag and calendar features that respect a 24-hour horizon, train gradient boosting, and compare it honestly with the seasonal-naive baseline on the last three months — MAE in kW, residual plot, and a recommendation for the day-ahead power purchase.

Course content

12 modules · 34 lessons · 10h 21m

In order, at whatever pace suits you. Each module ends with a practice task that builds on the last.

  1. 01Where plant data lives, and where Python fits23m
  2. 02Modbus TCP from Python53m
  3. 03Modbus RTU and serial devices33m
  4. 04OPC UA from Python1h 4m
  5. 05OPC UA security, and a Pi as a server48m
  6. 06MQTT: publish once, subscribe anywhere21m
  7. 07Storing time series1h 50m
  8. 08Cleaning and resampling process data58m

Requirements

Who it is for
Intermediate. Needs the Python for AI course; the Machine Learning course helps for the forecasting and anomaly modules. Any PLC or instrumentation background makes the protocols familiar.
Software
Python on your own laptop (not only Colab): pymodbus, minimalmodbus, asyncua, paho-mqtt, Mosquitto, SQLite, optionally InfluxDB, Grafana and Node-RED. All free. What to download, and how
Hardware
None. A USB–RS485 adapter and any Modbus meter make the serial module real; a Raspberry Pi makes the OPC UA server a device.

Software you need

What to download, where from, what it costs and how to install it. Every link goes to the maker's own site, never a mirror.

Run Python on your own laptop, not only in Colab: the course talks to real ports. minimalmodbus, asyncua and paho-mqtt install with pip the same way as pymodbus. SQLite comes with Python.

Required

  1. 01

    Python

    Python Software Foundation

    Free
    Runs on
    Windows (not Windows 7 or earlier), macOS and Linux. Windows builds for x64, 32-bit and Arm64.
    Account
    None needed

    Python is free, open source software. You can use it for learning and for commercial work at no cost.

    Alternatives

  2. 02

    PyModbus

    pymodbus-dev (open source project), a Python or npm package

    Free
    Runs on
    Windows, macOS and Linux with Python 3.10 or later
    Account
    None needed

    Free, open source under the BSD 3-Clause licence.

  3. 03

    Eclipse Mosquitto

    Eclipse Foundation

    Free
    Runs on
    Windows (64-bit and 32-bit installers), macOS (Homebrew), Linux (Ubuntu PPA, Debian, Raspberry Pi, Snap)
    Account
    None needed

    Free, open source under the Eclipse Public License and Eclipse Distribution License.

Optional

Useful, not needed to finish the course.

  1. 04

    InfluxDB (open source)

    InfluxData

    Free
    Runs on
    InfluxDB 3 Core: Linux, macOS, Docker. InfluxDB OSS 2.x: Windows, macOS, Linux, Docker, Raspberry Pi (64-bit).
    Account
    None needed

    The open source editions are free. InfluxDB 3 Core is under the MIT and Apache 2 licences and is what InfluxData recommends for new users. InfluxDB OSS 2.x is still offered and includes a web UI.

  2. 05

    Grafana

    Grafana Labs

    Free
    Runs on
    Windows, macOS, Linux (Debian/Ubuntu, RHEL/Fedora, SUSE, ARM64) and Docker
    Account
    None needed

    Grafana OSS is free and open source under AGPLv3. The Grafana Enterprise download is also free to use without a licence key and is functionally identical until you buy an Enterprise licence.

  3. 06

    Node-RED

    OpenJS Foundation (Node-RED project)

    Free
    Runs on
    Windows, macOS and Linux (needs Node.js 22 or later; Node.js 24 recommended), or Docker
    Account
    None needed

    Free, open source under the Apache 2.0 licence.

  4. 07

    Visual Studio Code

    Microsoft

    Free
    Runs on
    Windows 64-bit (supported Windows client versions), macOS (latest and two previous releases), Linux (Ubuntu 20.04, Debian 10, RHEL 8, Fedora 36 or later)
    Account
    None needed
    Size
    Less than 200 MB download, under 500 MB installed

    Free to download and use. Extensions from the Marketplace each have their own licence.

    Official download pagecode.visualstudio.com

Checked against each maker's own page on 27 September 2026. Trial lengths and editions change; the maker's page is the final word.

Industrial Data with Python at a glance

Industrial Data with Python is a free, self-paced online course from EDWartens for engineers, developers and students applying AI to real work. It has 12 modules and 10h 21m of video lessons by Fusion Automate, Rocket Systems, APMonitor.com and others, with written notes and worked problems, a practical project with a document pack and a 15-question final assessment (pass mark 60%). Learning is free with an account; an optional certificate with a public verification code is issued when you pass. Last updated 27 September 2026.

All course facts
Price
Free, for good. No trial, no card. The only paid item is the optional certificate, a small one-off fee.
Who it is for
Engineers, developers and students applying AI to real work
Format
12 self-paced modules, 10h 21m of video, written notes, a practice task per module and one final assessment.
Level
Intermediate. Intermediate. Needs the Python for AI course; the Machine Learning course helps for the forecasting and anomaly modules. Any PLC or instrumentation background makes the protocols familiar.
Brand
Vendor-neutral
Software
Python on your own laptop (not only Colab): pymodbus, minimalmodbus, asyncua, paho-mqtt, Mosquitto, SQLite, optionally InfluxDB, Grafana and Node-RED. All free.
Hardware
None. A USB–RS485 adapter and any Modbus meter make the serial module real; a Raspberry Pi makes the OPC UA server a device.
Certificate
Optional EDWartens Certificate of Completion, verifiable by code. Not a vendor credential.
Video lessons by
Fusion Automate, Rocket Systems, APMonitor.com, RealPars, Chipsee, Johannes 4GNU_Linux, InfluxData, Masters Of The Code, IT and Automation Academy, Dave Ebbelaar, Rob Mulla, freeCodeCamp.org, Lianne and Justin, AIEngineering, NeuralNine (independent creators, credited below)
Language
English
Last updated
27 September 2026

A shareable EDWartens certificate

Finish every module and pass the final assessment, and the optional EDWartens certificate is yours. It carries a unique verification code on a public page anyone can check, so it stands up when a recruiter looks it up. See it below.

The course itself stays free whether or not you ever buy one.

Stuck? Ask a practising engineer

A free course usually means a comment section and hope. This one does not. Every module has an Ask-your-trainer panel that reaches the same engineers who teach our paid programme: people who commission panels for a living, not moderators.

Pairs well with

More free courses: Free Industry 4.0 and IIoT courses · Free AI courses for engineers

Learning paths with this course

  • Industrial AI engineer · 4 courses

Learner reviews

No reviews yet

Reviews here are written only by learners who have finished every module of Industrial Data with Python, and they are published exactly as written. Finish the course and yours will be the first.

Common questions

Do I need a PLC or a meter?

No. Every module runs against a simulator you write in Python — a Modbus slave, an OPC UA server, a local MQTT broker. A USB–RS485 adapter and any meter make the serial module real if you have them.

Why not just use Node-RED?

Node-RED is excellent glue and has its own free course here. This course is for the parts Node-RED does not do well — decoding, cleaning, storing at scale, forecasting, anomaly detection — and for understanding what the glue is gluing. The last module wires the two together.

What are the projects in the Industrial Data with Python course?

A complete bench pipeline: an OPC UA simulator with an injected fault, a subscribing client publishing to MQTT, a logger to SQLite, cleaning and gridding, an anomaly detector with a baseline and persistence, episodes published back and a dashboard — with the detection lag measured against the injection time. And a day-ahead load forecast on a year of compressor data that must beat the seasonal-naive baseline, with the improvement converted to money saved.

Is the Industrial Data with Python course really free?

Yes. Every module, practice task, project and assessment. You create an account so your progress is saved and the assessments can be marked. The certificate is the only paid item, and only if you want it.

What certificate does the Industrial Data with Python course give?

An EDWartens Certificate of Completion, issued when you have finished the modules and passed the final assessment (the project is optional practice), with a verification code anyone can check. It is not a vendor credential and is never described as one.

Who made the video lessons in the Industrial Data with Python course?

The creators named in the Credits block at the foot of this page, on their own YouTube channels. EDWartens did not make the videos and the creators are not affiliated with EDWartens. What EDWartens wrote is the study plan, the notes, the practice tasks, the projects and the assessments.

How long does the Industrial Data with Python course take?

Plan on about 16 hours in all, including the video lessons, notes and practice tasks. It is self-paced, so you work through the twelve modules at your own speed.

What you walk away with

Your certificate for Industrial Data with Python

Finish the course, pass the final, and this is the document with your name on it.

Sample EDWartens Certificate of Completion for Industrial Data with Python
Sample. The issued certificate carries your name, admission number, a unique certificate number and its own QR code.
  • Verifiable by anyone

  • Adds to LinkedIn in one click

  • QR code on the certificate

  • Names what you can do

  • A permanent link

  • Earned, not attended

Learning is free. The certificate is optional.

Add it now and pay only when you have finished the course, or come back for it later. One-off, US$28.99, with a receipt.

Issued by EDWartens, the training division of Wartens, as a Certificate of Completion for this self-paced course. Sold by Wartens Ltd (England and Wales). It is not a vendor certification, a university award or a CPD-accredited activity, and it does not certify competence on live equipment. Delivered electronically; see the refund policy.

Credits

Who made the video lessons

The video lessons in this course were created by the people below, not by EDWartens. Every lesson streams from its creator's own YouTube channel; EDWartens neither hosts nor sells that footage, and the creators are not affiliated with EDWartens and do not endorse this course. What EDWartens wrote is the study plan, the notes, the practice tasks and the assessments.

If you are one of these creators and would like a lesson removed or credited differently, write to info@wartens.com.