본문 바로가기

리골 제품소개/오실로스코프

Chapter 22. 오실로스코프 PC로 제어하기 (Python) [오실로스코프, 리골이 알려줄게]

오늘은 오늘은 Python과 SCPI 명령어를 활용해 RIGOL DHO914S 오실로스코프에서 파형 데이터를 수집하고 시각화하는 방법을 소개합니다. 이전 LabVIEW 실습에서 경험했던 내용과 유사하지만, 이번엔 Python을 통해 보다 유연하게 자동화해보는 실습입니다.

 

 

 

준비 과정

 

실험에 사용한 장비 - RIGOL DHO914S 오실로스코프

 

1. 장비 연결 — 오실로스코프와 PC를 USB A-B 케이블로 연결

2. 드라이버 설치 — NI VISA 드라이버를 설치해 장비 인식

3. 통신 확인 — NI MAX로 장비가 정상적으로 인식됐는지 확인하고, *IDN? 명령어로 테스트

 

 

 

 

Python 환경 설정

- 필수 라이브러리 설치

 

 

pip install pyvisa matplotlib numpy

 

개발환경 초기화 후, Jupyter Notebook으로 실습 시작

 

import pyvisa

rm = pyvisa.ResourceManager()

print(rm.list_resources())

 

VISA로 장비 연결 확인

 

 

 

 

SCPI 명령어를 활용한 파형 데이터 요청 순서

 

scope.write(':WAV:SOUR CHAN1') #채널설정

scope.write(':WAV:MODE MAX') #모드설정

scope.write(':WAV:FORM BYTE') #데이터 포맷 설정

data = scope.query_binary_values(':WAV:DATA?', datatype='B') #데이터 요청

 

이 명령어들은 Python의 PyVISA를 통해 순차적으로 오실로스코프에 전달됩니다.

 

 

수집 데이터의 처리

 

  • TMC 포맷 헤더를 파싱해 유효한 데이터 추출
  • np.frombuffer()를 사용하여 NumPy 배열로 변환
  • Y축, X축 변환 계수 명령어를 통해 실제 전압, 시간값으로 변환

 

 

데이터 시각화

Matplotlib를 활용해 실시간으로 파형을 그려 Python에서도 오실로스코프처럼 확인할 수 있습니다.

파형을 보기 위한 핵심 코드는 다음과 같습니다.

 

 

plt.plot(x_data, y_data)

plt.title('Captured Waveform')

plt.grid(True)

plt.show()

 

확인해보면 오실로스코프 화면과 같은 데이터가 들어오는 것을 확인할 수 있습니다.

 

 

 

파이썬(Python)을 활용한 PC로 오실로스코프 제어하기에 대한 자세한 정보는 아래 영상을 참고해 주세요!

 

 


 

Python으로 오실로스코프 자동화, 어렵지 않습니다!

 

 

 

처음엔 다소 복잡해 보여도, 한 번만 익혀두면 누구나 손쉽게 활용할 수 있는 Python + SCPI 조합!

RIGOL의 SCPI 가이드와 Python의 유연함을 잘 활용하면 자동화와 데이터 분석 모두 놓치지 않을 수 있습니다.

 

  • 파형을 직접 측정하러 가지 않아도 실시간으로 데이터 확보
  • 반복 측정 업무에서 큰 시간 절약
  • 저장한 데이터를 기반으로 보고서 작성도 간편
  • 향후 AI 분석 모델 연계 가능성

 

이번 실습을 통해 Python으로 자동화하는 방법의 기초를 익히셨다면, 앞으로의 심화된 커맨드 활용에도 자신 있게 도전해보세요! 실험에 사용한 장비에 대한 자세한 정보는 RIGOL 공식 홈페이지를 통해 확인해 주세요!

 

 

>> ROGOL 제품 구매하러 가기

>> RIOGL 공식 홈페이지 방문하기

 

문의사항 : 리골코리아 02-6953-4466, info.kr@rigol.com