> For the complete documentation index, see [llms.txt](https://ykkim.gitbook.io/wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ykkim.gitbook.io/wiki/industrial-ai/bearingfault_journal/information-entropy.md).

# Prediction of RUL with Information Entropy

### 베어링 잔존 수명 예측을 위한 주파수 에너지 기반 특징신호 추출

2017, 김석구, 최주호, 안다운, 한국 ITS 학회 논문지

#### Introduction

* PHM의 단계: Signal Processing, Diagnostics, Prognostics
* Prognostics
  * 신호 처리와 고장 진단은 연구가 많이 진행된 분야지만 고장 예지 분야는 그렇지 않음
  * 일반적으로 진동 신호를 분석함
  * 특징신호
    * 시간 영역
      * RMS
      * Kurtosis
    * 주파수 영역
      * Spectral kurtosis
      * envelope 적용 후의 결함주파수 진폭
  * 특징 신호의 단점
    * signal de-noising을 거친 후에도 fluctuation이 존재
    * 시간이 지나면서 monotonicity가 사라짐
    * 고장에 임박해야 변화를 보임
* 극복 방안
  * 특정 주파수 영역의 진폭값이 베어링의 열화가 진행됨에 따라 불확실성이 줄어듦: 정보 엔트로피를 이용해 정량화
  * but 계산 시간이 오래걸림

#### FEMTO 베어링 시험 데이터

* 본 연구에서 사용한 데이터: FEMTO bearing data

![](/files/-Mh6patJaIUNfUgAGUYA)

![](/files/-Mh6patMGY518VJjk64G)

* 수직, 수평 방향의 가속도계 사용
* 수평 방향의 radial load 인가
* 결함의 종류는 모름
* 베어링마다 열화 패턴도 다르고 수명도 크게 차이남

  ​ -> 다른 열화 패턴을 보이는 데이터에서도 공통적으로 사용할 수 있는 특징 신호가 필요

#### 기존 특징 신호

**시간 영역의 특징신호**

심한 노이즈를 가지고 있기 때문에 exponential smoothing을 이용해 de-noising함, smoothing factor alpha는 0.9로 지정

* RMS

  $$
  RMS = \sqrt {{1 \over N}\sum\limits\_{i = 1}^N {x\_i ^2 } }
  $$

  * 결함 초기에는 상승세 확인 어려움
  * 결함이 말기에 이르러야 상승세 확인 가능
* Kurtosis

  $$
  Kurtosis = {{{1 \over N}\sum\limits\_{i = 1}^N {(x\_i - \overline x )^4 } } \over {\sigma ^4 }}
  $$
* 진동 신호의 충격파에 민감해 결함 초기에 상승세
* 결함이 일정 수준 진행되면 다시 감소세

![](/files/-Mh6patR5huYr1AQbC4g)

​ #5: 결함이 말기에 이르러서야 상승

**Moving average spectral kurtosis**

* Spectral kurtosis
  * 하나의 신호에 대해 서로 다른 주파수 영역에서 계산한 kurtosis 값
  * 베어링 고장과 관련된 특정 주파수 영역에서 추출한 신호만을 이용해 kurtosis를 계산하면 정확도가 더 높음
  * 시간에 대해서 가장 좋은 monotonicity 증가 경향을 보인 freq. band의 kurtosis 값을 특징 신호로 사용
  * window size: 100 data point
  * Spearman's correlation 사용: monotonicity 증가 경향을 측정하기 위한 척도, 이걸 기준으로 freq. band 선정

    $$
    Spearman's,correlation = {{{\mathop{\rm cov}} (rg\_x ,rg\_y )} \over {\sigma \_{rg\_x } \sigma \_{rg\_y } }}
    $$
* monotonicity가 가장 높은 freq. band로 sk를 계산했는데도 증가 이후 감소하는 경향을 보임

  <img src="/files/-Mh6patT6QLYfZ6xc3oQ" alt="" data-size="original">

#### 주파수 에너지에 기반한 특징신호 추출방법

**볼 베어링 고장 단계**

* 일반적으로 4단계로 구성됨

  <img src="/files/-Mh6patWYdFY_veOxvm7" alt="" data-size="original">

  <img src="/files/-Mh6pat_1mnP4CxB-6Yh" alt="" data-size="original">
* 1단계: 고주파수 영역에서 결함 특징이 나타남, 그러나 이 영역에서는 물리적인 검사를 통해 베어링의 고장을 식별할 수 없음
* 2\~단계: 베어링 시스템의 고유주파수 영역에서 신호가 나타남, 점차 베어링 고장 주파수의 harmonic freq.들이 샤프트 주파수에 의해 변조되어 나타남
* 4단계: 많은 변조 주파수 성분들과 조화 주파수들이 발생, 베어링 내부의 틈새가 생겨 고장 주파수 성분들의 크기가 줄어듦

**주파수 에너지**

* 베어링 결함은 특정 주파수로의 에너지 집중을 가져옴
* normalized energy 계산: 스펙트럼 상의 에너지 이동을 효과적으로 감지하기 위함

  $$
  E\_f = A\_f /\sum\limits\_{F > 0} {A\_F ^2 }
  $$

  * 스펙트럼 상의 에너지 총합은 항상 1
  * 특정 주파수 대역에서 에너지 손실과 증가를 쉽게 확인 가능

    <img src="/files/-Mh6patbdOzzHIV3KP2w" alt="" data-size="original">
* 시간이 지나면서 1000Hz 주변 에너지는 상승, 2000Hz 주변 에너지는 감소
  * 둘 다 고장에 가까워지고 나서야 변화함 -> 초기에 큰 에너지를 가지고 있는 주파수 영역만 선정
  * Spearman's correlation을 사용해 monotonicity 계산

    <img src="/files/-Mh6patd1I28rTkzqjKs" alt="" data-size="original">
  * 시간이 지날수록 특정 주파수 영역으로 음의 Spearman's correlation이 수렴함
    * An et al.은 모든 주파수 영역에서 처음부터 끝 cycle까지 계산한 후 가장 크게 감소한 상위 25개 사용
    * An et al. 방법은 연산량이 많지만 이 방법은 spearman's correlation을 통해 에너지 손실이 발생하는 주파수 대역을 찾을 수 있음

**특징 신호 추출**

* 정보 엔트로피

  $$
  H(X) = - \sum\limits\_{i = 1}^n {p(x\_i )\log \_2 p(x\_i )}
  $$

  * X는 정보, n은 X에서 도출될 수 있는 출력의 수, p(x\_i)는 각 출력 값들의 발생 확률
  * 주어진 정보를 0과 1 사이 값으로 normalize 시키고 0과 1 사이를 256개로 샘플링함
  * ex) entropy 증가와 감소

    <img src="/files/-Mh6patgKdHcTVLaPWOX" alt="" data-size="original">
