이 문서는 PXI, CompactDAQ, CompactRIO, LabVIEW, TestStand 및 VeriStand를 포함하여 NI 하드웨어 및 소프트웨어 플랫폼과 함께 Python을 사용할 수 있도록 National Instrument 도구에 대한 개요를 제공합니다. 각 Python 도구에 대해, 설치 방법, 지원 환경, API 참조 및 예제는 링크된 문서를 참조하십시오.
오픈 소스 개발자와 NI는 하위 레벨 c타입 함수 호출을 단순화된 API로 추출하는 모듈을 생성하여 NI 하드웨어와 Python의 통합을 쉽게 만들었습니다. 다음 링크는 NI 하드웨어 드라이버용으로 작성된 Python 래퍼에 대한 문서 리소스로 연결됩니다.
nimi-python 저장소는 기본 NI 모듈형 계측기 드라이버에 대한 인터페이스를 제공하는 Python 모듈 모음입니다. 현재 NI는 이 패키지를 통해 PXI 오실로스코프, 파형 발생기, DMM, SMU, 전원 공급 장치, 스위치 및 디지털 패턴 계측기를 위한 Python 지원을 제공합니다. 이 계측기는 다음 드라이버를 사용합니다.
모듈형 계측기 |
드라이버 |
Python 모듈 |
---|---|---|
NI-SCOPE |
niScope |
|
NI-FGEN |
niFgen |
|
NI-DMM |
niDMM |
|
NI-DCPower |
nidcpower |
|
NI-SWITCH |
niswitch |
|
NI-Digital Pattern Driver |
nidigital |
nidaqmx 패키지에는 NI 데이터 수집(DAQ) 디바이스와 통신하는 데 필요한 NI-DAQmx 드라이버와 상호 작용하기 위한 API가 포함되어 있습니다. 이 패키지는 NI에서 작성하였으며, NI가 지원합니다. 이 패키지는 ctypes Python 라이브러리를 사용하여 NI-DAQmx C API를 중심으로 복잡하고 객체 지향이 강한 래퍼로 구현됩니다.
pyVirtualBench 라이브러리는 C API를 래핑하여 기본 VirtualBench 드라이버에 대한 인터페이스를 제공합니다.
참고: pyVirtualBench는 타사 래퍼이며, NI에서 직접 지원하지 않습니다.
NI 의 FPGA 인터페이스 Python API는 NI CompactRIO, NI Single-Board RIO, NI FlexRIO 및 NI R Series 다기능 RIO와 같은 NI 재구성 가능 I/O(RIO) 하드웨어 내에서 프로세서와 FPGA 간의 통신에 사용됩니다.
FPGA 인터페이스 Python API를 사용하면, 개발자는 LabVIEW FPGA를 사용하여 NI 하드웨어 내에서 FPGA를 프로그래밍하고 호스트 컴퓨터에서 실행되는 Python과 통신할 수 있습니다. 이를 통해 Python 전문 지식을 갖춘 엔지니어와 과학자는 컴파일된 LabVIEW FPGA 비트 파일을 활용할 수 있으며, 기존 Python 코드를 재사용할 수 있는 옵션도 있습니다.
FPGA Interface Python API에 대해 더 알아보기
nivision 라이브러리는 NI Vision의 기능을 Python 프로그래밍 언어로 제공하는 NI 이미지/비전 처리 라이브러리입니다. Windows 및 CompactRIO를 포함한 여러 플랫폼에서 사용할 수 있습니다.
참고: pyVirtualBench는 타사 래퍼이며, NI에서 직접 지원하지 않습니다.
nidaqmx에 대해 자세히 알아보기
nixnet 패키지에는 NI-XNET 드라이버와 상호 작용을 위한 API가 포함되어 있습니다. NI-XNET는 NI-XNET CAN, LIN, FlexRay PCI, PXI 및 NI C 시리즈 인터페이스를 구동하는 드라이버 소프트웨어 기술입니다. nixnet 패키지 및 NI-XNET는 NI에서 지원합니다.
nixnet에 대해 자세히 알아보기
PyVISA는 NI-VISA 드라이버와 상호 작용을 위한 API를 포함하는 Python 패키지입니다. NI-VISA를 사용하면, 인터페이스(예, GPIB, RS232, USB, 이더넷)와 별개로 측정 장비를 제어할 수 있으며 NI 시리얼, GPIB 및 이더넷 PCI, PXI, USB 및 NI C 시리즈 인터페이스의 드라이버 소프트웨어 기술입니다.
참고: PyVISA는 타사 래퍼이며, NI에서 직접 지원하지 않습니다.
직관적인 API가 설치된 Python 모듈이 많은 장치와 하드웨어 통신을 목적으로 존재하지만, 개발자는 대부분의 하드웨어 드라이버와 함께 제공되는 C API를 사용하여 Python 코드를 하드웨어와 통합합니다. ctypes 모듈을 통해 Python과 함께 NI 하드웨어를 사용하는 경우에도 동일한 방법을 적용할 수 있습니다. 이 솔루션은 Python 스크립트를 대부분의 하드웨어 구성 요소와 통합할 수 있는 직관적인 방법을 제공합니다.
LabVIEW는 ctypes 모듈을 사용하여 하드웨어 드라이버의 C API에 액세스할 수 있을 뿐만 아니라, Python에서 호출할 수 있는 하드웨어 API 함수로 구성된 DLL을 생성할 수 있습니다. 이와 동일한 절차를 통해, 개발자는 일련의 하드웨어 상호 작용을 DLL 파일에 저장된 단일 함수 호출로 추출할 수 있습니다.
LabVIEW 2018에는 Python 노드가 도입되었습니다. 이 노드는 LabVIEW 블록 다이어그램에서 Python 스크립트를 직관적으로 호출할 수 있는 기본 기능을 제공합니다. 이는 LabVIEW 프리미티브를 사용하여, 대기 시간이 짧은 언어 간 상호 운용 방법을 제공합니다.
포함된 Python Adapter는 TestStand 2019부터 테스트 시퀀스에서 Python 코드 모듈을 호출할 수 있는 통합된 구성 기반 환경을 제공합니다. 어댑터는 다른 TestStand 어댑터와 동일한 설계 원칙에 따라 구축되어, 기존 TestStand 개발자에게 익숙한 개발 경험을 제공합니다.
VeriStand 2018부터 niveristand 패키지에는 VeriStand 시스템과 인터페이스하는 API가 포함됩니다. 이 패키지는 NI에서 작성하였으며, NI가 지원합니다.
niveristand 자세히 알아보기
DIAdem 2020부터 VBS를 대체할 수 있는 스크립트 언어로 Python을 SCRIPT 모듈에서 사용할 수 있습니다. Python을 사용하려면 DIAdem SCRIPT 설정에서 Python을 스크립트 언어로 활성화하기만 하면 됩니다. VBS와 마찬가지로 Python 구문으로 스크립트를 기록할 수도 있습니다. SCRIPT 패널에 통합된 Python 편집기는 일반적인 자동 완성 기능과 구문 정보 및 간단한 명령 설명이 포함된 도구 설명을 제공합니다.