Python-Ressourcen für Hard- und Software von NI

Überblick

Dieses Dokument bietet einen Überblick über die National Instrument-Tools, mit denen Sie Python neben den NI-Hardware- und Softwareplattformen wie PXI, CompactDAQ, CompactRIO, LabVIEW, TestStand und VeriStand nutzen können. Installationsanweisungen, unterstützte Umgebungen, API-Referenzen und Beispiele finden Sie in der verknüpften Dokumentation für die einzelnen Python-Tools.

Contents

Verwenden von Python-APIs für NI-Hardware

Open-Source-Entwickler und NI haben die Python-Integration in NI-Hardware vereinfacht. Hierfür wurden Module erstellt, die die Funktionsaufrufe der untergeordneten ctypes in vereinfachte APIs abstrahieren. Die folgenden Links führen zu Dokumentationsressourcen für Python-Wrapper, die für NI-Hardwaretreiber erstellt wurden.

Python-APIs für modulare PXI-Messgeräte

Das Repository „nimi-python“ ist eine Sammlung von Python-Modulen, die eine Schnittstelle zu den zugrunde liegenden modularen NI-Messgerätetreibern bieten. Derzeit bietet NI über dieses Paket Python-Unterstützung für PXI-Oszilloskope, Signalgeneratoren, DMMs, SMUs, Netzteile, Schaltmodule und Digital Pattern Instruments. Diese Messgeräte nutzen die folgenden Treiber:

Modulares Messgerät

Treiber-

Python-Modul

PXI-Oszilloskop

NI-SCOPE

niscope

PXI-Signalgenerator

NI-FGEN

nifgen

PXI-Digitalmultimeter

NI-DMM

nidmm

Programmierbares PXI-Netzteil

PXI-Source-Measure-Unit

NI-DCPower

nidcpower

PXI-Schaltmodul

NI-SWITCH

niswitch

PXI Digital Pattern Instrument

NI-Digital Pattern Driver

nidigital


Weitere Informationen zu nimi-python

Python-API für DAQ-Hardware

Das Paket „nidaqmx“ enthält eine API für die Interaktion mit dem NI-DAQmx-Treiber, der für die Kommunikation mit dem NI-Datenerfassungsgerät (DAQ) erforderlich ist. Dieses Paket wurde von NI erstellt und wird von NI unterstützt. Das Paket wird als komplexer, stark objektorientierter Wrapper um die NI-DAQmx C-API mithilfe der Python-Bibliothek „ctypes“ implementiert.

 

Python-API für VirtualBench

Die Bibliothek „pyVirtualBench“ bietet durch das Wrapping der C-API eine Schnittstelle zum zugrunde liegenden VirtualBench-Treiber.

Hinweis:
pyVirtualBench ist ein Wrapper eines Drittanbieters und wird nicht direkt von NI unterstützt.

 

Python-API für RIO-Hardware

Die Python-API der FPGA-Schnittstelle von NI wird für die Kommunikation zwischen Prozessor und FPGA innerhalb der rekonfigurierbaren I/O-Hardware (RIO) von NI wie NI CompactRIO, NI Single-Board RIO, NI FlexRIO und Multifunktions-RIO der NI R-Serie verwendet.

Mit der Python-API der FPGA-Schnittstelle können Entwickler in LabVIEW FPGA das FPGA innerhalb der NI-Hardware programmieren und über Python, das auf einem Host-Computer ausgeführt wird, damit kommunizieren. So können Techniker und Wissenschaftler mit Python-Kenntnissen kompilierte LabVIEW-FPGA-Bitdateien nutzen und vorhandenen Python-Code wiederverwenden.

Weitere Informationen zur Python-API der FPGA-Schnittstelle

Python-API für Vision-Anwendungen

Die Bibliothek „nivision“ ist eine Bild- bzw. Bildverarbeitungsbibliothek von NI, die die Funktionalität von NI Vision in der Programmiersprache Python verfügbar macht. Sie ist für mehrere Plattformen verfügbar, einschließlich Windows und CompactRIO.

Hinweis
: nivision ist ein Wrapper eines Drittanbieters und wird nicht direkt von NI unterstützt.

Weitere Informationen zu nivision

Python-API für CAN-, LIN- und FlexRay-Hardware

