센서와 컴퓨터 측정
본문용수철에 매단 추 아래에 초음파 거리 센서를 두고, 데이터 기록기를 1초에 2번 재도록 맞췄다. 추는 눈으로 보아도 1초에 두 번 넘게 오르내리는데, 화면의 그래프는 2초에 한 번씩 느릿하게 오르내린다. 센서가 고장 난 것일까? 컴퓨터로 잰 값을 믿으려면 얼마나 자주, 그리고 얼마나 잘게 재야 할까?
1.4.1띄엄띄엄 재는 측정
센서는 위치나 온도 같은 양을 전압으로 바꾸고, 데이터 기록기는 그 전압을 일정한 시간 간격마다 읽어 숫자로 바꾼다. 연속으로 변하는 양을 띄엄띄엄 읽는 이 과정을 표본화라 하고, 1초에 읽는 횟수를 표본화 진동수라 한다. 컴퓨터가 그리는 그래프는 그 점들을 이은 선일 뿐이므로, 점과 점 사이에서 일어난 일은 알 수 없다. 따라서 측정 간격이 운동의 변화보다 충분히 짧아야 점들이 실제 운동을 따라간다.
진동수 \(f\)인 진동을 표본화 진동수 \(f_s\)로 잴 때, \(f_s > 2f\)이어야 진동수를 바르게 기록한다. \(f_s\)가 그보다 작으면 점들은 진동수 \[f_a = |f - n f_s| \quad (n\text{은 } f_a \text{를 가장 작게 하는 정수})\]인 가짜 진동을 그린다. 이것을 앨리어싱이라 한다.
그림 1에서 측정 횟수를 바꾸어 보자. 1초에 0.5번 재면 매번 진자가 같은 자리에 있을 때만 재게 되어, 진자가 멈춘 것처럼 기록된다. 그런데 0.6번 재면 매번 조금씩 늦게 재게 되어, 주기 10 s의 느린 진동이 그려진다. 1초에 1번보다 많이 재야 비로소 주기 2 s가 드러나고, 물결의 모양까지 매끄럽게 보려면 주기마다 10번 이상, 곧 1초에 5번 넘게 재야 한다. 또 점이 적으면 봉우리를 건너뛰어 진폭도 작게 기록된다.1
왜 하필 2배일까? 진동 한 번은 올라가는 반과 내려오는 반으로 이루어져 있다. 한 주기에 점이 두 개보다 많으면 올라가는 쪽과 내려오는 쪽에 적어도 한 점씩 떨어져서, 점들이 오르내림을 빠짐없이 기록한다. 반대로 한 주기에 점이 두 개도 안 되면 어떤 오르내림은 점 사이로 통째로 빠져나가고, 남은 점들은 실제보다 느린 진동을 그리게 된다. 그래서 2배는 진동수를 읽기 위한 최소한일 뿐이고, 모양까지 보려면 앞에서처럼 훨씬 자주 재야 한다.
1.4.2얼마나 잘게 재는가
측정 간격과 함께, 한 번 잴 때 값을 얼마나 잘게 나누는지도 중요하다. 데이터 기록기 안의 변환기는 전압을 정해진 개수의 단계로 나누어 2진수로 적는다. 10비트 변환기는 \(2^{10} = 1024\)단계로 나누므로, 0~5 V를 재는 변환기의 한 단계는 \(5/1024 \approx 4.9\) mV이다. 예를 들어 거리 센서가 0~2 m를 0~5 V로 바꾼다면 한 단계는 약 2 mm이고, 이보다 작은 움직임은 기록되지 않는다. 그래서 12비트로 늘리면 4096단계가 되어 한 단계가 0.5 mm로 준다. 이 단계의 크기가 디지털 측정의 분해능이다.
1.4.3예제 풀이
처음 질문의 추는 주기 0.4 s로 진동한다. 1초에 2번 재면 그래프에 나타나는 진동의 주기는 얼마인가? 진동을 바르게 기록하려면 1초에 몇 번보다 많이 재야 하고, 주기마다 10점을 얻으려면 몇 번 재야 하는가?
추의 진동수는 \(f = 1/0.4 = 2.5\) Hz이고 표본화 진동수는 \(f_s = 2\) Hz이다. \(n = 1\)일 때 \(f_a = |2.5 - 2| = 0.5\) Hz로 가장 작으므로, 그래프에는 주기 \(1/0.5 = 2\) s인 가짜 진동이 그려진다. 센서는 고장 나지 않았고, 0.5초마다 잴 때마다 추가 한 주기와 4분의 1을 더 움직여 있어서 점들이 천천히 한 바퀴를 도는 것이다.
바르게 기록하려면 \(f_s > 2 \times 2.5 = 5\) Hz, 곧 1초에 5번보다 많이 재야 한다. 하지만 5번을 겨우 넘기면 주기마다 두 점 남짓이라 진폭과 모양은 알 수 없다. 주기마다 10점을 얻으려면 \(f_s = 10 \times 2.5 = 25\) Hz로 재야 한다. 즉 측정 간격은 기록할 운동에서 가장 빠른 변화의 진동수를 먼저 어림하고, 그 10배쯤으로 정한다. 반면 측정이 너무 잦으면 자료가 쌓이기만 하므로, 측정 시간과 저장할 수 있는 양도 함께 따진다.
아래 탐구 카드에서 데이터 기록기의 측정 간격을 바꾸어 가며 진자의 운동을 기록하고, 앨리어싱이 생기는 조건을 찾아보자.
- 영화에서 달리는 마차의 바퀴가 거꾸로 도는 것처럼 보이는 것도 앨리어싱이다. 영화는 1초에 24장을 찍으므로, 바큇살이 한 장면 사이에 한 칸보다 조금 덜 돌면 살이 뒤로 물러나는 것처럼 보인다.
컴퓨터 측정은 연속으로 변하는 양을 일정한 간격으로 읽어 단계로 나눈 숫자로 적는다. 진동수 \(f\)인 운동을 \(2f\)보다 드물게 재면 \(|f - nf_s|\)의 가짜 진동이 기록되고, 모양까지 보려면 주기마다 10점쯤 재야 하며, 비트 수는 기록할 수 있는 가장 작은 차이를 정한다. 처음 질문의 그래프는 2.5 Hz의 진자를 2 Hz로 재어 생긴 0.5 Hz의 앨리어싱이고, 1초에 25번쯤 재면 바른 운동이 기록된다.