* 에너지 엔트로피 추출
  * 앞에서 찾은 특정 주파수(에너지가 높은 주파수)에서 정보 엔트로피 계산

    <img src="/files/-Mh6patijpkv_vEiH5fH" alt="" data-size="original">
  * 단조로운 감소 경향, 고장 직전에서 급격한 변화x
* 주파수 수렴도
  * 신속하게 특정 주파수로의 수렴을 발견할 수 있으면 초기에 고장을 예측 가능함
  * 기존방법과 에너지 엔트로피 방법의 수렴 속도 비교

    <img src="/files/-Mh6patjqEJW8xsN0r-N" alt="" data-size="original">

#### 기존 특징 신호들과의 비교 분석

* Monotonicity 단조성: 고장 예측에 적합한 특징 신호로 사용되기 위해 가장 중요한 요소 중 하나
  * Spearman's correlation: monotonicity 경향을 나타내는 일반적인 지표
  * 기존에 사용한 특징 신호들과의 monotonicity 비교

    !\[]\(../images/entropy/spearman's\_correlation.png)

    * RMS와 Kurtosis는 낮은 값, MASK는 그보다 나은 경향

      <img src="/files/-Mh6patl085M-bnTEEqx" alt="" data-size="original">
    * 그러나 MASK는 떨림 현상 존재

## Bearing Prognostics Method Based on Entropy Decrease at Specific Frequency

2016, Dawn An, Nam Ho Kim, AIAA SciTech

### Introduction

* 항공기 엔진 고장의 80\~90%가 베어링 고장
* FEMTO data

  <img src="/files/-Mh6patmTmhI6w6acHN4" alt="" data-size="original">

  * 빨간 선: 고장 threshold
  * 파란 선: 고장에 이르기까지 진동 신호
  * test 1, 2 둘 다 같은 사용 조건, 같은 베어링
    * test 1: radial F = 4kN, 1800 rpm
    * test 2: radial F = 4.2kN, 1650 rpm
  * 그러나 test 1의 수명은 약 2800 사이클, test 2는 870 사이클
  * 10초마다 0.1초 동안의 25.6kHz 진동 신호 -> 1 cycle로 설정(1 사이클마다 2560개의 샘플)
  *
* 이 논문에서는 주파수 도메인에서의 엔트로피 변화를 사용한 degradation feature를 추출하는 방법을 제안
  * 신호를 분해하고 사이클에 따라 변화하는 신호 성분을 선택해 분석

### Degradation Feature Extraction

#### Information Entropy for Degradation Feature Extraction

* 엔트로피: 시스템의 무작위성의 척도
  * 시스템이 다른 시스템으로부터 에너지를 흡수하면 엔트로피가 증가
  * isolated system의 전체 엔트로피는 감소하지 않음
* 정보 엔트로피(= Shannon entropy)
  * 정보량의 평균을 나타냄
  * 정보 엔트로피의 증가는 데이터에 포함된 정보가 누락되어 불확실성이 증가하는 것을 의미

**Information entropy**

$$
H\left( X \right) = - \sum\limits\_{i = 1}^n {p\left( {x\_i } \right)\log \_2 p\left( {x\_i } \right)}
$$

where X = information source (bins of acceleration data)

n = number of possible outcomes from X

p(x\_i) = probability of each outcome

* 가속도 데이터를 0\~1 사이로 normalize시키고 255개의 간격(bins)로 나눔

![](/files/-Mh6patnqDcKv6M_SEMP)

* n: 데이터가 들어있는 bin의 수
* p(x\_i): bin에 들어있는 데이터의 수 / 전체 데이터의 수
* 기본적으로 pmf와 같은 원리
* bin의 개수가 많아질수록 엔트로피가 증가

![](/files/-Mh6patoj_hQ6Iqh45gj)

**Entropy as a degradation feature**

* 대부분의 raw data는 고장 직전까지 큰 변화를 보이지 않기 때문에 주파수 영역으로 변환하여 여러 테스트에 대해 동일한 특성을 나타내는 특정 주파수를 선택함
  * 일부 주파수 영역에서는 사이클에 따라 진폭이 증가하거나 감소함

![](/files/-Mh6patp5rpSK_VOKqz_)

* 모든 데이터 셋 조사 결과 엔트로피의 감소 추세는 일관되고 몇 가지 중요한 특성이 있으나 엔트로피 증가는 그렇지 않음, 엔트로피가 증가하는 경우에는 동작을 예측할 수 없음

-> 엔트로피 감소를 degradation feature로 사용할 것이다

#### Procedure of Degradation Feature Extraction

![](/files/-Mh6patqaZ1J79y5qTFf)

1. fft
2. 주파수별로 플로팅함: 특정 주파수를 고정시키고 cycle에 따른 amplitude의 변화를 플로팅함
3. 엔트로피가 감소하는 특정 주파수를 선택

#### Result of Feature Extraction and Its Atrributes

* 각 곡선은 선택한 주파수에서 계산된 각 주기에서 25개의 엔프로피의 값의 중앙값임

  <img src="/files/-Mh6patsCbSHQuuTGX0J" alt="" data-size="original">
* maximum / minimum entropy, EOL의 정의

  <img src="/files/-Mh6pattLR7ilYa0zZ2d" alt="" data-size="original">
* 결과
  * EOL은 최대 엔트로피에 비례함
    * 초기에 더 높은 에너지를 가지고 있는 에너지가 더 긴 수명과 관련이 있을 수 있음
    * 최대 엔트로피와 EOL 간의 선형 관계를 이용해 학습시켜 RUL을 예측할 수 있을 것
  * degradation rate의 정의
    * 수식

      $$
      dr = 1 - {{\min .Entropy} \over {\max .Entropy}}
      $$
    * 두 가지 그룹: threshold 20% / 40%

      <img src="/files/-Mh6patu_pC2LmcJDO7r" alt="" data-size="original">

#### Prognosis

* true EOL의 90%를 EOL로 설정(유지보수를 위해)
* 엔트로피가 수렴한 이후(빨간 선)에 예측 가능

  <img src="/files/-Mh6patvZOsU3LCrwvDb" alt="" data-size="original">
* 예측 방법
  * 최대 엔트로피와 EOL의 선형 관계를 이용하는 방법
  * 엔트로피의 threshold를 이용하는 방법

**Max E-EOL Method: The Relation between Maximum Entropy and EOL**

![](/files/-Mh6patwdWb8XKZCMwGt)

* ex) 700 사이클일 때 max. entropy가 4면 EOL은 1000, RUL은 300

