
저가형 압전 센서를 이용한 주파수 영역 기반 유도전동기 고장 진단 시스템 구현
초록
본 논문에서는 저가형 압전 센서를 이용하여 주파수 영역에서 유도전동기의 고장을 진단하는 시스템을 구현하였다. 정상, 회전자 고장 및 베어링 고장 상태의 유도전동기를 가진 시뮬레이터를 활용하여 진동 데이터를 수집하였고, 수집된 데이터를 주파수 영역으로 변환하기 위해 FFT(Fast Fourier Transform)를 적용하였다. 변환된 주파수 영역의 데이터를 입력 벡터로 하여 MNN(Multilayer Neural Network)과 1D-CNN(1D-Convolutional Neural Network) 모델을 구성하고, 두 모델 간 분류 성능을 비교하는 컴퓨터 시뮬레이션을 수행하였다. 또한, 학습된 모델을 기반으로 Raspberry Pi와 GUI를 활용한 실시간 고장 진단 프로그램을 개발하였으며, 실제 환경에서 진단 성능을 분석함으로써 저가형 하드웨어 기반에서도 효과적인 고장 진단 시스템을 구현할 수 있음을 실험적으로 검증하였다.
Abstract
In this study, a fault diagnosis system for induction motors was developed using a low-cost piezoelectric sensor in the frequency domain. Vibration data were collected from a simulator equipped with induction motors in normal, rotor fault, and bearing fault conditions. The collected data were transformed into the frequency domain using the Fast Fourier Transform (FFT). The resulting frequency-domain vectors were used as inputs to construct a Multilayer Neural Network (MNN) and a 1D-Convolutional Neural Network (1D-CNN), and their classification performances were compared through computer simulations. Furthermore, a real-time fault diagnosis program was implemented using Raspberry Pi and a Graphical User Interface (GUI) based on the trained models. Experimental results confirmed that an effective fault diagnosis system can be achieved even with low-cost hardware platforms.
Keywords:
induction motor, fault diagnosis, raspberry pi, piezoelectric sensor, CNN, MNN, FFTⅠ. 서 론
유도전동기는 현대 산업에서 중요한 구성 요소 중 하나로, 대부분의 산업 분야에서 광범위하게 사용되고 있다. 그러나 유도전동기의 사용이 증가함에 따라, 현장에서의 장시간 운전과 기계적 부하에 지속적으로 노출되며 고장 또한 급증하고 있다[1]. 유도전동기의 고장 분포에서 베어링 관련 고장이 약 51%로 가장 큰 비중을 차지하며, 고정자 권선 및 외부 요인에 의한 고장이 각각 약 16%, 회전자 고장이 약 5%, 기타 고장이 약 12%를 차지한다[2]. 그러므로 유도전동기의 고장을 진단하고 대응하기 위한 진단 장치가 필요하다[3].
하지만 정밀한 고장 진단 장치의 경우 장치 자체 가격이 고가일 뿐 아니라, 전원 공급 장치, 고감도 센서 등 여러 구성 요소들이 추가적으로 필요한 경우가 대부분이므로 전체 시스템의 구축 비용과 설치 공간이 더욱 증가한다는 단점이 있다. 또한, 고장 진단 장치 대개는 LabVIEW와 같은 고유의 소프트웨어를 기반으로 작동되며, 사용법이 복잡하고 전문적인 교육, 또는 경험이 요구되는 경우가 많다. 따라서, 비용적인 부담과 복잡한 운용 절차 없이 일정 수준 이상의 진단 성능을 확보할 수 있는 기술에 대한 연구가 요구된다.
본 논문에서는 저가형 피에조 압전 센서(Piezoelectric sensor)[4]를 통해 유도전동기의 진동 데이터를 수집한 후 이를 효과적으로 해석하기 위해 주파수 영역(Frequency domain)분석을 수행하였다. 주파수 영역 분석은 푸리에 변환(Fourier transform)[5]을 기반으로 시간 영역 진동 데이터를 다양한 주파수 성분으로 분해하고 각 성분의 스펙트럼 분포를 분석한다. 특히 베어링 고장, 편심, 회전자 고장 등은 각 고장 유형별로 고유 주파수 성분을 가지기에 시간 영역 분석에 비해 고장을 명확하게 나타낼 수 있다는 장점이 있다.
이러한 데이터 분석을 기반으로, 최근에는 주파수 영역 분석을 기계 학습(Machine learning) 알고리즘과 결합하여 고장을 진단하는 기법이 활발히 연구되고 있다. 과거 수학적 모델 및 사용자 검토 기반의 진단 방식과는 달리, 기계 학습을 통한 고장 진단은 비선형 시스템의 복잡한 데이터를 학습하는 것이 가능하며 장비에 대해 높은 수준의 사전 지식을 필요로 하지 않는다는 장점이 있다.
본 논문에서는 다층 신경망(MNN, Multilayer Neural Network)[6]과 1차원 합성곱 신경망(1D-CNN, 1D-Convolutional Neural Network)[7]을 적용한 컴퓨터 시뮬레이션을 통해 고장 진단 성능을 비교한다.
또한 시뮬레이션 결과를 바탕으로 추론 모델과 데이터 수집, 결과 출력 기능이 있는 GUI(Graphical User Interface)를 Raspberry Pi로 구현하여 실제 환경에서 실시간 고장 진단에 대한 분류 가능성을 확인하였다.
Ⅱ. 유도전동기 고장 진단 알고리즘
제안된 유도전동기 고장 진단 알고리즘은 그림 1과 같다. 유도전동기에서 발생한 진동 데이터를 수집하여 저장한 후 FFT를 적용하여 시간 영역 데이터를 주파수 영역으로 변환한다. 변환된 데이터는 1D-CNN에 입력으로 사용되어 각 고장 유형을 분류하고 그 결과를 분석한다. 마지막으로 학습 모델을 기반으로 한 추론 모델을 만들어 실시간 고장 진단을 수행하며, GUI를 통해 사용자에게 결과를 출력하도록 하였다.
2.1 고장 진단 데이터 획득
진동 데이터 수집을 위한 실험 장비는 그림 2에 제시되어 있으며, 유도전동기 시뮬레이터는 정상 상태, 회전자 고장 상태, 베어링 고장 상태의 세 유도전동기로 구성되어 있다. 각 유도전동기의 수직 상단에 압전 센서를 부착하였으며, 이를 통해 진동 데이터를 수집하였다.
압전 센서에서 출력되는 신호는 아날로그 형태이므로, 이를 디지털 신호로 변환하여야 한다. 그러나 Raspberry Pi는 아날로그 신호의 디지털 변환 기능을 지원하지 않기 때문에, ADC(Analog to Digital Converter)인 ADS1115[8] 모듈을 사용하였다. 데이터는 ADS1115의 최대 전송 속도인 860sample/sec로 회당 약 200초간 측정되었으며, 해당 모듈은 압전 센서로부터 수집된 아날로그 신호를 디지털 신호로 변환하여 Raspberry Pi로 전송한다. 각 상태(정상, 회전자 고장, 베어링 고장)별로 3회씩 총 9회 측정을 수행하였으며, 이로부터 9개의 파일을 확보하여 실험 데이터를 구성하였다.
2.2 FFT 기반 데이터 변환
실제 산업 현장에서 다양한 기계적 외란이나 노이즈로 인해 시간 영역에서의 해석만으로는 고장 여부를 명확히 판단하기 어렵다. 따라서 본 논문에서는 주파수 영역으로 변환하여 신호를 분석하는 방법을 사용하였다.
신호를 주파수 성분으로 분해하는 방법으로는 푸리에 급수(Fourier series)나 푸리에 변환(Fourier transform)이 일반적으로 사용된다. 그러나 이러한 방법은 연속 신호를 대상으로 하며, 실제 센서를 통해 수집된 진동 데이터는 이산화된 샘플(Discrete signal)이기 때문에 이산 푸리에 변환(Discrete Fourier transform)이 적용된다.
| (1) |
이산 푸리에 변환은 식 (1)과 같이 정의되며, 시간 신호 x[n]을 복소 지수 함수의 내적을 통해 주파수 성분 X[k]로 분해한다. 여기서 N은 세그먼트 내 샘플 수이며, k는 주파수 인덱스를 나타낸다.
일반적으로 실수(Real-valued) 신호에 대해 DFT 결과는 켤레 대칭성(Conjugate symmetry)을 가지며, 이는 전체 스펙트럼의 절반만으로도 신호의 주파수 정보를 충분히 표현할 수 있음을 의미한다.
하지만 DFT의 계산 복잡도는 O(N)2으로, 샘플 수에 따라 추가적인 버퍼가 요구되어 계산 속도가 떨어지는 단점이 있다. 이에 본 논문에서는 계산 복잡도를 O(N log N)수준으로 줄여줘 데이터 계산 속도와 메모리 효율을 높인 FFT(고속 푸리에 변환)를 사용한다.
본 논문에서는 수집된 진동 데이터를 1초 단위(=860 sample)로 세그먼트화 한 후 FFT를 수행하였으며, 복소수 결과에서 크기(Magnitude) 성분만을 특징 벡터로 추출하여 분류기의 입력으로 사용하였다. 각 상태의 1초 단위 FFT 결과는 그림 3에 나타나 있다.
2.3 신경 회로망 기반 고장 분류기
본 논문에서는 다층 신경망(MNN)을 이용해 유도전동기 고장 진단을 실시한다. 그림 4는 MNN의 기본 구조를 나타낸 것으로, 본 논문에 사용된 모델은 입력층과 두 개의 은닉층, 출력층으로 구성되었다. 입력층의 노드 수는 FFT 결과로 추출한 주파수 성분의 개수인 430개이며, 은닉층은 각각 128개, 64개의 노드로 구성된다. 활성화 함수로는 기울기 소실 문제가 완화되는 장점을 가진 ReLU 함수[9]를 사용하였으며, 학습 알고리즘으로는 매개변수의 변화량에 따라 학습률을 조절하는 RMSprop 기법과 학습 시 탐색 경로가 지그재그가 되는 것을 방지하기 위한 Momentum 기법을 조합하여 만든 Adam[10]을 사용했다. 학습률은 Adam 알고리즘에 적합한 기본값인 0.001로 설정하였으며, batch size는 16, 총 20 epoch에 걸쳐 학습을 수행하였다.
1D-CNN은 1차원 데이터를 효과적으로 처리할 수 있는 CNN 구조로, 얕은 계층 깊이와 작은 필터 크기만으로도 안정적인 분류 성능을 보이며 CPU 환경에서도 실시간 동작이 가능할 만큼 연산량이 낮다는 장점이 있다. 그림 5는 1D-CNN의 기본 구조를 나타낸다.
본 논문에서는 Grad-CAM(Gradient-weighted Class Activation Mapping)[11] 기법을 적용해 고장 분류 시 모델이 주목한 영역을 시각적으로 확인하였으며, 이를 바탕으로 1D-CNN의 커널 크기를 결정하였다.
시각화된 활성화 맵의 x축은 convolutional layer의 출력 feature map의 index를, y축은 각 상태(정상, 로터 고장, 베어링 고장)별 테스트 데이터 샘플의 index를 의미하며, 색상이 밝게 나타날수록 해당 영역이 분류에 더 큰 기여를 했음을 나타낸다.
본 논문에서는 첫 번째 convolutional layer에 대해 크기를 8로 고정한 상태에서 커널 크기 3과 5를 각각 적용하여 Grad-CAM을 통해 각 모델의 활성화 영역을 비교하였다. 그 결과, 그림 6에서 볼 수 있듯이 커널 3을 적용한 모델의 경우 정상 상태는 약 1~50 index, 150 index 부근에서 활성화가 집중되며, 회전자 고장 상태는 200 index 이상의 영역에서 활성화가 강하게 나타나는 것을 확인할 수 있다. 베어링 고장 상태는 정상, 회전자 고장 상태의 스펙트럼과는 다른 분포 형태로 약 150 index 이상의 영역에서 활성화가 강하게 나타났다. 이처럼 커널 크기 3에서는 각 상태의 활성화 대역과 스펙트럼 분포 차이가 명확한 것을 확인할 수 있다.
Grad-CAM activation maps of the first convolutional layer according to kernel size (a) Kernel size 3, Normal, (b) Kernel size 3, Rotor fault, (c) Kernel size 3, Bearing fault, (d) Kernel size 5, Normal, (e) Kernel size 5, Rotor fault, (f) Kernel size 5, Bearing fault
반면, 커널 크기 5의 시각화 결과에서는 정상과 회전자 고장 상태의 경우 커널 3에서의 시각화 결과와 유사한 분포를 보였으나 베어링 고장 상태의 경우 전반적으로 활성화가 낮게 나타나 주요 특징이 명확히 드러나지 않는 한계를 보였다. 따라서 본논문에서는 convolutional layer의 커널 크기를 3으로 결정하였다. 모델은 동일한 구조의 convolutional layer 두 층과 dense layer(64 units)로 구성하였다. 각 층에는 ReLU 활성화 함수를 적용하였으며, 최적화 알고리즘으로는 Adam을 사용하였다.
Ⅲ. 컴퓨터 시뮬레이션 및 실험 결과
3.1 컴퓨터 시뮬레이션
데이터는 초기 구간의 불안정한 데이터를 제거하기 위해 30초부터 200초까지의 구간만을 분석에 사용하였다. 각 상태에서 170개의 세그먼트를 얻었으며, 각 상태별로 3회 측정을 수행하여 510개의 세그먼트를 확보하였다. 이 중 70%는 train data로, 나머지 30%는 test data로 사용하였다. 분류 결과, 그림 7과 같이 MNN 모델과 1D-CNN 모델 모두 100%의 분류 정확도를 보이며 두 모델 모두 안정적인 성능을 나타내는 것을 확인하였다.
또한 5-fold로 구성된 k-fold 교차 검증을 통해 두 모델의 일반화 성능을 평가한 결과, MNN 모델과 1D-CNN 모델 모두 각 fold에서 100%의 정확도를 보였다. 이는 수집된 데이터셋 내에서는 매우 안정적인 분류가 가능함을 의미하지만, 실제 환경에서의 분류 성능을 평가하기 위해서는 추가적인 실험이 요구된다.
3.2 실험 결과
컴퓨터 시뮬레이션 결과를 바탕으로 실제 추론 시스템과 GUI를 구현하였다. Raspberry Pi와 압전 센서를 활용하여 1분간 실시간 데이터를 수집하였으며, 이를 1초 단위로 세그먼트화한 뒤 FFT를 적용하여 주파수 영역의 입력 벡터를 생성하였다. 이후 생성된 데이터를 추론 모델의 입력으로 사용하여 고장 유형을 분류하였다.
고장 상태의 안정적 유도를 위해, 각 유도전동기는 1분간 사전 작동 과정을 거친 후 추론을 실시하였으며, 수집된 진동 데이터와 추론 결과는 엑셀 파일(.xlsx) 형태로 저장되도록 구현하였다.
추론 모델을 적용한 프로그램으로 검증을 실시한 결과, 그림 8과 같이 두 모델 모두 정확한 분류 결과가 출력되는 것을 확인할 수 있다. 그러나 추론 결과에 저장된 60개의 세그먼트를 분석한 결과, 표 1에서 볼 수 있듯이 1D-CNN 모델은 각 고장 상태별로 모든 세그먼트에서 예측이 일치하여 100%의 정확도를 보였다.
Inference model classification performance (a) Normal classification result, (b) Rotor fault classification result, (c) Bearing fault classification result
반면, MNN 모델은 정상 및 베어링 고장 상태에서 100%의 정확도를 보였지만, 회전자 고장 상태에서는 60개의 세그먼트 중 59개만 정확히 분류하여 98.33%의 정확도를 보였다.
따라서 컴퓨터 시뮬레이션에서는 두 모델 모두 100%의 성능을 보였으나, 실시간 측정에서는 1D-CNN 모델이 MNN 모델에 비해 높은 분류 정확도를 가지는 것을 확인할 수 있다.
또한 실시간 시스템 적용 가능성 분석을 위해 Raspberry Pi 환경에서 FFT 수행 시간 및 각 모델의 세그먼트별 평균 처리 시간을 측정하였다. 그 결과, FFT 수행 시간은 0.00013sec/segment로 실시간 측정에는 문제가 없음을 확인하였다.
추론 시간의 경우, MNN 모델은 0.767sec/segment, 1D-CNN 모델은 0.768sec/segment로 두 모델 간 처리 시간은 거의 동일한 수치를 보이는 것을 알 수 있다.
Ⅳ. 결론 및 향후 과제
본 논문에서는 경량화된 1D-CNN 모델을 기반으로 저가형 압전 센서와 Raspberry Pi로 구성된 저비용 하드웨어에서도 높은 고장 진단 정확도를 확보할 수 있음을 입증하였다.
컴퓨터 시뮬레이션 결과 MNN 모델과 1D-CNN 모델 모두 100%의 우수한 분류 성능을 보였지만 실시간 추론 데이터를 분석한 결과, 회전자 고장 상태에서 1D-CNN 모델이 MNN 모델 대비 1.67% 높은 정확도 수치를 보이며 우수한 분류 성능을 나타냈다.
또한 Raspberry Pi 환경에서 세그먼트 처리 시간을 분석한 결과, MNN 모델과 1D-CNN 모델의 추론 처리 시간은 거의 동일한 수치를 보였다. 이를 통해 1D-CNN 모델이 MNN 모델과 유사한 실시간 처리 속도를 유지하며 높은 정확도를 제공함으로써 실시간 고장 진단에 적합함을 확인할 수 있었다.
향후 시간-주파수 영역을 동시에 고려할 수 있는 wavelet transform 기반 분석을 적용하여 고장 진단을 수행할 예정이다.
Acknowledgments
2025년도 한국정보기술학회 하계종합학술대회에서 발표한 논문(저가형 압전 센서와 다층신경망을 이용한 유도전동기 고장진단)[12]을 확장한 것임
References
-
R. Kumar, M. Andriollo, G. Cirrincione, M. Cirrincione, and A. Tortella, "A Comprehensive Review of Conventional and Intelligence-Based Approaches for the Fault Diagnosis and Condition Monitoring of Induction Motors", Energies, Vol. 15, No. 8938, pp. 2-4, Nov. 2022.
[https://doi.org/10.3390/en15238938]
- IET Technical Committee Trend Report 2, https://cosd.ksa.or.kr/NEWS/TC.html?bbs_no=446&board_code=view&page=7, . [accessed: Jun. 12, 2025]
-
D. H. Wang, J. H. Lee, S. J. Kim, M. C. Kim, and I. S. Lee, "Fault Diagnosis of Induction Motor using an Ensemble Method of Decision Tree and Multilayer Neural Network", The Journal of Korean Institute of Information Technology, Vol. 20, No. 3, pp. 47-55, Mar. 2022.
[https://doi.org/10.14801/jkiit.2022.20.3.47]
-
J. Yoon, D. He, and B. V. Hecke, "On the use of a single piezoelectric strain sensor for wind turbine planetary gearbox fault diagnosis", IEEE Transactions on Industrial Electronics, Vol. 62, No. 10, pp. 6585-6590, Oct. 2015.
[https://doi.org/10.1109/TIE.2015.2442216]
-
J. W. Cooley and J. W. Tukey, "An Algorithm for the Machine Calculation of Complex Fourier Series", Mathematics of Computation, Vol. 19, No. 90, pp. 297-301, Apr. 1965.
[https://doi.org/10.1090/S0025-5718-1965-0178586-1]
-
D. Rumelhart, G. Hinton, and R. Williams, "Learning representations by back-propagating errors", Nature, Vol. 323, pp. 533-536, Oct. 1986.
[https://doi.org/10.1038/323533a0]
-
L. Eren, T. Ince, and S. Kiranyaz, "A Generic Intelligent Bearing Fault Diagnosis System Using Compact Adaptive 1D CNN Classifier", J. Signal Process. Syst., Vol. 91, pp. 179-189, Feb. 2019.
[https://doi.org/10.1007/s11265-018-1378-3]
- ADS1115 datasheet, https://www.alldatasheet.com/view.jsp?Searchword=Ads1115%20datasheet&gad_source=1&gad_campaignid=177213899&gclid=Cj0KCQjw0qTCBhCmARIsAAj8C4Yj4JKr8f6WXSqddydsvVkYzeSd8ldT03ie-z-q1eNML4i1GxZefMcaArguEALw_wcB, . [accessed: Jun. 12, 2025]
-
B. Ding, H. Qian, and J. Zhou, "Activation functions and their characteristics in deep neural networks", Proc. Chinese Control and Decision Conference (CCDC), Shenyang, China, pp. 1836-1841, Jul. 2018.
[https://doi.org/10.1109/CCDC.2018.8407425]
-
D. Kingma and J. Ba, "Adam: A Method for Stochastic Optimization", Proc. Int. Conf. on Learn ing Representations, Toulon, France, pp. 1-10, Apr. 2017.
[https://doi.org/10.48550/arXiv.1412.6980]
-
R. Selvaraju, M. Cogswell, A. Das, R. Vedantam, D. Parikh, and D. Batra, "Grad-CAM: Visual Explanations from Deep Networks via Gradient-Ba sed Localization", Proc. IEEE Int. Conf. on Comp uter Vision (ICCV), Venice, Italy, pp. 618-626, Oct. 2017.
[https://doi.org/10.1109/ICCV.2017.74]
- H. G. Lee, S. M. Yoo, W. K. Hao, and I. S. Lee, "Fault Diagnosis of Induction Motors Using a Low-Cost Piezoelectric Sensor and Multilayer Neural Network", Proc. KIIT Conf., Jeju, Korea, pp. 359-363, Jun. 2025.
2025년 2월 : 창원대학교 전기전자제어공학부(공학사)
2025년 3월 ~ 현재 : 경북대학교 전자전기공학부 석사과정
관심분야 : AI 기반 회전체 시스템의 상태 모니터링 및 고장 진단
2025년 2월 : 영남대학교 전자공학부(공학사)
2025년 3월 ~ 현재 : 경북대학교 전자전기공학부 석사과정
관심분야 : AI 기반 회전체 시스템의 상태 모니터링 및 고장 진단
2023년 6월 : 하얼빈공업대학교 토목공학부(공학사)
2025년 3월 ~ 현재 : 경북대학교 전자전기공학부 석사과정
관심분야 : AI 기반 회전체 시스템의 상태 모니터링 및 고장 진단
1986년 : 경북대학교 전자공학부(공학사)
1989년 : 경북대학교 전자공학부(공학석사)
1997년 : 경북대학교 전자공학부(공학박사)
1997년 3월 ~ 2008년 2월 : 상주대학교 전자 및 전기 공학 교수
2005년 8월 ~ 2007년 1월 : 미국 샌디에고 주립대학교 방문학자
2008년 3월 ~ 2014년 10월 : 경북대학교 전자전기공학부 교수
2014년 11월 ~ 현재 : 경북대학교 전자공학부 교수
관심분야 : 시스템 고장진단 및 고장허용제어, 배터리 SOC 및 SOH 추정, 신경회로망 기반 지능제어, 지능형 센서 시스템







