DOI QR코드

DOI QR Code

Development of User Interface for High Frequency Digital Oscilloscope based on Python

파이썬기반 고주파 디지털 계측기 사용자 인터페이스 개발

  • Received : 2022.10.19
  • Accepted : 2022.12.09
  • Published : 2022.12.31

Abstract

Recently, with the development of mobile communication technologies such as 5G, interest in oscilloscope technology based on high bandwidth and user-friendly UI is increasing. In this paper, we proposed a Python-based UI(user interface) SW for a high-bandwidth digital oscilloscope in connection with the study of a 13GHz band digital oscilloscope system. The proposed UI SW is designed not only to be executed integrally with the oscilloscope, but also to be run on a separate PC or laptop cooperating with the instrument through WiFi communication. Functions of the UI SW consists of displaying and analyzing signal data, storing signal data in an external storage device, generating test signal data, and reconfiguring the toolbar. Finally, we have shown that the proposed digital oscilloscope system operates normally by interworking test with the signal generator.

최근 5G등 이동통신 기술의 발전과 더불어 고대역 및 사용자 친화적 사용자 인터페이스(user interface) 기반의 오실로스코프 기술에 대한 관심이 증가하고 있다. 본 논문에서는 13GHz 대역의 디지털 계측기 개발과 연계하여 파이썬 기반의 고대역 디지털 계측기를 위한 사용자 인터페이스 SW를 개발하였다. 개발된 디지털 계측기 시스템의 UI SW는 계측기와 일체형으로 실행될 뿐만 아니라 별도의 PC나 노트북에서 실행되면서 계측기와 WiFi 통신을 통해 연동할 수도 있도록 설계되었다. UI SW의 기능은 신호 데이터를 화면에 다양하게 표시하고 분석하는 기능과 외부 저장 장치에 신호 데이터를 저장하는 기능, 시험용 신호 데이터 생성 기능, 툴바 재구성 기능 등으로 구성된다. 그리고 신호 생성기와의 연동 시험을 통해 제안된 디지털 계측기 시스템이 정상적으로 동작함을 보였다.

Keywords

Ⅰ. 서론

최근 5G 서비스 시장이 성장하면서 이와 관련한 시험 및 측정 장비의 국내외 시장 또한 지속적으로 성장할 것으로 전망되며 전기․전자․통신 산업 분야의 대표적인 범용 계측기인 오실로스코프 장비의 경우 Mordor Intelligence에 따르면 2022년부터 2027년까지 연평균 4.59% 성장할 것으로 분석되고 있다.[1][2]

오실로스코프를 포함한 국내 계측기 시장은 높은 개발 비용과 대량 생산의 어려움 때문에 대부분 해외 브랜드의 제품들이 주류를 이루는 특성이 있다. 하지만 계측기 분야는 전기 및 전자 , 정밀 가공 컴퓨터관련 기술 발전에 기반이 되고 타 산업에 파급 효과가 큰 만큼 계측기 국산화를 위한 핵심 기술의 개발이 전략적으로 필요하다.[1][3]

오실로스코프 기술은 5G등 이동통신 기술의 발전과 더불어 고대역 통신 및 디지털 기술을 중심으로 발전할 전망이며 오실로스코프의 사용자 인터페이스(user interface) 측면에서는 터치 기반의 사용자 친화적이고 PC 및 모바일 단말기와 연동하는 형태로 발전할 것이다.[1][4][5][6][10]

본 논문에서는 13GHz 대역의 디지털 계측기 개발 과제를 진행하면서 요소 기술로서 고주파 디지털 계측기를 위한 사용자 인터페이스(UI) SW를 개발하였다. 개발된 계측기 시스템은 일체형 계측기와 노트북, 모바일 단말기[7][8]등 다양한 플랫폼을 지원할 수 있도록 개발되었다. 본 논문에서는 일체형 실시간 계측기와 노트북 플랫폼과 연동하는 형태의 파이썬 기반의 계측기 UI SW를 제안한다. 본 논문의 구성은 2장에서 개발된 계측기 시스템의 UI 설계 및 구현 내용에 대해서 설명하고 3장에서는 연동 시험 결과를 보여주며 마지막으로 4장에서 결론을 맺는다.

Ⅱ. 시스템 설계 및 구현

1. 시스템 구성

본 논문에서 개발한 디지털 계측기 시스템은 그림 1과 같이 실시간 계측기와 RIS(Random Interleaved Sampling) 계측기로 구성된다. 실시간 계측기는 터치스크린이 장착된 일체형 계측기로서 13GHz 대역폭의 임의 신호를 측정할 수 있다. RIS 계측기는 Random Interleaved Sampling 기술을 적용하여 최대 30GHz 대역폭의 주기 신호를 측정할 수 있다. RIS 계측기는 계측기 HW와 UI SW가 분리된 형태를 가지며 UI SW는 PC 또는 노트북에 설치되어 WiFi 통신을 통해 계측기와 연동하면서 동작하는 특성을 가진다.

