• 대한전기학회
Mobile QR Code QR CODE : The Transactions of the Korean Institute of Electrical Engineers
  • COPE
  • kcse
  • 한국과학기술단체총연합회
  • 한국학술지인용색인
  • Scopus
  • crossref
  • orcid

  1. (Dept. of Electrical and Electronic Eng. Dankook Univerity, Korea. )



Photoplethysmogram, Velocity Photoplethysmogram, Peak to Peak Interval, Infinite Impulse Response Filter

1. 서 론

최근 고령화 사회 진입, IT와 의학 기술의 발전, 의료비용 및 만성질환자 수 증가 등으로 헬스케어 산업은 높은 성장률을 보이며 지속해서 성장할 전망이다. 생명공학정책연구센터의 자료에 의하면 글로벌 의료기기 분야의 세계 시장규모는 2017년에서 2019년까지 3710억 달러에서 4102억 달러로 증가하였다. (1)

이러한 사회현상이 발생함에 따라서 심박, 혈당, 혈압, 심전도와 같은 생체신호에 관한 관심이 증가하면서 이에 대한 심도 있는 연구가 요구되고 있다. [2~4] 심박 데이터를 측정하는 방법에는 심전도가 주로 이용되고 있으나 이는 가슴과 손 등 신체의 여러 부위에 전극을 위치하는 구속적인 측정 환경을 요구한다. 광전용적맥파 (Photoplethysmogram, PPG)는 빛을 이용하여 심장의 수축과 확장과 동시에 발생하는 말초정동맥계의 박동 현상의 그래프로 나타낸 것으로 손가락과 같은 말초혈관을 센서에 위치시켜 측정하는 상대적으로 비구속적이며 간단한 측정 방법을 요구한다. (5) PPG 신호는 사용자의 맥박, 혈압, 스트레스 상태 등을 확인하는 데 사용되는데 이때 중요한 변수 요인 중 하나는 반복되는 파형 중 Peak 점과 Peak 점 사이의 간격인 PPI(Peak to Peak Interval)를 알아내는 것이다.

본 연구에서는 PPG 신호를 일차적으로 아날로그 필터를 거쳐 필터링 후 증폭한 신호를 이차적으로 IIR Filter (Infinite Impulse Response Filter)를 거쳐 잡음이 제거된 신호로 변형하였다. 그 후 1차 미분을 통해 VPG (Velocity Photoplethysmo- gram) 파형을 확인하였으며 최종적으로 이를 이용하여 PPI를 확인하였다.

2. Main subject

2.1 System configuration

그림. 1. 시스템 블록도

Fig. 1. System Block Diagram

../../Resources/kiee/KIEE.2020.69.4.617/fig1.png

본 연구에서 계측을 위해 설계한 시스템은 그림 1과 같다. 먼저 SPF7070(LED & Photo Diode Module)에서 Raw Data를 계측한다. Raw Data 중 원하는 PPG 신호를 제외한 잡음 신호를 제거하기 위하여 LPF(Low Pass Filter)와 HPF(High Pass Filter)를 거쳐 약 0.3 ~ 40Hz 대역의 신호만을 필터링한다. 이후 증폭회로를 거쳐 약 220배가량 증폭한 후 신호의 안정화를 위한 Buffer 회로를 구성하였다. 아날로그 필터를 거친 데이터는 MCU의 ADC를 거쳐 Digital 신호로 변환된 후 UART 통신을 이용하여 PC로 전송된다. 전송된 데이터는 0~3.3V 전압 범위에 맞게 Mapping 작업을 거친 후 PPG 신호 주파수에 맞게 설정된 IIR Coefficient Value에 따라 디지털 필터 처리 과정을 거친다. 이후 VPG 신호를 검출하기 위해 1차 미분을 진행한 후 Smoothing Algorithm에 따라 변환한 뒤 Peak 점을 검출하는 알고리즘을 적용하여 최종 처리가 된 시리얼 데이터를 그래프로 도시하는 것이 전체적인 시스템의 구성이다.

2.2 Photoplethysmogram Measurement