**E.trend Method: Entropy Trend with Threshold**

![](/files/-Mh6patxwo-Lh48Z6TXL)

$$
Entropy = \beta \_1 \exp \left( {\beta Cycle^{\beta \_3 } } \right)
$$

* non-linear regression
  * maximum entropy와 cycles 데이터를 이용해서 베타 1, 2, 3을 추정
* 6 개의 학습 데이터를 두 그룹으로 분류하고 각 그룹의 평균값을 threshold로 설정
  * 21%, 41%
  * figure 11 linear regression을 참고하면 현재 데이터가 어느 그룹에 속하는지 알 수 있음
* threshold와 entropy curve의 교점으로 EOL을 예측
  * figure 12에서는 threshold를 21%로 설정하면 RUL이 -9임 -> 말이 안 됨, 그래서 41%의 Threshold를 사용해야함(?)

**RUL Prediction Results**

![](/files/-Mh6patynLeuiWj7PuMo)

* Max E-EOL 방법은 Condition 1에서는 true RUL에 더 가깝지만 Condition 2에서는 RUL이 낮음
  * Condition 2에서 EOL이 짧고 maximum entropy도 낮기 때문
* 선정된 주파수에서 엔트로피가 수렴한 후(초록색 수직선) RUL을 신뢰할 수 있다고 간주함
  * 그러나 일부 경우에는 RUL이 음수가 되었다가 양수가 되기도 함

    * RUL이 50 미만일 때 유지보수를 주문한다고 가정함

    <img src="/files/-Mh6patzFzkecCcO75Bu" alt="" data-size="original">

