측정을 하다보면 다양한 노이즈와 만나게 된다.
접지노이즈, 랜덤노이즈, 고주파 노이즈, 전류노이즈 등등 측정값에 영향을 줄 수 있는 많은 영향이 존재한다.
그 중 DC offset은 실험장비에 의해 생기는 어쩔 수 없는 노이즈 중 가장 제거하기가 쉬운편에 속한다.
DC offset은 이름 그대로 신호성분에 껴있는 DC 성분이다.
위키피디아에 보면 DC bias, DC component, DC offset, DC coefficient 등의 이름을 가지고 있다.
DC offset의 정의는 신호 진폭의 평균값이다.
만약 진폭의 평균값이 0이면 DC offset이 없다는 의미이다. 이때 신호를 DC balanced 또는 DC free waveform이라 한다.
(출처 : 위키피디아 내용 번역)
신호에서 DC offset을 제거하는 방법은 두가지가 존재한다.
(방법적으로는 다양하게 있을 수 있지만 원리상으로 보면 두가지임)
1. 주기를 선택하고 평균을 취한 다음 (평균값 = DC offset) 원 데이터에서 평균값을 빼준다.
2. FFT High pass filter를 사용하여 DC offset을 제거해준다
두가지 방법의 출처는 아래의 Origin Blog에 있다.
blog.originlab.com/how-to-remove-dc-offset-before-performing-fft
실 데이터를 가지고 위 방법을 이용해 DC offset을 제거해보자
먼저 신호에 DC offset이 있는지를 확인해보자.
DC offset의 존재를 확인하는 방법은 아주 간단하다.
바로 신호를 시간에 따라 적분하는 것이다.
(사실 프로그램적으로 하는 적분은 불연속 데이터를 계속 더하는 것이라 적분보다는 Σ에 가깝다)
DC offset이 있는 경우 sinusoidal한 원 데이터를 적분하면
적분값이 계속계속 커지는 것을 확인할 수 있다.
(유전체 방전 플라즈마에서 측정된 전류신호의 경우는 가스의 이온화에 의해 전류값이 조금 더 생기긴 히지만 이론적으로 한 주기동안 전하가 보존되어야 하므로 전류 데이터 주기를 적분하면 0이 되어야한다. 또 다른 근거는 측정방식에 있는데, 로고스키코일을 이용한 전류의 측정은 자속의 변화에 의한 AC데이터만을 얻기 때문에 DC성분이 측정원리상 생길 수 없다)
1번 방법이든 2번 방법이든 제일먼저 해야할 것은 데이터를 주기에 맞춰 자르는 것이다.
한주기든 네주기든 주기에 맞춰서 신호를 잘라주어야 한다.
그래야 평균을 취했을때 주기신호(원하는 전류신호)는 서로 상쇄되어 0이 되고 DC offset만 남으며,
FFT(Fast Fourier Transform)으로 주파수 변환을 했을때 주파수별로 깔끔하게 신호가 나눠지기 때문이다.
1번 방법은 DC offset의 정의를 응용한 방법이다.
DC offset의 정의는 신호의 평균값이었다.
이 신호의 평균값이 매 시간마다 조금씩 더해져서 적분값의 상승을 불러온 것이다.
이 값을 원 데이터에서 빼주면 DC offset이 제거되어 적분값이 상승하지 않고 일정해진다.
(약간의 요동은 플라즈마 방전으로 인한 전류값의 요동으로 인한 것으로 생각된다 -> 사견임)
2번의 방법은 Fourier Transform을 이용해 주기 데이터를 주파수로 변환한 뒤에 필터를 적용하는 방식이다.
DC 성분은 주파수 도메인에서 봤을 때 주파수가 0인 성분이다.
왜냐하면 주기 도메인에서 DC 성분은 주기가 없는 일정한 값이기 때문이다. (sine 성분이 아님)
그렇기 때문에 주기의 역수인 주파수에선 DC 성분의 주파수가 0일 수 밖에 없다.
High pass filter를 적용해 저주파 성분을 날리면 DC offset을 제거할 수 있다.
120 Hz High pass filter를 적용했는데 120 Hz는 전류프로브의 측정범위에 맞췄다.
(전류프로브 Tektronix P6021A의 측정범위 120 Hz - 60 MHz)
High pass filter로 저주파 노이즈 (DC offset)을 걸러주면 전류데이터만 남아 적분값이 상승하지 않는다
지금까지 DC offset이 무엇이고 어떻게 제거하는지를 봤다.
그럼 DC offset은 왜 생기는 것일까? 애초에 생기지 않으면 제거하는 귀찮은 일을 하지 않아도 되는데 말이다.
한가지 원인은 측정장비를 이루고 있는 전기소자중 증폭회로 때문이다.
전류신호와 같은 아날로그 신호는 처음 측정값이 매우 작은 경우가 대부분이다.
로고스키코일의 경우도 mA의 전류가 흐름으로 인해 생기는 자기장의 변화를 감지해 전류를 간접적으로 측정하는데, 처음 자속의 변화는 매우 미미할 것이다.
심박수나 광센서 등등의 경우도 마찬가지일 것이다.
(애초에 눈에 보일 정도로 큰 변화 였으면 왜 굳이 수백-수천을 들여 측정기를 사용하겠는가)
미미한 아날로그 신호를 측정하면 그 값이 매우 작기에 증폭을 해줘야 신호를 읽을 수 있다. (아두이노도 3V는 나와줘야 데이터를 읽는다)
하지만 증폭을 하면 소자의 한계로 인해 어쩔 수 없이 작은 노이즈가 끼게 된다.
물론 이 노이즈는 매우 미미하기에 무시할만하다.
하지만 만약 데이터가 너무 작아서 1000배를 증폭해야한다면?
1000배를 증폭하기 위해 10배로 증폭해주는 증폭기 3개를 쓴다고하자
첫번째 증폭에서 1만큼 노이즈가 생겼다고 해도
두번째 증폭에서 노이즈도 10배를 증폭해 노이즈가 10배가 되고
세번째 증폭에선 노이즈가 100배로 증폭된다.
이렇게 커진 노이즈는 원 신호를 왜곡시키기에는 충분한 겂이 될 것이다.
다음은 로고스키코일에 관한 기술리뷰에 나와있는 DC offset에 관한 내용이다.
( 원제 : AN OVERVIEW OF ROGOWSKI COIL CURRENT SENSING TECHNOLOGY - David E. Shepard)
이 기술 리뷰에서도 전류값이 작은 경우 적분기를 거치면서 높은 증폭비를 가져야 하기 때문에 큰 DC offset이 가질 수 밖에 없다고 한다.
3줄요약
1. DC offset은 신호의 평균값을 의미한다
2. 평균값을 빼주거나 주파수가 0인 성분을 걸러주면 DC offset도 제거된다
3. DC offset은 신호를 증폭하는 과정에서 어쩔 수 없이 생겨나게 된다
Coupled Oscillation으로 1차원 고체모델을 설명해보자 (0) | 2020.11.12 |
---|---|
Particle in 1D box 문제를 양자역학과 Standing wave의 관점에서 보기 (0) | 2020.11.10 |
[측정에 대하여] 로고스키코일을 이용한 전류프로브 (0) | 2020.11.04 |
이중진자와 노말모드 그리고 약간의 라그랑주를 곁들인.. (5) | 2020.10.27 |
[측정에 대하여] 내가 맞게 측정 한걸까..? : Probe 와 Oscillocsope (0) | 2020.10.18 |