Verwenden von Python, MathWorks® MATLAB®-Software und C/C++ mit LabVIEW

Überblick

Die Konnektivität von LabVIEW mit anderen Programmiersprachen ist ein attraktives Merkmal für Ingenieure, die Testsysteme erstellen. Durch die Integration von Sprachen wie Python, MathWorks® MATLAB Software, C/C++ und .NET in den grafischen Datenfluss von LabVIEW wird das Beste aus jeder Sprache kombiniert, um ein flexibles Testsystem zu erstellen, das in kürzerer Zeit erstellt werden kann.

 

In diesem Whitepaper erfahren Sie, wie Sie Code aus vier gängigen Programmiertechnologien in LabVIEW integrieren. Diese Flexibilität bedeutet, dass Sie immer das richtige Tool für den Job auswählen können und schneller erfolgreich sind.

Inhalt

Aufrufen von Python-Skripten aus LabVIEW

Im Laufe der Jahre ist Python immer beliebter geworden und bietet Hunderttausende von Bibliotheken für ein breites Spektrum von Anwendungen. Die Integration von Python in LabVIEW vereint die flexiblen Scripting-Funktionen von Python mit den Systementwurfswerkzeugen in LabVIEW.

Mit dem Python-Knoten bietet LabVIEW die native Möglichkeit, ein Python-Skript aus einem LabVIEW-Blockdiagramm aufzurufen. Diese Funktion ermöglicht die Interoperabilität zwischen den Sprachen mit niedriger Latenz.

Abbildung 1: Integrieren Sie Python-Skripte in LabVIEW, indem Sie diese mit dem Python-Knoten aufrufen.

Im Python-Knoten können Sie die zu verwendende Version und den Pfad zu Python beim Aufrufen von Funktionen angeben. Dies ermöglicht den Zugriff auf Python, wenn es in benutzerdefinierten Verzeichnissen installiert ist. Diese Fähigkeit bedeutet, dass Sie mehrere Python-Knoten verwenden können, um mehrere Sessions unterschiedlicher Versionen oder ausführbare Dateien zu öffnen, die in benutzerdefinierten Verzeichnissen gespeichert sind.

In LabVIEW 2022 Q3 können nun Python-Klassenobjekte als Parameter übergeben werden. Der Referenzausgang des Python-Knotens stellt ein Python-Klassenobjekt dar, das Sie dann als Eingang an einen anderen Python-Knoten übergeben können, um auf das Klassenobjekt zu reagieren.

.

Abbildung 2: LabVIEW 2022 unterstützt die Weitergabe von Python-Klassenobjekten als Parameter.

LabVIEW 2023 Q1 enthält eine neue Funktion zum Aufrufen virtueller Python-Umgebungen mit Anaconda und Venv.

NI investiert kontinuierlich in die Verbesserung der Interoperabilität von Python und LabVIEW, wobei Updates bis 2023 und darüber hinaus geplant sind. Weitere Informationen zu den Neuerungen in LabVIEW und unseren zukünftigen Plänen finden Sie auf unserer LabVIEW-Überblickseite.

Integrieren von LabVIEW und MathWorks MATLAB

Zum Aufrufen von .m-Dateien, die in MATLAB entwickelt wurden, können gängige Programmieransätze für die numerische Analyse, Signalverarbeitung und höhere Mathematik verwendet werden. Durch die Kombination dieser Dateien in einem VI mit G mit Hilfe des MATLAB-Knotens können MATLAB-Analysefunktionen Ihr Mess- und Prüfsystem integrieren.


Abbildung 3:  Integrieren Sie .m-Dateien in LabVIEW , indem Sie sie mit MATLAB -Funktion aufrufen vom MATLAB -Knoten aus aufrufen.

Darüber hinaus können Benutzer in LabVIEW nun spezifische MATLAB-Versionen für die Ausführung auswählen.

Abbildung 4: Mit dem MATLAB-Knoten können Sie eine bestimmte MATLAB-Version für die Ausführung auswählen.

Ab LabVIEW 2022 Q3 sind neue Fehlersuchfunktionen verfügbar. Sie können Haltepunkte in Ihrem MATLAB -Editor hinzufügen, Fehler im Programmcode beheben, indem Sie einen einzelnen Schritt von LabVIEW in die *.m-Datei wechseln, und Ihre MATLAB -IDE von LabVIEW aus starten, um Ihre *.m-Datei unterwegs zu bearbeiten.


Abbildung 5: Verwenden Sie die Fehlerbehandlung-Tools von LabVIEW, um Ihre .m-Datei zu öffnen und Fehler in LabVIEW zu beheben.

Aufrufen von C/C++-DLLs in LabVIEW

In LabVIEW können Sie vorhandenen Code durch Aufrufen von Dynamic Link Libraries (DLLs) oder Shared Libraries wiederverwenden.

Wenn Sie beispielsweise eine vorhandene C/C++-Bibliothek in LabVIEW wiederverwenden möchten, können Sie sie über den Knoten zum Aufruf externer Bibliotheken aufrufen. Zum einfachen Importieren externer Bibliotheken enthält LabVIEW außerdem den DLL-Importassistenten. Dieser Assistent erstellt oder aktualisiert automatisch eine LabVIEW-Wrapper-VI-Projektbibliothek, die Sie in Ihr LabVIEW-Blockdiagramm integrieren können.

Abbildung 6: Mit dem Knoten zum Aufrufen einer Bibliotheksfunktion können Sie vorhandene C- oder C++-Bibliotheken in Übereinstimmung mit der G-Programmierung wiederverwenden.

Aufrufen von .NET-Assemblys in LabVIEW

Eine andere Möglichkeit, vorhandenen Code mit LabVIEW wiederzuverwenden, besteht darin, .NET-Assemblys aufzurufen.

Um auf eine .NET-Assembly zuzugreifen, verwenden Sie den Konstruktorknoten. Beim Einfügen in das Blockdiagramm wird ein Dialogfenster angezeigt, in dem der Benutzer die entsprechende .NET-Assembly auswählen kann. LabVIEW erkennt automatisch alle Methoden und Eigenschaften und zeigt diese über die Methoden- und Eigenschaftsknoten an.

Abbildung 7: Erstellen Sie mit der Funktion „.NET-Konstruktorknoten“ eine Referenz auf die .NET-Assembly. Übergeben Sie dann die Referenz an Eigenschaften- oder Knotenfunktionen, damit die Funktionen wissen, auf welcher Assembly sie arbeiten.

LabVIEW kann .NET-Assemblys für .NET CLR 4.0 oder älter laden. Die Assemblys werden jedoch alle in .NET CLR 4.0 geladen.

Fazit

Wir haben vier Möglichkeiten behandelt, um mit LabVIEW gängige Sprachen zu verbinden, und dabei die Flexibilität und Interoperabilität hervorgehoben. Dank dieser Konnektivität können Sie das Beste aus jedem Tool nahtlos kombinieren, um flexible Testsysteme schneller zu erstellen.

Nächste Schritte