신체의 혈관의 피는 심장의 수축과 이완에 따라 전신을 반복해서 순환하게 된다. 이때 손가락의 말초혈관에 흐르는 혈액량은 규칙적으로 증가와 감소를 반복하는데 PPG 센서는 빛이 물체를 투과 혹은 반사된 이후에 빛이 지나간 경로에 있는 피부, 조직, 혈액의 양에 비례하여 변화되는 광량을 변화를 측정하는 센서이다. (6)

그림. 2. 투과방식과 반사 방식 PPG 측정

Fig. 2. Transmission and reflection PPG measurements

../../Resources/kiee/KIEE.2020.69.4.617/fig2.png

측정 방식에는 투과와 반사 두 가지 방식이 존재하며 투과방식의 경우 그림 2와 같이 발광부와 수광부가 조직을 사이에 두고 반대편에 위치하며 발광부에서 나오는 빛이 신체 조직을 투과한 후 수광부에 흡수되는 빛의 양을 측정하는 방식이다. 반사 방식의 경우 그림 2와 같이 발광부와 수광부가 동일 평면상에 위치하며 신체 조직에 접하여 발광부에서 나오는 빛이 신체 조직에 반사되어 되돌아 나온 후 수광부에 흡수되는 빛의 양을 측정하는 방식이다.

일반적인 PPG 파형은 그림 3과 같으며 심방의 수축에 따라 S 점을 시작으로 하여 최대 수축 점에서 P 파형이 나타난 뒤 이완에 따라 T, C, D 점을 확인할 수 있다. 이때 본 연구에서 사용한 방식은 오른 검지의 말초혈관에서 반사 방식으로 측정을 진행하였으며 500~550nm 파장 영역대의 빛을 방출하는 2개의 LED와 1개의 Photo Diode가 포함된 SFH 7070 Module을 사용하였다.

그림. 3. PPG 파형 그래프

Fig. 3. Photoplethysmogram Waveform Graph

../../Resources/kiee/KIEE.2020.69.4.617/fig3.png

2.3 Hardware Design

SFH7070에서 얻어진 Raw Data는 전원 노이즈 등 다양한 대역대의 노이즈가 혼합되어 원하는 PPG 신호만을 확인할 수 없다. 따라서 그림 4와 같이 OP Amp로 구성된 4차 필터를 설계하여 원하는 대역대의 신호만을 검출하였다.

그림. 4. 아날로그 필터 회로도

Fig. 4. Analog Filter Circuit

../../Resources/kiee/KIEE.2020.69.4.617/fig4.png

설정한 Band pass Filter의 대역대는 0.3 ~ 40Hz로 설정하였으며 일차적으로 0.3Hz 이하 대역의 잡음을 제거하는 LPF를 거친 후 이차적으로 40Hz 이상 대역의 잡음을 제거하는 HPF를 통과시켰다. 필터 회로는 Sallen Key와Multiple Feedback 방식 중 Multiple Feedback 방식의 Single Ended를 채택하였다. 대역필터만을 거친 Raw data는 10~30mV 정도로 확인하기 어려운 미세한 전압이기 때문에 220배를 증폭시켜 주는 증폭회로를 구성하였으며 단전원으로 구동시키기 위하여 Reference 전압을 인가해주었다. Bandpass Filter를 통과한 후 증폭된 신호는 안정화와 전류 증폭을 위해 마지막 단에 Buffer 회로를 추가하였다.

아날로그 회로 이후에 PC와의 통신을 위한 MCU(Micro Controller Unit)는 ARM 사의 Cortex M4 라인의 MCU를 채택하였다. 해당 컨트롤러는 최대 100MHz로 구동할 수 있으며 SAR 방식의 ADC와 UART, SPI 통신 등이 가능하다. 또한, 부동소수점 연산 유닛인 FPU(Floating Point Unit)와 Timer 기능이 포함되어 있어 디지털 필터 처리가 가능하다.

그림 4의 아날로그 회로는 Breadboard 상에 구성한 뒤 동작을 실험을 진행했으며 케이블이나 Breadboard 등에서 발생 가능한 미묘한 잡음을 제거하고 최적화된 회로 동작을 구성하기 위해 PCB Artwork를 통해 Custom PCB로 설계하였다. 설계를 위해 Kicad를 사용하였으며 MCU 구동부와 Analog Filter Circuit을 분리하여 서로 다른 레귤레이터를 통해 전원을 공급하도록 설계하였다. 설계된 회로의 3D 모델링은 그림 5와 같다.

