FAQs from Rohde & Schwarz

EMC32 Generic Amplifier, verschiedene Möglichkeiten, um SCPI-Befehle nacheinander zu senden

Frage:

Ich verwende EMC32 für elektromagnetische Störempfindlichkeit. Ich habe einen Verstärker, den ich mit dem Treiber „Generic Amplifier“ steuere.

Rohde-Schwarz-FAQ-EMC32-Generic-Amplifier-different-ways-to-send-SCPI-commands-in-sequence_screen1.jpg

Ich habe eine Konfigurationsdatei für Generic Amplifier definiert, und das funktioniert auch, aber ich würde gerne beim Umschalten auf „Operate“ einen zweiten Befehl senden. In der Formatspezifikation für Generic Amplifier-Dateien scheint es nur die Möglichkeit zu geben, beim Umschalten auf „Operateׅ“ einen einzelnen Befehl zu senden. Ich habe keine Möglichkeit gefunden, mehrere Befehle nacheinander zu senden. Besteht diese Möglichkeit?

Antwort:

Grundsätzlich gibt es zwei Möglichkeiten dazu.

Erstens erlaubt die SCPI-Sprache die Verwendung von Semikolons zur Verknüpfung von Befehlen. Im folgenden Beispiel aus der Gerätekonfigurationsdatei sind die Befehle AMP:OPER und *CLS durch ein Semikolon getrennt:

Rohde-Schwarz-FAQ-EMC32-Generic-Amplifier-different-ways-to-send-SCPI-commands-in-sequence_screen2.jpg

Wenn Sie die gesendeten Befehle mit Hilfe der NI IO Trace-Logdatei verfolgen, werden Sie sehen, dass der zweite Befehl wie erwartet nach dem ersten Befehl AMP:OPER gesendet wird, ebenfalls durch Semikolon getrennt.

Rohde-Schwarz-FAQ-EMC32-Generic-Amplifier-different-ways-to-send-SCPI-commands-in-sequence_screen3.jpg

Bitte beachten Sie, dass einige Verstärker keine Semikolons als Trennzeichen akzeptieren. Solche Verstärker erwarten zwangsläufig nach jedem Befehl eine Terminierung. Erst danach kann der nächste Befehl folgen. Auch hierfür gibt es eine Lösung, die nicht in der Formatspezifikation für Generic Amplifier-Dateien aufgeführt ist.

Bitte fügen Sie eine weitere Zeile Command1= für den 2. SCPI-Befehl in die Gerätekonfigurationsdatei ein. Der Inhalt wird dann nach dem Inhalt von Command= gesendet.

Im folgenden Beispiel sollte *CLS als zweiter Befehl nach dem Befehl AMP:OPER verwendet werden.

Rohde-Schwarz-FAQ-EMC32-Generic-Amplifier-different-ways-to-send-SCPI-commands-in-sequence_screen4.jpg

Wenn Sie die gesendeten Befehle in der NI IO Trace-Logdatei verfolgen, wird zuerst der Befehl AMP:OPER gesendet, der mit einer hexadezimalen 0A am Ende terminiert wird.

Der zweite Befehl, der mit Command1= angegeben wird, wird danach gesendet.

Rohde-Schwarz-FAQ-EMC32-Generic-Amplifier-different-ways-to-send-SCPI-commands-in-sequence_screen5.jpg

Das Terminierungszeichen selbst kann in diesem Abschnitt der Konfigurationsdatei definiert werden

Rohde-Schwarz-FAQ-EMC32-Generic-Amplifier-different-ways-to-send-SCPI-commands-in-sequence_screen6.jpg