Technical Document

기술문서

산업 기술 문서 백과

샘플링 주기와 앨리어싱, 나이퀴스트 정리로 측정 주기 정하는 법

요약
샘플링 주기는 센서 값을 한 번 읽고 다음에 다시 읽을 때까지의 시간 간격입니다.
이 간격이 측정 대상의 변화 속도보다 길면 실제와 전혀 다른 모양의 데이터가 남고 짧은 이탈은 기록에서 아예 빠질 수 있습니다.
나이퀴스트 정리는 신호에 들어 있는 가장 빠른 변화 주파수의 2배보다 많이 샘플링해야 원래 신호를 되살릴 수 있다고 말합니다. 이 글에서는 15분 주기로 20분짜리 압축기 사이클을 재면 60분짜리 가짜 파형이 보이는 계산과 공정별 측정 주기를 정하는 순서를 숫자로 정리합니다.

냉장 창고 온도 그래프가 매끄럽게 나왔는데 같은 시각 휴대용 온도계로 재 보니 값이 크게 출렁이고 있었다는 이야기는 현장에서 드물지 않습니다. 기록 장치가 고장 난 것도 아닙니다. 측정 간격이 길어서 출렁임 사이사이만 찍혔고 찍힌 점을 이은 선이 실제와 다른 모양이 된 경우가 많습니다.

반대로 저장 용량이나 배터리, 통신량을 걱정해 측정 주기를 30분, 1시간으로 늘려 두었다가 문 열림이나 제상 중의 짧은 온도 이탈을 놓치기도 합니다. 감사나 클레임 때 "그 시간에는 이상이 없었다"고 말할 근거가 없어지는 셈입니다. 측정 주기를 얼마로 잡을지는 감으로 정할 일이 아니고 대상이 얼마나 빨리 변하는지로 계산할 수 있는 값입니다.


1. 샘플링 주기란?

샘플링 주기(Sampling Interval)는 연속으로 변하는 물리량을 일정한 간격으로 끊어 읽을 때 그 간격을 말합니다. 1분마다 한 번 읽으면 샘플링 주기는 1분이고 이것을 1초에 몇 번 읽는지로 바꾼 값이 샘플링 주파수(fs, Sampling Frequency)입니다. 1분 주기는 1/60 Hz, 약 0.0167 Hz입니다.

IoT 센서에서는 샘플링 주기를 보통 측정 주기라고 부릅니다. 측정한 값을 서버로 보내는 간격인 전송 주기와는 따로 정할 수 있는데 두 주기의 차이와 운용 방법은 IoT 센서 측정주기와 전송주기의 차이점과 운용방법 글에 정리되어 있습니다. 이 글에서 말하는 앨리어싱은 측정 주기에서 생기는 문제입니다.

용어 뜻 예
샘플링 주기 (T) 값을 읽는 시간 간격 5분
샘플링 주파수 (fs) 단위 시간당 읽는 횟수, fs = 1/T 시간당 12회
나이퀴스트 주파수 (fs/2) 이 샘플링으로 구분할 수 있는 가장 빠른 변화 시간당 6회 (주기 10분)
나이퀴스트 레이트 (2·fmax) 신호의 가장 빠른 성분을 되살리는 데 필요한 최소 샘플링 주파수 20분 주기 변화라면 10분보다 짧은 간격

2. 나이퀴스트 정리란?

나이퀴스트 정리(Nyquist-Shannon Sampling Theorem)는 신호에 들어 있는 가장 높은 주파수를 fmax라 할 때, 샘플링 주파수 fs가 2·fmax보다 크면 샘플만으로 원래 신호를 온전히 되살릴 수 있다는 정리입니다. 1928년 해리 나이퀴스트의 전신 전송 연구와 1949년 클로드 섀넌의 논문에서 정리된 내용이라 두 사람 이름을 함께 붙입니다.

주기로 바꿔 말하면 더 쉽습니다. 잡고 싶은 가장 빠른 변화가 한 번 오르내리는 데 걸리는 시간을 P라고 하면 샘플링 주기는 P/2보다 짧아야 합니다. 20분마다 한 번 오르내리는 온도라면 10분보다 짧은 간격으로 읽어야 그 오르내림이 데이터에 나타납니다.

다만 2배는 이론상 하한입니다. 2배를 겨우 넘기면 오르내림이 있다는 사실은 알 수 있어도 최고점·최저점이 정확히 찍힌다는 보장이 없습니다. 그래서 실무에서는 보통 잡고 싶은 변화 주기 안에 5~10개 이상의 점이 들어가도록 잡습니다.


3. 앨리어싱은 왜 생길까?