그림. 5. PCB 3D 모델

Fig. 5. PCB 3D Model

../../Resources/kiee/KIEE.2020.69.4.617/fig5.png

2.4 Infinite Impulse Response Filter

디지털 필터에는 크게 FIR(Finite Impulse Response) Filter와 IIR Filter 두 가지가 있는데 IIR Filter는 FIR Filter와 달리 출력에 대한 피드백 회로가 구성되어 적용된다는 차이점이 있다. 본 연구에서는 IIR Filter를 채택하였으며 IIR Filter의 구현을 위해서는 신호 계측의 길이, 샘플링 주기, 필터 차수, 설계 기법 등을 설정해야 한다.

P의 feed forward filter 차수와 Q의 feedback filter 차수를 가지는 디지털 시간 무한 임펄스 응답의 출력은 각각 i 차, j 차 지연된 입력값과 상관계수의 곱을 모두 합한 것과 같다. 그 수식을 정리하면 다음과 같다.

(1)
$$\begin{align*} y[n]=&\dfrac{1}{_{a_{0}}}(b_{0}x[n]+b_{1}x[n-1]+\cdots +b_{P}x[n-P])\\ &-a_{1}y[n-1]-a_{2}y[n-2]-\cdots -a_{Q}y[n-Q]\\ =&\dfrac{1}{a_{0}}(\sum_{i=0}^{P}b_{i}x[n-i]-\sum_{j=0}^{Q}a_{i}y[n-j]) \end{align*}$$

IIR Filter를 설계하는 방법은 여러 가지만 있지만 본 연구에서는 적은 차수로 효율적이며 정확한 연산이 가능한 Biquad Filter 필터의 Direct Form 2를 채택하여 설계를 진행하였다. 또한, 정확한 부동 소수점 연산을 위해 전치 형태로 변환된 구조를 사용하였다. Direct Form 2의 블록도는 그림 6과 같다.

그림. 6. Biquad Direct Form 2 Transposed의 블록도

Fig. 6. Biquad Direct Form 2 Transposed Block Diagram

../../Resources/kiee/KIEE.2020.69.4.617/fig6.png

설계조건은 0.3Hz의 중심주파수, 100Hz의 샘플링 주파수를 갖는 4차 HPF와 40Hz의 중심주파수 100Hz의 샘플링 주파수를 갖는 4차 LPF으로 설정하였다.

설계된 조건을 적용하기 위해 MCU의 Timer 기능을 활성화하고 원하는 SAR ADC를 Nyquist’s Theory를 만족하는 100Hz로 동작하게 설계하였다. 또한, 설정된 값에 의해 계산된 IIR Coefficient Value를 CMSIS-DSP 라이브러리를 적용해 구현하였다.

그림. 7. 디자인된 무한 임펄스 응답의 보드선도

Fig. 7. Designed Bode Plot of Infinite Impulse Response

../../Resources/kiee/KIEE.2020.69.4.617/fig7.png

2.5 Velocity Photoplethysmogram(VPG)

그림. 8. PPG와 VPG 파형 그래프

Fig. 8. PPG & VPG Waveform Graph

../../Resources/kiee/KIEE.2020.69.4.617/fig8.png

VPG는 PPG 신호를 1차 미분한 신호로 일반적으로 그림 8과 같은 파형을 나타낸다. 본 연구에서는 Peak 점 검출을 위한 목적으로 아날로그 필터를 거친 PPG Data를 IIR Filter를 이용하여 필터링 후 1차 미분 과정을 거쳐 VPG 신호로 변환하였으며 신호를 미분할 때에는 Eq.(2)를 적용하여 계산하였다.

(2)
$$S'[n]=\dfrac{1}{2T}(S[n]-S[n-1])$$

여기서 S[n]는 현재의 IIR Data, S[n-1]는 이전의 IIR Data, T는 샘플링 주파수를 의미한다. 미분 과정은 HAL Driver를 사용해 하드 코딩하였으며 미분 과정을 거친 Raw VPG Data는 연산과정에서 가우시안 노이즈의 발생이 확인된다. 이는 Eq.(2)과정을 거치면서 설정된 샘플링 주파수인 100Hz에 따라 곱해지는 앞의 상수에 의해 발생되며 이를 제거하기 위하여 Smoothing Algorithm을 적용하여 최종적으로 안정되고 연속적인 VPG 신호로 변환하였다. 적용한 Smoothing Algorithm의 수식은 Eq.(3)과 같다.

