Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: вычисление SNR и SFDR
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Математика и Физика
stdio
После оцифровки синуса с помощью АЦП имею набор данных - 4096 слов по 16 бит, подскажите как посчитать SNR и SFDR?
Igor_S
Цитата(stdio @ Sep 25 2007, 10:46) *
После оцифровки синуса с помощью АЦП имею набор данных - 4096 слов по 16 бит, подскажите как посчитать SNR и SFDR?

Operacija FFT, zatem po spektru...

No, Wy mozhete ispolzowatj gotowuju programmu "ADC Analyzer" s sajta Analog Device.
Sdelajte import Washih dannyh, nazhmite "FFT" i ona awtomaticheski schitaet SNR, SFDR i mnogo chego eshe.

Uspehov
stdio
Я так понимаю вычислив БПФ я получу спектр сигнала и если найти отношение амплитуды входного сигнала к амплитуде наибольшей частотной составляющей то таким образом можно найти SFDR.
А вот как найти SNR?
jorikdima
что такое амплитуда входного сигнала, если входной сигнал не синус?

что такое SFDR?
TSerg
Цитата(stdio @ Sep 25 2007, 10:46) *
После оцифровки синуса с помощью АЦП имею набор данных - 4096 слов по 16 бит, подскажите как посчитать SNR и SFDR?


Если SNR - это Signal Noise Rate, то:

Для исходного "чистого" синуса равен нулю.

После оцифровки добавляется шум квантования и тогда:
SNR(dB) = 20Lg(E/A);
где E =sqrt(D)
D = Q^2/12 - дисперсия шума кв.
Q = 2^-n - шаг квантования
n - число разрядов
furymaxx
Signal to Noise Ratio - отношение сигнал/шум.

Цитата(stdio @ Sep 26 2007, 12:43) *
А вот как найти SNR?

А если оцифровать сигнал с заземленного входа АЦП ?
rloc
Цитата(stdio @ Sep 26 2007, 12:43) *
Я так понимаю вычислив БПФ я получу спектр сигнала и если найти отношение амплитуды входного сигнала к амплитуде наибольшей частотной составляющей то таким образом можно найти SFDR.
А вот как найти SNR?


1) В самом простом случае необходимо на вход АЦП подать синусоидальный сигнал с частотой F(SIN) = N*F(ADC)/4096, где N - некоторое целое число, 4096 - количество точек дискретного преобразования Фурье, которое Вы собираетесь делать. Тогда SNR считается по следующему алгоритму:
а) делаете дискретное преобразование Фурье
б) считаете отношение квадрата модуля одной спектральной составляющей (на частоте входного сигнала) к сумме квадратов модулей всех остальных составляющих
в) берете десятичный логарифм от б) и умножаете на 10

2) В ином случае последовательность операций следующая:
а) перемножаете оцифрованный сигнал на окно Наттолла или любое другое окно, дающее уровень боковых лепестков меньше уровня шума
б) делаете дискретное преобразование Фурье
в) считаете сумму квадратов модулей нескольких спектральных составляющих, находящихся в районе частоты входного сигнала и превышающих уровень шума
г) считаете сумму квадратов модулей всех остальных составляющих
д) делите в) на г), берете десятичный логарифм и умножаете на 10
stdio
Получается что из спектра сигнала нужно найти мощность полезного сигнала и мощность всего остального шума, отношение этих мощностей и есть SNR.

Спасибо rloc
rloc
Цитата(stdio @ Sep 28 2007, 12:10) *
Получается что из спектра сигнала нужно найти мощность полезного сигнала и мощность всего остального шума, отношение этих мощностей и есть SNR.

В общем случае, когда входной сигнал не синусоидальный (прямоугольный, треугольный и т.д.) нужно пропустить оцифрованный сигнал через согласованный фильтр (отделить шум от сигнала) и найти отношение одной мощности к другой.
729
Цитата(stdio @ Sep 25 2007, 10:46) *
После оцифровки синуса с помощью АЦП имею набор данных - 4096 слов по 16 бит, подскажите как посчитать SNR и SFDR?

Посмотрите тут: - http://www.analog.com/en/content/0,2886,76...%255F65,00.html
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.