앨리어싱(Aliasing)은 나이퀴스트 주파수(fs/2)보다 빠른 변화가 그보다 느린 가짜 변화처럼 기록되는 현상입니다. 샘플 점만 보면 빠른 신호와 느린 신호가 똑같은 점을 지나기 때문에 둘을 구분할 방법이 없습니다. 이때 보이는 가짜 주파수는 실제 주파수 f와 가장 가까운 fs의 정수배 사이의 차이, 즉 |f − k·fs|입니다.

3-1. 계산 예시: 20분 사이클을 15분마다 재면

냉장고 압축기가 켜지고 꺼지며 실내 온도가 20분 주기로 오르내린다고 가정합니다. 이 변화의 주파수는 시간당 3회입니다. 측정 주기가 15분이면 fs는 시간당 4회, 나이퀴스트 주파수는 시간당 2회이므로 시간당 3회짜리 변화는 이 한계를 넘습니다.

  • 실제 변화 : f = 시간당 3회 (주기 20분)
  • 샘플링 : fs = 시간당 4회 (주기 15분), fs/2 = 시간당 2회
  • 보이는 변화 : |3 − 4| = 시간당 1회, 즉 주기 60분

그래프에는 1시간에 한 번 천천히 오르내리는 완만한 곡선이 그려집니다. 실제로는 20분마다 출렁였는데 기록만 보면 온도 조절이 느긋하게 도는 것처럼 보이는 셈입니다.

3-2. 주기가 딱 맞으면 평평한 선이 된다

같은 20분 사이클을 정확히 20분마다 재면 |3 − 3| = 0, 매번 사이클의 같은 위치만 찍힙니다. 그래프는 일직선으로 나오고 찍힌 위치가 최저점 근처라면 온도가 늘 낮게 유지된 것처럼 기록됩니다. 측정 주기와 설비의 반복 주기가 맞물리는 경우는 생각보다 흔하므로 그래프가 지나치게 평평하면 측정 주기부터 의심해 보는 편이 좋습니다.

측정 주기 (20분 사이클 기준) 사이클 1회당 점 수 그래프에 보이는 모양
2분 10개 20분 주기 출렁임과 최고·최저점이 잘 보임
5분 4개 20분 주기는 보이지만 최고점이 깎여 보일 수 있음
10분 2개 나이퀴스트 한계, 찍히는 위치에 따라 출렁임이 사라질 수 있음
15분 약 1.3개 60분 주기의 가짜 파형 (앨리어싱)
20분 1개 평평한 직선

4. 측정 주기를 너무 길게 잡으면 어떤 문제가 생길까?

4-1. 짧은 이탈을 놓칠 확률

반복되는 출렁임 말고 한 번 튀었다 돌아오는 이탈도 있습니다. 문을 열어 두어 냉장 창고 온도가 8분 동안 기준을 넘었다가 돌아왔다고 해 봅니다. 이탈 지속 시간이 d, 측정 주기가 T이고 d가 T보다 짧으면 이탈 구간 안에 측정 점이 하나라도 떨어질 확률은 d/T입니다. d가 T 이상이면 적어도 한 점은 반드시 이탈 구간에 들어갑니다.

측정 주기 8분 이탈이 기록될 확률 놓칠 확률 하루 데이터 수
1분 100% (7~8점) 0% 1,440개
5분 100% (1~2점) 0% 288개
10분 80% 20% 144개
15분 약 53% 약 47% 96개
30분 약 27% 약 73% 48개

15분 주기라면 8분짜리 이탈은 두 번에 한 번꼴로 기록에 남지 않습니다. 기록에 남더라도 점 하나뿐이라 최고 온도가 얼마였는지, 몇 분 동안 이어졌는지는 알 수 없습니다. 이탈 시간을 근거로 제품 폐기 여부를 판단하는 현장이라면 이 차이가 곧 판단의 차이가 됩니다.

1분 1,440개, 5분 288개, 10분 144개, 15분 96개, 30분 48개의 하루 데이터 수를 비교한 막대그래프

그림 1. 측정 주기를 늘리면 데이터 수는 줄지만 15분 이상에서는 8분짜리 이탈을 놓칠 확률이 크게 늘어납니다.

그림 1은 측정 주기별 하루 데이터 수를 비교한 것입니다. 1분 주기는 하루 1,440개, 5분은 288개, 10분은 144개, 15분은 96개, 30분은 48개입니다. 1분에서 5분으로 늘리면 데이터는 5분의 1로 줄지만 8분 이탈은 여전히 100% 잡히고 5분에서 15분으로 늘리면 데이터는 3분의 1로 줄어드는 대신 이탈을 놓칠 확률이 0%에서 약 47%로 뛰어오릅니다.

4-2. 최고·최저값이 깎여 보인다