그림 1에서 계측기 HW는 아래 표 1의 HW 사양으로 구현되어 신호 데이터를 검출한다. 호스트 보드는 Linux 운영체제를 기반으로 계측기 HW를 제어하고 신호 데이터를 획득하기 위한 디바이스 드라이버와 실시간 계측기를 위한 파이썬 UI SW, RIS 계측기를 위한 UI 연동 서버가 구현되어 운영된다. RIS 계측기의 경우 UI SW가 외부 단말기 상에서 실행되므로 RIS 계측기 호스트 보드상에서 실행되는 UI 연동 서버와 WiFi 통신 기반의 연동 프로토콜을 통해 신호 데이터를 수신하고 처리하게 된다.

OTNBBE_2022_v22n6_37_f0001.png 이미지

그림 1. 계측기 시스템 구성도

Fig. 1. Oscilloscope system structure

표 1. 계측기 하드웨어 사양

OTNBBE_2022_v22n6_37_t0001.png 이미지

Table 1. Oscilloscope hardware specification

2. UI SW 개발 환경

계측기 UI SW 개발 도구로는 개방형이며 다양한 표준 및 서드파티 라이브러리 활용이 가능한 파이썬(Python)을 사용하였다. 표 2는 계측기 UI SW 개발에 사용된 파이썬 개발도구 및 라이브러리를 보여준다.[11]

표 2. UI SW 개발 환경

OTNBBE_2022_v22n6_37_t0002.png 이미지

Table 2. UI SW development environment

3. 계측기 UI 연동 서버와 UI SW 간의 연동 프로토콜

그림 2는 RIS 계측기의 UI 연동 서버가 RIS 계측기 HW가 획득한 신호 데이터를 노트북 상에서 실행되는 UI SW에게 전달하는 절차를 보여준다.

OTNBBE_2022_v22n6_37_f0002.png 이미지

그림 2. 계측기와 UI SW 간 연동 프로토콜

Fig. 2. Interface protocol between oscilloscope and UI SW

UI 연동 서버는 복수 개의 UI SW들과 TCP 연결을 설정하고 RIS 계측기 HW에서 획득된 신호 데이터를 각 UI SW의 요청에 따라 전달하는 기능을 수행한다. UISW는 주기적으로 신호 데이터를 UI 연동 서버에 요청할 수 있고 UI 연동 서버는 요청에 대한 응답으로 신호 데이터를 UI SW에 전달한다. UI SW에 수신된 신호 데이터는 사용자의 선택에 따라 화면에 시간 또는 주파수를 기준으로 화면에 표시된다.

그림 3은 UI 연동 서버와 UI SW 간에 주고받는 제어 메시지의 형식(format)을 보여준다. 메시지는 가변 크기를 가지며 STX 필드와 메시지 크기(Msg Len), 메시지 구분자(Msg ID), 신호 데이터(DATA), ETX 필드로 구성된다. 메시지 구분자 필드 값에는 신호 데이터 요청을 위한 MSG_ID_DATA_REQ와 요청 메시지에 대한 신호 데이터 응답을 위한 MSG_ID_DATA_RSP가 있다.

OTNBBE_2022_v22n6_37_f0003.png 이미지

그림 3. 계측기와 UI SW 간의 통신 메시지 구조

Fig. 3. Message structure between oscilloscope and UI SW

4. 적응형 보간(interpolation) 기능 적용 알고리즘

고주파 신호를 다루는 디지털 계측기의 경우 고주파 신호에 대한 충분한 샘플링(sampling)을 수행하기가 어려운 경우에는 획득된 신호 데이터를 화면에 표시했을 때에 신호가 왜곡되는 현상이 발생할 수 있다. 이를 보완하기 위해서 신호 데이터에 보간(interpolation) 기능을 적용하여 신호를 화면에 표시하는 것이 필요한데 대상이 되는 신호 데이터의 량이 많을 수록 보간 작업에 따른 시스템 부하가 커지는 현상이 발생한다.

OTNBBE_2022_v22n6_37_f0004.png 이미지

그림 4. 적응적 보간 기능 적용 방식

Fig. 4. Adaptive interpolation applying method

본 논문에서는 사용자가 화면을 통해 확인하는 신호 데이터의 범위를 고려하여 신호 파형에 왜곡이 발생할 가능성이 있다고 판단될 경우에만 화면에 표시된 신호 데이터를 대상으로 보간 기능을 적응적으로 적용하는 방식을 개발하고 특허 등록 및 UI SW 구현에 반영하였다.[9]

5. 계측기 UI SW 설계 및 구현 내용

가. 계측기 UI SW 화면 구성

