AI and machine learning

Industrial Data with Python

Move plant data with Python: read Modbus and OPC UA, publish over MQTT, store and forecast it, then chart it.

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 takes about 16.2 hours, with written notes, a practice task per module, a practical project and a final assessment of 15 questions (pass mark 60%). Learning costs nothing and needs only a free account. The optional EDWartens Certificate of Completion, verifiable by code, is a one-off US$28.99 for you; it is not a vendor credential. Updated 1 November 2026.

  • Free
  • Intermediate
  • 16.2 hours
  • Self-paced
  • Certificate optional
  • Lab practice in your browser

No card, no trial. The course is free for good. Certificate US$28.99, optional.

Who it is for
Engineers, developers and students applying AI to real work
Jobs
Roles that use this skill: AI engineer, machine learning engineer, data analyst and automation developer. No course guarantees a job.
Tools
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.
Updated
Industrial Data with Python course cover
Industrial Data with Python course cover

After this course you can

By the end you will be able to:

  • Read Modbus and OPC UA devices from Python against simulators
  • Publish process values on well-designed MQTT topics
  • Store time series in SQLite or InfluxDB with Grafana
  • Clean and resample live process data honestly
  • Forecast load and detect anomalies on process tags

Who it is for, and what you need first

Who it is for

Engineers, developers and students applying AI to real work.

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.

What you need

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.. What to download, and how.

How this course works

  1. Watch the lessons

    Short video lessons, one module at a time, at your own pace.

  2. Read the notes

    Open the Reading tab for the written notes and diagrams of the module.

  3. Practise in the 3D labOptional

    Try the module in the free 3D lab, in your browser.

  4. Check yourself

    Answer the questions to see what stuck before you move on.

  5. Final assessment

    Pass the final once you have been through the modules.

  6. Certificate, if you want oneOptional

    Optional, with a page anyone can use to verify it.

What you learn

12 modules in order, at your own pace. 16.2 hours of video lessons, with written notes and a practice task in each module.

  1. 1Where plant data lives, and where Python fits23m
  2. 2Modbus TCP from Python, with lab practice: 53m
  3. 3Modbus RTU and serial devices33m
  4. 4OPC UA from Python1h 4m
  5. 5OPC UA security, and a Pi as a server, with lab practice: 48m
  6. 6MQTT: publish once, subscribe anywhere, with lab practice: 21m
  7. 7Storing time series1h 50m
  8. 8Cleaning and resampling process data, with lab practice: 58m
Show the other 4 modules
  1. 9Time-series analysis and forecasting, with lab practice: 2h 17m
  2. 10Anomaly detection on process tags, with lab practice: 43m
  3. 11Node-RED, dashboards and the end-to-end pipeline31m
  4. 12Final assessment

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.

Show what to download (7 tools)

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.

Practise in the 3D lab

Practise what you do with plant data after you collect it: find blanks, copies and wild values, split by time, and set a flag threshold people can handle.

Train and testWatch

Optional. Skip it whenever you like: it never blocks your progress or your certificate.

Course project, about 8 hours

A simulated compressor to a dashboard: OPC UA, MQTT, a store, cleaning and anomaly episodes

Run an OPC UA simulator of a compressor with a fault injected at a known time. Publish it over MQTT, log it to SQLite, clean it, detect the fault as an anomaly episode, show it on a Node-RED dashboard and measure the detection lag.

This project at a glance
  1. 8documents in the pack
  2. 6steps to follow
  3. 7things to hand in
  4. 8 hof work, at your pace
  • PlanPlan: bench proof of the compressor C3 data pipeline
  • Tag listTag and topic list: C3 simulator and pipeline
  • Network architectureArchitecture: bench pipeline and its phase-2 equivalent
  • SDSSoftware design: simulator, bridge, logger and detector
  • FATBench acceptance test record: C3 pipeline
  • Change noticeChange notice: simulator cycles and detector after run 1

The project is optional practice. The certificate needs only the modules and the final assessment.

After the course, your next step

Show what you can do, then keep going in the same field.

Sample EDWartens Certificate of Completion for Industrial Data with Python

Sample. The issued certificate carries your name, your final score, a certificate ID and a QR code that opens its verification page.

Optional