이탈이 기록에 잡혀도 측정 점이 최고점 바로 위에 떨어질 가능성은 낮습니다. 점 사이 간격이 길수록 기록된 최고값은 실제 최고값보다 낮게, 최저값은 실제보다 높게 남습니다. 평균 운동 온도(MKT)나 누적 이탈 시간처럼 기록값으로 다시 계산하는 지표도 같은 이유로 실제와 달라집니다.


5. 공정별 측정 주기는 어떻게 정할까?

가장 빠른 변화 선택부터 운영 후 조정까지 여섯 단계로 이어지는 측정 주기 결정 절차

그림 2. 잡아야 할 가장 빠른 변화에서 출발해 나이퀴스트 하한, 여유, 운영 조건 순으로 측정 주기를 정합니다.

그림 2는 측정 주기를 정하는 순서입니다. 먼저 잡아야 할 가장 빠른 변화를 고르고 그 변화의 주기나 지속 시간을 잰 뒤, 나이퀴스트 하한(주기의 1/2 미만)을 계산합니다. 여기에 여유를 두어 반복 변화는 주기의 1/5~1/10, 한 번 튀는 이탈은 지속 시간의 1/2 이하로 잡습니다. 마지막으로 저장 용량·배터리·통신량을 확인하고 운영 데이터를 보며 다시 조정합니다.

5-1. 계산 예시

제상 운전 중 온도가 오르는 시간이 최소 10분인 냉동 창고라면 이탈 지속 시간 10분의 1/2인 5분 이하로 측정하면 제상 한 번에 적어도 두 점이 찍힙니다. 정격 1,800 rpm으로 도는 모터의 회전 진동은 1,800 ÷ 60 = 30 Hz이므로 나이퀴스트 하한만 해도 초당 60회를 넘어야 하고 베어링 결함처럼 더 높은 주파수 성분까지 보려면 그보다 훨씬 빨라야 합니다. 같은 현장이라도 무엇을 보려는지에 따라 필요한 주기가 수만 배 차이 납니다.

대상 잡아야 할 변화 일반적인 측정 주기 예
냉장·냉동 창고 문 열림, 제상, 압축기 사이클 (수 분~수십 분) 1~5분
초저온 냉동고·백신 냉장고 문 열림, 고장 직후 온도 상승 1~5분
서버실 공조 정지 후 온도 상승 1~5분
클린룸 차압 문 개폐 순간 차압 변화 (수 초~수십 초) 수 초~1분
사무실·실내 공기질 (CO2) 재실 인원에 따른 농도 상승 (수십 분) 1~10분
콘크리트 양생 수화열에 따른 온도 변화 (수 시간) 10~30분
독성·가연성 가스 누출 수 초 단위 농도 상승 감지기 자체가 연속 측정·판단, 기록은 수 초~1분
회전 설비 진동 분석 수십~수천 Hz 초당 수백~수만 회 (전용 장비)

표의 값은 변화 속도로 계산한 일반적인 예이며 법령이나 규격에서 정한 값은 아닙니다. 업종 기준이나 고객사 SOP에서 측정·기록 간격을 따로 정해 두었다면 그 값이 우선입니다. 온도 매핑 단계에서 공간별 변화 속도를 확인해 두면 운영 주기를 정할 근거가 생기는데, 매핑 방법은 온도 매핑 방법 글을 참고하면 됩니다.


6. 현장에서 앨리어싱을 줄이는 운영 방법

  • 측정과 전송을 나눈다 : 배터리나 통신량이 걱정이면 측정 주기를 늘리기보다 측정은 1분으로 두고 전송만 10분으로 묶는 편이 낫습니다. 데이터는 그대로 남고 통신 횟수만 줄어듭니다.
  • 최대·최소·평균을 같이 남긴다 : 장치가 짧은 주기로 읽고 기록 간격 동안의 최댓값·최솟값·평균을 함께 남기면 긴 기록 간격에서도 짧은 이탈이 묻히지 않습니다.
  • 알람 판단은 짧은 주기로 : 기록 주기가 길더라도 알람 판단은 장치에서 짧은 주기로 하게 하고 경계값 근처에서 알람이 떨리면 데드밴드와 지연시간으로 다룹니다. 설정 방법은 알람 데드밴드와 지연시간 설정 글에 있습니다.
  • 센서 응답시간을 함께 본다 : 측정 주기를 아무리 줄여도 센서가 변화를 따라가지 못하면 소용이 없습니다. 보호관이 두꺼운 온도 센서는 빠른 변화를 스스로 둔하게 만드는데 이것이 거꾸로 앨리어싱을 줄이는 저역 필터 역할도 합니다. 자세한 내용은 센서 응답속도(Response Time)란? 글을 참고하십시오.
  • 설비 주기와 맞물리지 않게 : 압축기·제상 타이머처럼 주기가 정해진 설비가 있으면 측정 주기를 그 주기의 정수배나 같은 값으로 두지 않습니다. 20분 사이클에 20분 측정은 평평한 선만 남깁니다.
  • 도입 초기에 짧게 재 본다 : 처음 1~2주는 짧은 주기로 측정해 실제 변화 폭과 속도를 확인하고 그 데이터를 근거로 운영 주기를 정합니다.

