4. VISA in Programming Languages

There are many programming languages offering the possibility to remotely control Test & Measurement instruments.

In this guide, we focus on:

  • Python in PyCharm
  • MATLAB®
  • C# in Visual Studio
  • LabVIEW™
  • ANSI-C in LabWindows/CVI™

In the following sub-chapters, we discuss advantages and disadvantages of each language. Included ready-to-use example for each of these languages should help you getting started. The screenshots emphasize simple code change in case you change physical connection to your instrument. They also show used layers between the application and VISA.

An installation of VISA is a precondition for all the examples below.

Python in PyCharm

Advantages: Intelligent code editor, safe refactoring, allows for tracking code changes, excellent debugger, also available for Linux.

Compared to pure PyVisa, RsInstrument provides many extended features - proper session attribute settings, synchronization functions, error checking, large data transfer in both directions.

Disadvantages: Missing compiler means you code is only tested for errors during execution.

In Python 3.x, you use RsInstrument module that internally uses PyVISA. You change the resource string in the RsInstrument class constructor.

MATLAB

Advantages: Simple scripting language, including easy GUI designs.

Disadvantages: No multi-threading, bulky executables.

In MATLAB you change the resource string in the VISA Open() method. The rest of your script is unchanged. See more in the dedicated application note 1MA171

C# in Visual Studio

Advantages: State-of-the-art programming environment, optimized for high performance.

Disadvantages: Requires advanced programming knowledg.

In Visual Studio C# or VB.NET, you use the RsInstrument modul (assembly), which provides same features as the RsInstrument module for Python - proper session attribute settings, synchronization functions, error checking, large data transfer in both directions. You only have to change the resource string in the RsInstrument constructor. The example link below also contains a Visual Basic .NET project.

LabVIEW

Advantages: Ideal for engineers without the need for advanced programming skills, specially developed for instrument remote control applications.

Disadvantages: Lower performance by graphical tasks, difficult to compare versions due to graphical source code.

In LabVIEW, you change the instrument resource string for the LabVIEW function VISA Open. The session stays valid even if your program stops. If you are using instrument drivers, refer to the dedicated application note 1MA228

ANSI-C in LabWindows/CVI

Advantages: ANSI-C environment targeted for instrument remote control.

Disadvantages: Requires advanced programming knowledge.

In C/C++, you change the resource string in the viOpen() function. First, you need to open a resource manager with the function viOpenDefaultRM().

Informationen anfordern

Haben Sie Fragen oder benötigen Sie weitere Informationen? Nutzen Sie hierzu einfach unser Kontaktformular und wir setzen uns umgehend mit Ihnen in Verbindung.

Ich möchte Informationen von Rohde & Schwarz erhalten per

Marketing-Einverständniserklärung

Was bedeutet das im Einzelnen?

Ich bin damit einverstanden, dass die ROHDE & SCHWARZ GmbH & Co. KG und die im Impressum dieser Website genannte, ROHDE & SCHWARZ zugehörige Gesellschaft oder Niederlassung, mich über den gewählten Kommunikationskanal (E-Mail oder Post) zu Marketing- und Werbezwecken kontaktiert (z.B. zur Übersendung von Informationen über Sonderangebote und Rabattaktionen), die in Zusammenhang mit Produkten und Lösungen aus den Bereichen Messtechnik, sichere Kommunikation, Monitoring and Network Testing, Rundfunk- und Medientechnik sowie Cybersicherheit stehen, aber nicht auf diese beschränkt sind.

Ihre Rechte

Diese Einverständniserklärung kann jederzeit durch Senden einer E-Mail, in deren Betreffzeile "Unsubscribe" steht, an news@rohde-schwarz.com, widerrufen werden. Darüber hinaus enthält jede von uns versandte E-Mail einen Link, durch den das Abbestellen zukünftiger Werbung per E-Mail möglich ist. Weitere Einzelheiten zur Verarbeitung personenbezogener Daten und zum Widerrufsverfahren finden sich in unserer Datenschutzerklärung..

Ihre Anfrage wurde erfolgreich versendet. Wir nehmen in Kürze Kontakt mit Ihnen auf.
An error is occurred, please try it again later.