728x90
반응형
파워메터 (Power Meter)를 PyVISA를 이용하여 측정 데이터를 가져오는 방법을 알아 보겠습니다.
먼저 예제 코드를 보면 다음과 같습니다.
from pyvisa import ResourceManager
host, port = '192.168.0.11', 0
conn_str = f'TCPIP{port}::{host}::INSTR'
rm = ResourceManager(r'C:\WINDOWS\system32\visa64.dll') # VISA 객체를 생성합니다.
print(f'PowerMeter {host}:{port} connecting...')
power_meter = rm.open_resource(conn_str)
print (power_meter.query('*IDN?'))
power_meter.write(f':SENS:FREQ 50MHz')
power_meter.write(f':SENS:SPE 20')
power_str = power_meter.query(f':FETC?')
print(f'{type(power_str)}')
print(f'{power_str=}')
power = float(power_str)
print(f'{power=}')
power_meter.close()
- 1줄 : VISA 연결을 위하여 ResourceManager 클래스를 임포트합니다.
- 6줄 : VISA 객체를 생성합니다.
- 9줄 : 설정한 파워메터(192.168.0.11)와 연결합니다.
- 11줄 : 파워메터의 정보를 출력합니다.
- 13줄 : 파워를 측정할 주파수를 설정합니다.
- 15줄 : 측정된 파워값 (dBm)을 읽어옵니다.
- 22줄 : 파워메터와의 연결을 종료합니다.
주의할 점은 파워메터에서 가져온 측정값은 부동소수점 문자열입니다. 실수 연산을 위해서는 실수형으로 형변환을 해주어야 합니다.
시험한 파워메터 : N1912A, E4418B
'프로그래밍 > Python' 카테고리의 다른 글
[python-VISA] 잡음지수 분석기의 측정값 읽어오기 (0) | 2023.09.05 |
---|---|
[python] 각종 옵션/설정 정보를 JSON으로 다루기 (0) | 2023.09.04 |
[Python] GPIB 를 통한 계측기 제어 실패기 (0) | 2023.08.29 |
[Python] 의도치 않은 모든 예외 기록 처리하기 (0) | 2023.08.14 |
[Python] Python 3.11에서 PySide2 설치 오류 문제 (0) | 2023.07.22 |