(3)
$$y[n]=\dfrac{1}{N}\sum_{i=0}^{N}(y[n]+y[n-1]+\cdots +y[n-i])$$

이때 y[n]는 Raw VPG Data이며 N은 윈도우의 개수를 의미한다. 본 연구에서는 N=10으로 설정하여 설계를 진행하여 Smooth VPG Data로 변환하였다.

2.6 Peak to Peak Interval Detection

피크 검출기는 하드웨어가 아닌 소프트웨어의 코딩으로 구현하였으며 측정된 PPG 신호에서 PPI를 검출하는 알고리즘에는 IIR Data와 Smooth VPG Data에 대한 조건을 적용하였으며 그 알고리즘은 그림 9와 같다.

그림. 9. 피크 검출 알고리즘 모식도

Fig. 9. Peak Detection Algorithm

../../Resources/kiee/KIEE.2020.69.4.617/fig9.png

PPG 신호는 2개의 변곡점을 갖는데 이때 Peak 점인 P 지점의 경우 볼록 변곡점을 갖는다. 따라서 2가지 조건을 만족할 때 Peak 점을 검출하는 알고리즘을 설계하였는데 첫 번째는 IIR Data가 일정 수준의 Threshold Voltage보다 클 때이며 두 번째는 Derivative Data(Smooth VPG Data)의 절댓값이 0일 때이다. 이 두 가지의 조건이 모두 충족될 때에만 Peak 점이 검출되도록 설계하였다. 이후 Peak 점이 검출되면 1개의 데이터를 검출하는데 걸리는 시간은 0.01초로 계산할 수 있으므로 Eq.(4)를 통해 PPI를 계산할 수 있다.

(4)
$$P\Pi =\dfrac{\text{Data} \le \text{ngth}}{\text{N umber of Peak}}\times 0.01$$

Data Length는 6000으로 설정하였으며 Timer의 동작에 따라 SAR ADC는 100Hz로 동작하도록 설계되었기 때문에 정확하게 1분 동안 측정을 진행한다. 이후에 대중화된 통계자료와의 비교를 위해 PPI를 BPM(Beats Per Minute)로 변환하였는데 Eq.(5)을 적용해 계산하였다.

(5)
$$Bpm =\dfrac{60}{PPI}\times 100$$

3. Experiment

3.1 Experiment Method

실험자는 20대 성인 남성 8명과 여성 2명을 대상으로 진행하였으며 안정된 데이터 검출을 위해 5분간 편안하게 의자에 앉은 상태로 휴식 후 측정을 진행하였다. 측정시간은 상기에 언급한 대로 1분 동안 진행하였으며 변인 통제를 위해 모두 같은 상온의 조건에서 센서 바닥에는 A4용지를 배치하였으며 최대한 오른 검지의 중앙의 말초혈관에 위치하여 같은 실험조건을 성립시켰다. 본 연구는 PPI를 계측하기 때문에 남녀 혹은 나이에 따라 발생하는 신체 특성의 편차는 최종적인 데이터를 판별하는 장애요소로 판단하지 않았다. 디지털 데이터는 100Hz를 주기로 6000개의 값을 수신하여 사용하였으며 센서측정 환경과 계측 사진은 그림 10과 같다.

그림. 10. 센서를 부착한 PCB와 계측 사진

Fig. 10. PCB with sensor attached and measurement photo

../../Resources/kiee/KIEE.2020.69.4.617/fig10.png

3.2 Experiment Result

그림. 11. Raw Data(파랑)와 IIR Data(빨강)

Fig. 11. Raw Data(Blue) & IIR Data(Red)

../../Resources/kiee/KIEE.2020.69.4.617/fig11.png

