Virtueller AmplifierTest-Ablauf¶
Das Skript amplifier-test.py kann mit virtuellen Gerätekonfigurationen
ohne Laborhardware ausgeführt werden. Das ist für Entwicklung, Fehlersuche und
Regressionstests gedacht. Die Standardkonfiguration bildet einen im Messrack
eingebauten Verstärker mit Vorwärts- und Rückwärtsleistungsüberwachung ab.
Aus dem Verzeichnis script wird der virtuelle Verstärkertest so gestartet:
python amplifier-test.py conf/amplifier-test-virtual/conf.py
Ein isolierter Verstärker mit direkt am Verstärkerausgang angeschlossenem Leistungsmesser wird durch die Direct-Konfiguration abgebildet:
python amplifier-test.py conf/amplifier-test-direct-virtual/conf.py
Diese Konfiguration setzt measurement_setup = "direct". Ihr Names-Mapping
verwendet pm_out für den direkten Ausgangs-Leistungsmesser anstelle der
Rack-Setup-Keys pm_fwd, pm_bwd und output.
Die Direct-Konfiguration definiert Korrekturen für Ausgangskabel und
Dämpfungsglied als passive Knoten im Graphen und referenziert sie auf den
DOT-Kanten mit den üblichen Attributen dev und what. Der virtuelle
Direct-Ablauf nutzt zwei Kantenkorrekturen zwischen amp_out und pm_out
und enthält dabei ein 40-dB-Ausgangsdämpfungsglied.
Im Direct-Setup prüft AmplifierTest zusätzlich einen optionalen
Leistungsmesser-Sicherheitskanal namens MAXIN, bevor ein Pegel am
Signalgenerator gesetzt wird. Die Prüfung schätzt den Leistungsmessereingang
aus dem angeforderten Signalgeneratorpegel und der Graphkorrektur von sg
nach pm_out. Die virtuelle Direct-Konfiguration und die
R&S-NRP-Z21-Konfiguration stellen einen solchen MAXIN-Kanal bereit. Fehlt
er in der ausgewählten Leistungsmesserkonfiguration, steht dieser zusätzliche
Leistungsmesserschutz nicht zur Verfügung.
Dieselbe Konfiguration kann über die Qt-Oberfläche gestartet werden:
python amplifier-test-qt.py conf/amplifier-test-virtual/conf.py
Die Konfigurationen verwenden virtuelle Treiber für Signalgenerator,
Verstärker und Leistungsmesser sowie virtuelle 0-dB-Pfadkorrekturen.
Ausgabedateien werden jeweils in das output-Verzeichnis der Konfiguration
geschrieben.
Die virtuelle Konfiguration deaktiviert die Kompressionsauswertung mit
do_evaluation = False. Die virtuellen Leistungsmesserdaten sind
deterministisch und eignen sich für Messablauf, Logging und Pickle-Workflow,
bilden aber keine realistische Kompressionskennlinie ab.
Die reale Direct-Konfiguration unter conf/amplifier-test-direct ist ein
erster hardwareorientierter Stand mit R&S SMF100A, BLMA-Verstärkerkonfiguration
und einer R&S-NRP-Z21-Leistungsmesserkonfiguration. Ihre Korrekturknoten für
direktes Ausgangskabel und Dämpfungsglied verwenden zunächst lokale
0-dB-Platzhalterdaten. Für reale Messungen müssen diese durch die gemessenen
Korrekturdaten ersetzt werden. Das ist auch nötig, damit die
MAXIN-Abschätzung den tatsächlichen Leistungsmessereingang beschreibt.
Das Skript schreibt:
Datei |
Zweck |
|---|---|
|
Finales |
|
Zwischen-Pickle nach dem Messschritt. |
|
Textlog des Messlaufs. |
Der hardwareunabhängige Pfad wird durch
test_amplifier_test_script.py abgedeckt. Der fokussierte Test kann aus dem
Repository-Wurzelverzeichnis gestartet werden:
PYTHONPATH=src:../scuq/src python -m pytest test/test_amplifier_test_script.py