7. 관련 산업용어

■ 나이퀴스트 주파수 (Nyquist Frequency)
샘플링 주파수의 절반(fs/2)입니다. 이보다 빠른 변화는 샘플에서 느린 변화와 구분되지 않습니다.

■ 안티앨리어싱 필터 (Anti-aliasing Filter)
샘플링 전에 나이퀴스트 주파수보다 빠른 성분을 걸러 내는 저역 통과 필터입니다. 계측기의 아날로그-디지털 변환기 앞에 두는 경우가 많습니다.

■ 오버샘플링 (Oversampling)
필요한 최소 주파수보다 훨씬 빠르게 샘플링한 뒤 평균을 내 노이즈를 줄이는 방법입니다. 장치 안에서 빠르게 읽고 평균값만 내보내는 방식이 여기에 해당합니다.

■ 측정 주기·전송 주기
측정 주기는 센서 값을 읽는 간격, 전송 주기는 읽은 값을 서버로 보내는 간격입니다. 앨리어싱은 측정 주기에서 생깁니다.


8. 자주 묻는 질문

Q. 나이퀴스트 정리대로 2배로만 샘플링하면 충분한가요?
아니요, 실무에서는 부족합니다. 2배는 변화의 존재를 구분하는 이론상 하한일 뿐이라 최고·최저값이 정확히 찍히지 않습니다. 반복 변화라면 주기 안에 5~10점 이상 들어가게 잡는 것이 일반적입니다.

Q. 냉장고 온도 측정 주기 몇 분이 적당한가요?
변화 속도로 보면 보통 1~5분입니다. 문 열림이나 제상처럼 수 분에서 수십 분 이어지는 이탈을 잡으려면 그 지속 시간의 절반 이하로 측정해야 하기 때문입니다. 업종 기준이나 SOP에 정해진 간격이 있으면 그 값을 따릅니다.

Q. 15분 주기로 재면 짧은 온도 이탈을 놓치나요?
놓칠 수 있습니다. 8분 동안 이어진 이탈은 15분 주기에서 약 47% 확률로 한 점도 기록되지 않습니다. 측정 주기를 이탈 지속 시간보다 짧게 잡거나 기록 구간의 최댓값을 함께 남기면 줄일 수 있습니다.

Q. 그래프가 너무 평평하면 앨리어싱일 수도 있나요?
그럴 수 있습니다. 측정 주기가 설비의 반복 주기와 같거나 정수배면 매번 같은 위치만 찍혀 평평한 선이 됩니다. 짧은 주기로 잠시 측정해 실제 출렁임이 있는지 확인해 보십시오.

Q. 배터리를 아끼려면 측정 주기를 늘려야 하나요?
먼저 전송 주기를 늘리는 쪽을 권합니다. 무선 센서는 대개 측정보다 전송에 전력을 더 많이 쓰므로, 측정은 짧게 두고 여러 값을 모아 한 번에 보내면 데이터 손실 없이 사용 시간을 늘릴 수 있습니다. 실제 소비 전력 비율은 제품마다 다릅니다.


9. 마무리

샘플링 주기는 측정 대상이 얼마나 빨리 변하는지로 계산해서 정하는 값입니다. 나이퀴스트 정리에 따라 가장 빠른 변화 주기의 절반보다 짧게 재야 하고 실무에서는 반복 변화는 주기의 1/5~1/10, 한 번 튀는 이탈은 지속 시간의 1/2 이하를 기준으로 잡습니다. 측정 주기가 길면 앨리어싱으로 가짜 파형이 생기고 짧은 이탈은 기록에서 빠집니다. 통신량이나 배터리를 줄여야 할 때는 측정 주기 대신 전송 주기를 늘리고 기록 구간의 최댓값·최솟값을 함께 남기는 것을 꼭 기억하십시오.

참고 기준 : H. Nyquist, "Certain Topics in Telegraph Transmission Theory" (1928), C. E. Shannon, "Communication in the Presence of Noise", Proceedings of the IRE (1949)


태그 : 샘플링주기, 나이퀴스트정리, 앨리어싱, 측정주기, 샘플링주파수, 나이퀴스트주파수, 안티앨리어싱, 데이터로깅, 온도모니터링, 측정간격, 온도이탈, 전송주기, IoT센서, 콜드체인