그림 11에서 제시하는 파란선 그래프는 아날로그 회로의 신호를 MCU의 ADC를 통해 12bit 0~4096단계로 수신한 후 Float Mapping을 통해 0~3.3V의 실수형태로 변환하여 출력한 Raw Data 그래프이며 1.1V의 Reference 전압을 기점으로 신호가 출력되는 것을 확인할 수 있다. 빨간 선 그래프는 0.3~40Hz로 설정한 IIR Coefficient Value에 따라 필터링 되어 출력한 IIR Data 그래프이다. 그래프를 보면 Raw Data의 경우 양자화 잡음으로 인해 신호의 중간중간 끊어지거나 튀어오르는 현상을 확인할 수 있다. 반면 IIR Filter를 거친 데이터(IIR Data)는 신호가 매끄럽고 규칙적인 것을 확인할 수 있다.

그림. 12. Raw Data(좌)와 IIR Data(우)의 FFT 그래프

Fig. 12. Raw Data(Left) & IIR Data(Right) FFT Graph

../../Resources/kiee/KIEE.2020.69.4.617/fig12.png

IIR Filter의 정확한 성능 분석을 위해 Matlab을 사용하여 FFT(Fast Fourier Transform)를 적용해 확인하였다. 이는 그림 12과 같으며 IIR Data는 불필요한 저대역의 전원 노이즈와 고대역대의 신호를 필터링하고 원하는 0.3~40Hz의 신호만을 포함하고 있는 것을 확인할 수 있다.

그림. 13. IIR Data(파랑)와 Raw VPG Data(빨강)

Fig. 13. IIR Data(Blue) & Raw VPG Data(Red)

../../Resources/kiee/KIEE.2020.69.4.617/fig13.png

그림 13에서 제시하는 빨간 선 그래프는 IIR Data를 Eq.(1)에 따라서 1차 미분하여 출력한 Raw VPG 그래프이며 비교를 위해 IIR Data를 파란선 그래프로 표시하였다. 그러나 Raw VPG Data에서 약간의 가우시안 노이즈의 형태가 나타나 Smoothing Algorithm을 적용하여 최종적으로 는 Smooth VPG Data로 변환하였는데 그림 14를 통해 확인할 수 있다.

그림. 14. Raw VPG Data(파랑)와 Smooth VPG Data(빨강)

Fig. 14. Raw VPG Data(Blue) & Smooth VPG Data(Red)

../../Resources/kiee/KIEE.2020.69.4.617/fig14.png

그래프를 보면 Raw VPG Data에 존재했던 가우시안 노이즈가 Smooth VPG Data에서 상단수준 제거된 것을 확인할 수 있다. 마지막으로 그림 15에서 제시하는 그래프는 Raw Data, Smooth VPG Data와 함께 피크 검출 알고리즘을 적용하여 Peak 점을 검출한 그래프를 표시하였다. 이때 Peak 점은 검은색 Flag 신호로 도시하였다.

그림. 15. Raw Data와 Smooth VPG Data와 Peak 검출

Fig. 15. Raw Data, Smooth VPG Data, Peak Detection

../../Resources/kiee/KIEE.2020.69.4.617/fig15.png

최종적으로 Eq.(4) 적용하여 계산된 피실험자의 Data Length는 6000개, 즉 60초로 설정하여 측정하였으며 평균 PPI로 계산하였다. 또한, Eq.(5)를 적용하여 BPM을 계산하였다.

표 1. PPI와 BPM 도표

Table 1. PPI & BPM table

PPI Average

BPM

피실험자1

85.7

70

피실험자2

83.3

72

피실험자3

92.3

65

피실험자4

89.5

67

피실험자5

83.3

72

피실험자6

88.2

68

피실험자7

83.3

72

피실험자8

81.0

74

피실험자9

84.5

71

피실험자10

84.5

71

PPI를 통해 계산한 피실험자들의 BPM을 보면 65~74의 값을 갖는다. 피실험자들은 모두 20대의 남성과 여성으로 남성의 평균 휴식기 심박 수는 70-73이며 여성의 평균 휴식기 심박 수는 74-78이다. 결과적으로 실험을 통해 얻은 BPM이 평균 휴식기 심박 수에 부합하는 것을 확인할 수 있다.

4. Conclusion