OTNBBE_2022_v22n6_37_f0005.png 이미지

그림 5. UI 화면 구성

Fig. 5. UI display layout

계측기 UI SW의 화면은 메뉴 영역과 툴바 영역, 전체 신호 표시 영역, 선택 신호 표시 영역으로 구성된다. 메뉴를 통해 신호 데이터를 수신하기 위해 서버와 연결하는 기능과 신호 데이터를 화면에 다양하게 표시하고 분석하는 기능, 외부 저장 장치에 신호 데이터를 저장하는 기능, 시험 신호 데이터 생성하는 기능, 툴바 재구성 기능을 선택할 수 있다. 툴바 영역에는 메뉴에서 자주 사용되는 기능과 매핑된 그림 아이콘들을 나열하여 사용자가 쉽게 메뉴 기능을 선택할 수 있도록 한다.

전체 신호 표시 영역은 계측기로부터 수신한 신호 데이터 전체를 표시하는 부분이고 선택 신호 표시 영역은 전체 신호 표시 영역에서 사용자가 선택한 일부 신호 데이터 부분을 확대하여 표시하는 부분에 해당한다. 선택 신호 표시 영역의 우측에는 다이얼 모양의 인터페이스를 구현하여 전통적 계측기 인터페이스에 익숙한 사용자가 다이얼을 회전함으로써 신호 데이터의 크기 조절 및 표시 범위 변경이 가능하도록 하였다.

나. 신호 데이터 표시 기능

그림 6는 계측기로부터 수신된 신호 데이터를 화면에 표시하는 기능을 보여준다. 최대 2개 채널의 신호 데이터를 화면에 표시할 수 있으며 채널 선택 버튼을 통해 해당 채널의 신호 데이터를 선택적으로 화면에 표시할 수 있다.

OTNBBE_2022_v22n6_37_f0006.png 이미지

그림 6. 신호 데이터 표시

Fig. 6. Displaying signal data

다. 적응형 보간 적용 기능

그림 7은 수신한 신호 데이터 전체에 대해서 보간 함수를 적용하는 것이 아니라 주파수와 샘플링률, 화면에 표시되는 신호의 데이터의 량을 고려하여 화면에 표시된 신호 데이터에 대해서만 적응적으로 보간 함수를 적용하는 방식을 구현한 결과를 보여준다. 그림 7 (b)의 경우는 신호를 좀 더 자세히 보기 위해서 관측 시간 범위를 줄였을 때 화면에 표시된 신호 데이터에 대해서 보간 함수가 적용되어 신호가 좀 더 자연스럽게 표시되는 모습을 보여준다

OTNBBE_2022_v22n6_37_f0007.png 이미지

그림 7. 적응형 보간 적용 기능

Fig. 7. Applying adaptive interpolation

라. FFT 분석 기능

그림 8은 신호 데이터에 대한 FFT 결과를 보여준다. 최대 2개 채널까지의 FFT 분석 결과를 동시 또는 선택적으로 보여줄 수 있다.

OTNBBE_2022_v22n6_37_f0008.png 이미지

그림 8. FFT 신호 분석 결과 표시

Fig. 8. Displaying FFT signal analysis result

마. 신호 데이터 저장

OTNBBE_2022_v22n6_37_f0009.png 이미지

그림 9. 신호 데이터 저장

Fig. 9. Saving signal data

실시간 또는 RIS 계측기는 화면에 표시된 신호 데이터를 외부 저장 장치에 별도 파일로 저장할 수 있고 필요에 따라서 원하는 파일을 열어서 신호를 확인할 수 있다.

Ⅲ. 연동시험 결과

개발된 계측기 UI SW의 동작을 확인하기 위해서 신호 생성기(signal generator)를 실시간 계측기 및 RIS 계측기와 연동하여 생성된 신호를 UI SW가 정상적으로 보여주고 분석하는 지를 확인하였다.

1. 시험 환경 및 시험 방법

그림 10은 연동시험을 수행하는 시험 환경을 보여준다. 신호 생성기를 1GHz 신호를 생성하도록 설정하고 개발된 UI SW를 통해 신호가 정상적으로 화면에 표시되는 지와 FFT 신호 분석을 통해 결과가 1GHz로 표시되는 지를 확인하였다. 그리고 UI SW의 신호 데이터 저장 기능을 확인하였다.

OTNBBE_2022_v22n6_37_f0010.png 이미지

그림 10. 시험 환경

Fig. 10. Test environment

2. 시험 결과

가. 신호 데이터 확인

그림 11에서는 실시간 계측기와 RIS 계측기 상에서 계측기 HW로 부터 수신한 신호 데이터를 화면에 정상적으로 표시하는 모습을 보여준다. 신호 생성기로 부터 1GHz 신호가 생성되어 각 계측기와 연결되어 있으므로 UI SW에 표시된 신호 파형의 1 주기 간격을 확인함으로써 정상적으로 신호 데이터를 표시하고 있음을 확인하였다

