2014-06-11 4 views
1

나는 MSP430 마이크로 컨트롤러를 사용하고 있으며 ADC에서 가능한 가장 적은 수의 샘플을 기반으로 입력 사인파 신호의 진폭을 얻는 방법을 찾고 싶습니다. ADC의 샘플링 및 변환 주파수는 약 148KHz이고 입력 신호의 주파수는 125KHz입니다. 누구나 아이디어가 있습니까? 진폭, 주파수, - 입력 신호를 가정하면 당신의 도움이ADC에서 사인파의 진폭을 얻는 방법

+0

당신이 [148 KHz/2 = 74 KHz 이상의 주파수로 신호를 올바르게 수신하는 것이 보장되지 않는다고 우려하고 있습니다.] (http://en.wikipedia.org/wiki/Nyquist%E2% 80 % 93Shannon_sampling_theorem). 그렇지 않니? – Gluttton

+0

@Gluttton (입력 신호 만이 125KHz 사인인 것으로 알려진 경우), 반드시 알려진 주파수로 앨리어스되며 데이터가 손실되지 않습니다. –

답변

1

에 대한

덕분에 하나의 사인파 (소음 또는 다른 주파수 성분) 당신이 3 개 개의 매개 변수를 가지고 있기 때문에, 당신은 일반적으로 매개 변수를 추정하는 3 샘플이 필요 및 위상. 또한 주파수를 정확하게 알고 있다면 (질문에 함축되어 있음) 2 개의 샘플로 충분합니다. 특히, 각 샘플에 대해 알고 :

y[n] = A*sin(2*pi*f*n/fs+phi)
여기서

y[n]   - 샘플;
n             - 샘플 색인;
A           - 진폭;
f             - 주파수;
fs           - 샘플링 빈도;
phi          - 상.

즉 3 개의 미지수로 3 개의 방정식을 풀어야합니다.

물론 샘플 수에 대한 제한을 타협하고 싶다면 더 정확한 추정을 할 수 있습니다.

+0

감사합니다 Itamar :) 이것은 매우 간단하며 실제로 도움이됩니다! – user3729414

+0

'3 개의 미지수에서 3 개의 방정식을 푸는 것이 필요하다. - 더 정확하게 말하면 : '일반적인 경우 3 개의 미지수에서 3 개의 방정식을 풀어야하고, 알려진 주파수의 경우 2 개의 미지수에 2 개의 방정식을 풀어야한다.' – Gluttton

+0

네, 이렇게하면됩니다. –