본 연구에서는 반사형 PPG 센서와 Custom Analog Circuit을 통해 PPG Data를 측정하였으며 이를 MCU의 UART 기능을 통해 PC로 전송하였다. 또한, 측정된 PPG Data를 IIR Filter, 1차 미분과 Smoothing을 통해 Peak 점을 검출하는 알고리즘을 설계하였으며 최종적으로 PPI를 계측하는 시스템을 구현하였다. 기저선을 기점으로 호흡이나 전원 노이즈와 같은 외부 잡음이 섞이지 않은 순수한 PPG 신호를 검출하는 데 성공하였다. 또한, PPI 검출을 위한 단계에서 아날로그 필터로는 제거되지 않았던 노이즈를 IIR Filter를 적용하여 제거할 수 있었으며 Smoothing Algorithm을 적용하여 가우시안 노이즈를 제거한 Smooth VPG Data를 계측할 수 있었다. 또한, 실험자 10명을 대상으로 1분 동안 실험을 진행한 결과 Realtime으로 평균 휴식기의 PPI와 BPM Data가 검출되는 것을 확인할 수 있었다.

향후 더 다수의 피실험자를 대상으로 계측을 진행하며 시판되는 병원 장비와의 BPM 계측 비교를 통해 Data의 신뢰성을 확보가 필요하다. 또한, PPI를 이용하여 피실험자의 스트레스 측정 시스템을 구현, PPG를 2차 미분한 파형인 APG를 계측하여 혈관 탄성도의 측정 등의 연구 확장할 수 있을 것으로 생각한다. RF, BLE 통신 모듈과 결합하여 Mobility를 향상해 스마트폰 상에서 데이터의 확인이 가능하도록 하는 개발에 대한 시도도 필요할 것이다.

Acknowledgements

This research was supported by Korea Electric Power Corporation. (Grant number : R19XO01-09).

References

1 
2018, The Center for Research on Biotech Policy, the Global Healthcare Industry OutlookGoogle Search
2 
H. Asada, A. Reisner, P. Shaltis, D. McCombie, 2005, Towards the Development of Wearable Blood Pressure Sensors: A Photo-Plethysmograph Approach Using Conducting Polymer Actuators, IEEE Engineering in Medicine Biology Magazine, pp. 1-4DOI
3 
Young-Dong Lee, Esko Alassarela, Wan-Young Chung, 2007, A Wireless Health Monitoring System in Multi-hop Body Sensor Networks, in Procceding of ISMICT’07Google Search
4 
Jinseok Lee, Ki H. Chon, 2010, An Autoregressive Model- Based Particle Filtering Algorithms for Extraction of Respiratory Rates as High as 90 Breaths Per Minute From Pulse Oximeter, IEEE Transactions on Biomedical Engineering, Vol. 57, No. 9, pp. 2158-2167DOI
5 
Y. Maeda, M. Sekine, T. Tamura, 2011, Relationship between measurement site and motion artifacts in wearable reflected photoplethysmography, Journal of medical systems, Vol. 35, No. 5, pp. 969-976DOI
6 
Byeong-ro Lee, 2014, Design of Motion Artifacts Filter of PPG Signal based on Kalman filter and Adaptive filter, Journal of the Korea Institute of Information and Communication Engineering, Vol. 18, No. 4DOI

저자소개

윤서진 (Seo-Jin Yoon)
../../Resources/kiee/KIEE.2020.69.4.617/au1.png

2019 : BS in Department of Electronic and Electrical Engineering, Dankook University, Korea.

2019 to Present : MS course in Control and Signal Processing Engineering, Dankook University, Korea.

E-mail : ssk01138@gmail.com

민지홍 (Ji-Hong Min)
../../Resources/kiee/KIEE.2020.69.4.617/au2.png

2018 : BS in Department of Electronic and Electrical Engineering, Dankook University, Korea.

2018 to 2020 : MS course in Control and Signal Processing Engineering, Dankook University, Korea.

E-mail : wlghd8246@gmail.com

김경호(Kyung-Ho Kim)
../../Resources/kiee/KIEE.2020.69.4.617/au3.png

1996 : MS, 1999 : Ph.D at Keio University, Japan.

2000 to 2006 : Principal Research Engineer in Samsung Advanced Institute of Technology (SAIT).

2006 to Present: Professor in Department of Electronic and Electrical Engineering, Dankook University, Korea.

E-mail : dkuhealth@dankook.ac.kr