A certificate you can verify

Finish the modules and pass the final assessment (15 questions, pass mark 60%) and you can add a certificate with a public verification page. One-off, US$28.99 for you. It is not a vendor credential.

Want a free certificate? Do the matching Free internship: 4 weeks, nothing to buy, with a free certificate of completion.

Two people at laptops over a table covered with pie charts and printed results.
Free · 4 weeks · free certificate

Data Science and Analytics

Eight short weeks of data analysis from spreadsheets to Python, SQL, dashboards and a first model: notes, diagrams, a few videos and worked exercises. Finish weeks 1 to 4 and the final, then claim a free Internship Completion Certificate with your real dates and study hours, and a QR code anyone can scan to verify it. Training, not employment.

See the internship

Part of a learning path

Courses in a planned order, so each one builds on the last.

Roles that use this skill

  • AI engineer
  • Machine learning engineer
  • Data analyst
  • Automation developer

These are the kinds of roles where the skill is used. We make no promise of a job or an interview.

Plain notes

  • Free: the whole course, the notes, the practice tasks, the final assessment and support from practising engineers.
  • Paid, and optional: the course certificate, and the Engineer-verified internship (the Free internship costs nothing).
  • No job promise: the course teaches a skill. It does not place you in a job.
  • 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; the lessons stream from their own channels. EDWartens wrote the study plan, notes, practice tasks and assessments.

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. If you are one of these creators and want a lesson removed or credited differently, write to info@edwartens.com.

Practise what you learn in the free 3D lab

Technical work is judged on what you can do: wiring, commissioning, finding a fault. Doing a task yourself teaches more than watching it a second time, and a lab lets you try it safely before you meet real equipment. It does not replace working on real hardware.

  • Practise safely, so a mistake costs nothing.
  • The lab checks your work like a site test, so you know when it is right.
  • Free, in your browser, with nothing to install.

Why learn with EDWartens

What you get with this course, and what comes after it.

  • Free from the first lesson to the final assessment.
  • Practice in a free 3D lab in your browser, with nothing to install.
  • Video lessons with written notes and a project.
  • An optional certificate that anyone can verify online.
  • Free internships to keep practising afterwards.

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 and a local MQTT broker. A USB to 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 and anomaly detection. It is also 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?

There are two projects. The first is a complete bench pipeline. It has an OPC UA simulator with an injected fault, a client publishing to MQTT, a SQLite logger, cleaning and gridding, and an anomaly detector with a baseline and persistence. Episodes are published back to a dashboard. You measure the detection lag against the injection time. The second is a day-ahead load forecast on a year of compressor data. It 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.

Do I have to use the lab?

No. The lab is optional practice. You can skip it whenever you like, and it never blocks your progress, the final assessment or your certificate.

Is the lab free?

Yes. Every lab level for this course opens in your browser, free, with nothing to install.

What topics does the Industrial Data with Python course cover, module by module?

The Industrial Data with Python course has 12 modules. It opens with "Where plant data lives, and where Python fits", goes through "Modbus TCP from Python", "OPC UA security, and a Pi as a server", "Cleaning and resampling process data" and "Node-RED, dashboards and the end-to-end pipeline" and ends with "Final assessment". The full list with minutes is under "What you learn" on this page.

What can I do after the Industrial Data with Python course?

After the Industrial Data with Python course: 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. These are the practical outcomes the course is written around, and the final assessment of 15 questions checks them.

What software and hardware do I need for the Industrial Data with Python course, and does it cost anything?

For the Industrial Data with Python course, 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. The course itself is free.

Is the Industrial Data with Python course suitable for me, and what level is it?

Industrial Data with Python is rated 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. It is written for engineers, developers and students applying AI to real work, and takes about 16.2 hours at your own pace.

Which jobs use the skills from the Industrial Data with Python course?

Skills from the Industrial Data with Python course (for example: read holding registers over Modbus TCP and RTU from Python and decode floats, offsets and scaling correctly) are used in roles such as AI engineer, machine learning engineer, data analyst and automation developer, and in machine learning engineer work. The course gives you practical evidence of the skill; it does not promise a job, and employers decide on experience and interview.

Start free today

Industrial Data with Python, at your own pace. Add the certificate only if you want one.