OTNBBE_2022_v22n6_37_f0011.png 이미지

그림 11. 신호 데이터 확인 화면

Fig. 11. Testing of displaying signal data

나. 신호 데이터의 FFT 분석 결과 확인

그림 12는 실시간 계측기와 RIS 계측기의 수신한 신호 데이터에 대한 FFT 분석 결과를 보여준다. 신호 생성기로 부터 1GHz 신호가 생성되어 각 계측기와 연결되어 있기 때문에 UI SW에 표시된 신호 FFT 결과를 통해 1GHz 대역 부분에서 피크(peek)를 확인함으로써 정상적으로 신호데이터에 대한 FFT 분석이 수행됨을 확인하였다.

OTNBBE_2022_v22n6_37_f0012.png 이미지

그림 12. 신호 데이터 FFT 분석 확인 화면

Fig. 12. Testing of displaying signal data FFT analysis

다. 신호 데이터 저장 기능 확인

그림 13에서는 저장 메뉴를 통해 신호 데이터를 별도 저장 장치에 저장할 수 있음을 보여준다.

OTNBBE_2022_v22n6_37_f0013.png 이미지

그림 13. 신호 데이터 저장 기능 확인 화면

Fig. 13. Testing of saving signal data

Ⅳ. 결론

본 논문에서는 13GHz 대역의 실시간 계측기와 30GHz 대역의 RIS 계측기를 위한 파이썬 기반의 UI SW를 개발하였다. 실시간 계측기를 위한 UI SW는 계측기 일체형 터치스크린을 기반으로 동작하고 RIS 계측기를 위한 UI SW는 별도의 PC나 노트북 상에서 실행되면서 계측기와 WiFi로 연동하며 동작한다. UI SW는 계측기로부터 최대 2개 채널의 신호 데이터를 수신하여 화면에 표시할 수 있으며 FFT 결과 표시 및 외부 저장 장치에 신호 데이터 저장, 시험용 신호 데이터 생성, 툴바 재구성 등의 기능을 수행한다. 또한 적응적 보간 적용 기법을 개발하여 효율적으로 신호 데이터를 대상으로 보간 함수를 적용한다. 그리고 신호 생성기와의 연동 시험을 통해 제안된 계측기 UI SW가 정상적으로 동작함을 보였다.

References

  1. Yoo-Deok Seo, "The measuring instrument market and technology trend in the 4th industrial era represented by 5G", TechWorld Online News, 2021.
  2. "Oscilloscope market - growth, trends, covid-19 impact, and forecasts(2022-2027)", Mordor Intelligence, 2021.
  3. Hee-Seong Kim, "Securing a share in the domestic market based on the domestic demand for measuring instruments", HelloT, 2016.
  4. Rick Nelson, "Mobile apps help you buy and use test equipment", EE-Evaluation Engineering, Vol. 53, Issue 9, 2014.
  5. Chris Delvizis, "Next-generation instruments for Generation Y", Instrumentation technology, 2014.
  6. Ji-Sun Kim, Hyo-Kyung Bahn, "Analysis of Users' Gestures by Application in Smartphone Touch Interfaces", The Journal of The Institute of Internet, Broadcasting and Communication, Vol. 15 No. 2, pp.1-7, 2015. DOI: https://doi.org/10.7236/JIIBC.2015.15.2.9
  7. Eui-Hoon Jeong, Ye-Ree Park, Ga-Won Lee, Dong-Seon Moon, Han-Sol Jung, "A Study on Development of a Android App-based Digital Oscilloscope User Interface", 2017 KICS conference proceeding, Vol. 2017, No. 11, pp. 363-364, 2017.
  8. Ik-Hyeon Son, So-Hyun Jang, Eui-Hoon Jeong, "A Study on Development of an iPhone App-based Digital Oscilloscope User Interface", 2019 KICS conference proceeding, Vol. 2019, pp. 927-928, 2019.
  9. Eui-Hoon Jeong, Yong-Sik Kim, "Method and apparatus for processing measured signal for high frequency oscilloscope", Patent registration number 10-2097223, 2020.
  10. Jeong-Hye Park, "Self-Awareness and Coping Behavior of Smartphone Dependence among Undergraduate Students", Journal of the Korea Academia-Industrial cooperation Society, Vol. 22 No. 2, pp. 336-344, 2021. DOI: https://doi.org/10.5762/KAIS.2021.22.2.336
  11. Il-Kyu Hwang, Byung-Ju Kim, "Implementation of GUI-based Physical Computing System with Arduino for the Novice Education", Journal of KIIT, Vol. 20 No. 8, pp. 29-39, 2022. DOI: http://dx.doi.org/10.14801/jkiit.2022.20.8.29