Skip to content

MTPPy2.0

MTPPy2.0 is a redesign of the MTPPy1.0 repository. The intention of MTPPy2.0 is to

  1. provide a playground that helps users get started with modular plant automation, and

  2. serve as a reference implementation for fact-based discussions about advancing the standard using accessible, shared evidence and experience.

Towards that end MTPPy2.0 implements several parts of the PNO MTP 2.0 specification, namely Part 1 (Definitions), Part 3 (Data Object Library), Part 4 (Services), and an initial static AlarmSet.Base subset of Part 6 (Alarms and Events).

Status

Latest Release Coverage Report

License

MTPPy2.0 is licensed under the MIT license.

Getting started

End Users

  1. Install the package e.g. from PyPI.
  2. See the tutorial for some examples that allow you to dive right in into PEA development without needing to read 10000+ pages of specification.
  3. Have fun!

Developers:

  1. check out from repository and run uv sync. This will set up the virtual environment mtppy2-0 and install all the necessary packages for runtime and development.
  2. See the developer handbook for details.
  3. Feel invited to contribute

Implementation Summary

PNO MTP 2.0 Purpose MTPPy2.0
Part 1 Concept & Definitions architecture, see mtppy.part1
Part 2 Human Machine Interface out of scope
Part 3 Base Interfaces (Data Assembly) partially, see mtppy.part3
Part 4 Services, Process Values partially, see mtppy.part4
Part 5 Runtime and Communications basic profile, see mtppy.part5
Part 6 Alarms only BaseAlarm, see mtppy.part6