Eine Messanwendung entwickeln

Dieser Einstieg richtet sich an Entwickler, die einen vorhandenen Ablauf konfigurieren oder mpylab um Messlogik, Geräte oder eine Oberfläche erweitern.

1. Passende Erweiterungsebene wählen

Prüfen Sie in dieser Reihenfolge:

  1. Kann eine vorhandene Messklasse nur durch eine neue conf.py sowie DOT- sowie INI- und DAT-Dateien angepasst werden?

  2. Fehlt ein konkreter Gerätetreiber für eine vorhandene Gerätebasisklasse?

  3. Wird tatsächlich eine neue fachliche Messklasse benötigt?

  4. Benötigt der bestehende Ablauf lediglich einen weiteren UI-Adapter oder Reportbaustein?

Die Framework-Architektur beschreibt die Verantwortungsgrenzen.

2. Durchgängiges Beispiel nachvollziehen

Das Entwicklertutorial führt anhand eines virtuellen Verstärkertests von conf.py über DOT und INI bis zu Pfadkorrektur, Autosave, Tests und UI-Anbindung.

3. Schnittstellen und Verhaltensregeln einhalten

  • Messklassen erben von Measure und trennen Messung von Auswertung.

  • Hardwareprotokolle bleiben in Gerätetreibern.

  • MGraph erhält DOT-Conditions und physische Context-Controller über einen expliziten Kontext. Eigene Anwendungen behandeln eine erkannte Zustandsabweichung, ohne die Hardware automatisch zurückzuschalten.

  • Messwerte bleiben als SCUQ-Quantities erhalten.

  • Blockierende Aufrufe laufen bei Qt in einem Worker.

  • RF-Off, Gerätegrenzen und manuelle Intervention bleiben erreichbar.

Vertiefungen finden Sie unter Messklassen, Treiber, DOT-Context-Controller, Pfadkorrekturen und UI-Worker. Die EUT-Monitoring-Anleitung zeigt die Entwicklung spezifischer Monitore, deren Thread-Kapselung und die Einbindung über EUTMonitoringSession.

Für weitergebbare Ergebnisse trennt die Report-Anleitung die TOML-basierte Darstellungskonfiguration von eigenen Python-Reportmodulen. Die kuratierte Report-API dokumentiert deren Lebenszyklus und Einbindung.

4. Ohne Hardware absichern

Neue Abläufe benötigen reine Logiktests, Schnittstellentests der Geräteklassen, eine virtuelle Konfiguration, einen kurzen End-to-End-Lauf sowie Safety- und Resume-Tests. Der Testleitfaden ordnet diese Ebenen ein.

5. API nachschlagen

Die kuratierte, englischsprachige API- und CLI-Referenz dokumentiert die empfohlenen Erweiterungspunkte. Nicht dokumentierte Namen mit führendem Unterstrich sind als interne Implementierung zu behandeln.

Beim Aktualisieren älterer Anwendungen zeigt der Leitfaden zur Werkzeugmigration, wie Importe aus der historischen Fassade mpylab.tools.util durch fokussierte Module ersetzt werden.