Das Paket „nixnet“ enthält eine API für die Interaktion mit dem NI-XNET-Treiber. NI-XNET ist die Treibersoftware-Technologie für folgende Schnittstellen: NI-XNET CAN, LIN sowie FlexRay PCI, PXI und NI C-Serie. Das Paket nixnet und NI-XNET werden von NI unterstützt.

Weitere Informationen zu nixnet

Python-API für herkömmliche Benchtop-Geräte

PyVISA ist ein Python-Paket, das die API für die Interaktion mit dem NI-VISA-Treiber enthält. Mit NI-VISA können Sie Messinstrumente unabhängig von der Schnittstelle (z. B. GPIB, RS232, USB, Ethernet) steuern. Es handelt sich um die Treibersoftwaretechnologie hinter folgenden Schnittstellen: NI-Serie, GPIB und Ethernet PCI, PXI, USB und NI C-Serie.

Hinweis
: PyVISA ist ein Wrapper eines Drittanbieters und wird nicht direkt von NI unterstützt.

Weitere Informationen zu PyVISA

Aufrufen von NI-Hardware-DLLs mit „ctypes“

Für die Hardwarekommunikation mit vielen Geräten sind Python-Module mit intuitiven APIs vorhanden. Zur Integration von eigenem Python-Code in die Hardware jedoch verlassen sich die Entwickler häufig auf C-APIs, die im Lieferumfang der meisten Hardwaretreiber enthalten sind. Dieselbe Methode kann beim Einsatz von NI-Hardware mit Python über das Modul „ctypes“ angewendet werden. Diese Lösung bietet eine intuitive Möglichkeit, Python-Skripte in die meisten Hardwarekomponenten zu integrieren.

LabVIEW-DLLs

Neben der Verwendung des Moduls „ctypes“ für den Zugriff auf die C-API eines Hardwaretreibers kann LabVIEW DLLs erzeugen, die aus von Python aus aufgerufenen Hardware-API-Funktionen bestehen. Mit demselben Verfahren können Entwickler eine Folge von Hardware-Interaktionen in einen einzigen Funktionsaufruf abstrahieren, der in der DLL-Datei gespeichert ist.

Erfahren Sie, wie Sie eine DLL erzeugen und von Python aus aufrufen

Python in LabVIEW integrieren

Neu in LabVIEW 2018 ist der Python-Knoten, der native Funktionen zum intuitiven Aufrufen eines Python-Skripts aus einem LabVIEW-Blockdiagramm bietet.  Es stellt mit LabVIEW-Funktionen eine Möglichkeit zur Interaktion zwischen den Sprachen mit geringer Latenz bereit. 

Aufruf von Python aus TestStand

Ab TestStand-Version 2019 bietet der mitgelieferte Python-Adapter eine integrierte, konfigurationsbasierte Erfahrung zum Aufrufen von Python-Codemodulen aus Ihren Testsequenzen. Der Adapter basiert auf denselben Konstruktionsprinzipien wie andere TestStand-Adapter und bietet eine Entwicklungserfahrung, die den TestStand-Entwicklern vertraut ist.

Einsatz von Python für VeriStand

Ab VeriStand-Version 2018 enthält das Paket „niveristand“ eine API, die eine Schnittstelle zu VeriStand-Systemen bietet. Dieses Paket wurde von NI erstellt und wird von NI unterstützt.

Weitere Informationen zu niveristand

Python-Skripte in DIAdem

Ab DIAdem 2020 steht Python im Modul SCRIPT als alternative Skriptsprache zu VBS zur Verfügung. Wenn Sie diese Sprache bevorzugen, brauchen Sie nur Python in den SCRIPT-Einstellungen von DIAdem als Skriptsprache zu aktivieren. Wie bei VBS können Sie alternativ Skripte in Python-Syntax aufzeichnen. Der in das Modul DIAdem-SCRIPT integrierte Python-Editor bietet die übliche Autovervollständigungsfunktion sowie Kurzhilfe mit Syntaxinformationen und einer kurzen Befehlsbeschreibung.

  • Installieren von zusätzlichen Python-Modulen für DIAdem 2020
  • Python- und VBS-Skriptbeispiele finden Sie unter NI-Suchmaschine für Beispiele >> Skripte erstellen