## FEMTO Experiment

PRONOSTIA: An Experimental Platform for Bearings Accelerated Degradation Tests

#### The PRONOSTIA Platform

![](/files/-Mh6pau-jwcbq56QJbVa)

* 몇 시간만에 베어링 degradation을 진행시킬 수 있는 실험 장치
* rotating part, degradation part, measurement part 세 부분으로 나뉨

**Rotating Part**

* asynchronous motor with a gearbox + 2 shafts
  * 모터
    * 250W
    * 기어박스를 통해서 정격속도인 2830 rpm으로 회전, 정격 토크 전달
    * secondary shaft에 2000 rpm 이하로 전달할 수 있게 만듦
  * shaft
    * first shaft: 모터에 가까이 설치
    * second shaft: incremental encoder의 오른쪽에 설치
  * gearbox: 2개의 풀리 + 타이밍 벨트로 이루어져 있음
* two clamping
  * 길이 방향의 움직임을 막음
* human machine interface
  * set the speed
  * select the direction of the motor's rotation
  * display the monitoring parameter
    * motor's instantaneous temperature
* whole driving chain of motor
  * human interface machine
  * frequency converter

![](/files/-Mh6pau0NZT_JC8sapW_)

**Generation of the radial force**

* radial force가 베어링의 수명을 줄임
  * 레귤레이터를 제외하고 모든 부품이 알루미늄 판에 그룹화(?)되어 있음
  * 베어링의 최대 동적 하중인 4000N까지 radial load를 가함
  * 유압 잭으로 구성된 액추에이터 사용
  * 베어링에 간접적으로 힘 전달: rotating lever arm으로 힘을 증폭시키고 클램핑 링을 통해 베어링으로 전달

![](/files/-Mh6pau18Wytjb2nnT7W)

**Measurements part**

* 온도와 진동 두 가지의 degradation 특성으로 나뉨
* 가속도계
  * 수평, 수직 1개씩
  * radial하게 배치
  * 25.6kHz로 샘플링
* 온도 센서

  * 베어링의 링에 가까운 구멍 안에 위치
  * 10Hz로 샘플링

  <img src="/files/-Mh6pau2cUpilpD4Yy2S" alt="" data-size="original">

#### Experiment result

**Degradation patterns**

![](/files/-Mh6pau3QK-s1pbUpa6g)

![](/files/-Mh6pau4Gqjg7lJfqUwl)

**The ideal degradation**

![](/files/-Mh6pau5Oii1GFxNOu_O)

![](/files/-Mh6pau6wYAFs_-D1z9x)

**Sudden degradations**

![](/files/-Mh6pau7XJ423zx12dGo)

![](/files/-Mh6pau83t9YdfuaFnbq)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ykkim.gitbook.io/wiki/industrial-ai/bearingfault_journal/information-entropy.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
